Introduction: USB to Serial Converter for ESP8266
Working with the ESP8266 boards is not very straight forward & it took me sometime to get it working.
In this series I will document my steps as reference for myself & for others.
All the data here is not mine & I mostly gain from all over the net & I don't claim any of it.
I'll always try to link to the source of data - if I missed anything please send me to correct/add it.
Before start using the ESP8266 we need to take care of two major issues:
1. The ESP8266 is no TTL!
It uses 3.3V for power & for control so we can’t just plug it to the USB to Serial thingy or we may fry the poor ESP!
2. The board may suck more power than the USB converter can supply so you just can’t rely on powering it from your USB to serial.
After some Googling I got two models from AliExpress
Step 1: A- BTE13-009: USB to Serial 6-pin CH340G Converter (3.3V/5V Switchable!)
I thought this is it since it has a toggle switch to select the 3.3V and that's it!
I switched the converter to 3.3V & because I am always suspicious I measured between GND & Tx only to get 5V on the multi-meter!
Googling the issue I landed on this YouTube video by Roland Nygren following the suggestion of RoterFruchtZwerg to modify the BTE13-009 board for proper 3.3V operation.
It took me 5 minutes to cut & solder because of my poor sight :)
The newer model of this converter is BTE13-009A with a different PCB layout but unfortunately it replicate the same 3.3V problem. I found a page in French by R V to fix it but since I don’t have this board so I haven’t tested it.
Step 2: B- USB to TTL UART Module CH340 3.3V/5V Serial Converter
I got it also from AliExpress.
This one works as is when you select 3.3V with the jumper & the logic levels are correct not like the BTE13 but it has no DTR!
The DTR is a good-to-have because it can be used to control the ESP8266 GPIO0 (GP I/O zero) line & correctly puts the ESP8266 chip in flash (programming) mode.
(I may solder a wire to the DTR pin 13 of the CH340 IC later)
So I used the BTE13 with the power modification to drive the Rx, Tx & DTR lines properly.
(The Windows driver for the CH340 maybe found here.)
Step 3: Testing the USB to Serial Converter
Once you install the driver for the USB to serial we may test the converter - we need to download & install any terminal program (or use the Monitor that comes with the Arduino IDE)
I use CoolTerm but you may use any other terminal.
Select the right COM port in the Options & make a loop-back by connecting Tx to Rx using a F-F Dupont connector.
Press "Connect" and anything you type should appear on the CoolTerm main box.
Step 4: Powering the ESP8266
To power the ESP8266 I use the dirt cheap MB-102 power module for the breadboard.
With this board & a 6.5V-1A power supply working with ESP8266 is easy. I can get into flash mode just by connecting GPIO0 to DTR & switch the ESP8266 power off/on using the switch on the MB-102.
The MB-102 has 2 power outputs that may be set separately so the breadboard has a 3.3V power rail for the ESP8266 (& any 3.3V boards) and another rail set to 5V if needed.
Now we are ready for ESP8266!
5 years ago
Can you put a connections diagram, or just write which pin from BAITE goes to which pin of ESP8266. The only clear pin is DTR that goes to GPIO0 (RST).
6 years ago
Very useful piece of info! Stable communication with ESP modules is a real headache!
6 years ago
Great project. Thanks for sharing.
Reply 6 years ago
Thanks again Jason :)