Host:tennis.intern.k4cg.org: Unterschied zwischen den Versionen

Aus k4cg.org
Keine Bearbeitungszusammenfassung
Zeile 13: Zeile 13:
Auf diesem Raspberry läuft ein Brickd und ein Brick-MQTT-Proxy um die Sensordaten von dem Tischtennisschläger ins MQTT zu bringen.
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 ==


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.
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.
Zeile 20: Zeile 20:
Siehe hier: https://www.tinkerforge.com/de/doc/Software/APT_Repository.html#apt-repository
Siehe hier: https://www.tinkerforge.com/de/doc/Software/APT_Repository.html#apt-repository


Danach einfach via <pre>apt install brickd</pre> installieren.
Danach einfach via <code>apt install brickd</code> installieren.


== Brickd MQTT Proxy ==
== Brickd MQTT Proxy ==


Tinkerforge stellt auch ein Programm bereit um die Daten zu einem MQTT Server zu schicken.
Tinkerforge stellt auch ein Programm bereit um die Daten zu einem MQTT Server zu schicken.
Installation via <code>apt install tinkerforge-mqtt</code> ebenfalls aus den Repos, siehe oben.
Mit dem Paket kommt ein Service <code>tinkerforge_mqtt.service</code>.
=== Konfiguration===
<code>/etc/tinkerforge_mqtt.cmdline</code>:


Installation via
<pre>
<pre>
apt install tinkerforge-mqtt
--broker-host homeassistant.local
--broker-username mqtt_tennis
--broker-password SECURE
--debug
</pre>
</pre>
ebenfalls aus den Repos, siehe oben.
 
<code>/etc/tinkerforge_mqtt.init</code>:


<pre>
<pre>
# /etc/systemd/system/brickd-mqtt.service
{
[Unit]
    "tinkerforge/register/sound_intensity_bricklet/voE/intensity": {"register": true},
Description=brickd-mqtt Service
    "tinkerforge/request/sound_intensity_bricklet/voE/set_intensity_callback_period": {"period": 10000},
After=network.target
    "tinkerforge/register/uv_light_bricklet/xpa/uv_light": {"register": true},
Requires=brickd.service
    "tinkerforge/request/uv_light_bricklet/xpa/set_uv_light_callback_period": {"period": 10000},
 
    "tinkerforge/register/accelerometer_bricklet/v6Z/acceleration": {"register": true},
[Service]
    "tinkerforge/request/accelerometer_bricklet/v6Z/set_acceleration_callback_period": {"period": 10000},
Type=simple
    "tinkerforge/register/temperature_bricklet/tfj/temperature": {"register": true},
User=root
    "tinkerforge/request/temperature_bricklet/tfj/set_temperature_callback_period": {"period": 10000}
ExecStart=/usr/local/bin/brick-mqtt-proxy.py --broker-username xxx --broker-password xxx
}
Restart=on-abort
 
[Install]
WantedBy=multi-user.target
</pre>
</pre>



Version vom 19. März 2026, 20:58 Uhr

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

Danach einfach via apt install brickd installieren.

Brickd MQTT Proxy

Tinkerforge stellt auch ein Programm bereit um die Daten zu einem MQTT Server zu schicken. Installation via apt install tinkerforge-mqtt ebenfalls aus den Repos, siehe oben. Mit dem Paket kommt ein Service tinkerforge_mqtt.service.

Konfiguration

/etc/tinkerforge_mqtt.cmdline:

--broker-host homeassistant.local
--broker-username mqtt_tennis
--broker-password SECURE
--debug

/etc/tinkerforge_mqtt.init:

{
    "tinkerforge/register/sound_intensity_bricklet/voE/intensity": {"register": true},
    "tinkerforge/request/sound_intensity_bricklet/voE/set_intensity_callback_period": {"period": 10000},
    "tinkerforge/register/uv_light_bricklet/xpa/uv_light": {"register": true},
    "tinkerforge/request/uv_light_bricklet/xpa/set_uv_light_callback_period": {"period": 10000},
    "tinkerforge/register/accelerometer_bricklet/v6Z/acceleration": {"register": true},
    "tinkerforge/request/accelerometer_bricklet/v6Z/set_acceleration_callback_period": {"period": 10000},
    "tinkerforge/register/temperature_bricklet/tfj/temperature": {"register": true},
    "tinkerforge/request/temperature_bricklet/tfj/set_temperature_callback_period": {"period": 10000}
}

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²