Adafruit METRO M0 Express

Adafruit METRO M0 Express is an upgrade from the original METRO 328 and features an ATSAMD21G18 ARM Cortex MO+ chip instead of the ATmega328. The ATSAMD21G18 ARM Cortex M0 processor is clocked at 48MHz and has 3.3V logic, the same as in the Arduino Zero. This chip has 256K of FLASH (8x more than the Atmega328) and 32K of RAM (16x as much). This chip comes with a built-in USB so it has USB-to-Serial program and debug capability with no need for an FTDI-like chip. CircuitPython is based on the open-source MicroPython that brings the popular Python language to microcontrollers. CircuitPython is a full-featured version of the popular Python programming language for use with circuitry and electronics. The METRO is powered with 7-9V polarity protected DC or the micro USB connector to any 5V USB source. The METRO will automagically switch between USB and DC. 


  • ATSAMD21G18 @ 48MHz with 3.3V logic/power
  • 256KB of FLASH + 32KB of RAM
  • 2MB SPI Flash chip
  • 32.768KHz crystal for clock generation & RTC
  • 3.3V regulator with 500mA peak current output
  • USB native support, USB bootloader, and serial port debugging
  • 4x indicator LEDs and 1x NeoPixel for easy debugging
  • 25 GPIO pins, 5 more than the Metro 328
  • Hardware Serial, hardware I2C, hardware SPI support
  • PWM outputs on almost all pins
  • 6x12-bit analog inputs
  • Pre-loaded with UF2 bootloader (to load up CircuitPython, PXT MakeCode or Arduino IDE)
  • 1x green power LED, 2x RX/TX LEDs for data being sent over USB, and 1x red LED connected
  • 1x10-bit analog output (DAC)
  • Built-in NeoPixel on pin #40
  • Pin #13 red LED for general purpose blinking
  • Power on/off switch
  • 4 mounting holes
  • Includes 4 rubber bumpers to keep it from slipping
  • Reset button
  • Adafruit Black PCB with gold plate on pads
  • 71mm x 53mm / 2.8x2.1" dimensions
  • 13mm / 0.5" height (w/barrel jack)
  • Weight: 20g


Published: 2017-08-02 | Updated: 2022-03-11