Raspberry Pi Pico

Hardware

Platform Raspberry Pi RP2040: RP2040 is a low-cost, high-performance microcontroller device with a large on-chip memory, symmetric dual-core processor complex, and rich peripheral.

Microcontroller

RP2040

Frequency

133MHz

Flash

2MB

RAM

264KB

Vendor

Raspberry Pi

Configuration

Please use pico ID for board option in “platformio.ini” (Project Configuration File):

[env:pico]
platform = raspberrypi
board = pico

You can override default Raspberry Pi Pico settings per build environment using board_*** option, where *** is a JSON object path from board manifest pico.json. For example, board_build.mcu, board_build.f_cpu, etc.

[env:pico]
platform = raspberrypi
board = pico

; change microcontroller
board_build.mcu = rp2040

; change MCU frequency
board_build.f_cpu = 133000000L

Uploading

Raspberry Pi Pico supports the following uploading protocols:

  • cmsis-dap

  • jlink

  • picotool

  • raspberrypi-swd

Default protocol is picotool

You can change upload protocol using upload_protocol option:

[env:pico]
platform = raspberrypi
board = pico

upload_protocol = picotool

Debugging

Debugging - “1-click” solution for debugging with a zero configuration.

Warning

You will need to install debug tool drivers depending on your system. Please click on compatible debug tool below for the further instructions and configuration information.

You can switch between debugging Tools & Debug Probes using debug_tool option in “platformio.ini” (Project Configuration File).

Raspberry Pi Pico does not have on-board debug probe and IS NOT READY for debugging. You will need to use/buy one of external probe listed below.

Compatible Tools

On-board

Default

CMSIS-DAP

Yes

J-LINK

Raspberry Pi SWD

Frameworks

Name

Description

Arduino

Arduino Wiring-based Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.