This guide is to build a very basic FTDI to ESP8266 breakout board adapter. It’s a great way to send your program on the fly without the need for a breadboard and jumper wires.
Voltage note: If you are new to ESP8266 (in this case, model ESP-01), you should know that it requires a power source of 3.3v. Using 5v will damage it. So be sure that your FTDI device has a voltage level shifter from 5v to 3.3v – this tutorial will assume that it does. This board design has no built in voltage regulator, so use with caution!
Current draw note: This is just a programming adapter. It is not advisable to run your ESP-01 from the FTDI’s power supply. I measured 0.42A (or 420mA) from my FTDI’s 3.3v source, which is not enough to use for normal operation. I believe the ESP-01’s current draw can jump anywhere between 0.3A (300mA) to 0.5A (500mA), possibly damaging your devices. I’d suggest to use a separate power source for normal operation after your program it.
————————————–
Let’s get started! I tried to use parts that are inexpensive and commonly available at electronics shops. You can get fancy by adding or upgrading components if you desire.
Materials list:
Strip board
Hookup Wire (I used solid 22 gauge wire)
220 ohm resistor
5mm led
2x momentary push buttons
Right angle pin header (1 row of 6 pins)
Female headers (2 rows of 4 pins)
Tools:
Wire cutters
Soldering Iron
Rosen core solder
Utility blade
Devices:
ESP8266 (ESP-01)
FTDI usb to serial device w/ usb cable
Step 1: The Schematic
Yes, it is quite simple. As mentioned before, there is no voltage regulator on the diagram. If you would like to add one, it would take the power from the FTDI’s VCC, and distribute to VCC pin and CH_PD pin on the ESP8266.
An important thing to note here is the pin order on the FTDI must match the order in the diagram. I am using an OSEPP branded one, and I believe it follows a commonly used pin layout. I have seen some that do not follow – which in that case you will need to adjust your board layout to accommodate it.
Step 2: The Cuts
Cutting the copper strips:
I included views of both sides – be sure to use the “copper side” view while cutting.
Using your utility blade, cut the strips where indicated in red (required). The other cut indicators on the board are optional. It helps to keep accidental shorting on stray copper traces.
Cutting the board down to size:
If your board is giant and you wish minimize your board footprint, use your utility blade and a straight edge (I use a metal ruler) and score both sides of the board several times. Then you can “break” the board with your hands like a graham cracker. It may take a bit of force depending on what type of board you use – using a clamp or bench vise helps.
Step 3: Adding Components
Place your wires and components on the board and solder them together. I didn’t get a chance to photograph my build process, but it should be pretty straight forward. If you have any questions about this step feel free to comment/ask.
Step 4: The finished product
Finished Product:
The moment you’ve been waiting for! Plug your ESP-01 and FTDI module together. You’ll see a few blinks on the LEDs on both devices, that is normal. Each time you plug this into your USB port on the computer, the device needs to be manually put into programming mode in order to accept a new one.
Programming Mode Sequence:
The two push buttons are wired to the Reset pin and the GPIO0 pin (see previous step for diagram). Before sending programs to your ESP8266, you must do a series of button pushes to enable programming mode. The order should be PUSH Reset, PUSH GPIO0, RELEASE Reset, RELEASE GPIO0. The LED should glow brighter to indicate that it is ready to be programmed.
Bonus:
I used an embossing label maker to add a bit of flair. Also a voltage warning label just as a self reminder to switch to 3.3v on my FTDI module.
Thanks for looking and be sure to post your own creations!
Leave a Reply
You must be logged in to post a comment.