A tiny, mighty ESP32 development board
TinyPICO is the world’s smallest, fully-featured ESP32 development board, designed to give you access to the power of the ESP32’s dual core 240 MHz processor and internet connectivity, all in a package smaller than your thumb!
There are quite a few ESP32 boards on the market, but they all require you to compromise on one or more features. Some don’t have on-board battery management, while some do but they don’t have low deep sleep current. Others have great low-power modes, but are large and not breadboard-friendly, and none of them have extra RAM unless you go for a more expensive and larger WROVER-powered board.
Unexpected Maker weren’t happy with the status quo - they wanted to have their cake and eat it too!
So they designed the smallest un-compromising ESP32 development board in the world, and then went a step further and gave it 4 MB of extra RAM, an on-board RGB LED, and more juice with a 700 mA 3.3 V regulator.
Features & Specifications
- 32-bit dual-core processor operating at 240 MHz
- 4 MB SPI flash
- 4 MB extra PSRAM
- 2.4 GHz Wi-Fi - 802.11b/g/n
- Bluetooth BLE 4.2
- 3D antenna
- 700 mA 3.3 V LDO regulator
- Optimised power path for low-power battery usage
- LiPo battery management
- Battery pads on the bottom support both JST PH & MicroBlade connectors (included unassembled with every TinyPICO)
- Power (red) & charge (orange) LEDs
- Oh, it’s tiny! Just 18 mm x 32 mm
- 14x GPIO broken out to standard pitch headers
- USB + serial/UART for programming
- APA102 RGB LED
- MicroPython pre-installed
- Supports Arduino IDE
- Supports Espressif IDF
- Lots of example code and libraries
Development Platforms & Software Documentation
TinyPICO ships with mainline MicroPython pre-installed and supports Arduino IDE and Espressif IDF, so you have the flexibility to code the way you want.
Unexpected Maker have been working hard behind the scenes on MicroPython and Arduino C++ helper libraries for TinyPICO as well as collecting and even writing MicroPython libraries for all the hardware in use on the shields.
Optimised Power Paths & Deep Sleep Current
TinyPICO has been designed with two isolated power paths: a 5 V path and a 3.3 V path. Any components that are not needed for operation via battery or via the 3.3 V power pin are isolated within the 5 V power path, and are totally shut down when no USB cable is plugged in.
In-fact, even the power & charge LEDs are shutdown when no 5 V power source is present.
Deep sleep has been optimised for all development platforms, and though we have seen it go as low as 10 uA, the official current rating in deep sleep is 18 uA.
Note: TinyPICO includes an on-board APA102 RGB LED that has a quiescent current of 1 mA.
Thankfully there is a solution for deep sleep. GPIO13 controls the power to the APA102 using a PNP transistor via a high-side switch, so taking GPIO13 high shuts down power to the APA102. It’s essential to do this before going into deep sleep to ensure the lowest current draw possible.
In MicroPython, it’s also required to shutdown GPIO2 and GPIO12 (DATA and CLK for the APA102) as MicroPython uses IDLE HIGH as the default clock state, so you can get current leakage via the CLK or DATA, even with no power to the APA102 directly. There are some helper functions for you in the TinyPICO MicroPython helper library to make this easy.
Each TinyPICO comes in an anti-static bag that includes:
- 1x TinyPICO
- 1x Set of male headers
- 1x Set of female stackable headers
- 1x JST PH connector
- 1x JST MicroBlade connector
- 1x Printed pinout reference card
The headers and JST connectors come loose, so you can chose which you would like to use and solder those on yourself.
Why does it ship with two different JST connectors? The smaller MicroBlade connector is becoming more popular because of how small it is, but many of you (like us) already have LiPo batteries with the PH connectors on them, so it was just nicer to provide both, so you can choose which one suits you best.
TinyPICO and Heat
The Espressif PICO-D4 is a very powerful SIP (System In a Package) for its size, and when running Wi-Fi continuously it gets hot, and because the TinyPICO is small, there is not a lot of place for heat to transfer to.
This is nothing to be alarmed about though. Even when running hot, everything is well within spec. It’s just something to be aware of.
If you need to keep Wi-Fi active for long periods of time, like for a soft-ap setup, make sure you don’t enclose your TinyPICO in a small case that has no air flow, and maybe even consider adding a small heatsink to the board to help with heat transfer.
All hardware is released under the CERN open hardware license, so please make yourself familiar with it before you decide to fork or use the files.
All software is released under the MIT open software license, so again, please make yourself familiar with it before you decide to fork or use the files.
All of the design files for the TinyPICO and all of the shields shown here are available from the TinyPICO GitHub repository