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

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

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