# Kiosk System for Raspberry Pi 5 Model B (64-bit)
[](https://hex.pm/packages/kiosk_system_rpi5)
[](https://github.com/nerves-web-kiosk/kiosk_system_rpi5/actions/workflows/ci.yml)
[](https://api.reuse.software/info/github.com/nerves-web-kiosk/kiosk_system_rpi5)
*This is the `main` branch. If you are customizing a `v0.x` system, please see
the `maint-v0.x` branch.*
This is a specialised version of the
[nerves_system_rpi5](https://github.com/nerves-project/nerves_system_rpi5) that
includes the required packages to run a fullscreen web browser in kiosk mode.
## Using
The most common way of using this Nerves System is create a project with `mix
nerves.new my_kiosk_app --target rpi5` and to export `MIX_TARGET=rpi5`.
Then, change the rpi5 system dependency to `{:kiosk_system_rpi5, "~> 0.1.0",
runtime: false, targets: :rpi5}`.
## Kiosk Example
Please see the [kiosk_demo](https://github.com/nerves-web-kiosk/kiosk_demo)
project for an example of how to use this in a Nerves project.
## Troubleshooting
### Hangs on reboot when updating firmware
This was traced to an old
[rpi-eeprom](https://github.com/raspberrypi/rpi-eeprom) version. The fix is to
update to the latest. See
[`nerves_rpi_eeprom`](https://github.com/fhunleth/nerves_rpi_eeprom/) for a
rough Nerves-compatible module for updating. If it doesn't work, try the
Raspberry Pi OS tools.