In diesem Blogbeitrag möchte ich dir zeigen, wie du mit einer recht simplen Schaltung dir eine Alexa gesteuerte Steckdose mit einem ESP8266 bauen kannst.
In dem Beitrag NodeMCU Dev Kit mit Amazon Alexa steuern habe ich dir bereits gezeigt, wie du die LEDs am NodeMCU Dev Kit steuern kannst.
Sicherheitshinweise
Wenn du das Beispiel aus diesem Beitrag nachbauen möchtest, arbeitest du mit der Netzspannung von 230V, diese ist gefährlich und daher solltest du die 5 Sicherheitsregeln beim Umgang mit Strom berücksichtigen.
- Freischalten
- Gegen Wiedereinschalten sichern
- Spannungsfreiheit feststellen
- Erden und kurzschließen
- Benachbarte unter Spannung stehende Teile abdecken oder Abschranken
In diesem Beitrag verwende ich einen Schukostecker, welcher mit einer Steckdose und einem Relais verbunden wird daher wird die Schaltung zunächst Spannungsfrei aufgebaut und programmiert. Mit einem Durchgangsmessgerät wie dem Voltcraft ME-42 kann man recht einfach testen, ob ein Kurzschluss besteht bzw. ob die Schaltung funktioniert, aber dazu später mehr.
Benötigte Ressourcen für eine Alexa gesteuerte Steckdose mit einem ESP8266
Für den Aufbau der Schaltung benötigst du einige Bauteile und etwas Werkzeug um die Kabel anzuschließen.
Bauteile
- eine Schuko-Steckdose,
- einen Schukostecker
- ca. 1 m Kupferkabel,
- Installationkabel NYM 3×1,5 mm*, oder besser
- PVC Schlauchleitung H05VV-F 3G1,5 mm
- Kreuzschrauben,
- ein Holzbrett,
- einen ESP8266 zbsp. den Wemos D1 mini**
- ein Relaisshield,
- diverse Breadboardkabel
* Das Installationskabel ist sehr starr und daher nicht so gut geeignet daher würde ich zur flexiblen Schlauchleitung greifen.
** In der nachfolgenden Schaltung verwende ich den Wemos D1 mini, dieser hat den Vorteil das man das Relaisshield direkt draufstecken kann und somit etwas Verkabelung entfällt.
Werkzeuge
- Schlitzschraubendreher & Kreuzschraubendreher,
- Phasenprüfer,
- Messgerät mit akustischer Durchgangsmessung,
- Seitenschneider,
- Entmantler / Abisolierzange
Bei der Verwendung von flexiblem Kabel empfehle ich dir die Kontakte mit Adernendhülsen zu versehen, dazu benötigst du:
- eine Adernendhülsenzange, sowie
- Adernendhülsen in entsprechender Stärke
Alternativ kannst du die Adern auch verdrehen und mit
- einem Lötkolben (min. 15 Watt),
- etwas Lötzinn und
- etwas Lötfett
verzinnen (so ich es im Video mache).
Aufbau der Schaltung
Für den Wemos D1 Mini gibt es ein passendes Relaisshield welches recht einfach auf diesen gesteckt werden kann.
Alternativ gibt es Relaisshields welche über Breadboardkabel angeschlossen werden können aber genauso gut funktionieren.
In der Schaltung habe ich ein externes Relaisshield verwendet und an den digitalen Pin D1 angeschlossen. Wenn du das Relaisshield für den Wemos D1 Mini verwendest, so wird dieses über die Pins auch an den Pin D1 verbunden.
Video
In dem nachfolgenden Video zeige ich dir Schritt für Schritt wie ich die Schaltung aufgebaut habe.
Programmierung der Alexa gesteuerten Steckdose mit einem ESP8266
Das Programm / der Sketch ist sehr ähnlich, welchen ich bereits im Beitrag NodeMCU Dev Kit mit Amazon Alexa steuern gezeigt habe. In diesem genannten Beitrag steuere ich die interne BUILD_IN LED per Sprache über einen Amazon Echo Dot. Und ob nun eine LED per “digitalWrite” aktiviert /deaktiviert wird oder ein Relais, das stört den Mikrocontroller sehr wenig. (Einzig der Sprachbefehl ist ein wenig anders.)
#include <Arduino.h> #include <ESP8266WiFi.h> #include "fauxmoESP.h" #define WIFI_SSID "..." #define WIFI_PASS "..." fauxmoESP fauxmo; //Das Relaisshield zum Wemos D1 Mini ist am //digitalen Pin D1 angeschlossen #define RELAIS D1 //Bezeichnung des Gerätes in der Alexa App #define ID_PLUG "Steckdose" void wifiSetup() { WiFi.mode(WIFI_STA); Serial.printf("[WIFI] Connecting to %s ", WIFI_SSID); WiFi.begin(WIFI_SSID, WIFI_PASS); while (WiFi.status() != WL_CONNECTED) { Serial.print("."); delay(100); } Serial.println(); Serial.printf("[WIFI] STATION Mode, SSID: %s, IP address: %s\n", WiFi.SSID().c_str(), WiFi.localIP().toString().c_str()); } void setup() { Serial.begin(115200); Serial.println(); Serial.println(); pinMode(RELAIS, OUTPUT); Serial.println("Hallo"); wifiSetup(); fauxmo.createServer(true); // not needed, this is the default value fauxmo.setPort(80); // This is required for gen3 devices fauxmo.enable(true); fauxmo.addDevice(ID_PLUG); fauxmo.onSetState([](unsigned char device_id, const char * device_name, bool state, unsigned char value) { Serial.printf("[MAIN] Device #%d (%s) state: %s value: %d\n", device_id, device_name, state ? "ON" : "OFF", value); if (strcmp(device_name, ID_PLUG)==0) { digitalWrite(RELAIS, state ? LOW : HIGH); } }); } void loop() { fauxmo.handle(); static unsigned long last = millis(); if (millis() - last > 5000) { last = millis(); Serial.printf("[MAIN] Free heap: %d bytes\n", ESP.getFreeHeap()); } }
Video
In den Videos zeige ich dir zunächst wie das Sketch auf den ESP8266 (Wemos D1 Mini) aufgespielt wird und das neue Gerät in dem Amazon Echo Dot eingerichtet wird. Danach wird per Sprache die Steckdose aktiviert bzw. deaktiviert.
upload des Sketches und einrichten in Alexa
aktivieren / deaktivieren der Steckdose per Sprachbefehl
Fazit
In diesem Beitrag habe ich dir gezeigt, wie du recht einfach eine Steckdose per Sprachbefehl über einen Amazon Echo Dot steuern kannst. Für dieses Beispiel habe ich einen Wemos D1 Mini verwendet, auf welchen ein Modul mit genau einem Relais gesteckt werden kann. Solltest du mehrere Verbraucher schalten wollen, so kannst du Module mit 1, 2, 4, 8, 16 Relais auf ebay.de für recht wenig Geld* finden.
Hinweis von mir: Die mit einem Sternchen (*) markierten Links sind Affiliate-Links. Wenn du über diese Links einkaufst, erhalte ich eine kleine Provision, die dazu beiträgt, diesen Blog zu unterstützen. Der Preis für dich bleibt dabei unverändert. Vielen Dank für deine Unterstützung!
Wahnsinn was alles möglich ist!
Gratuliere sehr gute Videos!
Beste Grüsse
Leo
Das finde ich auch super erklärt, dass Video verstehe sogar ich.
Danke das werde ich ausprobieren.
LG
Echt großartig heutzutage, was alles möglich ist. Trotzdem sollte man sich nur mit dem nötigen technischen Verständnis heranwagen.
Gruß Steffen
Vielen Dank für den Einblick. So einfach kann das sein 😉
Vielen dank für diese Interessante Seite. Das ist schon Verrückt was alles so möglich ist ! Das Video ist auch super erklärt. Echt Top ! Bleibt Gesund.
Wow, einfach klasse die Anleitung. Trotzdem sollte man sich lieber vorher etwas damit beschäftigen, damit auch gar nichts schief geht. Da steckt doch schon etwas Arbeit drin, damit alles reibungslos funktioniert. Es gibt doch auch so etwas zu kaufen, oder? Es könnte bei unsachgemäßem Einbau ein Kurzschluss entstehen, da fährt man mit einem gekauften Exemplar vielleicht sicherer? Aber großartig die Möglichkeiten mal zu sehen.
Danke. Das Video kann ich auch verstehen. Obwohl ich nicht so technikaffin bin.
Endlich jemand der mit den neuen Bibliotheken arbeitet und so Alexa das Modul erkennt.
SUPER !
Lange danach gesucht.
Jetzt noch eine Kombination aus diesem Projekt und WS2812b RGB LED Ansteuerung.
PERFEKT
Danke
Hallo, super Anleitung nur fehlen mir für den Nachbau die Details.
Bei mir erkennt Alexa den Arduino als Lampe und nicht aus Relais bzw. Schalter.
Hast du da Erfahrungen?
Aber trotzdem VIELEN DANK für die Anleitung.
Hi,
vielen Dank für dein Kommentar.
Leider weiß ich nicht genau was du meinst. In wie weit wird das Gerät als “Lampe” erkannt?
Kannst du mir ein Screenshot senden so das ich das Problem etwas genauer erkennen kann?
Gruß,
Stefan
Interessante und Detailierte Beschreibung.
vielen Dank.
Guten Abend Hr. Draeger,
die Anleitungen zur Steuerung des D1 Mini mit Alexa (LED und Steckdose) sind spitze und sehr gut nachvollziehbar.
Leider findet Alexa (sowohl per Sprachaufruf, als auch per App) jeweils den D1 Mini nicht.
Ich verwende Ihr identisches Programm und der Router zeigt den D1 Mini an, nur Alexa (Echo Dot Gen. 3) tut nix 🙁
Ich habe mir nun schon viele Nächte um die Ohren gehauen um das an’s Laufen zu bringen – leider erfolglos. Ich hoffe Sie können mir weiterhelfen.
Vielen Dank vorab und viele Grüße
André
Hallo Herr F.
vielen Dank für den Kommentar und das Lob.
Gibt es bereits ein Gerät mit dem Namen im Netzwerk?
Wurden Umlaute oder Sonderzeichen verwendet?
Ggf. können Sie mir Ihr Sketch an meine E-Mail Adresse info@draeger-it.blog senden.
Gruß,
Stefan Draeger
Hallo Stefan,
eine sehr kompetente Erklärung für technische Laien.
Vielen Dank
Hallo, sehr schöne Anleitung,
vor allem finde ich gut, auch die lebenswichtigen 5 (Sicherheitsregeln) hier zu sehen.