# Adafruit METRO 328

> Arduino UNO-compatible development board built around the ATmega328P at 16 MHz with 32KB flash, micro USB, and Adafruit's signature black PCB with gold-plated pads.

## Quick Facts

- **Brand:** Adafruit
- **Board Type:** dev-board
- **Price:** ~$17.5
- **Product Readiness:** developer
- **CPU:** ATmega328P @ 16 MHz
- **CPU Architecture:** AVR
- **CPU Cores:** 1
- **RAM:** 2 KB
- **Flash:** 32 KB
- **Power:** 5V via Micro USB or 7-9V DC barrel jack
- **Operating Voltage:** 5V
- **Dimensions:** 53 × 71 × 13 mm
- **Weight:** 19g

## Open Source

- **Firmware:** Yes
- **Schematics:** Yes
- **PCB Layout:** Yes

## Compatible Firmware

arduino, platformio

## Use Cases

- prototyping
- education
- iot
- maker

## Components

- **ATmega328P** (mcu): 8-bit AVR RISC microcontroller at 16 MHz with 32KB flash, 2KB SRAM, 1KB EEPROM — [Datasheet](https://openhardware.directory/r?to=https%3A%2F%2Fww1.microchip.com%2Fdownloads%2Fen%2FDeviceDoc%2FAtmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf&ref=openhardware.directory&product=adafruit-metro-328&source=md-export)
- **CP2104** (usb-serial): Silicon Labs CP2104 USB-to-UART bridge providing USB connectivity for programming and serial communication — [Datasheet](https://openhardware.directory/r?to=https%3A%2F%2Fwww.silabs.com%2Fdocuments%2Fpublic%2Fdata-sheets%2Fcp2104.pdf&ref=openhardware.directory&product=adafruit-metro-328&source=md-export)

## Protocols

- **UART**: TX: D1, RX: D0
- **SPI**: MOSI: D11, MISO: D12, SCK: D13, SS: D10
- **I2C**: SDA: A4, SCL: A5
- **ICSP**

## GPIO Map

| Pin | Name | Type | Functions |
|-----|------|------|-----------|
| D0 | UART RX | UART | digital-input, digital-output |
| D1 | UART TX | UART | digital-input, digital-output |
| D2 | Digital I/O, External Interrupt 0 | — | digital-input, digital-output, interrupt |
| D3 | Digital I/O, External Interrupt 1, PWM | — | digital-input, digital-output, pwm, interrupt |
| D4 | Digital I/O | — | digital-input, digital-output |
| D5 | Digital I/O, PWM | — | digital-input, digital-output, pwm |
| D6 | Digital I/O, PWM | — | digital-input, digital-output, pwm |
| D7 | Digital I/O | — | digital-input, digital-output |
| D8 | Digital I/O | — | digital-input, digital-output |
| D9 | Digital I/O, PWM | — | digital-input, digital-output, pwm |
| D10 | SPI SS, PWM | SPI | digital-input, digital-output, pwm |
| D11 | SPI MOSI, PWM | SPI | digital-input, digital-output, pwm |
| D12 | SPI MISO | SPI | digital-input, digital-output |
| D13 | SPI SCK, Onboard LED | SPI | digital-input, digital-output |
| A0 | Analog Input / Digital I/O | — | analog-input, digital-input, digital-output |
| A1 | Analog Input / Digital I/O | — | analog-input, digital-input, digital-output |
| A2 | Analog Input / Digital I/O | — | analog-input, digital-input, digital-output |
| A3 | Analog Input / Digital I/O | — | analog-input, digital-input, digital-output |
| A4 | I2C SDA, Analog Input | I2C | analog-input, digital-input, digital-output |
| A5 | I2C SCL, Analog Input | I2C | analog-input, digital-input, digital-output |

## Available Software

- **[Arduino IDE]()** (open-source)
- **[PlatformIO]()** (open-source)

## Description

## Overview

The Adafruit METRO 328 is a fully assembled Arduino-compatible development board based on the ATmega328P microcontroller running at 16 MHz. It ships with the Optiboot bootloader, making it immediately programmable via the Arduino IDE by selecting the "Arduino UNO" board target. Adafruit's implementation stays true to the Arduino UNO R3 reference design while adding their signature black PCB with gold-plated pads.

The board provides 20 digital I/O pins (6 PWM-capable), 6 analog inputs, and hardware UART/SPI/I2C interfaces. A 6-pin ICSP header is included for direct AVR programming. Connectivity comes via a micro USB port handled by the CP2104 USB-to-serial converter, plus a 2.1mm barrel jack with an on/off power switch accepting 7–9V DC.

Power regulation is handled by two onboard regulators: a 5V rail capable of 800mA peak and a 3.3V rail at 150mA. A solder jumper allows reconfiguring the logic level to 3.3V. Four indicator LEDs (power, RX, TX, and pin 13 status) provide instant visual feedback during development.

The METRO 328 is fully compatible with Adafruit's Classic and R3 shields and works with all standard Arduino libraries, making it an ideal drop-in replacement for the Arduino UNO in space-constrained or cost-sensitive projects.

## Where to Buy

- [Adafruit](https://openhardware.directory/r?to=https%3A%2F%2Fwww.adafruit.com%2Fproduct%2F50&ref=openhardware.directory&product=adafruit-metro-328&source=md-export) — 17.50

## Resources

- [product](https://openhardware.directory/r?to=https%3A%2F%2Fwww.adafruit.com%2Fproduct%2F50&ref=openhardware.directory&product=adafruit-metro-328&source=md-export)
- [github](https://openhardware.directory/r?to=https%3A%2F%2Fgithub.com%2Fadafruit%2FAdafruit-METRO-328-PCB&ref=openhardware.directory&product=adafruit-metro-328&source=md-export)
- [datasheet](https://openhardware.directory/r?to=https%3A%2F%2Fww1.microchip.com%2Fdownloads%2Fen%2FDeviceDoc%2FAtmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf&ref=openhardware.directory&product=adafruit-metro-328&source=md-export)

## Tags

`arduino-compatible`, `atmega328p`, `avr`, `microcontroller`, `development-board`, `adafruit`

## Images

![Adafruit METRO 328](https://nbg1.your-objectstorage.com/openhardware-directory/entities/adafruit-metro-328/8f5f7a0cd6b1.jpg)
![Adafruit METRO 328](https://nbg1.your-objectstorage.com/openhardware-directory/entities/adafruit-metro-328/bb33fc505be4.jpg)

---
[View full device page](https://openhardware.directory/devices/adafruit-metro-328)