Eenvoudige Programmer voor de ESP-01 (ESP8266)

[ 15,907 keer bekeken / views ]

Simpele ESP-01 Programmer

Om de ESP-01 te kunnen programmeren heb je een programmer nodig. Een andere, goedkope oplossing is, als je al een Arduino hebt, een speciaal programma in een Arduino-UNO te laden en dan met losse draadjes een aantal aansluitingen te maken tussen de Arduino en het ESP-01 bordje (zie bijvoorbeeld “hier”).
Je moet dan wel, iedere keer dat je een ESP-01 wilt programmeren, de juiste software op de Arduino-UNO laden en de correcte aansluitingen maken. Veel gedoe en een kans op fouten.

Makkelijker is het om een “ESP-01 to USB Adapter” te kopen en hier een kleine modificatie op aan te brengen.

ESP-01 Boot Modes

Om een ESP-01 in firmware-upload mode te zetten moet aan een aantal voorwaarden worden voldaan. In de documentatie van de ESP-01 staat deze tabel:

Hieruit kun je opmaken dat GPIO0 en GPIO2 beide “hoog” (3.3volt) moeten zijn om de ESP-01 “normaal” te laten werken. De, in flash geheugen, opgeslagen firmware wordt dan uitgevoerd. Op de ESP-01 worden GPIO0 en GPIO2 via een weerstand op Vcc aangesloten.
Als GPIO0 “laag” wordt gemaakt (GND) en je start (of reset) de ESP-01 dan wacht hij op nieuwe firmware die via de UART (de Seriële verbinding) wordt aangeboden en stopt deze in het flash geheugen.

USB Adapter Modificaties

Om met de “ESP-01 to USB Adapter” firmware naar de ESP-01 te kunnen laden moet GPIO0 verbonden worden met GND (zie de tabel hiervoor). Het is het eenvoudigst om een vaste verbinding te maken tussen GND en GPIO0 op de adapter, maar dan kun je hem niet meer gebruiken als ESP-01 naar USB adapter!

Daarom heb ik een kleine schuif-schakelaar op de adapter gelijmd en twee contacten verbonden met respectievelijk GPIO0 en GND.

Hoe moet je de Programmer gebruiken

Om met deze programmer een ESP-01 van nieuwe firmware te voorzien moet je één en ander wel in de juiste volgorde doen.
1. Plaats de ESP-01 in de gemodificeerde adapter
2. Zet de schuif schakelaar in de “program” stand (GPIO0 verbonden met GND)
3. Plaats de adapter in een USB poort op je computer
4. Selecteer de USB-poort in de Arduino IDE en upload een programma
Als het uploaden klaar is zal de ESP-01 opnieuw opstarten en het nieuwe programma uitvoeren. Je kunt nu de schuif-schakelaar omzetten (GPIO0 niet meer verbonden met GND).
Om de ESP-01 opnieuw te programmeren moet je de adapter éérst uit de USB-poort halen en dan de stappen in dezelfde volgorde opnieuw uitvoeren (je kunt ook de ESP-01 uit de adapter halen en hem er weer terug instoppen. Het gaat erom dat de ESP-01 opnieuw opstart!).

Als je het vervelend vindt om de Adapter iedere keer uit de USB-poort te halen en hem er weer in te stoppen kun je een push-button (NO of “normal open”) tussen de RST pin en GND aanbrengen.

This entry was posted in Arduino, Computer, ESP8266, Hardware and tagged , , . Bookmark the permalink.

6 Responses to Eenvoudige Programmer voor de ESP-01 (ESP8266)

  1. Hennie says:

    Hallo Willem,

    Ik heb zo’n usb adapter gemodificeerd en daarmee de DSMR firmware geupload naar een ESP-01.
    Tot en met het openen van de wifi manager gaat alles goed, maar er wordt geen verbinding gemaakt met mijn wifi netwerk.
    Ik heb geprobeerd e.e.a. uitvoerig te beschrijven, maar kan het pdf bestandje hier niet bijvoegen. Daarom heb een screenshot van de laatste pagina bijgevoegd.
    Ik hoop dat jij me kunt (en wilt… 😉 vertellen wat ik fout doe.

    Bij voorbaat dank!

    Met vriendelijke groet,

    Hennie

  2. dick says:

    ik bedoel

    Firmware op de ESP-01 installeren

  3. dick says:

    ok geheel met blink werkt
    maar welk programma heb ik nodig voordsmr?

  4. Pingback: Slimme Meter uitlezer | Willem's Website

Leave a Reply

Your email address will not be published. Required fields are marked *

The maximum upload file size: 4 MB. You can upload: image, other. Links to YouTube, Facebook, Twitter and other services inserted in the comment text will be automatically embedded. Drop file here

This site uses Akismet to reduce spam. Learn how your comment data is processed.