ESP8266: its’ all about power


Strangely, Amazon delivered the board on Sunday. But I'm not complaining.

Strangely, amazon delivered the board on Sunday. But I'm not complaining.

Programming the ESP8266 is rather easy.  I'm using the Arduino libraries and the makeEspArduino build system because I like to use the command line, not IDEs.  Stock libraries provide everything you'd expect: wifi setup, web servers, DNS support, etc.  There's even a library that allows you to boot into the board as a WiFi access point with a web server to configure it to connect to your local network.  It's a bit surprising what you can fit into 512k memory.

There are a lot of possibilities with this little board, especially the versions with more GPIO pins but even with just 1 available pin on the ESP-01 you could do some interesting things.  The key point is that is requires very little power to control some other device via wireless communications.

But power is exactly where I ran into a little problem.  Seems that the FTDI Basic board I'm using to program and power the ESP-01 has a weak voltage regulator.  It works fine for uploading new firmware.  You can see it working because both the ESP board and the ftdi board flash their LEDs while data is being trasferred.  The ESP has a bright blue LED that flashes during programming.  It also has a RED LED that shows power to the board. Both are brightly lit when I'm flashing new firmware to the ESP.

But after the program has been flashed to the board the board needs to be rebooted to run the new program.  On reboot the ESP power LED would go dim and the firmware wouldn't work.  Subsequent boots behaved erratically.  The dim power LED was curious and my only clue.  A few queries on SparkFun's IRC channel led me to an issue with the FTDI's regulator.  Apparently the ESP is very picky about the 3.3V it needs to run.  So I needed to find a separate power supply.

ESP's power light goes dim if the power supply is too weak.

ESP's power light goes dim if the power supply is too weak.

There a lot of ways to handle this problem.  One is to throw together a few discreet components.   A simpler solution is to find a ready made board.  It needs to accept 9v-12v, so that it can be used with the tons of wall wart plugs I have laying around.  Ideally it should plug right into the breadboard I'm using for this project.

I dug around and found the one shown here on Amazon.  It's perfect for this project because it spans the bread board providing power and ground to both sides.  And it supports either 3.3.V (which the ESP board requires) or 5V based on a switch.  It has a power button so I can turn power on and off easily without pulling wires.  More importantly, I only had to move 1 wire from my previous setup in order to use it.  And it's cheap.  Well, I mean inexpensive.  It's actually a nice board.  I ordered two.

Amazon managed to ship this to me on a Sunday so I had it just a few days after placing the order.  Once I plugged the power board into the breadboard I was able to test new firmware uploads without issue.

In the future I plan to power the board with a battery.  But for development, this little power board will do just fine.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.