FHEM Forum

FHEM - Hardware => Einplatinencomputer => Thema gestartet von: moerte am 20 März 2025, 17:00:43

Titel: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 20 März 2025, 17:00:43
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


Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 20 März 2025, 18:22:24
https://github.com/WiringPi/WiringPi (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 (https://forum.fhem.de/index.php?topic=139423.msg1322373#msg1322373)
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: RappaSan am 20 März 2025, 18:59:40
Beim Pi5 unter Bookworm haben die GPIOs andere Nummern.
Evtl. hilft so was:
define GPIOGaszaehler RPI_GPIO 595
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 20 März 2025, 19:04:55
So wie ich das sehe, hat er die alte Version von WiringPI installiert und die funktioniert nicht mehr. Daher habe ich den Link gepostet...
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: betateilchen am 20 März 2025, 19:23:58
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.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 20 März 2025, 19:35:32
Er hat den Pi gewechselt und das "alte" Backup eingespielt.

Die Def passt aber
TYPE       RPI_GPIO
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag 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.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 20 März 2025, 20:00:16
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.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: betateilchen am 20 März 2025, 20:05:10
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?
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 20 März 2025, 20:10:32
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.


Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 20 März 2025, 21:03:28
hab es heruntergeladen und installiert:
sudo apt-get install /home/pi/wiringpi_3.14_arm64.deb

