All paths

Embedded on the Raspberry Pi Pico

A dual core Cortex-M0+ at 125 MHz. PWM on every pin, a 64 bit clock, and pins that do not forgive 5 V.

Raspberry Pi PicoFree7 lessons6 h4 chapters1,964 XPEmbedded engineering · Intermediate+150 XP

0 of 7 done

What you will build

3 projects, built step by step

7 lessons in 4 chapters, about 6 hours on a simulated Raspberry Pi Pico. Free, in your browser, every step checked by the simulator.

Chapter 1 project

Reading a pin

A button on GP15 with the pad pull-up on, a lamp on GP14, and the pad configuration that sits under one line of Arduino code.

Open it in the simulator
Chapter 2 project

PWM on any pin

Every GPIO on this chip has a PWM channel, which is unusual. Slices, channels, and what the divider is actually doing.

Open it in the simulator
Chapter 3 project

Timing without delay

The chaser is written with delays, so it can do nothing else. Rewrite it around the microsecond timer and it can do anything.

Open it in the simulator
The map

Chapter by chapter

Each lesson opens when the one before it is done, and each chapter ends in a project.

Chapter 1

The board

Drive a pin, read a pin, and learn what this chip will not tolerate.

  1. Open200 XP

    First light on the Pico

    An LED on GP15, a second one inside the module, and a board that keeps its program in a separate flash chip. Where the RP2040 is different.

    0 of 6 steps

  2. ProjectLocked400 XP

    Reading a pin

    A button on GP15 with the pad pull-up on, a lamp on GP14, and the pad configuration that sits under one line of Arduino code.

    0 of 6 steps

Chapter 2

More than one of everything

Six lamps from an array, and PWM on any pin you like.

  1. Locked200 XP

    Six pins and an array

    A dot sweeping along six LEDs, driven from a list of pin numbers. Arrays, loop bounds, and where the idea stops scaling.

    0 of 6 steps

  2. ProjectLocked400 XP

    PWM on any pin

    Every GPIO on this chip has a PWM channel, which is unusual. Slices, channels, and what the divider is actually doing.

    0 of 6 steps

Chapter 3

Talking and timing

The monitor both ways, and a loop that never waits.

  1. Locked200 XP

    The board talks and listens

    UART0, the monitor, and an echo. The one debugging tool you always have, and what it costs to use it.

    0 of 6 steps

  2. ProjectLocked364 XP

    Timing without delay

    The chaser is written with delays, so it can do nothing else. Rewrite it around the microsecond timer and it can do anything.

    0 of 6 steps

Chapter 4

Make it yours

A blank page, six lamps and a way to measure what you built.

  1. Locked200 XP

    Project: make the sweep yours

    Six lamps and a blank page. Change the pattern, count the passes, report them, and measure how long your own loop takes.

    0 of 6 steps

Syllabus

Every lesson in the course

All 7 lessons, in order, each with what it covers. Any of them opens in the editor right away.

Chapter 1

The board

  1. First light on the PicoAn LED on GP15, a second one inside the module, and a board that keeps its program in a separate flash chip. Where the RP2040 is different.
  2. Reading a pinA button on GP15 with the pad pull-up on, a lamp on GP14, and the pad configuration that sits under one line of Arduino code.
Chapter 2

More than one of everything

  1. Six pins and an arrayA dot sweeping along six LEDs, driven from a list of pin numbers. Arrays, loop bounds, and where the idea stops scaling.
  2. PWM on any pinEvery GPIO on this chip has a PWM channel, which is unusual. Slices, channels, and what the divider is actually doing.
Chapter 3

Talking and timing

  1. The board talks and listensUART0, the monitor, and an echo. The one debugging tool you always have, and what it costs to use it.
  2. Timing without delayThe chaser is written with delays, so it can do nothing else. Rewrite it around the microsecond timer and it can do anything.
Chapter 4

Make it yours

  1. Project: make the sweep yoursSix lamps and a blank page. Change the pattern, count the passes, report them, and measure how long your own loop takes.
Keep going

The next course on your track

Embedded on the Raspberry Pi Pico is part of the embedded track, a ladder of courses from zero to expert.

Next course

MicroPython on the Pico

Real Python on a Raspberry Pi Pico: blink and the REPL, buttons and if, loops and PWM, a knob on the ADC, lists and functions on an LED bar, an OLED on I2C, and a reaction game boss.

Open the next course
Track

Embedded track

Arduino, ESP32, Raspberry Pi Pico and STM32: pins, timing, buses, motors, WiFi, registers and debugging, every lesson checked on a simulated board.

See every course on the track
Kits

Build it on your bench too

Every lesson runs in the simulator with nothing to buy. When you want the real thing, these kits have the parts.

Have a kit already?

Find your kit

Pick the starter kit you own and run every lesson in its manual with the same parts on the same pins.

See every kit
Questions

About Embedded on the Raspberry Pi Pico

Is Embedded on the Raspberry Pi Pico free?

Yes. All 7 lessons of Embedded on the Raspberry Pi Pico are free and run in your browser, with nothing to install and no parts to buy before you start.

Do I need a real Raspberry Pi Pico?

No. Every lesson runs on a simulated Raspberry Pi Pico with its parts on the canvas, and the simulator checks each step as you go. When you want to build it for real, the same wiring and code work on a real board.

How long does Embedded on the Raspberry Pi Pico take?

About 6 hours: 7 lessons in 4 chapters, each one a few short steps. Your progress is kept, so you can stop after any lesson and pick up where you left off.

What will I build?

Each chapter ends in a project that puts it together: Reading a pin, PWM on any pin and Timing without delay.

Where do I start?

With "First light on the Pico", and each lesson builds on the one before it. New to circuits? Electronics basics is the course that starts from zero.