All of our Feathers support Arduino and C/C++ using a gcc toolchain. But not everyone wants to write C/C++ code. Thanks to the bigger and faster chips available, it is now possible to run a full Python interpreter directly in the microcontroller itself!

*mind blown*

The original version of this embedded Python is called MicroPython, written a feat of magic by Damien George. Please help support him by purchasing from his shop! We also stock MicroPython boards, books and badges in the Adafruit shop all of which directly help Damien's efforts.

CircuitPython is a variant of MicroPython which is designed specifically for beginners, and use the chipsets on Adafruit boards, like the SAMD21 and SAMD51. They are 98% the same and use the same interpreter core, just some of the helper libraries vary in naming.

Feathers designed for CircuitPython

Angled shot of black rectangular microcontroller "Feather RP2040"
A new chip means a new Feather, and the Raspberry Pi RP2040 is no exception. When we saw this chip we thought "this chip is going to be awesome when we give it the Feather...
$11.95
In Stock
Angled shot of a Adafruit Feather M0 Express - ATSAMD21 Cortex M0.
At the Feather M0's heart is an ATSAMD21G18 ARM Cortex M0+ processor, clocked at 48 MHz and at 3.3V logic, the same one used in the new 
$19.95
In Stock
Angled shot of a Adafruit Feather M4 Express.
It's what you've been waiting for, the Feather M4 Express featuring ATSAMD51. This Feather is fast like a swift, smart like an owl, strong like a ox-bird (it's half ox,...
$22.95
In Stock
Angled shot of a Adafruit Feather nRF52840 Express.
The Adafruit Feather nRF52840 Express is the new Feather family member with Bluetooth Low Energy and native USB support featuring the nRF52840!  It's...
$24.95
In Stock
Video of a blinking eye on a Adafruit HalloWing M0 Express.
This is Hallowing..this is Hallowing... Hallowing! Hallowing! Are you the kind of person who doesn't...
$34.95
In Stock

The Feather M0 Express and M4 express are the first in a line of products specifically designed for CircuitPython. The SAMD21 and SAMD51 microcontrollers are inexpensive while still being full featured with native USB, multi serial (I2C and SPI) engines called SERCOMs and a 10 bit DAC. Its 256k on board flash is supplemented with an external flash chip that gives a huge two megabytes for your code and all of our CircuitPython libraries. The status NeoPixel gives you information on the state of CircuitPython even when its unplugged from a computer. Its perfect for rapid prototyping of sensor driven projects.

The Feather nRF52840 Express is a newer board that leverages both a Cortex M4F processor and a Bluetooth radio.

Contrary to its name, the Adafruit HalloWing M0 Express is a Feather (not a FeatherWIng) in a modified form factor with an LCD display. The closeness of HalloWing and Halloween was too good to pass up.

Pros

  • UF2 bootloader for easy drag and drop flashing
  • 2MB SPI Flash for storing all your code, libraries and data files
  • Status NeoPixel for debugging in a pinch
  • Built-in USB support enabling CIRCUITPY drive, USB HID (mouse and keyboard) and easy serial

Cons

  • No built in radio on the SAMD boards. Bluetooth for the nRF52840. Additional radios are available on FeatherWings.
  • Not compatible with MicroPython, only CircuitPython
  • M0: CircuitPython interpreter uses half the 32KiB RAM — only 16KiB for the user

CircuitPython-Compatible Feathers

These Feathers weren't designed for CircuitPython, but they work just fine!

The Huzzah does not have native USB so you don't get the nice "USB drive with source code on it". The non-Express M0's don't have a 2MB SPI Flash so the USB drive you get is quite small, and gets wiped if you update the firmware.

So if you really want to have an easy CircuitPython experience, we suggest the M0 Express, above!

Angled shot of a Adafruit Feather M0 Basic Proto - ATSAMD21 Cortex M0.
Feather is the new development board from Adafruit, and like its namesake it is thin, light, and lets you fly! We designed Feather to be a new standard for portable microcontroller...
$19.95
In Stock
Angled shot of rectangular microcontroller with a MicroSD card installed.
Feather is the new development board from Adafruit, and like its namesake it is thin, light, and lets you fly! We designed Feather to be a new standard for portable microcontroller...
$19.95
In Stock
Angled shot of rectangular microcontroller.
Feather is the new development board from Adafruit, and like its namesake, it is thin, light, and lets you fly! We designed Feather to be a new standard for portable microcontroller...
$29.95
In Stock
Angled shot of rectangular microcontroller.
This is the Adafruit Feather M0 RFM69 Packet Radio (433 MHz). We call these RadioFruits, our take on an...
$24.95
In Stock
Angled shot of rectangular microcontroller.
This is the Adafruit Feather M0 RFM69 Packet Radio (868 or 915 MHz). We call these RadioFruits, our take on an...
Out of Stock
Angel shot Adafruit Feather M0 with RFM95 LoRa Radio - 900MHz
This is the Adafruit Feather M0 RFM95 LoRa Radio (900MHz). We call these RadioFruits, our take on an microcontroller with a...
$34.95
In Stock
Angled shot of rectangular microcontroller.
This is the Adafruit Feather M0 RFM96 LoRa Radio (433 MHz). We call these RadioFruits, our take on an microcontroller with a "
$34.95
In Stock

Prior to CircuitPython, the SAMD21 M0 microcontroller wasn't supported by MicroPython. However, it was supported by Arduino and that lead to a wide variety of M0 based feathers. Now, all of these can run CircuitPython but are more limited in the functionality available. They run the same speed as the Feather M0 Express but are missing the extra space for code on the SPI flash which also means that there is less room internally for functionality in the CircuitPython core.

So, if you already have one and want to try CircuitPython, then you can! They can do smaller code tasks just fine. Just beware that it won't be quite as easy as the Feather M0 Express.

Also note that the extra functionality on these boards, such as the SD card, radios and Bluetooth modules, is not yet supported in CircuitPython. Some of them will require additional core CircuitPython work while others will only require a new library or two.

Pros

  • Additional functionality on-board
  • Built in USB support for CircuitPython drive
  • If you already have one, you can try CircuitPython

Cons

  • Very small file storage 64KiB max
  • No UF2 bootloader
  • No CircuitPython libraries for extra functionality
  • CircuitPython version is reduced functionality to share flash with file storage

This guide was first published on May 14, 2017. It was last updated on Mar 08, 2024.

This page (CircuitPython) was last updated on Mar 08, 2024.

Text editor powered by tinymce.