und nun?  :))  :))  :))
Nach der Anleitung gehen?  Link (https://github.com/WiringPi/WiringPi/blob/master/documentation/deutsch/functions.md)
..bei wiringPiSetup V3 weitermachen?
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 20 März 2025, 21:52:32
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
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: betateilchen am 20 März 2025, 22:13:25
Vielleicht wäre es sinnvoller gewesen, das device neu anzulegen, anstatt nur die Definition des alten device zu ändern.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 07:11:32
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


Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 21 März 2025, 09:14:31
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.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: betateilchen am 21 März 2025, 10:19:46
Zitat von: frober am 21 März 2025, 09:14:31Zumindest sind attr gesetzt, die in deiner Konstellation keine Auswirkungen haben.

Deshalb hatte ich die Neuanlage empfohlen. Allerdings war ich dabei nicht davon ausgegangen, dass dann gleich wieder die gleichen sinnlosen Attribute vom Anwender gesetzt werden. Es geht nicht nur darum, dass ein Attribut keine Auswirkung hat, ein Attribut kann auch komplett kontraproduktiv sein.

Zitat von: frober am 21 März 2025, 09:14:31Comref/Hilfe gelesen?

Mit ziemlicher Sicherheit nicht.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 10:37:49
ist gut - ich weiß ich bin nicht die hellste Kerze auf der Torte. Aber dann lassen wir das hier und ich werde am besten nichts mehr fragen.
natürlich hab ich es gelesen.
Und da es so funktioniert hatte - warum soll ich es in Frage stellen?
ich hab nun mal nur die attr.:
Attributes
direction
Setzt den GPIO auf Ein- oder Ausgang.
Standard: input, gültige Werte: input, output

active_low
Invertieren des logischen Wertes
Standard: no, gültige Werte: no, yes

interrupt
kann nur gewählt werden, wenn der GPIO als Eingang konfiguriert ist
Aktiviert Flankenerkennung für den GPIO
bei jedem interrupt Ereignis werden die readings Pinlevel und state aktualisiert
Standard: none, gültige Werte: none, falling, rising, both

Bei "both" wird ein reading Longpress angelegt, welches auf on gesetzt wird solange der Pin länger als 1s gedrückt wird
Bei "falling" und "rising" wird ein reading Toggle angelegt, das bei jedem Interruptereignis toggelt und das Reading Counter, das bei jedem Ereignis um 1 hochzählt

poll_interval
Fragt den Zustand des GPIO regelmäßig ensprechend des eingestellten Wertes in Minuten ab
Standard: -, gültige Werte: Dezimalzahl

toggletostate
Funktioniert nur bei auf falling oder rising gesetztem Attribut interrupt
Wenn auf "yes" gestellt wird bei jedem Triggerereignis das state reading invertiert
Standard: no, gültige Werte: yes, no

pud_resistor
Interner Pullup/down Widerstand
Funktioniert aussließlich mit installiertem gpio Tool der WiringPi Bibliothek.
Standard: -, gültige Werte: off, up, down

debounce_in_ms
Wartezeit in ms bis nach ausgelöstem Interrupt der entsprechende Pin abgefragt wird. Kann zum entprellen von mechanischen Schaltern verwendet werden
Standard: 0, gültige Werte: Dezimalzahl

unexportpin
Führe unexport über /sys/class/gpio/unexport aus wenn die Pin-Definition gelöscht wird (z.B. durch rereadcfg, delete,...)
Standard: yes, , gültige Werte: yes, no

restoreOnStartup
Wiederherstellen der Portzustände nach Neustart
Standard: last, gültige Werte: last, on, off, no

longpressinterval
Funktioniert nur bei auf both gesetztem Attribut interrupt
Zeit in Sekunden, die ein GPIO auf high verweilen muss, bevor das Reading longpress auf on gesetzt wird
Standard: 1, gültige Werte: 0.1 - 10

readingFnAttributes

Und hier finde ich zumal selbst nicht den Fehler. und als sinnlose Attribute hab ich diese nicht gehalten (s.o.)
EGAL

Trotzdem Danke und ein schönes Wochenende.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 21 März 2025, 12:21:36
Z.B.
toggletostate
Funktioniert nur bei auf falling oder rising gesetztem Attribut interrupt
Wenn auf "yes" gestellt wird bei jedem Triggerereignis das state reading invertiert
Standard: no, gültige Werte: yes, no

Warum gleich beleidigt?

Wir opfern freiwillig unsere Zeit um zu helfen, erwarten aber auch Gegenleistung in Sinne von Lesen von Anleitungen, Eigeninitiative etc.

Wir sind auch nicht vom Himmel gefallen...
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 15:21:24
Ich bin nicht beleidigt,  und ich habe auch schon  mehrfach gesagt wie dankbar ich für die Hilfe bin.

Natürlich belese ich mich, aber es gab hierzu eine Anleitung die halt nicht mehr geht. Und eine andere Anleitung habe ich nicht gefunden.
Und da ich dachte weil es auf den alten pi ging, warum sollten die attribute anders sein, daher hab ich mir einfach keinen Kopf drüber gemacht. Ich lass mich auch gern eines besseren belehren und ich weiß auch sicherlich nichts besser.
Sonst würde ich nicht fragen .. egal jetzt.
Ich bin sicher, dass ich nicht der einzige bin der ein Gaszähler über ein Readralais und GPIO ausliest.
Vlt kann man ja hierzu eine neue Anleitung erstellen.

Die attribute verstehe ich, und ich habe das jetzt auch so konfiguriert.
Wenn ich Wenn ich readValue mache, ändert sich nur die Uhrzeit des readings.
Wenn ich das Readrelais auslöse kommt in Fhem auch nichts an. Der state ändert sich auch nicht. Wenn ich das attr toggletostate richtig verstehe, sollte er es dadurch aber machen. Aber solange beim Auslösen des Readrelais nichts ankommt, weiß ich nun auch nicht weiter.


Internals:
   CFGFN     
   DEF        595
   EXCEPT_FD  44
   FUUID      67dcf940-f33f-599c-0f7a-92cca4aa432e22dc
   GPIO_Basedir /sys/class/gpio
   GPIO_Nr    595
   NAME       GPIOGaszaehler
   NR         516
   STATE      off
   TYPE       RPI_GPIO
   WiringPi_gpio /usr/bin/gpio
   eventCount 5
   READINGS:
     2025-03-21 15:05:52   Pinlevel        low
     2025-03-21 11:16:51   state           off
   fhem:
     interfaces switch
   hmccu:
Attributes:
   direction  input
   interrupt  falling
   room       Verbrauch
   toggletostate yes

Der Pinlevel bleibt auch immer auf low. Das attr interurupt muss ja auf falling stehen. Sonst nützt toggletostate nichts- wenn ich das richtig verstanden habe.

Edit:
Hab mir mal die GPIO vom bi angeschaut.
Ich hab das Relais ja an GPIO 24.. müsste jetzt die def statt 595 auf 593 wenn ich das richtig verstehe.
Hab erneut das device so angelegt leider auch ohne Änderung

$ cat /sys/kernel/debug/gpio
gpiochip10: GPIOs 512-543, parent: platform/107d508500.gpio, gpio-brcmstb@107d508500:
 gpio-512 (-                   )
 gpio-513 (2712_BOOT_CS_N      |spi10 CS0           ) out hi ACTIVE LOW
 gpio-514 (2712_BOOT_MISO      )
 gpio-515 (2712_BOOT_MOSI      )
 gpio-516 (2712_BOOT_SCLK      )
 gpio-517 (-                   )
 gpio-518 (-                   )
 gpio-519 (-                   )
 gpio-520 (-                   )
 gpio-521 (-                   )
 gpio-522 (-                   )
 gpio-523 (-                   )
 gpio-524 (-                   )
 gpio-525 (-                   )
 gpio-526 (PCIE_SDA            )
 gpio-527 (PCIE_SCL            )
 gpio-528 (-                   )
 gpio-529 (-                   )
 gpio-530 (-                   )
 gpio-531 (-                   )
 gpio-532 (PWR_GPIO            |pwr_button          ) in  hi ACTIVE LOW
 gpio-533 (2712_G21_FS         )
 gpio-534 (-                   )
 gpio-535 (-                   )
 gpio-536 (BT_RTS              )
 gpio-537 (BT_CTS              )
 gpio-538 (BT_TXD              )
 gpio-539 (BT_RXD              )
 gpio-540 (WL_ON               |wl_on_reg           ) out hi
 gpio-541 (BT_ON               |shutdown            ) out hi
 gpio-542 (WIFI_SDIO_CLK       )
 gpio-543 (WIFI_SDIO_CMD       )
gpiochip11: GPIOs 544-547, parent: platform/107d508500.gpio, gpio-brcmstb@107d508520:
 gpio-544 (WIFI_SDIO_D0        )
 gpio-545 (WIFI_SDIO_D1        )
 gpio-546 (WIFI_SDIO_D2        )
 gpio-547 (WIFI_SDIO_D3        )
gpiochip12: GPIOs 548-562, parent: platform/107d517c00.gpio, gpio-brcmstb@107d517c00:
 gpio-548 (RP1_SDA             )
 gpio-549 (RP1_SCL             )
 gpio-550 (RP1_RUN             |RP1 RUN pin         ) out hi
 gpio-551 (SD_IOVDD_SEL        |vdd-sd-io           ) out lo
 gpio-552 (SD_PWR_ON           |sd_vcc_reg          ) out lo
 gpio-553 (SD_CDET_N           |cd                  ) in  hi ACTIVE LOW
 gpio-554 (SD_FLG_N            )
 gpio-555 (-                   )
 gpio-556 (2712_WAKE           )
 gpio-557 (2712_STAT_LED       |ACT                 ) out hi ACTIVE LOW
 gpio-558 (-                   )
 gpio-559 (-                   )
 gpio-560 (PMIC_INT            )
 gpio-561 (UART_TX_FS          )
 gpio-562 (UART_RX_FS          )
gpiochip13: GPIOs 563-568, parent: platform/107d517c00.gpio, gpio-brcmstb@107d517c20:
 gpio-563 (HDMI0_SCL           )
 gpio-564 (HDMI0_SDA           )
 gpio-565 (HDMI1_SCL           )
 gpio-566 (HDMI1_SDA           )
 gpio-567 (PMIC_SCL            )
 gpio-568 (PMIC_SDA            )
gpiochip0: GPIOs 569-622, parent: platform/1f000d0000.gpio, pinctrl-rp1:
 gpio-569 (ID_SDA              )
 gpio-570 (ID_SCL              )
 gpio-571 (GPIO2               )
 gpio-572 (GPIO3               )
 gpio-573 (GPIO4               )
 gpio-574 (GPIO5               )
 gpio-575 (GPIO6               )
 gpio-576 (GPIO7               )
 gpio-577 (GPIO8               )
 gpio-578 (GPIO9               )
 gpio-579 (GPIO10              )
 gpio-580 (GPIO11              )
 gpio-581 (GPIO12              )
 gpio-582 (GPIO13              )
 gpio-583 (GPIO14              )
 gpio-584 (GPIO15              )
 gpio-585 (GPIO16              )
 gpio-586 (GPIO17              )
 gpio-587 (GPIO18              )
 gpio-588 (GPIO19              )
 gpio-589 (GPIO20              )
 gpio-590 (GPIO21              )
 gpio-591 (GPIO22              )
 gpio-592 (GPIO23              )
 gpio-593 (GPIO24              )
 gpio-594 (GPIO25              )
 gpio-595 (GPIO26              |sysfs               ) in  lo IRQ ACTIVE LOW
 gpio-596 (GPIO27              )
 gpio-597 (PCIE_RP1_WAKE       )
 gpio-598 (FAN_TACH            )
 gpio-599 (HOST_SDA            )
 gpio-600 (HOST_SCL            )
 gpio-601 (ETH_RST_N           |phy-reset           ) out hi ACTIVE LOW
 gpio-602 (-                   )
 gpio-603 (CD0_IO0_MICCLK      |cam0_reg            ) out lo
 gpio-604 (CD0_IO0_MICDAT0     )
 gpio-605 (RP1_PCIE_CLKREQ_N   )
 gpio-606 (-                   )
 gpio-607 (CD0_SDA             )
 gpio-608 (CD0_SCL             )
 gpio-609 (CD1_SDA             )
 gpio-610 (CD1_SCL             )
 gpio-611 (USB_VBUS_EN         )
 gpio-612 (USB_OC_N            )
 gpio-613 (RP1_STAT_LED        |PWR                 ) out hi ACTIVE LOW
 gpio-614 (FAN_PWM             )
 gpio-615 (CD1_IO0_MICCLK      |cam1_reg            ) out lo
 gpio-616 (2712_WAKE           )
 gpio-617 (CD1_IO1_MICDAT1     )
 gpio-618 (EN_MAX_USB_CUR      )
 gpio-619 (-                   )
 gpio-620 (-                   )
 gpio-621 (-                   )
 gpio-622 (-                   )
gpiochip14: GPIOs 623-626, parent: usb/3-1.1:1.0, ftdi-cbus, can sleep:
gpiochip15: GPIOs 627-633, parent: usb/1-1:1.0, cp210x, can sleep:

Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 21 März 2025, 18:01:42
ZitatIch hab das Relais ja an GPIO 24.. müsste jetzt die def statt 595 auf 593 wenn ich das richtig verstehe
Das würde ich auch so interpretieren.

Probiere mal
gpio readall
unter V siehst du den Status des Pins, damit kannst du auch die Veränderung beim Schalten testen. Und den richtigen Pin identifizieren.

attr pud_resistor upsolltest du wieder setzen, sonst hängt der Pin in der "Luft", was zu fehlerhaften Verhalten führt.
Vorausgesetzt der Kontakt ist an Masse angeschlossen, sonst wäre es down.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 18:58:02
Danke für deine Antwort.. ja da hab ich auch schon geschaut, und da zeigts dann wieder die "normalen" GPIO Ports an.
Bei GPIO 24 (der 9. PIN auf der äußersten Reihe) wo ein kabel dran ist steht bei V = 0 wenn ich das richtig sehe..
Das Readrelais schaltet ja nur ganz kurz, so schnell kann ich die Seite nicht aktualisieren.
Bleibt auch immer gleich wenn ich schaue. Ich hoffe das Bild ist erkennbar.
Ja, an Masse (GND) - (der 3. Pin auf der äußersten Reihe) hab ich das Readrelais auch angeschlossen.


1.jpg
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 21 März 2025, 19:30:59
In der Mitte stehen die physikalischen Pins.
Ich finde GPIO24 an Pin 35 und Masse an 6,9,14,20,25,30,34,39

Pin1 zeigt zur SD-Karte, sofern diese noch an gleichen Platz ist.

Du meinst GPIO5...
Die BCM-Nr ist hier, glaube ich, verkehrt.


Den Kontakt (die Pins) kannst zum Testen überbrücken.

Mit dem Pullup (pud_resistor up) sollte der Pin bei offenen Kontakt auf 1 stehen.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 19:54:20
Jetzt hab ich das zum ersten mal verstanden - danke für die super Erklärung.
Ja stimmt, dann ist er an GPIO 5 (Pin 18) und GND (Pin 6)
und jetzt kommt, ich habe nichts gemacht - aber er hat anscheinend jetzt irgendein Signal bekommen und readings bekommen.
Obwohl die Therme gerade aufgeheizt hat und der Zähler mehrmals runden Gedreht hat, leider nur 1 mal gezählt. - aber immerhin.

Internals:
   DEF        593
   EXCEPT_FD  27
   FUUID      67dcf940-f33f-599c-0f7a-92cca4aa432e22dc
   GPIO_Basedir /sys/class/gpio
   GPIO_Nr    593
   NAME       GPIOGaszaehler
   NR         514
   STATE      on
   TYPE       RPI_GPIO
   WiringPi_gpio /usr/bin/gpio
   eventCount 1
   lasttrg    1742582588.91078
   READINGS:
     2025-03-21 19:43:08   Counter         1
     2025-03-21 19:52:24   Pinlevel        low
     2025-03-21 19:43:08   Toggle          on
     2025-03-21 19:43:08   state           on
   fhem:
     interfaces switch
   hmccu:
Attributes:
   direction  input
   interrupt  falling
   pud_resistor up
   room       Verbrauch
   toggletostate yes
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: RappaSan am 21 März 2025, 19:59:36
Ist ja drollig, bei meinem Pi5 hab ich andere GPIO-Nummern angezeigt bekommen:
gpiochip0: GPIOs 512-543, parent: platform/107d508500.gpio, gpio-brcmstb@107d508500:
 gpio-512 (-                  )
 gpio-513 (2712_BOOT_CS_N      |spi10 CS0          ) out hi ACTIVE LOW
 gpio-514 (2712_BOOT_MISO      )
 gpio-515 (2712_BOOT_MOSI      )
 gpio-516 (2712_BOOT_SCLK      )
 gpio-517 (-                  )
 gpio-518 (-                  )
 gpio-519 (-                  )
 gpio-520 (-                  )
 gpio-521 (-                  )
 gpio-522 (-                  )
 gpio-523 (-                  )
 gpio-524 (-                  )
 gpio-525 (-                  )
 gpio-526 (PCIE_SDA            )
 gpio-527 (PCIE_SCL            )
 gpio-528 (-                  )
 gpio-529 (-                  )
 gpio-530 (-                  )
 gpio-531 (-                  )
 gpio-532 (PWR_GPIO            |pwr_button          ) in  hi ACTIVE LOW
 gpio-533 (2712_G21_FS        )
 gpio-534 (-                  )
 gpio-535 (-                  |sysfs              ) out lo
 gpio-536 (BT_RTS              )
 gpio-537 (BT_CTS              )
 gpio-538 (BT_TXD              )
 gpio-539 (BT_RXD              )
 gpio-540 (WL_ON              |wl_on_reg          ) out hi
 gpio-541 (BT_ON              )
 gpio-542 (WIFI_SDIO_CLK      )
 gpio-543 (WIFI_SDIO_CMD      )

gpiochip1: GPIOs 544-547, parent: platform/107d508500.gpio, gpio-brcmstb@107d508520:
 gpio-544 (WIFI_SDIO_D0        )
 gpio-545 (WIFI_SDIO_D1        )
 gpio-546 (WIFI_SDIO_D2        )
 gpio-547 (WIFI_SDIO_D3        )

gpiochip2: GPIOs 548-564, parent: platform/107d517c00.gpio, gpio-brcmstb@107d517c00:
 gpio-548 (RP1_SDA            )
 gpio-549 (RP1_SCL            )
 gpio-550 (RP1_RUN            |RP1 RUN pin        ) out hi
 gpio-551 (SD_IOVDD_SEL        |vdd-sd-io          ) out hi
 gpio-552 (SD_PWR_ON          |sd_vcc_reg          ) out hi
 gpio-553 (SD_CDET_N          |cd                  ) in  lo ACTIVE LOW
 gpio-554 (SD_FLG_N            )
 gpio-555 (-                  )
 gpio-556 (2712_WAKE          )
 gpio-557 (2712_STAT_LED      |ACT                ) out hi ACTIVE LOW
 gpio-558 (-                  )
 gpio-559 (-                  )
 gpio-560 (PMIC_INT            )
 gpio-561 (UART_TX_FS          )
 gpio-562 (UART_RX_FS          )
 gpio-563 (-                  )
 gpio-564 (-                  )

gpiochip3: GPIOs 565-570, parent: platform/107d517c00.gpio, gpio-brcmstb@107d517c20:
 gpio-565 (HDMI0_SCL          )
 gpio-566 (HDMI0_SDA          )
 gpio-567 (HDMI1_SCL          )
 gpio-568 (HDMI1_SDA          )
 gpio-569 (PMIC_SCL            )
 gpio-570 (PMIC_SDA            )

gpiochip4: GPIOs 571-624, parent: platform/1f000d0000.gpio, pinctrl-rp1:
 gpio-571 (ID_SDA              )
 gpio-572 (ID_SCL              )
 gpio-573 (GPIO2              )
 gpio-574 (GPIO3              )
 gpio-575 (GPIO4              |onewire@0          ) out lo
 gpio-576 (GPIO5              )
 gpio-577 (GPIO6              )
 gpio-578 (GPIO7              |spi0 CS1            ) out hi ACTIVE LOW
 gpio-579 (GPIO8              |spi0 CS0            ) out hi ACTIVE LOW
 gpio-580 (GPIO9              )
 gpio-581 (GPIO10              )
 gpio-582 (GPIO11              )
 gpio-583 (GPIO12              )
 gpio-584 (GPIO13              )
 gpio-585 (GPIO14              )
 gpio-586 (GPIO15              )
 gpio-587 (GPIO16              )
 gpio-588 (GPIO17              )
 gpio-589 (GPIO18              |led                ) out hi
 gpio-590 (GPIO19              )
 gpio-591 (GPIO20              )
 gpio-592 (GPIO21              )
 gpio-593 (GPIO22              )
 gpio-594 (GPIO23              )
 gpio-595 (GPIO24              |dc                  ) out hi
 gpio-596 (GPIO25              |reset              ) out hi ACTIVE LOW
 gpio-597 (GPIO26              )
 gpio-598 (GPIO27              )
 gpio-599 (PCIE_RP1_WAKE      )
 gpio-600 (FAN_TACH            )
 gpio-601 (HOST_SDA            )
 gpio-602 (HOST_SCL            )
 gpio-603 (ETH_RST_N          |phy-reset          ) out hi ACTIVE LOW
 gpio-604 (-                  )
 gpio-605 (CD0_IO0_MICCLK      |cam0_reg            ) out lo
 gpio-606 (CD0_IO0_MICDAT0    )
 gpio-607 (RP1_PCIE_CLKREQ_N  )
 gpio-608 (-                  )
 gpio-609 (CD0_SDA            )
 gpio-610 (CD0_SCL            )
 gpio-611 (CD1_SDA            )
 gpio-612 (CD1_SCL            )
 gpio-613 (USB_VBUS_EN        )
 gpio-614 (USB_OC_N            )
 gpio-615 (RP1_STAT_LED        |PWR                ) out hi ACTIVE LOW
 gpio-616 (FAN_PWM            )
 gpio-617 (CD1_IO0_MICCLK      |cam1_reg            ) out lo
 gpio-618 (2712_WAKE          )
 gpio-619 (CD1_IO1_MICDAT1    )
 gpio-620 (EN_MAX_USB_CUR      )
 gpio-621 (-                  )
 gpio-622 (-                  )
 gpio-623 (-                  )
 gpio-624 (-                  )

Deshalb gpio-595...
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 20:05:59
na das muss mal einer verstehen @RappaSan
.. aber wenn ich jetzt von meinen pi ausgehe müsste ich jetzt die DEF mit 574 machen.
Ohhh man, ich seh den Wald vor lauter Bäume nicht  ::)  :))

