Electronics/ESP32-Relay-Card

Aus Zauberwiki
Version vom 10. Mai 2022, 16:03 Uhr von Lukas (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „= ESP32-Relay-Card-Adapter = Ich habe nach einer Lösung gesucht, möglichst viele Geräte möglichst kostengünstig mithilfe von [https://home-assistant.io homeassistant] anzusteuern. Ziel war es, viele einzelne Lampen schalten zu können. Dafür gebraucht wird im Grunde nur eine einfache Relais-Karte und irgendeine Steuerung dazu. == Anpruch == Wichtig für mich war eine Unabhängigkeit von "der Cloud", genauso wie ein Vertrauen darauf, das…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

ESP32-Relay-Card-Adapter

Ich habe nach einer Lösung gesucht, möglichst viele Geräte möglichst kostengünstig mithilfe von homeassistant anzusteuern. Ziel war es, viele einzelne Lampen schalten zu können. Dafür gebraucht wird im Grunde nur eine einfache Relais-Karte und irgendeine Steuerung dazu.

Anpruch

Wichtig für mich war eine Unabhängigkeit von "der Cloud", genauso wie ein Vertrauen darauf, dass das Produkt einigermaßen nachvollziehbar gebaut ist bzw. auch reparieret werden kann. Außerdem sollte es möglichst günstig sein, weil viele Lichter und ggf. auch noch andere Geräte mit geschaltet werden sollen.

Existierende Produkte

Es gibt bereit faszinierende kleine Geräte zuhauf bei Aliexpress zu finden, welche einen winzigen esp01-microcontroller verwenden um ein einzelnes Relais anzusteuern.

Aliexpress ESP8266 Relais-Karte.webp

Außerdem gibt es für Menschen, die darauf vertrauen wollen, dass ihr Haus nicht abfackelt auch Funksteckdosen von Hersteller*innen wie shelly. Solche "professionelleren" Geräte kommen dann auch gleich noch mit einer integrierten Strommessung, was auch sehr praktisch sein kann.

Eigene Lösung

Irgendwie war ich doch recht unzufrieden mit allem was ich gefunden habe - die shelly-plugs kannte ich damals noch nicht, sind mit 15€/Stück aber für die Anwendung doch recht schnell teuer, die kleinen Aliexpress-Boards sind super cool, der microcontroller aber auch nur geradeso irgendwie in homeassistant zu verwenden, und außerdem braucht jedes board dann auch noch eine eigene Stromversorgung und irgendwie habe ich keine Lust mit dodgy Netzteilen einen Hausbrand verantworten zu dürfen. Deswegen habe ich mich ein bisschen umgeschaut und bei Conrad eine 16-Kanal-Relais-Karte gefunden. Ähnliche Platinen gibt es auch auf Ebay und anderen einschlägigen Websites.

3,3V vs 5V Logikpegel

In der Elektronik gibt es verschiedene Logikpegel, welche grob beschreiben, ab welcher Spannung ein Signal als an oder aus akzeptiert und verarbeitet wird.

Aufgrund der Tatsache, dass die Karte als "Arduino-kompatibel" angepriesen wurde und auch in der Dokumentation nichts näheres zur Ansteuerung außer ein Beispiel-Skript stand, bin ich naiv davon ausgegangen, dass die Karte sowohl mit 3,3V, als auch mit 5V Logikpegeln arbeiten kann. Nach einigem auprobieren und kopfzerbrechen über meinen Code habe ich dann herausgefunden, dass die ESP32-Boards die ich verwendet habe 3,3V ausgeben und das Board nur 5V-Pegel akzeptiert. Also muss ich logic-level-shifter einsetzen um die Signale vom einen Logik-Level in das andere umzuwandeln. Zum glück gibt es da auch unglaublich günstig boards mit einem chip von Texas-Instruments, welcher gleich 8 Kanäle auf einmal bidirektional wandeln kann.

Platinendesign

Also ging es auf zum basteln einer Platine, um alles ein bisschen hübscher und brandsicherer mit einander zu verbinden. Designt habe ich die Platinen mit KiCad, einer open-source Platinen-CAD-Software, davor hatte ich nur einmal mit Eagle 6.0 gearbeitet. Herstellen lassen habe ich die Platinen bei aisler, welche die Platinen recht günstig direkt in Deutschland produziert haben, nach etwa 3 Wochen waren 3 Exemplare bei mir zuhause.

Platinen Bestellung.jpg

Die Dateien zu der Platine sind in diesem Git-Repo unter CC-BY-NC 4.0 veröffentlicht.