View this email in your browser. Warning: Flashing Imagery
Welcome to the latest Python on Microcontrollers newsletter! Spring is in the air and the Python on hardware community is heating up. CircuitPython development is in full swing with a nice new release this past week. With that release, there are 600 boards that run CircuitPython with 14 new boards added. Raspberry Pi continues rolling out their chips and support. So many projects and more to round out the week. I hope you enjoy browsing this issue. – Anne Barela, Editor
We’re on Discord, Twitter/X, BlueSky and for past newsletters – view them all here. If you’re reading this on the web, subscribe here. Here’s the news this week:
CircuitPython 9.2.5 Released

CircuitPython 9.2.5 is the latest bugfix revision of CircuitPython, and is a new stable release – Adafruit Blog and release notes – GitHub.
Highlights of this release
- Update frozen modules.
- Enable function attributes and reverse arithmetic operators on most boards.
displayio
:
- Add
tilepalettemapper
.
- add VT100 escape code support for scrolling and colors.
synthio
and audiodelays
additions
- Add
audioio
on Espressif.
- Add
spitarget
on SAMx (enabled on most SAMx5x boards).
- Initial work on a Zephyr port.
- Bug fixes.
Expansion of RP2350 Availability

Eben Upton has announced more widespread availability of their latest RP2350 microcontroller, through authorized resellers. Also the RP2354A and RP2354B variants are in the final stages of development and testing with early-access partners, to be widely available later in the year – Raspberry Pi News and CNX Software.
600 CircuitPython Compatible Boards

There are now 600 microcontroller boards that support CircuitPython! The number includes boards from many manufacturers. And in 21 languages for each board for localization – Adafruit Blog.
The Value of Open Source Software

A 2024 paper noting the value of open source software. “We estimate the supply-side value of widely-used OSS is $4.15 billion, but that the demand-side value is much larger at $8.8 trillion” – Harvard Business School. Via X.
CircuitPython Pitch Shift Microphone Demonstration

ReLiC (Cooper Dalrymple) demonstrates the new pitch shift microphone capability in CircuitPython 9.2.5 using a Pimoroni Pico Plus 2, PCM5102 I2S DAC, and ICS-43434 I2S MEMS microphone – YouTube and code – GitHub.

The new Raspberry Pi rpi-image-gen tool leverages the power, reliability, and trust of installing a Debian Linux system for Raspberry Pi devices. It introduces new concepts which serve to dictate the build footprint and installation, customized to a user’s needs – Raspberry Pi News.
Git 2.49 Released

Git 2.49 is here and filled with new features like faster packing, backfilling blobs in partial clones, and much more – GitHub Blog. Via BlueSky.
Fruit Jam Logo in CircuitPython

Adafruit continues to write software for their upcoming Fruit Jam RP2350-based single board computer for emulation and games. Tim is working on a splash screen animation using CircuitPython. “It uses displayio TileGrids
. Fly-on, overshoot, rebound, and bounce all looking pretty nice. Next up is handling transparency, the secondary bounce on the top row, and the friendly apple (logo) on the left, plus tweaking the timings” – BlueSky.
This Week’s Python Streams

Python on Hardware is all about building a cooperative ecosphere which allows contributions to be valued and to grow knowledge. Below are the streams within the last week focusing on the community.
CircuitPython Deep Dive Stream

Last Friday, Tim streamed work on a Fruit Jam Animation & Launcher Menu.
You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.
CircuitPython Parsec

John Park’s CircuitPython Parsec this week is on Unicode Blocks – Adafruit Blog and YouTube.
Catch all the episodes in the YouTube playlist.
The CircuitPython Show

In the latest episode released March 24th, Liz Clark and Noe Ruiz join the show and share how they collaborate on projects and share some of their favorite collabs – The CircuitPython Show
CircuitPython Weekly Meeting
CircuitPython Weekly Meeting for March 17th, 2025 (notes) on YouTube.
Project of the Week: An E-ink Weather Dashboard with a Raspberry Pi

An e-ink weather dashboard with a Raspberry Pi and Python on Pimoroni’s Inky Impression display. This low-power weather dashboard displays real-time data from OpenWeatherMap and comes with a web UI to customize and schedule automatic updates – YouTube and GitHub.
Popular Last Week

What was the most popular, most clicked link, in last week’s newsletter? Texas Instruments Releases the World’s Smallest Microcontroller.
Did you know you can read past issues of this newsletter in the Adafruit Daily Archive? Check it out.
New Notes from Adafruit Playground
Adafruit Playground is a new place for the community to post their projects and other making tips/tricks/techniques. Ad-free, it’s an easy way to publish your work in a safe space for free.

Universal BLE Remote with Keyboard FeatherWing – Adafruit Playground.

The Highway 12 Band SFX Machine – Adafruit Playground.
News From Around the Web

CubEd is a 3D printable fluorescence cube microscope optimized for classroom and teaching use. The stage is controlled by a gamepad, using code written in CircuitPython 9.x – Paper.

Capturing sensor data on a Raspberry Pi Pico W with MicroPython and store it in an open source SQL database. A video from Simon Prickett’s recent talk at the MicroPython meetup – YouTube. Via BlueSky.

Carlos Escobar brings MicroPython to the MSX family by swapping the Z80 for a Raspberry Pi Pico – hackster.io.

A demonstration of bouncing balls on an LCD screen with a Raspberry Pi Zero running CircuitPython bare metal (without Linux) – YouTube. Via X.

A simple RP2040 design – X.

Lopaka: a web-based editor for coding small screens – Adafruit Blog and Website.

Mutex Instruments is working on a menu system with an Adafruit 1.14” 240×135 Color TFT Breakout LCD Display. This one will go on a sequencer module. It’s made with CircuitPython – X.

Using a Raspberry Pi and Python to control a servo for a robot – X.

A Raspberry Pi Pico smart clock programmed in MicroPython – Tom’s Hardware and YouTube.

Raspberry Pi and ChatGPT bring AI conversations to a retro rotary phone – Tom’s Hardware and Hackster.io.

Playing musical notes on a Raspberry Pi Pico with PWM audio (CircuitPython School) – YouTube. Via BlueSky.

Playing musical notes Using Python Dictionaries (CircuitPython School) – YouTube.

Use a Raspberry Pi Pico & potentiometer to turn on NeoPixel lights (CircuitPython School) – YouTube.

渡来🐦夢吉 posts “I wrote CircuitPython on a knockoff RP2040zero (a Raspberry Pi Pico imitation) board (left) that I bought on impulse to make an LED blink. It was so much fun that I wrote CircuitPython on a board with an ESP32 that I had bought a long time ago and had left lying around, and tried making an LED blink. CircuitPython seems more versatile than Arduino and is a good choice.” – X (Japanese).

Prototyping a RP2040-based keyboard with CircuitPython and KMK firmware – X. (Czech)

Pi Tin retro gaming handheld is minty fresh thanks to a Raspberry Pi Zero 2 W and Python – Tom’s Hardware.

Touch lamp with touch control on ESP32 and MicroPython – hackster.io.
New

SparkFun, in their latest newsletter, introduced two new Arduino Uno-shaped development boards specifically targeted to run MicroPython & Python. One has a Raspberry Pi RP2350 processor, the other an ESP32. They have also written a number of drivers for their hardware to be MicroPython compatible – Adafruit Blog and SparkFun Newsletter.
New Boards Supported by CircuitPython
The number of supported microcontrollers and Single Board Computers (SBC) grows every week. This section outlines which boards have been included in CircuitPython or added to CircuitPython.org.
This week there were fourteen new boards added!
Note: For non-Adafruit boards, please use the support forums of the board manufacturer for assistance, as Adafruit does not have the hardware to assist in troubleshooting.
Looking to add a new board to CircuitPython? It’s highly encouraged! Adafruit has four guides to help you do so:
New Learn Guides

The Adafruit Learning System has over 3,000 free guides for learning skills and building projects including using Python.
Snake Game on Metro RP2350 from Tim C
IOT Moon Phase Guide from Ruiz Brothers
Updated Learn Guides
Adafruit BrainCraft HAT – Easy Machine Learning for Raspberry Pi
CircuitPython Libraries

