Who is this for?

This is an introductory topic for embedded software developers new to Raspberry Pi Pico.

What will you learn?

Upon completion of this Learning Path, you will be able to:

  • Install the Raspberry Pi Pico SDK.
  • Run a hello world example.
  • Measure application performance.
  • Debug applications with gdb.

Prerequisites

Before starting, you will need the following:

  • Raspberry Pi Pico board.
  • Raspberry Pi 3, 4, 400, or 5 as a development computer.

Summary

AI-assisted

This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
You’ll set up a Raspberry Pi Pico C and C++ development environment and debug applications on Cortex-M0+. First, you’ll install the Pico SDK, build a hello example with CMake and GCC, and verify its LED and USB output. Then, you’ll measure Fibonacci implementations with SysTick and use the Serial Wire Debug (SWD) interface to load and debug programs without BOOTSEL.

Frequently asked questions

AI-assisted

These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
Which script installs the Pico SDK, and when should I run it?
Use the pico_setup.sh script maintained in GitHub. Run it before building the examples so the SDK and build files are available.
What result should I expect when I run the hello example?
The on-board LED blinks, and the program prints Hello messages over USB. Seeing both indicates the board and SDK setup work.
How do I know my build environment is configured correctly before moving on?
CMake configure and build complete without errors and produce binaries for the Pico. Running the hello program confirms the toolchain and SDK are usable.
How do I verify that SysTick is measuring cycles as intended?
Run the performance example and check the printed cycle counts. The two Fibonacci implementations should report different counts, showing the counter is active.
How can I load and debug Pico applications without using BOOTSEL?
Use the three-pin SWD interface. SWD lets you load and run from the command line and debug interactively with gdb.
Next