Are you ready? Really ready? Cause here comes the fastest, most powerful Metro ever. The Adafruit Metro M4 featuring the Microchip ATSAMD51.
This Metro is like a bullet train, with it's 120MHz Cortex M4 with floating point support. Your code will zig and zag and zoom, and with a bunch of extra peripherals for support, this will for sure be your favorite new chipset.
To start off their ATSAMD51 journey Adafruit decided to kick it off with the classic 'Arduino compatible' shape and pinout you know and love. This Metro is the same size as the others, and is compatible with all their shields. It's got analog pins where you expect, and SPI/UART/I2C hardware support in the same spot as the Metro 328 and M0. But! It's powered with an ATSAMD51J19:
- Cortex M4 core running at 120 MHz
- Floating point support with Cortex M4 DSP instructions
- 512 KB flash, 192 KB RAM
- 32-bit, 3.3V logic and power
- Dual 1 MSPS DAC (A0 and A1)
- Dual 1 MSPS ADC (8 analog pins)
- 6 x hardware SERCOM (I2C, SPI or UART)
- 22 x PWM outputs
- Stereo I2S input/output with MCK pin
- 10-bit Parallel capture controller (for camera/video in)
- Built in crypto engines with AES (256 bit), true RNG, Pubkey controller
- 64 QFN
Pretty good start right? So they put this chip on a PCB with all these nice extras:
- Power the METRO M4 with 7-9V polarity protected DC or the micro USB connector to any 5V USB source. The 2.1mm DC jack has an on/off switch next to it so you can turn off your setup easily. The METRO will automagically switch between USB and DC.
- METRO has 25 GPIO pins, 8 of which are analog in, and two of which is a true analog out. There's a hardware SPI port, hardware I2C port and hardware UART. Logic level is 3.3V
- Native USB, there's no need for a hardware USB to Serial converter as the Metro M4 has built in USB support. When used to act like a serial device, the USB interface can be used by any computer to listen/send data to the METRO, and can also be used to launch and update code via the bootloader. It can also act like an HID keyboard or mouse.
- Four indicator LEDs and one NeoPixel, on the front edge of the PCB, for easy debugging. One green power LED, two RX/TX LEDs for data being sent over USB, and a red LED connected. Next to the reset button there is an RGB NeoPixel that can be used for any purpose.
- 2 MB QSPI Flash storage chip is included on board. You can use the SPI Flash storage like a very tiny hard drive. When used in Circuit Python, the 2 MB flash acts as storage for all your scripts, libraries and files. When used in Arduino, you can read/write files to it, like a little datalogger or SD card, and then with the helper program, access the files over USB.
- Easy reprogramming, comes pre-loaded with the UF2 bootloader, which looks like a USB storage key. Simply drag firmware on to program, no special tools or drivers needed! It can be used to load up CircuitPython or Arduino IDE (it is bossa v1.8 compatible)
Adafruit have a working Arduino board support package, with lots of stuff working, but their primary target for this board is CircuitPython - with 120 MHz, and 192KB of RAM CircuitPython runs really well on this chip! At this time, they have CircuitPython 3.0 alpha working, and adding more API parts every week.
So what are you waiting for? Pick up a Metro M4 today and be amazed at how easy and fast it is to get started with CircuitPython! Check out the learning guide for more details, schematics, Fritzing objects, files and more!
- As of Jan 30, 2019 it now comes in a fancy purple color!
- Check out the learning guide for more details, schematics, Fritzing objects, files and more!
- Product Dimensions: 72.0mm x 54.0mm x 15.0mm / 2.8" x 2.1" x 0.6"
- Product Weight: 20.6g / 0.7oz
- 32x16 and 32x32 RGB LED Matrix - Hundreds of pixels of eye-blasting LED glory!
- CircuitPython 101: Working with Lists, Iterators and Generators - Learn more about working with lists and what to do when they're very large
- Larson Scanner Shades (Trinket-Powered NeoPixel LED Strip Glasses) - A simple cyberpunk/Tronpunk fashion project!
- Make It Talk - Add voice to your projects
- 3D Printed LED Buckle - Combine Gemma & 3D printing for your very own glowy wearables project
- Adding a WiFi Co-Processor to CircuitPython - Surf the 'net with Blinka!
- Gemma-Powered NeoPixel LED Sound Reactive Drums - Light up your drums with sound.
- A CLI in CircuitPython - Are you writing CircuitPython code that takes typed in commands? This guide walks through the creation of a GNU Readline style command line editor in pure CircuitPython that uses VT100/ANSI key and control codes.
- 3D Printed LED Microphone Flag - Build a sound reactive LED microphone flag
- A Logger for CircuitPython - Send program status information to a number of places during development.
- Animated NeoPixel Glow Fur Scarf - Wrap up in light and motion
- Currying in CircuitPython - Partials, Currying... and we're not talking about leftovers.
- Native MP3 decoding on Arduino - play MP3 files with only your microcontroller
- Building CircuitPython - How to build CircuitPython yourself on different platforms
- CircuitPython Essentials - The next step in learning CircuitPython.
- Adafruit Metro M4 Express featuring ATSAMD51 - Choo! Choo! ARM Cortex M4 @ 120 MHz coming thru!
- Digital Circuits 6: An EPROM Emulator - In this guide, we design and build a ROM emulator
- How to Choose a Microcontroller - A gentle guide for choosing a controller for your project
- CircuitPython with Jupyter Notebooks - Interact with CircuitPython Code from within a Jupyter Notebook
- Alternative languages for programming the SAMD51 boards - You can program the new SAMD51 boards in Makecode, C++, and Python. How about Lisp or Forth? Why not?
- CircuitPython 101: Basic Builtin Data Structures - Tuples, Lists, and Dictionaries! Oh My!
- CircuitPython 101: Functions - Exploring functions in CircuitPython