CircuitPython 8.0.0 Beta 3 Released! @circuitpython “Adafruit Industries – Makers, Hackers, Artists, Designers and Engineers!

From the GitHub release page:

This is CircuitPython 8.0.0-beta.3, a beta release for 8.0.0. It is relatively stable, but there will be more additions and fixes before the final release.

NOTE: ESP32-C3 plank constructions are nonfunctional since 8.0.0-beta.2. Use 8.0.0-beta.1.

WARNING: Flash partitioning for 2MB and 4MB flash memory ESP32 and ESP32-C3 advice has changed since 8.0.0-beta.2. When you load 8.0.0-beta.3 or later over beta.2 (or vice versa), on these cards, CIRCUITPY will be erased and reformatted.

WARNING: Flash partitioning for the Raspberry Pi Pico W changed from 8.0.0-beta.1. When loading 8.0.0-beta.2 or later over beta.1 (or vice versa), on Pico W, CIRCUITPY will be erased and reformatted.

Notable Changes to Version 8.0.0 from Version 7.3.0

Feature additions

  • Added WiFi workflow with browser-based device discovery, file system browsing, uploading, downloading, file editing, serial/REPL connection (only available on Espressif for now).
  • Added a one-line status bar, which displays connection status, last exception, and version on the title of a terminal window or on the top line of an attached display. Support for displaying the status bar is also added to the Mu and Thonny editors.
  • .env drop in CIRCUITPY specifies WiFi connection settings, BLE name and other startup values.
  • dotenv Support: os.getenv() values ​​are defined by values ​​in .env case. Values ​​can be taken from other dotenv-files in .
  • WiFi functionality implemented on the Pi Pico W.
  • Revised Espressif camera support, now available on ESP32, ESP32-S2 and ESP32-S3.
  • Ground analog input: analogbufio (only available on RP2040 for now).
  • Pin state can be preserved during deep sleep (only available on Espressif for now).
  • Allow configuration of USB VID, PID, manufacturer and product identifiers at runtime.
  • Enabled collections.deque on most buildings.
  • MP3Decoder and WaveFile can now take a filename instead of an open file.
  • AnalogIn the values ​​are between 0 and 65535, instead of having zeros on the least significant bits.
  • On-site firmware update (dualbank) can be disabled in favor of a larger CIRCUITPY drive.
  • Added TileGrid.contains().
  • Added os.utime().
  • Added coproc module, to run programs on an on-chip coprocessor. Currently available for RISC-V core on ESP32-S2 and ESP32-S3.

Compatibility changes

  • PulseOut no longer accept a PWMOut. Use a Pin In place.
  • Auto-brightness support in displayio and framebufferio has been removed. It was never fully implemented.
  • OneWire is only in onewireioand is no longer in busio Where bitbangio.
  • gamepadshift has been removed: use keypad.ShiftRegisterKeys In place.
  • Print floating point integers exactly and correctly.
  • Restored rainbowio and onewireio several boards. Some boards still have rainbowio turned off for space reasons.
  • i2ctarget.I2CTarget is the new name of i2cperipheral.I2CPeripheral. Accept both for now. I2CPeripheral will be removed in version 9.0.0.
  • The property supervisor.runtime.ble_workflow replaces supervisor.disable_ble_workflow().
  • The property supervisor.runtime.next_stack_limit replaces supervisor.set_next_stack_limit().
  • The property supervisor.runtime.rgb_status_brightness replaces supervisor.set_rgb_status_brightness().

Download from

Firmware downloads are available from the download page on The site makes it easy to select the correct file and language for your map.


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

Try the latest version of the Mu editor to create and edit your CircuitPython programs and to easily access the CircuitPython serial connection (the REPL).


Documentation is available at

Port status

CircuitPython has a number of “ports” which are the main implementations for different families of microcontrollers. Stability varies from port to port. As of this release, these ports are considered stable:

  • atmel-samd: Chip SAMD21, SAMx5x
  • cxd56: Sony Spresense
  • espressif: Expressive ESP32-S2
  • nrf: Nordic nRF52840, nRF52833
  • raspberrypi: Raspberry Pi RP2040
  • stm: ST STM32F4 chip family

These ports are considered alpha and will have bugs and missing features:

  • broadcom: Raspberry Pi boards such as RPi 4, RPi Zero 2W
  • espressif: ESP32, ESP32-S3, ESP32-C3
  • litex: fomu
  • mimxrt10xx: NXP i.MX RT10xxx
  • stm: Non-STM32F4 ST chip families

Changes since 8.0.0-beta.2

Fixes and improvements

  • To improve asyncio implementation and add automated tests. #7059. Thanks @jepler.
  • To add coproc module, to run programs on an on-chip coprocessor. Currently available for RISC-V core on ESP32-S2 and ESP32-S3. #6902. Thanks @MicroDev1.

Port and Map Specific Changes



  • Fixed partitioning on ESP32 and ESP32-C3 boards with 2MB and 4MB flash memory. #7073. Thanks @MicroDev1.
  • To improve dualbank error messages. #7061. Thanks @MicroDev1.
  • Fixed ESP-IDF logging level. #7052. Thanks @MicroDev1.






Individual tables

  • Cytron Maker Feather AIoT S3: Add pin definitions. #7053. Thanks @CytronTechnologies.
  • Raspberry Pi Pico W:
    • Troubleshoot pin count issues affecting PulseIn and other features. #7089. Thanks @jepler.
    • Implement static IP configuration. #7088. Thanks @jepler.
    • fix big send() requests. To add sendall(). Solve .local names. Allow radio to stop. #7079. Thanks @jepler.
    • Connect to wifi asynchronously. #7076. Thanks @bill88t.
    • Fixed wifi interface check in progress. #7075. Thanks @jepler.
    • Fixed CYW43 pin initialization. #7064. Thanks @jepler.
    • Turn off the CYW43 wifi coprocessor during deep sleep. #7050. Thanks @jepler.
    • Implement hashlib. #7051. Thanks @jepler.

Documentation Changes

  • Remove hashlib and zlib from MicroPython-specific modules. #7074. Thanks @jepler.

Construction and infrastructure changes

  • Use py/stream.h instead of py/ioctl.h. #7058. Thanks @jepler.
  • Improve calculation of partial builds. #7057. Thanks @jepler.
  • Save about 124 bytes, related to string0.c. #6397. Thanks @jepler.

Translation additions and improvements

Thanks for the translations:

  • @Atalanttore (German)
  • @bergdahl (Swedish)
  • @wtuemura (Portuguese – Brazil)

New tables since 8.0.0-beta.2

Known issues

  • See for other issues, including outstanding issues for:


Thanks to everyone who has used, tested, and contributed since 8.0.0-beta.2, including the contributors above and many more on GitHub and Discord. Join us on the Discord chat to collaborate.

Stop the breadboard and soldering – start crafting right away! Adafruit’s Circuit Playground is packed with LEDs, sensors, buttons, alligator clips, and more. Build projects with Circuit Playground in minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class at, jump into CircuitPython to learn Python and hardware together, TinyGO , or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode and Arduino. It has a powerful processor, 10 NeoPixels, a mini speaker, infrared reception and transmission, two buttons, a switch, 14 crocodile clips and numerous sensors: touch capacitive, IR proximity, temperature, light, motion and sound. A whole world of electronics and coding awaits you, and it fits in the palm of your hand.

Join over 35,000 creators on Adafruit’s Discord channels and join the community!

Do you have an amazing project to share? The Electronic Show and Tell takes place every Wednesday at 7 p.m. ET! To sign up, head over to YouTube and check out the show’s live chat – we’ll post the link there.

Join us every Wednesday night at 8 p.m. ET for Ask an Engineer!

Follow Adafruit on Instagram for top secret new products, behind the scenes and more

CircuitPython – The easiest way to program microcontrollers –

Get the only spam-free daily newsletter on wearable devices, running a “maker business”, e-tips and more! Subscribe on!

No comments yet.

Adafruit has a “Be Great to Each Other” feedback policy. Help us keep the community here positive and helpful. Stick to the topic, be respectful of creators of all ages and skill levels. Be nice and don’t spam – Thanks!

Previous Creation of a hidden TV and multimedia center “Adafruit Industries – Makers, hackers, artists, designers and engineers!
Next Library issues continue in county court |