Raspberry Pi Pico microcontroller: specifications, features and RP2040

By Gareth Halfacree. Posted

Raspberry Pi Pico is a microcontroller board built on silicon designed by Raspberry Pi. Microcontrollers are computers stripped back to their bare essentials. You don’t use monitors or keyboards, but program them to take their input from, and send their output to the input/output pins. Using these programmable connections, you can light lights, make noises, send text to screens, and much more.

The ultra-light, ultra-small Raspberry Pi Pico microcontroller board is ideal for embedding inside digital projects. Raspberry Pi Pico represents two major firsts for Raspberry Pi: it’s the first microcontroller development board from Raspberry Pi; it’s also the first device to use a silicon chip designed by Raspberry Pi’s in‑house Application-Specific Integrated Circuit (ASIC) team.

Raspberry Pi Pico is a development board built around this powerful yet low-cost RP2040 microcontroller.

Like Raspberry Pi computers, Raspberry Pi Pico features a pin header with 40 connections, along with a new debug connection enabling you to analyse your programs directly from another computer (typically by connecting it directly to the GPIO pins on a Raspberry Pi).

The underside of Pico labels all the pins

Pico is an incredibly interesting new device from Raspberry Pi. It offers a wealth of connectivity for external hardware – and enough processing power to handle complex tasks. All this in a compact board which costs less than a cup of coffee. You can pick up a Pico from just $4 / £3.60, or free on the latest edition of HackSpace magazine.

Built with everyone from absolute beginners to professional engineers in mind, Raspberry Pi Pico represents the start of a new era for Raspberry Pi. We can’t wait to see what you all make with it.

Get to know Raspberry Pi Pico

Raspberry Pi Pico is a brand new, low-cost, yet highly flexible development board designed around a custom-built RP2040 microcontroller chip designed by Raspberry Pi.

Raspberry Pi Pico – ‘Pico’ for short – features a dual-core Cortex-M0+ processor (the most energy-efficient Arm processor available), 264kB of SRAM, 2MB of flash storage, USB 1.1 with device and host support, and a wide range of flexible I/O options.

A close up on the RP2040 chip that powers Pico

The castellated pin headers ensure Pico is equally at home on a breadboard for experimentation as it is soldered onto a circuit board and driving a finished product. The high-performance processor cores coupled with RAM and storage give it impressive flexibility.

A real highlight comes in the form of Programmable Input/Output (PIO) capabilities: bridging the gap between software and hardware, Pico’s PIO allows developers to define new hardware features in software – expanding its capabilities beyond any fixed-function device.

Pico is set to prove itself not just an impressive new tool for Raspberry Pi users, but a must-have gadget for anyone investigating physical computing projects.

Microcontroller

RP2040 is a custom-built dual-core microcontroller, designed in-house at Raspberry Pi

USB

USB port on the end of Pico

A micro USB port provides power and data, letting you communicate with and program Raspberry Pi Pico (by dragging and dropping a file)

Bootsel

The BOOTSEL button is important for using and modifying your Pico

Hold the BOOTSEL (boot select) button when powering up Pico to put it into USB Mass Storage Mode. From here, you can drag-and-drop programs, created with C or MicroPython, into the RPI-RP2 mounted drive. Pico runs the program as soon as it is switched on (without BOOTSEL held down)

Labelling

Silkscreen labelling on the top provides orientation for the 40 pins, while a full pinout is printed on the rear

Debugging

Accessible debugging pins

A Serial Wire Debug (SWD) header provides hardware debugging capabilities, letting you quickly track down problems in your programs

Pins

Yes, 'castellated' is a new word for us, too.

Raspberry Pi Pico’s pins are castellated, allowing pin headers to be fitted for breadboard use or the entire board to be soldered as a flat module

Raspberry Pi Pico specifications

  • RP2040 microcontroller chip designed by Raspberry Pi in the United Kingdom

  • Dual-core ARM Cortex-M0+ processor, flexible clock running up to 133MHz

  • 264kB of SRAM, and 2MB of on-board flash storage

  • Castellated module allows soldering direct to carrier boards

  • USB 1.1 Host and Device support

  • Low-power sleep and dormant modes

  • Drag & drop programming using mass storage over USB

  • 26 multifunction GPIO pins

  • 2× SPI, 2× I2C, 2× UART, 3× 12-bit ADC, 16× controllable PWM channels

  • Accurate clock and timer on-chip

  • Temperature sensor

  • Fast floating-point libraries in ROM

  • 8× Programmable IO (PIO) state machines for custom peripheral support

Say hello to RP2040

RP2040 is a low-cost microcontroller device, with the same focus on quality, cost, and simplicity that characterises the ‘big’ Raspberry Pi. Microcontrollers interact with the hardware of a board much like an application processor does in a larger device.

Application processors like the Broadcom BCM2711 used in Raspberry Pi 4 are designed to run multiple programs under an operating system, like Raspberry Pi OS. These programs access external hardware through interfaces provided by the operating system.

In contrast, microcontrollers like RP2040 interact directly with external hardware and typically run a single program from the moment you turn them on.

A reel of Raspberry Pi Pico microcontroller boards ready for distribution

Just as Raspberry Pi is an accessible computer, RP2040 is an accessible microcontroller, containing almost everything makers need to embed it inside a product.

RP2040 is supported by both C/C++ and MicroPython cross-platform development environments, including easy access to runtime debugging. It has a built-in UF2 bootloader enabling programs to be loaded by drag-and-drop. The built-in USB can act as both device and host. Meanwhile, floating-point routines are baked into the chip for ultra-fast performance. It has two symmetric processor cores and high internal bandwidth, making it useful for signal processing and video applications. The chip has a relatively large amount of internal RAM but uses external flash storage, allowing you to choose how much memory you need.

Microcontrollers are an exciting new area for Raspberry Pi fans to explore. See the RP2040 data sheet for more information.

Behind the name 2040

The post-fix numeral on RP2040 comes from the following:

  1. Number of processor cores (2)

  2. Loosely which type of processor (M0+)

  3. The amount of RAM, from the function floor(log2(RAM / 16kB)); in this case it’s 256kB

  4. The amount of non-volatile storage, from the function floor(log2(non-volatile / 16kB)), or 0 if no on-board non-volatile storage

Translating the name of RP2040

From The MagPi store

Subscribe

Subscribe to the newsletter

Get every issue delivered directly to your inbox and keep up to date with the latest news, offers, events, and more.