Hallo,
im Betreff steht eigentlich meine ganze Frage bereits. Mir ist aufgefallen, dass es für dieses Device zwar das Reading R-lowBatLimitFS aber eben kein battery ok gibt. Außerdem vermisse ich den Actiondetector und das obligatorische alive. Ist das bei diesem Gerät "normal"?
Darauf gekommen bin ich, weil es (heißt bei mir Anzeige01) ab und zu mal nicht umschaltet, das sieht dann so aus:
2016.01.26 07:31:19 3: CUL_HM set Anzeige01 on
2016.01.26 07:31:19 3: CUL_HM Anzeige01 repeat, level 00 instead of C8
2016.01.26 07:31:19 3: CUL_HM set Anzeige01 on
Daraufhin habe ich mir das Device mal näher angeschaut. Ich habe mir diese seltenen Ausfälle bisher damit erklärt, dass man das Umschalten direkt daneben mit einer HM-Fernbedienung auslöst, allerdings nicht direkt, das macht fhem. Vielleicht stören sich die Funksignale. Oder ist hier etwas faul:
Internals:
DEF 2737F3
HMLAN1_MSGCNT 44
HMLAN1_RAWMSG E2737F3,0000,0BF54B12,FF,FFB1,2B80022737F32588B1010100004B
HMLAN1_RSSI -79
HMLAN1_TIME 2016-01-26 20:22:39
HMLAN2_MSGCNT 41
HMLAN2_RAWMSG R7F63475F,0001,2E6019AC,FF,FFBA,2B80022737F32588B1010100004B
HMLAN2_RSSI -70
HMLAN2_TIME 2016-01-26 20:22:39
IODev HMLAN2
LASTInputDev HMLAN2
MSGCNT 85
NAME Anzeige01
NR 2092
NTFY_ORDER 50-Anzeige01
STATE off
TYPE CUL_HM
lastMsg No:2B - t:02 s:2737F3 d:2588B1 010100004B
protLastRcv 2016-01-26 20:22:39
protSnd 45 last_at:2016-01-26 20:22:38
protState CMDs_done
rssi_HMLAN1 avg:-49.74 min:-82 max:-46 lst:-72 cnt:24
rssi_HMLAN2 avg:-75.5 min:-76 max:-75 lst:-75 cnt:2
rssi_at_HMLAN1 avg:-61.86 min:-82 max:-49 lst:-79 cnt:44
rssi_at_HMLAN2 avg:-62.6 min:-70 max:-57 lst:-70 cnt:41
Readings:
2016-01-26 20:22:39 CommandAccepted yes
2016-01-26 20:14:40 D-firmware 1.1
2016-01-26 20:14:40 D-serialNr LEQ0215133
2016-01-26 20:14:42 PairedTo 0x2588B1
2014-11-02 15:29:37 R-intKeyVisib invisib
2014-11-02 15:29:37 R-ledMode off
2014-11-02 15:29:37 R-lowBatLimitFS 2.4 V
2014-11-02 15:29:37 R-pairCentral 0x2588B1
2016-01-26 20:14:42 RegL_00: 02:01 05:00 0A:25 0B:77 0C:B1 12:18 00:00
2016-01-26 20:22:39 deviceMsg off (to vccu)
2016-01-26 20:22:39 level 0
2016-01-26 20:22:39 pct 0
2016-01-26 20:22:39 recentStateType ack
2015-06-22 20:45:10 sabotageAttack ErrIoAttack cnt:1
2015-06-22 20:55:45 sabotageAttackId ErrIoId_F10000 cnt:6
2016-01-26 20:22:39 state off
2016-01-26 20:22:39 timedOn off
Helper:
HM_CMDNR 43
cSnd 112588B12737F30201C80000,112588B12737F30201000000
dlvlCmd ++A0112588B12737F30201000000
mId 0078
peerIDsRaw ,00000000
rxType 2
Io:
newChn +2737F3,00,02,00
nextSend 1453836159.0882
rxt 0
vccu vccu
p:
2737F3
00
02
00
Mrssi:
mNo 2B
Io:
HMLAN1 -79
HMLAN2 -68
Prt:
bErr 0
sProc 0
Rspwait:
Q:
qReqConf
qReqStat
Role:
chn 1
dev 1
prs 1
Rssi:
Hmlan1:
avg -49.75
cnt 24
lst -72
max -46
min -82
Hmlan2:
avg -75.5
cnt 2
lst -75
max -75
min -76
At_hmlan1:
avg -61.8636363636364
cnt 44
lst -79
max -49
min -82
At_hmlan2:
avg -62.609756097561
cnt 41
lst -70
max -57
min -70
Shadowreg:
Attributes:
IODev HMLAN2
IOgrp vccu
autoReadReg 4_reqStatus
event-on-change-reading .*
expert 2_full
firmware 1.1
model HM-Dis-TD-T
msgRepeat 1
peerIDs 00000000,
room Flur
serialNr LEQ0215133
subType switch
webCmd statusRequest:toggle:on:off
Nö, hab ich auch schon danach gesucht. :)
VG
Frank
Das Attribut actCycle kannst du doch auch selber mit einer plausiblen Zeit setzen.
Klar aber damit hast du immer noch kein reading vom batt. Level.
Habe ich auch nicht behauptet.
Das Tei taucht ja nicht einmal im ActionDetektor auf und wird somit auch nicht ausgewertet.
Auch wenn actCycl definiert ist?
Dann bekommt man wenigstens ein alive zurück aber keinen level.
Zitat von: topfi am 26 Januar 2016, 21:04:11
im Betreff steht eigentlich meine ganze Frage bereits. Mir ist aufgefallen, dass es für dieses Device zwar das Reading R-lowBatLimitFS aber eben kein battery ok gibt.
Oh, richtig, ist mir bisher noch nicht aufgefallen...
Glücklicherweise ist die Abhilfe relativ einfach:
bash-3.2$ svn diff 10_CUL_HM.pm
Index: 10_CUL_HM.pm
===================================================================
--- 10_CUL_HM.pm (revision 10639)
+++ 10_CUL_HM.pm (working copy)
@@ -1992,7 +1992,7 @@
push @evtEt,[$mh{devH},1,"sabotageError:".(($err&0x04) ? "on":"off")];
push @evtEt,[$mh{devH},1,"battery:".(($err&0x08)?"critical":($err&0x80?"low":"ok"))];
}
- elsif ($mh{md} =~ m /HM-LC-SW.-BA-PCB/){
+ elsif ($mh{md} =~ m /HM-LC-SW.-BA-PCB/ || $mh{md} eq 'HM-Dis-TD-T'){
push @evtEt,[$mh{devH},1,"battery:" . (($err&0x80) ? "low" : "ok" )];
}
}
Hab's auch kurz mit einem Labor-Netzteil getestet, funktioniert.
Gruß Marcel
Ich hab iMo nur das Tablet und kann damit schlecht in 1400 Zeilen Code von meiner utils sehen, da ich dort auch die batt level sowie alive auswerte aber der batt level von der retro Anzeige ist dort definitiv nicht vorhanden, dass der actiondetektor das teil auswertet habe ich auch eben erst gesehen, lag aber am alias.
VG
Frank
Dank an MarcelK, sollte Martin mitbekommen.
Oops, das nenne ich mal Resonanz. Danke für Eure Diskussion. Jetzt bin ich im Bilde.
Zitat von: franky08 am 26 Januar 2016, 23:48:16
Ich hab iMo nur das Tablet und kann damit schlecht in 1400 Zeilen Code von meiner utils sehen, da ich dort auch die batt level sowie alive auswerte aber der batt level von der retro Anzeige ist dort definitiv nicht vorhanden, dass der actiondetektor das teil auswertet habe ich auch eben erst gesehen, lag aber am alias.
Also per Default wird die Anzeige vom ActionDetector nicht ausgewertet. Ich weiß nicht ob sie überhaupt zyklisch Informationen schickt, zumindest gibt's kein Setting dafür. Und da sie hier den Füllstand vom Briefkasten anzeigt gibt's praktisch keine 24 Stunden in denen sie nicht eh angesprochen wird ;)
Gruß Marcel
beim actiondetector gibt es das attr actAutoTry.
wenn das auf 1_on gesetzt wird, versucht der actiondetector ein sich nicht meldendes device zu kontaktieren, bevor es auf dead gesetzt wird. somit kann man auch bei nicht zyklischen sendenden devices das attr actCycle sinnvoll nutzen.
Zitat von: frank am 27 Januar 2016, 10:41:19
beim actiondetector gibt es das attr actAutoTry.
wenn das auf 1_on gesetzt wird, versucht der actiondetector ein sich nicht meldendes device zu kontaktieren, bevor es auf dead gesetzt wird. somit kann man auch bei nicht zyklischen sendenden devices das attr actCycle sinnvoll nutzen.
Ah, das Feature kannte ich noch nicht, danke. Für mich war noch die Frage ob das Device sich selbst meldet wenn die Batterie unter die konfigurierte Spannung fällt, aber mit autoTry könnte man ja selbst wenn's das nicht tut einmal am Tag fragen ob alles noch okay ist.
Gruß Marcel
Patch wurde übernommen und sollte jetzt per Update erhältlich sein.