This is CircuitPython 7.2.0-alpha.1, the first published alpha release for CircuitPython 7.2.0. It is relatively stable, but there will be further additions and fixes before final release.
Notable additions to 7.2.0 since 7.1.0
- Continuing work on Raspberry Pi Broadcom board support.
- Espressif ESP32-S3 support.
- RP2040 PIO sideset support.
Download from circuitpython.org
Firmware downloads are available from the downloads page on circuitpython.org. The site makes it easy to select the correct file and language for your board.
Installation
To install follow the instructions in the 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).
Port status
CircuitPython has a number of "ports" that are the core implementations for different microcontroller families. Stability varies on a per-port basis. As of this release, atmel-samd
, cxd56
(Spresense), esp32s2
, nrf
,raspberrypi
, stm
for the F4 family are stable. stm
for other STM chip families is being actively improved but may be missing functionality and have bugs. broadcom
(Raspberry Pi), litex
and mimxrt10xx
are in an alpha state and will have bugs and missing functionality.
Changes since 7.1.x branch
Fixes and enhancements
- Update frozen libraries. #5789, #5778, #5773. Thanks @dhalbert.
- Go into safe mode if CIRCUITPY drive is unavailable. #5785. Thanks @dhalbert.
displayio.Tilegrid
: addwidth
,height
,tile_width
,tile_height
attributes. #5749. Thanks @FoamyGuy.- Update
ulab
. #5747, #5740. Thanks @jepler. adafruit_pixelbuf
: fix off-by-one errors. #5746. Thanks @dunkmann00.vectorio
: support 32-bit color. #5728. Thanks @tannewt.wifi.SSLContext
improvements. #5716. Thanks @timhawes.wifi.SSLSocket
: fix error checking. #5714. Thanks @timhawes.vectorio.Rectangle
: addwidth
andheight
. #5709. Thanks @WarriorOfWire.sdcardio
fix. #5694, #5688. Thanks @jepler.- Fix
_bleio
HCI support. #5686, #5683. Thanks @dhalbert. - Update
_stage
to avoid backlight problems. #5686, #5657. Thanks @deshipu.
Port and board-specific changes
Broadcom
- Allow long integers. #5774. Thanks @RetiredWizard.
- Add NeoPixel support. #5727. Thanks @tannewt.
busio.SPI
support. #5698. Thanks @tannewt.- Full
busio.UART
support. #5676. Thanks @tannewt.
Espressif
- Add distinct UF2 family ID for ESP32-S3. #5771. Thanks @hathach.
- Update
protomatter
and reenableRGBMatrix
. #5744. Thanks @jepler. - Choose SPI channel automatically. #5660. Thanks @jepler.
- Update ESP-IDF to v4.4; add ESP32-S3 support; temporarily diable
RGBMatrix
. #5615. Thanks @MicroDev1.
nRF
- Add a distinct UF2 family ID for nRF52833 boards. #5775. Thanks @jpconstantineau.
RP2040
- Add sideset enable support to PIO. #5766. Thanks @tannewt.
- Protect
nvm
writes from interrupts. #5686, #5663. Thanks @FoamyGuy. - Use longer clock-stretch timeout for RP2040 zero-byte I2C writes. #5686, #5656. Thanks @dhalbert.
- Use proper slice number for
PWMOut
. #5686, #5667. Thanks @dhalbert. RGBMatrix
: clear interrupt when freeing timer. #5789, #5613. Thanks @jepler and @DavePutz.
SAMx
- Fix SAMD TAMPER interrupt clearing in
PinAlarm
; fixes some second-order bugs, including in displayio. #5747, #5708. Thanks @dhalbert. - Fix
FrequencyIn
. #5686, #5665. Thanks @dhalbert.
Individual boards
- Adafruit Feather ESP32-S2: turn on I2C power by default. #5789, #5779, #5776. Thanks @ladyada and @dhalbert.
- Adafruit Feather ESP32-S2 TFT: fix color order. #5742. Thanks @ladyada.
- Adafruit Feather ESP32-S2 TFT: fix pin assignments. #5738. Thanks @ladyada.
- Adafruit KB2040: add
CLK
pin to match silkscreen. #5735. Thanks @tannewt. - Adafruit QT Py ESP32-S2: fix pin assignments. #5738. Thanks @ladyada.
- Espressif ESP32-S3-Box-2.5 and ESP32-S3-DevkitC-1-nopsram: fix USB PIDs. Thanks @jepler.
- MakerDiary nRF52840 MDK USB Dongle: fix pin assignments. #5729. Thanks @asura99.
New boards since 7.1.0
- Espressif ESP32-S3 Box. #5691, #5674, #5661. Thanks @jepler.
- Espressif ESP32-S3 DevKit C-1. #5655. Thanks @jepler.
- Espressif ESP32-S3 DevKit C-1-nopsram. #5691, #5655. Thanks @jepler.
- JPConstantineau BlueMicro833. #5664. Thanks @jpconstantineau.
- JPConstantineau PyKey 18 Numpad. #5699. Thanks @jpconstantineau.
- JPConstantineau PyKey 44 Ergo. #5699. Thanks @jpconstantineau.
- JPConstantineau PyKey 60. #5699. Thanks @jpconstantineau.
- JPConstantineau PyKey 87 TKL. #5699. Thanks @jpconstantineau.
- Oak Development Technologies Cast-Away RP2040. #5666. Thanks @skerr92.
- Pimoroni Tiny 2040 (2MB). #5684. Thanks @ZodiusInfuser.
- Seeeduino Xiao nRF52840. #5753. Thanks @0hotpotman0.
- Seeeduino Xiao RP2040. #5696, #5519. Thanks @jpconstantineau and @prplz.
- SparkFun Thing Plus STM32. #5597. Thanks @NathanY3G.
Documentation changes
- Fix typo in
rp2pio
. #5764. Thanks @dannystaple. - Use
circuitpython_typing
instead of_typing
for type annotations. #5760. Thanks @jepler. - Update version of Sphinx. #5760. Thanks @jepler.
- Fix stubs for
adafruit_bus_device
by redoing directory structure to match module. #5786. Thanks @prplz. - Add protocol definition for fonts for type annotations. #5759. Thanks @jepler.
Build and infrastructure changes
- Refactor longint compile-time flags. #5783. Thanks @jepler.
- Use Python version "3.x" in CI actions. #5752. Thanks #jepler.
circuitpython-org
now usesmain
. Check that branch for updates. #5747, #5712. Thanks @jepler.- Don't rebuild boards on CI script changes. #5702. Thanks @tannewt.
- Add
adabot
submodule as requirement for website PR action. #5701. Thanks @tannewt. - Partial submodule fetching using sha. #5687, #5686, #5681. Thanks @tannewt.
- Update file formatting due to
blacken
anduncrustify
updates. #5686, #5670, #5669. Thanks @hdalbert. - Automatically notify @v923z of
ulab
updates. #5653. Thanks @tannewt.
Translation additions and improvements
- Fix French translation issue. #5710. Thanks @jepler.
- Thanks for translations:
- @bergdahl (Swedish)
- @dronecz (Czech)
- @hexthat (Chinese - Pinyin)
- @Pixel-Clay (Russian)
- @wtuemura (Portuguese - Brazil)
Known issues
- See https://github.com/adafruit/circuitpython/issues for other issues, including issues still to be addressed for 7.x.x.
Thanks
Thank you to all who used, tested, and contributed, including the contributors above, and many others on GitHub and Discord. Join us on the Discord chat to collaborate.