[Gelöst] bekomme GPIO und GPIO4FHEM nicht zu laufen ...

Begonnen von llinus76, 20 Mai 2025, 08:13:49

Vorheriges Thema - Nächstes Thema

llinus76

Hallo zusammen,

ich habe meinen RaspberryPi mit FHEM neu installieren müssen da die SD-Karte gestorben ist. Hat alles wunderbar funktioniert, aber eine ,,Kleinigkeit" bekomme ich einfach nicht, auch nach Stunden, nicht zu laufen.

Ich steuere meine Heizung/Kühlung über einen Schalter, der den Zustand über einen Optokoppler an den RaspberryPi gibt, ich dann den Status auslese und entscheidet ob die Steuerung kühlen oder heizen soll.

Soweit so gut, ,,wiringpi" habe ich installiert und es funktioniert unter Linux auch einwandfrei:
> gpio -g read 24
1
liefert "1" also Sommerbetrieb
in fhem funktiniert es aber nicht, obwohl ich es mit dieser Kontiguration über Jahre erfolgreich betrieben habe:
### liest den Zustand auf GPIO24 ein (Signal vom Keller Winter- Sommerbetrieb)
define Sommerbetrieb RPI_GPIO 24
attr Sommerbetrieb alias Sommer- oder Winterbetrieb
attr Sommerbetrieb devStateIcon on:frost@6FD9FB off:sani_heating_temp@FC0000
attr Sommerbetrieb group Betriebsparameter
attr Sommerbetrieb icon temp_inside
attr Sommerbetrieb poll_interval 3600000
attr Sommerbetrieb pud_resistor up
attr Sommerbetrieb room HeizungsStatus
im Logfile kommt folgende Fehlermeldung:
2025.05.20 07:26:18.072 1: Can't open file: Sommerbetrieb, value
2025.05.20 07:26:18.073 1: Sommerbetrieb GetFn: readout of Pinvalue fail
2025.05.20 07:26:18.075 1: PERL WARNING: Use of uninitialized value $zustand in concatenation (.) or string at ./FHEM/51_RPI_GPIO.pm line 198.
2025.05.20 07:26:18.077 1: stacktrace:
2025.05.20 07:26:18.078 1:     main::__ANON__                      called by ./FHEM/51_RPI_GPIO.pm (198)
2025.05.20 07:26:18.080 1:     main::RPI_GPIO_Get                  called by fhem.pl (3988)
2025.05.20 07:26:18.082 1:     main::CallFn                        called by fhem.pl (2038)
2025.05.20 07:26:18.083 1:     main::CommandGet                    called by fhem.pl (2896)
2025.05.20 07:26:18.085 1:     main::getAllGets                    called by ./FHEM/01_FHEMWEB.pm (1598)
2025.05.20 07:26:18.086 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1207)
2025.05.20 07:26:18.088 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (613)
2025.05.20 07:26:18.089 1:     main::FW_Read                       called by fhem.pl (3988)
2025.05.20 07:26:18.091 1:     main::CallFn                        called by fhem.pl (789)
Ich habe auch schon versucht alternativ GPIO4FHEM zu installieren
> wget https://raw.githubusercontent.com/klein0r/fhem-GPIO4FHEM/master/FHEM/70_GPIO4FHEM.pm
das wird aber nicht gefunden, ev. nicht mehr unterstützt
--2025-05-20 07:53:37--  https://raw.githubusercontent.com/klein0r/fhem-GPIO4FHEM/master/FHEM/70_GPIO4FHEM.pm
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.108.133, 185.199.111.133, 185.199.109.133, ...
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|185.199.108.133|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2025-05-20 07:53:38 ERROR 404: Not Found.
Ich komme hier einfach nicht weiter und langsam gehen mir die Ideen aus!
Hätte wer eine Idee für mich?

Danke und lG,
Martin

Prof. Dr. Peter Henning

Loglevel hochsetzen, verbose=5 bei dem Device.

LG

pah

llinus76

