A kiosk device needs predictable behavior after power cuts and network drops. My Raspberry Pi setup starts from a minimal OS image with only the packages required for display and remote maintenance.

I run the browser through systemd instead of desktop autostart scripts. This gives better restart controls, log visibility, and dependency ordering.

For unattended recovery, I combine three safeguards: automatic login to a dedicated user, watchdog restarts for the browser unit, and daily reboot windows during low-traffic hours.

When the content endpoint is unavailable, the kiosk falls back to a local offline page. That avoids blank screens and gives operators a clear status indicator.

Sources

  • Imported from the previous version of the site (gaborl.hu). Original publication around 2025-01-08.