SparkFun MicroMod SAMD51 Processor

With a 32-bit ARM Cortex-M4F MCU, the SparkFun MicroMod SAMD51 Processor Board is one powerful microcontroller packaged on a small board! The board provides you with an economical and easy to use development platform if you're needing more power with minimal working space. With the M.2 MicroMod connector, connecting your SAMD51 Processor is a breeze. Simply match up the key on your processor's beveled edge connector to the key on the M.2 connector and secure it with a screw (included with all Carrier Boards). The SAMD51 is one of the most powerful and economical microcontrollers available so to be able to add it to your MicroMod Carrier Board is a huge advantage for your project!

The ATSAMD51J20 utilizes a 32-bit ARM Cortex-M4 processor with Floating Point Unit (FPU), running up to 120MHz, up to 1MB of flash memory, up to 256KB of SRAM with ECC, up to 6 SERCOM interfaces, and other features. This MicroMod SAMD51 even comes flashed with the same convenient UF2 bootloader like the SAMD51 Thing Plus and the RedBoard Turbo.

MicroMod is a modular interface ecosystem that connects a microcontroller “processor board” to various “carrier board” peripherals. Utilizing the M.2 standard, the MicroMod standard is designed to easily swap out processors on the fly. Pair a specialized carrier board for the project you need with your choice of compatible processor!

SAMD51 General Features:

  • ATSAMD51J20 microcontroller
    • 32-bit ARM Cortex-M4F MCU
    • Up to 120MHz CPU speed
    • 1MB flash memory
    • 256KB SRAM
    • Up to 6 SERCOM interfaces
  • UF2 bootloader

Specific Peripherals made available on MicroMod SAMD51:

  • 1x USB dedicated for programming and debug (Host capable)
  • 2x UARTs
  • 2x I2C
  • 1x SPI
  • 1x CAN
  • 11x GPIO
  • 2x Digital Pins
  • 2x Analog Pins
  • 2x PWM
  • 128mbit/16MB (external) flash memory
  • Status LED
  • VIN Level ADC

SparkFun MicroMod SAMD51 Processor Product Help and Resources

MicroMod WiFi Function Board - DA16200 Hookup Guide

November 11, 2021

Add IoT functionality to any MicroMod project with the MicroMod WiFi function Board - DA16200!

Qwiic Digital Desk Sign with MicroMod

June 30, 2022

Make a Qwiic-enabled digital desk sign with a MicroMod SAMD51 Processor Board's USB Host and a USB keyboard!

Designing with MicroMod

October 21, 2020

This tutorial will walk you through the specs of the MicroMod processor and carrier board as well as the basics of incorporating the MicroMod form factor into your own PCB designs!

MicroMod Qwiic Pro Kit Project Guide

September 29, 2022

The MicroMod Qwiic Pro Kit was designed to allow users to get started with Arduino without the need for soldering or a breadboard. We've included three inputs (a joystick, accelerometer, and proximity sensor) and one display that can be daisy chained to the MicroMod SAMD51 Processor Board.

Getting Started with MicroMod

October 21, 2020

Dive into the world of MicroMod - a compact interface to connect a microcontroller to various peripherals via the M.2 Connector!

Adding More SERCOM Ports for SAMD Boards

February 4, 2019

How to setup extra SPI, UART, and I2C serial ports on a SAMD-based boards.

MicroMod SAMD51 Processor Board Hookup Guide

October 21, 2020

This tutorial covers the basic functionality of the MicroMod SAMD51 and highlights the features of the ARM Cortex-M4F development board.

Core Skill: Programming

If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.

2 Programming

Skill Level: Rookie - You will need a better fundamental understand of what code is, and how it works. You will be using beginner-level software and development tools like Arduino. You will be dealing directly with code, but numerous examples and libraries are available. Sensors or shields will communicate with serial or TTL.
See all skill levels

Core Skill: Electrical Prototyping

If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.

2 Electrical Prototyping

Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels


Looking for answers to technical questions?

We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.

  • Member #1500625 / about 10 months ago / 1

    Can anyone clarify if boards marked with ATSAME51J20A are actually ATSAMD51J20A parts that were mislabeled or are they device with the wrong device ID?

    Does the board silkscreen rev E correspond to V1.2 or V1.3 or another version entirely? Can the rev E boards utilize the 16MB flash module (i.e. did the SPI issue get resolved)?

    • Elias The Sparkiest / about 10 months ago * / 1

      Good morning! We had at one point been sent the incorrect parts by the manufacturer, but the ATSAMD51J20A IC is what is currently on this product. The SPI issue was resolved with revision v1.3 and yes you can use the flash module. The "E" on the board is not the revision but the specific type of m.2 pinout, more info here:

      • Member #1500625 / about 9 months ago / 1

        I'm still a bit confused. When I read the device ID on the boards I have using SWD, it reads as a ATSAMD51J20A, but the label on the IC is ATSAME51J20A. Were the incorrect parts simply mislabeled or is the device ID incorrect? Also, how can I tell what revision I have - I don't see v1.3 or similar anywhere on the board.

  • Member #427137 / about 2 years ago / 1

    Any particular reason these "SAMD51 MicroMod" Boards are shipping with ATSAME53J19A chips? (Chip ID 0x61830305)

    But show up as a ATSAMD51J20A according to the chip ID? (0X60060004)

    I caught this when I was trying to connect to this with Atmel Studio 7 using a Atmel-ICE.

    Has Sparkfun changed the Chip ID to make it work? or am I missing something?

    • stonehippo / about 2 years ago / 1

      Oh man, I didn’t even notice this change when I was checking the V1.3 to see if the flash was fixed. My V1.2 module used the ATSAMD51J20A, and the new one has the ATSAME53J19A. I’m going to checkout the differences in the data sheets.

      • stonehippo / about 2 years ago / 1

        Same pin out, but half the RAM and onboard flash (plus Ethernet support,I guess). This seems like a pretty drastic change to the specs of this board. I’m really wondering what’s going on here. I’ve never experienced this many issues with a Sparkfun product before..

  • Member #521443 / about 3 years ago * / 1

    Does this board have 1MB flash or 16MB flash? 25Q128 is a 16MB part IIRC.

    Edit: The schematic shows 128Mbit flash. 16MB.

    Edit#2: The SAMD51 includes 1MB flash. If I use this board with CircuitPython, how much flash is available in the circuitpython drive?

    • stonehippo / about 3 years ago / 1

      The broken SPI set up (PA10 cannot be MOSI) means the external flash is basically useless. I added this board to CircuitPython before 7.0.0, but was setup for the external flash chip. I’m going to put in a PR to patch it use the internal flash for now, and hope that a 1.3 rev of this board fixes the broken SPI config to the chip.

      Anyone at Sparkfun care to comment?

      • Elias The Sparkiest / about 3 years ago / 1

        That's right, a new revision is on the way that fixes this oversight. It's arrival should not be much longer now.

        • stonehippo / about 2 years ago / 1

          I got my v1.3 module today! Any chance of getting an update schematic doc soon?

          • stonehippo / about 2 years ago / 1

            Sadly, it appears that the new revision is flawed, too. This is my first 1 star product from Sparkfun. :(

    • Member #1661842 / about 3 years ago * / 1

      Edit: Removed previous comment because it was inaccurate.

      There is 16MB of external flash available, but can't be used (on v1.2 boards) with SPI because of swapped MISO/MOSI lines.

  • Cullen Fluffy Jennings / about 3 years ago * / 1

    Removed comment

  • SK Pang Electronics / about 4 years ago / 1

    Does the ATSAMD51J20 have CAN-bus ? According to the data sheet it is the SAME51 version that has CAN-bus.

    • Elias The Sparkiest / about 4 years ago / 2

      You are entirely correct, I misread the datasheet at some point. We have corrected and updated the hookup guide and schematic. Now they correctly reflect that they are general purpose pins being routed to the CAN pins on the micromod connector. Thanks again!

Customer Reviews

3 out of 5

Based on 1 ratings:

Currently viewing all customer reviews.

Not exactly as specified

I ordered this module in 2021, when the first revision came out. I ran into issues with the external flash module, which turned out to be due to a flaw in the board routing for the SPI interface. Sparkfun acknowledged the issue and sent me a new module when the 1.3 revision came out.

Sadly, the new revision appears to be flawed as well. A check of the board showed that the fix made for the SPI was partial, with one pair of pads still swapped. So it's not really a fix at all.

I don't see how this module was fully tested in either revision, which is really disappointing. I've been a Sparkfun customer for years, and I've trusted them to build quality products. But this one let me down.

There's more detail on the issues with this board in a couple of forum threads.

Update: it turns out the v1.3 module I got has an ATSAME53J19A instead of the ATSAMD51J20A. This is probably due to the chip shortage, but it’s a lower spec chip in terms of RAM and ob-board flash. However, I was wrong about the SPI flash: the new routing does work.

Greetings. Thank you for reaching out and bringing this issue to our attention. if you would like to submit a return ticket we can look into this issue further and get you taken care of regarding the ATSAME53J19A / ATSAMD51J20A mislabeling problem brought up in your edit: