ESP-01 NanoBoard (ESP8266)

Giving "new life" to the "mature" ESP-01 modules!

Similar projects worth following
The ESP-01 NanoBoard is a little "motherboard" for the well known ESP-01 modules (ESP8266) with some features for an easy use: on board serial-USB adapter (CH340), voltage regulator with polyfuse on USB, external power connector, rugged USB B connector, optional 16x GPIO expander, I2C connector, ESP-01 GPIO connector, expander connectors, automatic upload circuitry (Arduino IDE), configurable User key, Reset key, various control leds.
The idea was to reuse the ESP-01 for a board easy to program, ideal for beginners and classrooms.

In the following images it is possible to see the front and the back of a completely assembled board, including the optional 16x GPIO expander (MCP23017 powered at 3.3V):

The service used to make the PCBs was JLPCB. They kindly offered to me to test their service, so I did:

and the result was good for my needs!

Next video shows the NanoBoard in action, loading a blink demo program using the Arduino IDE (Windows 10 host). The upload process do not require to press any key (like for the well known NodeMCU):

Please note that you need before to set  "nodemcu" (instead of the default "ck" ) as "Reset Method" inside the "Tools" menu of Arduino IDE.

The optional expander

The ESP-01 NanoBoard has an optional 16x GPIO expander (see the schematic). If you decide not to want it, just not to populate the components inside the dotted optional part of the schematic.

Here it is a NanoBoard "lite", without the optional expander:

ino - 3.90 kB - 04/27/2018 at 17:58


A180118-R070318 BOM.ods

List of components

spreadsheet - 5.61 kB - 04/26/2018 at 18:56



PCB production gerber files

x-zip-compressed - 123.10 kB - 04/23/2018 at 19:58


x-zip-compressed - 84.87 kB - 04/23/2018 at 19:57


A18018-R070318 SCH.pdf

ESP-01 NanoBoard schematic

Adobe Portable Document Format - 86.80 kB - 04/23/2018 at 19:55


  • How to configure User key with solder jumpers (SJ1/SJ2)

    Just4Fun04/24/2018 at 12:13 0 comments

    The User key can be configured to act as the FLASH key of the nodeMCU (key connected to ESP-01 GP0IO) or as a generic user key connected to the GPA1 port of the GPIO expander (MCP23017).

    Using Arduino IDE the second choice seems to be better, of course only if you have populated the GPIO expander.

    To configure the User key there are two solder jumpers (SJ1 and SJ2) in the back side of the PCB:

    Note that the references SJ1 and SJ2 on the PCB are swapped. The photo shows the right position.

    The table written near the two solder jumpers shows the two possible configurations.

    In the previous photo the User key is configured (SJ1 shorted) to be connected to the GPA1 pin of the GPIO expander (see the schematic).

    In the following photo the User key is configured to be connected to the ESP-01 GPIO0 pin (SJ2 shorted). In this case this is the only choice because the GPIO expander is not populated on the PCB:

View project log

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates