First sight into ESP32

So I am one of the 200 lucky bastards who receive the Espressif ESP32 beta units. It arrives in a nicely printed packaging which resembles very much like a jewel box. And the item inside is really a piece of jewelry.

ESP31 packaging
ESP31 packaging

Appearantly the breakout board, “ESP_Module_Testboard”, is little bit too wide for breadboard use, (leaving one row on each side), I decided to make a quick development board. The end result looks like this.

ESP31 development board
ESP31 development board

Some notes about the board:

  • Pin “EN” has a 10k pull-up resistor. The reset button pulls “EN” down. ESP31 does not come with a RESET pin, it seems EN does the same.
  • Pin “IO0” has a 10k pull-up resistor. The “IO0” pin pulls it down. Low level on IO0 during reset allows the ESP31 to enter programming mode. This is very much the same as ESP8266. I am not sure if the pull-up resistor is needed because it seems there is one built-in. Nevertheless I just put one for safety reason.
  • The red board is a FTDI USB-Serial converter. The board is set to 3.3V I/O. The orange color jumper wire from FTDI board is to get 5V power from USB, feed through an AMS1117-3.3 to power the ESP31 module. I used a 100uF output tantinium capacitor. It seems this setup is not good enough. I’ll explain later.

With the board on hand, it is now time to setup development environment. There are excellent guides at, as well as LadyAda’s live show

New year is around the corner and I am so eager to continue my new year greeting video “series”. It natually envolves into this:

And the source code too:

Again some notes about the source code:

  • The TFT screen contains 128×160 pixels, at 16bit/pixel it amounts to 40kB/frame, or 320kbits/frame. The SPI bus is running at 13.3MHz, that works out around 40fps. Due to some coding overhead the fastest I can achieve is about 25fps. But again becaused of the latency at WiFi side, I’m currently running the screen at 10fps. That is only 400kB/s for WiFi traffic, which is significantly slower than the claimed 140Mb/s rated speed. Of course there is huge room for improvement at software side.
  • The ESP31 seems to take more power than it’s predecessor ESP8266. The above mentioned AMS1117-3.3 cannot provide enough juice. The phenomenon is garbaged output from serial port, lost WiFi connection, or failed with exception after reset. It could be a thermal issue. I ended up using a lab power supply then all the problems are gone. My supply registered 170mA when WiFi is active. Of course it includes the LCD comsumption. I will do some further investigation at a later time.
  • I encouontered some WiFi abnormalities that the connection speed slows down significantly from time to time. Reset the chip will resolve the issue. For the time being I havn’t fully dig into it.
  • Other than these, ESP31 (ESP32 Beta) and the current SDK (1.1.0) seems quite stable.

To all my readers or viewers I take this oppotunity to wish you a Merry Christmas and Happy New Year. See you next year.


4 thoughts on “First sight into ESP32

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s