FHEM auf Raspberry PI mit COC betreiben: Unterschied zwischen den Versionen

Aus FHEMWiki
K (Forenlink auf Wiki-Vorlage umgestellt; kleinere Formatänderungen)
 
Zeile 26: Zeile 26:
Hinweis: Offenbar gibt es im laufe der Jahre unterschiedliche Versionen des COC. Das folgende Script stammt aus der Zusammenarbeit in diesem {{Link2Forum|Topic=111106|LinkText=Forenthema}}. Offenbar wurden die Pins zur Aktivierung geändert, deshalb bitte die Unterlagen des [http://busware.de/ Herstellers] konsultieren! Dort steht aktuell ein anderes [http://busware.de/tiki-index.php?page=COC_Installation Script].
Hinweis: Offenbar gibt es im laufe der Jahre unterschiedliche Versionen des COC. Das folgende Script stammt aus der Zusammenarbeit in diesem {{Link2Forum|Topic=111106|LinkText=Forenthema}}. Offenbar wurden die Pins zur Aktivierung geändert, deshalb bitte die Unterlagen des [http://busware.de/ Herstellers] konsultieren! Dort steht aktuell ein anderes [http://busware.de/tiki-index.php?page=COC_Installation Script].


Bitte das Script separat testen und erst nach Erfolg in den Systemstart einbauen!
Bitte die folgenden Befehlszeilen separat mit root Rechten (sudo) testen und erst nach Erfolg in den Systemstart einbauen!<syntaxhighlight lang="bash">
 
Damit der COC beim Start von FHEM initialisiert wird, muss ein Script ausgeführt werden.
<syntaxhighlight lang="bash">
echo "resetting 868MHz extension..."
echo "resetting 868MHz extension..."
if test ! -d /sys/class/gpio/gpio17; then echo 17 > /sys/class/gpio/export; fi
if test ! -d /sys/class/gpio/gpio17; then echo 17 > /sys/class/gpio/export; fi
Zeile 40: Zeile 37:
echo 1 > /sys/class/gpio/gpio17/value
echo 1 > /sys/class/gpio/gpio17/value
sleep 1
sleep 1
</syntaxhighlight>
</syntaxhighlight>Damit der COC beim Start von FHEM initialisiert wird, muss der obige Code als Script ausgeführt werden.
* Bei systemd Systemen kann man nach diesem [[Fhem.service (systemd unit file)|'''Wiki Artikel''']] vorgehen. Der obige Code wird dabei einfach als Inhalt für die dort erzeugten Scripte verwendet.
* Bei systemd Systemen kann man nach diesem [[Fhem.service (systemd unit file)|'''Wiki Artikel''']] vorgehen. Der obige Code wird dabei einfach als Inhalt für die dort erzeugten Scripte verwendet.
* Bei init.d Systemen muss die Datei '''/etc/init.d/fhem''' z.B. mittels  
* Bei init.d Systemen muss die Datei '''/etc/init.d/fhem''' z.B. mittels  

Aktuelle Version vom 14. Dezember 2023, 10:42 Uhr

Um einen COC mit einem Raspberry Pi und FHEM zu nutzen, sind mehrere Schritte notwendig. Die folgende Anleitung zeigt diese entsprechend auf.

Vorausetzung

Erforderliche Hardware:

  • Raspberry Pi
  • Busware COC

Erforderliche Software:

  • Raspbian OS (Lite Version dringend empfohlen)

Notwendige Vorbereitungen:

  • Busware COC ist auf dem Raspberry Pi montiert
  • Raspberry Pi ist ans Netzwerk angeschlossen und mit dem Internet verbunden.

Raspberry Pi Grundinstallation

  1. Bitte immer zuerst https://fhem.de/fhem.html#Installation lesen!
  2. Die empfohlene Grundinstallation des Raspberry Pi ist im Artikel Raspberry Pi beschrieben
Dabei ist besonders der Abschnitt Verwendung UART für Zusatzmodule zu beachten

Zusatzeinstellungen

Emblem-question-yellow.svgDieser Abschnit muss überprüft werden. Eigentlich sind diese Rechte nicht notwendig: FHEM ist schon in der Gruppe dialout, gpio Initialisierung erfolgt mit root Rechten

Zusätzlich zur Grundinstallation fügen wir den Benutzer fhem der Gruppe tty und gpio hinzu (Zugriffsrechte auf Serial- und USB-Ports und GPIO)

sudo usermod -aG tty,gpio fhem

COC in Betrieb nehmen

Hinweis: Offenbar gibt es im laufe der Jahre unterschiedliche Versionen des COC. Das folgende Script stammt aus der Zusammenarbeit in diesem Forenthema. Offenbar wurden die Pins zur Aktivierung geändert, deshalb bitte die Unterlagen des Herstellers konsultieren! Dort steht aktuell ein anderes Script.

Bitte die folgenden Befehlszeilen separat mit root Rechten (sudo) testen und erst nach Erfolg in den Systemstart einbauen!

echo "resetting 868MHz extension..."
if test ! -d /sys/class/gpio/gpio17; then echo 17 > /sys/class/gpio/export; fi
if test ! -d /sys/class/gpio/gpio18; then echo 18 > /sys/class/gpio/export; fi
echo out > /sys/class/gpio/gpio17/direction
echo out > /sys/class/gpio/gpio18/direction
echo 1 > /sys/class/gpio/gpio18/value
echo 0 > /sys/class/gpio/gpio17/value
sleep 1
echo 1 > /sys/class/gpio/gpio17/value
sleep 1

Damit der COC beim Start von FHEM initialisiert wird, muss der obige Code als Script ausgeführt werden.

  • Bei systemd Systemen kann man nach diesem Wiki Artikel vorgehen. Der obige Code wird dabei einfach als Inhalt für die dort erzeugten Scripte verwendet.
  • Bei init.d Systemen muss die Datei /etc/init.d/fhem z.B. mittels
sudo nano /etc/init.d/fhem
editiert, und der Scriptcode unterhalb von "Start)" eingefügt werden.

Nun wird der Raspberry PI vollständig neu gestartet:

sudo shutdown -r now

In FHEM wird in der Weboberfläche die Definition durchgeführt:

define COC CUL /dev/ttyAMA0@38400 1234

Der Raspberry PI sollte nun via auto detect die Komponenten auffinden