Successfully programming ESP-01 / ESP-01S

Has anyone else given up on programming the ESP-01? That was me until last week.

I bought a heap of ESP-01’s a couple of years ago, but after reading hundreds of poorly written “instructions” on programming and trying every programming method I could find (USB/TTL programmer with red board, USB/TTL programmer with big cap and black board, FTDI-UART board (like YP-05 FT232RL adaptor), soldering wires and switches to different pins of these, holding GPIOs to ground on boot, and Arduino UNO / Duemalinove…no method proved easy OR reliable so I eventually gave up and went to play with easy boards like the D1 Mini and ESP32’s.

I recently tried again with an Arduino UNO as the communicator and for programming (using binaries I’d compiled in ESPHome) and had limited success. I got one (of five) to work, but the other four failed during the “flashing” process or WiFi configuration steps. Two of these would still respond to AT commands but couldn’t be programmed with ESPHome. I eventually worked out the other two kept failing to connect to wifi then rebooted in a loop. I then tried to OTA upload code to the one working unit via ESPHome and it stopped communicating too.

I recently found a new “ESP01 programmer” that had a set of header pins I could connect a sensor to, and at under AU$2 each I figured I’d have one last try before binning the lot.

Happy to report I have successfully reprogrammed all five “dead” ESP-01s that couldn’t be programmed via Arduino or other modules - plus a bunch of new ESP-01S’s using ESPhome / and these boards. No soldering wires across pins, adding buttons, holding a button or jumper in place on boot etc. Just plug the ESP-01 into the board and program away.

To “deploy” my new ESP01 sensor modules I’m leaving the ESP01 in the header and connecting my sensors to the headers, and only a USB extension cable is needed to power them.


That is the easy one

What’s the difference between these and the usual methods? It looks like any other uart adapter.

In any case thanks for the post. As an ESPHome newbie I didn’t know that nodemcus etc were supported. Now to free up some of my other boards!

Electrically I’m unsure what the difference are, but I’ve now tried programming different ESP01s on three of these boards and each has worked flawlessly. I’ve got around a dozen other UART boards and had nothing but frustration with all of them (and all have tons of reviews on Aliexpress/Banggood saying how well they work…maybe I’ve just been unlucky).

This one claims to automatically detect whether the ESP01 needs to be placed in running mode or boot mode, but no idea how. But chipset on this board looks much like any other. The push button on the side appears to be a reboot button only.

Sometimes is hard to bridge GND and GPIO00 temporarily

Just put an order in with cheap (slow) shipping. :grinning: