ESP8266 230V I/O Modul

ESP8266 I/O Beitrag

Das ESP8266 230V I/O Modul ist genau was der Name verspricht: Eine kompakte Platine mit 230V Ein- & Ausgängen, Netzteil und einem ESP8266 WLAN Mikrocontroller.

Mit der passenden Software wird daraus eine netzwerkfähige „Internet der Dinge“ Steuerung die netzbetriebene Geräte automatisiert oder kleine Lasten schaltet.

Achtung – 230V~ Netzspannung!
Die Schaltung sollte nur mit ausreichender Erfahrung in Betrieb genommen werden. Dazu gehört nicht nur das Einhalten von Sicherheitsregeln beim Anschließen, sondern auch die Abschätzung ob z.B. die Schaltleistung für die Anwendung ausreicht.

Funktionen

  • ESP8266 (ESP-07) WLAN Modul
  • 230V Versorgung & I/O
    • 2x Ausgänge 5A, L geschaltet
    • 2x Eingänge (Optokoppler)
    • 5V/600mA Netzteil-Modul (HLK-PM01)
    • Sicherung & Varistor für Netzteil
    • Löschglied (Snubber) am Ausgang
  • ≥5mm Trennung zur Netzspannung
  • Freie GPIO (I²C, ADC) herausgeführt
  • Spannungsregler mit Unterspannungsüberwachung
  • Vorbereitet für WLAN Stromsparmodus

Technische Daten

  • Betriebsspannung: 230V/50Hz (Netzteil 100-240V)
  • Stromverbrauch
    • Leerlauf (WLAN suche): 7,89mA
    • Leerlauf (WLAN verbunden): 7,78mA
    • WLAN, Ein- & Ausgänge aktiv: 13,83mA
    • Optokoppler: 1,6mA pro Eingang
  • Schaltleistung: 5A pro Kanal, max. 1250VA/150W resistive Last
  • Absicherung: 400mA flink (Netzteil), Relais ohne Vorsicherung
  • Löschglied: 320Ω + 47nF

ESP8266 I/O Maße & Layout

Maße

Die Platine misst 45,5mm x 45,5mm, vollständig bestückt ist das Modul 24mm hoch. In der Zeichnung ist zusätzlich der Sicherheitsabstand zur Netzspannung hervorgehoben.

Mit dem Gehäuse misst das komplette Modul 49,5mm x 49,5mm x 26,5mm und passt in eine Unterputz-Gerätedose.


Einträge im Blog 📑


Schaltplan & Layout

ESPIO-Schaltplan
ESPIO-Layout

Projekt nachbauen 🔧

Die Leiterbahn vom Anschluss „L“ zu den Relais sollte mit einem aufgelöteten Draht (0,6mm) verstärkt werden. Zwischen ESP8266-Modul und Platine sollte ein Stück Kaptonfolie (oder Isolierband) geklebt werden, damit sich die Leiterbahnen nicht berühren. Am Widerstand R1 muss ein Anschluss umgebogen und anschließend mit Schrumpfschlauch isoliert werden. Beim Biegen unbedingt einen dünnen Schraubendreher o.ä. unterlegen, um den Draht nicht scharfkantig abzuknicken was das Gehäuse des Widerstands beschädigen würde!

Wichtig: Nach dem Löten die Flussmittelreste mit Spiritus o.ä. gründlich entfernen um Kriechströme zu verhindern!


Downloads

Aktuelle Version: 1.0 vom 18. Mai 2016 (621,74 KB)

Download “ESP8266 230V I/O” (59758-mal heruntergeladen)

Anschlussplan Netzspannungsseite:
ESP8266-HVIO_Anschlussplan_1.0.pdf (57176 Downloads )

Versionsinfo

  • 1.0 (03/2016): Erster Prototyp

Firmware

Durch die Unterstützung von Thomas wird das Modul inzwischen von der Sonoff-Tasmota Firmware unterstützt – vielen Dank dafür!


Anschlussbelegung 🔌

