CircuitPython runs nicely on the Gemma or Trinket M0 but there are some constraints
Since we use the internal flash for disk, and that's shared with runtime code, its limited! Only about 50KB of space. Our Express line of boards have a whopping 2 MB of external Flash, if you need more space
As of CircuitPython 2.1 we have added PulseIO support to Trinket & Gemma M0. That means PWM, piezo, servo, DHT22 and Infrared support!
Part of giving up that FLASH for disk means we couldn't fit everything in. There is, at this time, no support for hardware audio playpack or NVM 'eeprom'. For that support, check out the Circuit Playground Express or other Express boards
However, I2C, UART, capacitive touch, NeoPixel, PWM, analog in and out, digital IO, logging storage, and HID do work! Check below for quick starts on all these.