Raspberry Pi Pico 2
The Raspberry Pi Pico is a Raspberry Pi RP2350 evaluation board.
This article additionally shows how to do instruction tracing on the Raspberry Pi RP2350.
Features (selection)
- RP2350 MCU with 520KB on-chip SRAM
- 2MB on-board QSPI flash (Winbond W25Q32RV)
- On-board LED
- external debug connector pads
For further information please refer to the Rapberry Pi Pico web page
Setting up with J-Link
The Raspberry Pi Pico evaluation board comes with an external SWD debug connector. To set the board up with J-Link, the following steps are required:
- Solder a 3-pin header to the debug connector pads.
- Solder a pin strip to the GPIO pads of the evaluation board. The relevant pad is 3V3 (pad 36)
- Connect the J-Link to the evaluation board, using jumper wires as follows:
Pico Pin | Name | J-Link Pin | Signal |
---|---|---|---|
DEBUG 0 (marked with triangle) | SWCLK | 9 | SWCLK |
DEBUG 1 | GND | 4 | GND |
DEBUG 2 | SWDIO | 7 | SWDIO |
Pad 36 | 3V3 | 1 | VTref |
Note: For a more reliable, simpler solution, the SEGGER Flying Wire Adapter is recommended.
- Power the board via the USB port
- Verify the Connection with J-Link Commander. The output should look as follows:
Example Project
The following example project was created with the SEGGER Embedded Studio project wizard and runs out-of-the-box on the Raspberry Pi Pico 2 evaluation board. It flashes the on-onboard LED.
Setup
- J-Link software: V8.10c
- Embedded Studio: V8.16
- Hardware: Raspberry Pi Pico 2
- Link: File:Raspberry Pico2 Blinky.zip
Tracing on RaspberryPi RP2350
This section describes how to get started with trace on the RaspberryPi RP2350 MCUs. This section assumes that there is already a basic knowledge about trace in general (what is trace, what different implementations of trace are there, etc.). If this is not the case, we recommend to read Trace chapter in the J-Link User Manual (UM08001).
Some of the examples are shipped with a compiled .JLinkScriptfile (extension .pex), should you need the original source, please get in touch with SEGGER directly via our support system: https://www.segger.com/ticket/.
To create your own .JLinkScriptfile you can use the following guide as reference: How_to_configure_JLinkScript_files_to_enable_tracingMinimum requirements
In order to use trace on the RaspberryPi RP2350 MCU devices, the following minimum requirements have to be met:
- J-Link software version V8.32 or later
- Ozone V3.38d or later (if streaming trace and / or the sample project from below shall be used)
- J-Trace PRO for Cortex-M HW version V3.0 or later for streaming trace
To rebuild the project our IDE Embedded Studio can be used. The recommended version to rebuild the projects is V8.22a. But the examples are all prebuild and work out-of-the box with Ozone, so rebuilding is not necessary.
Cortex-M33_0
The project below has been tested with the minimum requirements mentioned above and a Pico 2.
- Example project: RaspBerryPi_RP2350_M33_0_TraceExample.zip
Streaming trace
Open the *_TracePins.jdebug project contained in the example project in Ozone.
Cortex-M33_1
The project below has been tested with the minimum requirements mentioned above and a Pico 2.
- Example project: RaspBerryPi_RP2350_M33_1_TraceExample.zip
Streaming trace
Open the *_TracePins.jdebug project contained in the example project in Ozone.
Specifics/Limitations
Please note that the Pico 2 is not really a trace capable board. The setup was tested using flying wires. To reach a stable setup with high clock speeds we recommend to create a proper trace board. Gudelines for such design can be found here: Trace_board_design_recommendations