Silvercrest Lidl Mehrfachsteckdose und zigbee2mqtt_3channel_split

Begonnen von onkel-tobi, 29 Oktober 2021, 17:17:12

Vorheriges Thema - Nächstes Thema

HomeAlone

Hallo Beta-User,
bad news: Wenn ich mit dem Update Channel 2 und 3 aus fhemweb heraus schalte, tut sich nichts, es wird nicht geschaltet.
Ich kam gerade erst dazu das auszuprobieren.
Habe sicherheitshalber alles zum Device gehörige aus fhem entfernt und und durch Schalten in zigbee2mqtt das Hauptdevice neu anlegen lassen und dann das template für die 3channel Steckdose darauf angewandt.
Von zigbee2mqtt kommt alles korrekt an und wird auch in fhemweb korrekt dargestellt.

Hier die Configs, wie sie sich nach dem Update (und mit den Fehlern bei Channel 2 und 3 darstellen:

Channel 1:
defmod MQTT2_zigbee_wz_Mehrfachsteckdose_TV MQTT2_DEVICE zigbee_wz_Mehrfachsteckdose_TV
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV alias MQTT2_zigbee_wz_Mehrfachsteckdose_TV
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV comment Channel 1 for MQTT2_zigbee_wz_Mehrfachsteckdose_TV, see also MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 and MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV devicetopic zigbee2mqtt/wz_Mehrfachsteckdose_TV
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV genericDeviceType switch
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV icon message_socket
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV jsonMap state:availability state_l1:state state_l2:0 state_l3:0
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV model zigbee2mqtt_3channel_split
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT,'',$JSONMAP);; $ret->{state}=lc($ret->{state});; return $ret }
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV room MQTT2_DEVICE
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV setList on:noArg $DEVICETOPIC/set {"state_l1":"ON"}\
  off:noArg $DEVICETOPIC/set {"state_l1":"OFF"}\
  toggle:noArg $DEVICETOPIC/set {"state_l1":"TOGGLE"}
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV setStateList on off toggle

setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV off
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 21:36:44 IODev mosquittoATnucgulp
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 21:37:39 associatedWith MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2,MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 21:37:39 attrTemplateVersion 20220806
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 device_applicationVersion 69
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 device_dateCode
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 device_friendlyName wz_Mehrfachsteckdose_TV
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 device_hardwareVersion 1
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 device_ieeeAddr 0xec1bbdfffeaedd43
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 device_manufacturerID 4098
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 device_manufacturerName _TZ3000_1obwwnmq
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 device_model HG06338
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 device_networkAddress 1108
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 device_powerSource Mains (single phase)
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 device_stackVersion 0
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 device_type Router
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 device_zclVersion 3
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 last_seen 1659903385778
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 linkquality 76
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV 2022-08-07 22:16:25 state off


Channel 2:
defmod MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 MQTT2_DEVICE
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 alias MQTT2_zigbee_wz_Mehrfachsteckdose_TV
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 comment Channel 2 for MQTT2_zigbee_wz_Mehrfachsteckdose_TV, see also MQTT2_zigbee_wz_Mehrfachsteckdose_TV and MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 devicetopic zigbee2mqtt/wz_Mehrfachsteckdose_TV
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 genericDeviceType switch
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 icon message_socket
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 jsonMap state_l2:state state_l1:0 state_l3:0 state:0 consumption:0 linkquality:0 power:0 temperature:0
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 model zigbee2mqtt_3channel_split
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT,'',$JSONMAP);; $ret->{state}=lc($ret->{state});; return $ret }
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 room MQTT2_DEVICE
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 setList on:noArg $DEVICETOPIC/set {"state_l2":"ON"}\
  off:noArg $DEVICETOPIC/set {"state_l2":"OFF"}\
  toggle:noArg $DEVICETOPIC/set {"state_l2":"TOGGLE"}
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 setStateList on off toggle

setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 off
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 21:37:39 IODev mosquittoATnucgulp
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 21:37:39 associatedWith MQTT2_zigbee_wz_Mehrfachsteckdose_TV,MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 21:37:39 attrTemplateVersion 20220806
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 device_applicationVersion 69
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 device_dateCode
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 device_friendlyName wz_Mehrfachsteckdose_TV
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 device_hardwareVersion 1
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 device_ieeeAddr 0xec1bbdfffeaedd43
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 device_manufacturerID 4098
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 device_manufacturerName _TZ3000_1obwwnmq
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 device_model HG06338
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 device_networkAddress 1108
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 device_powerSource Mains (single phase)
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 device_stackVersion 0
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 device_type Router
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 device_zclVersion 3
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 last_seen 1659903578984
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2 2022-08-07 22:19:39 state off


Channel 3:
defmod MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 MQTT2_DEVICE
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 alias MQTT2_zigbee_wz_Mehrfachsteckdose_TV
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 comment Channel 3 for MQTT2_zigbee_wz_Mehrfachsteckdose_TV, see also MQTT2_zigbee_wz_Mehrfachsteckdose_TV and MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 devicetopic zigbee2mqtt/wz_Mehrfachsteckdose_TV
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 genericDeviceType switch
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 icon message_socket
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 jsonMap state_l3:state state_l1:0 state_l2:0 state:0 consumption:0 linkquality:0 power:0 temperature:0
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 model zigbee2mqtt_3channel_split
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT,'',$JSONMAP);; $ret->{state}=lc($ret->{state});; return $ret }
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 room MQTT2_DEVICE
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 setList on:noArg $DEVICETOPIC/set {"state_l3":"ON"}\
  off:noArg $DEVICETOPIC/set {"state_l3":"OFF"}\
  toggle:noArg $DEVICETOPIC/set {"state_l3":"TOGGLE"}
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 setStateList on off toggle

setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 off
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 21:37:39 IODev mosquittoATnucgulp
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 21:37:39 associatedWith MQTT2_zigbee_wz_Mehrfachsteckdose_TV,MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 21:37:39 attrTemplateVersion 20220806
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 device_applicationVersion 69
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 device_dateCode
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 device_friendlyName wz_Mehrfachsteckdose_TV
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 device_hardwareVersion 1
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 device_ieeeAddr 0xec1bbdfffeaedd43
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 device_manufacturerID 4098
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 device_manufacturerName _TZ3000_1obwwnmq
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 device_model HG06338
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 device_networkAddress 1108
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 device_powerSource Mains (single phase)
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 device_stackVersion 0
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 device_type Router
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 device_zclVersion 3
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 last_seen 1659903578984
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 22:19:39 state off




Exemplarisch die Unterschiede im Channel 3 (ich muss morgen früh raus, kann daher heute nicht mehr tiefergehend testen):
Channel 3 (alt):
defmod MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 MQTT2_DEVICE zigbee_wz_Mehrfachsteckdose_TV
[...]
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT,'',$JSONMAP);; $ret->{state}=lc($ret->{state});; return $ret }\
zigbee2mqtt/wz_Mehrfachsteckdose_TV/set:.* { json2nameValue($EVENT) }
[...]
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-07 21:37:39 associatedWith MQTT2_zigbee_wz_Mehrfachsteckdose_TV,MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH2

Channel 3 (neu):
defmod MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 MQTT2_DEVICE
[...]
attr MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT,'',$JSONMAP);; $ret->{state}=lc($ret->{state});; return $ret }
[...]
setstate MQTT2_zigbee_wz_Mehrfachsteckdose_TV_CH3 2022-08-06 17:10:56 associatedWith MQTT2_zigbee2mqtt



Liebe Grüße
Sascha

HomeAlone

OK, Entwarnung.

Nach einem Neustart geht es jetzt doch (mit der aktuellen attrTemplate von gestern).
Es könnte sein, dass bei meinen Versuchen mit dem Schalter gestern (das Problem hattest Du ja netterweise auch gelöst :) irgendetwas an der config verschossen wurde.

Ich teste heute sicherheitshalber noch einmal durch, sieht aber bisher gut aus.


Beta-User

Zitat von: HomeAlone am 08 August 2022, 09:58:32
OK, Entwarnung.
Danke für die Info - war grade gedanklich schon dabei, das im wesentlichen zurückzudrehen ;D ...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

HomeAlone

OK, habe es mit einer weiteren Mehrfachsteckdose getestet, da mir noch eine Kleinigkeit aufgefallen war, ich aber nicht wußte, ob ich es korrekt beobachtet hatte.
Wenn die Mehrfachsteckdose angelernt ist, funktioniert auf Anhieb nur Channel 3 aus fhemweb heraus.
Führe ich einen Neustart von fhem (shutdown restart) durch, funktioniert alles einwandfrei.
Die config ist vor und nach dem Neustart identisch.
Also ich komme damit klar, kann aber leider (noch) nicht erklären, warum das passiert. Die anderen beiden Mehrfachsteckdosen laufen im jetzt seit ihrer Erstinstallation und Konfiguration einwandfrei.
Werde am Wochenende etwas mehr Zeit finden - dann gucke ich mir das noch mal im Detail an.

Beta-User

Dazu habe ich zumindest eine Theorie:

Intern wird per "copy"-Befehl ein Klon erstellt für die weiteren Kanäle. Das hat aber den Nachteil, dass auch die Internals mitkopiert werden. Manchmal führt das zu seltsamen Effekten. Leider habe ich bisher noch keinen einfachen Weg gefunden, die Methode zu verbessern, ohne den overhead deutlich zu erhöhen (u.A. müßten dann alle vorhanden Attribute auch kopiert werden)....

An der einen oder anderen Stelle ist es zumindest verbessert, daher u.A. auch die "defmod"-Anweisungen, die jetzt dazugekommen sind. Damit sollten eigentlich auch die Internals neu aufgebaut werden.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

HomeAlone

Ich habe es noch einmal überprüft. Es ist definitiv so, wie von mir im vorhergehenden Posting beschrieben: Erst nach einem Neustart von fhem lässt sich die Mehrfachsteckdose über fhem korrekt ansprechen.
Wie gesagt, stört mich nicht, nur als Nachtrag, dass es noch einmal überprüft habe. :) Eventuell kann man das mit in den Template Kommentar zum zigbee2mqtt_3channel_split packen?
Entweder unter die Untested Zeile oder die Untested-Zeile austauschen (hab ich ja jetzt gemacht  ;) ):

For zigbee2mqtt 3 channel device like Silvercrest Steckerleiste »Zigbee Smart Home«.
NOTE: Two additional devices will be created for further channels.
NOTE: Please restart fhem after applying this template!

Beta-User

Danke für den Hinweis, werd's (etwas moderater) übernehmen; mir ist noch nicht ganz klar, warum das mit dem defmod nicht wirkt, aber letztlich ist das dann auch nicht mehr ganz so wichtig, nachdem die Doku paßt.

[gelöst]?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

HomeAlone

Zitat von: Beta-User am 01 September 2022, 12:01:16
[gelöst]?
Für mich schon, ich bin auf diesen Thread lediglich "aufgesprungen", kann daher das gelöst nicht hinzufügen.
Der Thread wurde ursprünglich von Onkel Tobi eröffnet. :)