ZigBee Shield für WEMOS D1 mini - Zigbee2Tasmota WLAN MQTT Gateway

Begonnen von locutus, 28 Juni 2020, 12:40:08

Vorheriges Thema - Nächstes Thema

locutus

Hallo zusammen,
nach SIGNALESP- und LaCrosseGateway- folgt nun ein ZigBee-Shield für WEMOS D1 mini und baugleiche Klone.

BOM Reichelt:
CN1 - 2x5-pol. Stiftleiste 1,27mm - BKL 10120632
R1 - 1,0k 1/4W 1206 - RND 1206 1 1,0K
es werden eventuell benötigt
8-pol. Stiftleisten 2,54 mm - RND 205-00629
8-pol. Buchsenleisten 2,54 mm - MPE 094-1-008

BOM LCSC:
U1 -  E18-MS1-IPX - C108540
2,4 GHz IPEX (U.FL) Antenne - C403726
oder
IPEX auf SMA Adapter - C403729


Coordinator Firmware mittels CC-Debugger auf das E18-MS1-IPX Modul flashen:
git clone https://github.com/dashesy/cc-tool.git
cd cc-tool
./bootstrap
./configure
make
sudo ./cc-tool -e -w CC2530ZNP-Prod.hex

Ein erfolgreicher Flashvorgang:
Programmer: SmartRF04EB
Target: CC2530
Target is locked.
Erasing flash...
Completed
Writing flash (241 KB)...
Completed (8.35 s.)


Coordinator Firmware mittels WEMOS D1 mini und CCLoader auf das E18-MS1-IPX Modul flashen:
https://github.com/Jason2866/CCLoader/
Vor dem Flashvorgang müssen auf dem Shield die Lötbrücken SJ1, SJ2 und SJ3 geschlossen und danach wieder geöffnet werden.


Zigbee2Tasmota:
https://tasmota.github.io/docs/Zigbee/

Tasmota Vorlage für WEMOS D1 mini ZigBee Shield:
{"NAME":"Zigbee","GPIO":[0,0,56,0,0,0,0,0,0,166,0,165,0],"FLAG":0,"BASE":18}

Tasmota Commands Tipps:
ledstate <x> - LED-Status (interne WEMOS LED an GPIO2) verwalten
timezone 99 - Uhrzeit korrigieren
sleep 50 - Energieverbrauch reduzieren: https://tasmota.github.io/docs/Energy-Saving/

Zigbee2Tasmota kompatible Geräte:
https://zigbee.blakadder.com/zigbee2tasmota.html

Kurzes Bsp. für Müller-Licht Tint LED Birne anlernen und bedienen:
Tasmota Konsole -> Befehl eingeben
ZbPermitJoin 1
Tint LED Birne in Pairing-Modus versetzen und den Pairing-Prozess (60 Sek.) in der Konsole beobachten ...
Tint dimmen, ausschalten ...
ZbSend { "device":"0x0815", "send":{"Dimmer":128} }
ZbSend { "device":"0x0815", "send":{"Power":"Off"} }



Bsp. FHEM und MQTT2:
define MQTT2_DVES_A1B2C3 MQTT2_DEVICE DVES_A1B2C3
attr MQTT2_DVES_A1B2C3 IODev MQTT2_FHEM_Server
attr MQTT2_DVES_A1B2C3 readingList DVES_A1B2C3:tele/tasmota_A1B2C3/LWT:.* LWT\
DVES_A1B2C3:cmnd/tasmota_A1B2C3/POWER:.* POWER\
DVES_A1B2C3:tele/DVES_A1B2C3/LWT:.* LWT\
DVES_A1B2C3:cmnd/DVES_A1B2C3/POWER:.* POWER\
DVES_A1B2C3:tele/DVES_A1B2C3/INFO1:.* { json2nameValue($EVENT) }\
DVES_A1B2C3:tele/DVES_A1B2C3/INFO2:.* { json2nameValue($EVENT) }\
DVES_A1B2C3:tele/DVES_A1B2C3/INFO3:.* { json2nameValue($EVENT) }\
DVES_A1B2C3:tele/DVES_A1B2C3/STATE:.* { json2nameValue($EVENT) }\
DVES_A1B2C3:tele/DVES_A1B2C3/RESULT:.* { json2nameValue($EVENT) }\
DVES_A1B2C3:stat/DVES_A1B2C3/RESULT:.* { json2nameValue($EVENT) }\
DVES_A1B2C3:tele/DVES_A1B2C3/SENSOR:.* { json2nameValue($EVENT) }
attr MQTT2_DVES_A1B2C3 room MQTT2_DEVICE
attr MQTT2_DVES_A1B2C3 setList ZbSend:textField cmnd/DVES_A1B2C3/zbsend {"device":"0x$EVTPART1","send":{"$EVTPART2":"$EVTPART3"}}

