-->
Page 1 of 2

Using Arduino as FTDI programmer to program ESP8266 (ESP-12)

PostPosted: Tue Jul 21, 2015 8:23 am
by Olafur Bogason
I've been following this instructable to configure my Arduino Uno as a FTDI programmer because I want to use it to program my brand new ESP8266. I use a 5V <-> 3.3V bidirectional logic level converter between my Arduino and the ESP-12. The VCC is coming from an external power supply. The connections I currently have are the following:

ESP-12 | Level shifted logic from Arduino & 3.3V power supply
- Vcc <-> 3.3V
- GND <-> GND
- CH_PD <-> 3.3V
- GPIO2 <-> 3.3V
- GPIO15 <-> GND
- GPIO0 <-> 3.3V
- RX <-> TX (3.3V level shifted)
- TX <-> TX (3.3V level shifted)

Every time I try to upload some code (f.x. the Blink example) onto the ESP-12 using the newest Arduino IDE (1.6.5) I get the following error:
Code: Select allwarning: espcomm_sync failed
error: espcomm_open failed



When I pull the reset pin on the ESP-12 low I get incoming serial data which is almost unreadable at 115200 baud rate: Image


Has anybody successfully managed to program the ESP-12 using an Arduino Uno or happens to know if that is possible at all?

Re: Using Arduino as FTDI programmer to program ESP8266 (ESP

PostPosted: Tue Jul 21, 2015 11:22 am
by lethe
GPIO0 needs to be pulled low during power-up/reset to enter flash mode.

Re: Using Arduino as FTDI programmer to program ESP8266 (ESP

PostPosted: Wed Jul 22, 2015 6:00 am
by Olafur Bogason
I understand that GPIO0 should be pulled low during power-up/reset but still I'm getting the same errors. I've been using this setup for now: Image

but adjusting it to the ESP-12 pin-out. I first pull the GPIO0 pin low and then I pull RESET pin low and I get a flash on the on-board LED but I'm not able to program the chip using the RX/TX pins on my Arduino.

When I pull the RESET pin LOW I get the following data over the serial bus:

Image

I hope this helps describe the problem I'm facing. I'm on the verge of ordering a dedicated 3.3V FDTI programmer and ditch the Arduino...

Re: Using Arduino as FTDI programmer to program ESP8266 (ESP

PostPosted: Wed Jul 22, 2015 8:50 am
by Olafur Bogason
As a last resort I tried connecting the TX & RX pins on my Arduino directly to the ESP-12 (I know that the pins are not officially 5V compatible) and BAMM! I'm able to program the chip without any problems. Thanks for the help.