.. muss jetzt mal noch mit dem Hund raus. Teste dann später nochmal
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 21 März 2025, 20:08:11
Zitat von: moerte am 21 März 2025, 20:05:59.. aber wenn ich jetzt von meinen pi ausgehe müsste ich jetzt die DEF mit 574 machen.
Wollte ich gerade schreiben...
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 20:26:33
Ich hab es mal so konfiguriert jetzt. Ich schau mal ob sich was getan hat wenn ich wieder zu Hause bin.
Ich gebe Rückmeldung.
Wenn man dann solche Bilder sieht, da kann man dann ja nur durcheinander kommen.


2.jpg
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 22:12:01
Ok, schade - läuft leider auch nicht.
Das mit den GPIO verwirrt mich auch total.

Internals:
   DEF        574
   EXCEPT_FD  27
   FUUID      67dcf940-f33f-599c-0f7a-92cca4aa432e22dc
   GPIO_Basedir /sys/class/gpio
   GPIO_Nr    574
   NAME       GPIOGaszaehler
   NR         511
   STATE      off
   TYPE       RPI_GPIO
   WiringPi_gpio /usr/bin/gpio
   eventCount 2
   READINGS:
     2025-03-21 19:43:08   Counter         1
     2025-03-21 22:09:26   Pinlevel        high
     2025-03-21 20:27:39   state           off
   fhem:
     interfaces switch