Das Attribut setList kann beliebige Kommandos an ZigBee Aktoren senden, indem man einfach sowas wie
set <device> ZbSend 0815 power on
set <device> ZbSend 0815 dimmerdown

verwendet.

Eine simple Fernbedienung für die Tint LED Birne:
define TintLED remotecontrol
attr TintLED rc_iconpath icons
attr TintLED rc_iconprefix black_
attr TintLED row00 0815 power off:FS20.off,0815 power on:FS20.on
attr TintLED row01 0815 dimmerdown:down,0815 dimmerup:up

define TintLED_Remotecontrol notify TintLED set MQTT2_DVES_A1B2C3 ZbSend $EVENT



Im Anhang Gerberdaten, Schaltplan und Firmware.
Die Verwendung der Daten für kommerzielle Zwecke, gewerbliche Herstellung oder Vertrieb ist untersagt.

Verfügbarkeit und Preise im Marktplatz.

Beta-User

Hallo zusammen,

fyi: es gibt zwischenzeitlich auch zwei "geratene" attrTemplate für diese Tasmota-Variante, die v.a. auch SetOption89 nutzt, den ESP eher als "bridge" versteht und dann (hoffentlich) direkt bedienbare, separate "Leuchten"-MQTT2_DEVICES konfiguriert.

