Raspberry Pi RP2040 Dual-Core ARM Cortex-M0+ Microcontroller

The RP2040 is the debut microcontroller from Raspberry Pi, designed to deliver high performance, low cost, and ease of use. It features a dual-core ARM Cortex-M0+ processor capable of running up to 133 MHz, providing a massive performance jump for those moving from traditional 8-bit platforms. The standout feature is its unique Programmable I/O (PIO) subsystem, which allows the chip to emulate almost any hardware interface—from VGA to SD cards—without taxing the main CPU cores. With 264KB of on-chip SRAM and a flexible QSPI bus for external flash, it is a versatile powerhouse for everything from high-speed digital signal processing to retro-gaming and industrial control.

RP2040 Pinout (QFN-56)

The RP2040 is housed in a 56-pin QFN package. While the chip has 56 pins, it exposes 30 multi-functional GPIO pins for user applications.

Pin GroupPin NamesDescription
PowerIOVDD, VREG, DVDDDual voltage supply (3.3V I/O, 1.1V Core)
GroundGND / PADCommon ground and thermal pad
Digital I/OGPIO0 – GPIO2930 General Purpose I/O pins
AnalogADC0 – ADC34-channel, 12-bit Analog-to-Digital Converter
QSPIQSPI_SD0 – QSPI_SSInterface for external Flash memory
USBUSB_DP, USB_DMFull-speed USB 1.1 (Host/Device)
ClockXIN, XOUTExternal crystal oscillator input
DebugSWCLK, SWDIOSerial Wire Debugging interface

Technical Specifications – maximum

  • Processor: Dual-core ARM Cortex-M0+ @ 133MHz
  • SRAM: 264 KB on-chip in six independent banks
  • Flash: Support for up to 16 MB of off-chip Flash via QSPI bus
  • Operating Voltage: 1.8V to 3.3V (I/O), 1.1V (Core via internal regulator)
  • USB: 1.1 Host and Device support
  • GPIO: 30 multifunctional General Purpose I/O
  • ADC: 12-bit, 500 ksps, 4-channel
  • Timers: 1x Timer with 4 alarms, 1x RTC
  • Communication: 2x UART, 2x SPI, 2x I2C, 16x PWM channels

Key Features & Benefits

  • Programmable I/O (PIO): Eight state machines that can be programmed to handle custom digital protocols, offloading the CPU entirely.
  • Dual-Core Flexibility: Run complex tasks like motor control on one core while handling USB communication on the other.
  • Large RAM Buffer: 264KB of SRAM allows for large data buffers and high-resolution display drivers.
  • Internal LDO: Includes an on-chip Low Dropout Regulator to generate the 1.1V core voltage from a 3.3V source.
  • Drag-and-Drop Programming: The UF2 bootloader allows for simple firmware updates by dragging a file onto the chip as if it were a USB drive.
  • Low Power Modes: Highly efficient sleep and dormant modes for battery-sensitive applications.

Common Applications

  • Machine Learning at the Edge: Using TinyML for gesture or pattern recognition.
  • Custom USB Peripherals: Creating macro pads, high-performance flight sticks, and MIDI controllers.
  • Retro Gaming: Emulating old hardware systems using the PIO for video output.
  • High-Speed Data Acquisition: Leveraging the fast ADC and DMA for real-time monitoring.
  • Educational Platforms: The base for the Raspberry Pi Pico, used worldwide for STEM learning.

RP2040 Equivalent & Substitutes

  • RP2350: The direct successor featuring higher clock speeds and RISC-V support.
  • STM32F103: An ARM Cortex-M3 alternative, though lacking the PIO flexibility.
  • ESP32-S3: If integrated Wi-Fi and Bluetooth are required.
  • ATSAMD21: A single-core M0+ alternative used in many older boards.

Related Tutorials on ElxHub – with links

  • Selection Guide: Ultimate Microcontroller Selection Guide
  • FUTURE TUTORIALS:
  • Introduction to PIO: Coding Custom Protocols on RP2040
  • Setting up C/C++ SDK for Raspberry Pi RP2040
  • Interfacing I2C OLED Displays with RP2040 Pico
  • Dual-Core Programming: Multicore Processing Explained

Conclusion

The RP2040 has fundamentally changed the microcontroller landscape by offering professional-grade ARM performance at a fraction of the cost. Its Programmable I/O (PIO) is a game-changer for hardware hackers, allowing for a level of customization previously only possible with FPGAs. With a massive community and the backing of Raspberry Pi, the RP2040 is a “must-have” in the portfolio of any modern electronics developer.

Download the Microcontroller’s Datasheet pdf

Yoast SEO Settings: focus keyword: RP2040 Datasheet seo title: RP2040 Pinout, PIO, and Technical Specifications | ElxHub slug: rp2040-microcontroller-datasheet meta description: Complete RP2040 datasheet. Detailed QFN-56 pinout, dual-core ARM Cortex-M0+ specs, and a deep dive into the unique Programmable I/O (PIO).

Image Inventory for ElxHub (Raspberry Pi Series)

Filename SuggestionAlt TextDescriptionContext/Purpose
elxhub-rp2040-minimal-circuit-diagram.pngRP2040 minimal circuit diagram with QSPI flash and 1.1V regulator logic.A clean technical schematic showing the RP2040 chip, W25Q128 Flash, and the 12MHz crystal oscillator setup.Standalone RP2040 hardware guide.
elxhub-rp2350-minimal-circuit-diagram.pngRP2350 dual-architecture circuit diagram highlighting QFN-60 pinout and power.A professional schematic for the RP2350 showing the power rails, flash memory, and 150MHz clock requirements.Technical illustration for the RP2350 datasheet.
elxhub-rp2040-vs-rp2350-comparison.pngComparison chart showing RP2040 vs RP2350 specs: RAM, Cores, and Security.A side-by-side infographic comparing the M0+ cores of the RP2040 with the M33/RISC-V cores of the RP2350.Blog post or “Upgrade Guide” article.
elxhub-rp2040-pinout-qfn56.pngRP2040 QFN-56 pinout diagram with PIO and ADC channel highlights.Functional pin mapping for the RP2040, color-coded for SPI, I2C, UART, and PIO.Pinout section of the RP2040 datasheet.
Scroll to Top