ich habe die Lichtschalter im Haus zu einer struct zusammengefaßt (für Anzeigezwecke bzw. gesammeltes Licht aus). Bislang sind das hauptsächlich HomeMatic Schalter und das ging problemlos.
Kürzlich habe ich einen Schalter gegen HmIP getauscht, und seltsamerweise macht der Probleme in der struct. readings und attribute der struct sehen ok aus, nur wenn ich über die struct zB. ausschalten möchte, tut er einfach nicht - so als ob er keinen Schaltbefehl erhalten würde.
Hat jemand eine Idee wo es klemmt?
So sieht die structure aus:
Internals:
ATTR lights
CHANGED
CHANGEDCNT 373
DEF lights SHlichtschalterVZ AZlichtschalter GZlichtschalter SZlichtschalter SZlichtbettrechts BZlichtschalterIP
NAME lightsO
NR 271
NTFY_ORDER 50-lightsO
STATE on
TYPE structure
READINGS:
2018-11-23 05:51:33 LastDevice SZlichtschalter
2018-11-23 05:51:33 LastDevice_Abs SZlichtschalter
2018-11-23 05:51:33 state on
Attributes:
clientstate_behavior relative
clientstate_priority on timer off
event-on-change-reading .*
lights lights
room _COMMON
userattr lights lights_map structexclude
und der Lichtschalter:
Internals:
CHANGED
DEF 001A58A9A23A30
IODev PiCCU
NAME BZlichtschalterIP
NR 595
STATE on
TYPE HMCCUDEV
ccuaddr 001A58A9A23A30
ccudevstate active
ccuif HmIP-RF
ccuname BZlichtschalter
ccutype HmIP-BSL
channels 16
firmware 1.0.2
statevals devstate|on|off
Helper:
DBLOG:
0.RSSI_DEVICE:
logdb:
TIME 1542948672.69034
VALUE -68
0.RSSI_PEER:
logdb:
TIME 1542948671.01799
VALUE -70
READINGS:
2018-11-23 05:51:12 0.RSSI_DEVICE -68
2018-11-23 05:51:11 0.RSSI_PEER -70
2018-11-23 05:50:55 10.ACTIVITY_STATE 3
2018-11-23 05:50:55 10.COLOR black
2018-11-23 05:50:55 10.COLOR_STATUS 0
2018-11-23 05:50:55 10.LEVEL 0
2018-11-23 05:50:55 10.LEVEL_STATUS 0
2018-11-23 05:50:55 10.PROCESS idle
2018-11-23 05:48:38 11.ACTIVITY_STATE 0
2018-11-23 05:48:38 11.COLOR blue
2018-11-23 05:48:38 11.COLOR_STATUS 0
2018-11-23 05:48:38 11.LEVEL 0
2018-11-23 05:48:38 11.LEVEL_STATUS 0
2018-11-23 05:48:38 11.PROCESS idle
2018-11-23 05:48:38 12.ACTIVITY_STATE 3
2018-11-23 05:48:38 12.COLOR blue
2018-11-23 05:48:38 12.COLOR_STATUS 0
2018-11-23 05:48:38 12.LEVEL 0
2018-11-23 05:48:38 12.LEVEL_STATUS 0
2018-11-23 05:48:38 12.PROCESS idle
2018-11-23 05:48:38 13.ACTIVITY_STATE 3
2018-11-23 05:48:38 13.COLOR black
2018-11-23 05:48:38 13.COLOR_STATUS 0
2018-11-23 05:48:38 13.LEVEL 0
2018-11-23 05:48:38 13.LEVEL_STATUS 0
2018-11-23 05:48:38 13.PROCESS idle
2018-11-23 05:48:38 14.ACTIVITY_STATE 3
2018-11-23 05:48:38 14.COLOR black
2018-11-23 05:48:38 14.COLOR_STATUS 0
2018-11-23 05:48:38 14.LEVEL 0
2018-11-23 05:48:38 14.LEVEL_STATUS 0
2018-11-23 05:48:38 14.PROCESS idle
2018-11-23 05:51:12 3.PROCESS idle
2018-11-23 05:51:12 3.STATE on
2018-11-23 05:51:12 4.PROCESS idle
2018-11-23 05:51:12 4.STATE on
2018-11-23 05:51:12 5.PROCESS idle
2018-11-23 05:51:12 5.STATE off
2018-11-23 05:51:12 6.PROCESS idle
2018-11-23 05:51:12 6.STATE off
2018-11-23 05:50:55 7.ACTIVITY_STATE 0
2018-11-23 05:50:55 7.COLOR blue
2018-11-23 05:50:55 7.COLOR_STATUS 0
2018-11-23 05:50:55 7.LEVEL 0
2018-11-23 05:50:55 7.LEVEL_STATUS 0
2018-11-23 05:50:55 7.PROCESS idle
2018-11-23 05:50:55 8.ACTIVITY_STATE 3
2018-11-23 05:50:55 8.COLOR blue
2018-11-23 05:50:55 8.COLOR_STATUS 0
2018-11-23 05:50:55 8.LEVEL 0
2018-11-23 05:50:55 8.LEVEL_STATUS 0
2018-11-23 05:50:55 8.PROCESS idle
2018-11-23 05:50:55 9.ACTIVITY_STATE 3
2018-11-23 05:50:55 9.COLOR black
2018-11-23 05:50:55 9.COLOR_STATUS 0
2018-11-23 05:50:55 9.LEVEL 0
2018-11-23 05:50:55 9.LEVEL_STATUS 0
2018-11-23 05:50:55 9.PROCESS idle
2018-11-23 05:51:12 control on
2018-11-23 05:51:12 hmstate on
2018-11-23 05:51:12 state on
hmccu:
devspec 001A58A9A23A30
dp:
0.ACTUAL_TEMPERATURE:
OSVAL 27.0
OVAL 26.0
SVAL 27.000000
VAL 25.0
0.CONFIG_PENDING:
OSVAL 1
OVAL 0
SVAL 0
VAL 0
0.DUTY_CYCLE:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.ERROR_CODE:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.ERROR_OVERHEAT:
OSVAL 0
OVAL 0
SVAL false
VAL 0
0.INSTALL_TEST:
OSVAL true
OVAL true
SVAL true
VAL true
0.OPERATING_VOLTAGE:
OSVAL 0.000000
OVAL 0.000000
SVAL 0.000000
VAL 0.000000
0.OPERATING_VOLTAGE_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.RSSI_DEVICE:
OSVAL -69
OVAL -69
SVAL -68
VAL -68
0.RSSI_PEER:
OSVAL -73
OVAL -73
SVAL -70
VAL -70
0.UNREACH:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.UPDATE_PENDING:
OSVAL false
OVAL false
SVAL false
VAL false
1.PRESS_LONG:
OSVAL 1
OVAL 1
SVAL 1
VAL 1
1.PRESS_SHORT:
OSVAL 1
OVAL 1
SVAL 1
VAL 1
10.ACTIVITY_STATE:
OSVAL 3
OVAL 3
SVAL 3
VAL 3
10.COLOR:
OSVAL black
OVAL 0
SVAL black
VAL 0
10.COLOR_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
10.LEVEL:
OSVAL 0
OVAL 0.0
SVAL 0
VAL 0.0
10.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
10.PROCESS:
OSVAL idle
OVAL 0
SVAL idle
VAL 0
10.SECTION:
OSVAL 0
OVAL 0
SVAL 1
VAL 1
10.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
11.ACTIVITY_STATE:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
11.COLOR:
OSVAL blue
OVAL 1
SVAL blue
VAL 1
11.COLOR_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
11.LEVEL:
OSVAL 0
OVAL 0.0
SVAL 0
VAL 0.0
11.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
11.PROCESS:
OSVAL idle
OVAL 0
SVAL idle
VAL 0
11.SECTION:
OSVAL
OVAL
SVAL
VAL 0
11.SECTION_STATUS:
OSVAL 1
OVAL 1
SVAL 1
VAL 1
12.ACTIVITY_STATE:
OSVAL 3
OVAL 3
SVAL 3
VAL 3
12.COLOR:
OSVAL blue
OVAL 1
SVAL blue
VAL 1
12.COLOR_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
12.LEVEL:
OSVAL 0
OVAL 0.0
SVAL 0
VAL 0.0
12.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
12.PROCESS:
OSVAL idle
OVAL 0
SVAL idle
VAL 0
12.SECTION:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
12.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
13.ACTIVITY_STATE:
OSVAL 3
OVAL 3
SVAL 3
VAL 3
13.COLOR:
OSVAL black
OVAL 0
SVAL black
VAL 0
13.COLOR_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
13.LEVEL:
OSVAL 0
OVAL 0.0
SVAL 0
VAL 0.0
13.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
13.PROCESS:
OSVAL idle
OVAL 0
SVAL idle
VAL 0
13.SECTION:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
13.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
14.ACTIVITY_STATE:
OSVAL 3
OVAL 3
SVAL 3
VAL 3
14.COLOR:
OSVAL black
OVAL 0
SVAL black
VAL 0
14.COLOR_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
14.LEVEL:
OSVAL 0
OVAL 0.0
SVAL 0
VAL 0.0
14.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
14.PROCESS:
OSVAL idle
OVAL 0
SVAL idle
VAL 0
14.SECTION:
OSVAL 0
OVAL 0
SVAL 1
VAL 1
14.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
15.WEEK_PROGRAM_CHANNEL_LOCKS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
3.PROCESS:
OSVAL idle
OVAL 0
SVAL idle
VAL 0
3.SECTION:
OSVAL
OVAL
SVAL
VAL
3.SECTION_STATUS:
OSVAL 1
OVAL 1
SVAL 1
VAL 1
3.STATE:
OSVAL off
OVAL 0
SVAL on
VAL 1
4.PROCESS:
OSVAL idle
OVAL 0
SVAL idle
VAL 0
4.SECTION:
OSVAL 3
OVAL 3
SVAL 0
VAL 3
4.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
4.STATE:
OSVAL on
OVAL 1
SVAL on
VAL 1
5.PROCESS:
OSVAL idle
OVAL 0
SVAL idle
VAL 0
5.SECTION:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
5.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
5.STATE:
OSVAL off
OVAL 0
SVAL off
VAL 0
6.PROCESS:
OSVAL idle
OVAL 0
SVAL idle
VAL 0
6.SECTION:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
6.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
6.STATE:
OSVAL off
OVAL 0
SVAL off
VAL 0
7.ACTIVITY_STATE:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
7.COLOR:
OSVAL blue
OVAL 1
SVAL blue
VAL 1
7.COLOR_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
7.LEVEL:
OSVAL 0
OVAL 0.0
SVAL 0
VAL 0.0
7.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
7.PROCESS:
OSVAL idle
OVAL 0
SVAL idle
VAL 0
7.SECTION:
OSVAL
OVAL
SVAL
VAL 0
7.SECTION_STATUS:
OSVAL 1
OVAL 1
SVAL 1
VAL 1
8.ACTIVITY_STATE:
OSVAL 3
OVAL 3
SVAL 3
VAL 3
8.COLOR:
OSVAL blue
OVAL 1
SVAL blue
VAL 1
8.COLOR_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
8.LEVEL:
OSVAL 0
OVAL 0.0
SVAL 0
VAL 0.0
8.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
8.PROCESS:
OSVAL idle
OVAL 0
SVAL idle
VAL 0
8.SECTION:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
8.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
9.ACTIVITY_STATE:
OSVAL 3
OVAL 3
SVAL 3
VAL 3
9.COLOR:
OSVAL black
OVAL 0
SVAL black
VAL 0
9.COLOR_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
9.LEVEL:
OSVAL 0
OVAL 0.0
SVAL 0
VAL 0.0
9.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
9.PROCESS:
OSVAL idle
OVAL 0
SVAL idle
VAL 0
9.SECTION:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
9.SECTION_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
Attributes:
DbLogInclude 0.RSSI_.*
IODev PiCCU
ccureadingfilter (LEVEL|STATE|COLOR|PRESS|PROCESS|RSSI)
ccuscaleval LEVEL:0:1:0:100
event-min-interval .*:300
event-on-change-reading .*
room Badezimmer
statedatapoint 4.STATE
statevals on:true,off:false
substitute STATE!(0|false):off,(1|true):on;COLOR!0:black,1:blue,2:green,3:turquoise,4:red,5:purple,6:yellow,7:white;PROCESS!0:idle,1:timer
Kannst Du denn per
set BZlichtschalterIP on
den Taster schalten? Oder biegt man da irgendwelche Befehle um?
Ich denke das dieses Thema eventuell HMCCU spezifisch ist. Kann mich aber auch irren, kenne mich mit IP nicht so aus.
ja schalten geht ohne Probleme, habe einen BWM der per notify das Licht einschaltet
in den HMCCUDEV devices wird einiges umgebogen, wie weit das Einfluß auf struct hat ist mir allerdings nicht klar ...
Kannst Du mal ein list vom notify posten. Will nur sicher gehen das wir da nicht aneinander vorbei reden.
keine Sorge, tun wir nicht ;)
die entscheidende Stelle ist:
fhem("set BZlichtschalterIP on");
bzw. ausschalten statt on-for-timer:
fhem("defmod BZlichtschalterIP_off at +00:03:00 set BZlichtschalterIP off");
Sieht gut aus. Und wenn Du der Structure nun ein on gibst passiert genau bei dem Taster nichts sagst.
Mmhh.
Stell mal bitte die Structure auf verbose 5 und setze dann ein set STRUCTURNAME on ab. Und die Ausgabe im Log bitte hier posten.
Problem gelöst 8)
in den logs hab ich gesehen daß beim schalten der struct versucht wurde, noch den alten BZlichtschalter (altes HM ohne IP) zu schalten. Den hatte ich zuvor im Zuge des Wechsels auf HmIP natürlich aus der struct entfernt (delstruct/addstruct) bzw. auch die struct_map aus den Attributen des alten Schalters gelöscht und beim neuen (HmIP) eingetragen. Warum der immer noch mitgeschalten wurde ist mir ein Rätsel - es gab keinerlei Spuren davon in der fhem.cfg.
Die Lösung war, die struct Definition neu zu schreiben ohne etwas zu ändern (DEF klicken, danach modify, ohne etwas zu ändern). Dabei wurde offenbar irgendwas internes aktualisiert und seitdem funkt es wie gewünscht 8)
Danke fürs auf-den-richtigen-Weg schubsen, habe gelernt daß struct auch verbose kann :)