Raspberry Pi Pico 2 W combines the powerful RP2350 from the Pico 2 with the CYW43439 wireless chip from the Pico W. So you get Wi-Fi and Bluetooth, twice as much memory as the Pico W and a choice between Arm and RISC-V cores – with the same pin layout as all Picos.
Specifications
- RP2350A: 2× Arm Cortex-M33 or 2× RISC-V Hazard3, 150 MHz
- 520 kB SRAM, 4 MB flash
- Wi-Fi 802.11n (2.4 GHz) and Bluetooth 5.2 via CYW43439
- 26 GPIO with 3.3 V logic, 3 of them with a 12-bit ADC
- 2× UART, 2× SPI, 2× I2C, 16 PWM channels, 12 PIO state machines
- micro USB, 21 × 51 mm
The version with soldered headers is the Pico 2 WH. It is programmed just like the other Picos – MicroPython, CircuitPython, Pico SDK or the Arduino IDE.
Pinout and pin table
Hover over a pin in the diagram or a table row; use the filter to highlight a bus. You can download the pinout as PNG or SVG.
| Pin | Name | Direction | UART | I2C | SPI | PWM | ADC | Note |
|---|---|---|---|---|---|---|---|---|
| 1 | GP0 | input/output | UART0 TX | I2C0 SDA | SPI0 RX | PWM0 A | ||
| 2 | GP1 | input/output | UART0 RX | I2C0 SCL | SPI0 CSn | PWM0 B | ||
| 3 | GND | – | ||||||
| 4 | GP2 | input/output | UART0 CTS | I2C1 SDA | SPI0 SCK | PWM1 A | ||
| 5 | GP3 | input/output | UART0 RTS | I2C1 SCL | SPI0 TX | PWM1 B | ||
| 6 | GP4 | input/output | UART1 TX | I2C0 SDA | SPI0 RX | PWM2 A | ||
| 7 | GP5 | input/output | UART1 RX | I2C0 SCL | SPI0 CSn | PWM2 B | ||
| 8 | GND | – | ||||||
| 9 | GP6 | input/output | UART1 CTS | I2C1 SDA | SPI0 SCK | PWM3 A | ||
| 10 | GP7 | input/output | UART1 RTS | I2C1 SCL | SPI0 TX | PWM3 B | ||
| 11 | GP8 | input/output | UART1 TX | I2C0 SDA | SPI1 RX | PWM4 A | ||
| 12 | GP9 | input/output | UART1 RX | I2C0 SCL | SPI1 CSn | PWM4 B | ||
| 13 | GND | – | ||||||
| 14 | GP10 | input/output | UART1 CTS | I2C1 SDA | SPI1 SCK | PWM5 A | ||
| 15 | GP11 | input/output | UART1 RTS | I2C1 SCL | SPI1 TX | PWM5 B | ||
| 16 | GP12 | input/output | UART0 TX | I2C0 SDA | SPI1 RX | PWM6 A | ||
| 17 | GP13 | input/output | UART0 RX | I2C0 SCL | SPI1 CSn | PWM6 B | ||
| 18 | GND | – | ||||||
| 19 | GP14 | input/output | UART0 CTS | I2C1 SDA | SPI1 SCK | PWM7 A | ||
| 20 | GP15 | input/output | UART0 RTS | I2C1 SCL | SPI1 TX | PWM7 B | ||
| 21 | GP16 | input/output | UART0 TX | I2C0 SDA | SPI0 RX | PWM0 A | ||
| 22 | GP17 | input/output | UART0 RX | I2C0 SCL | SPI0 CSn | PWM0 B | ||
| 23 | GND | – | ||||||
| 24 | GP18 | input/output | UART0 CTS | I2C1 SDA | SPI0 SCK | PWM1 A | ||
| 25 | GP19 | input/output | UART0 RTS | I2C1 SCL | SPI0 TX | PWM1 B | ||
| 26 | GP20 | input/output | UART1 TX | I2C0 SDA | SPI0 RX | PWM2 A | ||
| 27 | GP21 | input/output | UART1 RX | I2C0 SCL | SPI0 CSn | PWM2 B | ||
| 28 | GND | – | ||||||
| 29 | GP22 | input/output | UART1 CTS | I2C1 SDA | SPI0 SCK | PWM3 A | ||
| 30 | RUN | input | Reset – connecting to GND restarts the chip | |||||
| 31 | GP26 | input/output | UART1 CTS | I2C1 SDA | SPI1 SCK | PWM5 A | ADC0 | |
| 32 | GP27 | input/output | UART1 RTS | I2C1 SCL | SPI1 TX | PWM5 B | ADC1 | |
| 33 | AGND | – | Analog ground for the ADC (GP26–28) | |||||
| 34 | GP28 | input/output | UART0 TX | I2C0 SDA | SPI1 RX | PWM6 A | ADC2 | |
| 35 | ADC_VREF | input/output | ADC reference (can also be external) | |||||
| 36 | 3V3(OUT) | output | 3.3 V output, max. load ~300 mA | |||||
| 37 | 3V3_EN | input | Connect to GND to turn off the 3.3 V supply | |||||
| 38 | GND | – | ||||||
| 39 | VSYS | input | Power input 1.8–5.5 V | |||||
| 40 | VBUS | output | 5 V from USB (only when USB is connected) | |||||
| SWD | SWCLK | input | Debugging (SWD) – clock | |||||
| SWD | GND | – | ||||||
| SWD | SWDIO | input/output | Debugging (SWD) – data |
Pins used on the board
These chip pins are used by parts on the board and are not broken out:
| Pin | Function on the board |
|---|---|
| GP23 | Wi-Fi chip – WL_ON (power on) |
| GP24 | Wi-Fi chip – WL_D (data / interrupt) |
| GP25 | Wi-Fi chip – WL_CS |
| GP29 | Wi-Fi chip – WL_CLK; also ADC3 (VSYS/3) |
What to watch out for
- The GPIO tolerate 5 V only when the board is powered, and not on the analog pins GP26–28; the output is always 3.3 V.
- The onboard LED is on a GPIO of the wireless chip –
Pin("LED")in MicroPython. - GP23, GP24, GP25 and GP29 serve the wireless chip and are not broken out to the header.
- RP2350 chips in revision A2 have erratum E9 (the internal pull-down can “hold” an input) – use an external resistor of up to 8.2 kΩ on inputs with a pull-down.
- The antenna is at the end of the board opposite the USB – keep it clear.
Raspberry Pi Pico 2 W projects on chiptron.eu/
Projects and guides on chiptron.eu/:
- 100 IoT projects – MicroPython projects with code for Pico 2 W, ESP32 and ESP8266
- Picogame – a 2D game engine for CircuitPython on RP2040 and RP2350 chips
More pinouts
See all pinouts on the Pinouts page.