Ankündigung
Einklappen
Keine Ankündigung bisher.
Zigbee Sensoren via zigbee2mqtt Plugin an SmartHomeNG
Einklappen
X
-
Ach sooo-.. Werde ich gleich ändern. Und: Ich hatte die 16 GB Speicherkarte einfach von einem Image des produktiven Raspi-Geräts aufgespielt. Aber ich habe raspi-config nicht laufengelassen hier auf dem Test-Raspi... Werde ich auch noch nachholen... Ich bin nun bis 17 Uhr weg, melde mich danach wieder :-)
-
Ich glaube, Du hast bei der Vergabe des FriendlyName einen Fehler gemacht bzw. habe ich mich nicht gut ausgedrückt. Die Hochkommata hätten weg gemusst. Dein Geräte heißt nun "SWITCH1", also mit Hochkommata. Das klappt nicht.Zitat von devau Beitrag anzeigenNun, jetzt meldet mqtt einen Syntax-Error:
Hier ist das beschrieben.
Du müsstest also:
undCode:ZbName 0x54EB,
in der Tasmota Konsole eingeben.Code:ZbName 0x54EB,SWITCH1
Alternativ kann Du auch versuchen, die Device-ID (0x54EB) zu verwenden. Dann musst Du diese in der Item.Config in Hochkommata setzen.
Code:tasmota_zb_device: '0x54EB'
Einen Kommentar schreiben:
-
Da passt was nicht. Ist ggf. die Speicherkarte voll?Zitat von devau Beitrag anzeigenSobald der Log ca. 700 kB gross ist, wird nichts mehr geloggt..... Dann muss ich die Datei "smarthome-details.log" löschen, SHNG neu starten, dann wird wieder geloggt. Ist was für später...
Einen Kommentar schreiben:
-
Habe das umbenannt in SWITCH1 und in der Item-Konfig angepasst und dann SHNG neu gestartert. Was mir nebenbei aufgefallen ist: Sobald der Log ca. 700 kB gross ist, wird nichts mehr geloggt..... Dann muss ich die Datei "smarthome-details.log" löschen, SHNG neu starten, dann wird wieder geloggt. Ist was für später...
Nun, jetzt meldet mqtt einen Syntax-Error:
2021-11-15 15:23:56 INFO plugins.priv_tasmota poll_device: Checking online status of connected devices
2021-11-15 15:24:01 ERROR modules.mqtt cast_from_mqtt: datatype 'dict', error 'Expecting ':' delimiter: line 1 column 4 (char 3)', data = ‘{""ZBSWITCH1"":{"Device":"0x54EB","Name":""ZBSW IT CH1"","MultiInValue":1,"Click":"single","click": "single","Endpoint":1,"LinkQuality":204}}‘
2021-11-15 15:24:01 INFO plugins.priv_tasmota on_mqtt_announce: topic_type=tele, tasmota_topic=tasmota_A8D079, info_topic=SENSOR, payload={""ZBSWITCH1"":{"Device":"0x54EB","Name":" "ZBSWITCH1"","MultiInValue":1,"Click":"single" ," click":"single","Endpoint":1,"LinkQuality":204}}
2021-11-15 15:24:01 INFO plugins.priv_tasmota Received Message contain sensor information.
Broker-Info jetzt:
tasmota_A8D079
{'connected_to_item': True, 'connected_items': {'item_ZBSWITCH1.click': Item: ZB.Switch.X54EB.click, 'item_ZBSWITCH1.action': Item: ZB.Switch.X54EB.action}, 'uptime': '0T06:48:52', 'lights': {}, 'rf': {}, 'sensors': {}, 'relais': {}, 'zigbee': {'active': True, 'zbconfig': {'ZbConfig': {'Channel': 11, 'PanID': '0x0C84', 'ExtPanID': '0xCCCCCCCCA8A8CC84', 'KeyL': '0xA8A8CC84D07D40A1', 'KeyH': '0xA8A8CC84D07D40A1', 'TxRadio': 20}}}, 'online': True, 'online_timeout': datetime.datetime(2021, 11, 15, 15, 26, 47, 193449), 'friendly_name': ['Tasmota'], 'fw_ver': '10.0.0(zbbridge)', 'ip': '192.168.1.180', 'mac': '84:CC:A8:A8
0:79', 'module': 'Sonoff ZbBridge', 'tasmota_template': '75', 'wifi_signal': -73}
Einen Kommentar schreiben:
-
Folgende Vermutung: Nachdem Du dem Gerät noch keinen FriendlyName vergeben hast, wird der Switch mit 0x54EB angesprochen. Das Plugin macht daraus 21739.
Könntest Du in der Tasmota GUI dem Switch einen FriendlyName verheben. Das geht, indem Du in der Konsole ZbName 0x54EB,"FriendlyName" eingibst.
Danach bitte die die Item-Konfig auch auch entsprechend ändern.
Probierst Du mal?
Einen Kommentar schreiben:
-
Gerne:tasmota_A8D079 {'connected_to_item': True, 'connected_items': {'item_21739.click': Item: ZB.Switch.X54EB.click, 'item_21739.action': Item: ZB.Switch.X54EB.action}, 'uptime': '0T03:40:15', 'lights': {}, 'rf': {}, 'sensors': {}, 'relais': {}, 'zigbee': {'active': True, 'zbconfig': {'ZbConfig': {'Channel': 11, 'PanID': '0x0C84', 'ExtPanID': '0xCCCCCCCCA8A8CC84', 'KeyL': '0xA8A8CC84D07D40A1', 'KeyH': '0xA8A8CC84D07D40A1', 'TxRadio': 20}}}, 'online': True, 'online_timeout': datetime.datetime(2021, 11, 15, 12, 18, 10, 135312), 'friendly_name': ['Tasmota'], 'fw_ver': '10.0.0(zbbridge)', 'ip': '192.168.1.180', 'mac': '84:CC:A8:A8
0:79', 'module': 'Sonoff ZbBridge', 'tasmota_template': '75', 'wifi_signal': -70}META-Daten {'zigbee': True} 0x54EB {'meta': {'Device': '0x54EB', 'IEEEAddr': '0x00158D0006D4DFB7', 'ModelId': 'lumi.remote.b1acn01', 'Manufacturer': 'LUMI', 'Endpoints': [1], 'Config': [], 'Reachable': True, 'LastSeen': 679, 'LastSeenEpoch': 1636969786}, 'data': {'MultiInValue': 1, 'Click': 'single', 'click': 'single', 'Endpoint': 1, 'LinkQuality': 186, 'BatteryVoltage': 3.13, 'BatteryPercentage': 100}}
Einen Kommentar schreiben:
-
Die Konfig passt so.Zitat von devau Beitrag anzeigenMeine Item-Konfig sieht so wie folgt aus: Wenn der Switch gesehen wird, müsste ich doch einen Wert im Item-Baum dieses Items unter "str" sehen? Ist dort jedoch immer leer.
Kannst Du mit bitte aus dem WebIF den Inhalte der ZB-Bridge (Dein oberer roter Kasten) nochmal senden?
Einen Kommentar schreiben:
-
Auszug aus dem Log:
2021-11-15 11:07:05 INFO plugins.priv_tasmota on_mqtt_announce: topic_type=tele, tasmota_topic=tasmota_A8D079, info_topic=STATE, payload={'Time': '2021-11-15T11:07:05', 'Uptime': '0T02:30:15', 'UptimeSec': 9015, 'Vcc': 3.522, 'Heap': 28, 'SleepMode': 'Dynamic', 'Sleep': 50, 'LoadAvg': 19, 'MqttCount': 2, 'Wifi': {'AP': 1, 'SSId': 'DVONET', 'BSSId': 'C2:A5:11:39:E6:9B', 'Channel': 13, 'Mode': '11n', 'RSSI': 56, 'Signal': -72, 'LinkCount': 1, 'Downtime': '0T00:00:05'}}
2021-11-15 11:07:05 INFO plugins.priv_tasmota Received Message contains Wifi information.
2021-11-15 11:07:05 INFO plugins.priv_tasmota Received Message decoded as Wifi message.
2021-11-15 11:07:05 INFO plugins.priv_tasmota Received Message will be checked for Uptime.
2021-11-15 11:07:05 INFO plugins.priv_tasmota tasmota_A8D079: No item for 'item_online' defined to set to True (from info_topic 'STATE'}
Bei einem Klick:
2021-11-15 11:09:09 INFO plugins.priv_tasmota Received Message decoded as Zigbee Device message.
2021-11-15 11:09:09 DEBUG plugins.priv_tasmota Item to be checked for update based in Zigbee Message and updated
2021-11-15 11:09:09 INFO plugins.priv_tasmota tasmota_A8D079: No item for 'item_0x54EB.multiinvalue' defined to set to 1 (from info_topic 'SENSOR'}
2021-11-15 11:09:09 INFO plugins.priv_tasmota tasmota_A8D079: No item for 'item_0x54EB.click' defined to set to single (from info_topic 'SENSOR'}
2021-11-15 11:09:09 INFO plugins.priv_tasmota tasmota_A8D079: No item for 'item_0x54EB.click' defined to set to single (from info_topic 'SENSOR'}
2021-11-15 11:09:09 INFO plugins.priv_tasmota tasmota_A8D079: No item for 'item_0x54EB.endpoint' defined to set to 1 (from info_topic 'SENSOR'}
2021-11-15 11:09:09 INFO plugins.priv_tasmota tasmota_A8D079: No item for 'item_0x54EB.linkquality' defined to set to 204 (from info_topic 'SENSOR'}
2021-11-15 11:09:09 INFO plugins.priv_tasmota tasmota_A8D079: No item for 'item_online' defined to set to True (from info_topic 'SENSOR'}
Meine Item-Konfig sieht so wie folgt aus: Wenn der Switch gesehen wird, müsste ich doch einen Wert im Item-Baum dieses Items unter "str" sehen? Ist dort jedoch immer leer.
Code:# ZB.Switch.X54EB.yaml ZB: Switch: X54EB: click: type: str tasmota_topic: tasmota_A8D079 tasmota_zb_device: 0x54EB tasmota_zb_attr: click action: type: str tasmota_topic: tasmota_A8D079 tasmota_zb_device: 0x54EB tasmota_zb_attr: action
Einen Kommentar schreiben:
-
Beim Zigbee Device siehst Du bereits, die Meldungen, die dein Schalter sendet. (unterer roter Kasten). So soll es sein.
Das Logging bitte so ändern:- Im AdminIF unter "Logs" --> "Konfiguration"
- dort findest du:
Code:plugins: # Default logger for SmartHomeNG plugins handlers: [shng_details_file] level: WARNING
- darunter kopierst du:
Code:plugins.tasmota: level: DEBUG
Das Item sollte so aussehen:
Für ein Item, das mit Tasmota Zigbee zu bedienen ist, brauchst Du 3 Attribute:Code:zigbee_switch: click: type: str tasmota_topic: tasmota_A8D079 tasmota_zb_device: 0x54EB tasmota_zb_attr: click action: type: str tasmota_topic: tasmota_A8D079 tasmota_zb_device: 0x54EB tasmota_zb_attr: action
tasmota_topic entspricht dem "Namen" der ZB.Bridge, tasmota_zb_device entspricht dem Namen des Zigbee Devices und tasmota_zb_attr entspricht dem Attribut (welches sich A) in der plugin.yaml definiert und damit zulässig sein muss und B) sich auch im Dict (unterer roter Kasten) stehen muss.
Probier mal.
Einen Kommentar schreiben:
-
Neues Plugin geladen. Logging unter Logs, Plugin Logger auf DEBUG gestellt. Ein Drücken auf dem ZigBEE-Switch zeigt mir allerdings nichts an im Log!?
Nachfolgend mal die Übersicht der Broker-Seite. Ich habe da noch ein paar Tasmota geflashte Nous-Power-Switches, die interessieren hier aber nicht.
Hast Du mir evtl. ein Beispiel, wie ich den Switch in einer Item-Konfig ansprechen kann? Dann versuche ich mal ein knx-Licht damit zu schalten.
Tasmota-Overview.jpg
Einen Kommentar schreiben:
-
Das machen wir später.Zitat von devau Beitrag anzeigenEr erscheint aber nicht auf der Seite "Details". Vermutlich weil Du dort nur Devices vom Type "Energy Sensors, Env. Sensors, Lights und RF" anzeigst. Hier müsste vermutlich noch der Type "Switch" rein.
Im Reiter "Broker" findeste Du unterhalb der Brokerinformation die Inhalte des Dicts, die das Plugin generiert. Oben findest Du alle nativen Tasmota Devices und darunter die ZigbeeDevices an der Tasmota ZB Brigde.
Dort sollte dann dein Schalter auftauchen. Dabei kannst Du sehen, welche Infos der Schalter sendet.
Ich habe das Plugin mal entsprechend erweitert und wieder in mein Repo geladen. Probiere es mal aus.
Damit es einfacher geht: Stelle bitte mal das Log für das Plugin auf Debug. Ich brauche immer diese Debug-Meldungen, um etwaige Fehler zu korrigieren. Weißt Du, wie das geht?
Einen Kommentar schreiben:
-
OK, hat geklappt! Ich habe den Aqara "Mini Switch" (Art. Nr: WXKG11LM) gekoppelt. Er erscheint mit diesen Daten auf der SHNG Tasmota-Plugin Seite "Zigbee":
0x54EB {'data': {'ModelId': 'lumi.remote.b1acn01', 'AppVersion': 2, 'Endpoint': 1, 'LinkQuality': 170, 'BatteryVoltage': 3.15, 'BatteryPercentage': 100, 'Manufacturer': 'LUMI'}}
Er erscheint aber nicht auf der Seite "Details". Vermutlich weil Du dort nur Devices vom Type "Energy Sensors, Env. Sensors, Lights und RF" anzeigst. Hier müsste vermutlich noch der Type "Switch" rein. Ich werde am Mittwoch noch den Fenster-Sensor und den Vibrations-Sensor erhalten, mal sehen, wie diese sich verhalten.
Könnte ich denn schon den Switch mal testweise als Item erfassen? Der Switch hat ja folgende Druck-Erkennungen:
Single Click:
23:11:46.218 MQT: tele/tasmota_A8D079/SENSOR = {"0x54EB":{"Device":"0x54EB","MultiInValue":1," Cli ck":"single","click":"single","Endpoint":1,"LinkQu ality":178}}
Double Click:
23:12:41.926 MQT: tele/tasmota_A8D079/SENSOR = {"0x54EB":{"Device":"0x54EB","MultiInValue":2," Cli ck":"double","click":"double","Endpoint":1,"LinkQu ality":173}}
Long Duration Click (hold&release)
23:13:19.381 MQT: tele/tasmota_A8D079/SENSOR = {"0x54EB":{"Device":"0x54EB","MultiInValue":0," Cli ck":"hold","action":"hold","Endpoint":1,"LinkQuali ty":162}}
23:13:21.092 MQT: tele/tasmota_A8D079/SENSOR = {"0x54EB":{"Device":"0x54EB","MultiInValue":255 ,"C lick":"release","action":"release","Endpoint":1,"L inkQuality":175}}
Einen Kommentar schreiben:
-
Ich bin nach dieser Anleitung vorgegangen. Und ja, der ZigBee Chip muss auch geflashed werden. Du musst der Anleitung bis zu "For Zigbee2Tasmota" folgen. Danach kannst Du in der GUI der Bridge die Zigbee Geräte anlernen.Zitat von devau Beitrag anzeigenIn der Anleitung soll dort als zweiter Schritt mittels Firmware Upgrade die FW "OTA-File ncp-uart-sw-6.7.8_115200.ota" aufzuspielen. Hier bin ich verunsichert, da dort steht "This will instruct Tasmota to flash the Zigbee chipset on the bridge that is necessary to integrate with the Zigbee Home Assistant integration."
Ich habe aber kein Home Assistant. Soll ich diesen Schritt denn trotzdem ausführen?
Erst danach starte bitte mit der Integration in shNG. Das Plugin stellt die Bridge dann so ein, dass die Kommunikation läuft.
Hier fehlt noch der Flash des ZigBee-Chips. Es muss im der Tasmota-GUI der Bridge stehen: "ZIG: Zigbee started". Erst dann klappt es.Zitat von devau Beitrag anzeigenVermutlich muss nun doch noch "Backlog Weblog 3; so65 1; Module 75" in der Bridge in der Konsole eingegeben werden und dann evtl. die "ota"-Konfig auch noch? Denn im Moment zeigt mir SonOFF im Menü "Zigbee Map" an: "Zigbee not started".
Du bist also auf dem richtigen Weg.
Zuletzt geändert von Sisamiwe; 14.11.2021, 19:16.
Einen Kommentar schreiben:
-
Update:
Bridge geflashed mit der Tasmota-Firmware. Jedoch noch ohne "ota"-Konfig. WLAN dort konfiguriert und in der MQTT-Konfig die IP des SHNG-Servers eingetragen.
Dein Plugin soweit als "priv_tasmota" in SHNG reinkopiert, das hat soweit geklappt. Ich sehe dort auch schon die SonOFF als Tasmota-Device:
SonOFF.jpg
ZigBEE Fragen:
Vermutlich muss nun doch noch "Backlog Weblog 3; so65 1; Module 75" in der Bridge in der Konsole eingegeben werden und dann evtl. die "ota"-Konfig auch noch? Denn im Moment zeigt mir SonOFF im Menü "Zigbee Map" an: "Zigbee not started".
Gruss, Dieter
Einen Kommentar schreiben:
-
Hallo Sisamiwe
Super dann starten wir doch mal mit dem Ganzen:
Ich werde hier die SonOFF ZB Bridge verwenden, da ich hier flexibler bin in Sachen Örtlichkeit als mit so einem USB-Stick, welcher ja am Ort wo sich der Server befindet (Hier ein Raspi 3B+ V2) eingesteckt sein müsste.
Zunächst plane ich also, die jungfräuliche SonOFF mit der Tasmota FW "tasmota-zbbridge.10.0.0.bin" zu flashen gem. hier:
https://www.digiblur.com/2020/07/how...idge-with.html
In der Anleitung soll dort als zweiter Schritt mittels Firmware Upgrade die FW "OTA-File ncp-uart-sw-6.7.8_115200.ota" aufzuspielen. Hier bin ich verunsichert, da dort steht "This will instruct Tasmota to flash the Zigbee chipset on the bridge that is necessary to integrate with the Zigbee Home Assistant integration."
Ich habe aber kein Home Assistant. Soll ich diesen Schritt denn trotzdem ausführen?
Und der dritte Schritt dort: "map the Zigbee chip to TCP Server Port 8888" soll mittels folgendem Command durchgeführt werden:
Benötige ich das auch genau so?backlog rule1 on system#boot do TCPStart 8888 endon ; rule1 1 ; template {"NAME":"Sonoff ZHABridge","GPIO":[56,208,0,209,59,58,0,0,0,0,0,0,17],"FLAG":0,"BASE":18} ; module 0
Gruss, DieterZuletzt geändert von devau; 14.11.2021, 14:30.
Einen Kommentar schreiben:


Einen Kommentar schreiben: