rtl_433 als Dienst

Du hast Fragen oder ein Problem bei der Installation.....
Einfach Fragen.
Wenn du Fragen zu einem Programm hast das nicht Bestandteil des Skripts ist benutz bitte den Bereich Userprojekte viewforum.php?f=33
Antworten
sebalutz
User
User
Beiträge: 8
Registriert: Di 27. Sep 2022, 12:14

rtl_433 als Dienst

Beitrag von sebalutz »

Nach einigem Rumgebastel mit dem 433 Mhz DVB-T Stick und dem Problem, dass sich die verfügbare
Software rtl_433 immer wieder mal sporadisch verabschiedet, habe ich nach kurzer Recherche
zunächst das hier gefunden:

https://hagensieker.com/2019/03/06/how- ... upervisor/

Die eigentliche Lösung findet sich nicht in dem Artikel, sondern in einem Kommentar von
anonymous July 21, 2019 at 8:47 am, wo beschrieben wird, wie man rtl_433 als Dienst einrichtet.
Die Beschreibung ist aber so rudimentär, dass ich hier nochmal die Konfiguration und Aufrufe
darstelle.

1. Es ist nicht notwendig "mosquitto_pub" aufzurufen, um den MQTT anzusprechen,
weil RTL_433 eine eigene MQTT Schnittstelle hat, die durch Parameter aufgerufen wird:

Code: Alles auswählen

rtl_433 -F mqtt://localhost:1883,user=NAME,pass=PASSWORD,retain=0,events=home/rtl_433
2. Die Dienst-Beschreibung sieht damit folgendermaßen aus:
[Unit]
Description=433MHz receiver on DVB stick
After=network.target

[Service]
Type=simple
User=root
ExecStart=/usr/local/bin/rtl_433 -F mqtt://localhost:1883,user=NAME,pass=PASSWORD,retain=0,events=home/rtl_433

RestartSec=0
Restart=always
RemainAfterExit=no

[Install]
WantedBy=multi-user.target
3. Diese Dienst-Beschreibung legt man also als root in der Datei /lib/systemd/system/rtl_433.service ab
und erzeugt noch einen symbolischen Link auf die alte Position der Dienste-Beschreibungen:

Code: Alles auswählen

ln -s /lib/systemd/system/rtl_433.service /etc/systemd/system/
4. Danach muss der Dienst noch gestartet und zum Restart eintragen werden:

Code: Alles auswählen

sudo systemctl start rtl_433.service
sudo systemctl enable rtl_433.service
Jetzt läuft der rtl_433 und wird automatisch wieder gestartet, wenn er sich aufhängt oder der Rechner einen Reboot macht.

Antworten