Help and resources
Setup from scratch, the mistakes almost everybody makes once, and the official documentation this course is built on.
Getting set up
- 1Install Thonny from thonny.org. It works the same way on Windows, macOS and Linux.
- 2Download the current MicroPython firmware for the Raspberry Pi Pico W from the Raspberry Pi documentation. Pick the Pico W file, not the plain Pico file.
- 3Unplug the board, hold the BOOTSEL button, plug the USB cable in, then release. A drive named RPI-RP2 appears.
- 4Drag the .uf2 file onto RPI-RP2. The drive disappears by itself: that is success.
- 5In Thonny choose the MicroPython (Raspberry Pi Pico) interpreter and the right serial port. The Shell should show >>>.
- 6Type 1 + 1 at the >>> prompt. If it answers 2, the board is running your code.
The mistakes everyone makes once
- Pin(16) is not physical pin 16
- Pin(16) means GPIO16, which is physical pin 21. GPIO numbers and physical pin numbers are two separate systems. Check both columns in every connection table and use the pin map page when in doubt.
- The Pico W onboard LED is not GP25
- On a Pico W use Pin("LED"). On the older plain Pico it is GP25. Old tutorials written for the plain Pico silently do nothing on a W.
- Charge-only USB cables
- A charge-only cable powers the board but carries no data, so no RPI-RP2 drive appears and Thonny never sees a serial port. Swap the cable before you swap anything else.
- Breadboard rows
- In one numbered row, a to e are joined and f to j are joined, but the two halves are separate. Different row numbers are always separate. Side rails are often split into sections, so never assume a rail runs the whole length.
- Four-leg buttons
- Those four legs are two internally joined pairs. Pick one leg from each of two different pairs, confirmed from the manufacturer's drawing or an adult's unpowered continuity check. Do not guess by assuming opposite corners.
- Never power a servo from the board
- A servo needs an external regulated 5 V supply of at least 1 A. Its positive wire touches no Pico pin at all. Only the grounds are joined, at physical pin 38.
- Save scripts as mission-XX.py
- A file saved on the board as main.py runs automatically every time the board powers up, which is confusing while you are learning. Use the mission file names instead.
- Scripts run on the board, not in this browser
- Every interactive panel in this app is a browser model of the logic. It is never connected to a board and never executes MicroPython. Running code means pressing Run in Thonny with your board plugged in.
Official resources
This course is written around the Freenove kit but is not affiliated with Freenove or Raspberry Pi. Always prefer the manufacturer's published wiring over anything improvised.
- The kit on Amazon (B0BJ1P9JN8)
The Freenove Ultimate Starter Kit for Raspberry Pi Pico W that this course is written around.
- Freenove tutorial documentation
The manufacturer's own lesson set, including component drawings such as the pushbutton pin pairing.
- Freenove code repository on GitHub
Downloadable example code and resources for the kit.
- Freenove Python examples
The Python listings that accompany the Freenove lessons.
- Raspberry Pi MicroPython documentation
Official firmware downloads and setup guidance. Download the file for the Pico W specifically.
- Raspberry Pi Pico series documentation
Board datasheets, pinout diagrams and hardware details straight from Raspberry Pi.
- MicroPython rp2 quick reference
The reference for Pin, PWM, ADC and timing functions on RP2040 boards.
- Thonny
The editor used throughout this course, available for Windows, macOS and Linux.
Honest limits of this app
- No script in this course has been validated by us on physical hardware. The mission checklists are the real test.
- Every interactive panel is a browser model of the logic, not a board connection and not MicroPython execution.
- Servo horn angles shown in models are illustrative. Real angles vary by servo and are never measured.
- Your progress and notes live in this browser only. There is no cloud sync and no device sync.
Want everything on paper? Open the printable full course.