ESPIO-Unterseite
Alle Anschlüsse sind auf der Unterseite neben der zugehörigen Lötstelle beschriftet.
Die digitalen Pins (I²C, UART) sind für 3,3V Pegel geeignet, der ADC Eingang nur bis 1V!
Über den „Power Good“ Ausgang des Spannungsregler wird das Funkmodul erst aktiviert nachdem die Stromversorgung stabil ist und mindestens 3,1V anliegen. Außerdem wird bei zu starken Schwankungen automatisch ein Reset ausgelöst.

AnschlussPinNameFunktion
Netz1L230V Versorgung Außenleiter
2O1Ausgang 1 (L geschaltet)
3O2Ausgang 2 (L geschaltet)
4I2Eingang 2 (L geschaltet)
5I1Eingang 1 (L geschaltet)
6N230V Versorgung Neutralleiter
I²C13V33,3V Versorgung (150mA)
2SDAI²C Daten
3SCLI²C Takt
4GNDMasse
I/O1RxUART Rx
2TxUART Tx
3ADCADC/TOUT (ohne Filter)

Pinbelegung ESP-07 Modul

Die Optokoppler sind als Inverter beschaltet, ein 230V Eingangssignal erzeugt einen LOW Pegel am GPIO Pin.

PinNameFunktionBeschaltung
1ResetPower Good: VCC >3,1V -> High10kΩ Pullup
2ADC/TOUTADC (ohne Filter)
3EnableFest an VCC
4GPIO16Wakeup, über Jumper "Sleep" an Reset
5GPIO14I/O, I²C SCL10kΩ Pullup
6GPIO12Eingang 1 ("I1", invertiert)47kΩ Pullup, 100nF Filter
7GPIO13Eingang 2 ("I2", invertiert)47kΩ Pullup, 100nF Filter
8 & 9PowerVCC & GND
10GPIO15I/O, LED (aktiv high)10kΩ Pulldown
11GPIO2I/O, I²C SDA10kΩ Pullup
12GPIO0I/O, über Jumper "Flash" gegen Masse10kΩ Pullup
13GPIO4Ausgang 1 ("O1")47kΩ Pulldown
14GPIO5Ausgang 2 ("O2")47kΩ Pulldown
15GPIO3UART Rx
16GPIO1UART Tx

Testkontakte (Unterseite)

Zum Starten im „FLASH“ Modus (Bootloader) können die Testkontakte mit einer Pinzette überbrückt werden („FS“ & „G“ beim Einschalten verbinden). Etwas komfortabler geht das mit zwei Tastern oder den Handshake-Pins (RTS & DTR) am USB UART Adapter.

PinBeschriftungFunktion
1RsResetLow für Reset
2FsFlashGPIO0 Boot Mode: High = "RUN", Low = "FLASH"
3GMasse
45V5V(150mA, beschriftet auf Oberseite)
5V3,3V(150mA)

Lötjumper

Mit zwei Lötjumpern auf der Unterseite kann die Konfiguration der Schaltung angepasst werden. Zum Verbinden reicht ein großer Klecks Lötzinn, alternativ passt auch ein 0Ω Widerstand in der Bauform 0603 auf die Pads.

  • Sleep
    Verbindet GPIO16 mit Reset um den Mikrocontroller aus dem Stromsparmodus aufwecken zu können.
  • Flash
    Legt GPIO0 permanent auf Masse, wodurch der ESP8266 nach dem Einschalten immer im Bootloader („FLASH“ Modus) startet.

Externe Antenne

Ein Vorteil des ESP-07 Moduls ist der U.FL Anschluss für eine externe Antenne, die ohne zusätzlichen Stromverbrauch eine höhere Reichweite bietet.
Bevor die neue Antenne verwendet werden kann, muss die eingebaute Keramikantenne deaktiviert werden um Störungen zu vermeiden. Dazu wird der kleine Kondensator zwischen der aufgelöteten Antenne und dem U.FL Anschluss entfernt. Damit sich der Stecker beim Einbau nicht verdreht sollte die Leitung mit etwas Isolierband z.B. am Netzteil fixiert werden.

