CircuitPython 7.1.0 Beta 0 Released! @circuitpython

From the GitHub release page:

This is CircuitPython 7.1.0-beta.0, the initial beta release for CircuitPython 7.1.0. It is relatively stable, but contains issues we may still address for 7.1.0.

Notable additions to 7.1.0 since 7.0.0

  • keypad.Events now include timestamps.
  • The Espressif port now provides I2CPeripheral, WiFi monitor mode, ESP32-C3 support, ParallelImageCapture.
  • bitmaptools: dithering and alphablend are new.
  • Preliminary support for asyncio is included. Use the CircuitPython asyncio library.
  • gifio.GifWriter is new.
  • HID now provides boot device and feature report support.
  • rotaryio now allows setting the divisor of counts per transition.
  • The SAMD port now provides watchdog, and alarm with sleep.
  • The STM port now provides STM32L4R5 support.
  • MicroPython 1.17 has been merged in.

Download from

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


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. litex and mimxrt10xx are in an alpha state and will have bugs and missing functionality.

Changes since 7.0.0

The full commit log is here.

Fixes and enhancements

  • Add preliminary support for asyncio. #5564. Thanks @dhalbert.
  • Fix and refactor traceback handling. #5562. Thanks @microDev1.
  • bitmaptools: add dithering support. #5558. Thanks @jepler.
  • Improve not writing boot_out.txt when it does not change. #5557, #5536. Thanks @jepler.
  • bitmaptools: add alphablend. #5544. Thanks @jepler.
  • Fix BLE workflow directory listing. #5524. Thanks @tannewt.
  • sdcardio: use CMD25 to improve write speed. #5510. Thanks @jepler.
  • PulseIn: fix possible memory corruption. #5509. Thanks @DavePutz.
  • _bleio: fix start_advertising() argument validation. #5508. Thanks @dhalbert.
  • Fix flash support to use additional values from the NVM toml data. #5506. Thanks @maholli.
  • Update help() message to point to #5494. Thanks @kattni.
  • Add gifio.GifWriter. #5490. Thanks @jepler.
  • keypad.Event: fix hash(). #5486. Thanks @dhalbert.
  • usb_hid: add boot device support and feature report support. #5481. Thanks @dhalbert.
  • rotaryio: allow setting count divisor. #5468. Thanks @jepler.
  • Merge MicroPython 1.17. #5466. Thanks @jepler.
  • Use mp_arg_validate_type() for keyword args. #5452. Thanks @microDev1.
  • displayio: fix argument validation for FourWire and I2CDisplay. #5450. Thanks @FoamyGuy.
  • _stage: add support for viewport scrolling. #5447. Thanks @pewpew-game.
  • Fix keyword argument handling in several native modules. #5439. Thanks @dhalbert.
  • usb_hid: allow report-id-less HID descriptors. #5392. Thanks @dhalbert.
  • adafruit_bus_device: allow CS active-high. #5383. Thanks @michthom.
  • displayio.Display.fill_row now takes any WriteableBuffer. #5373. Thanks @lesamouraipourpre.
  • bitmaptools.__init(): update error message. #5369. Thanks @lesamouraipourpre.
  • Avoid overflow when scaling ticks in mp_hal_delay_ms(). #5364. Thanks @osresearch.
  • keypad: add Event timestamps. #5360. Thanks @jepler.
  • Fix importing of paralleldisplay. #5358. Thanks @jepler.

Port and board-specific changes


  • Add ParallelImageCapture. #5540, #5457. Thanks @jepler.
  • Add WiFi monitor mode to capture all packets. #5537. Thanks @microDev1 and @anecdata.
  • Add initial ESP32-C3 support. #5394. Thanks @tannewt.
  • Fix serial REPL over UART. #5388. Thanks @microDev1.
  • Use I2S peripheral for parallel LCD displays. #5378. Thanks @jepler.
  • Update port to allow supporting more Espressif chips. #5367. Thanks @microDev1.
  • Support for I2CPeripheral. #3768. Thanks @microDev1.


  • Correct return value of #5541. Thanks @DavePutz.


  • Correct board name for nRF52833 DK. #5441. Thanks @jpconstantineau.


  • Fix watchdog time conversion. #5549. Thanks @jepler.
  • Fix SAMD21 PDMIn hang. #5458. Thanks @dhalbert.
  • SAMD51: Implement watchdog. #5483. Thanks @jepler.
  • Allow PA24 and PA25 pins to be used for other purposes if USB is turned off. #5427. Thanks @EmergReanimator.
  • Implementation of alarm, including deep sleep. #5425. Thanks @maholli.


  • Improve accuracy of microcontroller.delay_us(). #5553. Thanks @EmergReanimator.
  • Add STM32L4R5 support. #5403. Thanks @blues.

Individual boards

  • Adafruit Trinket QT2040: fix USB PID. #5550. Thanks @ladyada.
  • Challenger RP2040 WiFi: fix pin definitions. #5390. Thanks @Pontus0.
  • Cytron Maker Pi RP2040: correct pin definitions. #5533. Thanks @CytronTechnologies.
  • Lolin S2 Mini: add board.I2C(). #5467. Thanks @evildave666.
  • MicroDev microS2: minor updates. #5421. Thanks @microDev1.
  • Pimoroni PicoSystem: freeze the stage library. #5437. Thanks @pewpew-game.
  • Pimoroni PicoSystem: add displayio. #5398. Thanks @Gadgetoid.
  • PyCubed: update for mainboardv05. #5302. Thanks @maholli.
  • Sensebox MCU: add rainbowio. #5534. Thanks @jepler.

New boards Since 7.0.0

  • Adafruit Feather ESP32S2. #5517. Thanks @ladyada.
  • Adafruit Feather ESP32-S2 TFT. #5570. Thanks @ladyada.
  • Adafruit KB2040. #5550. Thanks @ladyada.
  • AIThinker ESP32-C3S_Kit. #5409. Thanks @skieast.
  • Challenger NB RP204. #5395. Thanks @Pontus0.
  • Lolin/Wemos S2-Pico. #5464. Thanks @skieast.
  • Melopero Shake RP2040. #5465, #5372. Thanks @melopero.
  • MicroDev microC3. #5404. Thanks @microDev1.
  • Oak Development Technologies Bread 2040. #5368. Thanks @skerr92.
  • PyKey60 #5507, #5497, #5365. Thanks @jpconstantineau.
  • Seed XIAO variant build for HID devices. #5442. Thanks @jpconstantineau.
  • Solder Party RP2040 Stamp. #5504. Thanks @solderparty.
  • Swan R5. #5403. Thanks @blues.


  • Update Troubleshooting. #5539, #5528. Thanks @kattni.
  • Update native module examples using the on-board LED; update PWM example. #5523. Thanks @kattni.
  • Update SocketPool. #5508. Thanks @dhalbert.
  • Update how to build documentation. #5472. Thanks @fraziern.
  • Add precision information to time.monotonic(). #5443. Thanks @dhalbert.
  • Add ESP32-C3. #5417. Thanks @microDev1.
  • Document board.board_id. #5416 Thanks @Neradoc.
  • Improve usb_hid.Device. #5379. Thanks @dhalbert.
  • Correct ‘I2C.writeto()`. #5363. Thanks @Neradoc.

Build and infrastructure changes

  • Enable -Werror=missing-prototypes on various ports. #5563, #5561. Thanks @jepler.
  • Use Python 3.9 for readthedocs. #5545. Thanks @jepler.
  • Handle deleted boards during a build. #5518. Thanks @jepler.
  • Allow any character except / in port or board names. #5473. Thanks @jepler.
  • Upload patch to artifacts if pre-commit fails. #5434. Thanks @microDev1.
  • Convert all modules to use MP_REGISTER_MODULE. #5430. Thanks @microDev1.
  • Fixed code comments re SAMD21/SAMD51 DAC clock speeds. #5429. Thanks @process1183.
  • Upload stubs to pypi for release versions. #5385. Thanks @FoamyGuy.
  • Fix stubs upload to S3. #5376. Thanks @microDev1.
  • Rebuild documentation only as necessary. #5350. Thanks @microDev1.

Translation additions and improvements

  • Thanks for translations:
    • @bergdahl (Swedish)
    • @hexthat (Chinese – Pinyin)
    • @lesamouraipourpre (English – UK)
    • @rezaalmanda (Indonesian)
    • @Senuros (German)
    • @wtuemura (Portuguese – Brazil)

Known issues


Thank you to all who used, tested, and contributed since 7.0.0, including the contributors above, and many others on GitHub and Discord. Join us on the Discord chat to collaborate.

Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on, 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, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.

Join 35,000+ makers on Adafruit’s Discord channels and be part of the community!

Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

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

CircuitPython – The easiest way to program microcontrollers –

Maker Business — Challenges in trade between China and U.S. highlighted by forced labor bill

Wearables — There are some limits to conductive thread

Electronics — = != ==.

Python for Microcontrollers — Python on Microcontrollers Newsletter: Retrofitting old computers, Pinguin and much more! #CircuitPython @micropython @ThePSF @Raspberry_Pi

Adafruit IoT Monthly — CO2 Canary In a Coalmine, AQI Funnies, and more!

Microsoft MakeCode — MakeCode Thank You!

EYE on NPI — Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey

New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — NEW PRODUCT – Adafruit ENS160 MOX Gas Sensor – Sciosense CCS811 Upgrade – STEMMA QT / Qwiic

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at !

No Comments

No comments yet.

Sorry, the comment form is closed at this time.