Newsletter Product News Tech News

Raspberry Pi Goes MCU with Open-Spec Pico

Written by Eric Brown

RPi Ltd. has launched a $4 “Raspberry Pi Pico” board based on an “RP2040” chip with dual Cortex-M0+. The Pico adds 2MB flash, micro-USB, and 26 GPIO. RP2040-based boards are also available from Adafruit, Arduino, Pimoroni, and SparkFun.

The Raspberry Pi project was modeled in part on the Arduino open hardware project that continues to dominate the world of MCU hacking and computer education. Now, after invading PC territory on the high end with the Raspberry Pi 400 keyboard computer, Raspberry Pi Trading has advanced into Arduino territory — and beyond the reach of Linux — with a custom-built RP2040 MCU with dual Cortex-M0+ cores. The RP2040 that processor drives a $4, quasi-SBC board called the Raspberry Pi Pico. Third parties have also launched RP2040 based boardlets (see farther below).

Raspberry Pi Pico (left) and loads of Pico boards on a reel
(click images to enlarge)

The RP2040 was developed in-house and manufactured by Sony Inazawa in Japan, without any involvement by RPi Trading’s usual silicon hardware partner, Boardcom. In the blog announcement, RPi Trading’s James Adams suggests an inspiration from Apple and its highly regarded Apple M1 processor: “It seems like every fruit company is making its own silicon these days, and we’re no exception.”


RP2040

Unlike the mostly open source, Broadcom based Raspberry Pi boards, the Raspberry Pi Pico is fully open source, with schematics and design files already posted. The exhaustively documented RP2040 chip is also far more open than any Broadcom processor. For the first time, RPi Trading is encouraging a third-party ecosystem of spinoffs and potential competitors to the Pico, starting with eight boards from Adafruit, Arduino, Pimoroni, and SparkFun.

Despite the RP2040’s lack of Arduino compatibility — the RP2040 and Pico are programmable via MicroPython and C — Arduino is participating with the Arduino Nano RP2040 Connect, the first RP2040 based board with WiFi/BT. It’s likely to be a winner, but Arduino can’t be too happy for the pressure the Pico places on its higher priced Arduino boards.

In a blog post, Arduino’s Massimo Banzi calls the RP2040 “disruptive and exciting at the same time.” Banzi says Arduino is starting to port Arduino Core to the RP2040, with the hope of offering full ecosystem support including IDE, command line tool, and libraries.

— ADVERTISMENT—

Advertise Here

Arduino Nano RP2040 Connect (preliminary render)

There was no mention of any architectural synergies with Linux-powered Raspberry Pi boards. However, we would not be surprised to see some RP2040-powered HATs. The comments at the end of the blog announcement includes speculation on the potential for a Raspberry Pi 5 with a built-in RP2040.

 
RP2040

The RP2040 has a tiny, 7×7mm QFN-56 package and is loaded with 2x 133MHz Cortex-M0+ cores. The processor is faster than some chips used on many Arduino boards such as the single M0+ Microchip ATMega or SAMA21 MCUs found on Arduino Nano. However, it is slower than many Arduino boards equipped with higher-end MCUs such as the ESP32.

RP2040 (left) and Raspberry Pi Pico pinouts
(click images to enlarge)

The processor provides 264KB SRAM via 6x independent banks. Although the Raspberry Pi Pico is limited to 2MB flash, the RP2040 supports up to 16MB via a QSPI bus. Some of the third-party boards based on the RP2040 offer more flash — up to the 16MB on the Arduino Nano RP2040 Connect and two of the SparkFun boards.

The RP2040 supplies 30 GPIO pins, which is more than what Arduino provides. Four of these can be used as analog inputs, a feature unavailable on Cortex-A-based Raspberry Pi SBCs unless you purchase a DAQ-enabled add-on such as Adafruit Crickit HAT.

The RP2040 is equipped with a USB 1.1 controller and PHY with host and device support and UF2-compatible boot mode. There is also a DMA controller.

RP2040 I/O includes 2x UART, 2x SPI, 2x I2C, and 16x PWM. The chip also provides 8x RPi Programmable I/O (PIO) state machines and “interpolator and integer divider peripherals,” which are defined as “fast internal hardware to do integer division.”

— ADVERTISMENT—

Advertise Here

The RP2040 lacks a floating-point unit, but you can make use of optimized FP functions that are said to be “substantially faster than their GCC library equivalents.” The chip is supported by a C SDK, a GCC-based toolchain, and Visual Studio Code integration. Under development is an optimized version of MicroPython that supports the PIO subsystem. The RK2040 is also supported by the Thonny IDE.

 
Raspberry Pi Pico

The 51 x 21mm Raspberry Pi Pico extends the RP2040 with 2MB of flash. A power supply chip supports 1.8-5.5V input, and the 2-layer PCB board can be powered by 2-3 AA batteries or a Li-Ion cell.

The Pico exposes 26 of the MCU’s 30 GPIO pins — and 3x of the 4x analog inputs — on 0.1-inch pitch pads. You can solder headers to the pads or use the Pico’s castellated edges to solder the board directly to a carrier.

Raspberry Pi Pico, front and back (left) and with breadboard and display
(click images to enlarge)

The only real-world port is a micro-USB 1.1 port for power, device, and host duty. Other features include a 3-pin serial debug interface plus a timer, real-time counter, temperature sensor, and -20 to 85°C support.

In addition to the RK2040 development resources mentioned above, you can purchase or download a Get Started with MicroPython on Raspberry Pi Pico book.

 
Third-party RP2040 boards

The first eight third-party boards based on the RP2040 are “just a few of the products that are available to buy or pre-order today,” says Raspberry Pi Trading. You can link to product pages, and in most cases, shopping pages, from the RPi blog announcement. Brief details follow:

  • Adafruit Feather RP 2040 — The first RP2040 board in Adafruit’s Feather form factor, the Feather RP 2040 offers “plenty of GPIO for use with any FeatherWing, and hundreds of Qwiic/QT/Grove sensors that can plug and play.” The “coming soon” boardlet supplies twice the flash of the Raspberry Pi Pico with 4MB of QSPI. It also advances to a USB Type-C port and offers LiPo battery charging, a STEMMA QT I2C connector, and an optional SWD debug port.

Adafruit Feather RP 2040 (left) and Pimoroni Pico Explorer Base
(click images to enlarge)

  • Adafruit ItsyBitsy RP 2040 — The tiny, “coming soon” ItsyBitsy is equipped with 4MB of QSPI, boot and reset buttons, an RGB NeoPixel, and a 5V output.
  • Arduino Nano RP2040 Connect — The first WiFi/Bluetooth equipped Pico pseudo clone is also based on the tiny, low-end Arduino Nano product line. The Nano RP2040 Connect provides a generous 16MB flash, a 9-axis IMU and microphone, an ECC608 crypto chip, and “a highly efficient power section.” The Nano will open for pre-order in the coming weeks.
  • Pimoroni PicoSystem — This $80, “coming soon” mini-gaming board offers gaming controls, a tiny screen, a USB Type-C port, and “a simple and fast software library.”
  • Pimoroni Pico Explorer Base — This $30 computer education board is equipped with a 40 x 240 IPS LCD with four tactile buttons plus motor drivers, a mini breadboard, GPIO, ADC, I2C, and a piezo speaker.

 

SparkFun Thing Plus – RP2040 (left) and SparkFun Pro Micro – RP2040
(click images to enlarge)

  • SparkFun Thing Plus – RP2040 — The most powerful of the RP2040 boards along with the Arduino entry uses the Thing Plus form factor. The $16 board loads up with 16MB flash, a microSD slot, 18x GPIO pins, JTAG, an RGB LED, and a JST battery connector. There is also a USB Type-C and a QWIC connector.
  • SparkFun MicroMod RP2040 Processor — This simple, but not yet available, M.2 form factor module extends the RP2040 with “the inputs and outputs you need for your project.”
  • SparkFun Pro Micro – RP2040 — Like the SparkFun Things Plus, this $10 board ships with 16MB flash. You also get an LED, boot button, reset button, Qwiic connector, USB Type-C, 20 GPIO pins and castellated pads.

Further information

The Raspberry Pi Pico is available from multiple sources for $4, and volume buyers can purchase reels of Pico boards at a discount. More information may be found in Raspberry Pi Trading’s announcement and Pico product/shopping page. You can also find some detailed PDF datasheets for the Pico (see schematics at end) and RP2040.

— ADVERTISMENT—

Advertise Here

This article originally appeared on LinuxGizmos.com on January 21, 2020.

Raspberry PI Foundation | www.raspberrypi.org


Keep up-to-date with our FREE Weekly Newsletter!



Don't miss out on upcoming issues of Circuit Cellar.

Note: We’ve made the May 2020 issue of Circuit Cellar available as a free sample issue. In it, you’ll find a rich variety of the kinds of articles and information that exemplify a typical issue of the current magazine.


Would you like to write for Circuit Cellar? We are always accepting articles/posts from the technical community. Get in touch with us and let's discuss your ideas.

Supporting Companies

Upcoming Events

Copyright © 2021 KCK Media Corp.

Raspberry Pi Goes MCU with Open-Spec Pico

by Eric Brown time to read: 6 min