View this email in your browser. Warning: Flashing Imagery
Welcome to the latest Python on Microcontrollers newsletter! Happy belated Valentine’s Day. This week we start with comparing Python, MicroPython and CircuitPython and then compare the processing power of various Raspberry Pi single board computers over the years. And further in is an article on why you might want to use a Raspberry Pi Pico microcontroller instead of a full Pi. There are more events added that you’ll want to check out and so much more in this packed 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:
Python, MicroPython, and CircuitPython: Similarities and Differences

Don Wilcher writes about the similarities and differences in Python, MicroPython, and CircuitPython - DigiKey.

A look at what almost 13 years of development has done for the Raspberry Pi, from the original Pi launched in 2012 through to the Pi 5 which was released just over a year ago, The DIY Life puts them to the test to show you the speed in various tasks to help you decide which board may be right for your application - The DIY Life.
10 Years of Certifying Open Source Hardware

Michael Weinberg presented 10 Years of Certifying Open Source Hardware at FOSDEM 2025 - X and Video.
Gustavo Reynaga: Inspiring the Next Generation of Makers with MicroPython

If you’re a fan of open-source technology, Gustavo Salvador Reynaga Aguilar is a name to know. An experienced educator with a passion for technology, Reynaga has spent nearly three decades teaching and inspiring students at CECATI 132 in Mexico. He’s worked with platforms like Arduino, Raspberry Pi, and BeagleBone - Arduino Blog.
VSCode 1.97 Adds Copilot And Python Debugging

The latest update of Visual Studio Code is now available with free use of GitHub Copilot (2,000 code completions and 50 chat messages a month) and the ability to debug Python directly from the terminal - I Programmer.
7 Superpowers of a Raspberry Pi Pico That Beat the Regular Pi

The Raspberry Pi Pico might seem small and simple compared to the bigger Pi models, but it has some cool features that make it ideal for specific projects - XDA.
3 Essential Skills To Survive Embedded Career

The Captain Embedded blog posits to successfully work on Embedded Systems, one should have 3 main skills: EE, CS, plus a 3rd field - Captain Embedded.
An Open Source Password Manager

PasswordVault 2.x is an open source password manager, based on Raspberry Pi Pico 2 and a small display with buttons. It is implemented in CircuitPython - hackster.io and GitHub.
Can English Dethrone Python as Top Programming Language?

As generative AI reshapes software development, natural language commands are replacing traditional programming syntax, but experts question if English can ever match the precision of code - The New Stack.
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, Scott was Fruit Jammin’.
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 LED Matrix Characters - Adafruit Blog and YouTube.
Catch all the episodes in the YouTube playlist.
The CircuitPython Show

The latest CircuitPython Show begins a three part series on designing a PCB, building CircuitPython, and writing a CircuitPython library. First in the series is Designing a PCB to work with CircuitPython with Bradán Lane - The CircuitPython Show
CircuitPython Weekly Meeting
CircuitPython Weekly Meeting for February 10, 2025 (notes) on YouTube.
Project of the Week: A 3D Printed Traffic Signal

Glen Akins’ WiFi enabled bicycle traffic signal with a 2.1” 480x480 round TFT display and Qualia ESP32-S3 board running CircuitPython - X.
Popular Last Week

What was the most popular, most clicked link, in last week’s newsletter? MicroPython IDEs and Tools.
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.

Weather Display Using Open-Meteo’s API - Adafruit Playground.

Build a ‘MiniMarquee’ WiFi Text Scroller - Adafruit Playground.

Zephyr Quest: Feather RP2350 Board Def - Adafruit Playground.
News From Around the Web

vOS-CircuitPython-Shell is a lightweight and flexible virtual operating system (vOS) shell for CircuitPython under an MIT license - GitHub.

Simon Willison’s Weblog discusses the latest Python 3.14 alpha (3.14.0a5) - Simon Willison’s Weblog.
“Our initial benchmarks show a ~20-30% performance improvement across CPython.”

WebVM is an x86 Linux virtual machine that runs in a browser using WebAssembly. It runs an unmodified Debian distribution including many native development toolchains - Command Line, Graphical and GitHub (Apache 2.0 license). Via X.

Connecting to a Circuit Playground Bluefruit and changing the color of the NeoPixels from a custom SwiftUI app with a Circuit Playground Express running CircuitPython - X.

FlashMyPico website allows you to write C code, build the firmware, and flash it to your Raspberry Pi Pico, Pico W, Pico 2, or Pico 2 W directly from a web browser instead of having to check out the code from GitHub, build it in a terminal, and then manually copy the resulting binary - FlashMyPico and CNX Software.

Broadcasting a Raspberry Pi Pico 2 W IP address via UDP using CiricuitPython sockets - X.

