Testing WIFI modules

Espressif ESP8266

A flood of ESP8266 based WiFi modules are hitting the DIY hobby markets. The ESP8266 provides 802.1 b/g/n WiFi and includes embedded TCP/IP stack. The ESP8266 itself provide many peripheral devices, if you have the SDK and programming means. But the available modules only communicate using logic level RS232 AT+ command set. Currently the AT+ command set is incomplete, inconsistant, in flux, and sparsley documented. Yet, that can be worked around for those wanting to get a head start using these very inexpensive modules.

There are several module designs called ESP-x where x is 1 to 5, so far. I am using the ESP-1 module of which there are two versions. The older one is set at 57600 baud. The newer one is set at 115200 baud. The older one provides a 2x4 connector with 3v3, GND, TX, RX, and 4 NC (No Connects). The newer one provides the same 2x4 connector, but has connected the NCs to RST, CH_DP(chip enable), and two GPIOs, GPIO0 and GPIO2. Make sure you pullup the CH_DP and the RST line. They are finacky. So far it seems you can leave the GPIOs floating. The documentation is sparse. The firmware is in flux. Eventually, you should know how to use the GPIOs and how to use them along with the CH_DP and RST line to program the ESP8266 directly. In the meantime, you have to use the available AT commands.

ESP-1 old module
Older Version

ESP-1 newer module
Newer Version

The ESP8266 is advertized as a ULP WiFi solution. Perhaps, while it is sleeping, but when being used it draws an average of 80mA. Sometimes it can draw as much as 300mA. So do not connect to a whimpy 3v3 supply. That includes many USB ports, and 100mA regulator circuits. It may seem to work for a short while and then something glitches. The modules firmware seems to be finacky as it is still being developed.. as far as I can tell.

My first project with this chip is to provide a telnet like daemon to access a menu. No login, no security, just testing. This sketch controls the RGB LEDs on the RFduino LED shield. It needs a lot of work to clean it up. But hopefully gives a an idea what is involved.


myESP23srviceV0.1.ino myESP23serviceV0.1.ino

Using port 80 one can do the same thing using HTML pages.

It is also fairly easy to send datalogging information to IoT services like ThingSpeak to be shared with others.


Other RFduino Projects