RP2040
The RP2040 is a 32-bit dual ARM Cortex-M0+ microcontroller integrated circuit[1][2][3] by Raspberry Pi Ltd (was Raspberry Pi Trading Ltd). At the same time, it was released as part of the Raspberry Pi Pico board.[1]


Overview
Announced on 21st January 2021, the RP2040 is the first microcontroller designed by Raspberry Pi Ltd (was Raspberry Pi Trading Ltd).[1][2] 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, Rust, C/C++ and MicroPython.[1] 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 in to production.[4] SparkFun has since released products based around the RP2040.[5]
Hackaday notes the benefits of the RP2040 as being from Raspberry Pi, having a good feature set, and being released in low-cost packages.[6]
Per the datasheet, there are multiple versions of the chip:
"The full source for the RP2040 bootROM can be found at https://github.com/raspberrypi/pico-bootrom.
This includes both version 1 and version 2 of the bootROM, which correspond to the B0 and B1 silicon
revisions, respectively."
Features
The chip is 40nm silicon in a 7 × 7 mm QFN-56 SMD package.
- Key features: [7]
- 133 MHz dual ARM Cortex-M0+ cores (can be overclocked to over 400 MHz[8])
- Each core has an integer divider peripheral, and two interpolators.
- 264 KB SRAM in six independent banks
- No internal Flash or EEPROM memory (after reset, the boot-loader loads firmware from either external flash memory or USB bus into internal SRAM)
- QSPI bus controller, supporting up to 16 MB of external Flash memory
- DMA controller
- AHB crossbar, fully-connected
- On-chip programmable LDO to generate core voltage
- 2 on-chip PLLs to generate USB and core clocks
- 30 GPIO pins, of which 4 can optionally be used as analog inputs
- 133 MHz dual ARM Cortex-M0+ cores (can be overclocked to over 400 MHz[8])
- Peripherals:
Boards
A number of manufacturers have announced their own boards using the RP2040. A selection of the growing number is here:
Board name | Manufacturer | Size (mm) | Header pins | Debug connection | Number of pads | USB connector | Other connectors | Flash size | GPIO pins | ADC pins | Buttons | Other features | Image |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Pico[9] | Raspberry Pi Ltd | 51x21 | 40+3 | via headers | 6 | micro-USB | 2MB | 26 | 3 | BOOTSEL | ![]() | ||
XIAO RP2040 | Seeedstudio | 20x17.5x3.5 | 30 | Reset Button/ Boot Button | USB Type-C interface | 2MB | 1 RESET button, 1 BOOT button | ||||||
Nano RP2040 Connect[10] | Arduino | 45x18 | 30 | via pads | 5+4+2 | micro-USB | 16MB | 1 | WiFi, Bluetooth, 9-axis IMU, microphone | ![]() | |||
Tiny 2040[11] | Pimoroni | 22.9x18.2x6 | 8+3 | via headers | USB-C | 8MB | 12 | 4 | BOOTSEL + RESET | ||||
Keybow 2040[12] | Pimoroni | 0 (USB only) | USB-C | 16 keys | |||||||||
PicoSystem[13] | Pimoroni | 0 (self contained) | USB-C | 4 + joypad | Color 240x240 LCD, onboard battery | ||||||||
Feather RP2040[14] | Adafruit | 50.8x22.8x7 | 28 | via pins | USB-C | STEMMA QT, lipo battery | 8MB | 21 | 4 | BOOTSEL + RESET | Battery charger | ||
ItsyBitsy RP2040[15] | Adafruit | 36x18x4 | 33 | via headers | micro-USB | 4MB | 23 | 4 | BOOTSEL + RESET | ||||
QtPy RP2040[16] | Adafruit | 20x17.5x3.5 | 30 | Reset Button/ Boot Button | USB Type-C interface | 8MB | 1 RESET button, 1 BOOT button | 3.3vdc regulator, NeoPixel LED | |||||
Pro Micro - RP2040[17] | Sparkfun | 36x18 | 24 | 4+2 | USB-C | QWIIC | 16MB | 20 | 4 | BOOTSEL + RESET | ![]() | ||
Thing Plus RP2040[18] | Sparkfun | 59x23 | 28 | JTAG pins | USB-C | QWIIC, lipo battery | 16MB | 18 | 4 | BOOTSEL + RESET | Battery charger | ![]() | |
MicroMod RP2040[19] | Sparkfun | 22x22 | 0 | edge connector | edge connector | 16MB | 29 | 3 | none | ![]() |
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
References
- "Meet Raspberry Silicon: Raspberry Pi Pico now on sale at $4". January 21, 2021.
- Adams, James (1 February 2021). "Raspberry Pi RP2040: Our Microcontroller for the Masses". Arm Blueprint. Retrieved 20 February 2021.
- "RP2040 Datasheet" (PDF). Raspberry Pi Ltd. Retrieved 20 February 2021.
- "Tweet". twitter.com. Retrieved 2021-02-18.
- "RP2040 - A microcontroller from Raspberry Pi - SparkFun Electronics". www.sparkfun.com. Retrieved 20 February 2021.
- Williams, Elliot (20 January 2021). "Raspberry Pi Enters Microcontroller Game With $4 Pico". Hackaday. Retrieved 20 February 2021.
- "RP2040 Datasheet" (PDF). raspberrypi.com. Retrieved 2021-03-28.
- "Robin Grosset Takes a Raspberry Pi Pico's RP2040 to New Heights with an Overclock to 420MHz". Hackster.io. Retrieved 2021-03-28.
- "Buy a Raspberry Pi Pico".
- "Welcome Raspberry Pi to the world of microcontrollers". 20 January 2021.
- "Tiny 2040 – Pimoroni".
- "Keybow 2040 – Pimoroni".
- "PicoSystem – Pimoroni".
- "Adafruit Feather RP2040".
- "Adafruit ItsyBitsy RP2040".
- https://www.adafruit.com/product/4900
- "SparkFun Pro Micro - RP2040 - DEV-18288 - SparkFun Electronics".
- "SparkFun Thing Plus - RP2040 - DEV-17745 - SparkFun Electronics".
- "SparkFun MicroMod RP2040 Processor - DEV-17720 - SparkFun Electronics".