Rolladensteuerung mit ESPHome, Einstieg und Vorbereitung der Boards

Die vorherige Beitragsreihe hat es ja schon gezeigt, dass ich ein SMART HOME habe und ausbaue. Ein Teil davon macht in letzter Zeit immer wieder Ärger, – und das sind die Steuerungen von Shelly. Meine Rolläden werden unter anderem damit gesteuert. Leider stelle ich in letzter Zeit vermehrt fest, dass die kleinen Shellys, speziell die mit zwei Relais, nicht langlebig sind. Ständig macht wieder ein anderer Shelly Ärger, bucht sich nicht mehr ins Heimnetz und ist selbst über die Hardware-Taster nicht zur Mitarbeit zu bewegen. Trennt man das betroffene Device kurz vom Strom und lässt es danach neu starten, geht es wieder ein paar Tage gut. Auf Dauer hilft nur der Austausch gegen neu. Bei einem Preis von rund 30 € pro Rollade ist das ein teurer Spaß. Die Steuerungen zu ersetzen und neu einzubinden und zu konfigurieren ist ebenfalls nervig und kostet unnötig Zeit. Eine andere Lösung muss her.

Bei meinen Recherchen zum vorigen Beitrag wuchs dann der Plan, stärker auf offene ESP-Geräte zu setzen. Das ist zudem auch preislich interessant. So ein Board mit ESP32 und vier Relais kann 2 Rolläden steuern und kostet unter 20 €.

Als Amazon-Partner verdiene ich an qualifizierten Verkäufen. Für den Käufer ändert sich der Preis dadurch nicht.

Neben dem Vorteil gleich 2 Rolläden mit der kleinen Platine (ca. 9cm x 9cm) steuern zu können, bietet sie noch mindestens einen weiteren wichtigen Vorteil: Sie funktioniert direkt mit der Netzspannung, wodurch keine zusätzliche Stromversorgung notwendig ist. Alle Anschlüsse des ESP32 sind erreichbar und vier GPIO-Ausgänge sind direkt mit den vier Relais verbunden.

Kleiner Exkurs Nummer 1:

Wieso eigentlich 4 Relais für zwei Rolläden? Ein Rolladenmotor hat je einen Anschluss für aufwärts und abwärts, die wunschgemäß angesteuert werden. Zudem muss natürlich noch ein Nullleiter angeschlossen werden. In der einfachsten Logik würde man nun je einem Relais einen Anschluss (aufwärts bzw. abwärts) zuodnen und würde die beiden Relais wahlweise ansteuern. Das wäre prinzipiell machbar, – aber ich werde das wohl noch etwas sicherer gestallten, denn rein theoretisch wäre ja durch Programmierfehler oder Ähnliches möglich, dass mal zwei Relais gleichzeitig angestoßen werden, was dem Antriebmotor sicher nicht gefällt. Dazu aber in einem späteren Beitrag mehr.

Die vorhandenen Anschlüsse werden natürlich auch für die beiden Hardwaretaster gebraucht, mit denen per Tastendruck die Rolläden ohne SmartHome gesteuert werden können. Displays, LEDs, Taster, – alles denkbar …

Die SmartHome-Komponente soll mit Home Assistant realisiert werden. So, wie ich das bisher verstanden habe, wird Home Assistant in der Lage sein, mein Sammelsurium von unterschiedlichen Komponenten zusammenzuführen und gleichzeitig weitere günstige Komponenten vom Typ ESP32 aufnehmen können. Für die ESP32-Komponenten benötigt man dann noch ESPHome. Dieses Add-on hilft dabei.

Mittlerer Exkurs Nummer 2:

Ohne Server geht natürlich nichts. Das kann im einfachsten Fall ein RaspberryPi ab Version 4 sein oder ein NAS (etwa Synology oder QNAP), dass einigermaßen Power hat, um eine virtuelle Maschine zu beherbergen. Übrigens scheidet eine Containervariante wie Docker grundsätzlich aus !!! Der Home Assistant Docker kann keine Add-ons installieren, zumindest nicht ohne größeren Aufwand. Mal kurz aufgelistet, was zunächst erledigt werden muss:

  1. Entweder Home Assistant auf einem RaspberryPi oder in einer virtuellen Maschine installieren und konfigurieren. Anleitung hier bzw. hier. Besonders hilfreich ist bei der virtuellen Maschine dieser Beitrag von Technikzentrale24 auf youtube.
  2. Danach das Add-on ESPHome innerhalb von Home Assistant installieren. Auch hier wieder mein Tip: youtube Video von smart home & more.

… und dann kann es auch schon losgehen. Die oben gezeigte Platine mit ESP32 (WROOM) und 4 Relais soll in Home Assistant angemeldet werden. Dazu muss sie aber eine Firmware erhalten. Die Besonderheit liegt hier aber in der Tatsache, dass die Platine keinen USB-Anschluss hat. Man benötigt also einen Vermittler zwischen den Anschlüssen auf der Platine und USB. Ich habe dafür den BTT Writer. In einem älteren Beitrag hatte ich den schonmal benutzt.

Als Amazon-Partner verdiene ich an qualifizierten Verkäufen. Für den Käufer ändert sich der Preis dadurch nicht.

Auf der Relaisplatine findet man oberhalb des ESP32-Moduls eine Stiftleiste. Eventuell muss man diese erst einlöten. Diese Stiftleiste muss vor der Verbindung mit USB (also stromlos) mit dem BTT Writer oder einem ähnlichen USB-Flash-Adapter verbunden werden. Natürlich ist bei allen diesen Arbeiten noch keine weitere Verbindung (Antriebe, Netzstrom etc.) angelegt!

Das nach oben hängende Kabel ist nirgends verbunden!

Die Verbindung aus den beiden Bildern oben kann als Referenz genutzt werden. Auf der Rückseite der Relaiskarte sind die Anschlüsse der Stiftleiste beschrieben (siehe Bild unten). Prinzipiell gilt aber folgende Verbindung:

  • Am Flashadapter muss die 3V3 (3,3 Volt) Leitung genutzt werden und mit der 5V-Leitung auf der Relaiskarte verbunden werden. Die Programmierspannung für den ESP ist 3,3 Volt.
  • Die GND (Ground) Leitung ist zwischen Adapter und Relaiskarte herzustellen. Dafür wird unbedingt der dritte PIN von links genommen (siehe zweites Bild).
  • Ein Jumper (Kurzschlussstecker) wird vom IO0-Stift (PIN 1 ganz links) zum nebenliegenden GND-Stift gesteckt. Das ließe sich theoretisch auch mit dem IO0-Taster lösen, ist aber reichlich unergonomisch.
  • TXD des Adapters wird mit RX auf der Relaiskarte verbunden.
  • RXD des Adapters wird mit TX auf der Relaiskarte verbunden.
  • Ich habe zudem noch auf dem Adapter die Spannungseinstellung (ganz rechts im Bild) per Jumper auf 3,3 Volt eingestellt. Das ist aber in diesem Fall vermutlich egal.
  • Falls zwischen Computer und Adapter ein Verlängerungskabel genutzt wird, muss darauf geachtet werden, dass es ein Datenkabel ist. Den Unterschied sieht man im Gerätemanager bei Windows deutlich. Nur wenn eine Datenverbindung besteht, wird unter Anschlüsse (COM & LPT) der CH340 angezeigt. Wenn keine Datenverbindung besteht, wird unter USB-Controller ein unbekanntes Gerät gezeigt.
  • Unter WIN11 funktioniert der Windows-eigene Gerätetreiber für den CH340-Chip nicht richtig. Er muss von der WEMOS-Seite geladen und installiert werden. Der Hinweis ist auch in dem oben verlinkten youtube-Beitrag gegeben worden. Die Installation hat bei mir nur aus einem lokalen Laufwerk als Administrator ausgeführt funktioniert.

Zur Installation der Basisfirmware für ESPHome wird keine Programmierumgebung wie beispielsweise die Arduino IDE benötigt. Es wird einfach die Seite web.esphome.io aufgerufen, – alles noch völlig unabhängig von Home Assistant.

Nachdem der Adapter mit dem Computer über USB verbunden wurde, wird mit CONNECT die Verbindung eingeleitet. Im nächsten Bildschirm wird dann der Port ausgewählt, was in der Regel wohl eindeutig sein dürfte. 

Im darauf folgenden Bildschirm wird mit PREPARE FOR FIRST USE  (nicht mit INSTALL) der Flash-Vorgang eingeleitet.

Man sieht jetzt das Verbinden und das Schreiben der Konfiguration auf die Relaiskarte. Der Erfolg wird ebenfalls angezeigt. Sollte der Connect-Bildschirm nicht durch das Flashsymbol mit steigender Prozentzahl abgelöst werden, sind mit Sicherheit die Verbindungen zwischen Adapter und Relaiskarte falsch oder gestört. 

Jetzt kommt der Ablauf, den ich nirgends vernünftig beschrieben vorfand:

  1. Die USB-Verbindung muss getrennt werden
  2. Am Adapter muss die Leitung von 3V3 auf 5V umgesteckt werden. Flashen mit 3,3 Volt. Betrieb mit 5V.
  3. Auf der Relaiskarte muss der Jumper zwischen IO0 und GND entfernt werden.
  4. Die USB-Verbindung wird wieder hergestellt
  5. Wieder ist die Verbindung im Bildschirm herzustellen: CONNECT
  6. LOGS wird angewählt
  7. EN für einen RESET wird auf der Relaisplatine gedrückt

Jetzt sollte sich ein Bild mit den Daten vom ESP32 auf der Relaiskarte aufbauen, das in etwa so aussieht:

Wenn das bis hierher erfolgreich war, kann das LOG geschlossen werden und die drei Punkte rechts werden angeklickt.

Mit Configure Wi-Fi werden die Daten des eigenen WLANs an den ESP übergeben und dort abgespeichert. Damit ist die Basis-Firmware so erstellt, dass ESPHome und später Home Assistant mit der Relaiskarte etwas anfangen können.

Da ich selbst auch noch nicht weitergekommen bin als bis zu diesem Punkt, endet dieser Beitrag hier. In den nächsten Tagen geht es weiter mit der Einbindung.

0 0 votes
Article Rating
Abonnieren
Benachrichtige mich bei
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments