Arduino Uno per ESP8266 WiFi-Modul und Blynk App steuern
Komponenten und Zubehör
| Arduino UNO | × | 1 |
| Espressif ESP8266 ESP-01 | × | 1 |
| SparkFun USB zu Serial Breakout - FT232RL | × | 1 |
| Linear Regler (Low Dropout) | × | 1 |
| Schiebeschalter | × | 1 |
| SparkFun Drucktaster 12mm | × | 1 |
| Jumper Kabel (generic) | × | 1 |
| Steckbrett (generic) | × | 1 |
Apps und Online-Dienste
- Arduino IDE
- Blynk
- ESP8266 Flasher Tool
Projektbeschreibung
Einführung
Dieses Projekt ermöglicht die Steuerung der Arduino-Pins über das ESP8266-01 WiFi-Modul und die Blynk App. Die Blynk App ist sehr benutzerfreundlich und eignet sich hervorragend als Einstieg in das Internet der Dinge (IoT).
Schritt 1: Alles besorgen
Folgende Dinge werden benötigt. Am besten alles vorab in einem Ordner ablegen:
- Arduino IDE: https://www.arduino.cc/en/Main/Software
- Blynk Libraries (neueste Version): https://github.com/blynkkk/blynk-library/releases
- ESP8266 Flasher Tool: https://os.mbed.com/media/uploads/sschocke/esp_flasher.zip
Schritt 2: Arduino IDE und Libraries installieren
Die neueste Version der Arduino IDE installieren.
Arduino IDE öffnen und zu Datei → Voreinstellungen gehen. In das Feld "Zusätzliche Boardverwalter-URLs" folgende Adresse eingeben: https://arduino.esp8266.com/stable/package_esp8266com_index.json
Zu Werkzeuge → Board → Boardverwalter gehen und das esp8266-Paket ganz unten installieren (optional).
Die Blynk Library ZIP-Datei entpacken und den Inhalt des Library-Ordners in folgenden Pfad kopieren:
Benutzer/Dokumente/Arduino/Libraries
Schritt 3: ESP8266 Firmware flashen
Für das Flashen der Firmware auf den ESP8266 muss die folgende Schaltung aufgebaut werden:
Wichtiger Hinweis: In vielen Foren wird beschrieben, dass der ESP8266 auch ohne FTDI USB-zu-TTL-Wandler geflasht werden kann – stattdessen wird oft der Arduino UNO verwendet. Aus eigener Erfahrung ist es jedoch besser, einen FTDI USB-zu-TTL-Wandler/Kabel zu kaufen, da die Arduino-Methode bei mir nicht funktionierte (wahrscheinlich wegen Stromversorgungsproblemen).


- Die Datei
esp_flasher.zipentpacken und die AnwendungXTCOM_UTILstarten. - ESP8266-01 über die Schaltung mit dem Computer verbinden. Den richtigen COM-Port im Geräte-Manager unter "Anschlüsse (COM & LPT)" ermitteln und notieren.
- In XTCOM_UTIL zu Tools → Config Device gehen, den richtigen COM-Port und Baudrate 9600 auswählen. Auf "Open" klicken. Bei Erfolg auf "Connect" klicken – der ESP8266 wird verbunden. Bei Fehler: Kabel abziehen und wieder anstecken.
- In der entpackten Datei liegt eine readme.txt mit den Adressen für die .bin-Dateien.
- Zu API Test → Flash Image Download gehen. Die passende .bin-Datei auswählen, die zugehörige Adresse eingeben und auf "Download" klicken.
Beispiel:boot_v1.1.bin → 0x00000 - Nach erfolgreichem Vorgang XTCOM_UTIL schließen und ESP8266 abstecken (zwischen jedem .bin-File wiederholen). XTCOM_UTIL erneut öffnen, ESP8266 anstecken und die Schritte für alle 4 .bin-Dateien an ihren korrekten Adressen wiederholen.
- Wichtig: GPIO0 während des gesamten Flash-Vorgangs auf GND legen.
Ausführliche Anleitung: ESP8266 Firmware Update Wiki
Schritt 4: AT-Befehle
Für AT-Befehle die Arduino IDE öffnen, während der ESP8266 noch verbunden ist. Nur den richtigen Port unter Werkzeuge auswählen (Board ist egal).
Baudrate auf 115200 setzen und AT-Befehle eingeben.
Testbefehl: AT → Antwort muss OK sein.
In den Station-Modus wechseln: AT+CWMODE=1
Schritt 5: Blynk App einrichten
- Blynk App aus dem Play Store herunterladen und anmelden.
- Neues Projekt über das +-Symbol erstellen.
- Projektname vergeben.
- Gerät: "Arduino UNO" wählen.
- Verbindungstyp: "WiFi" → Erstellen.
- Ein Auth Token wird an die registrierte E-Mail gesendet (später auch in Projekteinstellungen → Geräte abrufbar).
- Button hinzufügen: + → Button.
- Button bearbeiten: Namen geben, Pin auf "Digital D13" setzen.
- Modus auf "SWITCH" stellen – schaltet die eingebaute LED am Arduino.
- Für andere Pins im Bearbeitungsmenü den gewünschten Pin wählen (D3, D4, …).
Schritt 6: Programm
Arduino IDE öffnen. Board auf "Arduino Uno" und richtigen Port einstellen.
Folgenden Code kopieren und in die Arduino IDE einfügen:
/*************************************************************
* Blynk Library: https://github.com/blynkkk/blynk-library/releases/latest
* Blynk ermöglicht Steuerung von Arduino, Raspberry Pi etc. über Internet.
* Drag-and-Drop Widgets für grafische Oberflächen.
* Downloads, Docs, Tutorials: https://www.blynk.cc
* Sketch Generator: https://examples.blynk.cc
* Community: https://community.blynk.cc
* Lizenz: MIT
*************************************************************
* Beispiel: ESP8266 Shield (AT-Firmware) mit Blynk verbinden.
* ACHTUNG: Etwas tricky zum Laufen zu bringen.
* Artikel lesen: https://help.blynk.cc/hardware-and-libraries/arduino/esp8266-with-at-firmware
* WiFi SSID, Passwort, Blynk Auth Token anpassen.
*************************************************************/
#define BLYNK_PRINT Serial
#include <ESP8266_Lib.h>
#include <BlynkSimpleShieldEsp8266.h>
// Auth Token aus Blynk App (Projekteinstellungen → Nuss-Symbol)
char auth[] = "yourAUTH";
// WiFi-Zugangsdaten
char ssid[] = "yourSSID";
char pass[] = "yourpassword";
// Hardware Serial auf Mega, Leonardo, Micro...
// #define EspSerial Serial1
// Software Serial auf Uno, Nano...
// #include <SoftwareSerial.h>
// SoftwareSerial EspSerial(2, 3); // RX, TX
// ESP8266 Baudrate
#define ESP8266_BAUD 115200
ESP8266 wifi(&Serial);
void setup() {
Serial.begin(9600);
delay(10);
Serial.begin(ESP8266_BAUD);
delay(10);
Blynk.begin(auth, wifi, ssid, pass);
}
void loop() {
Blynk.run();
}
Dies ist eine Anpassung des Esp8266_Shield-Beispiels.
yourAUTHdurch den per E-Mail erhaltenen Auth Token ersetzen.yourSSIDdurch den WLAN-Namen ersetzen.yourpassworddurch das WLAN-Passwort ersetzen.- Hardware Serial ist auskommentiert (wir nutzen Arduino UNO).
- Empfehlung: Software Serial auskommentieren (instabil). Stattdessen:
ESP8266 wifi(&EspSerial);→ESP8266 wifi(&Serial);
EspSerial.begin(ESP8266_BAUD);→Serial.begin(ESP8266_BAUD);
Programm auf den Arduino Uno hochladen. Danach Arduino vom Computer trennen und ESP8266 mit Arduino UNO verbinden.
Schritt 7: Schaltungsaufbau

| ESP8266 | → | Arduino |
|---|---|---|
| TX | → | Rx |
| Rx | → | Tx |
| GND | → | GND |
| VCC | → | 3.3V |
| CH_PD | → | 3.3V |
Nach dem Verbinden Arduino an den Computer anschließen.
Seriellen Monitor öffnen, Baudrate auf 115200 setzen.
Es sollte eine Ausgabe wie folgt erscheinen:

In der Blynk App das Projekt auswählen und auf den Play-Button klicken.
Den Button drücken, um die LED ein-/auszuschalten.
Damit ist das Projekt abgeschlossen. Viel Spaß beim Nachbauen!
Fragen oder Anregungen gerne in die Kommentare.
Danke!
Herstellungsprozess
- Universelle Android-Fernbedienung mit Arduino, 1Sheeld & IR-Steuerung
- Intelligentes Voltmeter mit Arduino & Smartphone bauen – Einfaches DIY-Projekt
- Fernsteuerung eines Roboterarms per IoT: Eigenbau mit Arduino MKR1000
- Smart IoT-Glas bauen: Füllstand überwachen mit ESP8266, Arduino & Ultraschall
- Frequenz & Tastverhältnis präzise messen mit Arduino UNO
- Arduino UNO WiFi Webserver: LED per Browser steuern
- Arduino Rover per Firmata & Xbox One Gamepad steuern
- Stufenlose LED-Helligkeitssteuerung mit Bolt IoT und Arduino UNO
- u-blox LEA-6H 02 GPS-Modul: Arduino & Python Integrationsanleitung
- WLAN-Türschloss mit Arduino & ESP8266 – Per Smartphone entsperren