Introduction: Flashing/Programming ESP8266(ESP-01) With Arduino Uno
Hi, Most of us think that we need special device to programme ESP-01 chip like usb to TTL converter,but we can do the same with the help of Arduino uno board.Here ,We are going to make use of FTDI chip which is there with the board to program the ESP chip.
There are two ways to make use FTDI chip on Arduino
1.Removing the ATMEGA328 chip
2.connecting RST of Arduino to ground.
We ,in this tutorial we opt for second method
Step 1: Procedure
Components Required:
1. Arduino uno
2.ESP8266-01
3.1k resistors-3
4.connecting wires.
First and foremost we need to disable the on board IC by connecting RST pin of Arduino to ground.Now the board is ready to work as a ESP programmer.we should also note that ESP01 works on 3.3v ,so we need to reduce 5V of Rx pin of Arduino to 3.3 V using 3 --1K resistors.
Connection from arduino to ESP01 is as follows
Arduino Board Pins --------------------------- ESP-01 Board Pins
1. Tx ------------------------------------> Tx.
2.Rx -------------------------------------> Rx (get 3.3 v from 5 V using Voltage divider circuit ,arrange three 1K resistors in series from Rx of arduino to ground ,get a tap across 2k and give this voltage to ESP01's Rx pin)
3. 3.3v(on board)-----------------------> Vcc,CH-PD.
4.Ground----------------------------------> Ground,GPIO0.
Now select the corresponding com port in arduino IDE & Make these changes in IDE under tools section.
Board:Generic ESP8266 Module
Flash mode:DIO
Flash size:1M(SPIFFS)
uploadspeed:115200
Programmer:Arduino ISP
Keep all other remaining settings as it is. If every thing goes fine you will see code uploading to the board (see the image).
Troubleshooting
If anything goes wrong verify the following
1.Have you added ESP8266 library to IDE or not.
2.Is RST pin of arduino is connected to Ground pin or not.
3.Is voltage divider network providing 3.3 v to Rx of ESP or not.
Thank you.