Can't use an undefined value as a symbol... at/51_RPI_GPIO.pm line 418.

Begonnen von Andi.Riese, 15 Oktober 2024, 17:59:02

Vorheriges Thema - Nächstes Thema

Andi.Riese

Hallo,
der Fehler wurde ja schon früher diskutiert. Aber was ist jetzt die Lösung?

Zitat2024.10.15 17:08:46 0: Server shutdown
Can't use an undefined value as a symbol reference at ./FHEM/51_RPI_GPIO.pm line 418.

sfancy

Ich habe meinen Raspi auf Bookworm aktualisiert. In Fhem funktioniert soweit auch alles. Es gibt seitdem allerdings vom Modul 51_RPI_GPIO etliche Logeinträge:

2025.04.23 11:37:56 1: Heizungssperre GetFn: readout of Pinvalue fail
2025.04.23 11:37:56 1: Can't open file: Heizungssperre, value
2025.04.23 11:37:56 5: Heizungssperre, in fileaccess: value
2025.04.23 11:37:56 5: wird an setextensions gesendet: Heizungssperre ?
2025.04.23 11:37:56 5: wird an setextensions gesendet: Heizungssperre ?
2025.04.23 11:37:53 1: Heizungssperre GetFn: readout of Pinvalue fail
2025.04.23 11:37:53 1: Can't open file: Heizungssperre, value
2025.04.23 11:37:53 5: Heizungssperre, in fileaccess: value
2025.04.23 11:37:53 5: wird an setextensions gesendet: Heizungssperre ?
2025.04.23 11:37:53 5: wird an setextensions gesendet: Heizungssperre ?
2025.04.23 11:37:53 5: wird an setextensions gesendet: Heizungssperre ?
2025.04.23 11:37:37 1: Heizungssperre GetFn: readout of Pinvalue fail
2025.04.23 11:37:37 1: Can't open file: Heizungssperre, value
2025.04.23 11:33:15 1: PERL WARNING: Use of uninitialized value $zustand in concatenation (.) or string at ./FHEM/51_RPI_GPIO.pm line 198.
2025.04.23 11:33:15 1: Heizungssperre GetFn: readout of Pinvalue fail
2025.04.23 11:33:15 1: Can't open file: Heizungssperre, value
2025.04.23 08:02:27 1: Can't open file: Heizungssperre, value
2025.04.23 05:29:23 1: Can't open file: Heizungssperre, value
2025.04.22 21:44:45 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/33_readingsGroup.pm line 1450.
2025.04.22 19:58:08 1: PERL WARNING: Use of uninitialized value within @_ in list assignment at ./FHEM/10_CUL_HM.pm line 5152.
2025.04.22 19:58:08 1: PERL WARNING: Use of uninitialized value in hash element at ./FHEM/98_HMinfo.pm line 324.
2025.04.22 19:48:08 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/98_HMinfo.pm line 431.
2025.04.22 19:48:08 1: PERL WARNING: Use of uninitialized value $d in hash element at fhem.pl line 4779.
2025.04.22 19:38:11 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/33_readingsGroup.pm line 543.
2025.04.22 19:38:10 0: Server started with 126 defined entities (fhem.pl:29809/2025-03-30 perl:5.036000 os:linux user:fhem pid:653)
2025.04.22 19:38:10 0: Featurelevel: 6.4
2025.04.22 19:38:10 1: usb create end
2025.04.22 19:38:10 1: usb create starting

Ich vermute die neuere Perl-Version ist daran "schuld".
Hier noch die Moduldefinition:

define Heizungssperre RPI_GPIO 5
attr Heizungssperre devStateIcon Sperren.*:control_standby@red:off Freigeben.*:control_standby@green:on
attr Heizungssperre devStateStyle style="text-align:left"
attr Heizungssperre direction output
attr Heizungssperre eventMap on:Sperren off:Freigeben
attr Heizungssperre group Heizung
attr Heizungssperre room Heizung
attr Heizungssperre sortby 12
#   DEF        5
#   FUUID      5cb91a22-f33f-e118-2915-4d975b543ca7d3a2
#   GPIO_Basedir /sys/class/gpio
#   GPIO_Nr    5
#   NAME       Heizungssperre
#   NR         58
#   STATE      Sperren
#   TYPE       RPI_GPIO
#   WiringPi_gpio
#   eventCount 2
#   Helper:
#     DBLOG:
#       state:
#         LogDBclimate:
#           TIME       1745388147.09575
#           VALUE      on
#   READINGS:
#     2025-04-23 11:41:22   Pinlevel        0
#     2025-04-23 08:02:27   state           on
#   fhem:
#     interfaces switch
#
setstate Heizungssperre Sperren
setstate Heizungssperre 2025-04-23 11:41:22 Pinlevel 0
setstate Heizungssperre 2025-04-23 08:02:27 state on

JoWiemann

Jörg Wiemann

RPi 4 B mit 4 GByte bookworm, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM; zigbee2mqtt

ioBroker als Datenlieferant für z.B. Anker, Samsung

sfancy

Hallo,

danke für den Tipp. Der für den Anwender interessante Hinweis ist wohl hier.

Anders als dort beschrieben gilt die neue dreistellig GPIO-Debugnummer für alle Raspberry Pi ab Bookworm.

Ich habe in meinem Fall also:
define Heizungssperre RPI_GPIO 5geändert nach:
define Heizungssperre RPI_GPIO 517