Der U.FL Stecker muss unbedingt so ausgerichtet werden, dass die Antennenleitung über dem ESP-07 Modul liegt! Falsch ausgerichtet, berührt der Stecker ansonsten den Varistor am Platinenrand und hebt so die Trennung zur Netzspannung auf.

Gehäuse


Erweiterungen & Zubehör

Unterputz Leergehäuse

Passend für die erste Version der ESP8266 230V I/O Module, 49,5mm x 49,5mm x 26,5mm

Weiterlesen…

ESP8266 USB Programmer & RS232 Adapter

ESP8266 Programmer im USB-Stick Format mit UART/RS232 Pegelwandler

Weiterlesen…

156 Kommentare

  1. Vielen Dank für das tolle Projekt, habe meine 8 Stück erhalten und teilweise bereits zusammengebaut. Um anderen eventuelle Fehlersuche zu ersparen hätte ich da noch einen Kommentar zum betreffend Firmware (Tasmota) flashen.
    Ich habe das Modul mittels Pin-Header (3,3V, Gnd, TX und RX) mit dem seriellen Port verbunden, die Kontakte für den Bootmode gebrückt und erfolgreich Tasmota aufgespielt. Nach dem Neustart blinkte die blaue LED (Wifi) sehr schnell und es wurde auch kein WLAN aufgemacht. Erst nach langem rumprobieren kam ich dann auf die Idee, mal die 230V anzuschließen und Voilá schon funktioniert es!

  2. Gibt es noch Platinen? wenn ja, an wenn muss man sich wenden?

  3. Es liegen wieder einige Platinchen bereit. Wer also noch Bedarf hat sollte mal wieder im Mikrocontroller.net (Forum) vorbei schauen.

    LG

    PS: Was macht die Weiterentwicklung. Spanend wäre aus meiner Sicht noch eine ganze Relais-Batterie, welche wir über die I2C anhängen. Hab mich aber noch nicht so weit in Tasmota eingearbeitet, um die Machbarkeit darüber abzudecken.

  4. Großartige Arbeit! Für zukünftige Modifikation würde ich noch folgende Features mit in die Ideenliste aufnehmen:

    – Möglichkeit die beiden Relaiskontakte auch potentialfrei zu betreiben
    – Möglichkeit die Opto-Eingänge anders zu dimensionieren, um mit ungefährlichen Steuerspanungen zu arbeiten. Geht natürlich auch wenn man andere Widerstände bestückt, aber man könnte es ja als Option/Lötbrücke vorsehen.

  5. Hallo Zusammen,

    Super Modul, und wirkt vom Design deutlich „sicherer“ als die Shelly alternativen.
    Allerdings stelle ich mir die Frage, ob ich meine Rolladen „Auto-Kalibrieren“ kann?
    Ich kenne es bisher nur so:
    Die Last (Power) wird gemessen, sobald keine Last mehr da, wird die Zeit von Lastbeginn zu Lastende gespeichert

    Basierend auf der Dauer könnte ich nun die Rolladen auf jedes beliebige Zeitintervall somit auf Teilöffnung / -schließung fahren.

    Ist das bei diesem Modul umgesetzt, bzw. gibt es eine Möglichkeit das Modul anderweitig in dieser Art zu nutzen?

    Danke vorab.

    Grüße
    Christian

    • Moin Christian,
      dieses Modul hat leider keine Last Messung, nur Schaltkontakte.
      Falls deine Motoren Endlagen Signale ausgeben könntest du diese mit den beiden Eingängen auswerten.
      Grüße
      Leo

  6. Hallo habe dein Projekt nachgebaut! Funktioniert soweit alles bestens bis auf ein eigenartiges Phänomen. Nach geringer Zeit ca. 2-5 min. Wenn man den Schalter betätigt hat, fängt es an sich selbstständig zu machen und schaltet in meinem Fall das Licht ständig aus und ein! Dies geschieht dann immer schneller. Woran könnte dies liegen!?

  7. Hi leo,

    Got info about the production being handled by Mr David.

    I contacted him in the for same. But i dont know your language. I know only english.

    May be i couldn’t explain to Mr. David my requirement because of this language.

    I need fully populated board 5 pieces.

    I need it to be delivered to United Arab Emitrates.

    Also how can i make payment for the same?

    Expecting a reply from someone who knows English and can be a mediator between us

    Thanks

    • Sanil Sahadevan

      Hi Leo / David.

      Mr David responded this comment and asked the requirement details. He had asked for the courier and payment possibilities for which i had replied in the same mail which i recieved in my mail id from Mr David. . But since then there has been no response again..

      Please respond

  8. Hallo Leo-Andres,

    sehr cooles Projekt!

    Wäre es eigentlich denkbar, den ESP8266 durch ein RFM69 Modul + direkt aufgelöteten Atmega328 zu ersetzen? Was wären dabei die größten Herausforderungen?

    VG Tom

  9. Moin, lese gerade in der aktuellen c‘t von Shelly und erinnerte mich sofort an dieses Projekt – ist Shelly ein osteuropäischer Klon?

    • Shelly1 ist ein Gefährliches Teil. Kein aber Brandgefährlich. Keine Galvanische Trennung. L(230V) auf dem DebugHeader der auch noch ohne das Gehäuse abzunehmen zugänglich ist. Und Abstände zwischen L und N betrügen oft weniger als 1mm.

      Wenn man L und N vertauscht. Brennt er beim Nutzen von SW ab.

  10. Hallo,
    sehr intersantes und professionell umgesetztes Projekt!
    Ich bin gerade dabei einen Sensor-Stecker zu bauen. Dieser soll mit einem DHT22 Luftfeuchtigkeit und Temperatur und mit einem MQ135 Sensor den CO2 Gehalt messen und via ESP8266 auf thingspeakt schicken und auf meinem Rasperry im Netzwerk auf einem MQTT-Server die Daten streamen.
    Das ganze hab ich mit einem ESP8266 wemos D1 mini umgesetzt. Jetzt will ich das ganze in ein 230V-Steckergehäuse einbauen, damit ich das einfach in die Steckdose stecke und los gehts.
    Bei der Suche nach einm 230V Netzteil bin ich auf dein Projekt gestoßen. Das Modul würde auch in ein Steckergehäuse passen. Meine Frage ist jetzt: Komme ich bei deinem Modul an einen digitalen Pin für den DHT22 und den analogen PIN für den MQ135-Sensor?
    Ich würde die Pins und alles andere (Spannung, GND,…) nach oben führen und mir einen andere Deckel drucken auf dem dann die Sensoren sind.

    Oder ist für mich eine andere Lösung einfacher (

    • Moin!
      Bei meiner Platine liegen ADC, UART Rx/Tx, I²C SDA/SCL und 3,3V Versorgung auf Stiftleisten am Platinenrand neben den Relais. Siehe auch die Screenshots vom Layout. Deine Projektidee könntest du damit also gut umsetzen 🙂

  11. Hallo ich hätte auch gerne 6 stück, was sollen die denn kosten? Auf jeden Fall ne super Sache und das was auf dem Markt fehlt.

  12. Hallo Leo,
    schöne Projekt, werde ich bestimmt mal nachbauen.
    Was mich aber sehr wunder ist der recht hohe Stromverbrauch.
    7,8mA bei 230V wären fast 1,8W. Wie wurde das gemessen? Sind hier vielleicht noch Blindanteile drin?
    Ein Wemos D1 verbraucht an 3,3V ca. 70mA, durch einen LDO dann auch an 5V = 0,35W. Ich glaube kaum, dass der AC/DC Wandler eine solch schlechte Effizienz hat, und die andere Peripherie wird auch nicht viel verbrauchen.
    Wäre schön wenn das geklärt würde, denn wenn hier 1,8W ist mir dauerhaft zuviel, wenn einige parallel laufen.

    Viele Grüße
    Tobi

    • Hallo Tobi,
      guter Einwand! Den Stromverbrauch habe ich mit einem einfachen True RMS Multimeter gemessen. Den Leistungsfaktor kann ich leider nicht bestimmen, bzw. habe ich auch kein „Energiekosten“ Messgerät was in dem winzigen Messbereich noch brauchbare Ergebnisse liefert.
      Viele Grüße
      Leo

      • Hi Leo,

        endlich kam ich mal dazu ein Modul aufzubauen und den Ruhestrom zu messen.
        Das Modul war voll bestückt und war im Wlan verbunden, Relais nicht angezogen und hatte eine Leistungsaufnahme von 0,4Watt, was voll ok ist. Wenn man die rote LED des Moduls noch herausnimmt, kann man einige zig Milliwat sparen. Klingt nicht viel, wenn man im Haus aber einige Module verbaut und die ständig gepowert sind, macht sich das schon bemerkbar.

        Danke für das tolle Projekt!

        Grüße

  13. Hallo,

    zwecks Rollosteuerung könnte ich in der Tat min. 13 gebrauchen.
    Softwareänderungen sind kein Thema, aber habe schlicht keine Möglichkeit die Platinen herstellen und bestücken zu lassen.

    Würde mich über Nachricht freuen.

    MfG,
    JP

  14. Hallo,
    Ich hätte auch gern 5 Stück.

  15. Ich würde auch 3 kaufen, wenn noch möglich.

  16. Hallo Zusammen,

    ist es möglich diese Platine auch als Rolladenaktor zu nutzen?

    Gruß

    • Zum Ansteuern des Aktors einer Rollade ist das Teil aber schon zu gebrauchen. Ausser der Rollomotor braucht mehr Strom als die Relais schalten können (was unwahrscheinlich ist)

      Die Firmware müsste man sicher noch etwas anpassen so das das Hoch und Runter kompfortabel gesteuert werden kann (bewegung solange man auf nen Button drückt, oder ganz auf/zu usw… da muss man sich was überlegen)

      • Hier wäre aber zu beachten, dass die Relais gegeneinander nicht mechanisch entkoppelt sind!!! Also Augen auf beim Programmieren, sonst wird es teuer…

  17. Hi,
    finde dein Projekt sehr interessant und habe es mir mal runtergeladen. Machst du sowas in der Richtung auch beruflich? Habe versucht den Schaltplan und die Bauteile zu verstehen, würde aber selber nie darauf kommen welche Bauteile ich hierfür bräuchte und verwenden sollte. Ich habe (bevor ich auf dein Projekt gestossen bin) schon selber mit dem ESP8266 und einem Relaisboard herumexperimentiert, wäre aber nie auf die Idee gekommen da noch einen Snubber oder eine Spannungsregelung einzubauen. Hast du auch Erfahrung bzw. ein paar Tipps für mich als Anfänger bezüglich SMD Löten?

  18. Besteht die Möglichkeit noch eelchè zu bestellen und wenn ja was würden Sie kosten

  19. Great project, anyone up for freelance work with some small modifications to this board, fully assemble and ship it to me?

  20. Hi,
    hier die Einlösung meines Versprechens:
    https://www.mikrocontroller.net/topic/454118
    Schade, dass dein Blog von Google höher priorisiert wird als diese eigentliche Seite.

  21. Hallo, ich würde auch gerne 4 Stück nehmen.
    Geht das noch?

  22. Hallo,
    wenn ich auch fünf Stück bekommen könnte, würde ich mich freuen.

  23. Hallo,

    hätte auch Interesse an ein paar Stück.

    Ist der Zug schon abgefahren?

    VG Thomas

  24. Da ich auch gerade massiv auf den 8266-Zug aufspringe, würde ich hier auch Interesse anmelden 🙂

  25. Bin auch an mehreren Exemplaren interessiert! Tolle Arbeit! 🙂

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert