DEVELOPBY UNEXPECTED MAKER

Develop

Languages, development tools and ready-made projects for your next build.

If this is your first time using an Unexpected Maker development board, please check out the Getting Started guide → first.

Languages / platforms

Choose your language and development tools. Runtime support varies by chip; follow the linked project’s hardware requirements and board setup.

CircuitPython

Write Python for sensors, displays and your next hardware idea.

Choose your MCU

1

Download CircuitPython for your board

The original ESP32 has no native USB, so it cannot use the UF2 bootloader or show a CIRCUITPY drive. CircuitPython is installed as a .bin file over the board’s USB-to-serial connection.

Open your board’s page on circuitpython.org. The web installer in step 3 downloads the file for you; for esptool, download the latest stable .bin.

CircuitPython download for each board
Your boardCircuitPython download
TinyPICOTinyPICO
TinyPICO NanoTinyPICO NANO
2

Connect the board

Connect your board with a USB data cable and close any serial monitor. TinyPICO and TinyPICO Nano enter download mode automatically when the flashing tool starts; there are no buttons to press.

3

Install CircuitPython

Installing erases the board’s flash.

  1. In a browser that supports Web Serial, such as Chrome or Edge, click OPEN INSTALLER on your board’s page.
  2. Click Connect and select the board’s serial port.
  3. Follow the installer’s steps. When it finishes, press RESET.

Install with esptool

These commands are for esptool 5.4.0, the latest release. Replace PORT with your board’s port and firmware.bin with the downloaded file. esptool documentation →

  1. You must erase the flash first.
  2. Write the .bin at address 0x0.
esptool --chip esp32 --port PORT erase-flash
esptool --chip esp32 --port PORT write-flash 0x0 firmware.bin
4

Connect to CircuitPython

There is no CIRCUITPY drive. Open the board’s serial port at 115200 baud, for example in Thonny, to reach the Python prompt. To edit files over Wi-Fi, set up CircuitPython’s web workflow.

Deployable projects

Ready-made firmware and connected applications for lighting, sensors and home automation. Follow each project’s supported hardware and configuration guide.