Host:tennis.intern.k4cg.org
| Host:tennis.intern.k4cg.org | |
| Hostname | tennis.intern.k4cg.org |
| IPv4 | 192.168.5.X |
| Network | 255.255.255.0 |
| Gateway | 192.168.5.1 |
| DNS | 192.168.5.1 |
| OS | Raspberry Pi OS |
| Location | Raum |
Generelles
Auf diesem Raspberry läuft ein Brickd und ein Brick-MQTT-Proxy um die Sensordaten von dem Tischtennisschläger ins MQTT zu bringen.
Brickd
Brickd läuft auf dem RaspberryPi und kommuniziert via USB mit den Tickerforge Modulen. Via TCP auf Port 4223 kann man die Daten abfragen. Tinkerforge stellt Bibliotheken für diverse Programmiersprachen bereit und bietet auch eine GUI dafür an.
Die Installation ist am einfachsten über die von Tickerforge bereitgestellten APT Repos. Siehe hier: https://www.tinkerforge.com/de/doc/Software/APT_Repository.html#apt-repository
Brickd MQTT Proxy
Um alle Daten die wir über Brickd automatisch abholen in MQTT zu bekommen gibt es ein Script vom Hersteller Tinkerforge
wget https://raw.githubusercontent.com/Tinkerforge/brick-mqtt-proxy/master/brick-mqtt-proxy.py -O /usr/local/bin/brick-mqtt-proxy.py chmod +x /usr/local/bin/brick-mqtt-proxy.py
Und dafür dann einen Systemd Service anlegen
# /etc/systemd/system/brickd-mqtt.service [Unit] Description=brickd-mqtt Service After=network.target Requires=brickd.service [Service] Type=simple User=root ExecStart=/usr/local/bin/brick-mqtt-proxy.py --broker-username xxx --broker-password xxx Restart=on-abort [Install] WantedBy=multi-user.target
Debugging
Wann immer man das gefühl hat das irgendwas falsch geht, einfach auf dem tennis raspberrypi einloggen (user pi) und mit dem Script im Home directory überprüfen ob die Sensordaten auch hier komisch sind.
root@tennis:/home/pi# ./test-sensors.py Temperature: 12.06 °C Acceleration: X(0.044) Y(1.003) Z(0.049) Sound Intensity: 2568 UV Light: 0 µW/cm²