Skip to content

FAQ

Do I need to install any drivers on the host?

No, on Windows 11, current Windows 10, macOS and Linux. The device enumerates as a composite USB device (a CDC-NCM network function plus a CDC-ACM serial function) using each OS's inbox class drivers. See Host setup (Windows) or Host setup (Linux).

Why is there no authentication on the API?

By design. The trust model is the same as plugging in a plain monitor: physical access to the USB port equals control of the display. This keeps the zero-setup promise (no pairing dance, no credentials to provision) and matches how the device is meant to be deployed — physically attached to a host you already control. The network surface stays limited to the USB link by default; enabling Wi-Fi or Bluetooth (both off by default) is an explicit decision that widens it, and is documented in the Wireless guide.

Is 10.99.0.1 fixed? Can I change it?

Yes, it's fixed in v1 and not currently configurable. Every device always answers at 10.99.0.1 on its USB network interface, with its own DHCP server handing out 10.99.0.10010.99.0.199 to the host. This is deliberate: hosts (and this documentation) can rely on the address without discovery. Making the subnet configurable is potential future work, not available today.

Can the device reach the internet directly (e.g. for a remote URL)?

Not on its own — by design, the device has no general-purpose network route; it only talks to the host over USB, and the host is expected to do any "heavy lifting" networking. If the content you display needs to load from a remote URL, configure the device to use an HTTP/HTTPS proxy running on your host — see the "Proxy path" section of the Windows or Linux host setup guide. Uploading self-contained content bundles (spec: Content bundles) sidesteps this entirely, since the content is served locally from the device.

Both work by turning the shared adapter's DHCP server on, which conflicts with the device's own DHCP server on the same USB link — address assignment becomes unreliable and the device's fixed 10.99.0.1 address is no longer guaranteed. The proxy path gives the device internet access without touching routing or DHCP on either side.

Which Raspberry Pi boards are supported?

Pi Zero 2 W, Pi 4 (any RAM size) and Pi 5 — all 64-bit ARMv8 builds. See the Board matrix for the full capability breakdown and Hardware for physical setup. The original Raspberry Pi Zero (v1, ARMv6) is not supported.

Can I use a SPI/GPIO TFT panel instead of HDMI/DSI?

No — SPI/GPIO panels are explicitly out of scope (they're slow and not GPU-accelerated, which conflicts with the fullscreen hardware-accelerated kiosk browser this project is built around). HDMI is supported on every board; the official DSI Touch Display is supported on Pi 4/5.

Can I drive more than one screen?

Not in v1 — even though Pi 4 and Pi 5 have two HDMI ports and two DSI connectors, the device drives a single output (the first connected) at a time.

Does the device support Wi-Fi and Bluetooth?

The radios are physically present on every supported board, but off by default — rfkill-blocked, no wireless daemon running, so a fresh device only ever talks over USB. Turning Wi-Fi or Bluetooth on is an explicit opt-in; see the Wireless guide for what it enables and how the trust model changes once a radio is active.

What happens if power is lost mid-operation?

The system partition is read-only (squashfs) and immune to corruption from a power cut. The writable data partition (configuration, content, logs) uses journaling and an atomic write pattern, so at worst you lose the last unsynced write — the device always boots back to a consistent state (boot splash → waiting page) rather than becoming unbootable.

What happens if a software update fails?

Updates use A/B slots: a new update is written to the currently inactive slot and the device performs a single trial boot into it. If that trial boot doesn't complete successfully, the device automatically falls back to the previous, known-good slot on its own — no host intervention required. See the Updates (OTA) guide.

Can an unmodified Odoo Point of Sale use this as its customer display?

Yes, optionally: an on-device daemon can emulate the HTTP surface of an Odoo IoT Box customer display, so an unmodified Odoo POS talks to the device without any Odoo-side changes. It's disabled by default. See the Odoo IoT Box emulation guide.

Does the device support Ethernet?

Not in v1 — the only network transport is the USB composite gadget link (plus optional Wi-Fi, off by default). A wired Ethernet option is not currently available.

Is macOS supported the same way as Windows and Linux?

The device enumerates the same way on macOS (native CDC-NCM, /dev/cu.usbmodem* serial) with no drivers to install, and macOS's own Internet Sharing pane can share a connection to it. Step-by-step macOS instructions aren't part of this documentation set yet, though — the Windows and Linux guides cover the fully documented paths; the same principles (recognition, 10.99.0.1, proxy over sharing) apply.