If you missed this week’s Python on Microcontrollers Newsletter, here is the ICYMI (in case you missed it) version.
To never miss another issue, subscribe now! – You’ll get one terrific newsletter each Monday (which is out before this post). 11,644 subscribers worldwide (a 139 subscriber jump, thank you!).
The next newsletter goes out in a week and subscribing is the best way to keep up with all things Python for hardware. No spam, no selling lists, leave any time.
Welcome to the latest Python on Microcontrollers newsletter! Thanks to everyone for reading last week’s Pi-centric issue. This issue pivots back to a mix of community news with a new version of CircuitPython and work on new MicroPython versions. There is also a lot happening with standard Python at the moment, including PyCon US 2025 next year. Wishing US folks a Happy Thanksgiving this week. – Anne Barela, Editor
We’re on Discord, Twitter, 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.1 Released
CircuitPython 9.2.1 is the latest bugfix revision of CircuitPython and is a new stable release – Adafruit Blog and Release Notes.
Highlights of this release
- Additional
synthio
andaudiofilters
functionality. I2CTarget
andkeys.*.reset()
fixes.- RP2350: PSRAM and
cpu.temperature
fixes. rp2pio
: add background read operation.- Five new boards.
Introduction to DMA
Elecia White provides insights into how DMA works and why it’s used to make systems faster – embedded.fm.
Does Your Raspberry Pi 5 Need an NVMe Drive?
The Raspberry Pi 5 has excellent features, including PCIe support, which allows you to hook up a speedy NVMe storage drive for the first time. What does this mean? NVMes are fast, so you can bring great speed and reliability to your Pi 5. If you’re tired of SD card storage limitations on your Pi 5, this article dives into when it’s worth investing in an NVMe drive – How-To Geek.
Using Python with Virtual Environments
Raspberry Pi OS comes with Python 3 pre-installed. Changing the system Python installation can cause problems for the operating system. When you install third-party Python libraries, you can refer to this handy guide to use the correct package-management tools – Raspberry Pi News.
Is Python Really That Slow?
Miguel Grinberg has running some benchmarks to form a better mental image of Python’s often criticized performance – miguelgrinberg.
And the #1 CPython IDE (for big Python) is . . .
What’s the best IDE for Python? Here’s how InfoWorld rates IDLE, Komodo, PyCharm, PyDev, Microsoft’s Python and Python Tools extensions for Visual Studio Code, and Spyder – InfoWorld.
5 Obscure Raspberry Pi Operating Systems That Deserve More Love
One of the biggest advantages of the Raspberry Pi boards lies in the fact that you can use inexpensive microSD cards to switch between different operating systems at will. Combine that with the massive number of Raspberry Pi distros, and you can easily convert your tiny SBC into your distro-hopping companion – XDA.
New Release: The Official Raspberry Pi Camera Guide, 2nd Edition
Add the power of HDR photography, Full HD video, and AI image recognition to your Raspberry Pi projects with Camera Modules.
This book is your step-by-step guide to adding a Camera Module to your Raspberry Pi board. You’ll master still images, capture video clips as digital files, and control the camera with shell commands and Python code – Raspberry Pi Press.
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 refactoring GitHub API requests in Adabot.
The Friday before, Tim streamed on Refactor & Cleanup TextBox.
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 Touchscreen Triangles – Adafruit Blog and YouTube.
Catch all the episodes in the YouTube playlist.
CircuitPython Weekly Meeting
CircuitPython Weekly Meeting for November 18th (notes) on YouTube.
Project of the Week – A TVA TemPad Prop Build
Matt Gray makes a Marvel TVA TemPad prop from Loki using an RP2040 board and Adafruit display, programmed in CircuitPython – Adafruit Blog and The MagPi.
Popular Last Week
What was the most popular, most clicked link, in last week’s newsletter? Raspberry Pi CM5 spotted in the wild at electronica24.
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.
Wii Nunchuck USB Adapter – Adafruit Playground.
Do You Want to Make a Starship? – Adafruit Playground.
News From Around the Web
PyCon US 2025 is being held from May 14 – May 22, 2025 this year. The organizers are seeking proposals for talks and more. There are some new rules on proposal submission this year – Proposals.
Python 3.14.0 alpha 2 released – Python Insider Blog.
Pibo: the bipedal robot based on Raspberry Pi and programmable in Python & more – The MagPi.
Work on MicroPython v1.24.1 and v1.25.0 is in progress – GitHub.
Bjorn is a Raspberry Pi-powered Tamagotchi-like network pen-testing tool using Raspberry Pi Zero W and Python – GitHub. Via Tom’s Hardware.
LLMs accelerated with eGPU on a Raspberry Pi 5 – Jeff Geerling.
Threading in Python: how to get the return value from a thread – Medium.
Use a transparent OLED display with Raspberry Pi and Python – Sozorablog (Japanese). Via X.
5 Raspberry Pi projects you can wear – XDA.
Barcode beast for music scans Compact Disk barcodes using a Raspberry Pi and Python – Rev Space blog.
A neckwatch using MicroPython – YouTube, hackster.io, and hackaday.io. Via X.
Mike Bell is looking to get MicroPython running on a Tiny Tapeout RISC-V processor – Mastodon and GitHub.
An AQI monitor PM2.5 v2.0 with a webserver using an RP2040 and CircuitPython – YouTube.
Raspberry Pi Pico 2: RP2350, MicroPython and RISC-V – jhalfmoon (Japanese).
Building an automated fault detection system for production lines using Raspberry Pi, Python and machine learning – Instructables.
Thomas E. Kurtz, a creator of BASIC computer language, dies at 96 – New York Times.
PyBonsai: generate procedural ASCII art trees in the terminal – GitHub. Via X.
Can you tell free Python art from multi-million dollar pieces? – Towards Data Science.
How I turned my Raspberry Pi into a private Internet Archive – meketecheasier.
New
LG Display’s stretchable screen is now even stretchier. The latest prototype of the company’s resilient screen can stretch from 12 to 18 inches, perfect for wearables – The Verge.
According to LG Display, it “can be repeatedly stretched over 10,000 times, maintaining clear image quality even in extreme environments such as exposure to low or high temperatures and external shocks.”
The Banana Pi BPI-CanMV-K230D-Zero is like a RISC-V powered Raspberry Pi Zero – Liliputing.
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 was one new board 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:
- How to Add a New Board to CircuitPython
- How to add a New Board to the circuitpython.org website
- Adding a Single Board Computer to PlatformDetect for Blinka
- Adding a Single Board Computer to Blinka
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 506!
Updated Libraries
Here’s this week’s updated CircuitPython libraries:
- adafruit/Adafruit_CircuitPython_DisplayIO_Layout
- adafruit/Adafruit_CircuitPython_EMC2101
- adafruit/Adafruit_CircuitPython_Display_Text
- adafruit/Adafruit_CircuitPython_Fingerprint
What’s the CircuitPython team up to this week?
What is the team up to this week? Let’s check in:
Dan
I released CircuitPython 9.2.1 which has bug fixes, some new audio features, and adds several new boards.
I’m continuing to work on cryptography to get CircuitMatter to run on CircuitPython.
Tim
I am continuing to work on issues across the CircuitPython libraries and resolved a handful more this week. One that I’m particularly stoked about is a new FilledPolygon
for the Display_Shapes
, as well as support for setting the outline stroke size for both it and the pre-existing Polygon
classes.
I also added some logic to the circuitpython.org search function to give higher precedent to devices with tags that match search terms exactly. This resolves an issue that caused the Pico 2 device to be somewhat far down the page if you searched “Pico 2”. Today I’ve started on a new project to fetch posts from Bluesky and show them on a display.
Jeff
This past week, I added a board definition for the upcoming Raspberry Pi Pico 2 W with the RP2350 MCU and a WiFi coprocessor.
Liz
This week I worked on documenting the Feather RP2350 Video Synth. This project runs CircuitPython code that takes audio input with a PDM mic for FFT that affect the three animations that are output via HSTX to DVI from the Feather. Initially I was hoping to use the quad seesaw rotary encoder board for controlling the animations, but they were not as responsive as I wanted them to be. Instead, I brought in three analog potentiometers for control and a single seesaw rotary encoder to change modes. This project will be documented soon on the Learn System.
Upcoming Events
PyCon AU is now on, from 22nd to the 26th of November, at the Melbourne Convention and Exhibition Centre (MCEC) in Narrm/Melbourne. Matt Trentini and Damien George will both be presenting on MicroPython – PyCon AU.
The next MicroPython Meetup in Melbourne will be on November 27th – Meetup. You can see recordings of previous meetings on YouTube. September’s meeting notes are here.
PyLadies Conference (PyLadiesCon) is a transformative event designed to promote diversity, learning, and empowerment within the Python community. December 6-8, 2024 online – PyLadies.
The community is coming back to Pittsburgh, Pennsylvania for PyCon US 2025 May 14 – May 22, 2025 – us.pycon.org.
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.1. New to CircuitPython? Start with our Welcome to CircuitPython Guide.
20241121 is the latest Adafruit CircuitPython library bundle.
20241110 is the latest CircuitPython Community library bundle.
v1.24.0 is the latest MicroPython release. Documentation for it is here.
3.13.0 is the latest Python release. The latest pre-release version is 3.13.0a2.
4,117 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,485 Thanks
The Adafruit Discord community, where we do all our CircuitPython development in the open, reached over 38,485 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.