Attributes:
   direction  input
   interrupt  falling
   pud_resistor up
   room       Verbrauch
   toggletostate yes
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 21 März 2025, 22:19:40
2025-03-21 19:43:08  Counter        1
2025-03-21 22:09:26  Pinlevel        high
2025-03-21 20:27:39  state          off

sieht aber besser aus -> Pinlevel high

zeige nochmal ein
gpio readall
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 22:49:31
gern ...

3.jpg
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 21 März 2025, 22:53:24
Kannst du es nochmal hochladen, irgendetwas ist schief gelaufen.

Ich kann's nicht öffnen.
404 File Not Found
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 22:56:07
das ist komisch, klar gern. ich sende es auch mal noch als Anhang,

3.jpg
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 21 März 2025, 23:07:56
Die GPIO-Übersetzung stimmt nicht.

Aktuell ist GPIO21 definiert.
Vergleiche beide Bilder.

Im neuen ist GPIO21 auf in(put) und 1(high)

Probiere nochmal die 595 und poste die Anfrage.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 23:14:27
gpio-595 ist aber doch wenn ich richtig liege GPIO26

Internals:
   DEF        595
   EXCEPT_FD  27
   FUUID      67dcf940-f33f-599c-0f7a-92cca4aa432e22dc
   GPIO_Basedir /sys/class/gpio
   GPIO_Nr    595
   NAME       GPIOGaszaehler
   NR         511
   STATE      off
   TYPE       RPI_GPIO
   WiringPi_gpio /usr/bin/gpio
   eventCount 2
   READINGS:
     2025-03-21 19:43:08   Counter         1
     2025-03-21 23:14:09   Pinlevel        low
     2025-03-21 20:27:39   state           off
   fhem:
     interfaces switch
Attributes:
   direction  input
   interrupt  falling
   pud_resistor up
   room       Verbrauch
   toggletostate yes
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 21 März 2025, 23:21:23
Das erst Bild hast du gemacht bevor du das
attr pud_resistor up
gesetzt hast, richtig?

Ich wollte das
gpio readall sehen.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 23:30:00
phuuuu muss ehrlich sagen, das weiß ich jetzt gar nicht mehr wann ich dass attr pud_resistor gesetzt hatte .. war etwas viel heute. mein Kopf raucht  :o


