In diesem Thema möchte ich, wie in einer Art Blog, meine Bemühungen dokumentieren, den ESP8266 zu verstehen und anwenden zu können.
Der ESP8266 ist sehr einfach ausgedrückt ein kleiner Mikrokontroller, der einmal die reine Verarbeitungseinheit CPU beinhaltet und mit einer kleinen 2,4 GHz Antenne über WLAN mit der Aussenwelt kommunizieren kann. Der Programmspeicher ist je nach Modell ein kleiner Extrachip oder in dem Blechgehäuse integriert. Die Bezeichnung ESP8266 hat sich dabei zu einem Synonym für eine Vielzahl von fertigen Platinen entwickelt, an die man sehr einfach eine externe Beschaltung, wie z.B. digitale Sensoren, anschließen kann und der idR. auch einen Micro-USB Anschluß besitzt, über den man diese Baugruppe bequem per PC programmieren und abfragen kann. Das verhält sich so ähnlich wie beim Arduino, den es ebenfalls in vielen Erscheinungsformen gibt.
Der ESP8266 quasi nackt
Der ESP8266 ganz minimalistisch mit nur wenigen Anschlußpins
Und hier als Entwicklerplatine bereits mit USB-Stecker und auf Pfostenstecker herausgeführte Anschlüsse
Und nochmal im Vergleich
Der offensichtlichste Unterschied zwischen den beiden Familien sind die Leistungsfähigkeit, zur Verfügung stehender Speicher, die WLAN-Fähigkeit und dass beim ESP8266 nur ein analoger Eingang vorhanden ist, der ADC0. Ansonsten hat man mehrere digitale Ein/Ausgänge, die sich GPIO nennen und nur mit 3,3 V zurechtkommen und nicht wie bei vielen Adruinos, mit 5V. Außerdem haben nicht alle digitalen Ports bereits intern vorhandene Pull-Up oder Pull Down Widerstände. Einige schon, doch das ist ein Thema für sich.
Beiden gemein ist die Möglichkeit sie über die Arduino Programmierumgebung programmieren zu können. Der ESP8266 erfeut sich zudem bei den Freunden für Heimautomatisierung größter Beliebtheit.
Vom ESP8266 habe ich zuerst von einem Kollegen gehört, der darüber in höchsten Tönen geschwärmt hat und mir von alternativen Betriebsystem und Programmierumgebungen usw. erzählte. Das hat mich Anfangs sehr verwirrt und ich habe nur Bahnhof verstanden.
Nähert man sich diesem Modul aber etwas langsamer und behutsamer, fällt auf, dass man es bei der Programmiereung eigentlich wie einen Arduino händeln kann. Er kennt so ziemlich dieselben Befehle und das Überspielen eines Programms geht genau so schnell.
Lässt man die WLAN-Fähigkeit außen vor, hat man quasi einen Arduino.
Um damit tatsächlich arbeiten zu können und die WLAN-Fähigkeit nutzen zu können, sollte man in einfachen Schritten vorgehen.
Man benötigt im einfachsten Fall ein ESP8266 Modul, das möglichst angelötete Pins besitzt und einen Micro-USB Anschluß. Dann sollte man sich die Arduino-Programmierumgebung auf dem PC installieren und der Programmierumgebung diesen neuen "Prozessortyp" bekannt machen. Wie das geht, dazu gibt es jede Menge Seiten, die das sehr gut erklären. Zum Beispiel auf heise.de.
Nicht zu vergessen sei die Installation eines passenden USB-Treibers, damit der PC den ESP auch "sehen" und bedienen kann. Den Treiber findet man unter dem Namen CH340, oder man guckt gleich beim Makershop.
Damit hat man eigentlich die erste Hürde überwunden und kann mit dem ersten Simpelprogramm starten, das in der Regel das Blinkenlassen der auf dem Bord angebrachten blauen LED ist.
Das erstmal das Wichtigste für den Anfang. Sobald ich anfange damit zu fummeln schreibe ich mehr, dabei gehe ich wieder absichtlich nicht auf alle möglichen Feinheiten ein und konzentriere mich darauf, alles so einfach wie möglich zu halten, aber die wichtigsten Sachen nicht zu unterschlagen. Es gibt unzählige Seiten, da schreiben Leute, die viel besser sind als ich und viel mehr davon verstehen, leider setzen die bei ihren Erklärungen nicht selten ein gewissen Wissen in vielen Bereichen voraus, oder die Kenntnis, was verschiedene Abkürzungen bedeuten.
Der ESP8266 ist sehr einfach ausgedrückt ein kleiner Mikrokontroller, der einmal die reine Verarbeitungseinheit CPU beinhaltet und mit einer kleinen 2,4 GHz Antenne über WLAN mit der Aussenwelt kommunizieren kann. Der Programmspeicher ist je nach Modell ein kleiner Extrachip oder in dem Blechgehäuse integriert. Die Bezeichnung ESP8266 hat sich dabei zu einem Synonym für eine Vielzahl von fertigen Platinen entwickelt, an die man sehr einfach eine externe Beschaltung, wie z.B. digitale Sensoren, anschließen kann und der idR. auch einen Micro-USB Anschluß besitzt, über den man diese Baugruppe bequem per PC programmieren und abfragen kann. Das verhält sich so ähnlich wie beim Arduino, den es ebenfalls in vielen Erscheinungsformen gibt.
Der ESP8266 quasi nackt
Der ESP8266 ganz minimalistisch mit nur wenigen Anschlußpins
Und hier als Entwicklerplatine bereits mit USB-Stecker und auf Pfostenstecker herausgeführte Anschlüsse
Und nochmal im Vergleich
Der offensichtlichste Unterschied zwischen den beiden Familien sind die Leistungsfähigkeit, zur Verfügung stehender Speicher, die WLAN-Fähigkeit und dass beim ESP8266 nur ein analoger Eingang vorhanden ist, der ADC0. Ansonsten hat man mehrere digitale Ein/Ausgänge, die sich GPIO nennen und nur mit 3,3 V zurechtkommen und nicht wie bei vielen Adruinos, mit 5V. Außerdem haben nicht alle digitalen Ports bereits intern vorhandene Pull-Up oder Pull Down Widerstände. Einige schon, doch das ist ein Thema für sich.
Beiden gemein ist die Möglichkeit sie über die Arduino Programmierumgebung programmieren zu können. Der ESP8266 erfeut sich zudem bei den Freunden für Heimautomatisierung größter Beliebtheit.
Vom ESP8266 habe ich zuerst von einem Kollegen gehört, der darüber in höchsten Tönen geschwärmt hat und mir von alternativen Betriebsystem und Programmierumgebungen usw. erzählte. Das hat mich Anfangs sehr verwirrt und ich habe nur Bahnhof verstanden.
Nähert man sich diesem Modul aber etwas langsamer und behutsamer, fällt auf, dass man es bei der Programmiereung eigentlich wie einen Arduino händeln kann. Er kennt so ziemlich dieselben Befehle und das Überspielen eines Programms geht genau so schnell.
Lässt man die WLAN-Fähigkeit außen vor, hat man quasi einen Arduino.
Um damit tatsächlich arbeiten zu können und die WLAN-Fähigkeit nutzen zu können, sollte man in einfachen Schritten vorgehen.
Man benötigt im einfachsten Fall ein ESP8266 Modul, das möglichst angelötete Pins besitzt und einen Micro-USB Anschluß. Dann sollte man sich die Arduino-Programmierumgebung auf dem PC installieren und der Programmierumgebung diesen neuen "Prozessortyp" bekannt machen. Wie das geht, dazu gibt es jede Menge Seiten, die das sehr gut erklären. Zum Beispiel auf heise.de.
Nicht zu vergessen sei die Installation eines passenden USB-Treibers, damit der PC den ESP auch "sehen" und bedienen kann. Den Treiber findet man unter dem Namen CH340, oder man guckt gleich beim Makershop.
Damit hat man eigentlich die erste Hürde überwunden und kann mit dem ersten Simpelprogramm starten, das in der Regel das Blinkenlassen der auf dem Bord angebrachten blauen LED ist.
Das erstmal das Wichtigste für den Anfang. Sobald ich anfange damit zu fummeln schreibe ich mehr, dabei gehe ich wieder absichtlich nicht auf alle möglichen Feinheiten ein und konzentriere mich darauf, alles so einfach wie möglich zu halten, aber die wichtigsten Sachen nicht zu unterschlagen. Es gibt unzählige Seiten, da schreiben Leute, die viel besser sind als ich und viel mehr davon verstehen, leider setzen die bei ihren Erklärungen nicht selten ein gewissen Wissen in vielen Bereichen voraus, oder die Kenntnis, was verschiedene Abkürzungen bedeuten.
Zuletzt bearbeitet: