ESP8266: NodeMCU Dev Kit Review

Introduction

I was very excited when the very same group that developed the NodeMcu Lua firmware announced their ESP8266 Dev board. I ordered one from Banggood and yesterday it arrived after more than a month.

Quality

The PCB seems to be well done. The silk screen is yellow as opposed to the blue one the group posted on Github. Besides that they look identical. Solder points look also well done. An interesting point you can observe on the bottom side of the PCB: there is a gap which probably will increase Wifi sensitivity, since the PCB antenna is in this area.

The upper side of the NodeMCU Dev Kit with an ESP8266 ESP12 mounted

The bottom side of the Dev Kit. You can see the gap on the yellow PCB
which probably should improve Wifi sensitivity

Driver Installation

After the first inspection I wanted to attach it to my Mac running Yosemite (10.10). I then opened ESPlorer to see if it would find the Dev Kit but no luck there, the device just didn’t show up. I went back to the NodeMCU Github page and quickly found out, that they used a rather exotic CH340G as chip to connect the ESP8266 with the USB interface. It seems that this chip is a lot cheaper than the FT232R by FTDI that is usually used for a Serial-To-USB adaptor. I quickly found the driver page of the vendor but this was not directly supporting Yosemite. Ray on his esptoy page linked  to these drivers:

The Mac OS X driver has two folders. One for Yosemite and one for the rest. Installation worked like a charm since the drivers are also signed for Mac OS X. Otherwise you’d have to overwrite the security check in your System Settings (Security Tab).
After installation the Dev Kit showed up as
  • /dev/tty.Repleo-CH341-XXXX
  • /dev/cu.Repleo-CH341-XXXX
Strangely only the cu.Repleo device was found by ESPlorer but I could use it to connect with 9600 baud to the AT firmware. Then the next problem came…

Related:  ESP8266: flashing NodeMCU V1.0 on Mac OS X (or ESP8266 ESP-12E in general?)

Flashing New Firmware

There are two tiny buttons on the board: one labeled “User” and the other labeled “Flash”. I’m not sure yet what the User button does, but when pressed during power up the Flash button makes the device go into boot mode where it theoretically can receive new firmwares.
I say theoretically because it didn’t work at all at first. Everything I tried just caused the following error:

$ python esptool.py --port /dev/tty.Repleo-CH341-XXXX write_flash 0x00000 nodemcu_latest.bin 
Connecting...
Traceback (most recent call last):
  File "esptool.py", line 471, in 
    esp.connect()
  File "esptool.py", line 149, in connect
    raise Exception('Failed to connect')
Exception: Failed to connect

After a while I gave up and used a normal serial-to-usb adapter to connect to the RX, TX and GND pins directly, without using the CH340G. For power supply I kept the ESP8266 Dev Kit connected to my Mac.
After another reset I could program the Dev Kit from ESPlorer and I have to say, it works like a charm. It’s great not skip a few wires just to connect to USB. With the Dev Kit power supply and serial connection is all in one beautiful USB wire.

Practical Use

The Dev Kit is very convenient because unlike some of the other ESP8266 modules it easily fits into a standard bread board. But there the beauty ends. As you can see on the picture the Dev Kit spans over all 10 pins of a normal bread board and covers them totally. To use them you’d have to use U-shaped bread board jumpers, but that means you have to remove the Dev Kit just to set them into the board. Not very convenient… Compared to that the ESP201 has on each side one pin row left..
The NodeMCU Dev Kit compared to the ESP8266 ESP201:
You can easily see that the Dev Kit covers all pins,
whereas the ESP201 has one row left

Summary

The NodeMCU Dev Kit is a useful development board that is easy to use and reduces the amount of external components that other ESP8266 modules require. That the Dev Kit covers a lot of holes on a standard 10 pin breadboard reduces the usefulness significantly, but you might prefer this problem over the free-floating wires that the ESP01 requires.
Please let me know if you find out how to flash the firmware without help of an external USB-to-Serial converter…

Quick-Links

Related:  WeatherStation Kit ready for your order
Now a beer! Did you like this post? It often takes me several hours of my free time to write one. If I was your neighbour would you offer me a beer for the hard work I did for you? The beauty is: beers can be teletransported with a painless donation using Paypal. A beer in a Swiss bar costs about USD $4.80. Or use this affiliate link if you order something on Banggood and I'll get a small kickback. Thank you!