RP2040 is a 32-bit dual-core ARM Cortex-M0+ microcontroller designed by Raspberry Pi Ltd. In January 2021, it was released as part of the Raspberry Pi Pico board.[1] Its successor is the RP2350 series.[2]

Overview

Announced on 21 January 2021, the RP2040 is the first microcontroller designed by Raspberry Pi Ltd.[1][3] The microcontroller is low cost, with the Raspberry Pi Pico being introduced at US$4 and the RP2040 itself costing US$1. The microcontroller can be programmed in assembly, C, C++, Forth,[4] Swift,[5] Free Pascal, Rust,[6] Go,[7] MicroPython, CircuitPython,[1][8] PicoRuby,[9] Ada,[10] TypeScript[11] and Zig.[12] It is powerful enough to run TensorFlow Lite.[1]

At announcement time, four other manufacturers (Adafruit, Pimoroni, Arduino, SparkFun) were at advanced stages of their product design, awaiting the widespread availability of chips to be put into production.[13]

Hackaday notes the benefits of the RP2040 as being from Raspberry Pi, having a good feature set, and being released in low-cost packages.[14]

Multiple stepping levels of the chip have been produced.[15]

Features

The RP2040 chip is a 7 × 7 mm QFN-56EP surface-mount device (SMD) package manufactured by TSMC using its 40 nm process.[16]

  • Key features:[17]
    • Dual ARM Cortex-M0+ cores (ARMv6-M instruction set), Originally run at 133 MHz,[2] but later certified at 200 MHz[18]
      • Each core has an integer divider peripheral and two interpolators
    • 264 KB SRAM in six independent banks (four 64 KB, two 4 KB)
    • No internal flash or EEPROM memory (after reset, the boot-loader loads firmware from either external flash memory or USB into internal SRAM)
    • QSPI bus controller supports up to 16 MB of external flash memory
    • DMA controller, 12 channel, 2 IRQ
    • AHB crossbar, fully-connected
    • On-chip programmable low-dropout regulator (LDO) to generate core voltage
    • Two on-chip PLLs to generate USB and core clocks
    • 30 GPIO pins, of which four can optionally be used as analog inputs
  • Peripherals:
    • One USB 1.1 (LS & FS) controller and PHY, host and device support, 1.5 Mbit/s (Low Speed) and 12 Mbit/s (Full Speed)
    • Two UART controllers
    • Two SPI controllers
    • One QSPI (quad SPI) controller (SSI), supports 1 / 2 / 4-bit SPI transfers, 1 chip select
    • Two I²C controllers
    • Eight PIO (programmable input–output) state machines
    • 16 PWM channels
    • 4-channel 12-bit 500-ksps SAR ADC, extra channel is connected to internal temperature sensor

For comparison with the RP2350, see RP2350 § Family comparison.

Boards

A number of manufacturers have announced their own boards using the RP2040. A selection of the growing number is here:

