Angetestet: Zigbee2Tasmota Gateway mit Zigbee CC2530 und ESP8266

Tasmota hat seit der Version > 7.0.0 eine schöne Erweiterung erhalten: Ein Zigbee-Plugin. Kurz erklärt: Normalerweise benötigt man, Wenn man Zigbee-Module verwendet, ein Hub. Beispielsweise für Philips den Hue-Hub oder für die neue Aqara-Serie den Xiaomi Hub. Jeder Hub schlägt mit jeweils über 30 Euro zu Buche. Der Philips Hub benötigt noch ein Netzwerk-Kabel zum Router und der Xiaomi Hub telefoniert nach Hause.

Hier kommt Zigbee2Tasmota ins Spiel: Über eine Hardware – einen Wemos D1 und einen CC2530 – werden die Zigbee-Signale vom cc2530 empfangen und mit der speziellen Tasmota-Software im Wemos D1 verarbeitet. Das Ergebnis wird dann an die Hausautomation wie Fhem, ioBroker usw. per MQTT übermittelt. Durch WLAN ist man auch noch nicht mal ortsgebunden. Lediglich werden 5 V USB-Spannung benötigt.

Die Software für das Zigbee-Modul kommt von Koen kanters, nehmt dort die Coordinator-Version. Die tasmota Software muss mit

#define USE_ZIGBEE in user_config_override.h

selber kompiliert werden. Wem das alles zu umständlich ist, dem kann ich beide Module mit platine zum selber löten für 26,95 inkl. Versand schicken.

wer nicht löten möchte, der kann für 31 euro das modul komplett erwerben.

Zum Testen habe ich mir den Xiaomi Magic Cube und 2 TFK-Sensoren gekauft. Das Pairen klappte mit der Version 8.3.0.1 sofort. Mit dem Magic-Cube schalte ich immer die Radiosender beim Echo 5 um.

Änderung bei der Firmware: Zigbee wird jetzt Zb abgekürzt

Bauteile bei Amazon (affili)

Bauteile bei aliexpress (affili)

CC-Debugger zum Flashen: http://s.click.aliexpress.com/e/_s4OKfR
CC2530: http://s.click.aliexpress.com/e/_rzfijX
Jumper-Cable: http://s.click.aliexpress.com/e/_rQG1Dn
Wemos D1: http://s.click.aliexpress.com/e/_sdIhFj
Xiaomi-Aqara-Produkte (Würfel): http://s.click.aliexpress.com/e/_suASO5

In Fhem sieht das Device nach erfolgreicher Verbindung mit MQTT so aus:

ZigbeeReceived_0xF83A_AqaraCube
wakeup
2020-01-28 09:50:22
ZigbeeReceived_0xF83A_AqaraCubeFromSide
0
2020-01-26 21:09:41
ZigbeeReceived_0xF83A_AqaraCubeSide
2
2020-01-27 11:20:20
ZigbeeReceived_0xF83A_AqaraUnknown
4
2020-01-28 09:59:01
ZigbeeReceived_0xF83A_Battery
80
2020-01-28 09:59:01
ZigbeeReceived_0xF83A_LinkQuality
162
2020-01-28 09:59:01
ZigbeeReceived_0xF83A_Manufacturer
LUMI
2020-01-21 14:28:14
ZigbeeReceived_0xF83A_ModelId
lumi.sensor_cube.aqgl01
2020-01-21 14:28:24
ZigbeeReceived_0xF83A_PresentValue
2
2020-01-28 09:50:22
ZigbeeReceived_0xF83A_Voltage
2.965
2020-01-28 09:59:01

 

Wichtig: Um dem Zigbee-Device einen sinnvollen Namen zu geben, sollte man in der Tasmota-Konsole folgendes machen: SetOption83 1

und dann kann man sinnvolle Namen vergeben.

ZbName 0xF83A,Cube1

Aktionen, wie bei mir das Umschalten von Radio oder Licht ein/aus, können via DOIF gemacht werden.

defmod Cube1_2_DOIF DOIF ([ZigbeeDevices:ZbReceived_0xF83A_AqaraCubeSide] eq "2")(set ECHO_G0913L05926203E8 speak "du hörst radio stad den haag, los gehts",set ECHO_G0913L05926203E8 tunein s3089)

Schalten von Hue-Lampen via MQTT:

defmod di_figuraus DOIF ([ZigbeeDevices:ZbReceived_figur_Power] eq "1") \
(set MyBroker publish "cmnd/zigbeegateway/ZbSend" "{ "device":"figur", "send":{"Power":"Off"} }")
attr di_figuraus do always
attr di_figuraus wait 120

Neue Zigbee-Module pairt man in der Tasmota-Konsole mit dem Kommando: ZigbeePermitJoin 1. Anschließend hält man 5 sek die Reset Taste vom Zigbee-Device. In fhem sieht man dann die neuen Readings.

Fazit: Das Zigbee2Tasmota – Modul ist eine tolle Sache. Leider ist es erst in einer frühen Entwicklungsphase. Ich habe den Würfel und die sehr günstigen Tür-Fenster-Kontakt Sensoren getestet und bin begeistert. Die Reichweite geht bei mir durch 2 Räume. Mehr Infos auf der Tasmota-Website.

Fragen wie immer in den Kommentaren.

Dieser Beitrag wurde unter Fhem-Hausautomation, ioBroker abgelegt und mit , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