A Raspberry Pi 4-based robot using Python - GitHub.

A Raspberry Pi AI pizza clock tells the time one slice at a time - Tom’s Hardware.

Celebrating 20 Years of Make: magazine - Zoom Launch Party.

Converting RGB888 color values to RGB565 in MicroPython - X.

A Futaba VFD Micropython UART driver for the Raspberry Pi Pico - GitHub.

Control your Raspberry Pi from Android (SSH, VNC, etc.) - RaspberryTips (French).

How To change the default Python version on Raspberry Pi - RaspberryTips.

Chris Burton has made a CircuitPython library to upload and optionally execute firmware to a flashless RP235x (RP2350/RP2350A/RP2350B) IC using UART boot - Mastodon and GitHub.

A randomized love quote display based on Xiao ESP32-C3 and MicroPython - hackster.io.

FLAC 1.5 is now out as the newest feature update to the software built around the Free Lossless Audio Codec - Phoronix.

How to build a WebSocket control panel with Raspberry Pi Pico W and MicroPython - hackster.io.
New

CPico RP2350 is another Raspberry Pi Pico 2 alternative with USB-C, 8MB flash, 2MB PSRAM, BConnect I2C & debug ports - CNX Software.

Solder Party, maker of CircuitPython and MicroPython compatible hardware, was at FOSDEM earlier this month and showed off new products. These included some keyboard-based products that look like an update to their popular Keyboard FeatherWing - X.
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 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:
New Learn Guides

The Adafruit Learning System has over 3,000 free guides for learning skills and building projects including using Python.
Espresso Water Tank Meter from John Park
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:
What’s the CircuitPython team up to this week?
What is the team up to this week? Let’s check in:
Dan
With the help of testers from the community, I made a version of NINA-FW that includes updates from the upstream Arduino version. It now works with ECDSA certificates chains, which was a long-standing issue. A little more testing is in progress with version 2.0.0-rc.0+adafruit. Assuming that works out I will release 2.0.0+adafruit soon. The “+adafruit” suffix is to distinguish it from the Arduino version.
Tim
This week I worked on updating the Raspberry Pi 5 RGB Matrix examples to make use of the latest API, and wrote a new guide page that details the possible configuration options that it provides. I also finished working on a guide that features the new round displays showing an analog clock with graphics and jingles inspired by an iconic old public domain cartoon.
Jeff
In CircuitPython, I’ve been working on some quality-of-life improvements for the Raspberry Pi RP2350 microcontroller.
First up, I noticed that a display connected to my Feather RP2350 would blank when I was writing to the CIRCUITPY drive. With help from Scott & eightycc, I found a solution that involved giving the display code an elevated interrupt priority so it could run during this time, and the glitches are solved. This pull request was recently merged and is in the absolute latest releases.
Second, I’ve added code on select RP2350 boards (Metro RP2350 and Feather RP2350) to detect an attached display via the presence of the “EDID” chip in the monitor. If the monitor is there, the display will be configured, by default to 320x240 with 16 bits per pixel. In the same pull request, I changed how board.DISPLAY
works: Now all boards with displayio will have a board.DISPLAY
property which always reflects a configured display, and which is None
if there’s no configured display. This also makes it easier for a display configured in boot.py
or in a previous run of code.py
to be used the next time without the need to reconfigure it. As I write this, the pull request is waiting for approval. In the future, the monitor auto-detection might be applied to other boards.
I also did some behind-the-scenes changes, saving some space in the flash chips by removing redundant routines in the CircuitPython source without affecting any functionality (hopefully). One pull request has been merged, and another is pending.
Scott
This week I was continuing on Zephyr WiFi work. I managed to connect to my WiFi and get an IP address. Next work is to get socket stuff going. However, I got my Fruit Jam board and I’m working on board bring up. I added support for 720x400 video output for better widescreen support. Now I’m debugging USB Host support.
Liz
This week I worked on the 240x240 Round Display guide. This display uses the GC9A01A driver. I had to add support for this driver to the RGB Display library to have it work with Blinka. This support has been merged in so it is ready for folks to use. There are examples in the guide for CircuitPython, Python and Arduino.
Upcoming Events

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

Embedded World 2025 will be held March 11 to 13, 2025 in Nuremberg, Germany. Raspberry Pi will be there - Embedded World.

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

Open Hardware Summit 2025 is being held May 30 · 10am - May 31 · 6pm GMT+1 in Edinburgh, Scotland - Eventbrite.
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.4. New to CircuitPython? Start with our Welcome to CircuitPython Guide.
20250214 is the latest Adafruit CircuitPython library bundle.
20250130 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.0a5.
4,197 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,765 Thanks


The Adafruit Discord community, where we do all our CircuitPython development in the open, reached over 38,765 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.