Pimoroni Pico Plus2
Overview
The Pimoroni Pico Plus 2 [1] is a compact and versatile board featuring the Raspberry Pi RP2350B SoC. It includes USB Type-C, Qwiic/STEMMA QT connectors, SP/CE connectors, a debug connector, a reset button, and a BOOT button.
Hardware
Dual Cortex-M33 or Hazard3 processors at up to 150MHz
520KB of SRAM, and 4MB of on-board flash memory
16MB of on-board QSPI flash (supports XiP)
8MB of PSRAM
USB 1.1 with device and host support
Low-power sleep and dormant modes
Drag-and-drop programming using mass storage over USB
48 multi-function GPIO pins including 8 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
USB-C connector for power, programming, and data transfer
Qwiic/STEMMA QT(Qw/ST) connector
SP/CE connector
3-pin debug connector, this can use with Raspberry Pi Debug Probe [2].
Reset button and BOOT button (BOOT button also usable as a user switch)
Supported Features
The pico_plus2
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.
Type |
Location |
Description |
Compatible |
---|---|---|---|
CPU |
on-chip |
ARM Cortex-M33 CPU2 |
|
ADC |
on-chip |
Raspberry Pi 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 |
Raspberry Pi Pico GPIO Port2 |
||
on-board |
GPIO pins exposed on Raspberry Pi Pico headers1 |
||
I2C |
on-chip |
||
Input |
on-board |
Group of GPIO-bound input keys1 |
|
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 |
Raspberry Pi Pico family temperature sensor node1 |
|
Serial controller |
on-chip |
||
SPI |
on-chip |
||
SRAM |
on-chip |
Generic on-chip SRAM1 |
|
Timer |
on-chip |
ARMv8-M System Tick1 |
|
USB |
on-chip |
Raspberry Pi Pico USB Device Controller1 |
|
Watchdog |
on-chip |
Raspberry Pi Pico Watchdog1 |
You can use peripherals that are made by using the PIO. See PIO Based Features
Programming and Debugging
The pico_plus2
board supports the runners and associated west commands listed below.
flash | debug | attach | debugserver | rtt | |
---|---|---|---|---|---|
openocd | ✅ (default) | ✅ (default) | ✅ | ✅ | ✅ |
uf2 | ✅ |
The overall explanation regarding flashing and debugging is the same as or rpi_pico
.
See Using OpenOCD and Using UF2
in rpi_pico
documentation.
# From the root of the zephyr repository
west build -b pico_plus2 samples/basic/blinky -- -DOPENOCD=/usr/local/bin/openocd
west flash