hiho,
schalte ich meine hommatic lämpchen per pct, funzt das zwar, aber es gibt pro schaltvorgang folgende warnings:2019.01.19 10:15:47 1: logfile wurde gelöscht
2019.01.19 10:16:15 1: PERL WARNING: Argument "set_37" isn't numeric in numeric eq (==) at (eval 37363) line 1.
2019.01.19 10:16:15 1: stacktrace:
2019.01.19 10:16:15 1: main::__ANON__ called by (eval 37363) (1)
2019.01.19 10:16:15 1: (eval) called by fhem.pl (4556)
2019.01.19 10:16:15 1: main::evalStateFormat called by fhem.pl (4657)
2019.01.19 10:16:15 1: main::readingsEndUpdate called by fhem.pl (4847)
2019.01.19 10:16:15 1: main::readingsSingleUpdate called by ./FHEM/10_CUL_HM.pm (9085)
2019.01.19 10:16:15 1: main::CUL_HM_UpdtReadSingle called by ./FHEM/10_CUL_HM.pm (4872)
2019.01.19 10:16:15 1: main::CUL_HM_Set called by fhem.pl (3676)
2019.01.19 10:16:15 1: main::CallFn called by fhem.pl (1878)
2019.01.19 10:16:15 1: main::DoSet called by fhem.pl (1910)
2019.01.19 10:16:15 1: main::CommandSet called by fhem.pl (1228)
2019.01.19 10:16:15 1: main::AnalyzeCommand called by fhem.pl (1074)
2019.01.19 10:16:15 1: main::AnalyzeCommandChain called by ./FHEM/01_FHEMWEB.pm (2608)
2019.01.19 10:16:15 1: main::FW_fC called by ./FHEM/01_FHEMWEB.pm (883)
2019.01.19 10:16:15 1: main::FW_answerCall called by ./FHEM/01_FHEMWEB.pm (554)
2019.01.19 10:16:15 1: main::FW_Read called by fhem.pl (3681)
2019.01.19 10:16:15 1: main::CallFn called by fhem.pl (737)
2019.01.19 10:16:15 1: PERL WARNING: Argument "set_37" isn't numeric in numeric eq (==) at (eval 37365) line 1.
2019.01.19 10:16:15 1: stacktrace:
2019.01.19 10:16:15 1: main::__ANON__ called by (eval 37365) (1)
2019.01.19 10:16:15 1: (eval) called by fhem.pl (4556)
2019.01.19 10:16:15 1: main::evalStateFormat called by fhem.pl (4657)
2019.01.19 10:16:15 1: main::readingsEndUpdate called by fhem.pl (4847)
2019.01.19 10:16:15 1: main::readingsSingleUpdate called by ./FHEM/10_CUL_HM.pm (9085)
2019.01.19 10:16:15 1: main::CUL_HM_UpdtReadSingle called by ./FHEM/10_CUL_HM.pm (6346)
2019.01.19 10:16:15 1: main::CUL_HM_Set called by fhem.pl (3676)
2019.01.19 10:16:15 1: main::CallFn called by fhem.pl (1878)
2019.01.19 10:16:15 1: main::DoSet called by fhem.pl (1910)
2019.01.19 10:16:15 1: main::CommandSet called by fhem.pl (1228)
2019.01.19 10:16:15 1: main::AnalyzeCommand called by fhem.pl (1074)
2019.01.19 10:16:15 1: main::AnalyzeCommandChain called by ./FHEM/01_FHEMWEB.pm (2608)
2019.01.19 10:16:15 1: main::FW_fC called by ./FHEM/01_FHEMWEB.pm (883)
2019.01.19 10:16:15 1: main::FW_answerCall called by ./FHEM/01_FHEMWEB.pm (554)
2019.01.19 10:16:15 1: main::FW_Read called by fhem.pl (3681)
2019.01.19 10:16:15 1: main::CallFn called by fhem.pl (737)
2019.01.19 10:16:15 1: PERL WARNING: Argument "set_37" isn't numeric in numeric eq (==) at (eval 37368) line 1.
2019.01.19 10:16:15 1: stacktrace:
2019.01.19 10:16:15 1: main::__ANON__ called by (eval 37368) (1)
2019.01.19 10:16:15 1: (eval) called by fhem.pl (4556)
2019.01.19 10:16:15 1: main::evalStateFormat called by fhem.pl (4657)
2019.01.19 10:16:15 1: main::readingsEndUpdate called by fhem.pl (4847)
2019.01.19 10:16:15 1: main::readingsSingleUpdate called by ./FHEM/10_CUL_HM.pm (9085)
2019.01.19 10:16:15 1: main::CUL_HM_UpdtReadSingle called by ./FHEM/10_CUL_HM.pm (7146)
2019.01.19 10:16:15 1: main::CUL_HM_trigLastEvent called by ./FHEM/10_CUL_HM.pm (7897)
2019.01.19 10:16:15 1: main::CUL_HM_DumpProtocol called by ./FHEM/10_CUL_HM.pm (7091)
2019.01.19 10:16:15 1: main::CUL_HM_SndCmd called by ./FHEM/10_CUL_HM.pm (6781)
2019.01.19 10:16:15 1: main::CUL_HM_ProcessCmdStack called by ./FHEM/10_CUL_HM.pm (6350)
2019.01.19 10:16:15 1: main::CUL_HM_Set called by fhem.pl (3676)
2019.01.19 10:16:15 1: main::CallFn called by fhem.pl (1878)
2019.01.19 10:16:15 1: main::DoSet called by fhem.pl (1910)
2019.01.19 10:16:15 1: main::CommandSet called by fhem.pl (1228)
2019.01.19 10:16:15 1: main::AnalyzeCommand called by fhem.pl (1074)
2019.01.19 10:16:15 1: main::AnalyzeCommandChain called by ./FHEM/01_FHEMWEB.pm (2608)
2019.01.19 10:16:15 1: main::FW_fC called by ./FHEM/01_FHEMWEB.pm (883)
2019.01.19 10:16:15 1: main::FW_answerCall called by ./FHEM/01_FHEMWEB.pm (554)
2019.01.19 10:16:15 1: main::FW_Read called by fhem.pl (3681)
2019.01.19 10:16:15 1: main::CallFn called by fhem.pl (737)
2019.01.19 10:16:16 1: PERL WARNING: Argument "set_37" isn't numeric in numeric eq (==) at (eval 37371) line 1.
2019.01.19 10:16:16 1: stacktrace:
2019.01.19 10:16:16 1: main::__ANON__ called by (eval 37371) (1)
2019.01.19 10:16:16 1: (eval) called by fhem.pl (4556)
2019.01.19 10:16:16 1: main::evalStateFormat called by fhem.pl (4657)
2019.01.19 10:16:16 1: main::readingsEndUpdate called by ./FHEM/10_CUL_HM.pm (9074)
2019.01.19 10:16:16 1: main::CUL_HM_UpdtReadBulk called by ./FHEM/10_CUL_HM.pm (3723)
2019.01.19 10:16:16 1: main::CUL_HM_pushEvnts called by ./FHEM/10_CUL_HM.pm (2982)
2019.01.19 10:16:16 1: main::CUL_HM_Parse called by fhem.pl (3877)
2019.01.19 10:16:16 1: main::Dispatch called by ./FHEM/00_HMUARTLGW.pm (1388)
2019.01.19 10:16:16 1: main::HMUARTLGW_Parse called by ./FHEM/00_HMUARTLGW.pm (1491)
2019.01.19 10:16:16 1: main::HMUARTLGW_Read called by fhem.pl (3681)
2019.01.19 10:16:16 1: main::CallFn called by fhem.pl (737)
wie krieg ich das den weg?
list zum device:Internals:
DEF 1A962201
FUUID 5c42da43-f33f-0f9e-5417-864f9fd31337ce4c
NAME wohnzimmer_buero_licht_Dim
NOTIFYDEV global
NR 81
NTFY_ORDER 50-wohnzimmer_buero_licht_Dim
STATE off
TYPE CUL_HM
chanNo 01
device wohnzimmer_buero_licht
READINGS:
2019-01-19 10:16:35 CommandAccepted yes
2018-10-13 11:34:31 RegL_01. 00:00
2019-01-19 10:16:41 deviceMsg off (to vccu)
2019-01-19 10:16:41 dim stop:off
2019-01-19 10:16:41 level 0
2018-10-19 22:59:43 levelMissed desired:0
2019-01-19 10:16:41 overheat off
2019-01-19 10:16:41 overload off
2019-01-19 10:16:41 pct 0
2019-01-19 10:16:41 phyLevel 0
2019-01-19 10:16:41 recentStateType info
2019-01-19 10:16:41 reduced off
2019-01-19 10:16:41 state off
2019-01-19 10:16:41 timedOn off
2019-01-19 10:16:34 trigLast fhem:02
helper:
dlvlCmd ++A0113224331A96220201000000
regLst ,1,3p
dir:
cur stop
rct up
expert:
def 1
det 0
raw 1
tpl 0
role:
chn 1
tmpl:
vDim:
idPhy 1A962201
idV2 1A962202
idV3 1A962203
Attributes:
alias wohnzimmer büro dim
devStateIcon off:off on:light_light_dim_100 up:light_light_dim_10 down:light_light_dim_100 9\d.*:light_light_dim_90 8\d.*:light_light_dim_80 7\d.*:light_light_dim_70 6\d.*:light_light_dim_60 5\d.*:light_light_dim_50 4\d.*:light_light_dim_40 3\d.*:light_light_dim_30 2\d.*:light_light_dim_20 1\d.*:light_light_dim_10 0\d.*:light_light_dim_100 .*:edit_settings@orange
fp_fp_start 475,15,2,büro deckenlicht
fp_fp_tab_start 115,340,2,büro deckenlicht,
group licht
icon light_light
model HM-LC-Dim1TPBU-FM
peerIDs 00000000,
room homematic
stateFormat {if(ReadingsVal($name,"level",0)==0) {"off"} elsif (ReadingsVal($name,"level",0)==100) {"on"} else {ReadingsVal($name,"level",0)}}
webCmd pct
list zur "hardware":Internals:
DEF 1A9622
FUUID 5c42da43-f33f-0f9e-4f8b-e0dbea3b51d5103f
IODev hmLan2
LASTInputDev hmLan2
MSGCNT 8
NAME wohnzimmer_buero_licht
NOTIFYDEV global
NR 79
NTFY_ORDER 50-wohnzimmer_buero_licht
STATE CMDs_done
TYPE CUL_HM
channel_01 wohnzimmer_buero_licht_Dim
channel_02 wohnzimmer_buero_licht_Dim_V_01
channel_03 wohnzimmer_buero_licht_Dim_V_02
hmLan2_MSGCNT 8
hmLan2_RAWMSG 050100349CA4101A9622322433060100002F00
hmLan2_RSSI -52
hmLan2_TIME 2019-01-19 10:16:41
lastMsg No:9C - t:10 s:1A9622 d:322433 060100002F00
protLastRcv 2019-01-19 10:16:41
protRcv 8 last_at:2019-01-19 10:16:41
protSnd 12 last_at:2019-01-19 10:16:41
protState CMDs_done
rssi_at_hmLan2 cnt:8 min:-53 max:-48 avg:-51.37 lst:-52
rssi_hmLan2 cnt:7 min:-54 max:-45 avg:-50 lst:-47
READINGS:
2018-10-13 11:33:18 D-firmware 2.9
2018-10-13 11:33:18 D-serialNr JEQ0204016
2018-10-13 11:34:30 PairedTo 0x322433
2018-10-13 11:34:30 R-pairCentral 0x322433
2018-10-13 11:34:30 RegL_00. 02:01 0A:32 0B:24 0C:33 15:FF 18:00 00:00
2019-01-05 23:56:09 phyLevel 0
2019-01-19 10:16:41 state CMDs_done
helper:
HM_CMDNR 156
cSnd 113224331A96220201000000,013224331A9622010E
mId 0068
regLst ,0
rxType 1
supp_Pair_Rep 0
expert:
def 1
det 0
raw 1
tpl 0
io:
newChn +1A9622,00,00,00
nextSend 1547889401.56673
rxt 0
vccu vccu
p:
1A9622
00
00
00
prefIO:
hmLan2
mRssi:
mNo 9C
io:
hmLan:
hmLan2:
-46
-46
prt:
bErr 0
sProc 0
rspWait:
q:
qReqConf
qReqStat
role:
dev 1
prs 1
rpt:
IO hmLan2
flg A
ts 1547889401.27307
ack:
HASH(0x555f8bf0d6e0)
9C80023224331A962200
rssi:
at_hmLan2:
avg -51.375
cnt 8
lst -52
max -48
min -53
hmLan2:
avg -50
cnt 7
lst -47
max -45
min -54
tmpl:
Attributes:
IODev hmLan2
IOgrp vccu:hmLan2
alias wohnzimmer büro licht
autoReadReg 4_reqStatus
expert 2_raw
firmware 2.9
group aktoren
icon light_light
model HM-LC-Dim1TPBU-FM
room homematic
serialNr JEQ0204016
subType dimmer
webCmd getConfig:clear msgEvents
du musst anscheinend die "set_XX" infos in deinem attr stateFormat "abfangen", so dass sie nicht mit "==" verarbeitet werden.
edit: oder mit "eq" vergleichen, anstatt mit "==".
eigentlich dachte ich, dass die "set_XX" infos nur im state reading auftauchen. muss ich mal selber testen.
wie soll ich die abfangen?
die set_xx warnings kommen auch, wenn ich ganz stink normal "set wohnzimmer_buero_licht_Dim pct 50" sag. da rennt also von haus aus schon was falsch würd ich sagen.
nachtrag:
habs nur spaßeshalber mal mit meinen rollos der marke HM-LC-Bl1PBU-FM probiert
das kommt kein solches warning.
nur, falls dies hilft
wenn ich meinen eventmonitor anschaue, wäre es am besten, du nutzt das reading "pct" für dein stateformat.
edit: der test war aber gerade beim Dim1T-FM.
ich schau gleich noch beim Dim1TPBU-FM.
edit2: beim PBU sollte es auch über das reading pct funktionieren.
ha
so einfach kanns gehen - danke für den hinweis ... funzt!
das "level" hab ich aber irgendwo abgeschrieben - muß also irgendwo als tipp stehen.
habts ihr da irgendwann mal was umgestellt? weil den stateformat hatte ich schon drinnen, seit ich hm verwend. wobei ich zugeben muß - pct verwend ich bei homematic extremst selten bei den lichtern, kann ich also durchaus übersehen haben.
Du kannst aber auch auf eq"0" anstelle von ==0 abfragen. Hängt davon ab wie du mit den transienten umgehen willst. Ein numerischer Vergleich ist nicht erforderlich.
Du solltest überlegen die Funktion reasingsval nur einmal aufzurufen mich stören solche low Performance Implementierungen
jo - wie gsagt - das war entweder hier im forum oder sonst wo als "tipp" für hm-devices. quasi also noch aus zeiten, als ich noch weniger ahnung als jetzt gehabt hab *g*. und dann einfach verdrängt/vergessen/[bitte ausrede hier einfügen].