The Wifi Doogle

esp_doogle_shop

I picked up these neat little esp8266 USB dongles from Shenzhen. If you’re interested, I have some in my shop too.

They incorporate a CH340g, 3.3v voltage regulator and esp8266. This creates a complete stand alone esp8266 stick, so you no longer need a USB serial interface or external voltage regulator. Almost all the pins are broken out too, which makes hacking projects on it easy.

It uses the serial RTS and DTR lines to enable running or flash update modes. This is a bit odd, but it does mean that you don’t need to switch jumpers to change modes which is nice.

Startup board in normal mode, you need to execute the following in python:

import serial
ser = serial.Serial('/dev/ttyUSB0',9600)
ser.setDTR(False)
ser.setRTS(True)
ser.setRTS(False)

You can then read data using python with “ser.readline()”. If there’s interest in these boards I’ll write up some further notes on how to work with the board using minicom.

I also stripped one of the boards down, this might prove helpful with debugging. It certainly helped me better understand how the boot mode was selected:

wifi_doogle

A PNG is here. And a SVG you can load in Inkscape with the board sides aligned so you can follow traces is here.

For reference, here’s some of the information from the original Chinese seller:

esp_doogle_orig

 

esp_doogle_orig3

For reference, to start the board in flash mode you can use the following (esptool.py does this anyway):

ser = serial.Serial('/dev/ttyUSB0',9600)
ser.setDTR(False)
ser.setRTS(True)
ser.setDTR(True)
ser.setRTS(False)