Skip to main content

RP2040

Microcontroller

The RP2040 is a microcontroller from Raspberry Pi. View the full RP2040 datasheet below including key specifications, pinout.

Manufacturer

Raspberry Pi

Package

7 x 7 mm QFN-56

Key Specifications

ParameterValue
CPU CoresDual ARM Cortex-M0+
GPIO Pins30 (4 with ADC)
On-Chip SRAM264 kB
PWM Channels16
USB InterfaceUSB 1.1 (Host/Device)
I2C Interfaces2
SPI Interfaces2
UART Interfaces2
PIO State Machines8
Package Dimensions7 mm x 7 mm
CPU Clock Frequency133 MHz
Off-Chip Flash SupportUp to 16 MB
GPIO Supply Voltage (IOVDD)1.8V to 3.3V
ADC Supply Voltage (ADC AVDD)3.3V
USB PHY Supply Voltage (USB VDD)3.3V
Digital Core Supply Voltage (DVDD)1.1V
Core Regulator Input Voltage (VREG VIN)1.8V to 3.3V
Core Regulator Output Current (VREG VOUT)100 mA max
Core Regulator Output Voltage (VREG VOUT)1.1V

Overview

Part: Raspberry Pi RP2040

Type: Microcontroller

Description: The RP2040 is a dual ARM Cortex-M0+ microcontroller operating at up to 133 MHz, featuring 264kB on-chip SRAM, support for up to 16MB off-chip Flash, and a rich peripheral set including 30 GPIOs, 2x UART, 2x SPI, 2x I2C, 16x PWM, 8x PIO state machines, and USB 1.1.

Operating Conditions:

  • Supply voltage: 1.8–3.3 V
  • Operating temperature: null
  • Max clock frequency: 133 MHz

Absolute Maximum Ratings:

  • Max supply voltage: null
  • Max continuous current: null
  • Max junction/storage temperature: null

Key Specs:

  • CPU: Dual ARM Cortex-M0+ @ 133 MHz
  • On-chip SRAM: 264kB in six independent banks
  • Off-chip Flash memory support: Up to 16MB via dedicated QSPI bus
  • GPIO pins: 30 (four can be used as analogue inputs)
  • Communication Peripherals: 2 × UARTs, 2 × SPI controllers, 2 × I2C controllers
  • PWM channels: 16
  • PIO state machines: 8
  • USB: 1.1 controller and PHY, with host and device support

Features:

  • DMA controller
  • Fully connected AHB crossbar
  • Interpolator and integer divider peripherals
  • On-chip programmable LDO to generate core voltage
  • Two on-chip PLLs to generate USB and core clocks
  • UF2 bootloader in ROM
  • Polished MicroPython port

Applications:

  • Machine learning
  • Motor control
  • Agriculture
  • Audio

Package:

  • 7 × 7 mm QFN-56 package

Features

CPU:

Dual ARM Cortex-M0+ @ 133 MHz

Memory:

264kB on-chip SRAM in six independent banks Support for up to 16MB of off-chip Flash memory via dedicated QSPI bus

Architecture:

DMA controller

Fully connected AHB crossbar Interpolator and integer divider peripherals On-chip programmable LDO to generate core voltage Two on-chip PLLs to generate USB and core clocks

Interfacing:

30 GPIO pins, four of which can be used as analogue inputs

Peripherals:

2 × UARTs 2 × SPI controllers 2 × I2C controllers 16 × PWM channels 8 × PIO state machines

1 × USB 1.1 controller and PHY, with host and device support

Package:

7 × 7 mm QFN-56 package

Product lifetime:

Raspberry Pi understands the value to customers of long term availability of product and therefore aims to continue supply for as long as practically possible. We expect RP2040 to remain in production until at least January 2041.

Compliance:

RP2040 is compliant to Moisture Sensitivity Level 1. RP2040 is compliant to the requirement of REACH Substances of Very High Concern (SVHC) that ECHA announced on 25 June 2020.

RP2040 is compliant to the requirement and standard of Controlled Environment-related Substance of RoHS directive (EU) 2011/65/EU and directive (EU) 2015/863.

