USB to ESP-01 Adapter Board Modification

2,206

32

5

Posted in TechnologyArduino

Introduction: USB to ESP-01 Adapter Board Modification

About: Electronics, programming, woodworking, and outdoors are some of the things that keep me going.

Did you buy this USB to ESP-01 Adapter Board and found out that it can't be used for flashing the ESP-01? You're not alone. This first generation adapter doesn't have any mechanism to put the ESP-01 into Serial Programming mode which require pulling GPIO-0 pin LOW.

I found that very frustrating considering that this board is very cheap, small and convenient to be used to interface the ESP-01 to our PC. I have made another circuit on my breadboard along with FTDI adapter just to be able to flash ESP-01. Wouldn't it be nice if we can use this one instead?

One of the picture above shows the typical error message in Arduino IDE that we see when trying to flash the code to the ESP-01 without first putting it into serial programming mode.

In this Instructable I'm going to show you how to modify this adapter to be able to do just that with a simple mini tactile switch, and a little bit of soldering.

Lets get to it!

Step 1: Parts and Pinout

For this modification, I used a mini tactile switch that I salvaged from other electronic. You also need a couple of short wire to connect the switch to the board.

Step 2: Mounting and Soldering

In this step we are going to mount the mini switch on to the back of the adapter's socket. I used hot glue for this, and optionally you can make a few scratches on the surface of the socket for better adhesion.

Once the glue is set, we're going to solder the 2 short wires between the switch and the GPIO-0 and GND pins. See above picture for the pins location.

This will effectively short the GPIO-0 and Ground when the switch is pressed.

Step 3: Flashing the ESP-01

We're now done with our modification. To flash the ESP-01, follow the steps below:

1. Insert ESP-01 into the adapter's socket with the correct orientation shown in the picture.

2. While pressing the button of the tactile switch, insert the adapter into your PC's USB port. Release the button after about 1 sec. You'll be testing your finger's dexterity by doing this exercise.. :)

3. Set your Arduino IDE board setting, and upload your code. I've included the typical setting that works for ESP-01 board.

NOTES:

  • Once the ESP-01 is flashed, we can use the adapter to power the ESP-01 from any USB power. It has built-in 10K pull-up resistors for GPIO-0 and GPIO-2 pins for it to do normal boot from flash.
  • This adapter is based on CH340 chipset, in my PC it shows up as USB-SERIAL CH340

Enjoy..

3 People Made This Project!

Recommendations

  • Spotless Contest

    Spotless Contest
  • Microcontroller Contest

    Microcontroller Contest
  • Space Challenge

    Space Challenge
user

We have a be nice policy.
Please be positive and constructive.

Tips

2 Questions

I guess i dont understand. i get the same error after following the steps. is there a way to know your in programming mode?

0

The step # 2 is the part to get esp-01 into flashing mode. If you're still getting the error means this step is not completed properly. Another possibility might be that you have not installed the driver for the module. After inserting the ESP-01 into your PC's USB, check to see if it's recognized in the device manager. Also make sure to select the correct COM port in the arduino IDE.

2. While pressing the button of the tactile switch, insert the adapter into your PC's USB port. Release the button after about 1 sec. You'll be testing your finger's dexterity by doing this exercise.. :)

Thank you for this post! Is there a link to this USB->ESP-01 adapter? Nice clean layout!

5 Comments

I did a similar, but using a shorting jumper and pushbutton w/2x 10K resistors to GPIO0 & RST , Noticed you scored the face of the socket, I did the same on the side of pins 7&8 (TxD & GND), and soldering the jumper to pin 4 (GPIO0), and a short wire to GND, under the capacitor. (with 10K resistors pulling RST & GPIO0 to VCC)..

2 replies

Nice, although you technically don't need to add those 10k resistors since they're built in to the adapter board, at least on mine. I tested it with ohmmeter to make sure and it read 10k for both pins.

Very nice! Thank you for sharing.