[Modul] Zigbee2Tasmota

Zigbee2Tasmota
Dieses Gerät baut eine Verbindung zwischen IP-Symcon und einer Tasmota Zigbee Bridge auf.

1. Voraussetzungen

2. Enthaltene Module

Bridge
Mit dieser Instanz werden die Geräte gesucht und können in IPS angelegt werden, desweiteren ist es möglich über diese Instanz Geräte mit der Zigbee2Tasmota Bridge zu pairen oder zu löschen.

Connect
Diese Instanz stellt die Verbindung zwischen MQTT Server / Client und den Instanzen her.

Device
Diese Instanz stellt die Geräte dar, welche mit der Bridge gepairt sind.

3. Installation
Über den Modul Store!

4. Konfiguration in IP-Symcon
Das Modul kann mit dem internen MQTT Server betrieben werden, oder aber mit einem externen MQTT Broker.

Standardmäßig wird der MQTT Server bei der Connect Instanz als Parent hinterlegt, wenn aber ein externer Broker verwendet werden soll, muss der MQTT Client per Hand angelegt werden und in der Geräteinstanz unter „Gateway ändern“ ausgewählt werden.

Die weitere Dokumentation bitte den einzelnen Modulen entnehmen.

Die Dokumentation ist hier zu finden: Zigbee2Tasmota | DeinSmartHome

Wenn ein Gerät von dem Modul nicht unterstützt wird, dann benötige ich einen Auszug aus der Tasmota Konsole mit folgendem Befehl:

ZbInfo Gerätename

Ansonsten müsste dann noch jede Aktion von dem Gerät ausgelöst werden, damit ich weiß welche Variablen angelegt werden müssen. Die Logs davon benötige ich ebenfalls.

5. Spenden

Dieses Modul ist für die nicht kommerzielle Nutzung kostenlos, Schenkungen als Unterstützung für den Autor werden hier akzeptiert:


Amazon Wunschzettel

6. Umfrage

Wer nutzt das Zigbee2Tasmota Modul noch?

  • Ich
  • Ich bin auf Zigbee2MQTT oder eine andere Variante umgestiegen

0 Teilnehmer

Grüße,
Kai

1 „Gefällt mir“

Changelog
30.05.2023 - Version 1.2.5
Fix: MQTT UTF8 Fix

21.02.2022 - Version 1.2.4
Neu: Variablen ActivePower und RMSVoltage bei Blitzwolf TS0121

17.11.2021 Version 1.2.3
Neu: Bei Eurotronic SPZB0001 Temperaturkalibrierung hinzugefügt
Neu: OSRAM Lightify Switch Mini
Neu: Philips Hue Lightstrip Plus
Neu: INNR SP 220

09.09.2021 Version 1.2.2
Neu: TS130F
Neu: lumi.relay.c2acn01
Neu: Power2
Neu: SmokeSensor-EM
Neu: TS0601
Neu: TS130F
Neu: TS0501B
Neu: GL-SD-001
Neu: Heimann COSensor-EF-3.0
Neu: innr RB 175W
Neu: innr RB 285C
Neu: IKEA Tradfri bulb E27 W opal 1000lm
Neu: Lidl/Parkside Bewässerungscomputer/Magnetventil
Neu: TS0044
Fix: lumi.remote.b286acn01
Fix: Click2 und Action2

04.01.2020 Version 1.0

Hallo Kai, ich habe mein Zigbee Netzwerk auf die SonoffBridge umgezogen. Alle Geräte bis auf den Xiaomi Switch funktionieren tadellos!

03.02.2021, 11:07:57 | FlowHandler          | Kann Daten nicht zur Instanz #52584 weiterleiten: IPS-Err-PHP                  2021-02-03 11:07:57.254  Notice: Undefined index: lumi.sensor_switch.aq2     Error in Script /var/lib/symcon/modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php on Line 97    134 in IPSLibrary/app/core/IPSLogger/IPSLogger.inc.php (call IPSLogger_Out)     44 in IPSLibrary/app/core/IPSLogger/IPSLogger_PhpErrorHandler.inc.php (call IPSLogger_Err)     97 in modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php (call IPSLogger_PhpErrorHandler)      3 in /- (call ReceiveData)
<br />
<b>Notice</b>:  Undefined index: lumi.sensor_switch.aq2 in <b>/var/lib/symcon/modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php</b> on line <b>97</b><br />
IPS-Err-PHP                  2021-02-03 11:07:57.258  Warning: Invalid argument supplied for foreach()     Error in Script /var/lib/symcon/modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php on Line 97    134 in IPSLibrary/app/core/IPSLogger/IPSLogger.inc.php (call IPSLogger_Out)     37 in IPSLibrary/app/core/IPSLogger/IPSLogger_PhpErrorHandler.inc.php (call IPSLogger_Err)     97 in modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php (call IPSLogger_PhpErrorHandler)      3 in /- (call ReceiveData)
<br />
<b>Warning</b>:  Invalid argument supplied for foreach() in <b>/var/lib/symcon/modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php</b> on line <b>97</b><br />
RESULT:

Kannst du bei Gelegenheit mal schauen was schief läuft?

Danke!

Kannst du mal auf die Beta Version wechseln und schauen ob es damit schon geht?

Grüße,
Kai

Auch auf der Beta gleicher Fehler

03.02.2021, 12:48:26 | FlowHandler          | Kann Daten nicht zur Instanz #52584 weiterleiten: IPS-Err-PHP                  2021-02-03 12:48:26.564  Notice: Undefined index: lumi.sensor_switch.aq2     Error in Script /var/lib/symcon/modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php on Line 103    134 in IPSLibrary/app/core/IPSLogger/IPSLogger.inc.php (call IPSLogger_Out)     44 in IPSLibrary/app/core/IPSLogger/IPSLogger_PhpErrorHandler.inc.php (call IPSLogger_Err)    103 in modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php (call IPSLogger_PhpErrorHandler)      3 in /- (call ReceiveData)
<br />
<b>Notice</b>:  Undefined index: lumi.sensor_switch.aq2 in <b>/var/lib/symcon/modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php</b> on line <b>103</b><br />
IPS-Err-PHP                  2021-02-03 12:48:26.568  Warning: Invalid argument supplied for foreach()     Error in Script /var/lib/symcon/modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php on Line 103    134 in IPSLibrary/app/core/IPSLogger/IPSLogger.inc.php (call IPSLogger_Out)     37 in IPSLibrary/app/core/IPSLogger/IPSLogger_PhpErrorHandler.inc.php (call IPSLogger_Err)    103 in modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php (call IPSLogger_PhpErrorHandler)      3 in /- (call ReceiveData)
<br />
<b>Warning</b>:  Invalid argument supplied for foreach() in <b>/var/lib/symcon/modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php</b> on line <b>103</b><br />
RESULT:

Kannst du die aktuelle Beta Version nochmal testen?

Grüße,
Kai

Stand aktuelle Beta:

  • Die Variablen Aktion und Klick werden angelegt jedoch beim drücken des Buttons (Xiaomi Switch) nicht aktualisiert.
  • Vorheriger Fehler wird nicht mehr ausgeworfen
  • Im Debug kommen die Daten wie in der Tasmota Console an
  • Halten des Buttons scheint es bei diesem Modell nicht zu geben

1x Klick
04.02.2021, 16:13:16 | ReceiveData | {"DataID":"{EAC09CF4-0E77-C618-5C72-019417AE3CC8}","Buffer":{"Topic":"tele\/TasmotaZBB1\/SENSOR","Payload":"{\"ZbReceived\":{\"0x43AC\":{\"Device\":\"0x43AC\",\"Name\":\" Xiaomi Switch 1\",\"Power\":0,\"Power2\":1,\"Endpoint\":1,\"LinkQuality\":123}}}"}}

2xKlick
04.02.2021, 16:14:33 | ReceiveData | {"DataID":"{EAC09CF4-0E77-C618-5C72-019417AE3CC8}","Buffer":{"Topic":"tele\/TasmotaZBB1\/SENSOR","Payload":"{\"ZbReceived\":{\"0x43AC\":{\"Device\":\"0x43AC\",\"Name\":\" Xiaomi Switch 1\",\"Power\":2,\"Endpoint\":1,\"LinkQuality\":128}}}"}}

3xKlick
04.02.2021, 16:16:20 | ReceiveData | {"DataID":"{EAC09CF4-0E77-C618-5C72-019417AE3CC8}","Buffer":{"Topic":"tele\/TasmotaZBB1\/SENSOR","Payload":"{\"ZbReceived\":{\"0x43AC\":{\"Device\":\"0x43AC\",\"Name\":\" Xiaomi Switch 1\",\"Power\":3,\"Endpoint\":1,\"LinkQuality\":81}}}"}}

4xKlick
04.02.2021, 16:17:07 | ReceiveData | {"DataID":"{EAC09CF4-0E77-C618-5C72-019417AE3CC8}","Buffer":{"Topic":"tele\/TasmotaZBB1\/SENSOR","Payload":"{\"ZbReceived\":{\"0x43AC\":{\"Device\":\"0x43AC\",\"Name\":\" Xiaomi Switch 1\",\"Power\":4,\"Endpoint\":1,\"LinkQuality\":128}}}"}}

