Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Adafruit Metro RP2350: Examples, Pinouts, and Specs

Image of Adafruit Metro RP2350
Cirkit Designer LogoDesign with Adafruit Metro RP2350 in Cirkit Designer

Introduction

The Adafruit Metro RP2040 (Manufacturer Part ID: 6003) is a versatile microcontroller board powered by the RP2040 chip. It features dual-core ARM Cortex-M0+ processors, a wide range of GPIO pins, and compatibility with the Arduino IDE, CircuitPython, and MicroPython. Designed for hobbyists, educators, and professionals, the Metro RP2040 is ideal for prototyping, IoT projects, and embedded systems development.

Explore Projects Built with Adafruit Metro RP2350

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Battery-Powered Smart Light with Proximity Sensor and OLED Display using Adafruit QT Py RP2040
Image of lab: A project utilizing Adafruit Metro RP2350 in a practical application
This circuit is a portable, battery-powered system featuring an Adafruit QT Py RP2040 microcontroller that interfaces with an OLED display, a proximity sensor, an accelerometer, and an RGB LED strip. The system is powered by a lithium-ion battery with a step-up boost converter to provide 5V for the LED strip, and it includes a toggle switch for power control. The microcontroller communicates with the sensors and display via I2C.
Cirkit Designer LogoOpen Project in Cirkit Designer
Battery-Powered Smart Sensor Hub with Adafruit QT Py RP2040
Image of wearable final: A project utilizing Adafruit Metro RP2350 in a practical application
This circuit features an Adafruit QT Py RP2040 microcontroller interfaced with an APDS9960 proximity sensor, an MPU6050 accelerometer and gyroscope, and an OLED display via I2C communication. It also includes a buzzer controlled by the microcontroller and is powered by a 3.7V LiPo battery with a toggle switch for power control.
Cirkit Designer LogoOpen Project in Cirkit Designer
Battery-Powered Sensor Hub with Adafruit QT Py RP2040 and OLED Display
Image of 512: A project utilizing Adafruit Metro RP2350 in a practical application
This circuit features an Adafruit QT Py RP2040 microcontroller interfacing with an MPU-6050 accelerometer, an Adafruit APDS-9960 sensor, and a 0.96" OLED display via I2C communication. It is powered by a 3.7V LiPo battery and includes a green LED with a current-limiting resistor connected to an analog pin of the microcontroller.
Cirkit Designer LogoOpen Project in Cirkit Designer
Adafruit QT Py RP2040 Development Board for Custom Projects
Image of perfboard: A project utilizing Adafruit Metro RP2350 in a practical application
The circuit consists of a single Adafruit QT Py RP2040 microcontroller with no external connections or additional components. It appears to be a standalone setup, possibly for initial testing or programming purposes.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Adafruit Metro RP2350

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of lab: A project utilizing Adafruit Metro RP2350 in a practical application
Battery-Powered Smart Light with Proximity Sensor and OLED Display using Adafruit QT Py RP2040
This circuit is a portable, battery-powered system featuring an Adafruit QT Py RP2040 microcontroller that interfaces with an OLED display, a proximity sensor, an accelerometer, and an RGB LED strip. The system is powered by a lithium-ion battery with a step-up boost converter to provide 5V for the LED strip, and it includes a toggle switch for power control. The microcontroller communicates with the sensors and display via I2C.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of wearable final: A project utilizing Adafruit Metro RP2350 in a practical application
Battery-Powered Smart Sensor Hub with Adafruit QT Py RP2040
This circuit features an Adafruit QT Py RP2040 microcontroller interfaced with an APDS9960 proximity sensor, an MPU6050 accelerometer and gyroscope, and an OLED display via I2C communication. It also includes a buzzer controlled by the microcontroller and is powered by a 3.7V LiPo battery with a toggle switch for power control.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of 512: A project utilizing Adafruit Metro RP2350 in a practical application
Battery-Powered Sensor Hub with Adafruit QT Py RP2040 and OLED Display
This circuit features an Adafruit QT Py RP2040 microcontroller interfacing with an MPU-6050 accelerometer, an Adafruit APDS-9960 sensor, and a 0.96" OLED display via I2C communication. It is powered by a 3.7V LiPo battery and includes a green LED with a current-limiting resistor connected to an analog pin of the microcontroller.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of perfboard: A project utilizing Adafruit Metro RP2350 in a practical application
Adafruit QT Py RP2040 Development Board for Custom Projects
The circuit consists of a single Adafruit QT Py RP2040 microcontroller with no external connections or additional components. It appears to be a standalone setup, possibly for initial testing or programming purposes.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • Robotics and automation
  • IoT (Internet of Things) devices
  • Data logging and sensor interfacing
  • Educational projects and prototyping
  • LED matrix and display control
  • Audio processing and MIDI devices

