MQTT Alarm Panel is a UI built using Kivy for the Raspberry Pi. While the application can be modified to suit any kivy-capable hardware, its main purpose is to avoid using X and therefore save on limited Raspberry Pi resources.
- Runs on Kivy/Python - No need to boot to Raspberry Pi desktop!
- Control of Manual MQTT Alarm in Home Assistant thanks to paho-mqtt
- GPIO control for a Piezo Buzzer thanks to RPi.GPIO
- Screen dimmer for night mode thanks to rpi_backlight
- Settings menu (Alarm Code + * to open)
After you have cloned the repo, edit settings.yaml and change details as required, then run sudo python main.py
Steps:
- cd ~
- git clone https://github.com/JediDork/MQTTAlarmPanel
- cd MQTTAlarmPanel
- sudo nano settings.yaml
- sudo python main.py
Some modules may need to be installed prior. Ensure you have the following before you run the application:
- sudo pip install RPi.GPIO
- sudo pip install rpi_backlight
- sudo pip install paho-mqtt
- sudo pip install pyyaml
Obviously Kivy and Python need to be installed too - see https://kivy.org/docs/installation/installation-rpi.html
The settings menu can be reached by typing your alarm code + * on the interface.
On Screen Keyboard: The easiest way to do this is to run the keyboard kivy example. Depending on how you installed kivy, the examples will be in your home directory or under cd /usr/local/share/kivy-examples/. This works for me:
- sudo python /usr/local/share/kivy-examples/keyboard/main.py
- Change the Current Keyboard Setting to "systemanddock", hit Set, then exit and reboot your pi
- Now when you tap on a textbox it should show the system keyboard!
- Bug fix: Check for network connection prior to attempting connection to MQTT service