Entschuldige, da hab ich dich jetzt falsch verstanden - sende ich dir
Wir können auch für heute aufhalten, du hast heut schon genug zeit mit mir verbracht  :))  :-[

4.jpg
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 21 März 2025, 23:40:58
Ich mache auch Schluss für heute.

Jetzt ist GPIO25 in.
D.h. die BCM-Nr ist doch die Richtige zum übersetzen.

Dann müsste doch die 593 funktionieren.

Nicht einfach aus der Ferne, vor allem wenn man keinen Raspi5 hat.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 23:44:26
OK - so ganz kann ich dir jetzt nicht folgen  :))  .. aber ich schlaf da mal drüber und denke morgen nochmal genau drüber nach.
Vielen Dank erstmal und hab eine gute Nacht
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 21 März 2025, 23:47:22
Setze auf 593 und schaue morgen nach.

Und für mich noch ein
gpio readall
Bis morgen.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 21 März 2025, 23:51:10
alles klar, hab ich gemacht - und schau morgen, ob was passiert ist  :))

hier zum einschlafen:
5.jpg
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 22 März 2025, 08:00:24
Guten Morgen,

vermutlich hat es nicht funktioniert.

Die Pin Zuordnung stimmt, aber bei 2 von den 3 getesteten Pins wird der Pullup nicht aktiviert...

Ich gehe davon aus, dass der Gassensorkontakt nicht geschlossen ist.
Und, falls nötig, der Kontakt richtig rum angeschlossen ist (Pin und Masse).

Vermutlich hast du die alte WiringPi nicht deinstalliert, was evtl. zu Nebenwirkungen führt.

Meine einzige Idee momentan, ohne nochmal von vorne zu beginnen:

Schließe den Kontakt an GPIO21 -> 574, Physicher Pin 29 an. An Pin 25 ist Masse.
Das ist der Pin, an dem der Pullup funktioniert.

Nachtrag:
Hast du das https://github.com/WiringPi/WiringPi/blob/master/documentation/deutsch/functions.md#initialisierung (https://github.com/WiringPi/WiringPi/blob/master/documentation/deutsch/functions.md#initialisierung)
befolgt?
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 22 März 2025, 09:19:54
Zitat von: frober am 22 März 2025, 08:00:24Guten Morgen,

vermutlich hat es nicht funktioniert.

Die Pin Zuordnung stimmt, aber bei 2 von den 3 getesteten Pins wird der Pullup nicht aktiviert...

Ich gehe davon aus, dass der Gassensorkontakt nicht geschlossen ist.
Und, falls nötig, der Kontakt richtig rum angeschlossen ist (Pin und Masse).

Vermutlich hast du die alte WiringPi nicht deinstalliert, was evtl. zu Nebenwirkungen führt.

Meine einzige Idee momentan, ohne nochmal von vorne zu beginnen:

Schließe den Kontakt an GPIO21 -> 574, Physicher Pin 29 an. An Pin 25 ist Masse.
Das ist der Pin, an dem der Pullup funktioniert.

Nachtrag:
Hast du das https://github.com/WiringPi/WiringPi/blob/master/documentation/deutsch/functions.md#initialisierung (https://github.com/WiringPi/WiringPi/blob/master/documentation/deutsch/functions.md#initialisierung)
befolgt?

Guten Morgen Fober,

Bevor ich das jetzt änder - 574 ist doch aber GPIO5.
Wenn ich es jetzt richtig verstanden habe meinst du sicher dann die DEF mit 590?
590 = GPIO 21 PIN 29  ...korrekt?

in meinen Beitrag #10 hatte ich danach gefragt:
Zitatbei wiringPiSetup V3 weitermachen?
Da war und bin ich mir nicht sicher
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: RalfRog am 22 März 2025, 11:43:44
Hi
Bin unterwegs und kann nicht nachschauen. Bist du c't Leser?
Letzten November gab es eine Sonderausgabe. Da war was zum Raspberry mit mit Hinweisen zu PI5 / Bookworm und WiringPI.

Keine Ahnung ob das Erkenntnisse bringt.

Gruß Ralf

Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 22 März 2025, 12:08:29
ZitatBevor ich das jetzt änder - 574 ist doch aber GPIO5.

Nein, ich meinte das so wie ich es geschrieben habe.

574 = BCM 5 = GPIO21 = Pin29
siehe
gpio readall
Vor der Änderung würde ich die Anleitung (Initialisierung) befolgen und schauen ob sich in der aktuellen Konfig was ändert.
Evtl. geht GPIO5 (aktuelle Konfig) auf 1

Um es zu verstehen, schaue dir zu jeder Definition das gpio readall an und achte auf die Änderungen. Teilweise bleibt der alte Status noch stehen, wichtig ist was sich verändert hat/dazu gekommen ist.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: RappaSan am 22 März 2025, 13:15:06
Warum zum Teufel deckt sich das nicht mit den ganzen Abbildungen, die es vom Pinout im Internet gibt wie z.B.
https://www.hackatronic.com/raspberry-pi-5-pinout-specifications-pricing-a-complete-guide/
oder
https://vilros.com/pages/raspberry-pi-5-pinout
??? Ich verstehe diese Diskrepanzen nicht.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 22 März 2025, 13:39:04
Warum es bei Raspi5 eigene Nummern gibt weiß ich nicht.

Aber mit der Initialisierung vom wiringPi wird geschaut welche Möglichkeit sich am besten bzgl. Rechte etc  abfragen lässt.
Also BCM, GPIO usw.

Ist in der Anleitung erläutert.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 22 März 2025, 17:31:39
Zitat von: frober am 22 März 2025, 12:08:29
ZitatBevor ich das jetzt änder - 574 ist doch aber GPIO5.

Nein, ich meinte das so wie ich es geschrieben habe.

574 = BCM 5 = GPIO21 = Pin29
siehe
gpio readall
Vor der Änderung würde ich die Anleitung (Initialisierung) befolgen und schauen ob sich in der aktuellen Konfig was ändert.
Evtl. geht GPIO5 (aktuelle Konfig) auf 1

Um es zu verstehen, schaue dir zu jeder Definition das gpio readall an und achte auf die Änderungen. Teilweise bleibt der alte Status noch stehen, wichtig ist was sich verändert hat/dazu gekommen ist.


Vielen Dank nochmal.. ich werde mich erstmal tiefer in das Thema reinlesen.
Nur vorab gefragt, welche Art der Pin-Nummerierung wäre denn am besten - um zukünftig nicht viele Diskrepanzen bei Fragen bezüglich GPIO zu haben?
WPI_PIN_BCM ... BCM-Nummerierung
WPI_PIN_WPI ... WiringPi-Nummerierung
WPI_PIN_PHYS ... physikalische Nummerierung

LG an alle und noch ein schönes Wochenende  8)
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 22 März 2025, 22:27:08
Prinzipiell sollte es egal sein. Du musst du es dir merken, bzw. bei Fragen entsprechend kommunizieren.

