NEWS
Test Adapter rpi2 2.x
-
@garfonso wie schon geschrieben hab ich ein Testsystem (PI4 mit frischem Bookworm)
Außer iobroker ist aktuell nur der Adapter installiert.
Wenn ich helfen kann, gerne Anweisungen was ich machen soll. -
tl;dr: Mal Version 2.3.1 ausprobieren (auf NPM, sollte spätestens morgen im latest sein)
Ok, hab jetzt was gefunden. Ihr habt version 1.0.17 der Bibliothek, mein Entwicklungssystem hatte 1.0.16, irgendwie hatte mein Testsystem wohl einen Mix aus 16 und 17... und mit denen hat es funktioniert. Hab jetzt (nachdem ich das Testsystem wieder grundsätzlich ans laufen bringen musste, war irgendwie aus den WLAN gefallen) nochmal testen können und mit 17 lädt es tatsächlich nicht.
Das konnte ich reparieren und jetzt wird auch mindestens Version 17 verlangt... ich hoffe, dass es nun bei allen, wo die Bibliothek erfolgreich installiert wird, auch funktioniert und bleibt.Falls das nochmal passiert, werde ich die Bibliotheksversion fix lassen. Aber mal sehen.
-
@garfonso mit der neuen Version startet der Adapter
hier das Log
2025-01-06 18:38:25.991 - debug: rpi2.0 (4379) ---> REGEXP: /SwapFree:\s+(\d+)/m 2025-01-06 18:38:25.992 - debug: rpi2.0 (4379) GROUPS: 2 2025-01-06 18:38:25.992 - debug: rpi2.0 (4379) ---> POST: (rpi.swap_total - $1)/1024 2025-01-06 18:38:25.992 - debug: rpi2.0 (4379) PARSING: temperature 2025-01-06 18:38:25.992 - debug: rpi2.0 (4379) PARSING: soc_temp 2025-01-06 18:38:25.993 - debug: rpi2.0 (4379) ---> cat /sys/devices/virtual/thermal/thermal_zone0/temp 2025-01-06 18:38:25.998 - debug: rpi2.0 (4379) ------------- 47712 2025-01-06 18:38:25.999 - debug: rpi2.0 (4379) ---> REGEXP: /(.*)/ 2025-01-06 18:38:25.999 - debug: rpi2.0 (4379) GROUPS: 2 2025-01-06 18:38:25.999 - debug: rpi2.0 (4379) ---> POST: $1/1000 2025-01-06 18:38:26.000 - debug: rpi2.0 (4379) PARSING: uptime 2025-01-06 18:38:26.000 - debug: rpi2.0 (4379) PARSING: uptime 2025-01-06 18:38:26.000 - debug: rpi2.0 (4379) ---> cat /proc/uptime 2025-01-06 18:38:26.005 - debug: rpi2.0 (4379) ------------- 5437.94 21345.37 2025-01-06 18:38:26.006 - debug: rpi2.0 (4379) ---> REGEXP: /(^\S+)/ 2025-01-06 18:38:26.006 - debug: rpi2.0 (4379) GROUPS: 2 2025-01-06 18:38:26.006 - debug: rpi2.0 (4379) ---> POST: 2025-01-06 18:38:26.007 - debug: rpi2.0 (4379) PARSING: wlan 2025-01-06 18:38:26.007 - debug: rpi2.0 (4379) PARSING: wifi_received 2025-01-06 18:38:26.007 - debug: rpi2.0 (4379) ---> cat /sys/class/net/wl*/statistics/rx_bytes 2025-01-06 18:38:26.013 - debug: rpi2.0 (4379) ------------- 4155424 2025-01-06 18:38:26.013 - debug: rpi2.0 (4379) ---> REGEXP: /(.*)/ 2025-01-06 18:38:26.013 - debug: rpi2.0 (4379) GROUPS: 2 2025-01-06 18:38:26.013 - debug: rpi2.0 (4379) ---> POST: $1*-1 2025-01-06 18:38:26.014 - debug: rpi2.0 (4379) PARSING: wifi_send 2025-01-06 18:38:26.014 - debug: rpi2.0 (4379) ---> cat /sys/class/net/wl*/statistics/tx_bytes 2025-01-06 18:38:26.019 - debug: rpi2.0 (4379) ------------- 9130894 2025-01-06 18:38:26.020 - debug: rpi2.0 (4379) ---> REGEXP: /(.*)/ 2025-01-06 18:38:26.020 - debug: rpi2.0 (4379) GROUPS: 2 2025-01-06 18:38:26.020 - debug: rpi2.0 (4379) ---> POST: 2025-01-06 18:38:26.020 - debug: rpi2.0 (4379) CURRENT = cpu true 2025-01-06 18:38:26.021 - debug: rpi2.0 (4379) -1 2025-01-06 18:38:26.104 - debug: rpi2.0 (4379) ---> POST: $1/1000 for cpu_frequency in [object Object] 2025-01-06 18:38:26.105 - debug: rpi2.0 (4379) VALUE: 1800000 POST: $1/1000 2025-01-06 18:38:26.106 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.cpu.cpu_frequency VALUE = 1800 2025-01-06 18:38:26.159 - debug: rpi2.0 (4379) ---> POST: for load1,load5,load15 in [object Object] 2025-01-06 18:38:26.160 - debug: rpi2.0 (4379) MATCHING: 0 2025-01-06 18:38:26.160 - debug: rpi2.0 (4379) NAME: load1 VALUE: 0 2025-01-06 18:38:26.160 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.cpu.load1 VALUE = 0 2025-01-06 18:38:26.210 - debug: rpi2.0 (4379) MATCHING: 0.02 2025-01-06 18:38:26.211 - debug: rpi2.0 (4379) NAME: load5 VALUE: 0.02 2025-01-06 18:38:26.211 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.cpu.load5 VALUE = 0.02 2025-01-06 18:38:26.264 - debug: rpi2.0 (4379) MATCHING: 0 2025-01-06 18:38:26.265 - debug: rpi2.0 (4379) NAME: load15 VALUE: 0 2025-01-06 18:38:26.265 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.cpu.load15 VALUE = 0 2025-01-06 18:38:26.314 - debug: rpi2.0 (4379) ---> POST: for scaling_governor in [object Object] 2025-01-06 18:38:26.314 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.cpu.scaling_governor VALUE = ondemand 2025-01-06 18:38:26.367 - debug: rpi2.0 (4379) CURRENT = raspberry false 2025-01-06 18:38:26.367 - debug: rpi2.0 (4379) -1 2025-01-06 18:38:26.368 - debug: rpi2.0 (4379) raspberry disabled -> clean up. 2025-01-06 18:38:26.368 - debug: rpi2.0 (4379) CURRENT = memory true 2025-01-06 18:38:26.368 - debug: rpi2.0 (4379) -1 2025-01-06 18:38:26.377 - debug: rpi2.0 (4379) ---> POST: $1/1024 for memory_total in [object Object] 2025-01-06 18:38:26.377 - debug: rpi2.0 (4379) VALUE: 928824 POST: $1/1024 2025-01-06 18:38:26.378 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.memory.memory_total VALUE = 907.05 2025-01-06 18:38:26.430 - debug: rpi2.0 (4379) ---> POST: $1/1024 for memory_free in [object Object] 2025-01-06 18:38:26.430 - debug: rpi2.0 (4379) VALUE: 368908 POST: $1/1024 2025-01-06 18:38:26.431 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.memory.memory_free VALUE = 360.26 2025-01-06 18:38:26.482 - debug: rpi2.0 (4379) ---> POST: $1/1024 for memory_available in [object Object] 2025-01-06 18:38:26.482 - debug: rpi2.0 (4379) VALUE: 599548 POST: $1/1024 2025-01-06 18:38:26.483 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.memory.memory_available VALUE = 585.5 2025-01-06 18:38:26.535 - debug: rpi2.0 (4379) CURRENT = network true 2025-01-06 18:38:26.535 - debug: rpi2.0 (4379) -1 2025-01-06 18:38:26.543 - debug: rpi2.0 (4379) ---> POST: $1*-1 for net_received in [object Object] 2025-01-06 18:38:26.543 - debug: rpi2.0 (4379) VALUE: 0 POST: $1*-1 2025-01-06 18:38:26.544 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.network.net_received VALUE = 0 2025-01-06 18:38:26.595 - debug: rpi2.0 (4379) ---> POST: for net_send in [object Object] 2025-01-06 18:38:26.595 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.network.net_send VALUE = 0 2025-01-06 18:38:26.646 - debug: rpi2.0 (4379) CURRENT = sdcard true 2025-01-06 18:38:26.646 - debug: rpi2.0 (4379) -1 2025-01-06 18:38:26.652 - debug: rpi2.0 (4379) ---> POST: $1/1024 for sdcard_root_total in [object Object] 2025-01-06 18:38:26.653 - debug: rpi2.0 (4379) VALUE: 30120332 POST: $1/1024 2025-01-06 18:38:26.653 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.sdcard.sdcard_root_total VALUE = 29414.39 2025-01-06 18:38:26.702 - debug: rpi2.0 (4379) ---> POST: $1/1024 for sdcard_boot_total in [object Object] 2025-01-06 18:38:26.703 - debug: rpi2.0 (4379) VALUE: 522230 POST: $1/1024 2025-01-06 18:38:26.703 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.sdcard.sdcard_boot_total VALUE = 509.99 2025-01-06 18:38:26.754 - debug: rpi2.0 (4379) ---> POST: $1/1024 for sdcard_root_used in [object Object] 2025-01-06 18:38:26.755 - debug: rpi2.0 (4379) VALUE: 3510516 POST: $1/1024 2025-01-06 18:38:26.755 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.sdcard.sdcard_root_used VALUE = 3428.24 2025-01-06 18:38:26.806 - debug: rpi2.0 (4379) ---> POST: $1/1024 for sdcard_boot_used in [object Object] 2025-01-06 18:38:26.806 - debug: rpi2.0 (4379) VALUE: 80128 POST: $1/1024 2025-01-06 18:38:26.807 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.sdcard.sdcard_boot_used VALUE = 78.25 2025-01-06 18:38:26.858 - debug: rpi2.0 (4379) CURRENT = swap true 2025-01-06 18:38:26.858 - debug: rpi2.0 (4379) -1 2025-01-06 18:38:26.865 - debug: rpi2.0 (4379) ---> POST: $1/1024 for swap_total in [object Object] 2025-01-06 18:38:26.865 - debug: rpi2.0 (4379) VALUE: 524284 POST: $1/1024 2025-01-06 18:38:26.866 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.swap.swap_total VALUE = 512 2025-01-06 18:38:26.914 - debug: rpi2.0 (4379) ---> POST: (rpi.swap_total - $1)/1024 for swap_used in [object Object] 2025-01-06 18:38:26.914 - debug: rpi2.0 (4379) VALUE: 524284 POST: (rpi.swap_total - $1)/1024 2025-01-06 18:38:26.915 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.swap.swap_used VALUE = 0 2025-01-06 18:38:26.966 - debug: rpi2.0 (4379) CURRENT = temperature true 2025-01-06 18:38:26.966 - debug: rpi2.0 (4379) -1 2025-01-06 18:38:26.972 - debug: rpi2.0 (4379) ---> POST: $1/1000 for soc_temp in [object Object] 2025-01-06 18:38:26.973 - debug: rpi2.0 (4379) VALUE: 47712 POST: $1/1000 2025-01-06 18:38:26.973 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.temperature.soc_temp VALUE = 47.71 2025-01-06 18:38:27.023 - debug: rpi2.0 (4379) CURRENT = uptime true 2025-01-06 18:38:27.023 - debug: rpi2.0 (4379) -1 2025-01-06 18:38:27.030 - debug: rpi2.0 (4379) ---> POST: for uptime in [object Object] 2025-01-06 18:38:27.031 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.uptime.uptime VALUE = 5437.94 2025-01-06 18:38:27.082 - debug: rpi2.0 (4379) CURRENT = wlan true 2025-01-06 18:38:27.083 - debug: rpi2.0 (4379) -1 2025-01-06 18:38:27.089 - debug: rpi2.0 (4379) ---> POST: $1*-1 for wifi_received in [object Object] 2025-01-06 18:38:27.089 - debug: rpi2.0 (4379) VALUE: 4155424 POST: $1*-1 2025-01-06 18:38:27.090 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.wlan.wifi_received VALUE = -4155424 2025-01-06 18:38:27.138 - debug: rpi2.0 (4379) ---> POST: for wifi_send in [object Object] 2025-01-06 18:38:27.138 - debug: rpi2.0 (4379) SETSTATE FOR rpi2.0.wlan.wifi_send VALUE = 9130894 2025-01-06 18:38:27.195 - debug: rpi2.0 (4379) Creating gpio.17.isInput 2025-01-06 18:38:27.241 - debug: rpi2.0 (4379) class Default extends classes_1.Device { } 2025-01-06 18:38:27.249 - debug: rpi2.0 (4379) CPU Info: Raspberry Pi 4 Model B Rev 1.5 2025-01-06 18:38:27.250 - debug: rpi2.0 (4379) STDERR: 2025-01-06 18:38:27.251 - debug: rpi2.0 (4379) Got 4 from Raspberry Pi 4 Model B Rev 1.5. 2025-01-06 18:38:27.251 - debug: rpi2.0 (4379) Got chip: class Default extends classes_1.Device { } 2025-01-06 18:38:27.251 - debug: rpi2.0 (4379) GPIO chip undefined initialized 2025-01-06 18:38:27.252 - debug: rpi2.0 (4379) Port 17 direction: in 2025-01-06 18:38:27.254 - debug: rpi2.0 (4379) Setting state for port 17 to false 2025-01-06 18:38:27.306 - debug: rpi2.0 (4379) Adding event listener for port 17
ist die Meldung "GPIO chip undefined initialized" ok?
-
@stenmic said in Test Adapter rpi2 2.x:
ist die Meldung "GPIO chip undefined initialized" ok?
Ja, die ist ein Überbleibsel von Versuchen mit verschiedenen Bibliotheken. Muss ich mal wegräumen.
-
Hi @garfonso
Frohes Neues Jahr erst mal.
Hat was gedauert da ich mir erst zwei Testsysteme aufgebaut habe. Eins mit dem Pi4 unter Buster und V1.3.2 des RPiO und ein zweites mit dem PI5 mit Bookworm und V2.3.1 getestet. Ergebnis ist wie folgt:
Beim Anhalten des neuen Adapters bleiben die Relais im geschaltet Zustand EIN. Nach dem Neustart bleiben die Relais AUS , unabhängig was ich als Startwert in die Config eintrage. Das wäre schön wenn du das noch anpassen könntest das der Ausgang nach dem Neustart dem Wert in der Config entspricht. (Startwert "0" = EIN)
Über das Verhalten beim Anhalten des Adapters habe ich noch einmal nachgedacht ob die Ausgänge nicht doch innerhalb des V1.3.2 weggeschaltet werden. Ich halte ja innerhalb des IOB den Adapter an. Das sollte das Betriebssystem eigentlich nicht interessieren.
-
Um alle Klarheiten zu beseitigen- der neue Adapter benötigt nur die vorinstallierte libgpiod, sonst nichts? Beim Neuaufsetzen des Systems wichtig.
-
@garfonso Hallo, danke schon mal für das schnelle debugen (2.3.1). 'Zwei Themen noch:
- Ich habe einen Eingang auf True mit einem Magnetschalter. Beim Rebooten des RPI Adapters setzt er mir diesen kurz bestätigt auf "false" und ich erhalte falsche Pushover
PS: Bei mir hängt ein PullDown Widerstand im Schaltkreis, da ich ja sicherstellen will das mir keiner das Kabel durchschneiden kann und es fälschlicherweise zum "true-geschlossen" signal kommt. Die Entprellung auf 1000ms führt zur kompletten Fehlfunktion bei mir und das Signal bleibt false.
- Warum ist ein aktiver Ausgang jetzt nicht mehr "true", sondern "false"? Das erscheint mir unlogisch.
Willst du das wirklich so belassen?
-
@laser sagte in Test Adapter rpi2 2.x:
Um alle Klarheiten zu beseitigen- der neue Adapter benötigt nur die vorinstallierte libgpiod, sonst nichts? Beim Neuaufsetzen des Systems wichtig.
Moin, das frage ich mich auch gerade. Bei meinem Raspi 3 funktioniert auch nichts mehr
-
@elektroman said in Test Adapter rpi2 2.x:
@laser sagte in Test Adapter rpi2 2.x:
Moin, das frage ich mich auch gerade. Bei meinem Raspi 3 funktioniert auch nichts mehr
Welcher Adapterversion?
Welche js-controller Version?
Welches Betriebssystem /-version?
Welche Fehlermeldung? -
@mcm1957
2.2.1
7.0.6
Dietpi 9.9 neuste Debian
Keine Reaktion bei State Änderung . State wird rot -
@laser said in Test Adapter rpi2 2.x:
orinstallierte libgpiod
libgpiod ist tatsächlich normalerweise vorinstalliert. libgiod-dev braucht der Adapter auch noch. Der Adapter, bzw. die Bibliothek, die verwendet wird, benötigt die passenden header Dateien (die im dev = development Paket sind) um den binary blob für node.js zu kompilieren.
-
@smallfeuer
Hä?Hab keine Ahnung, was du da sagst / willst. schulterzuck Ist das das gleiche von dem @Moppedman spricht?
Könnt ihr euch da einigen und mir sagen, was wann wie soll? Ich denke mir jedesmal einen Knoten in den Kopf.Sonst vielleicht nochmal so ähnlich aufmalen, wie Moppedman, was genau am GPIO konfiguriert ist, was passiert und was du erwartest.
-
-
Welche Libaries installiert sein müssen und welche nicht muss @Garfonso dir/uns sagen. Ich selber habe auf dem Pi5 mit Bookworm folgendes drauf
Package: gpiod in Version: 1.6.3-1+b3
Package: libgpiod2 in Version: 1.6.3-1+b3
Package: libgpiod-dev in Version: 1.6.3-1+b3@Garfonso : Wenn da was fehlt oder ein anderes Paket NICHT drauf sein dann bitte Rückmledung.
-
Was zeigt gpioinfo unter SSH für deinen Eingang des Magnetschalters bzw. deine Ausgänge: active-high oder active-low.
Je nachdem wie du Konfiguriert hast, verhält sich das System invertierent bei TRUE bzw. FALSE. Das sieht für mich danach aus und läge dann nicht an der Programmierung von @Garfonso
Schau mal hier https://www.raspberrypi.com/documentation/computers/config_txt.html#gpio-control
Das Verhalten beim Start ist für mich ein eigenständiger Punkt. Hier könnte es schon so sein, je nachdem wie das Timingverhalten der Programmsectionen zueinander abgestimmt sind (oder nicht) das du kurz diesen Toggle Verhalten hast.
-
Moin,
habe jetzt einiges probiert alles leider ohne richtigen Erfolg. Ich kann mit "RPI Easy" (espeasy für den Raspi) die Ausgänge auch über die GUI schalten. Nur über die API funktioniert es nicht zuverlässig. Über den Adapter überhaupt nicht -
@elektroman welche Version läuft bei dir? die offizielle 2.2.1?
die lief bei mir auch nicht. 2.3.1 über NPM funktioniert einwandfrei -
@stenmic said in Test Adapter rpi2 2.x:
2.3.1 über NPM funktioniert einwandfrei
Direkte Installation von npm ist an sich nicht notwendig, 2.3.1 ist seit 14 Tagen im LATEST / BETA Repository verfügbar
-
@mcm1957 egal wie, 2.3.1 ist nicht im stable.
2.2.1 ist bugy und sollte eigentlich nicht stable sein. -
a) Zum Zeitpunkt wo 2.2.1 ins stable kam gab es offenbar (keine) ernsthaften Fehlermeldungen.
b) Bei ca 4000 Installation (= fast 50% aller Installationen) kann die Version zwar Fehler aufweisen aber generell grob buggy würde ich sie nicht bezeichnen. Das hilft natürlich jenen die von einem existierenden Fehler betroffen sind nicht weiter.
d) Wenn der Dev entscheidet, dass 2.3.1 besser / ok ist, wird sie ins Stable aufgenommen
d) Und das einzige was ich geschrieben habe ist dass die Version 2.3.1 nicht direkt von npm installiert werden muss da sie auch im LATEST verfügbar ist. Und das steltls duz ja hoffentlichnicht in Frage