Vielleicht mag ja jemand dazu entweder in dem Thread, aus dem die stammen (https://forum.fhem.de/index.php/topic,112253.0.html) oder separat im MQTT-Bereich Rückmeldung geben? (Ich will diesen eher hardwaretechnisch orientierten Thread hier nicht umwidmen.)
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

Loetkolben

Hallo,

Bei mir verabschiedet sich das Gateway nach einer unbestimmten Zeit und kann nur noch durch aus- /einstecken wieder aktiviert werden.
Habe ein normales Steckernetzteil (vom iPhone) da dran, das müsset doch ausreichen - oder?
Logging ist natürlich nach dem Neustart weg.

Jemand ne Idee?


Andreas
1x Pi3, 1x Pi4, CUL V3, miniCUL433+868, IKEA-Steckdosen, sonoff, shelly1, Conbee II, div. Zigbee-Leuchten, Alexa, Homematic, Tablet UI

locutus

Zitat von: Loetkolben am 16 August 2020, 19:54:40
Habe ein normales Steckernetzteil (vom iPhone) da dran ...
Oha! Das ist kein stabilisiertes Netzteil, sondern ein Ladegerät. Wohlmöglich noch mit Quick Charge, Power Delivery oder wie auch immer diese Funktion von Apfel genannt wird. Die Versorgungspannung kann locker 5 Volt überschreiten und der Ladestrom wird nach Bedarf reguliert.

Loetkolben

#4
OK. Dann werde ich mal ein ordentliches Netzteil da dran machen.  Danke für die Info.

Logging habe ich inzwischen auf meinen Linux-Server umgeleitet, damit man auch nach dem Neustart noch was sieht.


Andreas
1x Pi3, 1x Pi4, CUL V3, miniCUL433+868, IKEA-Steckdosen, sonoff, shelly1, Conbee II, div. Zigbee-Leuchten, Alexa, Homematic, Tablet UI

mi.ke

Kurz Frage:

Weiss jemand ob es bei dem Gateway eine Beschränkung hinsichtlicher der Anzahl verbundener/angelernter Devices gibt?

Danke und Grüße
mi.ke
FHEM 5.9 | RPi4 + 5 x RPi(Z) + FB7590 + FB 6890 LTE via LAN und WAN (VPN) verbunden.
2 x CUL868 + 3 x RFXTRX(e) + 6 x HMwLanGW + 4 x z2tGw + 5 x LGW + 2 x IRBlast + CO2 +++
FS20, FHT, FMS, Elro(mod), CM160, Revolt, LGTV, STV, AVR, withings, HM-sec-*, HM-CC-RT-DN, AMAD, PCA301, arlo, Aqara

Loetkolben

Hallo zusammen,

vielleicht kann mir jemand weiterhelfen.
Ich habe vor einiger Zeit das o.g. Gateway hier übers Forum erstanden.  Das Teil funktionierte auch bis vor kurzem einwandfrei, dann aber plötzliuch nicht mehr.

Habe dann (dummerweise) selber rumgebastelt, aber dabei sicherlich noch mehr zerstört.

Welche Möglichkeiten habe ich das Ding neu zu flashen.  Geht das direkt über das angedockte Wemos D1?
Die Links im ersten Beitrag bringen mich nicht wirklich weiter.
Mit Tasmota-Zigbee habe ich auch schon auf dem Wemos probiert, hier bekomme ich die Meldung "Zigbee not started"

Gruß
   Andreas
1x Pi3, 1x Pi4, CUL V3, miniCUL433+868, IKEA-Steckdosen, sonoff, shelly1, Conbee II, div. Zigbee-Leuchten, Alexa, Homematic, Tablet UI

PeMue

Zitat von: Loetkolben am 01 März 2022, 15:13:36
Welche Möglichkeiten habe ich das Ding neu zu flashen.  Geht das direkt über das angedockte Wemos D1?
Die Links im ersten Beitrag bringen mich nicht wirklich weiter.
Mit Tasmota-Zigbee habe ich auch schon auf dem Wemos probiert, hier bekomme ich die Meldung "Zigbee not started"
Auf dem Wemos D1 mini läuft Tasmota, das (vermutlich) den seriellen Datenstrom des Zigbee Controllers decodiert.
Zum Flashen des Zigbee Controllers (E18-MS1-IPX) brauchst Du den CC-Debugger und musst Du laut locutus die Lötbrücken SJ1, SJ2 und SJ3 schließen (danach wieder öffnen).
Ggf. ist der Thread im Zigbee Teil besser aufgehoben ...

Gruß Peter
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

Loetkolben

Danke für die Info, dann nehme ich erstmal einen anderen D1-Mini und probieren weiter.

Gruß
   Andreas
1x Pi3, 1x Pi4, CUL V3, miniCUL433+868, IKEA-Steckdosen, sonoff, shelly1, Conbee II, div. Zigbee-Leuchten, Alexa, Homematic, Tablet UI

ergerd

Hallo zusammen,

ich habe erfolgreich den E18 geflasht und ZigBee2Tasmota auf dem D1 Mini. Wie geht es jetzt weiter, wie muss ich
{"NAME":"Zigbee","GPIO":[0,0,56,0,0,0,0,0,0,166,0,165,0],"FLAG":0,"BASE":18}
verwenden?

Danke und Grüße
ergerd
FHEM auf RasPi 4, CUNO, ZigBee, 1Wire2WLAN, DS2423, C-Control II, Buderus KM200, LaCrosseGateway, PCA301, ConBee II, LuftdatenInfo, OneWireGW, Div. ESPs u. Shellys

ergerd

Hallo zusammen,

den String muss man unter "Sonstige Einstellungen" im Feld "Vorlage" eingeben und den Haken bei "Aktivieren" setzen.

Aber ich bekomme es nicht zum laufen:

00:00:00.052 CFG: aus Flash geladen am F9, Anzahl 22
00:00:00.058 QPC: Count 1
00:00:00.065 Projekt tasmota Zigbee2Tasmota Version 9.3.1(tasmota)-2_7_4_9(2021.03.07 16:15:21)
00:00:00.654 WIF: verbinden mit AP1 WLAN1 Channel 10 BSSId DC:39:6F:CF:E2:B9 in Modus 11n als tasmota_2EF08F-4239...
00:00:01.753 WIF: verbunden
00:00:02.006 HTP: Web-Server aktiv bei tasmota_2EF08F-4239 mit IP-Adresse 192.168.xxx.xxx
19:06:46.005 MQT: Verbindungsversuch...
19:06:46.026 MQT: verbunden
19:06:46.029 MQT: tele/tasmota_2EF08F/LWT = Online (beibehalten)
19:06:46.031 MQT: cmnd/tasmota_2EF08F/POWER =
19:06:46.037 MQT: tele/tasmota_2EF08F/INFO1 = {"Module":"Zigbee","Version":"9.3.1(tasmota)","FallbackTopic":"cmnd/DVES_2EF08F_fb/","GroupTopic":"cmnd/tasmotas/"}
19:06:46.044 MQT: tele/tasmota_2EF08F/INFO2 = {"WebServerMode":"Admin","Hostname":"tasmota_2EF08F-4239","IPAddress":"192.168.xxx.xxx"}
19:06:46.057 MQT: tele/tasmota_2EF08F/INFO3 = {"RestartReason":"External System"}
19:06:49.443 QPC: Reset
19:06:50.422 MQT: tele/tasmota_2EF08F/STATE = {"Time":"2022-07-02T19:06:50","Uptime":"0T00:00:09","UptimeSec":9,"Heap":30,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Wifi":{"AP":1,"SSId":"WLAN1","BSSId":"DC:39:6F:CF:E2:B9","Channel":10,"RSSI":64,"Signal":-68,"LinkCount":1,"Downtime":"0T00:00:03"}}
19:06:57.943 ZIG: rebooting CC2530 device
19:07:03.129 ZIG: timeout, goto label 99
19:07:03.137 MQT: tele/tasmota_2EF08F/RESULT = {"ZbState":{"Status":99,"Message":"Abort"}}
19:07:03.139 ZIG: Abort
19:07:03.140 ZIG: Stopping (99)


Kann mir da jemand weiter helfen?

Danke und Grüße
ergerd
FHEM auf RasPi 4, CUNO, ZigBee, 1Wire2WLAN, DS2423, C-Control II, Buderus KM200, LaCrosseGateway, PCA301, ConBee II, LuftdatenInfo, OneWireGW, Div. ESPs u. Shellys