Aktuell hast du BCM.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 23 März 2025, 07:04:27
Zitat von: frober am 22 März 2025, 22:27:08Aktuell hast du BCM.

Ich glaube da lag ich falsch.
Es geht vermutlich um die Definition, also was im Device angegeben wird.

Das wäre aktuell GPIO, bzw. die WiringPi-Nummerierung

Es wäre wahrscheinlich sinnvoller BCM oder die ph. Nr. anzugeben.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 23 März 2025, 10:10:57
Guten morgen..
Ich wollte gerade mit der Initialisierung beginnen. Da scheitert es schon beim wiringPiSetup V3.
int wiringPiSetupPinType(enum WPIPinType pinType)-bash: syntax error near unexpected token `('

Und bei
wiringPiSetupPinType(WPI_PIN_BCM);-bash: syntax error near unexpected token `WPI_PIN_BCM'

Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 23 März 2025, 11:18:07
Vergiss es, ich habe das falsch interpretiert.
Die Initialisierung muss im Modul 51_RPI_GPIO.pm erfolgen.

Da das Modul nicht auf dem aktuellen Stand ist (2019), kommen die Probleme wahrscheinlich daher.

Das Modul verwendet noch die Abfragen der  V2.x von wiringPi, in  wie weit das aktuell noch funktioniert?

Ein Downgrade der Version macht vermutlich wg. Raspi5 etc. keinen Sinn.

Keine Ahnung ob es noch eine andere Möglichkeit gibt die GPIOs abzufragen.

Sorry, ich bin mit meinem Latein am Ende...

Hast du umgesteckt und GPIO21 probiert?
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 23 März 2025, 11:29:27
Alles klar.. Dann werd ich mir was anderes einfallen lassen. Und von den GPIO weg gehen.

Danke dir
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: TomLee am 23 März 2025, 11:37:36
Eine Alternative zu der Einbindung über GPIO, über einen Arduino, würd ich dann nochmal, wie vor ein paar Tagen schon, in den Raum werfen. Die würde jetzt, nach 2 1/2 Tagen schon am laufen sein, ohne Probleme.

Zitat von: Beta-User am 19 März 2025, 20:18:04Vermutlich liegt dem auch das GPIO-Thema (ähnlich?) zugrunde. Generell würde ich empfehlen, von GPIO-Nutzung abzusehen, irgendwann kommt der Zeitpunkt, was anderes wie einen PI zu verwenden, die dringende Empfehlung wäre, das entsprechend vorzubereiten

Ich red aber auch nur schlau, helfen könnt könnt ich auf Anhieb nicht. Müsste mich auch einlesen, anfangen würd ich vom Gefühl her mit Arducounter und KeyValueProtocol.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 23 März 2025, 11:43:36
Dann doch eher ein ESP mit Tasmota, ESPEasy oder was es sonst noch gibt...

Anbindung über MQTT
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: TomLee am 23 März 2025, 11:53:14
Letzte Woche hast dich noch über ein zusätzliches WLan-Device beschwert das sich in Jahren vlt. nur einmal anmeldet  ;D  :P

Wozu nen ESP, wenn offensichtlich die örtlichen Voraussetzungen gegeben sind eine serielle Anbindung zu verwenden?
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 23 März 2025, 12:10:33
Gibt es fertige FW für Arduinos die das können?

Ich denke nur an den TE...

Beim ESP gibt es viele "einfache" Tutorials für Gas-/Stromzähler usw.

Off-Topic:
Mein "Beschwerde" bzgl. WLAN war nur auf meine private Infrastruktur bezogen. ;D
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: TomLee am 23 März 2025, 12:22:48
ZitatGibt es fertige FW für Arduinos die das können?

Wie gesagt ich hab eigentlich keine Ahnung, denke aber ein Reedkontakt ist was ganz banales. Ein zwei Widerstände noch (die eh wsl. schon verbaut sind) und fertig.
(Du bist in der Beziehung der Spezialist)

Den Sketch flasht FHEM:

https://wiki.fhem.de/wiki/ArduCounter#Prerequisites

Kann sein das ich mir das zu einfach vorstelle.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 23 März 2025, 12:32:53
Für uns definitiv machbar...

Letztendlich kommt es auf @moerte an.
Wenn er Erfahrung mit Arduino hat, ja.

Die ESP sind einfach über USB zu flaschen, über die Weboberfläche zu konfigurieren und das MQTT_Device legt autocreate an.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 23 März 2025, 14:01:21
Ich habe dieses Teil gefunden: Link (https://footprintzero.de/collections/all)
Und dazu eine denke gute Anleitung dazu hier: Link (https://www.juergenstechnikwelt.de/smarthome-2/smarter-gaszaehler-in-finaler-version-in-fhem-eingebunden/)

Läuft halt über WLAN.. da ich ja auf Zigbee umgestiegen bin und in nächster Zeit dutzende WLAN Geräte mit Tasmota aus dem Heimnetz verschwinden, könnte ich mit einen zusätzlichen WLAN Gerät im Heimnetz mich abfinden.

Was meint ihr zu diesen Produkt?
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: Beta-User am 23 März 2025, 14:13:39
Zitat von: moerte am 23 März 2025, 14:01:21Ich habe dieses Teil gefunden: Link (https://footprintzero.de/collections/all)
Und dazu eine denke gute Anleitung dazu hier: Link (https://www.juergenstechnikwelt.de/smarthome-2/smarter-gaszaehler-in-finaler-version-in-fhem-eingebunden/)

Läuft halt über WLAN.. da ich ja auf Zigbee umgestiegen bin und in nächster Zeit dutzende WLAN Geräte mit Tasmota aus dem Heimnetz verschwinden, könnte ich mit einen zusätzlichen WLAN Gerät im Heimnetz mich abfinden.

Was meint ihr zu diesen Produkt?
Ironie ein:
Ist ganz bestimmt einfacher als die uralt-und-sicher-Lösung arducounter auf Arduino...

Oder AI-on-the-edge...
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 23 März 2025, 14:36:21
@moerte du hast doch einen Lesekopf...

Du musst anstelle das Raspis nur eine andere Hardware verwenden.

Hast du dir https://wiki.fhem.de/wiki/ArduCounter (https://wiki.fhem.de/wiki/ArduCounter) angeschaut?

Alternativ
https://www.frank-schuetz.de/index.php/fhem/1-gaszaehler-mit-espeasy-und-fhem (https://www.frank-schuetz.de/index.php/fhem/1-gaszaehler-mit-espeasy-und-fhem)
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 23 März 2025, 15:10:47
Das klingt natürlich interessant, und aufjeden fall Preisgünstige.
Vlt hat ja jemand so einen Arduino rumliegen,  der am besten schon geflasht ist .. weil wenn es dann darum geht, vlt noch löten, flashen etc - da bin ich wieder raus. Besitze nicht mal einen Lötkolben  :))
Müsste ja ein ESP32 dann sein mit Tasmota?
Mag wieder für einige doof klingen, aber da wäre mir schon wieder ein fertiges Produkt lieber.
Also wenn jemand von euch sowas rumliegen hat - kauf ich gern ab.  :))
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: Beta-User am 23 März 2025, 15:25:27
Also vor meinem geistigen Auge verbindest du die zwei (oder drei) PINs von deinem Reed-Kontakt mit einem simplen Arduino Nano.

