Hallo zusammen,
ich habe eine Problem mit der Wetterstation. Seit dem die Batterie auf "LOW" gewechselt hat, habe ich im Abfragezyklus folgende Einträge im Log:
2017.06.06 12:40:44 1: Debug_MS: mh(md): HM-WDS100-C6-O
2017.06.06 12:40:44 1: Debug_MS: mh(devH): HASH(0x442f258)
2017.06.06 12:40:44 1: Debug_MS: t: 32907
2017.06.06 12:40:44 1: PERL WARNING: Odd number of elements in anonymous hash at /opt/fhem//FHEM/10_CUL_HM.pm line 1437.
2017.06.06 12:40:44 1: stacktrace:
2017.06.06 12:40:44 1: main::__ANON__ called by /opt/fhem//FHEM/10_CUL_HM.pm (1437)
2017.06.06 12:40:44 1: main::CUL_HM_Parse called by fhem.pl (3608)
2017.06.06 12:40:44 1: main::Dispatch called by /opt/fhem//FHEM/00_HMLAN.pm (779)
2017.06.06 12:40:44 1: main::HMLAN_Parse called by /opt/fhem//FHEM/00_HMLAN.pm (604)
2017.06.06 12:40:44 1: main::HMLAN_Read called by /opt/fhem//FHEM/98_apptime.pm (109)
2017.06.06 12:40:44 1: main::apptime_getTiming called by /opt/fhem//FHEM/98_apptime.pm (76)
2017.06.06 12:40:44 1: main::CallFn called by fhem.pl (686)
Der CODE dazu:
1431 elsif($mh{md} =~ m/^(KS550|KS888|HM-WDS100-C6-O)/) { ########################
1432 if($mh{mTp} eq "70") {
1433 my ($t,$h,$r,$w,$wd,$s,$b) = map{hex($_)} unpack 'A4A2A4A4(A2)*',$mh{p};
1434 Log3 $mh{md},1,"Debug_MS: mh(md): $mh{md}";
1435 Log3 $mh{md},1,"Debug_MS: mh(devH): $mh{devH}";
1436 Log3 $mh{md},1,"Debug_MS: t: $t";
1437 push @evtEt,[$mh{devH},1,"battery:". (($t & 0x8000)?"low" :"ok" )] if {$mh{md} eq "HM-WDS100-C6-O-2"}; #has no battery
Jemand eine Idee wie ich das fixen kann?
Danke für Eure Hilfe und viele Grüße,
Marcel
Hallo zusammen,
das Problem besteht bei mir nach wie vor. Es war ein Irrglaube das es am Battery Low liegt. Inzwischen habe ich neue Batterien drin und es hagelt ordentlich Meldungen im Log.
Wie kann ich hier unterstützen um diese zu eliminieren?
Ich habe die Ursprungsversion des Wettersensors (HM-WDS100-C6-O) nicht die Version 2. Seit der Implementierung des Batteriestatus für V2 habe ich die Probleme. Ein Auskommentieren der Zeile 1434 sorgt für Ruhe. Dennoch wird mit jedem Update die Verändung verworfen, was ja auch Sinn macht um bei allen anderen HM Geräten auf dem neusten Stand zu bleiben. So ist es allerding echt nervig....
Zeile:
push @evtEt,[$mh{devH},1,"battery:". (($t & 0x8000)?"low" :"ok" )] if {$mh{md} eq "HM-WDS100-C6-O-2"}; #has no battery
Wie wertet Perl denn den Zeile aus? Eigentlich dürfte er diese ja gar nicht aufrufen da HM-WDS100-C6-O ne HM-WDS100-C6-O-2 oder?
Logauszug:
2017.06.13 07:22:08 1: PERL WARNING: Odd number of elements in anonymous hash at /opt/fhem//FHEM/10_CUL_HM.pm line 1434.
2017.06.13 07:22:08 1: stacktrace:
2017.06.13 07:22:08 1: main::__ANON__ called by /opt/fhem//FHEM/10_CUL_HM.pm (1434)
2017.06.13 07:22:08 1: main::CUL_HM_Parse called by fhem.pl (3608)
2017.06.13 07:22:08 1: main::Dispatch called by /opt/fhem//FHEM/00_HMLAN.pm (779)
2017.06.13 07:22:08 1: main::HMLAN_Parse called by /opt/fhem//FHEM/00_HMLAN.pm (604)
2017.06.13 07:22:08 1: main::HMLAN_Read called by fhem.pl (3412)
2017.06.13 07:22:08 1: main::CallFn called by fhem.pl (686)
2017.06.13 07:24:25 1: PERL WARNING: Odd number of elements in anonymous hash at /opt/fhem//FHEM/10_CUL_HM.pm line 1434.
2017.06.13 07:24:25 1: stacktrace:
2017.06.13 07:24:25 1: main::__ANON__ called by /opt/fhem//FHEM/10_CUL_HM.pm (1434)
2017.06.13 07:24:25 1: main::CUL_HM_Parse called by fhem.pl (3608)
2017.06.13 07:24:25 1: main::Dispatch called by /opt/fhem//FHEM/00_HMLAN.pm (779)
2017.06.13 07:24:25 1: main::HMLAN_Parse called by /opt/fhem//FHEM/00_HMLAN.pm (604)
2017.06.13 07:24:25 1: main::HMLAN_Read called by fhem.pl (3412)
2017.06.13 07:24:25 1: main::CallFn called by fhem.pl (686)
2017.06.13 07:26:27 1: PERL WARNING: Odd number of elements in anonymous hash at /opt/fhem//FHEM/10_CUL_HM.pm line 1434.
2017.06.13 07:26:27 1: stacktrace:
2017.06.13 07:26:27 1: main::__ANON__ called by /opt/fhem//FHEM/10_CUL_HM.pm (1434)
2017.06.13 07:26:27 1: main::CUL_HM_Parse called by fhem.pl (3608)
2017.06.13 07:26:27 1: main::Dispatch called by /opt/fhem//FHEM/00_HMLAN.pm (779)
2017.06.13 07:26:27 1: main::HMLAN_Parse called by /opt/fhem//FHEM/00_HMLAN.pm (604)
2017.06.13 07:26:27 1: main::HMLAN_Read called by fhem.pl (3412)
2017.06.13 07:26:27 1: main::CallFn called by fhem.pl (686)
2017.06.13 07:29:19 1: PERL WARNING: Odd number of elements in anonymous hash at /opt/fhem//FHEM/10_CUL_HM.pm line 1434.
2017.06.13 07:29:19 1: stacktrace:
2017.06.13 07:29:19 1: main::__ANON__ called by /opt/fhem//FHEM/10_CUL_HM.pm (1434)
2017.06.13 07:29:19 1: main::CUL_HM_Parse called by fhem.pl (3608)
2017.06.13 07:29:19 1: main::Dispatch called by /opt/fhem//FHEM/00_HMLAN.pm (779)
2017.06.13 07:29:19 1: main::HMLAN_Parse called by /opt/fhem//FHEM/00_HMLAN.pm (604)
2017.06.13 07:29:19 1: main::HMLAN_Read called by fhem.pl (3412)
2017.06.13 07:29:19 1: main::CallFn called by fhem.pl (686)
2017.06.13 07:31:57 1: PERL WARNING: Odd number of elements in anonymous hash at /opt/fhem//FHEM/10_CUL_HM.pm line 1434.
2017.06.13 07:31:57 1: stacktrace:
2017.06.13 07:31:57 1: main::__ANON__ called by /opt/fhem//FHEM/10_CUL_HM.pm (1434)
2017.06.13 07:31:57 1: main::CUL_HM_Parse called by fhem.pl (3608)
2017.06.13 07:31:57 1: main::Dispatch called by /opt/fhem//FHEM/00_HMLAN.pm (779)
2017.06.13 07:31:57 1: main::HMLAN_Parse called by /opt/fhem//FHEM/00_HMLAN.pm (604)
2017.06.13 07:31:57 1: main::HMLAN_Read called by fhem.pl (3412)
2017.06.13 07:31:57 1: main::CallFn called by fhem.pl (686)
2017.06.13 07:34:20 1: PERL WARNING: Odd number of elements in anonymous hash at /opt/fhem//FHEM/10_CUL_HM.pm line 1434.
2017.06.13 07:34:20 1: stacktrace:
2017.06.13 07:34:20 1: main::__ANON__ called by /opt/fhem//FHEM/10_CUL_HM.pm (1434)
2017.06.13 07:34:20 1: main::CUL_HM_Parse called by fhem.pl (3608)
2017.06.13 07:34:20 1: main::Dispatch called by /opt/fhem//FHEM/00_HMLAN.pm (779)
2017.06.13 07:34:20 1: main::HMLAN_Parse called by /opt/fhem//FHEM/00_HMLAN.pm (604)
2017.06.13 07:34:20 1: main::HMLAN_Read called by fhem.pl (3412)
2017.06.13 07:34:20 1: main::CallFn called by fhem.pl (686)
2017.06.13 07:36:28 1: PERL WARNING: Odd number of elements in anonymous hash at /opt/fhem//FHEM/10_CUL_HM.pm line 1434.
2017.06.13 07:36:28 1: stacktrace:
2017.06.13 07:36:28 1: main::__ANON__ called by /opt/fhem//FHEM/10_CUL_HM.pm (1434)
2017.06.13 07:36:28 1: main::CUL_HM_Parse called by fhem.pl (3608)
2017.06.13 07:36:28 1: main::Dispatch called by /opt/fhem//FHEM/00_HMLAN.pm (779)
2017.06.13 07:36:28 1: main::HMLAN_Parse called by /opt/fhem//FHEM/00_HMLAN.pm (604)
2017.06.13 07:36:28 1: main::HMLAN_Read called by fhem.pl (3412)
2017.06.13 07:36:28 1: main::CallFn called by fhem.pl (686)
push @evtEt,[$mh{devH},1,"battery:". (($t & 0x8000)?"low" :"ok" )] if ($mh{md} eq "HM-WDS100-C6-O-2"); #has no battery
sollte es tun.
Hallo Martin,
na das ist ja mein Problem. So wie Du es mir geschickt hast steht es ja in 10_CULHM drin und es funktioniert nicht. Siehe vorheriger Post.
Gruß Marcel
Du hast sicherlich die unterschiedlichen Klammern hinter dem if bemerkt ?
Oh nein, das habe ich nicht gesehen - danke für den Tipp!
Habe es jetzt eingespielt und teste!
Hallo Martin,
das funktioniert soweit. Ich wäre froh wenn du die Änderung generell mit aufnehmen könntest, dann bleibt es auch nach einem Update erhalten.
Danke und viele Grüße,
Marcel
Reminder:
In Version:
10_CUL_HM.pm 14626 2017-07-02 13:19:36Z martinp876
musste ich wieder folgendes ändern!
Zeile: 1453
#push @evtEt,[$mh{devH},1,"battery:". (($t & 0x8000)?"low" :"ok" )] if {$mh{md} eq "HM-WDS100-C6-O-2"}; #has no battery
push @evtEt,[$mh{devH},1,"battery:". (($t & 0x8000)?"low" :"ok" )] if ($mh{md} eq "HM-WDS100-C6-O-2"); #has no battery
Hallo MArtin,
ein weiterer Versuch...
In der aktuellen Version
10_CUL_HM.pm 14744 2017-07-18 18:35:30Z martinp876
besteht immer noch das o.g. Problem mit den geschweiften Klammern im if...
Muss das so? Es sorgt bei meiner Wetterstation für Fehler!
Gruß Marcel
sorry - jetzt war es aber höchste Zeit
Danke Martin,
jetzt sieht es besser aus.
Gruß aus Bochum,
Marcel