GPIO mit FHEM ansteuern

Begonnen von kblc, 11 Januar 2015, 09:20:21

Vorheriges Thema - Nächstes Thema

kblc

Hallo,

ich habe mich lange geweigert, die Frage hier rein zu stellen, da sie schon oft im Forum behandelt wurde, aber ich komme selbst mit den Hinweisen der Freunde in den jeweiligen Themen nicht zurecht. Ich bin blutiger Anfänger und lerne gerade mit den Geräten umzugehen und die Programmiersprachen Python, Perl, ... .

Ich vermute, es fehlt nur eine Kleinigkeit oder ich verstehe irgendwas nicht - (oder und).

Ich habe einen R-Pi B+ wo an GPIO_22(Pin15) GPIO_27(Pin13) und GPIO_17(Pinn11) ein MultiLED angeschlossen ist. Die LED geht auch. Sogar, wenn ich sie über das Terminal des R-Pi mit dem Befehl  fhem-gpio.sh 27 1 ansteuere. Dann geht GPIO27 an. So wie es sein soll. Ich habe eine Datei mit dem Namen fhem-gpio.sh, wie im fhem - wiki http://www.fhemwiki.de/wiki/Raspberry_Pi:_GPIOs_schalten angegeben, erstellt. In FHEM habe ich ebenfalls eine Datei erstellt. FHEM-GPIO.cfg und habe diese mit include in FHEM.cfg integriert. Dann taucht auch das LED_1 auf. Aber es tut sich nichts.
Mir würde es zum weiterprobieren schon langen, wenn wenigstens mal ein Licht an und aus geht.

Ich finde keine Hilfe im Internet. Kann mit jemand noch einen Tipp geben, was ich machen kann, wo mein Fehler liegt, oder wo ich noch suchen kann. (Die Themen hier im Forum mit GPIO hab ich leider schon durch).

Hier nochmal die Dateien:

fhem-gpio.cfg:
#define LED_1 FS20 11144444 2c
attr LED_1 dummy 1
define act_on_LED_1 notify LED_1 {\
if ("%" ne "off") {\
  system("sudo fhem-gpio.sh 22 1 &")\
} else {\
  system("sudo fhem-gpio.sh 22 0 &")\
}\
}



fhem-gpio.sh:
#!/bin/bash
PORT=$1;
gpio -g mode $PORT out
STATE=$2;
if [ $STATE -gt 1 ]
then
  STATE=1
fi
gpio -g write $PORT $STATE


Vielen Dank für alles.

Kai aus Oberfranken
SPS, Arduino, Controllino, Sensortechnik, Elektronik

PeMue

Hallo Kai,

probier mal folgendes in der fhem Kommandozeile:
{ `sudo fhem-gpio.sh 27 1 &` }

Gruß PeMue

RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

kblc

Vielen Dank für die Hilfe.

Nein, leider brachte der Befehl in der Kommandozeile keinen Erfolg. Ich habe auch mal 27 in 17 und 22 geändert. Alles ohne Erfolg.
Ich erhalte auch keinen Eintrag unter der Kommandozeile bzw. in der Logfile und auch nicht im EventMonitor.

Ich habe die hem-gpio.sh Datei in /usr/bin/ abgespeichert, war das richtig?

Kai
SPS, Arduino, Controllino, Sensortechnik, Elektronik

PeMue

Hallo Kai,

vermutlich findet fhem Dein Skipt nicht.
Probier mal
{ `/usr/bin/fhem-gpio.sh 27 1 &` }
und gib der Shelldatei dem User fhem bzw. der Gruppe dialout Ausführungsrecht mit chmod.

Normalerweise würde ich solche Skripte entweder unter /opt/script oder unter ~/script (~ ist das Homeverzeichnis) speichern und einen Pfad, wenn Du in /user/bin speicherst, brauchst Du keinen Pfad setzen.

Gruß PeMue
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

kblc

Ich habe FHEM die Rechte gegeben. Ich habe jetzt nochmal die fhem-gpio.sh Datei in ~/script/ gespeichert oder geschrieben und habe den Pfad angegeben. Es geht nicht.

Kann es was helfen, Raspbian neu aufzusetzen? Ich habe nichts notwendiges drauf. Es ist nur ein Lern und Testcomputer. Die Hausautomation übernimmt ein eigener R-Pi mit FHEM.

Mir ist beim schreiben jetzt aufgefallen, dass ich ja zwei FHEM Systeme auf zwei R-Pi laufen habe. Natürlich nicht identisch. Aber dennoch im gleichen Netzwerk (192.168.78.44 und .139) Kann das etwas ausmachen? Wobei ich immer nur den .139  bediene, da der im Moment noch als "Test und Lernobjekt" herhalten muss. Ich wollte an dem alles testen und dann am Anderen alles einrichten.
Am .139 R-Pi geht es ja im Terminal wenn ich fhem-gpio.sh 27 1 eingebe. Oder ist es egal dass noch ein FHEM im Netzwerk ist. Von mir ist zwischen den beiden FHEM's keine Verbindung aufgebaut.

Vielen Dank für die Hilfe.

Kai
SPS, Arduino, Controllino, Sensortechnik, Elektronik

bergadler

aktuelles FHEM auf Raspberry B+, FHEM von fhem.de V.5.7, CUL868 V1.57, (6x FHT80B+ FHTTK, div. IT,div. FS20,Harmony Hub)

kblc

Hey danke, das habe ich zwar auch schon mal gelesen, aber nicht richtig verstanden. Die Kombination hats gebracht. Vielen lieben Dank an Euch. Ihr habt mir echt sehr geholfen.
@PeMue: ich bleib trotzdem an der Sache mal dran, ich habe irgendwie das Verlangen, dass es funktioniert. Aber das wichtigste ist, dass es erst mal geht. Ich werde aber noch wenig probieren. Sollte ich eine Antwort auf meine Frage haben oder ein weiteres, für mich unlösbares Problem auftreten schreibe ich wieder.

Alles Gute und bis zum nächsten mal.

Kai aus Oberfranken
SPS, Arduino, Controllino, Sensortechnik, Elektronik