Sowas kann man "fertig gelötet" (Stiftleiste dran) auf einem beliebigen Marktplatz für ein paar Euro kaufen, man muss nur darauf achten, dass "by-id" funktioniert, also KEIN CH340 als USB-seriell-Wandler dran ist (FTDI...).

Das flash-Programm für Nanos zu installieren, ist alles andere als ein Hexenwerk, und ein passendes USB-Kabel hast du sicher auch noch rumliegen.

Nix löten, keine Raketentechnik, simples plug&play...
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 23 März 2025, 15:59:35
Ok, also wichtig ist das kein CH340 Chip .. das liest man viel.
Woran man das erkennt weiß ich nicht. Wäre dann sowas in der richtig das passende? Link (https://amzn.eu/d/agniS93)

Wollt jetzt auch nicht in diesem Thread vom egtl Thema abschweifen .. sollte es stören dann entschuldige ich mich dafür.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 23 März 2025, 16:09:40
Der ist vermutlich auch mit CH340


Suche nach FTDI oder FT232RL

Hab den Link gelöscht...war zum löten.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 23 März 2025, 16:13:58
Zitat von: frober am 23 März 2025, 16:09:40Der ist vermutlich auch mit CH340

Mit FTDI (https://www.amazon.de/AZDelivery-ATmega328-Gratis-Arduino-Kompatibel/dp/B079TZZMR4/ref=mp_s_a_1_25_sspa?crid=16R0LP33R8WHV&dib=eyJ2IjoiMSJ9.uRZhNQXti_Zpu8Pa0uGIRAR2xKQQBFrr2tPJxZn8ahBQI4Jff7oG84UeDcgm40C37TWmGl_37wAerAMRcEj1ynohe15ZUS6sdwdtEHKH6PJ-oQoXjWP0hGuQSkRHk6nnxzoxlsRHleQh_t-182FuelpdW6TTPJpex9NeU7H8NK9pVnYkztPykOmULjY1NA6ye1Vvg_lJIWDkgCXmzAjxuw.gTdiXp8LoX8F2qQ1gWat5Ihq5eiNIa_IZwDDSKGz7lc&dib_tag=se&keywords=arduino%2Bnano%2Bftdi&qid=1742742350&sprefix=nano%2Bftdi%2Caps%2C125&sr=8-25-spons&xpid=lfC0Kv1wpcOi6&sp_csd=d2lkZ2V0TmFtZT1zcF9waG9uZV9zZWFyY2hfbXRm&psc=1&th=1)
auch kein originaler FTDI, da AZ-Delivery auch mit CH340 anbieten, sollte es vermutlich passen.

Findest du vermutlich unter AZ-Delivery auch einzeln.
Da müsste ich löten können  :))
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 23 März 2025, 16:20:59
Zitat von: moerte am 23 März 2025, 16:13:58Da müsste ich löten können  :))

Hab's zu spät gemerkt, sorry. Post ist korrigiert.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: Beta-User am 23 März 2025, 16:31:42
Zitat von: moerte am 23 März 2025, 15:59:35Ok, also wichtig ist das kein CH340 Chip .. das liest man viel.
Woran man das erkennt weiß ich nicht. Wäre dann sowas in der richtig das passende? Link (https://amzn.eu/d/agniS93)

Wollt jetzt auch nicht in diesem Thread vom egtl Thema abschweifen .. sollte es stören dann entschuldige ich mich dafür.

Im anderen Thread wäre vermutlich besser gewesen.

Das (teure) Original ist das hier: https://www.amazon.de/Arduino-A000005-Nano/dp/B0097AU5OU/ref=mp_s_a_1_14?crid=32E9U0GZBQ07S&dib=eyJ2IjoiMSJ9.NhgalLQb5TOrtJuijWBxT0W9s5nPmxYJ_Mr9pbB28e3nRGh-JId5Bymw18Vqym0awex7YMushDIixdDlsbP40GXTQCm3gETFfyiaDFqwpGYPbKyYzSybpJ0afWiau7ej1QSz9JnQxV68mC91pFmDyEQkYZ4C-hzy6tq6WjB9vgNj-Vzt9f51PfDhdCzEksJLZ2kC1yLAHlHUZ6By52S2Uw._RU-ggUcRSMZHg7oq2pTUlWMRPIG5zxnn_mdI2fkALU&dib_tag=se&keywords=nano+arduino&qid=1742743751&sprefix=nano+ar%2Caps%2C163&sr=8-14
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 23 März 2025, 17:04:38
Vielen Dank..  an euch alle. Und vorallem auch an Fober der so viel Geduld mit mir hatte.
Dann beenden wir das Thema hier und ich besorg mir einen Arduino.
Mal schauen wann wir uns dann wieder lesen  :))

Schönen Sonntag abend euch allen.
Und nochmals danke !  8)
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: TomLee am 23 März 2025, 17:26:40
Sry, muss nochmal. Kam mir erst jetzt. Kann mir vorstellen das man mit einem Tür-/Fensterkontakt (zigbee) so einen Gaszähler auch ausgelesen bekommt. Da würde sich das basteln wsl. darauf beschränken die Platine aus dem Gehäuse zu befreien, um näher an den Magneten zu kommen. Nur so ne Idee.

Edit: kurzes googeln zeigt das die Idee grundsätzlich nicht so abwegig.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 23 März 2025, 17:42:03
Zitat von: TomLee am 23 März 2025, 17:26:40Sry, muss nochmal. Kam mir erst jetzt. Kann mir vorstellen das man mit einem Tür-/Fensterkontakt (zigbee) so einen Gaszähler auch ausgelesen bekommt. Da würde sich das basteln wsl. darauf beschränken die Platine aus dem Gehäuse zu befreien, um näher an den Magneten zu kommen. Nur so ne Idee.

Edit: kurzes googeln zeigt das die Idee grundsätzlich nicht so abwegig.

Hab ich tatsächlich auch gelesen. Hab sogar noch einen neuen Fensterkontakt da liegen (TS0203) .. was ich gelesen hatte war glaub ein anderes Modell. Mich hatte dann der Betrieb mit Batterie etwas gestört, da ja zumindest in Kalten Monaten der Zähler schon oft um die eigene Achse dreht  :))
Aber grundsätzlich, könnte ich darüber auch nachdenken. Die Umsetzung mittels anzeige ist ja dann was anderes. Müsste ja auch mit dem Counter Modul dann umzusetzen sein.

Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: TomLee am 23 März 2025, 17:49:56
ZitatMich hatte dann der Betrieb mit Batterie etwas gestört, da ja zumindest in Kalten Monaten der Zähler schon oft um die eigene Achse dreht  :))

Man könnte ihn ja direkt an 3Volt betreiben... achso, nee, Du nicht  ::)