Hallo,

2025.05.20 09:12:12.419 5: Sommerbetrieb, in fileaccess: value
2025.05.20 09:12:12.421 5: Sommerbetrieb, in fileaccess: direction in
2025.05.20 09:12:12.423 4: Sommerbetrieb: direction ueber gpio utility einstellen
2025.05.20 09:12:12.458 4: Sommerbetrieb: WiringPi executed: '/usr/local/bin/gpio export 24 in' /usr/local/bin/gpio: GPIO Sysfs Interface for Userspace is deprecated (https://www.kernel.org/doc/Documentation/gpio/sysfs.txt).
 Function is now useless and empty.
2025.05.20 09:12:12.461 4: Sommerbetrieb: direction gesetzt auf in
2025.05.20 09:12:12.463 1: Can't open file: Sommerbetrieb, value
2025.05.20 09:12:12.465 1: Sommerbetrieb: readout of Pinvalue fail
Danke und lG,
Martin

Otto123

Hi,

klingt nach: user fhem ist nicht in der Gruppe gpio ?

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

llinus76

Hallo Otto,

nein, das habe ich schon versucht und eben nochmals gemacht:
pi@xxx $ sudo usermod -aG gpio fhem
pi@xxx $ sudo systemctl restart fhem
Noch eine Idee?

Danke und lg,
Martin

Otto123

#5
Ja: funktioniert Dein Versuch in der FHEM Kommandozeile?
{qx(gpio -g read 24)}Ansonsten weiß ich nur, das sich vieles geändert hat und ich kenne den letzten funktionierenden Stand leider nicht.
https://forum.fhem.de/index.php?topic=137661.0
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

llinus76

Nein, leider da kommt nix zurück und im Logfile steht auch nichts ...

Danke,
Martin

llinus76

Sorry, da hatte ich gerade einen Hänger im System. Ja das geht und es liefert den Status "1" also so wie es sein soll ...

Otto123

#8
Dann hab ich nur noch den Tipp die Diskussion in das richtige Board zu verschieben, findet man mit help:
help rpi_gpiound ev. die Vorschläge aus meinem Link oben verwenden, falls es um Bookworm geht.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Frank_Huber

#9
war da nicht was mit anderen GPIO Zuordnungen für das GPIO Modul?
immer +512?

versuche mal:
define Sommerbetrieb RPI_GPIO 536

Prof. Dr. Peter Henning

Before we continue, I should mention that this interface is being deprecated in favor of a new GPIO character device API. The new API addresses a number of issues with the sysfs interface. However, it can't be easily be used from the file system like sysfs, so the examples here will use sysfs, which is still going to be supported for some time.

If you want to follow along and try these commands on a Raspberry Pi, you should check that you did the setup mentioned in the last blog post, specifically you need to be part of the "gpio" group so you can run these commands without the need to become the root user.

https://www.ics.com/blog/gpio-programming-using-sysfs-interface

Sieht so aus, als ob man über das "neue" API gehen muss.

LG

pah

llinus76

Zitat von: Frank_Huber am 20 Mai 2025, 15:20:11war da nicht was mit anderen GPIO Zuordnungen für das GPIO Modul?
immer +512?

versuche mal:
define Sommerbetrieb RPI_GPIO 536
Mega, danke - manchmal ist die Lösung so "einfach" - gewusst wie  ;D .

Funktioniert wieder einwandfrei - Danke und lG,
Martin


Prof. Dr. Peter Henning

Ich halte es trotzdem für sinnvoll, nicht auf "deprecated"-Lösungen zu setzen.

pah

Otto123

Diese Lösung stand letztendlich auch in meinem Link (verlinkt) und ich hatte/habe die gleichen Bedenken wie pah: da hat man jetzt wieder ins dünne Brett gebohrt. ;)
Aber offenbar wollen es alle, die es einsetzen, nicht zukunftssicher lösen. Aber vielleicht leben ja die Totgesagten länger als man denkt.  ;D
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz