Raspberry Pi Pico: Revolutionizing Microcontrollers

The Raspberry Pi Foundation has transformed single-board computing with their Raspberry Pi computers, and they are now set to revolutionize the microcontroller market with the new Raspberry Pi Pico. This microcontroller is incredibly affordable, priced at just $4, yet it boasts powerful features that make it ideal for embedded electronics projects. At the heart of the Pico is the RP2040 chip, designed by the Raspberry Pi Foundation itself.

Description of image

Compact and Versatile Design

The Raspberry Pi Pico measures just 0.825" x 2", making it a compact yet versatile option for various projects. It features 20 pads on each side, suitable for breadboard or perfboard use, or direct soldering onto a PCB with castellated pads. The board provides 25 GPIO pins, three of which can be used as analog inputs. However, it is crucial to note that all GPIO pins operate at 3.3V logic and are not 5V tolerant.


Core Components and Features

At the core of the Pico is the RP2040 chip, which includes a dual-core Cortex M0+ processor running at 133MHz and 264KB of SRAM. The board also includes 2MB of QSPI flash storage and a built-in crystal for precise timing. Additional features include a 5V to 3.3V power supply converter, a single green LED on GP25, and a boot select button.

Description of image

USB UF2 Bootloader

Programming the Pico is made easy with its 'permanent ROM' USB UF2 bootloader. By holding down the BOOTSEL button while connecting the Pico to a USB port, the device appears as a USB disk drive. Users can then simply drag and drop their firmware onto the drive, streamlining the process of updating and experimenting with new code.


Raspberry Pi Pico Technical Specifications

Category Specification
Processor Dual-core ARM Cortex-M0+
Clock Speed Up to 133 MHz
On-chip RAM 264 KB
Flash Memory 2 MB onboard QSPI flash
GPIO Pins 26 multifunction GPIO pins
Analog Inputs 3 × 12-bit ADC channels
Digital I/O 30 GPIO pins, 3.3V logic (not 5V tolerant)
PWM Channels 16
UART 2 × UART
SPI 2 × SPI controllers
I2C 2 × I2C controllers
USB USB 1.1 controller and PHY, with host and device support
PIO State Machines 8 (2 × PIO peripherals with 4 state machines each)
Bootloader USB UF2 bootloader
Dimensions 51.3 mm × 21 mm × 3.9 mm (2.0" × 0.8" × 0.2")
Weight 3.0 g (0.1 oz)
Power Supply 1.8V to 5.5V DC
Operating Temperature -20°C to +85°C (Pico and Pico H)
Programming Languages C/C++, MicroPython, CircuitPython
Development Tools GCC-based toolchain, Visual Studio Code integration
Custom Peripherals Supported via PIO state machines
Debugging SWD (Serial Wire Debug)
Floating Point No hardware FPU (floating-point unit)
DSP Support No DSP hardware support
Power Consumption Low-power sleep and dormant modes
External Flash Support Up to 16 MB via dedicated QSPI bus
PLL 2 on-chip PLLs for USB and core clocks
DMA Controller Included
Interpolation Interpolator and integer divider peripherals
Package 7×7 mm QFN-56
Software Support Official MicroPython port, CircuitPython, Philhower Arduino core
Documentation Extensive documentation available from Raspberry Pi Foundation
Recommended Usage Suitable for IoT applications, embedded systems, learning electronics
GPIO Voltage Levels 3.3V logic (not 5V safe)
LED Indicator Single green LED on GP25
Button Boot select button
Crystal Oscillator Included for precise timing
USB Boot Mode USB mass-storage boot mode with UF2 support
Programming Method Drag and drop firmware via USB

Performance and Limitations

The RP2040 chip is quite powerful, offering close-to-M4 speeds for many tasks. However, as an M0 chip, it lacks a floating point unit and DSP hardware support, meaning floating point math operations will be slower than on an M4 chip. Despite this, the dual-core setup and other features make it suitable for a wide range of computational tasks.

Description of image

Peripherals and Connectivity

The Raspberry Pi Pico includes a variety of peripherals: two I2C controllers, two SPI controllers, and two UARTs. These are multiplexed across the GPIO pins, allowing for flexible pin configurations. Additionally, the Pico features 16 PWM channels, providing versatile control over connected components.


PIO State Machines

A standout feature of the RP2040 chip is its Programmable I/O (PIO) state machines. These allow for the creation of custom hardware logic and data processing blocks that can run independently of the CPU. This capability is particularly useful for precise timing tasks, such as controlling NeoPixels or generating I2S audio streams.

Description of image

Software and Programming Support

The Raspberry Pi Pico is supported by a robust software ecosystem. It offers great support for C/C++ and official ports for MicroPython and CircuitPython. The Philhower Arduino core is recommended for those using Arduino, as it supports a wide range of peripherals and has community-contributed board definitions. CircuitPython is particularly recommended for beginners due to its ease of use and comprehensive support for Raspberry Pi's hardware.


Conclusion

The Raspberry Pi Pico is a game-changer in the microcontroller market, combining affordability with powerful features and flexibility. Whether you are a hobbyist, educator, or developer, the Pico provides a versatile platform for a wide range of projects, from simple LED controllers to complex embedded systems. Its compact size, extensive GPIO options, and powerful RP2040 chip make it an ideal choice for anyone looking to explore the world of microcontrollers.

Filippos Panteli
Filippos Panteli

Topics

Smartphones

Smart watches

IP Cameras

Laptops

Gaming-Consoles

Tablets

Earphones

Notepads

Micro-Computers

DevReviewHub uses affiliate links in device posts to sustain high-quality reviews. Clicking these links and making a purchase earns us a small commission, helping maintain our standards at no extra cost to you.

Tags

×

Search Results