The CircuitPython library numbers are continually increasing, while existing ones continue to be updated. Here we provide library numbers and updates!
To get the latest Adafruit libraries, download the Adafruit CircuitPython Library Bundle. To get the latest community contributed libraries, download the CircuitPython Community Bundle.
If you’d like to contribute to the CircuitPython project on the Python side of things, the libraries are a great place to start. Check out the CircuitPython.org Contributing page. If you’re interested in reviewing, check out Open Pull Requests. If you’d like to contribute code or documentation, check out Open Issues. We have a guide on contributing to CircuitPython with Git and GitHub, and you can find us in the #help-with-circuitpython and #circuitpython-dev channels on the Adafruit Discord.
You can check out this list of all the Adafruit CircuitPython libraries and drivers available.
The current number of CircuitPython libraries is 512!
New Libraries
Here’s this week’s new CircuitPython libraries:
Updated Libraries
Here’s this week’s updated CircuitPython libraries:
What’s the CircuitPython team up to this week?
What is the team up to this week? Let’s check in:
Dan
Last week I released CircuitPython 9.2.5, which had about 75 pull requests.
Thach and I are mostly finished with the upgrade of NINA-FW to ESP-IDF v5.3.2. NINA-FW used on AirLift co-processors. It will need a little more testing before general release. We modernized the code, removed unneeded code, and replaced bespoke WiFi standard with Arduino-ESP32 libraries. It should have fewer issues with RAM space than the previous version.
Tim
This week I’ve been working on code and guide pages for a memory game that uses HSTX and USB Host mouse on the Metro RP2350. I’ve also done reviewed and tested the latest changes to piomatter
, and submitted a quick fix to an issue causing the serpentine arguments to be ignored in the CLI examples. I am also just beginning to work on some animation effects in displayio
for a Fruit Jam logo visual animation.
Jeff
Once again my time with Python was small. Tim discovered that some changes I had made in piomatter
didn’t work in all kernels, so I undid that change and also filed an issue about it with Raspberry Pi. They quickly returned with a fix that will be included in future kernels (yay!).
Scott
This week I’ve been exploring vibe coding using Claude Code to modify code at my direction. I’m working on adding native font loading from the CIRCUITPY drive for the terminal. This allows us to support emoji and languages with many more characters than what we want to fit into the image itself. It was able to generate a new lvfontio
module for me after I gave it the Bitmap Font Python library and the existing fontio
module as context. Vibe coding is very interesting! It gets the typing code part of coding out of the way.
Liz
This week I worked on a guide for the new TPS65131 Split Power Supply Boost Converter in the shop. This is a split power supply with one positive and one negative voltage rail. In the guide I demonstrated how to measure both the positive and negative outputs. I’m planning to do a project with it where I supply 5V from USB and power a Eurorack module, which needs +12V and -12V for its power supply.
I also wrote code for the Moon Phase Clock. This required finding a new API to get moon phase data. I found the FarmSense API that supplies agricultural information and is free to use. This lets you retrieve the current moon phase as a string after supplying the Unix timestamp, which we can obtain easily with Adafruit IO.
Upcoming Events

The next MicroPython Meetup in Melbourne will be on March 26th – Meetup. You can see recordings of previous meetings on YouTube.

City of STEM and Maker Faire Los Angeles, California is being held April 12, 2025 – MakerFaire.

The community is coming back to Pittsburgh, Pennsylvania for PyCon US 2025 May 14 – May 22, 2025 – us.pycon.org.

KiCad conferences (KiCon) to be held this year include 28 – 30 May 2025 in San Diego, California, 19 – 20 Sept 2024 in Bochum, Germany, and to be determined in Asia – KiCad.

Open Hardware Summit 2025 is being held May 30 @ 10am – May 31 @ 6pm GMT+1 in Edinburgh, Scotland – Eventbrite.

PyCon UK will be at CONTACT in Manchester from Friday 19th September to Monday 22nd September 2025 – PyCon UK 2025.
Send Your Events In
If you know of virtual events or upcoming events, please let us know via email to cpnews(at)adafruit(dot)com.
Latest Releases
CircuitPython’s stable release is 9.2.5. New to CircuitPython? Start with our Welcome to CircuitPython Guide.
20250319 is the latest Adafruit CircuitPython library bundle.
20250321 is the latest CircuitPython Community library bundle.
v1.24.1 is the latest MicroPython release. Documentation for it is here.
3.13.2 is the latest Python release. The latest pre-release version is 3.14.0a6.
4,229 Stars Like CircuitPython? Star it on GitHub!
Call for Help – Translating CircuitPython is now easier than ever

One important feature of CircuitPython is translated control and error messages. With the help of fellow open source project Weblate, we’re making it even easier to add or improve translations.
Sign in with an existing account such as GitHub, Google or Facebook and start contributing through a simple web interface. No forks or pull requests needed! As always, if you run into trouble join us on Discord, we’re here to help.
38,879 Thanks


The Adafruit Discord community, where we do all our CircuitPython development in the open, reached over 38,879 humans – thank you! Adafruit believes Discord offers a unique way for Python on hardware folks to connect. Join today at https://adafru.it/discord.
ICYMI – In case you missed it

Python on hardware is the Adafruit Python video-newsletter-podcast! The news comes from the Python community, Discord, Adafruit communities and more and is broadcast on ASK an ENGINEER Wednesdays. The complete Python on Hardware weekly videocast playlist is here. The video podcast is on iTunes, YouTube, Instagram), and XML.
The weekly community chat on Adafruit Discord server CircuitPython channel – Audio / Podcast edition – Audio from the Discord chat space for CircuitPython, meetings are usually Mondays at 2pm ET, this is the audio version on iTunes, Pocket Casts, Spotify, and XML feed.
Contribute
The CircuitPython Weekly Newsletter is a CircuitPython community-run newsletter emailed every Monday. The complete archives are here. It highlights the latest CircuitPython related news from around the web including Python and MicroPython developments. To contribute, edit next week’s draft on GitHub and submit a pull request with the changes. You may also tag your information on Twitter with #CircuitPython.
Join the Adafruit Discord or post to the forum if you have questions.