Tiny 2040

by Pimoroni

A postage stamp sized RP2040 development board with a USB-C connection, perfect for portable projects, wearables, and embedding into stuff.

While we love the Raspberry Pi Pico we also wanted something smaller and with a bunch more flash on board. Introducing the Tiny 2040 - a teeny tiny powerhouse with the chops to realise truly ambitious projects.

Powered and programmable via USB-C, Tiny 2040 comes with 8MB of QSPI (XiP) flash on board (there's also a budget friendly 2MB version available). The board is designed with castellated pads to allow it to be directly soldered onto a PCB (or you can attach pin headers to hook it up on a breadboard or connect things to it directly with wires). We've also managed to fit in a programmable RGB LED, a reset button and some clever circuitry that lets you use the boot button as a user controllable switch.

It's compatible with firmware built for the Raspberry Pi Pico but offers a reduced number of pins due to its size. You can even run MicroPython on it!

Due to popular demand, we've now also got headered Tiny 2040s available, with downwards pointing pin headers lovingly pre-soldered by pirates.

Features

  • Powered by RP2040
  • ARM Cortex M0+ running at up to 133Mhz
  • 264kB of SRAM
  • USB-C connector for power, programming, and data transfer
  • 2MB or 8MB of QSPI flash supporting XiP
  • User controllable RGB LED
  • Twelve IO pins (including four 12-bit ADC channels)
  • Switch for basic input (doubles up as DFU select on boot)
  • On-board 3V3 regulator (max regulator current output 300mA)
  • Input voltage range 3V - 5.5V
  • Dimensions: approx 22.9 x 18.2 x 6mm (L x W x H, including the USB-C port)
  • Eagle CAD part
  • Schematic (8MB)

Getting Started

Tiny 2040 is firmware agnostic! You can program it with C/C++ or MicroPython in the same way as you would a Raspberry Pi Pico, though you'll need to bear in mind that it has a reduced number of pins. You can find (lots) more information on how to do that (as well as download links for the firmware/SDK) on the RP2040 landing page.

You can also use CircuitPython on your Tiny 2040! CircuitPython is an easy to use, well-established ecosystem with lots of example code and drivers for interfacing with different kinds of hardware.

Notes

  • The RGB LED is connected to GP18-GP20 and active low (so the on/off state will work in the opposite way to the LED on a Raspberry Pi Pico). You can PWM the pins to dim the LED - check out Tonygo2's MicroPython example.

About RP2040

Raspberry Pi's RP2040 microcontroller is a dual core ARM Cortex M0+ running at up to 133Mhz. It bundles in 264kB of SRAM, 30 multifunction GPIO pins (including a four channel 12-bit ADC), a heap of standard peripherals (I2C, SPI, UART, PWM, clocks, etc), and USB support.

One very exciting feature of RP2040 is the programmable IOs which allow you to execute custom programs that can manipulate GPIO pins and transfer data between peripherals - they can offload tasks that require high data transfer rates or precise timing that traditionally would have required a lot of heavy lifting from the CPU.

137 customer reviews

a month ago
Really easy to program. Just drag and drop.
by rara about Tiny 2040 via REVIEWS.io
8 months ago
A brilliant little board that handles real time controls perfectly. I am using the Tiny2040 as an interface between Raspberry Pi and stepper motors. The 8mb on board is extremely useful. Perfect for a DIY cnc automatic tool changer and many other applications.
by Lachlan about Tiny 2040 via REVIEWS.io
a year ago
Small and perfectly formed. Ideal for those projects with limited space.
by Anonymous about Tiny 2040 via REVIEWS.io
a year ago
I find the Tiny2040 the most useful format for the RP2040 microcontroller, its compact format fits into small spaces and circuitboards with ease. It's very forgiving about power and so far I've found it to be the most reliable of the RP2040 format boards I've tried. There's so much on this tiny board. If I have one request for the 'next generation', I wish a 'reset' pin could be squeezed in there somewhere. One that I could trigger remotely, but it's a trivial thing and doesn't stop me using these whenever I need a microcontroller. The CircuitPython ecosystem for this board is great too, give it a go!
by Anonymous about Tiny 2040 via REVIEWS.io
a year ago
Tiny by name, but boy does it pack a punch! I've used it with a BME280 to create a small sensor package for work. And it works beautifully! Still trying to get a screen working, but I haven't had much time to play with that side of things. So I get to do some exploring, and stretch my coding muscles!!
by Tony about Tiny 2040 via REVIEWS.io
a year ago
I first bought this board to explore its amazing power compared to other microcontrollers. And it's cheap! The Synthio library for Circuitpython combined with the RP2040 makes it simple and easy to quickly build small synthesizers with MIDI. This processor will only become more and more useful as development continues for it.
by jack about Tiny 2040 via REVIEWS.io
a year ago
A good logical pin layout. Nice USB connector. Quality stuff
by Neil about Tiny 2040 via REVIEWS.io
2 years ago
Many times you don't need 100 GPIO pins for a project, but maybe a little more CPU power helps... This board is great for that, and with 7 MB of Flash file system it is hard to run out of space for microPython modules!
by Anonymous about Tiny 2040 via REVIEWS.io
2 years ago
Really nice little device. Ordered 2 and one of them failed to reboot with the circuitpython uf2 file but using flash_nuke (twice in a row) sorted it out and both have been running like a charm. Using them to control ws2812 LED strips
by Anonymous about Tiny 2040 via REVIEWS.io
2 years ago
Good little piece of kit, postage stamp form factor lets me plug it into all sorts of tight soots!
by Alina about Tiny 2040 via REVIEWS.io

12 user photos