Full details can be found in the RP2040 datasheet.

Pin Configuration

RP2040 QFN-56 Pinout

Pin NumberPin NameTypeDescription
1IOVDDPI/O Supply Voltage
2GPIO0I/OGeneral Purpose I/O 0
3GPIO1I/OGeneral Purpose I/O 1
4GPIO2I/OGeneral Purpose I/O 2
5GPIO3I/OGeneral Purpose I/O 3
6GPIO4I/OGeneral Purpose I/O 4
7GPIO5I/OGeneral Purpose I/O 5
8GPIO6I/OGeneral Purpose I/O 6
9GPIO7I/OGeneral Purpose I/O 7
10IOVDDPI/O Supply Voltage
11GPIO8I/OGeneral Purpose I/O 8
12GPIO9I/OGeneral Purpose I/O 9
13GPIO10I/OGeneral Purpose I/O 10
14GPIO11I/OGeneral Purpose I/O 11
15GPIO12I/OGeneral Purpose I/O 12
16GPIO13I/OGeneral Purpose I/O 13
17GPIO14I/OGeneral Purpose I/O 14
18GPIO15I/OGeneral Purpose I/O 15
19TESTENITest Enable
20XOUTOCrystal Oscillator Output
21XINICrystal Oscillator Input
22DVDDPCore Supply Voltage
23DVDDPCore Supply Voltage
24GNDSGround
25GNDSGround
26SWCLKI/OSWD Clock
27SWDIOI/OSWD Data I/O
28RUNIRun Control
29GPIO18I/OGeneral Purpose I/O 18
30GPIO19I/OGeneral Purpose I/O 19
31GPIO20I/OGeneral Purpose I/O 20
32GPIO21I/OGeneral Purpose I/O 21
33IOVDDPI/O Supply Voltage
34GPIO22I/OGeneral Purpose I/O 22
35GPIO23I/OGeneral Purpose I/O 23
36GPIO24I/OGeneral Purpose I/O 24
37GPIO25I/OGeneral Purpose I/O 25
38GPIO26/ADC0I/OGeneral Purpose I/O 26 / ADC Channel 0
39GPIO27/ADC1I/OGeneral Purpose I/O 27 / ADC Channel 1
40GPIO28/ADC2I/OGeneral Purpose I/O 28 / ADC Channel 2
41GPIO29/ADC3I/OGeneral Purpose I/O 29 / ADC Channel 3
42IOVDDPI/O Supply Voltage
43VREFPADC Reference Voltage
44VREG_OUTPVoltage Regulator Output
45VREG_INPVoltage Regulator Input
46USB_DMI/OUSB Data Minus
47USB_DPI/OUSB Data Plus
48VBUSPUSB Bus Voltage
49VBUSPUSB Bus Voltage
50GNDSGround
51GNDSGround
52GNDSGround
53GNDSGround
54GNDSGround
55GNDSGround
56GNDSGround

Notes

  • Power pins: IOVDD (pins 1, 10, 33, 42), DVDD (pins 22, 23), VBUS (pins 48, 49), VREG_IN (pin 45), VREG_OUT (pin 44), VREF (pin 43)
  • Ground pins: GND (pins 24, 25, 50–56)
  • ADC pins: GPIO26–GPIO29 (pins 38–41) have dual function as ADC channels 0–3
  • Debug pins: SWCLK (pin 26) and SWDIO (pin 27) support SWD protocol
  • USB pins: USB_DP (pin 47), USB_DM (pin 46), VBUS (pins 48, 49)
  • Crystal pins: XIN (pin 21), XOUT (pin 20) for external oscillator
  • Control pins: RUN (pin 28) for chip enable, TESTEN (pin 19) for test mode
Data on this page is extracted from publicly available manufacturer datasheets using automated tools including AI. It may contain errors or omissions. Always verify specifications against the official manufacturer datasheet before making design or purchasing decisions. See our Terms of Service. Rights holders can submit a takedown request.

Get structured datasheet data via API

Get started free