4.1.2 is a minor stable release. Most notably, it updates the adafruit_circuitplayground frozen library for Circuit Playground Express. It shouldn’t break any code compatible with previous 4.x releases. If you don’t have a Circuit Playground Express or a PyRuler, or a board with frozen libraries, there is no strong reason to update to 4.1.2.

Download it now from circuitpython.org. See here for the full release notes.

(In case you’re wondering, release 4.1.1 was built incorrectly and was deleted.)

Over 60 boards are now supported by CircuitPython 4.1.2. Check out the new circuitpython.org/downloads page for full list of all available versions.

Contribute to CircuitPython! Check out this guide for details. Subscribe to the Python for Microcontrollers newsletter on adafruitdaily.com for the latest news for all things Python.

circuitpython.org

Downloads are now available from circuitpython.org! This site makes it much easier to select the correct file and language for your board. The downloads page is here.

Installation

To install follow the instructions in our new Welcome to CircuitPython! guide. To install the latest libraries, see this page in that guide.

Try the latest version of the Mu editor for creating and editing your CircuitPython programs and for easy access to the CircuitPython serial connection (the REPL).

New Fixes and Features since 4.1.0

On Circuit Playground Express (CPX) builds, the frozen-in adafruit_circuitplayground library now supports:

from adafruit_circuitplayground import cp

in addition to the previous standard import:

from adafruit_circuitplayground.express import cpx

This allows uniform library support for the the Circuit Playground Bluefruit (which requires CircuitPython 5.x). The library examples have all been updated to use cp instead of cpx . The names cp and cpx can be used identically: only the import is different. You do not need to change your existing code. Thanks @kattni.

library now supports: in addition to the previous standard import: This allows uniform library support for the the Circuit Playground Bluefruit (which requires CircuitPython 5.x). The library examples have all been updated to use instead of . The names and can be used identically: only the is different. You do not need to change your existing code. Thanks @kattni. The stack size on CPX builds has been increased slightly to accommodate the restructured library. Thanks @dhalbert and @jepler.

Other frozen libraries have been updated to their latest versions. Thanks @dhalbert.

The PyRuler now displays correct colors on its on-board DotStar RGB LED. Thanks @dhalbert.

PWMOut.deinit() on nrf builds was now releases the pin. Thanks @jepler.

on nrf builds was now releases the pin. Thanks @jepler. The library freezing process now makes sure not to include subdirectories of excluded directories. Thanks @jepler.

Translated messages are now compressed more effectively, preventing certain translated builds from being too large. Thanks @jepler.

Thanks

Thank you to all who contributed and tested to this release: @dhalbert, @jepler, @kattni, @ladyada, @tannewt.

Join us on the Discord chat to collaborate.

Documentation

Documentation is available in readthedocs.io.

Here are all the changes since 4.1.0.

This release is based on MicroPython 1.9.4 @25ae98f. Support upstream MicroPython by purchasing a PyBoard (from Adafruit here).

Troubleshooting

Check out this guide for info on common problems with CircuitPython. If you are still having trouble, then post to the Adafruit Support Forums and join Discord.