Mittlerweile ist MySensors-Technologie ein echter Geheimtipp für die Hausautomation geworden. Open-Source, große Community und ständige Weiterentwicklung, das mag ich.
Zur drahtlosen Datenübertragung im 2,4 GHz-Bereich werden preisgünstige Transceiver vom Typ nRF24L01+ verwendet, welche dann mit zusätzlicher Hardware (wie Temperatursensoren, Relais usw.) alles mögliche schalten und walten.
Um diese MySensors „Module“ anzusprechen bedarf es eine zusätzliche Schnittstelle, welche dann die Kommunikation zwischen dem eigentlichen Sensor (Temperatur-Sensor, Relais) mit Fhem abwickelt. Das Zwischending mit der Brille nennt sich dann Gateway, welches dann an der Basis rumhorcht und schaut, was die einzelnen Sensoren ihm so mitteilen. Ich hatte vor gut einem Jahr (November 2014) mal ein Gateway vorgestellt (-> siehe Blog-Beitrag), welches diese Aufgabe erfüllte. Vielen von Euch war aber dieses Projekt zu kompliziert. Hier habe ich ein Netzwerk-Modul, Arduino-Nano und ein nRF24L01+ mühsam alles zusammengelötet und in ein Raspberry-Pi Gehäuse eingebaut. Das Teil funktioniert immer noch tadellos.
Jetzt gibt es für MySensors aber eine bessere und preisgünstigere Möglichkeit ein Gateway zu bauen. Mit einem NodeMCU – quasi ein Arduino mit WLAN-Chip – und einem nRF24L01+ – Transceiver kann man mit nur 2 Bauteilen und ein vollwertiges MySensors-Gateway aufbauen. Das ganze ist natürlich nicht auf meinem Mist gewachsen, sondern wurde im MySensors-Forum und in Fhem-Forum ausführlich erarbeitet. Danke nochmal an das Fhem-Forum – Team, insbesondere Hexenmeister, der das WLAN-Gateway für Fhem entwickelt hat.
Der Vorteil dieser Konstruktion ist, das man hier gar nicht löten muss (aber kann). Für das WLAN-Gateway benötigt ihr folgende Bauteile:
- NodeMCU (amazon: seeedstudio – nodemcu v2 basiert esp8266 lua diy – maker open source development kit – booole
, Achtung: Es sind Fakes im Umlauf, welche schnell defekt sind - nRF24L01+ (amazon: SODIAL(R) 6x 2,4 GHz Drahtlos NRF24L01 Transceiver Modul
- 5 V USB-Netzteil oder PC-Anschluß (z.b. Spannungsversorgung für Pi und Gateway https://blog.moneybag.de/erfahrungsbericht-ravpower-rp-uc10-usb-ladegeraet/
- Verbindungskabel (ein Set ist besser) (amazon: Aukru 3 in 1 kit „female-female “ „male-female“ „male-male“ jumper wire cable Kabel Steckbrücken Drahtbrücken für Arduino Raspberry pi
Aktion: Ich habe das Komplettset hier (begrenzt aus der Testumgebung, siehe Foto), für 21,90 Euro inkl. Versand könnte ich es abgeben. Inhalt: NodeMCU (kein Fake-Modell), Steckbrücken, 1 nRF240L01+. Ich könnte den Baustein auch für euch flashen.
Bauteile bestellt? Dann kann es ja losgehen! Wie es nun mal bei diesen Mikrocontrollern so ist, die Dinger sind stumpfdoof. So geht es auch mit dem NodeMCU, der von Haus aus ein 4MB-RAM hat, jedoch nix in der Birne :-). Den NodeMCU kann man noch für andere Zwecke einsetzen, hier der Link zur Website.
Folgende Schritte sind jetzt notwendig um diesem Chip etwas Intelligenz einzuflößen.
- Anmelden des NodeMCU-Boards an der Arduino-Benutzeroberfläche
- Flashen der angepaßten ESP8266 Gateway-Version für Fhem
Alles kein Hexenwerk, jedoch wie immer: Gewußt wie. Anschließend die Steckbrücken noch mit dem nrF24L01+ Transceiver verbinden (hier beschrieben) und schon kann die wilde Fahrt losgehen.
Installation des NodeMCU an die Arduino-Benutzeroberfläche:
Hier den in dem Video genannten Link eingeben:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Jetzt sollte man die MySensors-Libraries installieren, am besten auf die aktuelle Version 1.5, mehr Infos bei http://www.mysensors.org
Damit alles per Fhem auch funktioniert, muss der angepasste Sketch von Hexenmeister angewandt werden. Wichtig ist auch die externe MySecret.h Datei, in dem SSID und das Passwort für Euer WLAN-Netz steht.
Hier sind die Quell-Dateien: https://github.com/hexenmeister/MySensors_MyDevices/tree/master/MyEsp8266Gateway
Anschließend den NodeMCU mit einem nRF24L01+ verkabeln, Schaltplan gibt es hier bei mySensors:
http://www.mysensors.org/build/esp8266_gateway
Austesten, am Besten mit einem bestehenden MySensors – Sensor. Es sollte dann im Serial-Monitor ungefähr so aussehen.
Anmeldung an Fhem. Hier trägt man dann die erhaltene IP vom NodeMCU mit dem Port 5003 ein.
define gateway MYSENSORS 192.168.178.22:5003
attr gateway first-sensorid 1
attr gateway requestAck 1
attr gateway room mySensors
attr gateway stateFormat connection
Am Ende sollte es in Fhem so aussehen:
Was kann man damit nun machen?
Hier hat Blog-Leser Christian einen Gastbeitrag für seine Gartenbewässerung geschrieben.
Ich nutze die MySensors-Technologie für
- die Tür-Fensterkontakte,
- Fhem den Stromausfall mitzuteilen
- Temperaturmessung.
- MQ2-Luftqualitäts-Sensor
Auf der MySensors-Homepage werden noch einige andere Möglichkeiten gezeigt.
Viel Spaß beim Nachbauen, und bei Fragen, einfach fragen unten im Kommentarfeld.