Würds mehr unter Bastellösung einordnen (obwohl ich mir vorstellen kann das es gut funktionieren könnte) und auch die Nano-Variante wählen.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 23 März 2025, 19:02:30
Ja ich denke auch das wird Murks..  Hab meinen Fensterkontakt eben mal auseinander genommen - das Modell geht nicht, zumindest große Platine - die erreicht den Magnet nicht, da sie in die Vorrichtung nicht reinpasst.
Nun muss ich auch nochmal anfangen..
mein Schawger sagte eben, dass er einen ESP8266. Der hätte dann WLAN und mit Tasmota.. könnt ich aber erst nächstes Wochenende gratis bekommen. Sollte damit auch gehen oder??
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: Beta-User am 23 März 2025, 19:11:43
Geht genauso - Impulse zählen ist keine Raketenwissenschaft...
(zumindest nicht, wenn man nicht versucht, ein überkomplexes Werkzeug wie einen Pi zu verwenden...)
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 23 März 2025, 19:15:40
Zitat von: Beta-User am 23 März 2025, 19:11:43Geht genauso - Impulse zählen ist keine Raketenwissenschaft...
(zumindest nicht, wenn man nicht versucht, ein überkomplexes Werkzeug wie einen Pi zu verwenden...)

Gut.. super.
Danke.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: Stelaku am 24 März 2025, 08:33:29
Hallo moerte

vieleicht hast Du ja noch Lust das ganze ohne Wiring pi zu versuchen. Ich selber habe das bei mir auf einen PI4 über pinctrl gelöst.
Wiring pi ist zwar früher schön gewesen aber heute hab ich da auch nur Probleme mit gehabt. Und letztendlich ist Wiring pi nur von nöten um bei
Eingängen einen definierten Zustand zu haben. Sprich pull up oder pull down Wiederstand.
Ich hab hier mal einen link gefunden wo das pinout schön zu sehen ist (https://blog.berrybase.de/raspberry-pi-gpio-dein-leitfaden-zu-pins/)
in Deinen vom Anfang des thread gesprochen Eingang 24 würde das script so aussehen mit
sudo nano /opt/fhem/pullupGpio.sh
#!/bin/bash

sudo pinctrl set 24 pu

das script musst Du jetzt bei jeden neustart des Pi´s einmal aufrufen bevor Fhem startet.

Ich mache das über eine system file

das sieht bei mir so aus

[Unit]
Description=Some description
Before=fhem.service

[Service]
Type=oneshot

ExecStart=/usr/bin/bash /opt/fhem/pullupGpio.sh
StandardOutput=journal


[Install]
WantedBy=multi-user.target

Jetzt brauchstr Du die debug nummer Deines gpio´s um Ihn in Fhem richtig auszuwerten.

Dafür gibst Du in der shell folgendes ein
cat /sys/kernel/debug/gpio | grep GPIO24

da kommt bei mir wie gesagt ein PI 4 mit aktuellen Bookworm das hier heraus
gpio-536 (GPIO24              |sysfs               ) in  hi IRQ ACTIVE LOW
jetzt nimmst Du die 536 anstatt der 24 in die Fhem def
Es kann sein das bei Dir eine andere debug nummer angezeigt wird.
jetzt nur noch die richtigen attr.
ich zeige Dir mal eine def meines gpio´s in Fhem
defmod GPIO17 RPI_GPIO 536
attr GPIO17 active_low yes
attr GPIO17 alias Taster_Stube_links
attr GPIO17 debounce_in_ms 0
attr GPIO17 direction input
attr GPIO17 event-on-change-reading state
attr GPIO17 group GPIO Eingänge
attr GPIO17 interrupt both
attr GPIO17 room Eingänge
attr GPIO17 sortby 04



viele Grüsse

Stephan
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: frober am 24 März 2025, 08:46:23
Um einen Zähler (Reedkontakt o.ä.) auszulesen, benötigst du einen definierten Zustand (Pullup).

Man könnte diesen aber auch extern anbringen (Widerstand vom Pin nach VCC)...


Nachtrag:
Wenn ich das richtig verstehe benötigt man auch noch piolib (https://github.com/raspberrypi/utils/tree/master/piolib) für den Raspi5


Nachtrag2:
https://kofler.info/gpio-aerger-auf-dem-raspberry-pi-5/ (https://kofler.info/gpio-aerger-auf-dem-raspberry-pi-5/)
Wenn ich das lese stellt sich mir die Frage wie oft noch was geändert wird.
Daher die Empfehlung, Zähler etc. mit externer HW auszulesen.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: RappaSan am 24 März 2025, 09:21:41
Ich meine gelesen zu haben, daß man die gpio-pins auch schon in der config.txt initialisieren kann.
So ähnlich: gpio=24=op,pu
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: Beta-User am 24 März 2025, 09:29:42
Zitat von: frober am 24 März 2025, 08:46:23Daher die Empfehlung, Zähler etc. mit externer HW auszulesen.
Oder allgemeiner: Trennung von Steuerungsfunktionen und eigentlicher Hardware.

Da hier auch noch keine Reaktion erfolgt war
Zitat von: Beta-User am 23 März 2025, 14:13:39Oder AI-on-the-edge...
Das bezieht sich auf die direkte Auswertung von Fotos vom Zähler, siehe z.B. https://forum.fhem.de/index.php?msg=1097628.

Kosten: Ca. 10 Euro (für ESP32 mit Cam (China-Preis), SD-Karte und Netzteil)...
Löten muss man dafür nicht, aber den ESP flashen und das ganze "Hinbasteln" und einrichten.
Titel: Aw: FHEM/51_RPI_GPIO.pm
Beitrag von: moerte am 24 März 2025, 12:46:23
Zitat von: Stelaku am 24 März 2025, 08:33:29Hallo moerte

vieleicht hast Du ja noch Lust das ganze ohne Wiring pi zu versuchen.  .....


Vielen Dank Stephan - auch für deine Mühe.
Ich hab mich einfach jetzt dazu entschieden wie auch Beta-User bereits ganz am Anfang empfohlen hat - von der GPIO-Nutzung abzusehen.
Trotzdem vielen Dank - wird für den  ein oder anderen sicher trotzdem interessant sein.

Zitat von: Beta-User am 24 März 2025, 09:29:42Da hier auch noch keine Reaktion erfolgt war
Zitat von: Beta-User am 23 März 2025, 14:13:39Oder AI-on-the-edge...
Das bezieht sich auf die direkte Auswertung von Fotos vom Zähler, siehe z.B. https://forum.fhem.de/index.php?msg=1097628.

Kosten: Ca. 10 Euro (für ESP32 mit Cam (China-Preis), SD-Karte und Netzteil)...
Löten muss man dafür nicht, aber den ESP flashen und das ganze "Hinbasteln" und einrichten.

Ich hab mich dazu auch gleich belesen. Aber für den Gaszähler kam es für mich nicht in Betracht -aus optischen Gründen.
Diese Variante werde ich aber für einen Wasserzähler nutzen (nicht heute/morgen) --> erstmal sind andere Baustellen abzuarbeiten^^