MicroPython is a fantastic environment for controlling hardware with the Python programming language. Beginners can benefit from MicroPython’s simple syntax and interactive REPL, while advanced users can explore mixing Python code with low-level hardware access. There are a few boards which support MicroPython today, such as the powerful pyboard or the WiFi-capableESP8266. Now there’s a new set of boards which can support MicroPython, Adafruit’s Feather M0 and Arduino Zero boards which use the SAMD21 microprocessor!
Adafruit’s SAMD21 MicroPython port is a brand new port of MicroPython to the Atmel SAMD21 microprocessor. This processor is a 32-bit ARM Cortex-M0+ chip which means it’s quite a bit more powerful than typical Arduino boards like the Uno or Leonardo. There’s more RAM (32kb), flash memory (256kb), and processing power (48mhz) which enable these SAMD21 boards to run MicroPython. MicroPython on the SAMD21 has many of the same features as other boards, like an interactive USB serial REPL, USB mass storage for manipulating files, and all of the core MicroPython language support.
Be aware the SAMD21 MicroPython port is still in development! It is currently in an early ‘preview’ or beta state for advanced users to kick the tires and explore MicroPython on Feather M0 and similar boards. Not all MicroPython modules are implemented yet, and there very likely will be bugs and other issues. Check out the quick start guide page to see what modules are currently supported by the port.