The maker of the Raspberry Pi single board computer has released the new Raspberry Pi Pico, a microcontroller board built on Raspberry Pi's own RP2040 silicon.
That makes the Raspberry Pi Pico something closer to an Arduino rather than the Raspberry Pi or Raspberry Pi Zero. Arduino is one of the companies that has partnered with Raspberry Pi to create accessories for the Pico and is using the RP2040 in its forthcoming Arduino Nano RP2040 Connect.
"RP2040 builds on the lessons we've learned from using other microcontrollers in our products, from the Sense HAT to Raspberry Pi 400," said Raspberry Pi chief operating officer James Adams in a blogpost.
SEE: Hiring Kit: Computer Hardware Engineer (TechRepublic Premium)
Adams also explains the difference between a Raspberry Pi and the Pi Pico.
"The Raspberry Pi takes care of heavyweight computation, network access, and storage, while the microcontroller handles analogue input and low-latency I/O and, sometimes, provides a very low-power standby mode.
"Until now, we've not been able to figure out a way to make a compelling microcontroller-class product of our own. To make the product we really wanted to make, first we had to learn to make our own chips."
Being a tiny device, the specs are also miniscule. The RP2040 consists of a dual-core Arm Cortex-M0+ running at 133MHz, 264 kilobytes of on-chip RAM, and support for up to 16MB of off-chip Flash memory via dedicated QSPI bus.
It has a power supply chip supporting input voltages from 1.8V to 5.5V, so users can power it with two or three AA cells in series or a single lithium-ion cell. It's also got 30 GPIO pins, four of which can be used as analogue inputs.
Raspberry Pi has released a C software development kit (SDK), which can be used from the command line or tools like Visual Studio Code. It has also released a Pico Python SDK with MicroPython, an implementation of the Python 3 programming language that runs on embedded hardware. There's plenty of documentation available with Pico's specifications, and instructions and tools to use C and MicroPython.
Besides Arduino, Adafruit, Pimoroni, and Sparkfun have made either their own RP2040-based microcontroller boards or accessories for the Pi Pico.
These include the Arduino Nano RP2040 Connect, Adafruit Feather RP 2040, the Adafruit ItsyBitsy RP 2040, the SparkFun Thing Plus – RP2040, the SparkFun MicroMod RP2040 Processor, and the SparkFun Pro Micro – RP2040. Links to each product can be found on Raspberry Pi's blog.
There's also the the Pimoroni Pico Explorer Base that the Raspberry Pi Pico can connect with to use the base's built-in speaker and a 240x240 IPS LCD screen. And there's the Pimoroni PicoSystem, a tiny gaming system.
Arduino's co-founder, Massimo Banzi, and its CEO, Fabio Violante, explained the benefit of building some of its products on Raspberry Pi's RP2040, even though they found the idea initially "disruptive and exciting".
"The goal being to enable people to develop connected products leveraging our hardware powered by Raspberry silicon, a solid radio module with exceptional performance, and the Arduino Create IoT Cloud," they wrote.
Arduino will port the Arduino core to this new architecture to ensure people can use the RP2040 chip with its ecosystem of development tools, such as its IDE, command line tool, and thousands of libraries.
The Raspberry Pi Pico's main specifications include:
- RP2040 microcontroller chip designed by Raspberry Pi in the United Kingdom
- Dual-core Arm Cortex M0+ processor, flexible clock running up to 133 MHz
- 264KB of SRAM, and 2MB of on-board Flash memory
- Castellated module allows soldering direct to carrier boards
- USB 1.1 with device and host support
- Low-power sleep and dormant modes
- Drag-and-drop programming using mass storage over USB
- 26 × multi-function GPIO pins
- 2 × SPI, 2 × I2C, 2 × UART, 3 × 12-bit ADC, 16 × controllable PWM channels
- Accurate clock and timer on-chip
- Temperature sensor
- Accelerated floating-point libraries on-chip
- 8 × Programmable I/O (PIO) state machines for custom peripheral support