Zusätzlich wird noch folgender Fehler ausgeworfen:
04.02.2021, 16:04:39 | FlowHandler | Kann Daten nicht zur Instanz #50462 weiterleiten: IPS-Err-PHP 2021-02-04 16:04:39.016 Notice: Undefined index: Manufacturer Error in Script /var/lib/symcon/modules/.store/schnittcher.info.ips.zigbee2tasmota/Bridge/module.php on Line 120 134 in IPSLibrary/app/core/IPSLogger/IPSLogger.inc.php (call IPSLogger_Out) 44 in IPSLibrary/app/core/IPSLogger/IPSLogger_PhpErrorHandler.inc.php (call IPSLogger_Err) 120 in modules/.store/schnittcher.info.ips.zigbee2tasmota/Bridge/module.php (call IPSLogger_PhpErrorHandler) 3 in /- (call ReceiveData) <br /> <b>Notice</b>: Undefined index: Manufacturer in <b>/var/lib/symcon/modules/.store/schnittcher.info.ips.zigbee2tasmota/Bridge/module.php</b> on line <b>120</b><br /> RESULT:

Hilft dir das weiter, Kai?

Hallo Kai. Ich habe das ganze Gerüst mit der SonoffBridge und den Modulen zum Laufen gebracht. Vielen Dank schon mal für das tolle Projekt. Jetzt hatte ich aber vorab ganz leichtsinnig zwei Teile (mehrfach) gekauft, die offenbar (noch) nicht kompatibel sind.

Nr. 1 Lidl SilverCrest Zwischenstecker SAPZ 1 A1. Eine Instanz kann man damit schon anlegen und über die Experteneinstellung auch die Verbindungsqualität als Variable. Aber der „Power“-Status fehlt. Könntest Du das Gerät bitte noch mit aufnehmen? Ich habe wie oben beschrieben die Zeilen aus der Tasmota-Console herauskopiert:

22:48:07.592 CMD: ZbInfo Zwischenstecker1
22:48:07.601 MQT: tele/Zigbee/SENSOR = {„ZbInfo“:{„0x8C76“:„Device“:„0x8C76“,„Name“:„Zwischenstecker1“,„IEEEAddr“:„0xEC1BBDFFFED4E75F“,„ModelId“:„TS011F“,„Manufacturer“:"_TZ3000_kdi2o9m6",„Endpoints“:[11],„Config“:[„O0B“],„Power“:1,„Reachable“:false,„LastSeen“:216959,„LastSeenEpoch“:1612690328,„LinkQuality“:107}}}
22:48:07.605 MQT: stat/Zigbee/RESULT = {„ZbInfo“:„Done“}
22:48:33.570 MQT: tele/Zigbee/SENSOR = {„ZbReceived“:{„0x8C76“:{„Device“:„0x8C76“,„Name“:„Zwischenstecker1“,„Power“:0,„Endpoint“:11,„LinkQuality“:102}}}
22:48:35.484 MQT: tele/Zigbee/SENSOR = {„ZbReceived“:{„0x8C76“:{„Device“:„0x8C76“,„Name“:„Zwischenstecker1“,„Power“:1,„Endpoint“:11,„LinkQuality“:105}}}

Und dann gibt es noch Nr2 - Der SilverCrest Bewegungssensor SMSZ 1 A1. Dieser lässt sich gar nicht erst als Instanz anlegen, wird allerdings in der Zigbee2Tasmota-Bridge immerhin aufgelistet.

23:04:26.214 CMD: ZbInfo Bewegungsmelder1
23:04:26.222 MQT: tele/Zigbee/SENSOR = {„ZbInfo“:{„0x5B91“:{„Device“:„0x5B91“,„Name“:„Bewegungsmelder1“,„IEEEAddr“:„0xEC1BBDFFFEE4DF57“,„Endpoints“:[1],„Config“:,„Reachable“:false,„LastSeen“:336660,„LastSeenEpoch“:1612571606,„LinkQuality“:76}}}
23:04:26.225 MQT: stat/Zigbee/RESULT = {„ZbInfo“:„Done“}

Oder scheiter es bei Nr. 2 schon am Tasmota?

Schaue ich mir an.
Kannst du Zbinfo nochmal für den Bewegungsmelder posten? Ich glaube da hast du das selbe gepostet wie vom Zwischenstecker.

Grüße,
Kai

Sorry, habe ich gerade noch korrigiert. Hier ist noch ein Nachtrag:

23:09:34.267 MQT: tele/Zigbee/SENSOR = {„ZbReceived“:{„0xADE2“:{„Device“:„0xADE2“,„Name“:„Fenstersensor1“,„BatteryVoltage“:3.11,„BatteryPercentage“:100,„Contact“:1,„Endpoint“:1,„LinkQuality“:107}}}

Da scheint die ModelID zu fehlen.
Kannst du da nochmal genauer schauen?

Grüße,
Kai

