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,505 subscribers worldwide.
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! This week the focus is Raspberry Pi (with recent updates to MicroPython and CircuitPython, they’re a bit more quiet at the moment). And an article on hacking MicroPython frozen modules. And of course projects and informative articles to pique your interest. And thank you to all the new subscribers last week, welcome! – 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:
Raspberry Pi Compute Module 5 Spotted
The highly anticipated Raspberry Pi Compute Module 5 has been spotted publicly at Electronica 2024 attached to the Compute Module 5 IO Board – Mastodon and Hackster.io. Via X.
Reverse Engineering MicroPython Frozen Modules
Wesley McGrew at DEF CON 32 gave a talk on reverse engineering MicroPython frozen modules – YouTube and Article.
Microsoft Provides Unrestricted Downloads of Windows 11 for Arm Computers
You can now download Windows Arm ISOs, as you can do for x64 PC versions – Microsoft, XDA and Jeff Geerling.
“Up until now, one of the ways to download Windows on Arm ISOs was by becoming a Windows Insider. Since the ISOs were available only as VHDX files, you could only use them on virtual disks for virtual machines like Hyper-V, but not on physical Arm hardware. If you’re an enthusiast or a hobbyist, you can now easily find the Arm64 ISO and install it on devices like Raspberry Pi and other single-board computers.”
Note: See Jeff Geerling’s posts on GitHub trying to get it to work on an Arm PC. Likely someone will make a guide soon on doing an install for Raspberry Pi that is simple and doesn’t require TPM issues, etc.
NeoPixel Control on the Raspberry Pi 5 Inches Closer with a New Python Library
Embedded software developer Philip Howard has announced a beta release of a Python library for handling WS281x “NeoPixel” addressable RGB LEDs on a Raspberry Pi — delivering support for the Raspberry Pi 5 and its newly-driven general-purpose input/output (GPIO) pins – hackster.io and GitHub. Via Mastodon.
Why Raspberry Pi for an SBC Guy
Why would one pick a Raspberry Pi vs. other single board computers (SBC)? Jeff Geerling provides his reasoning – Jeff Geerling.
Raspberry Pi AI Kit Projects
The versatility of the Raspberry Pi platform, combined with AI capabilities, opens up a world of new possibilities for innovative smart projects. Check out some highlighted projects by Raspberry Pi and The MagPi Magazine – Raspberry Pi.
Overclocking a Raspberry Pi 5 to 3.6 Gigahertz
Pieter on Skatterbencher is a frequent overclocker and he’s taken on boosting the new Raspberry Pi 5 to unheard of clock speeds. Various methods were used to be able to increase the frequency the Pi would run at – Skatterbencher and Adafruit Blog.
A Technical Comparison of the RP2350 and RP2040 Chips
SparkFun provides a technical comparison of the RP2350 and RP2040 microcontrollers – SparkFun.
Raspberry Pi Connect Receives Improvements
The latest release of Raspberry Pi OS includes an all-new, native panel plug-in for Raspberry Pi Connect, the secure remote access solution allowing you to connect to a Raspberry Pi desktop and command line directly from a web browser. They have been improving support and performance on as many Raspberry Pi devices as possible — from Raspberry Pi Zero to Raspberry Pi 5 — both when using Raspberry Pi OS with desktop and the Lite version – Raspberry Pi News.
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.
Community streams will return next week.
Project of the Week: Making a Trading Gameboy
Tancrede Collard makes a handheld Gameboy-style market/trading game using a Raspberry Pi Pico, display and MicroPython – QuestDB and Adafruit Blog.
Popular Last Week
What was the most popular, most clicked link, in last week’s newsletter? 5 tips for building a home server with an SBC.
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.
Adding WiFi the Easy Way – Adafruit Playground.
I turned the Raspberry Pi 400 into a Fallout-style terminal! – Adafruit Playground.
ESPTOOL-JS with Partition Table listing + Data saving – Easily backup your device before installing CircuitPython/whatever – Adafruit Playground.
Tiny Terminal with a Magnetic Connector – Adafruit Playground.
News From Around the Web
Here’s how you can program your Arduino board using a Raspberry Pi SBC – XDA.
Check out the Make: 2025 Board Guide and much more in the latest issue of Make: Magazine. Especially if you’re looking to choose your next microcontroller for a project – Adafruit Blog.
Kevin McAleer makes a second arcade cabinet, this one with two extra buttons, for use with a Raspberry Pi by using a Pico programmed in CircuitPython – X.
A MacroPAD with Raspberry Pi Pico and CircuitPython – YouTube. Via X.
Scott is porting his electronic eyes project, using 8×8 LED matrices, over to a Raspberry Pi Pico running CircuitPython – X.
Maze generation on an X68000 using MicroPython – GitHub. Via X (Japanese).
Making a robot with Adafruit Feather and CircuitPython – X.
SunChaser – a MicroPython-powered solar tracker – hackster.io.
The Wio E5 with MicroPython – hackster.io.
A custom Raspberry Pi voice assistant is built around ChatGPT and Python – Digital Garden and GitHub. Via Tom’s Hardware.
Creating perfectly looping animations with Python – Instructables and Adafruit Blog.
Powering a Raspberry Pi Pico W with an MB102 Power Supply and MicroPython – hackster.io.
How does the Raspberry Pi file system work? – Raspberry Tips (French).
Beginner Coding in Python: Building the simplest AI chat companion possible – How-To Geek.
New
Waveshare ESP32-P4-NANO board offers Ethernet, WiFi 6, Bluetooth 5, MIPI display and camera interfaces, GPIO headers – CNX Software.
The Pimoroni Clipper HAT Mini enables a Raspberry Pi computer to receive and transmit data over 4G LTE cellular networks – Pimoroni. Via X.
Graperain G3562 is a Rockchip RK3562 system-on-module and development board with a quad-core Cortex-A53 system-on-module (SoM), up to 8GB LPDDR4, and up to 128GB eMMC flash. It is suitable for Edge AI, IoT, automation, and consumer electronic applications – CNX Software.
New Boards Supported by CircuitPython
The number of supported microcontrollers and Single Board Computers (SBC) grows nearly every week. This section outlines which boards have been included in CircuitPython or added to CircuitPython.org.
This week there were no 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:
- 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
New Learn Guides
The Adafruit Learning System has over 3,000 free guides for learning skills and building projects including using Python.
NFC Raspberry Pi Media Player from Liz Clark
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!
New Libraries
Here’s this week’s new CircuitPython libraries:
Updated Libraries
Here’s this week’s updated CircuitPython libraries:
- adafruit/Adafruit_CircuitPython_CLUE
- adafruit/Adafruit_CircuitPython_Display_Text
- adafruit/Adafruit_CircuitPython_ImageLoad
- adafruit/Adafruit_CircuitPython_BH1750
What’s the CircuitPython team up to this week?
What is the team up to this week? Let’s check in:
Dan
I am continuing to work on getting CircuitMatter’s cryptography code running on CircuitPython.
Tim
I added how to install links for 70 more boards listed on circuitpython.org, all of the publicly available Adafruit boards have them now as well as a few of the high profile 3rd party ones that also have a Learn guide like the Raspberry Pi Pico and Picow. I’ve also been working through any open issues that are within my means in the library repos, this week brought fixes in a few driver libraries and some documentation improvements to some others.
I made a few tweaks in Adabot to adjust the stats that appear in the reports used during the Monday meetings. During the Deep Dive stream on Friday, I worked on a new TextBox
widget for the DisplayText
library that allows you to set a width and height when it’s created and will automatically wrap the text to contain it within the given size. Having the width constrained also allows it to support center and right alignment which the other Label classes cannot do.
Jeff
Again a lot of my work has been focused on floppy emulation in the Arduino environment. As far as CircuitPython is concerned, I continued to work on enhanced “biquad” audio filters with the addition of shelf and eq type filters. These would immediately be useful with the recently added audiofilter
module to create “graphic equalizer”-like processing of audio.
Liz
I’ve been working on a CircuitPython video synth with the Feather RP2350 and HSTX to DVI output. I am using a PDM mic as an audio input and am doing some FFT math to create some spectrum analyzer style animations. There is also a 1×4 seesaw rotary encoder breakout for extra control.
Upcoming Events
PyCon AU will be held from the 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 and Schedule.
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.0. New to CircuitPython? Start with our Welcome to CircuitPython Guide.
20241113 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.14.0a1.
4,108 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,454 Thanks
The Adafruit Discord community, where we do all our CircuitPython development in the open, reached over 38,454 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.