Technical Specifications

The Adafruit Metro RP2040 is packed with features that make it a powerful and flexible development board. Below are its key technical details:

Key Technical Details

Specification Value
Microcontroller RP2040 (Dual-core ARM Cortex-M0+)
Clock Speed 133 MHz
Flash Memory 16 MB QSPI
SRAM 264 KB
GPIO Pins 21 (including analog inputs)
Analog Inputs 4 (12-bit ADC)
Communication Interfaces UART, I2C, SPI
USB USB-C (supports USB 1.1 and HID devices)
Power Supply 5V via USB-C or external power source
Operating Voltage 3.3V (logic level)
Dimensions 71.1 mm x 53.3 mm

Pin Configuration and Descriptions

The Metro RP2040 features a standard pinout for easy integration into projects. Below is the pin configuration:

Pin Number Pin Name Description
1 3V3 3.3V power output
2 GND Ground
3 A0 Analog input 0 / GPIO26
4 A1 Analog input 1 / GPIO27
5 A2 Analog input 2 / GPIO28
6 A3 Analog input 3 / GPIO29
7 SDA I2C data line / GPIO20
8 SCL I2C clock line / GPIO21
9 TX UART transmit / GPIO0
10 RX UART receive / GPIO1
11 SCK SPI clock / GPIO18
12 MOSI SPI master out, slave in / GPIO19
13 MISO SPI master in, slave out / GPIO16
14-21 GPIO2-GPIO9 General-purpose I/O pins

Usage Instructions

The Adafruit Metro RP2040 is designed for ease of use, whether you're programming with the Arduino IDE, CircuitPython, or MicroPython. Below are the steps to get started and important considerations.

How to Use the Component in a Circuit

  1. Power the Board: Connect the Metro RP2040 to your computer or a power source using a USB-C cable.
  2. Install Drivers: If using Windows, ensure the necessary USB drivers are installed (available on the Adafruit website).
  3. Select a Programming Environment:
    • For Arduino IDE: Install the RP2040 board package via the Boards Manager.
    • For CircuitPython: Download and flash the CircuitPython firmware from Adafruit's website.
  4. Connect Peripherals: Use the GPIO pins to connect sensors, actuators, or other components.
  5. Upload Code: Write and upload your code using the selected programming environment.

Important Considerations and Best Practices

  • Voltage Levels: The GPIO pins operate at 3.3V logic. Avoid connecting 5V signals directly to the pins to prevent damage.
  • Power Supply: Ensure the board is powered via USB-C or an external 5V source. Do not exceed the recommended voltage.
  • Pin Multiplexing: Some pins have multiple functions (e.g., GPIO, I2C, SPI). Configure them appropriately in your code.
  • Firmware Updates: Keep the bootloader and firmware updated for optimal performance and compatibility.

Example Code for Arduino IDE

Below is an example of how to blink an LED connected to GPIO13:

// Blink an LED connected to GPIO13 on the Adafruit Metro RP2040

#define LED_PIN 13  // Define the GPIO pin for the LED

void setup() {
  pinMode(LED_PIN, OUTPUT);  // Set the LED pin as an output
}

void loop() {
  digitalWrite(LED_PIN, HIGH);  // Turn the LED on
  delay(1000);                  // Wait for 1 second
  digitalWrite(LED_PIN, LOW);   // Turn the LED off
  delay(1000);                  // Wait for 1 second
}

Troubleshooting and FAQs

Common Issues Users Might Face

  1. Board Not Recognized by Computer:
    • Ensure the USB-C cable is data-capable (not just for charging).
    • Check if the board is in bootloader mode by holding the BOOTSEL button while connecting it to your computer.
  2. Code Upload Fails:
    • Verify that the correct board and port are selected in the Arduino IDE.
    • Ensure no other application is using the COM port.
  3. GPIO Pins Not Working:
    • Confirm that the pins are configured correctly in your code.
    • Check for short circuits or incorrect wiring.

Solutions and Tips for Troubleshooting

  • Reset the Board: Press the RESET button to restart the board and clear any temporary issues.
  • Check Power Supply: Ensure the board is receiving sufficient power (5V via USB-C or external source).
  • Reinstall Drivers: If the board is not detected, reinstall the USB drivers from the Adafruit website.
  • Consult Documentation: Refer to the official Adafruit Metro RP2040 guide for detailed instructions and support.

By following this documentation, you can effectively utilize the Adafruit Metro RP2040 for a wide range of projects and applications.