FHEM/51_RPI_GPIO.pm

Begonnen von moerte, 20 März 2025, 17:00:43

Vorheriges Thema - Nächstes Thema

moerte

Nabend, ich hänge derzeit an meinen letzten Problem nach umzug auf einen pi5.
Mein Gaszähler, welchen ich über GPIO auslese, geht leider nicht mehr.
Vor einiger Zeit habe ich dies folgender Maßen zum laufen gebracht:
sudo apt-get install git-core
git clone git://git.drogon.net/wiringPi
cd wiringPi
./build
sudo reboot

leider ist drogon.net nicht mehr erreichbar

wiring pi müsste aber denke trotzdem auf dem Pi laufen - gpio redall funktioniert.
rechte konnten auch gesetzt werden: sudo usermod -a -G gpio fhem
im Logfile habe ich folgende Fehlermeldungen:
PERL WARNING: readline() on closed filehandle DATA at ./FHEM/58_GPIO4.pm line 132.
PERL WARNING: Use of uninitialized value in pattern match (m//) at ./FHEM/58_GPIO4.pm line 132.

Can't open file: GPIOGaszaehler, active_low
Can't open file: GPIOGaszaehler, Edge


und zu guter letzt noch das List vom GPIOGaszähler:
Internals:
   DEF        24
   FUUID      5c542312-f33f-599c-4d48-4029d2dc6055fa5a
   GPIO_Basedir /sys/class/gpio
   GPIO_Nr    24
   NAME       GPIOGaszaehler
   NR         57
   STATE      off
   TYPE       RPI_GPIO
   WiringPi_gpio /usr/bin/gpio
   filehandle
   READINGS:
     2025-03-11 18:34:10   Dblclick        off
     2025-03-11 18:34:10   Longpress       off
     2025-03-11 18:34:10   state           off
     Pinlevel:
       TIME       2025-03-20 16:47:53
       VAL       
   fhem:
     interfaces switch
Attributes:
   active_low yes
   direction  input
   group      Kontakte
   interrupt  both
   pud_resistor up
   room       Verbrauch
   toggletostate yes

hat jemand eine Idee???
LG und einen schönen Abend



frober

#1
https://github.com/WiringPi/WiringPi

WiringPI wurde mWn eine Zeitlang nicht mehr gepflegt. Nun scheint es wieder aktuell zu sein, aber mit Änderungen.

Ich nutze es nicht mehr.


Evtl. hilft auch das

https://forum.fhem.de/index.php?topic=139423.msg1322373#msg1322373
Raspi 3b mit Raspbian Bullseye und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

RappaSan

Beim Pi5 unter Bookworm haben die GPIOs andere Nummern.
Evtl. hilft so was:
define GPIOGaszaehler RPI_GPIO 595

frober

So wie ich das sehe, hat er die alte Version von WiringPI installiert und die funktioniert nicht mehr. Daher habe ich den Link gepostet...
Raspi 3b mit Raspbian Bullseye und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

betateilchen

Zitat von: moerte am 20 März 2025, 17:00:43im Logfile habe ich folgende Fehlermeldungen:

PERL WARNING: readline() on closed filehandle DATA at ./FHEM/58_GPIO4.pm line 132.
PERL WARNING: Use of uninitialized value in pattern match (m//) at ./FHEM/58_GPIO4.pm line 132.


nennt mich "blind", aber diese Meldungen stammen doch aus einem anderen Modul als das im Betreff genannte RPI_GPIO?

58_GPIO4.pm ist seit längerem deprecated und in der FHEM Auslieferung gar nicht mehr enthalten.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

frober

#5
Er hat den Pi gewechselt und das "alte" Backup eingespielt.

Die Def passt aber
TYPE       RPI_GPIO
Raspi 3b mit Raspbian Bullseye und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

betateilchen

Zitat von: frober am 20 März 2025, 19:35:32Die Def passt aber

Das ist mir schon klar. Ich wollte nur darauf hinweisen, dass hier offenbar zwei Probleme bestehen und man die nicht durcheinanderbringen sollte.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

moerte

Zitat von: betateilchen am 20 März 2025, 19:55:39
Zitat von: frober am 20 März 2025, 19:35:32Die Def passt aber

Das ist mir schon klar. Ich wollte nur darauf hinweisen, dass hier offenbar zwei Probleme bestehen und man die nicht durcheinanderbringen sollte.

Danke erstnak für die Hilfe - ja ich habs jetzt auch gesehen, sind 2 Probleme.
Hab noch ein Temperaturfühler an den GPIO ... das ist die GPIO4 Fehlermeldung von dem device:

Internals:
   DEF        10-0008021db360
   FUUID      5c542321-f33f-599c-f160-f3fa8cfd8fba97a5
   NAME       Heizraum
   NR         109
   NTFY_ORDER 50-Heizraum
   STATE      T: 16.437
   TYPE       GPIO4
   eventCount 22
   READINGS:
     2025-03-20 19:58:21   failures        23
     2025-03-18 11:51:16   state           T: 16.437
     2025-03-18 11:51:16   temperature     16.437
   fhem:
     interfaces temperature
Attributes:
   model      DS1820
   room       Sensoren

der letzte state ist noch vom alten Pi - aber auf das device bzw den sensor könnte ich auch verzichten.
Der Gaszähler wäre schon schön wenn der wieder geht.
Muss ma schauen, komm noch nicht so auf der Seite klar mit dem Link was Fober gepostet hat.

betateilchen

Zitat von: moerte am 20 März 2025, 20:00:16Muss ma schauen, komm noch nicht so auf der Seite klar mit dem Link was Fober gepostet hat.

Womit muss man denn da klarkommen?

https://github.com/WiringPi/WiringPi/releases/tag/3.14

Du brauchst doch nur das fertige .deb Paket von dieser Seite runterladen und wie jedes andere Debian Paket auch auf Deinem RaspberryPi installieren.

Kann es sein, dass Du Dir manchmal beim Denken selbst ein bisschen im Weg stehst?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

moerte

Ich weiß selber das ich mich anstelle wie ein Fahrrad, ich hab mich nie großartig damit befasst, das mir das alles mal jemand eingerichtet hat.
Jetzt steh ich halt da und fuchs mich rein.
Ich weiß, dass ich jetzt sehr viel lernen und lesen muss - aber leider komm ich auf Seiten, die auf englisch sind an meine Grenzen.
Das soll keine Entschuldigung sein - nur vlt eine kleine Erklärung.



moerte

hab es heruntergeladen und installiert:
sudo apt-get install /home/pi/wiringpi_3.14_arm64.deb

und nun?  :))  :))  :))
Nach der Anleitung gehen?  Link
..bei wiringPiSetup V3 weitermachen?