23:13:06.603 CMD: ZbInfo Bewegungsmelder1
23:13:06.610 MQT: tele/Zigbee/SENSOR = {„ZbInfo“:{„0x5B91“:{„Device“:„0x5B91“,„Name“:„Bewegungsmelder1“,„IEEEAddr“:„0xEC1BBDFFFEE4DF57“,„Endpoints“:[1],„Config“:,„Reachable“:false,„LastSeen“:337180,„LastSeenEpoch“:1612571606,„LinkQuality“:76}}}
23:13:06.614 MQT: stat/Zigbee/RESULT = {„ZbInfo“:„Done“}

Mehr spuckt der gerade nicht aus. (Ich glaube, dass Ding ist auch recht faul und sendet nur sehr selten einen Kontakt…)

Ich habe den hier auch und finde den sehr schlecht.
Ich werde weiterhin bei Aqara bleiben.

Paire den nochmal neu. Evtl funktioniert er dann schon.

Grüße,
Kai

Ok. Neu gepairt…

23:25:38.191 CMD: ZbInfo 0x85A8
23:25:38.199 MQT: tele/Zigbee/SENSOR = {„ZbInfo“:{„0x85A8“:{„Device“:„0x85A8“,„IEEEAddr“:„0xEC1BBDFFFEE4DF57“,„Endpoints“:[1],„Config“:,„Reachable“:true,„LastSeen“:56,„LastSeenEpoch“:1612909482,„LinkQuality“:107}}}
23:25:38.202 MQT: stat/Zigbee/RESULT = {„ZbInfo“:„Done“}

Naja, auf den kann ich wohl auch verzichten. Zum Glück habe ich davon nur einen gekauft. :wink: Aber die Steckdosen wären schon der Hit - damit habe ich mich mehr eingedeckt. (Und mit den Aquara Fenstersensoren - die funktionieren ja schon super.)

Sollte mit der nächsten Beta Version funktionieren.

Dafür müsstest du mir noch die ModelID schicken.

Grüße,
Kai

@KaiS
Hallo Kai, hast du dir den Xiaomi Switch schon angesehen? Kannst du diesen ins Modul übernehmen?

Kannst du es mit der aktuellen Beta Version nochmal testen?

Grüße,
Kai

Funktioniert leider nicht…

11.02.2021, 18:51:00 | FlowHandler          | Kann Daten nicht zur Instanz #15304 weiterleiten: IPS-Err-PHP                  2021-02-11 18:51:00.378  Notice: Undefined property: stdClass::$power     Error in Script /var/lib/symcon/modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php on Line 192    134 in IPSLibrary/app/core/IPSLogger/IPSLogger.inc.php (call IPSLogger_Out)     44 in IPSLibrary/app/core/IPSLogger/IPSLogger_PhpErrorHandler.inc.php (call IPSLogger_Err)    192 in modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php (call IPSLogger_PhpErrorHandler)      3 in /- (call ReceiveData)
<br />
<b>Notice</b>:  Undefined property: stdClass::$power in <b>/var/lib/symcon/modules/.store/schnittcher.info.ips.zigbee2tasmota/Device/module.php</b> on line <b>192</b><br />
RESULT:

Super, das hat geklappt. Der Lidl Zwischenstecker funktioniert jetzt - vielen Dank! (…habe für die Mühe auch eine kleine Donation geschickt :wink: )

Jetzt hätte ich noch eine Livarno Lux LED-Lampe (ebenfalls von Lidl), die noch nicht erkannt wird.

22:19:22.285 MQT: tele/Zigbee/SENSOR = {„ZbInfo“:{„0xEBAA“:{„Device“:„0xEBAA“,„IEEEAddr“:„0x588E81FFFEB44ED9“,„ModelId“:„TS0505A“,„Manufacturer“:"_TZ3000_dbou1ap4",„Endpoints“:[1],„Config“:[„O01“,„L01“],„Power“:1,„Dimmer“:0,„Hue“:0,„Sat“:254,„X“:45874,„Y“:19660,„CT“:153,„ColorMode“:2,„RGB“:„FF0000“,„RGBb“:„000000“,„Reachable“:true,„LastSeen“:2016,„LastSeenEpoch“:1613076346,„LinkQuality“:84}}}

Ich kann daran allerdings keine Aktion auslösen, weil ich die Lampe ja nicht ansteuern kann. Reicht die Info von oben evtl. schon, oder wie komme ich an die nötigen Variablen?

Wenn ich in google nach TS0505A schaue, gibt es eine Seite, die die folgenden „features“ nennt: state, brightness, color_temp, color_temp_startup, color_xy

(Darf ich das hier verlinken? :shushing_face: Link )

Und in der Console habe ich noch dashier gefunden:

21:38:19.358 ZIG: ZbData 0xEBAA,066C8925604CFF0506010F00010E01010F000200FE00990032B3CC4C