# A hub on the shop's network

A hub at the shop keeps every device in step without the internet: a waiter's phone sends an
order to the counter, and held orders show everywhere, even when the shop's internet is down.

## What to run it on

A Raspberry Pi 4 or 5, a mini PC, a NAS that runs Docker, or any small always-on computer. It
needs very little: about 120 MB of memory. Install it with [Docker](https://docs.openkedai.com/self-hosting/docker/) (host networking)
or the [Linux installer](https://docs.openkedai.com/self-hosting/linux/).

Plug it into the router with a cable if you can, and keep it on a UPS or a separate socket from
the kitchen equipment.

## Give it a fixed address (recommended)

Routers hand out addresses that can change, for example after a power cut. Devices find their hub
again on their own when that happens (they look for it on the network, usually within half a
minute), but a fixed address avoids the wait and makes the back office's address easy to remember.

In the router's admin page (often `192.168.1.1` or `192.168.0.1`, see the label on the router),
look for **DHCP reservation**, **Static lease**, **Address reservation** or **Bind IP to MAC**, pick
the hub from the list of connected devices, and save. Restart the hub so it gets the reserved
address.

## Finding the hub from a device

- When pairing, the POS app lists **Hubs on this network**; tap one to fill in its address.
- If the hub moves to another address, paired devices follow it by themselves. **Settings → Hub**
  shows "Looking for the hub on this network…" meanwhile.
- If devices can't see the hub on the network (some guest Wi-Fi blocks this, as do separate
  networks for staff and customers), put the hub and the devices on the same network, or use
  **Settings → Hub → Change hub address**.

## Reaching the back office from home

Use a private network such as Tailscale, or a Cloudflare Tunnel; see
[HTTPS and remote access](https://docs.openkedai.com/self-hosting/https/). Don't open the hub's port on the router to the internet.