moerte

Zitat von: RappaSan am 20 März 2025, 18:59:40Beim Pi5 unter Bookworm haben die GPIOs andere Nummern.
Evtl. hilft so was:
define GPIOGaszaehler RPI_GPIO 595

Das ist schonmal ein sehr guter Ansatz. Nach der Änderung kommt schon mal ein neues Reading "Pinlevel" wenn das Readrelais auslöst.
Leider ändert er noch nicht den "state" auf on off

Internals:
   DEF        595
   FUUID      5c542312-f33f-599c-4d48-4029d2dc6055fa5a
   GPIO_Basedir /sys/class/gpio
   GPIO_Nr    595
   NAME       GPIOGaszaehler
   NR         57
   STATE      off
   TYPE       RPI_GPIO
   WiringPi_gpio /usr/bin/gpio
   eventCount 1
   filehandle
   READINGS:
     2025-03-11 18:34:10   Dblclick        off
     2025-03-11 18:34:10   Longpress       off
     2025-03-20 21:53:07   Pinlevel        low
     2025-03-11 18:34:10   state           off
   fhem:
     interfaces switch
Attributes:
   active_low yes
   direction  input
   group      Kontakte
   interrupt  both
   pud_resistor up
   room       Verbrauch
   toggletostate yes

betateilchen

Vielleicht wäre es sinnvoller gewesen, das device neu anzulegen, anstatt nur die Definition des alten device zu ändern.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

moerte

Zitat von: betateilchen am 20 März 2025, 22:13:25Vielleicht wäre es sinnvoller gewesen, das device neu anzulegen, anstatt nur die Definition des alten device zu ändern.

Hab ich jetzt gemacht. Hier kommt auch nur das reading Pinlevel.

Internals:
   CFGFN     
   DEF        595
   EXCEPT_FD  60
   FUUID      67dcf940-f33f-599c-0f7a-92cca4aa432e22dc
   GPIO_Basedir /sys/class/gpio
   GPIO_Nr    595
   NAME       GPIOGaszaehler
   NR         516
   STATE      ???
   TYPE       RPI_GPIO
   WiringPi_gpio /usr/bin/gpio
   READINGS:
     2025-03-21 06:39:30   Pinlevel        high
   fhem:
     interfaces switch
   hmccu:
Attributes:
   active_low yes
   direction  input
   interrupt  both
   pud_resistor up
   room       Verbrauch
   toggletostate yes



frober

#14
Was erwartest du?

direction  input
Damit kommt kein on/off, eher high/low
Steht ja hinter Pinlevel.


Comref/Hilfe gelesen?
Deine attr scheinen nicht ganz zu passen.
Zumindest sind attr gesetzt, die in deiner Konstellation keine Auswirkungen haben.
Raspi 3b mit Raspbian Bullseye und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...