Hallo Zusammen,
ich habe das jetzt alles mal installiert und mit Hilfe von "batesman" auch zum Laufen gebracht. Bei mir kommt "lighttpd" und "php7" zum Einsatz. Anleitungen zur Installation findet man im Netz genügend.
Das Programm von "batesman" Ist wirklich sehr gelungen. Kurz, knapp, anpassbar....
Vielleicht bringt es jemandem etwas, wenn ich mal eine möglichst vollständige Anleitung poste:
1. USB->RS232-Kabel einstecken und prüfen, ob erkannt wird. Das geschieht am einfachsten mit dem Kommando "lsusb"
$ lsusb
...
Bus 001 Device 003: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
...
Hier kann ich auch aus eigener Erfahrung aus anderen Projekten sagen, dass wohl nicht alle im Netz erhältlichen Umsetzer wirklich geeignet sind. Ich hatte noch einen Umsetzer hier, den ich vor 15 Jahren gekauft habe. Der hat gottseidank funktioniert. Getestet habe ich das mit dem Programm von Kauls:
http://www.kauls.de/Braun/
Damit ist der erste Meilenstein genommen. Weiter geht es dann mit der Konfiguration des Pi.
2. Prüfen, ob als serieller port erkannt wird:
$ ls /dev/*USB*
/dev/ttyUSB0
Wenn es so erkannt wird, dann ist das schon mal sehr gut. Ich musste den Pi neu starten; vielleicht hätte ab-/anmelden auch gereicht.
3. Mit einem Terminalprogramm z.B. cutecom die Hardware testen. Evtl. installieren:
$ sudo apt-get install cutecom
4. Das Programm hat eine GUI und wird entweder per shell mit "cutecom" oder aus dem Menü gestartet.
$ cutecom
Baudrate auf 300 einstellen, Zeile mit "CR" abschliessen und testen. Dazu bietet sich vermutlich das Kommando "0<2" an, das die Anlage ein-/ ausschaltet.
5. Für die Verwendung aus dem Browser oder dem Terminal muss man die Schnittstellenparameter einstellen. Dazu kann man das Kommando "stty" verwenden.
$ stty -F /dev/ttyUSB0 ospeed 300 ispeed 300 -ignpar cs8 -cstopb -echo
6. Jetzt kann man mal versuchen aus der Shell die Anlage einzuschalten. Über die gleiche Art kommuniziert auch das PHP-Skript mit der Anlage:
$ echo "0<2" > /dev/ttyUSB0
7. Bei mir gab es keine Probleme mit den Nutzerrechten bisher. Ich verwende aber auch die Standard-Raspbian (oder Raspberry Pi OS) -Installation. Sollte das aber nicht funktionieren, kann man dem Nutzer "pi" Zugriff auf die seriellen Schnittstellen geben. Das geschieht dadurch, dass man den Benutzer zur Gruppe "dialout" hinzufügt.
[
sudo usermod -a -G dialout pi
]
8. Der Nutzer "www-data" führt den Webbrowser aus und muss Zugriff auf die serielle Schnittstelle haben, daher Nutzer "www-data" zur Gruppe "dialout" hinzufügen:
$ sudo usermod -a -G dialout www-data
9. Prüfen, ob Nutzer www-data auch zur Gruppe dialout gehört:
$ groups www-data
-->
www-data : www-data dialout
10. Browser aufrufen und bei Standardkonfiguration einfach die IP-Adresse des Pi eingeben.
Ich musste noch einige Kleinigkeiten ändern, da bei mir nur z.B. "Volume down" und nicht "Volume up" ging. Bei Bedarf kann ich dazu auch noch mal posten.
Insgesamt sollte es jetzt aber klappen! Ich finde es ist wirklich ein sehr gelungenes Programm. Vielen Dank "batesman"!
Mein R4/2 gibt leider keine Statusmeldungen zurück, damit kann es für mich nie mehr als eine weitere einfache dumme Fernbedienung sein. Nichtsdestotrotz ist es wirklich eine Bereicherung und die 30 Jahre alte Braun-Anlage ist damit absolut im "Homeautomation"-Zeitalter angekommen.
Ich werde jetzt noch das Programm anpassen, um auch Webradio über den Pi zu hören. Dazu will ich mpd und mpc verwenden. Erste Schritte habe ich bereits getan.
Grüße,
Bernd