Smarthome, Automatisierung, DIY-Projekte mit Elektronik, Sensoren, Aktoren und vieles mehr. Wer sich mit solchen Themen beschäftigt, wird früher oder später über das Stichwort ESP8266 stolpern. Der ESP8266 ist ein kleiner und kostengünstiger Mikrocontroller, der auf verschiedenen Entwicklerboards zum Einsatz kommt. Diese Boards, wie beispielsweise der beliebte D1 Mini, bieten nicht nur die nötige Hardware, um den ESP8266 zu betreiben, sondern auch Erweiterungsmöglichkeiten durch diverse Anschlüsse für Sensoren und Aktoren.
Produktempfehlungen und -suche in Verbindung mit dem Amazon Partnerprogramm:
¹ Angaben ohne Gewähr. Bei einem Kauf über den Link erhalten wir eine Provision.
Dank den verschiedenen Bauformen der Entwicklerboards und den freien Entwicklungswerkzeugen lässt sich der ESP8266 sehr einfach mit der Arduino IDE programmieren und für alle möglichen Anwendungen nutzen.
Ein entscheidender Vorteil der Entwicklerboards ist ihre Benutzerfreundlichkeit. Anders als bei vielen Mikrocontrollern kann der D1 Mini direkt über die integrierte microUSB-Schnittstelle mit dem PC verbunden und programmiert werden. Es sind keine zusätzlichen Programmiergeräte erforderlich.
Zum Kapitel springen Was wird benötigt
Zum Kapitel springen Hardware
Zum Programmieren eines ESP8266 D1 Mini sind die Anforderungen überraschend gering, was diesen Prozess für Einsteiger und Fortgeschrittene gleichermaßen zugänglich macht.
Als Hardwarekompontent benötigt man lediglich das ESP8266 D1 Mini Entwicklerboard und ein MicroUSB- oder USB C- Kabel zum Programmieren.
Die Art des Kabels hängt von deinem gewählten D1 Mini ab. Während es früher nur D1 Minis mit MicroUSB-Buchse gab, gibt es sie mittlerweile auch mit einer USB C-Buchse.
Achte darauf, dass es sich um ein USB-Kabel handelt, das sowohl Strom als auch Daten übertragen kann. Viele Kabel, die beispielsweise mit Smartphones geliefert werden, erfüllen diese Anforderung. Es gibt jedoch auch USB-Kabel, die ausschließlich zur Stromversorgung gedacht sind und keine Datenübertragung unterstützen. Diese sind ungeeignet für die Programmierung deines D1 Minis.
Zum Kapitel springen Software
Um deinen ESP8266 D1 Mini erfolgreich zu programmieren, sind zwei softwarebezogene Komponenten nötig: der passende Treiber für den CH340G-Chip und eine geeignete Entwicklungsumgebung.
Zum Kapitel springen Treiber
Der USB-to-Serial-Chip CH340G auf dem D1 Mini ist dafür verantwortlich, die Kommunikation zwischen dem Entwicklerboard und deinem Computer zu ermöglichen. Für die Nutzung dieses Chips ist es unerlässlich, den entsprechenden Treiber auf deinem Computer zu installieren. Ohne diesen Treiber kann der D1 Mini nicht von deinem Computer erkannt werden, was die Programmierung unmöglich macht.
Treiber für den CH340G sind weitgehend verfügbar und unterstützen die meisten Betriebssysteme, darunter Windows, macOS und Linux.
Zum Kapitel springen Download
Mirror: makesmart.net
Zum Kapitel springen Entwicklungsumgebung
Zusätzlich zum Treiber benötigst du eine Entwicklungsumgebung. Mit dieser schreibst du deinen Code, kompilierst ihn und lädst ihn anschließend auf den ESP8266. Die Arduino IDE ist eine beliebte Wahl unter Entwicklern: Sie unterstützt eine breite Palette von Mikrocontrollern, einschließlich des ESP8266.
Um mit der Arduino IDE zu arbeiten, musst du sie von der offiziellen Arduino-Website herunterladen und installieren. Die Einrichtung der Arduino IDE erfolgt im nächsten Schritt.
Zum Kapitel springen Entwicklungsumgebung einrichten
Die korrekte Einrichtung der Arduino IDE ist ein entscheidender Schritt, bevor du mit der Programmierung deines ersten ESP8266 D1 Mini beginnen kannst. Diese Vorbereitungen stellen sicher, dass die Entwicklungsumgebung mit allen notwendigen Werkzeugen und Bibliotheken ausgestattet ist, die du für deine Projekte benötigst.
Zum Kapitel springen Zugang zu zusätzlichen Boardverwalter-URLs
Navigiere im Menü der IDE zu folgendem Pfad:
Arduino IDE
└───Datei
└───Einstellungen...
In den Einstellungen findest du ein Feld für die „Zusätzlichen Boardverwalter-URLs“. Hier gibst du in die nächste freie Zeile die URL für das ESP8266 Boardverwalter-Paket ein:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Öffne den Link in deinem Browser um zu sehen, wie die Daten für die Arduino IDE bereitsgestellt werden.
Nach dem Eintragen der URL klickst du auf „OK“, um die Einstellungen zu speichern. Nun hat deine Arduino IDE zusätzliche Informationen zu den ESP8266 Boards. Das Paket für die Boards kann jetzt installiert werden.
Zum Kapitel springen Installation des ESP8266 Boardpakets
Für die Installation des notwendigen ESP8266-Pakets folge diesem Pfad im Menü der IDE:
Arduino IDE
└───Werkzeuge
└───Board
└───Board-Verwaltung...
Im Boardverwalter suchst du nach „ESP8266“ und installierst das Paket „ESP8266 Boards“. Dieser Schritt integriert alle gängigen ESP8266 Boards in die Arduino IDE und macht sie zur Auswahl bereit.
Mit der Installation des ESP8266-Boardpakets ist die Arduino IDE jetzt vollständig für die Programmierung von ESP8266 Modulen eingerichtet.
Das Setup bist hier ist eine einmalige Einrichtung. Nachdem du die Arduino IDE einmal konfiguriert hast, musst du diese Schritte in Zukunft nicht wiederholen. Deine Entwicklungsumgebung ist nun dauerhaft für Projekte mit dem ESP8266 D1 Mini oder anderen ESP8266-Boards vorbereitet. Du musst dich ab sofort nur noch um die Einstellungen und um dein Programm kümmern.
Zum Kapitel springen ESP8266 D1 Mini Einstellungen
Um den ESP8266 D1 Mini als zu programmierendes Board innerhalb der Arduino IDE auszuwählen, navigiere durch das Menü der IDE wie folgt:
Arduino IDE
└───Werkzeuge
└───Board
└───ESP8266 Boards
└───LOLIN(WEMOS) D1 R2 & mini
Durch diese Auswahl wird der ESP8266 D1 Mini als Zielplattform für deine Projekte in der Arduino IDE festgelegt.
Zum Kapitel springen Anpassungen
Sobald das Board ausgewählt ist, befinden sich die zugehörigen Einstellungen unter dem Menüpunkt Werkzeuge
.
Verschiedene Boards erfordern unterschiedliche Einstellungen, aber die Standardparameter für den ESP8266 D1 Mini sind in der Regel wie folgt vordefiniert:
- Flash Size: Die Größe des verfügbaren Speichers für Programme:
4MB (FS:2MB OTA:~ 1019KB) - CPU Frequency: Die Taktfrequenz des ESP8266:
80 MHz - Upload Speed: Die Geschwindigkeit, mit der Daten zum Board übertragen werden:
921600 - Erase Flash: Was beim Hochladen alles gelösöscht werden soll:
Only Sketch
Diese Parameter sind für den Start in der Regel optimal eingestellt und benötigen keine Anpassung. Lediglich der Port über den der D1 Mini mit dem Computer verbunden ist muss immer mal wieder angepasst werden.
- Unter Windows wird der Port in der Form „COMx“ angezeigt, z.B. „COM5“.
- Unter MacOS und Linux erscheint der Port als /dev/tty-Gerät, beispielsweise /dev/tty.usbserial.
Zum Kapitel springen Das erste Programm
Und was macht es? - Es leuchtet blau.
Nachdem du die Arduino IDE erfolgreich eingerichtet hast, ist es an der Zeit, ein einfaches Programm zu testen, um sicherzustellen, dass alles reibungslos funktioniert. Ein guter Startpunkt ist das klassische Blink-Programm. Dieses einfache Beispiel lässt die blaue On-Board-LED des D1 Mini im Sekundentakt blinken. Du findest das Blink-Programm in der Arduino IDE unter:
Arduino IDE
└───Datei
└───Beispiele
└───01.Basics
└───Blink
Um das Programm auf deinen D1 Mini hochzuladen, klicke auf den Pfeil in der oberen linken Ecke der Arduino IDE. Wenn alles richtig eingerichtet ist, wirst du nach dem Kompilieren und Hochladen sehen, wie die blaue LED auf dem D1 Mini anfängt, im Sekundentakt zu blinken.
Zum Kapitel springen Blink.ino
/*
Blink
Turns an LED on for one second, then off for one second, repeatedly.
Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO
it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to
the correct LED pin independent of which board is used.
If you want to know what pin the on-board LED is connected to on your Arduino
model, check the Technical Specs of your board at:
https://www.arduino.cc/en/Main/Products
modified 8 May 2014
by Scott Fitzgerald
modified 2 Sep 2016
by Arturo Guadalupi
modified 8 Sep 2016
by Colby Newman
This example code is in the public domain.
https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink
*/
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
Zum Kapitel springen Blaues Licht
Das Blinken der blauen LED ist nicht nur ein visuelles Feedback. Es ist auch der erste Schritt in die faszinierende Welt der Elektronik- und Mikrocontroller-Projekte.
Ein wichtiger Aspekt dabei ist, dass das Programm auf dem ESP8266 D1 Mini gespeichert bleibt und unabhängig von einem angeschlossenen PC funktioniert. Sobald du den D1 Mini mit einem USB-Kabel an eine Stromquelle anschließt, beginnt die LED zu blinken, selbst wenn der D1 Mini nicht mehr mit deinem Computer verbunden ist.