Public Domain

Recommend Projects

ESP8266 Fluid Programmer

1 year ago 440
  • Description
  • Documents
  • BOM
  • Attachments
  • Members
  • Comments


With the FT232RL FTDI USB To TTL Serial Converter Adapter Module For Arduino (link below), you can program an ESP8266-01 module as fluidly as you can a standard Arduino. No need anymore to initiate two resets for each programming cycle.

Here is the Serial Adapter:

And you will need this for the ESP8266:

Pretty much any N-channel MOSFET will work, but the origial design calls for a IRF540, although I am using a 20N06L and it works perfectly.

The 100µF capacitor is necessary for proper timing with bringing the RST and GPIO0 pins low then high in the right sequence, but once you use this circuit, you can program an ESP8266 just as you can with any Arduino, leaving the serial port connected and the Arduino IDE will connect the serial monitor once the program has uploaded it and it will reset the device properly before the program uploads and after it is done.

On the home etched board, you will need to solder two jumpers indicated by A and B.

Set the Serial adapter to the 5 volt setting. The only pin on the ESP that is sensitive to 3 volts is the VCC pin.

This project was inspired by RuiMonteiro's Instructable, which you can find here:




PCB Home Etch

PCB For Fabrication


ID Name Designator Footprint Quantity
1 FT232RL FT232RL TO-220(TO-220-3) 1
3 HEADER-FEMALE-2.54_2X4 COPY ESP8266 DIP-2X4P-2.54 1
4 1u 100U CAP-D5.0XF2.0 1




The owner does not allow comments in this project now

Comments (5)

Jonah Dahlquist Reply

Hi, thank you for sharing this schematic.  I'm trying to prototype this on a bread board, but it's not behaving as expected.  I've matched it exactly, but flashing times out.  The Arduino's serial monitor can be used to send AT commands (which work just fine).

Any ideas? I'm running out of things to try.


Here's the output from the ESP8266 Download Tool wxPyDeprecationWarning: Using deprecated class PySimpleApp.
[20.5, 19.5, 18.5, 17.0, 16.0, 14.0]
('self.chip: ', 'ESP8266')
RF option applied...
test offst :  0 0x0
case ok
test offset :  4096 0x1000
case ok
test offset :  1032192 0xfc000
case ok
test offset :  1040384 0xfe000
case ok
....._____....._____....._____....._____....._____....._____....._____....._____....._____....._____[2020-02-02 4:34:03,355][ESP8266Loader_spi[1]][][line:368][ERROR]: Chip sync error: Failed to connect to SP8266: Timed out waiting for packet header
[2020-02-02 14:34:03,355][ESP8266Loader_spi[1]][][line:459][ERROR]: ESP8266 Chip sync error esp_sync_blocking.

Download Tool Settings
Annotation 2020-02-02 145145.jpg

Jonah Dahlquist Reply

@jonahbron.d Follow-up: realized that the FTDI board in the diagram has both a CTS
and an RTS pin.  It occurred to me that they might not be
interchangeable names for the same thing (lol).  My breakout doesn't in
out the RTS pin, but I looked up the datasheet and figured out which pin
it is. Holding the RST lead the RTS pin on the chip itself worked as
the article described.  Now I gotta figure out how to connect to that
pin.  I haven't tested the full version that can connect to the serial monitor yet, but I expect it'll work fine.

Mike Sims Reply

@jonahbron.d I Apologize for not seeing this sooner. I apparently dont receive any emails when I get a message in here... ill have to figure that out ...

Did you get everything working ok? I actually etched my board from the home etch drawing that I put in here, then I soldered everything in and it worked perfectly ... I don't actually recall if I built this on a breadboard first or not ... There might be an issue with that cap and the distance between it and the serial to usb board ... so your breadboard connetions should be as tight as possible in terms of wire length etc. but I can't see why this would not work on a breadboard...

Let me know if you're still having problems and I'll see what happens when I breadboard it.


Jonah Dahlquist Reply

@sims.mike Thanks for the reply!  I already found the issue and followed-up in my second commend below.  I was confusing the RTS pin with the CTS pin, lol.  After using the right pin, it worked.

Mike Sims Reply

@jonahbron.d That's excellent! I'm glad it was something simple.  I read your write up on modifying that tiny little usb to serial board for your 8266 ... I had a couple of usb to serial boards that didn't break out the RTS pin but found the pin on the chip using the datasheet and I got a wire soldered on that lil sucker too ... but mine didn't work ... which left me pursuing other options which ultimately landed me on this project.

That borad you have there is the smallest I think ive seen. Do you have any pics of the finished project? I assume that board is no bigger than the ESP module itself?

如果需要转移工程请在个人中心 - 工程 - 工程高级设置 - 下载工程,下载后在 打开保存即可。
有问题联系QQ 3001956291 不再提醒
svg-battery svg-battery-wifi svg-books svg-more svg-paste svg-pencil svg-plant svg-ruler svg-share svg-user svg-logo-cn svg-double-arrow
We use cookies to offer you a better experience. Detailed information on the use of cookies on this website is provided in our Privacy Policy. By using this site, you consent to the use of our cookies.