Overview
CircuitPython is a programming language based on Python, and it is designed to work with low-cost
microcontroller boards to make learning and tinkering easier. The Microchip ATSAMD21 is an inexpensive
chip with the power to run CircuitPython.
Some SAMD21-based boards, like the Circuit Playground Express (https://adafru.it/wpF), METRO M0
Express (https://adafru.it/xoa), and Feather M0 Express (https://adafru.it/wfb), are designed to work with
CircuitPython out of the box. Others, like the Arduino MKRZero, require a little more work.
This guide will show you how to install CircuitPython on a variety of SAMD21-based boards!
The easiest method for installing CircuitPython is through the UF2 bootloader. UF2 is a slick piece of code
that runs on your microcontroller, and it allows the board to appear as a drive on your computer. From
there, you can simply drag-and-drop the CircuitPython installer! We will need to take the following steps to
install CircuitPython on a SAMD21 board:
Install Arduino and the appropriate board definition
Download the UF2 bootloader Arduino code for your board
Upload the UF2 bootloader code to your board from Arduino
Download the CircuitPython installer for your board
Copy the CircuitPython installer to your board
Test it!
Note that you only need to perform these steps once. Once you have installed CircuitPython on your
board, you write CircuitPython code for it over and over again!