Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.

Arduino Core for SAMD21 CPU

This repository contains the source code and configuration files of the Arduino Core for Atmel's SAMD21 processor (used on the Arduino/Genuino Zero, MKR1000 and MKRZero boards).

Installation on Arduino IDE

This core is available as a package in the Arduino IDE cores manager. Just open the "Boards Manager" and install the package called:

"Arduino SAMD Boards (32-bit ARM Cortex-M0+)"


There is a dedicated section of the Arduino Forum for general discussion and project assistance:

Bugs or Issues

If you find a bug you can submit an issue here on github:

Before posting a new issue, please check if the same problem has been already reported by someone else to avoid duplicates.


Contributions are always welcome. The preferred way to receive code contribution is by submitting a Pull Request on github.


  1. Clone the ArduinoCore-API repo to any convenient location:
    git clone
  2. Create an <SKETCHBOOK>/hardware/arduino-git folder, where <SKETCHBOOK> is the location of your Arduino sketchbook.
  3. Change directories:
    cd <SKETCHBOOK>/hardware/arduino-git
  4. Clone this repo:
    git clone samd
  5. Change directories:
    cd samd/cores/arduino
  6. Copy or symlink the api folder from the ArduinoCore-API repo:
    ln -s <ARDUINO_CORE_API>/api .
    where <ARDUINO_CORE_API> is the location where you've cloned the ArduinoCore-API repository to.
  7. Restart the IDE.

Hourly builds

This repository is under a Continuous Integration system that every hour checks if there are updates and builds a release for testing (the so called "Hourly builds").

The hourly builds are available through Boards Manager. If you want to install them:

  1. Open the Preferences of the Arduino IDE.
  2. Add this URL in the Additional Boards Manager URLs field, and click OK.
  3. Open the Boards Manager (menu Tools->Board->Board Manager...)
  4. Install Arduino SAMD core - Hourly build
  5. Select one of the boards under SAMD Hourly build XX in Tools->Board menu
  6. Compile/Upload as usual

If you already installed an hourly build and you want to update it with the latest:

  1. Open the Boards Manager (menu Tools->Board->Board Manager...)
  2. Remove Arduino SAMD core - Hourly build
  3. Install again Arduino SAMD core - Hourly build, the Board Manager will download the latest build replacing the old one.

License and credits

This core has been developed by Arduino LLC in collaboration with Atmel.

  Copyright (c) 2015 Arduino LLC.  All right reserved.

  This library is free software; you can redistribute it and/or
  modify it under the terms of the GNU Lesser General Public
  License as published by the Free Software Foundation; either
  version 2.1 of the License, or (at your option) any later version.

  This library is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  See the GNU Lesser General Public License for more details.

  You should have received a copy of the GNU Lesser General Public
  License along with this library; if not, write to the Free Software
  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA