Raspberry Pi Pico 2
Overview
The Raspberry Pi Pico 2 is the second-generation product in the Raspberry Pi Pico family. From the Raspberry Pi website is referred to as Pico 2.
There are many limitations of the board currently. Including but not limited to: - The Zephyr build only supports configuring the RP2350A with the Cortex-M33 cores. - As with the Pico 1, there’s no support for running any code on the second core.
Hardware
Dual Cortex-M33 or Hazard3 processors at up to 150MHz
520KB of SRAM, and 4MB of on-board flash memory
USB 1.1 with device and host support
Low-power sleep and dormant modes
Drag-and-drop programming using mass storage over USB
26 multi-function GPIO pins including 3 that can be used for ADC
2 SPI, 2 I2C, 2 UART, 3 12-bit 500ksps Analogue to Digital - Converter (ADC), 24 controllable PWM channels
2 Timer with 4 alarms, 1 AON Timer
Temperature sensor
3 Programmable IO (PIO) blocks, 12 state machines total for custom peripheral support
Flexible, user-programmable high-speed IO
Can emulate interfaces such as SD Card and VGA
Supported Features
The rpi_pico2
board supports the hardware features listed below.
- on-chip / on-board
- Feature integrated in the SoC / present on the board.
- 2 / 2
-
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files. -
vnd,foo
-
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
rpi_pico2/rp2350a/m33
target
Type |
Location |
Description |
Compatible |
---|---|---|---|
CPU |
on-chip |
ARM Cortex-M33 CPU2 |
|
ADC |
on-chip |
RaspberryPi Pico ADC1 |
|
Clock control |
on-chip |
||
on-chip |
The representation of Raspberry Pi Pico’s PLL2 |
||
on-chip |
The representation of Raspberry Pi Pico ring oscillator1 |
||
on-chip |
The representation of Raspberry Pi Pico external oscillator1 |
||
on-chip |
Raspberry Pi Pico clock controller node1 |
||
Counter |
on-chip |
||
DMA |
on-chip |
Raspberry Pi Pico DMA1 |
|
Flash controller |
on-chip |
Raspberry Pi Pico flash controller1 |
|
GPIO & Headers |
on-chip |
Raspberry Pi Pico GPIO1 |
|
on-chip |
|||
on-board |
GPIO pins exposed on Raspberry Pi Pico headers1 |
||
I2C |
on-chip |
Raspberry Pi Pico I2C2 |
|
Interrupt controller |
on-chip |
ARMv8-M NVIC (Nested Vectored Interrupt Controller)1 |
|
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
on-board |
Group of PWM-controlled LEDs1 |
||
Miscellaneous |
on-chip |
Raspberry Pi Pico PIO3 |
|
MTD |
on-chip |
Flash node1 |
|
on-board |
Fixed partitions of a flash (or other non-volatile storage) memory1 |
||
Pin control |
on-chip |
The RPi Pico pin controller is a node responsible for controlling pin function selection and pin properties, such as routing a UART0 Rx to pin 1 and enabling the pullup resistor on that pin1 |
|
PWM |
on-chip |
Raspberry Pi Pico PWM1 |
|
Reset controller |
on-chip |
Raspberry Pi Pico Reset Controller1 |
|
Sensors |
on-chip |
RaspberryPi Pico family temperature sensor node1 |
|
Serial controller |
on-chip |
||
SPI |
on-chip |
Raspberry Pi Pico SPI2 |
|
SRAM |
on-chip |
Generic on-chip SRAM description1 |
|
Timer |
on-chip |
ARMv8-M System Tick1 |
|
USB |
on-chip |
RaspberryPi Pico USB Device Controller1 |
|
Watchdog |
on-chip |
Raspberry Pi Pico Watchdog1 |
Connections and IOs
The default pin mapping is unchanged from the Pico 1 (see Pin Mapping).
Programming and Debugging
As with the Pico 1, the SWD interface can be used to program and debug the device, e.g. using OpenOCD with the Raspberry Pi Debug Probe .