Easy Programming ESP-12E using ESP-8266
How to program ESP-12E, simple board
When choosing an MCU with WiFi support a good choice is a module from the ESP family, the most famous is surely the ESP8266 (datasheet here): has a good amount of memory, WiFi, USB port for powering and programming and quite a few IO ports.
If you’re like me and always look for something new then you might have spotted the ESP-12E module (datasheet here): it’s based on the 8266 chip… actually it’s only the chip, the antenna and a tiny led! So, it’s real small, only 24x15mm, but has no USB and no voltage regulation chip. And it’s also cheaper than a full blown ESP board.
Programming the ESP-12E
I searched different sources online and actually programming is quite simple. Having no USB port available, requires us to use a NODE MCU board (a complete 8266 board) which will act as a bridge to program the ESP-12E. Plus we must consider that a “2.54 Adapter board” is needed if we want to have a standard pin spacing to use our breadboards and/or dev boards.
The two boards will be connected by 6 wires.
|D3 (GPIO 0)
|D3 (GPIO 0)
After wiring the two boards together we can connect the ESP-8266 to the computer via USB cable and do our usual programming using our favorite IDE (I use Arduino IDE); thanks to the connection the programming will happen on the ESP-12E board.
Ah, last thing about this lovely ESP-12E board. It will require a 3.3V (max 3.6V) power supply to work; don’t connect a 5V power supply to the VCC/GND pins otherwise you’ll burn the module, because it has no voltage regulator on it. It’s quite easy to reduce a 5V/9V/12V down to 3.3V: you could use a voltage partitioner with two resistors (horrible!), an AMS1117 chip, an LM317 (my absolute fav!) or a regulable DC-DC step down. I personally use an LM317 chip because it’s a chip I know quite well and have a nice solid and stable circuit which does the job [I regulate the circuit to output a 3.4V considering the slight drop it will have under load].
|Node MCU V3