From the GitHub release page:
This is CircuitPython 7.2.0-rc.0, the initial release candidate for CircuitPython 7.2.0. It is considered stable, but we want to give time for further testing before the final release of 7.2.0.
Notable additions to 7.2.0 since 7.1.1
- Continuing work on Raspberry Pi Broadcom board support.
- Espressif ESP32-S3 and ESP32-C3 support, including BLE.
- RP2040 PIO sideset support.
board.STEMMA_I2C()
available on all boards with STEMMA connectors.binascii.crc32()
.vectorio.contains()
.- Turkish translation.
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), espressif
for ESP32-S2, 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),espressif
for ESP32-S3 and ESP32-C3, litex
and mimxrt10xx
are in an alpha state and will have bugs and missing functionality.
Changes since 7.2.0-alpha.2
Fixes and enhancements
- Don’t update status LED color on brightness change. #6054. Thanks @tannewt.
- Don’t wait for workflow connection after true deep sleep. #6051. Thanks @dhalbert.
- Update frozen libraries. #6060, #6043. Thanks @dhalbert and @makermelissa.
- Validate
bitmap.blit
arguments. #6035. Thanks @FoamyGuy. wifi.radio.start_ap()
: newmax_connections
argument. #6022. Thanks @anecdata.- Validate
rainbowio.colorwheel()
argument. #6016. Thanks @todbot.
Port and board-specific changes
Espressif
- Allow customization of how particular pins are reset. #6057. Thanks @tannewt.
- Respond promptly to keypress to enter REPL. #6046. Thanks @prplz.
- Fix pin state default handling. #6034. Thanks @tannewt.
- Increase socket limit on ESP32-S3 from 4 to 8. #6021. Thanks @anecdata.
- Add ESP32-S3 BLE GATT client support. #6013. Thanks @tannewt.
- Correct ping timeout. #6006. Thanks @DavePutz.
SAMx
- Fetch RTC counter more atomically. #6004. Thanks @dhalbert.
STM
- Prevent lost UART data while transmission is in progress. #6027. Thanks @EmergReanimator.
Individual boards
- Adafruit Feather ESP32-S2 TFT: update pin name. #6045. Thanks @kattni.
- Adafruit Feather ESP32-S2 TFT: fix pin state defaults. #6034. Thanks @tannewt.
- Adafruit QT Py ESP32-S2: make TX and RX pins available for non-debug builds. #6056. Thanks @Neradoc.
- Adafruit Portal boards: freeze in necessary libraries to save RAM. #6043. Thanks @makermelissa.
- SparkFun MicroMod SAMD51: correct
board.SPI()
MISO pin. #6023. Thanks @stonehippo.
New boards since 7.1.1
- Adafruit ESP32-S2 Camera: #5832. Thanks @ladyada.
- Adafruit QT Py ESP32-S3 no PSRAM: #5832. Thanks @ladyada.
- AIThinker ESP32-C3S-Kit-2M: #6032. Thanks @prplz.
- Diodes Delight Piunora. #5819. Thanks @tannewt.
- Espressif ESP32-C3 DevKitM-1. #5885. Thanks @tannewt.
- Espressif ESP32-S2 DevKitC-1-NR42. #5998. Thanks @anecdata.
- Espressif ESP32-S3 Box. #5691, #5674, #5661. Thanks @jepler.
- Espressif ESP32-S3 DevKit C-1-nopsram. #5691, #5655. Thanks @jepler.
- Espressif ESP32-S3 DevKit C-1. #5655. Thanks @jepler.
- HiiBot IoTs2. #6058. Thanks @Neradoc.
- 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.
- Raspberry Pi Zero W. #5800, #5819. Thanks @tannewt.
- Raspberry Pi Zero. #5800, #5819. Thanks @tannewt.
- Seeeduino Xiao RP2040. #5696, #5519. Thanks @jpconstantineau and @prplz.
- Seeeduino Xiao nRF52840. #5753. Thanks @0hotpotman0.
- SparkFun Thing Plus STM32. #5597. Thanks @NathanY3G.
- Unexpected Maker FeatherS3. #5940, #5991. Thanks @UnexpectedMaker and @prplz.
- Unexpected Maker ProS3. #5940, #5991. Thanks @UnexpectedMaker and @prplz.
- Unexpected Maker TinyS3. #5940, #5991. Thanks @UnexpectedMaker and @prplz.
- Waveshare RP2040-Zero. #5820. Thanks @CharString.
Documentation changes
- RP2040: Explain PIO read/write sizes. #6011. Thanks @tannewt.
- Add
half_duplex
argument tobusio.SPI()
signature. #6003. Thanks @dhalbert.
Build and infrastructure changes
- Check for failure during qstr phase of build, fix spurious error. #6047. Thanks @jepler.
- Fix compression of long UTF-8 strings. #6039. Thanks @jepler.
- Better use of
git describe
to get commit string. #6033. Thanks @jepler. - Fix all native module tests to run on x64. #6028. Thanks @jepler.
- Revise
convert-release-notes.py
script. #6020. Thanks @dhalbert.
Translation additions and improvements
- Thanks for translations:
- @bergdahl (Swedish)
- @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.