50 Antworten zu Angetestet: Zigbee2Tasmota Gateway mit Zigbee CC2530 und ESP8266

  1. Kevin sagt:

    Hallo Robin,

    Ich wäre an der fertigen Lösung interessiert. Gibt es diese noch?

    Grüße,
    Kevin

  2. Ingo sagt:

    Hallo Robin,
    wieder mal ein schönes Projekt von Dir. Ich habe mir vor jahren bei dir mal ein SuperJee für die Anbindung der LaCross Thermometer geholt.
    Ist es auch möglich den CC2530 mit der ESP-ECU-v9_6 von patience4711 zu flashen?
    Das löten würde ich im anschluss selbst übernehmen.

  3. Martin sagt:

    Hab mich damit abgemüht, aber einen Sonoff Zigbeestickl zu kaufen ist im Jahr 2022 die erheblich einfache und leistungsfähigere Lösung.

  4. stixi sagt:

    Hi Robin,
    wäre auch an der fertigen Lösung interessiert
    (unterstützt diese Zigbee 3.0)
    so dass dieser Sensor angelernt werden kann??
    Aqara TVOC

    danke stixi

  5. Thomas sagt:

    Guten Tag Robin.

    Ich hätte auch Interesse an einem fertigen Modul. Gibt es das noch zu kaufen?

    Wenn ja, dann bitte Kontakt aufnehmen.

  6. Baer Stefan sagt:

    Hallo Robin ,

    Wo und wie kann man die fertige Lösung erwerben ?

    Danke und Grüße
    Stefan

  7. Wolfgang Jordan sagt:

    Ok!
    Jetzt habe ich das Problem gefunden. Module und Template mussten noch konfiguriert werden. Module auf Generic 18 und dann GPIO13 auf Zigbee Rx 166 und GPIO15 auf Zigbee 165. Die Kommandos müssen dann mit Zb… eingegeben werden.
    Nun funktioniert es.

  8. Wolfgang Jordan sagt:

    Hallo Robin,
    das funktioniert leider auch noch nicht.
    Screenshot von der Console:
    23:24:25 MQT: tele/tasmota_08086E/STATE = {„Time“:“2021-01-17T23:24:25″,“Uptime“:“0T06:35:09″,“UptimeSec“:23709,“Heap“:22,“SleepMode“:“Dynamic“,“Sleep“:50,“LoadAvg“:19,“MqttCount“:1,“POWER“:“OFF“,“Wifi“:{„AP“:1,“SSId“:“FRITZ!Box Fon WLAN 7390″,“BSSId“:“E8:DF:70:4F:47:60″,“Channel“:1,“RSSI“:84,“Signal“:-58,“LinkCount“:1,“Downtime“:“0T00:00:03″}}
    23:27:08 CMD: ZigbeePermitJoin 1
    23:27:08 MQT: stat/tasmota_08086E/RESULT = {„Command“:“Unknown“}
    23:29:25 MQT: tele/tasmota_08086E/STATE = {„Time“:“2021-01-17T23:29:25″,“Uptime“:“0T06:40:09″,“UptimeSec“:24009,“Heap“:22,“SleepMode“:“Dynamic“,“Sleep“:50,“LoadAvg“:19,“MqttCount“:1,“POWER“:“OFF“,“Wifi“:{„AP“:1,“SSId“:“FRITZ!Box Fon WLAN 7390″,“BSSId“:“E8:DF:70:4F:47:60″,“Channel“:1,“RSSI“:86,“Signal“:-57,“LinkCount“:1,“Downtime“:“0T00:00:03″}}

    Hier die Version:
    Program Version 8.3.1.6(sensors)
    Build Date & Time 2020-06-19T09:33:18
    Core/SDK Version 2_7_1/2.2.2-dev(38a443e)
    Uptime 0T06:43:14
    Flash write Count 3217 at 0xFB000
    Boot Count 3202
    Restart Reason External System
    Friendly Name 1 Tasmota

    Ist das Module richtig eingestellt oder muss hier noch konfiguriert werden?

    Module type (Sonoff Basic)

    Sonoff Basic (1)

    GPIO1 Serial Out
    None (0)
    GPIO2
    None (0)
    GPIO3 Serial In
    None (0)
    GPIO4
    None (0)
    GPIO14 Sensor
    None (0)

    Was mache ich noch falsch?
    Gruß
    Wolfgang

  9. Robin sagt:

    Hallo Wolfgang, du übergibst ein fehlerhaftes Kommando. Versuche mal: ZigbeePermitJoin 1

  10. Wolfgang Jordan sagt:

    Korrektur zu gerade:
    Das Kommando muss natürlich ZbPermitJoin 1 heißen. Es funktioniert aber auch so nicht.

    ZbPermitJoin 1
    00:54:17 CMD: ZbPermitJoin 1
    00:54:17 MQT: stat/tasmota_08086E/RESULT = {„Command“:“Unknown“}

  11. Wolfgang Jordan sagt:

    Hallo Robin,
    ich habe im letzten Monat von Dir ein komplettes Zigbee2Tasmota Gateway mit Zigbee CC2530 und ESP8266 bekommen. Ich konnte das Gateway in mein WLAN einbinden und MQTT funktioniert auch. Nun versuche ich, Zigbee zu nutzen. Wenn ich das Kommando ZbJoin 1 eingebe, kommt als Anwort „Command“:“Unknown“.

    ZbJoin 1
    00:35:50 CMD: ZbJoin 1
    00:35:50 MQT: stat/tasmota_08086E/RESULT = {„Command“:“Unknown“}

    Ist das Zigbee Feature in der Tasmota Firmware schon enthalten und aktiviert oder was muss ich noch machen?

    Vielen Dank für Deine Hilfe und liebe Grüße
    Wolfgang

  12. Thomas Neumann sagt:

    Hallo Robin,
    ich hätte Interesse an einem kompletten Zigbee2Tasmota Gateway mit Zigbee CC2530 und ESP8266 für 31€.
    Braucht man in einem 2-Etagigem Wohnhaus mehr als GW?

    Gruss,
    Thomas

  13. Wolfgang Jordan sagt:

    Hallo Robin,
    ich möchte gerne eine komplette Platine für 31 € bestellen. Wie können wir das abwickeln?
    Grüße
    Wolfgang

  14. Robin sagt:

    Das hört sich nach falscher Firmware oder falsche pinbelegung an.

  15. FG sagt:

    Moin,
    ich beschäftige mich nun seit 2 Wochen mit dem CC2530 Dev Board und versuche es gem. der existierenden Anleitungen die Firmware korrekt zu flashen.

    Leider bekomme ich das Board nicht zum laufen.
    Wenn ich die hier verlinkte FW verwende bekomme ich direkt einen Timeout nachdem Tasmota versucht den Chip zu starten.

    10:07:02 ZIG: rebooting CC2530 device
    10:07:07 ZIG: timeout, goto label 99
    10:07:07 RSL: tele/tasmota_E46FED/RESULT = {„ZbState“:{„Status“:99,“Message“:“Abort“}}
    10:07:07 ZIG: Abort
    10:07:07 ZIG: Stopping (99)

    Nehme ich eine FW die beim CCLoader beiliegt bekomme ich zumind. ein paar Rückmeldungen vom Board bis dann das timeout kommt.

    10:18:07 ZIG: rebooting CC2530 device
    10:18:08 RSL: tele/tasmota_E46FED/RESULT = {„ZbState“:{„Status“:1,“Message“:“CC2530 booted“,“RestartReason“:“Watchdog“,“MajorRel“:2,“MinorRel“:6}}
    10:18:09 RSL: tele/tasmota_E46FED/RESULT = {„ZbState“:{„Status“:50,“MajorRel“:2,“MinorRel“:6,“MaintRel“:3,“Revision“:0}}
    10:18:09 RSL: tele/tasmota_E46FED/RESULT = {„ZbState“:{„Status“:2,“Message“:“Resetting configuration“}}
    10:18:10 RSL: tele/tasmota_E46FED/RESULT = {„ZbState“:{„Status“:3,“Message“:“Configured, starting coordinator“}}
    10:18:19 RSL: tele/tasmota_E46FED/RESULT = {„ZbState“:{„Status“:40,“NewState“:9,“Message“:“Started as coordinator“}}
    10:18:19 RSL: tele/tasmota_E46FED/RESULT = {„ZbState“:{„Status“:51,“IEEEAddr“:“0x00124B001FC941FE“,“ShortAddr“:“0x0000″,“DeviceType“:1,“DeviceState“:9,“NumAssocDevices“:0}}
    10:18:20 ZIG: timeout, goto label 99
    10:18:20 RSL: tele/tasmota_E46FED/RESULT = {„ZbState“:{„Status“:99,“Message“:“Abort“}}
    10:18:20 ZIG: Abort
    10:18:20 ZIG: Stopping (99)

    Was mir aufgefallen ist, ist dass die Koenkk kleiner ist (468 Blöcke) als die vom CCLoader (512 Blöcke)

    Hast du / Ihr einen Tipp woran das liegt?

  16. Robin sagt:

    Hallo, ich habe leider die STl Datei nicht mehr.

  17. BG sagt:

    Hello Robin,

    Can i download the STL file for the 3d printed case you created for this CC2530 and wemos D1 mini ?

    Greetings Barry

  18. Christian sagt:

    Hi Thomas.

    Ich würde gerne ein komplett-set nehmen.

    Lg

    Christian

  19. Armin Heinz sagt:

    Hallo Robin,
    ich hätte Interesse an einem kompletten Zigbee2Tasmota Gateway mit Zigbee CC2530 und ESP8266 für 31€.

    Gruß

    Armin

  20. Hans Joachim Steiner sagt:

    Hallo Robin,

    würde gerne das:

    Zigbee2Tasmota Gateway mit Zigbee CC2530 und ESP8266

    komplett für 31 Euro bei Dir erwerben.
    Wie kriegen wir das hin?

    VG
    Hans Joachim

  21. Robin sagt:

    ja, dann steigen meine xiaomi-aktien.

    nein, du sollstest dich aber mit mqtt auskennnen.

    liebe Grüsse
    robin

  22. Michael Lüghausen sagt:

    Hallo,
    wenn ich ein Zigbee2Tasmota Gateway einsetze, gibt es dann noch einen Grund weitere Gateways wie z.B. IKEA TRADFRI Gateway oder den xiaomi Control Hub zu nutzen?

  23. Oliver sagt:

    Hi Robin,

    ich hätte gerne auch das „Komplettpaket“ 🙂
    Was muss ich machen?

    Viele Grüße,
    Oliver

  24. Jens sagt:

    Sehr hilfreich Thomas – vielen Dank!

  25. Thomas sagt:

    Hallo Jens,
    schau mal in meinem Wiki. Ich habe das dort genau beschrieben. Habe auch einen Cube, den ich eingebunden habe. Wichtig ist, die Readings umzubenennen. So wie Robin das auch schon beschrieben hat.
    http://wiki.gorjup.de/doku.php?id=public:fhem_zigbee2tasmota
    Gruß
    Thomas

  26. Jens sagt:

    Nutzt Du MQTT oder MQTT2 um die Zigbee-Geräte mit FHEM zu verbinden?
    Oben hast Du geschrieben, dass das Device Aqara-Cube in FHEM entsprechend der Readings eingebunden ist – ging das automatisch oder hattest Du jedes Reading manuell hinterlegt?
    Danke & Grüße, Jens

  27. Carsten Fickenzer sagt:

    Hallo Robin,
    würdest Du mir vielleicht nochmal so ein komplettes Teil, fertig geflasht, fertigmachen?
    Gruß Carsten

  28. Robin sagt:

    danke für die info!

  29. Remo sagt:

    Robin, besten Dank für die Hardware.
    Ich habe mein Test mit einer LED-Lampe von „Müller-Licht“ (gab es mal beim ALDI) durchgeführt. Über die Tasmota-Konsole konnte ich die Helligkeit und die Lichtfarbe einstellen. Mit MQTT muss ich noch etwas probieren. Mehr Info’s auf meiner Webseite:
    https://remo-web.de/doku.php?id=hardware:h0002

  30. Thomas sagt:

    Sorry, mein Fehler. Man muss auch die Fimware für CC2530 flashen und nicht die für CC2531. Das Problem sitzt also vor dem Rechner.

  31. Thomas sagt:

    Hallo Robin,
    danke für den Link. Habe es jetzt selbst kompiliert, aber läuft leider nicht.
    Kannst du evtl. helfen? TASMOTA Konsolen Ausgabe:

    14:23:10 ZIG: timeout, goto label 99
    14:23:10 MQT: tele/ZigBee2MQTT/RESULT = {„ZbState“:{„Status“:99,“Message“:“Abort“}}
    14:23:10 ZIG: Abort
    14:23:10 ZIG: Stopping (99)

    Der CC2530 ist als Coordinator geflashed und richtig verkabelt.

  32. Robin sagt:

    hallo thomas,

    nein, siehe hier https://github.com/arendst/Tasmota/blob/development/BUILDS.md

    liebe Grüsse
    robin

  33. Thomas sagt:

    Hallo, coole Sache, aber warum muss man die TASMOTA Software selbst compilieren.
    Kann man nicht die fertige binary v8.3.1 verwenden?

  34. Remo sagt:

    Hallo Robin,
    ich hätte auch Interesse die beiden Module für 21,95€ zu erwerben. Mein CC2531-USBStick funktioniert am Raspberry Pi 4 nicht, daher wäre deine Lösung einfach perfekt.

  35. Stefan Schmitt sagt:

    Hallo Robin,

    Wieder ein sehr guter Beitrag, habe schon länger Xiaomi Zigbee Hardware im Einsatz über ein Gateway von dresden elektronik und bin auch sehr zufrieden.

    Gruß

    Stefan

  36. Jens sagt:

    Hallo Robin – ich hätte an den beiden Modulen. Falls noch vorhanden, bitte Info bzgl Abwicklung. Danke

  37. Robin sagt:

    Danke für die Info.
    Das ganze Modul ist noch in der Anfangsphase, d.h. es werden laufend Updates rausgebracht.

    liebe Grüsse
    robin

  38. Joerg Schreiner sagt:

    Hallo,
    vielen Dank für die Beschreibung.
    Zwei Infos noch:
    Der Link zur Tasmota Doku hat sich geändert:
    https://tasmota.github.io/docs/#/
    Bei den Tasmotabefehlen wurde der Prefix „Zigbee“ in „Zb“ geändert.
    Also z.B. statt „ZigbeeName“ nun „ZbName“

  39. Jan sagt:

    Hallo Robin,

    Da ich keinen Programmer habe bin würde ich gerne auf dein Angebot zurückkommen und eine fertige Lösung kaufen.

    Gruß Jan

  40. Robin sagt:

    Hey Thomas,

    hm, Zigbeename ist der Name des Devices
    Das Gehäuse ist Schrott, passt nicht richtig der Deckel, veröffentliche ich nicht.

    liebe Grüsse
    robin

  41. Thomas Cristo sagt:

    Hallo Robin,
    das ist eine coole Idee. Damit erreiche ich jetzt auch entferntere Gräte.
    Ich habe noch 2 Fragen:
    – Das Kommando ‚ZigbeeName‘ kann ich in der Doku nicht finden. https://github.com/arendst/Tasmota/wiki/Zigbee
    – Hast du das schicke Gehäuse auch veröffentlicht?

  42. Robin sagt:

    Du hast Post.

    liebe Grüsse
    Robin

  43. Christoph sagt:

    Hi Robin,

    die Lösung finde ich perfekt, um den Raspi mit Openhab von dem Zigbee Stick zu entkoppeln und die Sende-/Empfangseinheit auch räumlich getrennt im Haus zu platzieren. Da ich keine Programmer bin würde ich gerne auf dein Angebot zurückkommen und eine fertige Lösung kaufen.

    VG
    Christoph

  44. Carsten sagt:

    Hey Robin,
    erstmal vielen Dank für die Hardware und den schnellen Support. Hab die Teile heute das erste Mal eingesetzt. Läuft alles. Habe allerdings (neben meinen Hue-Birnen und LED Leisten), erstmal nur 1 Zigbee Element. Nämlich den IKEA Bewegungsmelder für 10 Euro das Stück. Genau aus dem Grunde wollte ich das auch ausprobieren. Nachdem man das Pairing angestoßen hat, wird der Ikea BM sofort erkannt und abgespeichert. In FHEM wird das Device auch im Klartext angezeigt, die Bewegung erhält eine kryptische Meldung als Reading, die man aber per notify oder DOIF gut weiterverarbeiten kann. Habe mir jetzt erstmal den Aquara Magic Cube aus Chinaland bestellt um weitere Dinge zu testen. Weitere BM werden auf jeden Fall folgen. Vielen Dank nochmal. Ggfls. werde ich wegen eines weiteren Gateway nochmal auf Dich zukommen. Gruß Carsten

  45. Carsten sagt:

    Hallo Robin,
    Immer wieder interessant Deine Artikel. Ich würde gerne Dein Angebot nutzen und die beiden Module für 18,95 von Dir abnehmen.
    Nur so eine Verständnisfrage. Das Pairen funktioniert dann ohne weiteres Zusatzmodul; habe ich das richtig verstanden?
    Dann könnte man u.U. auch die Bewegungsmelder von IKEA darüber anlernen? Nur so ein Gedanke.

    Gruß Carsten

    PS: Wäre die .stl Datei von Deinem Gehäuse evtl. im Preis inbegriffen 🙂

  46. Jörn sagt:

    > Wem das alles zu umständlich ist, dem kann ich beide Module für 18,95 inkl. Versand schicken.

    CC2530 + Wemos + richtige Firmware? Ich hätte Interesse.

  47. Robin sagt:

    wirklich fummelig. Mit dem CC-Debugger draufstecken – gut is.

  48. Robin sagt:

    Gehäuse wäre klasse, ich habe mir testweise eins gebastelt.
    Pairen habe ich im Blog-Beitrag noch erweitert.

    liebe Grüsse
    robin

  49. Martin sagt:

    Nachtrag: mit etwas Fummelei geht es ohne Programmer: https://www.zigbee2mqtt.io/information/alternative_flashing_methods.html

  50. Martin sagt:

    Sehr cool! Danke…
    Brauche ich das Zigbee-Modul, den Programmer UND den Adapter? (nächste Frage: was möchtest Du für ein programmiertes Zigbee-Modul inkl. Antenne habe? Den Prgrammer brauche ich wohl nur 1x und dafür lohnt es sich nicht, oder?)
    Wie geht das Pairen?
    PS: denke gerade über ein Gehäuse nach, das ein USB-Netzteil umschließt um ein „nur in die Steckdose stecken“-Gerät ohne Kabel zu bekommen… hmm… Tinkercad wartet…

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.