Sunday, December 30, 2018

Pogo-Pin Programming Dock for ESP-12F Modules

How to convert a Wemos D1 Mini into a pogo-pin programming dock for flashing Tasmota (or any firmware) onto bare ESP-12F modules — no breadboard wiring needed.

Pogo-pin programming dock for ESP-12F

Completed pogo-pin dock — a modified Wemos D1 Mini ready to flash ESP-12F modules.

Why?

ESP8266-based IoT modules can be purchased from AliExpress for as low as 1.3 EUR. These cheap Wi-Fi modules are handy for many home automation DIY projects, especially when used with open-source firmware like Tasmota. But programming bare ESP-12F modules requires connecting 8 pins — tedious on a breadboard and error-prone with dupont wires.

A pogo-pin dock lets you drop in a module, clip it down, and flash — repeatable and reliable.

Items needed

Items needed for pogo-pin dock

Everything you need to build the programming dock.

  • Wemos D1 Mini board
  • 8 pogo pins
  • ESP-12F module
  • USB-to-Micro-USB cable
  • Clip for holding the ESP module on the pogo-pin dock

Preparation

Step 1 — De-solder the existing ESP module from the Wemos D1 Mini board. This is the most difficult part — you need good soldering skills.

Wemos D1 Mini with ESP module removed

Wemos D1 Mini after removing the original ESP module.

Step 2 — Carefully solder 8 pogo pins onto the exposed ESP pads on the Wemos D1 Mini: TXD0, RXD0, IO0, IO15, GND, VCC, EN, RST.

Pogo pins soldered onto Wemos D1 Mini

Pogo pins soldered onto the exposed ESP pads.

Step 3 — Place a fresh ESP-12F module on the newly prepared dock and secure it with a clip.

ESP-12F module placed on the pogo-pin dock

ESP-12F seated on the pogo-pin dock, ready for flashing.

Pogo-pin dock with clip holding ESP-12F

Clip holds the ESP-12F firmly against the pogo pins during programming.

Flashing firmware

Step 4 — On your Linux host PC, clone esptool and download the Tasmota firmware:

cd ~
git clone https://github.com/espressif/esptool
cd esptool
wget http://thehackbox.org/tasmota/release/sonoff.bin

Step 5 — Connect the USB cable between your host PC and the Wemos D1 dock. Erase the ESP-12F flash:

./esptool.py --port /dev/ttyUSB0 erase_flash

Step 6 — Disconnect and reconnect the USB cable, then flash the Tasmota firmware:

./esptool.py --port /dev/ttyUSB0 write_flash -fs 1MB -fm dout 0x0 sonoff.bin

Your ESP-12F module is now flashed and ready for use. Check the next post about using an ESP-12F as a standalone board for home automation projects.

Close-up of pogo pins contacting ESP-12F pads

Close-up showing the pogo pins making contact with the ESP-12F module pads.

Another angle of the pogo-pin dock

Another angle of the completed pogo-pin programming dock.

No comments: