ESP8266 mit Programmieradapter sehr einfach programmieren / flashen

  • Im Prinzip passt dieses Projekt ebenso gut in das Mikrocontroller Unterforum, aber weil es ein Projekt ist, habe ich es hier gepostet.


    Wer nicht weiss, was für eine geniale Entwicklung das etwa 2 Euro teure ESP8266-01 Board ist, der sollte sich hier einlesen. Kurz gesagt ist ein ein Mikrocontroller mit Speicher und Wlan auf der Fläche von nur 14x25mm. Damit lassen sich unglaublich viele Projekte umsetzen, bei denen es bisher an einer stromsparenden Wlan-Funktion fehlte. Von der Funksteckdose bis zur Wetterstation ist alles möglich.


    Als ich auf den ESP8266-01 aufmerksam wurde, habe ich mir gleich mal angeschaut, wie er angeschlossen wird. Die Verkabelung ist für Anfänger etwas aufwändig, zumal sie für die Programmierung anders ist als während des Betriebs. Hinzu kommt noch, dass der ESP nicht direkt über USB programmiert werden kann, sondern nur über einen USB-TTL-Adapter. Dieser widerum liefert aber nicht genug Strom, damit der ESP läuft. Erschwerend kommt dann noch hinzu, dass der Betrieb und die Programmierung mit 3,3V statt den USB typischen 5V läuft. All diese Notwendigkeiten haben schon den einen oder anderen ESP gehimmelt, da er falsch angeschlossen wurde.


    Aus diesem Grund habe ich einen Adapter entwickelt, der all diese Probleme lösen soll. Der Adapter sollte möglichst kompakt aber trotzdem multifunktional sein. Es sollten so wenig Kabel wie möglich notwendig sein und er sollte anwenderfreundlich gestaltet sein.


    Der Adapter hat folgende Eigenschaften:


    - der USB-TTL-Adapter ist direkt auf der Platine verlötet
    - es führt nur ein einziges USB-Kabel zum Adapter (USB vom PC)
    - über eine kleine Leiste ist es möglich, sowohl auf die beiden GPIO als auch 3,3V und GND zugreifen zu können
    - über die beiden Taster ist es möglich, den ESP zu programmieren und zu reseten
    - über 4 Bohrungen in den Ecken ist es möglich, den Programmieradapter fest zu montieren
    - damit der ESP beim Aufstecken nicht abknickt, wurde ein "Abstandshalter" installiert
    - sollte jemand die Pinleiste des ESP wie im Projekt RasPiPo2 erweitern wollen, so ist ein Aufstecken auf den Adapter trotzdem noch möglich, da nach rechts Platz dafür gelassen wurde.



    Um auch die beiden sehr gängigen Typen ESP8266-07 und ESP8266-12(E) nutzen zu können, habe ich eine weitere Adapterplatine erstellt, auf die der Typ 07, bzw. 12(E) installiert werden kann. Über die Pinleisten ist das Rastermaß auf gängige 2,56mm geändert und ein Zugriff auf die GPIOs möglich. Durch die auf der Unterseite der Platine anlötbare Pinleiste wird diese Adapterplatine auf den Programmieradapter gesteckt und kann damit genau so genutzt werden wie das Modell ESP826-01. Die Bohrungen für die Pinleiste sind so gewählt, dass eine Nutzung auch möglich ist, ohne die Pinleiste anlöten zu müssen. So könnte man diese nach der Programmierung wieder entfernen, wodurch die Platine von unten wieder relativ plan aufliegen kann.


    Zusätzlich wurde eine Platine entwickelt, die dazu gedacht ist, den ESP8266-12(E) mit der notwendigen 3,3V Spannung zu versorgen und mit diesem dann in das entsprechende Projekt eingebaut zu werden.


    Ich habe noch einige der Platinen hier liegen. Da die Bauteile für die Entwicklungsphase mehrfach bestellt wurden, könnte ich auch ein oder zwei "Bausätze" abgeben. Bei Interesse bitte PN.


    Benötigte Komponenten:


    - Warenkorb reichelt
    - USB-TTL Adapter



    edit 22.09.2015: Die Platine der Version 2.0 ist inzwischen bestückt. Sobald die Software fertig ist, werde ich diese vorstellen.
    edit 05.10.2015: Die Version 2.0 ist hier zu finden

  • Super Sache :bravo2:


    Ich warte immer noch auf meine ESP8266's aus China, sobald diese da wollte ich mich weiter drum kümmern, aber deine Platine sieht echt gut aus und würde mich brennend interessieren.


    Wäre es auch möglich uns eine Liste mit Links deiner Bauteile zur Verfügung zu stellen, damit man sich die Sachen selber kaufen kann? Bspw. wüsste ich jetzt nicht woher man so eine schicke grüne Platine herbekommt :D
    Zudem würde mich interessieren, wie viel du insgesamt für den Programmieradapter ausgegeben hast.

  • Auf meine weiteren ESP8266 warte ich auch immer noch. Dieser Poststreik war echt Käse...
    Ich habe eine Liste der benötigten Komponenten für Dich zusammengestellt und am Ende des ersten Beitrages eingefügt.
    Die "schicke grüne Platine" wirst Du nicht im Handel bekommen. Die ist "selfmade".

  • Ein schönes Projekt! So wird aus den ESP8266 eine runde Sache.


    Quote

    Hinzu kommt noch, dass der ESP nicht direkt über USB programmiert werden kann, sondern nur über einen USB-TTL-Adapter. Dieser widerum liefert aber nicht genug Strom, damit der ESP läuft.


    Bedeutet das, dass außer an USB der Adapter auch noch an eine 3,3V-Stromversorgung angeschlossen werden muss?


    Viele Grüße
    von
    Marcus


  • Bedeutet das, dass außer an USB der Adapter auch noch an eine 3,3V-Stromversorgung angeschlossen werden muss?


    Nein, genau das eben nicht. Ich wollte mit der Aufzählung nur klar machen, welche Probleme vor allen Dingen auf Anfänger zukommen (könnten) und wieso es sinnvoll ist, statt des Kabelwirrwarrs eine "Plug-and-Play" Lösung zu nutzen.


    Es wird lediglich ein einziges Kabel benötigt. Das ist das USB Kabel vom PC. Die notwendige Wandlung der Spannung von 5V auf 3,3V sowohl für die Spannungsversorgung des ESP8266 als auch für die Kommunikation über RX und TX erfolgen automatisch auf der Platine.

  • Hallo


    ich habe von Neueinsteiger die Platine + den Adapter für ESP8266-01&-12 & 12e gekauft und natürlich getestet :D
    also platine funktinoiert wunderbar so ist es sehr sehr einfach die esp chips zu programmieren
    zum flashen sollte man den rechten Butten drücken & gedrückt halten und dann den reset button kurz drücken dann geht er in den Firmware flash modus ( gpio0 zu gnd)



    für was ist der jumper unten links ?


    auch der adapter für den 12er chip passt super mann kann auch ohne zu löten den chip einfach stecken wirklich sehr einfach
    unter win8.1 einfach micro usb kabel anschliesen und fertig rest hat er bei mir automatisch installiert

  • Schön, dass alles so gut klappt. Vor allen Dingen die Bestätigung, dass der eingesetzte USB-TTL Adapter wie geplant unter Windows einwandfrei läuft, freut mich. Das konnte ich mangels Windows bisher nicht testen.


    Der Jumper eröffnet die Möglichkeit, die Verbindung CH_PD mit 3,3V bei Bedarf zu trennen. In der nächsten Version, die ich aktuell zeichne, wird der Jumper durch eine Lötbrücke ersetzt werden. Es wird dann auch nur noch einen Taster geben, der sowohl die Reset-Funktion als auch die Flash-Modus-Funktion hat.

  • Auch ich habe bei Neueinsteiger einen Bausatz für den Programmieradapter erworben. Das Bestücken hat sich sehr einfach gestaltet. Der enthaltene USB-TTL-Umsetzer hat einen CP2102. Treiber für Windows gibt es beim Hersteller und über die LED kann auch der Datenfluss beobachtet werden. Das ist sehr hilfreich für die Inbetriebnahme. Als Terminal habe ich Teraterm verwendet.
    Meine ESP8266-Module sind nun aus China eingetroffen. Es sind ESP8266-1 von Ai-Thinker. Die Einschaltmeldung enthält einen "MEM CHECK FAIL" nach dem HW-Reset. Nach einem AT+RST gibt es diese Meldung nicht.
    Als erste Schritte habe ich http://fkainka.de/wlan-modul-esp8266-erste-schritte/ nachvollzogen. Das funktioniert genauso wie beschrieben.
    Der Programmieradapter hat den großen Vorteil, dass das Modul auch über das USB-Kabel mit Strom versorgt wird. Es ist kein weiteres Netzteil notwendig, der fliegende Aufbau bleibt damit auf ein Minimum beschränkt, ebenso eine eventuelle Fehlersuche.


    Marcus


    Nachtrag: Auch das Programmieren über die Arduino-IDE funktioniert hervorragend. Anleitungen:
    http://fkainka.de/esp8266-in-der-arduino-ide/
    http://arduino-hannover.de/201…uino-ide-mit-dem-esp8266/ mit Variante 3 und das esptool ist nicht mehr notwendig. Es kann einfach aus der IDE heraus programmiert werden.

    Edited once, last by MarcusFE ().

  • Wie ich schon im Briefkastenthread geschrieben habe, wage ich mich gerade an den ESP8266. Gestern habe ich versucht, meinen ESP12-E zu flashen und die Skripte zu übertragen. Das Flashen hat augenscheinlich funktioniert, obwohl das Prozedere nur eine Sekunde gebraucht hat. Ist das normal?
    Im Esplorer dann wurde das Wifi-Modul aber nicht erkannt. Ich hatte alles fliegend verdrahtet und mit dem Labornetzteil die 3,3 V zur Verfügung gestellt.
    Um eine Fehlerquelle auszuschließen würde ich gerne das Programmierboard nachbauen. Gibt es dazu einen Schaltplan und was machen eigentlich die beiden Mosfets?

  • Mit diesem Schaltplan kannst Du den ESP flashen. Der Levelshifter ist zwar nur für eine Richtung vorhanden und über einen Spannungsteiler aufgebaut, aber vom Prinzip her müsste das laufen, da die 3,3V auf TX des ESP auf RX der Gegenseite als HIGH erkannt werden sollten.


    https://blog.thesen.eu/wp-cont…/04/esp8266-progboard.png