Board nameManufacturerSize (mm)Header pinsDebug connectionNumber of padsUSB connectorOther connectorsFlash sizeGPIO pinsADC pinsButtonsOther featuresImage
Pico[19]Raspberry Pi Ltd51×2140+3via headers6micro-USB2 MB263BOOTSEL
Pico W[20]Raspberry Pi Ltd51×2140+3via headers6micro-USB2 MB263BOOTSELWi-Fi, Bluetooth
XIAO RP2040[21]Seeed Studio20×17.5×3.514Reset Button/ Boot ButtonUSB Type-C interface2 MBBOOTSEL + RESET
Nano RP2040 Connect[22]Arduino45×1830via pads5+4+2micro-USB16 MB1Wi-Fi, Bluetooth, 9-axis IMU, microphone
Tiny 2040[23]Pimoroni22.9×18.2×68+3via headersUSB-C8 MB124BOOTSEL + RESET
Keybow 2040[24]Pimoroni76x76x300 (USB only)USB-C2 MB16 keys
PicoSystem[25]Pimoroni96.6×42.7×15.50 (self contained)USB-C16 MB4 + joypadColor 240×240 LCD, onboard battery
Feather RP2040[26]Adafruit51×23×728via pinsUSB-CSTEMMA QT, lipo battery8 MB214BOOTSEL + RESETBattery charger
ItsyBitsy RP2040[27]Adafruit36×18×433via headersmicro-USB4 MB234BOOTSEL + RESET
Metro RP2040[28]Adafruit71x53×1332SWD + 3 pin JST SH compatibleUSB Type-CDC jack for 6-12VDC / STEMMA QT / SWD / pico probe16 MB244BOOTSEL + RESETNeoPixel LED, Micro SD
QT Py RP2040[29]Adafruit22×18×614Reset Button/ Boot ButtonUSB-CSTEMMA QT8 MB134BOOTSEL + RESET3.3vdc regulator, NeoPixel LED
Pro Micro – RP2040[30]Sparkfun36×18244+2USB-CQWIIC16 MB204BOOTSEL + RESET
Thing Plus RP2040[31]Sparkfun59×2328JTAG pinsUSB-CQWIIC, lipo battery16 MB184BOOTSEL + RESETBattery charger
MicroMod RP2040[32]Sparkfun22×220edge connectoredge connector16 MB293none
Müsli USB Pmod[33]Lone Dynamics45×20.3212SWDUSB Type-A female12-pin male PMOD, SWD256 KB80BOOTSELUSB host, 5V boost converter
Werkzeug USB Multi-Tool[34]Lone Dynamics50×5032USB-C12-pin female PMOD, USB Type-A female1 MB244BOOTSELUSB device/host, PMOD
RP2040[35]WeAct Studio53x21.5240+4via headersUSB-C2 MB,
4 MB,
8 MB,
16 MB
264BOOTSEL + RESET
RP2040-Zero[36]Waveshare Electronics23×1823USB-C10-pad connector2 MB294BOOTSEL + RESETRGB LED (WS2812)
Pico2040zeankun.dev51x1840+3 (2mm and 2.54mm variants are available)SWD4micro-USB16 MB,
32 MB,
64 MB,
128 MB
284BOOTSEL + RESET
Bus Pirate 5Where Labs, LLC60x3710+9SWDUSB-C16MB
W5100S-EVB-Pico[37]WIZnet Co., Ltd.75x2140+3via headersMicro-USBRJ452 MB263BOOTSEL + RESETEthernet
W5500-EVB-Pico[38]WIZnet Co., Ltd.75x2140+3via headersMicro-USBRJ452 MB263BOOTSEL + RESETEthernet
W6100-EVB-Pico[39]WIZnet Co., Ltd.75x2140+3via headersMicro-USBRJ452 MB263BOOTSEL + RESETEthernet
WizFi360-EVB-Pico[40]WIZnet Co., Ltd.75×2140+3via headersMicro-USB2 MB263BOOTSEL + RESETWi-Fi
0xCB-Helios[41]0xCB36×1840+3via headersUSB-C16 MB29BOOTSEL + RESETdefault off red power LED, blue user LED, level shifter to drive 5V components. ESD protection chip onboard
Picopad[42]Pájeníčko s.r.o.129x5312via headersmicro-USBmicroSD, external connector2 MB6BOOTSEL + RESETon-off, Wi-Fi, micro SD card, external connector, IPS screen, speaker, battery
MUREX ANYESC[43]MUREX Robotics78×353via headersUSB-Cedge connector8 MB30BOOTSEL + RESETcommercial ESC connector, 3 user LEDs
RP2040-PICO30[44]OLIMEX Ltd51×2140+3via headersUSB-COptional UEXT (pUEXT)2 MB304BOOTSEL + RESET3.3V 2A (3A peak) DCDC, All 30 GPIOs available to the user, Optional status LED
RP2040-PICO30-16[44]OLIMEX Ltd51×2140+3via headersUSB-COptional UEXT (pUEXT)16 MB304BOOTSEL + RESET
PicoUSB[45]VoltMake[46]45×12x40 (USB only)Dual sided USB-A2 MBBOOTSEL + MODEstatus LED

See also

  • Arduino – a popular microcontroller board family
  • ESP32 – a series of low-cost, low-power system on a chip microcontrollers with integrated Wi-Fi and dual-mode Bluetooth.
  • STM32 – a family of 32-bit microcontroller integrated circuits
  • Raspberry Pi – Raspberry Pi's series of small single board computers
  • Thumby (console) – a thumb-sized micro-console powered by the RP2040

References

  1. ^ "Meet Raspberry Silicon: Raspberry Pi Pico now on sale at $4". January 21, 2021.
  2. ^ "RP2040 Datasheet". Raspberry Pi Ltd. Retrieved 20 February 2021.
  3. ^ Adams, James (1 February 2021). "Raspberry Pi RP2040: Our Microcontroller for the Masses". Arm Blueprint. Retrieved 20 February 2021.
  4. ^ "zeptoforth", GitHub, 2025-10-09, retrieved 2025-10-09
  5. ^ "apple/swift-embedded-examples", Apple, 2024-06-14, retrieved 2024-06-14
  6. ^ "Rust on the RP series of microcontrollers". GitHub. Retrieved 29 March 2023.
  7. ^ "Raspberry Pi Pico". TinyGo. Retrieved 2024-09-10.
  8. ^ Rembor, Kattni. "Getting Started with Raspberry Pi Pico and CircuitPython". Adafruit Learning System. Adafruit. Retrieved 17 February 2023.
  9. ^ "PicoRuby R2P2". Retrieved 19 Nov 2025.
  10. ^ "Ada on the Raspberry Pi Pico". Retrieved 10 July 2023.
  11. ^ "RP2040 | DeviceScript". microsoft.github.io. Retrieved 2023-11-28.
  12. ^ "microzig", Zig Embedded Group, 2024-12-08, retrieved 2024-12-08
  13. ^ "Tweet". twitter.com. Retrieved 2021-02-18.
  14. ^ Williams, Elliot (20 January 2021). "Raspberry Pi Enters Microcontroller Game With $4 Pico". Hackaday. Retrieved 20 February 2021.
  15. ^ "RP2040 datasheet". Raspberry Pi Ltd. 2 May 2024. p. 391. There are two hardware issues with the device controller, both of which have software workarounds on RP2040B0, RP2040B1, and are fixed in hardware on RP2040B2
  16. ^ "Raspberry Pi: Here's how we built our own chip to power the Pico". ZDNET. Retrieved 2023-10-05.
  17. ^ "RP2040 Datasheet". raspberrypi.com. Retrieved 2021-03-28.
  18. ^ "Pico SDK 2.1.1"
  19. ^ "Buy a Raspberry Pi Pico"
  20. ^ "Pico W - Raspberry Pi | Rasppishop - Raspberry Pi Boards und Zubehör" (in German). Pico W - Raspberry Pi | Rasppishop - Raspberry Pi Boards und Zubehör. Retrieved 2023-09-04.
  21. ^ "Seeed Studio XIAO RP2040 - Supports Arduino, MicroPython and CircuitPython". www.seeedstudio.com. 2023-08-06. Retrieved 2023-09-04.
  22. ^ "Welcome Raspberry Pi to the world of microcontrollers". 20 January 2021.
  23. ^ "Tiny 2040 – Pimoroni"
  24. ^ "Keybow 2040 – Pimoroni"
  25. ^ "PicoSystem – Pimoroni"
  26. ^ "Adafruit Feather RP2040"
  27. ^ "Adafruit ItsyBitsy RP2040"
  28. ^ "Adafruit Metro RP2040"
  29. ^ "Adafruit QT Py RP2040"
  30. ^ "SparkFun Pro Micro - RP2040 - DEV-18288 - SparkFun Electronics"
  31. ^ "SparkFun Thing Plus - RP2040 - DEV-17745 - SparkFun Electronics"
  32. ^ "SparkFun MicroMod RP2040 Processor - DEV-17720 - SparkFun Electronics"
  33. ^ "Müsli USB Pmod™ Compatible Module"
  34. ^ "Werkzeug USB Multi-Tool"
  35. ^ Studio, WeAct (2023-08-17), "RP2040 / WeAct Studio 微行工作室 出品", retrieved 2023-09-04
  36. ^ "RP2040-Zero, A Low-Cost, High-Performance Pico-Like MCU Board Based On Raspberry Pi Microcontroller RP2040". www.waveshare.com. Retrieved 2023-09-04.
  37. ^ "WIZnet W5100S-EVB-Pico"
  38. ^ "WIZnet W5500-EVB-Pico"
  39. ^ "WIZnet W6100-EVB-Pico"
  40. ^ "WIZnet WizFi360-EVB-Pico"
  41. ^ "0xCB Helios". GitHub
  42. ^ "Picopad"
  43. ^ "ESC – MUREX Robotics Documentation". docs.murexrobotics.com. Retrieved 2024-07-07.
  44. ^ "RP2040-PICO30 - Open Source Hardware Board". Olimex. Retrieved 2024-07-19.
  45. ^ "PicoUSB: Raspberry Pi (Pico) RP2040 powered Bad USB (Rubber Ducky).". PicoUSB. Retrieved 2024-09-29.
  46. ^ "VoltMake - Electronics Engineering - PCB Design - Firmware - Software". VoltMake. Retrieved 2024-09-29.