CircuitPython – Adafruit Industries – Makers, hackers, artists, designers and engineers! https://blog.adafruit.com electronics, open source hardware, hacking and more... Wed, 20 May 2026 20:14:18 +0000 en-US hourly 1 https://wordpress.org/?v=6.9.4 https://cdn-blog.adafruit.com/uploads/2020/04/logo_small@2x.png CircuitPython – Adafruit Industries – Makers, hackers, artists, designers and engineers! https://blog.adafruit.com 32 32 42816698 The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/05/20/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-20-2/ https://blog.adafruit.com/2026/05/20/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-20-2/#respond Wed, 20 May 2026 20:14:02 +0000 https://blog.adafruit.com/?p=657699

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
https://blog.adafruit.com/2026/05/20/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-20-2/feed/ 0 657699
ribbon_logic (2026) – a tiny poetry generator https://blog.adafruit.com/2026/05/20/ribbon_logic-2026-a-tiny-poetry-generator/ Wed, 20 May 2026 18:07:40 +0000 https://blog.adafruit.com/?p=657651

Yafira, electrocutelab on Instagram, has created ribbon_logic (2026):

“apparently i can’t stop making things about computers. my thesis is a computer. now this is a little computer that writes poems about computers. at some point i stopped questioning it lol ✿.

a tiny poetry generator that lives on a 2.1” round screen. one button, one LiPo battery, infinite soft poems about soft machines. built with CircuitPython on an Adafruit Qualia, running a markov chain trained on my own freewriting and seeded with words from our class’s hand-tagged semantic corpus.

it refuses cold, sharp, and academic words at the point of generation. the form and the content say the same thing. the text gives the computer a different personality, less command line, more daydream. the glitch is intentional. the screen stutters, the text flickers, the poem arrives in pieces. small machines should be allowed to be imperfect.”

See more on Instagram.

]]>
657651
ICYMI Python on Microcontrollers Newsletter: Open Source Components for KiCad, Pi PIO Simulator, New CircuitPython and More! https://blog.adafruit.com/2026/05/19/icymi-python-on-microcontrollers-newsletter-open-source-components-for-kicad-pi-pio-simulator-new-circuitpython-and-more/ Tue, 19 May 2026 11:00:48 +0000 https://blog.adafruit.com/?p=657441

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 a terrific newsletter each Monday (which is out before this post). 12,368 subscribers worldwide!

The next newsletter goes out Monday morning and subscribing is the best way to keep up with all things Python for hardware. No ads or spam, no selling lists, leave any time.


From the Editor:

Welcome to the latest Python on Microcontrollers newsletter! What a week to report on. KiCad 10 finally brings industrial circuit board design to everyone for free. And CERN gives it a boost with 17,000 component symbols and footprints (a tedious job to do oneself). And if you use JLCPCB, you can get their components added to KiCad with a free website. Python is being accepted as the one language that AI does best on. Likely because there are so many good, open projects to train on.

A really neat Pi PIO simulator is perfect for debugging purposes. And CircuitPython has two new releases to smooth out some issues. There is just so much in this issue, so please look through and see what relates to your busy life. Until next week – Anne Barela, Editor

P.S. Just a note that I try my best to remove tracking cruft on web links. No one wants to be tracked.

We’re on Discord, Twitter/X, BlueSky and for past newsletters – view them all here. If you’re reading this on the web, please subscribe here. Here’s the news this week:

CERN’s Open Source KiCad Library Gives the World 17,000 Circuit Board Components

CERN’s open source KiCad library gives the world 17,000 circuit board components

CERN has released its complete KiCad component library under an open source license, making it available to hardware designers anywhere in the world. The library, maintained by CERN’s Design Office, contains more than 17,000 electronic components in the form of schematic symbols and printed circuit board footprints – CERN.

Also: A web-based Python tool, JLC2KiCad, that converts JLCPCB parts information into KiCad format – jlc2kicad-webui.manus.space.

Editor’s Note: This allows easier access to making KiCad PCBs, in turn turning Python projects into tangible hardware. A win for us all.

A PIO simulator for Raspberry Pi RP2040/RP2350

PIO simulator for RP2040/RP2350

ice458 on GitHub has made an extremely useful tool for folks using PIO on Raspberry Pi RP2040/RP2350 microcontrollers. A full simulator for PIO programs with waveforms, pins, and registers – GitHub.io and Adafruit Blog. Via X.

A Foundation Model in Your Pocket

A Foundation Model in Your Pocket

Eben Upton built Raspberry Pi to get more kids into computer science. It’s now the third most popular computer in history, a $1.5 billion industrial business, and used everywhere from outer space to the AI frontier – Colossus.

CircuitPython 10.2.1 and CircuitPython 10.3.0-alpha.2 Released

CircuitPython 10.2.1 Released

CircuitPython 10.2.1 and CircuitPython 10.3.0-alpha.2 have been released. They are bugfix revisions of CircuitPython – Adafruit Blog, release notes 10.2.1 – GitHub, and release notes 10.3.0-alpha.2 – GitHub.

Highlights for Both Releases

  • Fix crashes on certain boards with integral displays.
  • Adafruit MagTag 2025: improve display quality and support new display variant.

Additional Highlights for 10.3.0-alpha.2

  • Add CIRCUITPY_SDCARD_USB to settings.toml to control visibility of a mounted SD card on USB.
  • Support float values in settings.toml.
  • Report USB MSC drives as removable media to the host.
  • Update ESP-IDF to v6.0.1.
  • Fix audiomixer.Mixer regressions on SAMx5x.
  • STM: support audio.AudioOut using DAC.

AI is Ready to Take Over Python Programming, But Not Much Else

AI is ready to take over Python programming, but not much else

A Microsoft paper finds that AI performance varies sharply by domain. Python is the only domain where most models are ‘ready,’ and the best model reaches that threshold in only 11 of 52 domains – CIO.

I tested the new OpenAI Codex features on a real Python codebase, and it’s the strongest Claude Code rival yet – The New Stack.

TIOBE Index for May 2026: R Ascends as Python Slips Below 20%

TIOBE Index for May 2026

May’s TIOBE Index has a clear headline move inside the top 10: R climbs to #8, matching its best-ever rank. TIOBE CEO Paul Jansen says it fits a broader pattern in statistical programming, where attention is gathering around fewer ecosystems rather than spreading across a long list of specialized tools. Python remains #1 at 19.98%, and even with the drop, it still sits far ahead of every other language in the table. The lead is not in question, but the rating continues to drift downward month to month – TechRepublic.

A Raspberry Pi AMA on Reddit

Raspberry Pi AMA on Reddit

On Thursday, 21st May, Eben Upton, James Adams and Gordon Hollingworth of Raspberry Pi will be live on Reddit’s r/engineering from 3 to 5pm BST, answering questions about industrial and embedded applications of Raspberry Pi. Compute Modules in production, RP2040/RP2350, real-time performance, industrial protocols… bring whatever you’ve got. Between the three of them they cover the full stack – Reddit. Via LinkedIn.

An Altoids Tin Mini-Cyberdeck

Altoids Tin Mini-Cyberdeck

Altoids Tins are the perfect container. From survival kits, custom handheld game systems, to sewing, watercolors, and first aid, people have been repurposing the tin of the curiously strong mints for decades. Recently a strong desire came over YouTuber Exercising Ingenuity to build a tiny cyberdeck inside of one of these tins using a Raspberry Pi Zero W – Hackaday.io, Hackster.io, YouTube and GitHub. Via X.

This Week’s Python Streams

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

Deep Dive

Last Friday, Scott streamed work on hardware in the loop software.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

CircuitPython Parsec

CircuitPython Parsec

John Park’s CircuitPython Parsec this week is on LCD Character Display Buffer Width – Adafruit Blog and YouTube.

Catch all the episodes in the YouTube playlist.

Deep Dive with Tim

Deep Dive with Tim

Last week, Tim streamed work on LLM Agent Embodiment Kit and HTTPServer Channel.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

CircuitPython Weekly Meeting

CircuitPython Weekly Meeting for May 11, 2026 (notes) on YouTube.

Project of the Week: A Little Computer That Writes Poems About Computers

A Little Computer That Writes Poems About Computers

Yafira, electrocutelab on Instagram, has created ribbon_logic (2026) – Instagram.

“apparently i can’t stop making things about computers. my thesis is a computer. now this is a little computer that writes poems about computers. at some point i stopped questioning it lol ✿. a tiny poetry generator that lives on a 2.1” round screen. one button, one LiPo battery, infinite soft poems about soft machines. built with circuitpython on an @adafruit qualia, running a markov chain trained on my own freewriting and seeded with words from our class’s hand-tagged semantic corpus. it refuses cold, sharp, and academic words at the point of generation. the form and the content say the same thing. the text gives the computer a different personality, less command line, more daydream. the glitch is intentional. the screen stutters, the text flickers, the poem arrives in pieces. small machines should be allowed to be imperfect.”

Popular Last Week

What was the most popular, most clicked link, in last week’s newsletter? 5 useful things a $5 ESP32 can do for your home network.

Did you know you can read past issues of this newsletter in the Adafruit Daily Archive? Check it out.

Adafruit Playground Notes

Adafruit Playground Notes

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.

News From Around the Web

ESP32-S31 spotted

The ESP32-S31, announced back in March, has been spotted on social media – X.

There has been discussion of it not being a drop in replacement for the ESP32-S3 – SeeedStudio.

Cheatsheets

Claude Code Commands cheat sheet – X.

Also a Claude cheat sheet – X.

MatrixPortal Concierge

A tiny, always-on display using an Adafruit Matrix Portal S3 + 64×32 RGB LED matrix, coded in CircuitPython – guylewin.com and GitHub.

MicroPython & ESP32: Making a Real-Time IoT Radiation Monitor

Dmitrii Eliuseev provides a comprehensive guide on building a DIY real-time radiation monitor using an ESP32 and MicroPython. The project is designed to be affordable and capable of sending data to IoT platforms – Medium.

Pyrefly v1.0.0 is here!

Pyrefly, the fast, open-source type checker and language server for Python, built by Meta, has reached version 1.0.0 – YouTube.

Convolutional Neural Network Module

A native CNN (Convolutional Neural Network Module) for CircuitPython – Reddit.

Codex CircuitPython Board Control

A starter MCP server for controlled access to CircuitPython boards across Windows, Linux, and macOS. It is built for the common edit-deploy-reset loop: inspect the board, update files, read serial output, and recover quickly when code needs to be interrupted – GitHub.

Also: An MCP for MicroPython, featured last month – Switch Science and GitHub. (Japanese)

The PyCon US 2026 Typing Summit

The PyCon US 2026 Typing Summit recaps typing advances – Let’s Data Science.

Trying Maker Pi RP2040 with CircuitPython (Part 1)

Trying Maker Pi RP2040 with CircuitPython (Part 1) – elchika (Japanese). Via X.

Search our documentation by meaning, not keywords

New: search Raspberry Pi documentation by meaning, not keywords – Raspberry Pi News.

4 ways Python has turned my Android phone into the ultimate homelab companion

Four ways Python has turned my Android phone into the ultimate homelab companion – How-To Geek.

Cardputer ADV

Connie’s first mini experiment with the Cardputer ADV. Bypassed the default firmware to directly read the TCA8418 I2C keyboard chip and drive a PWM servo with MicroPython. Added a custom UI for that extra slick feel – X.

Having the sp40 and sp30 air quality sensors face off, side-by-side. #CircuitPython

Having the SP40 and SP30 air quality sensors face off, side-by-side in CircuitPython – BlueSky.

Install HOOBS on Your Raspberry Pi

Install HOOBS on Your Raspberry Pi in 10 Minutes or Less – Raspberry Tips.

Install Python 3.14.5 on Windows 11

How to install Python 3.14.5 on Windows 11 – YouTube.

Three Raspberry Pi weekend projects

Three Raspberry Pi weekend projects that actually solve real problems – How-To Geek.

Manim

Create mathematical animations with Python code – GitHub.

New

Pi Slate

CyberArch/Carbon Computers brand, has introduced the Pi Slate, a powerful handheld cyberdeck designed for portable computing and security-focused applications. Built around the Raspberry Pi 5, the Pi Slate integrates a 5-inch 1280×720 touchscreen, a backlit RGB keyboard with an integrated cursor, and a 10,000 mAh battery for 3–5 hours of portable use in a compact enclosure. It supports modular expansion for HATs such as LoRa, SDR, AI accelerators, and M.2 storage, and includes cooling support, antenna mounts, and an optional modular back with a kickstand – CNX.

OpenMV AE3

The OpenMV AE3 is a small, low power, microcontroller board which allows you to easily implement applications using machine vision in the real world. You program the OpenMV AE3 in high level Python scripts (courtesy of the MicroPython Operating System) instead of C/C++ – OpenMV. Via X.

M5Stack PaperColor

M5Stack has introduced the PaperColor, a compact development board built around the ESP32-S3R8 processor and a 4-inch Spectra 6 full-color e-paper display. The system is based on the ESP32-S3R8 SoC featuring dual Xtensa LX7 cores operating at up to 240 MHz together with 2.4 GHz Wi-Fi support. The board integrates 16MB Flash storage, 8MB PSRAM, and an onboard microSD card slot for expandable storage – LinuxGizmos.

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 two 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 Adafruit Learning System Guides

New Learn Guides

The Adafruit Learning System has over 3,200 free guides for learning skills and building projects including using Python.

BLE Beacon NeoPixels from Ruiz Brothers

Sensor-Locked Secrets with CircuitPython from Tim C

CircuitPython Libraries

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 569!

New Libraries

There are no new CircuitPython libraries this week.

Updated Libraries

Here are 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

I released CircuitPython 10.2.1 last week, with fixes for crashes for certain boards with integral displays, and a big improvement in display quality for the MagTag 2025 (thanks Mikey Sklar!).

CircuitPython 10.3.0-alpha.2 was also released late last Friday, after Scott fixed a problem with the update to Espress ESP-IDF v6.0.1.

Tim

I’ve been working on a few more revisions of my PR to implement a module in the CircuitPython core for I2SIn. I showed a demo on Show & Tell that uses ulab for FFT to make multiple strips of NeoPixels reactive to different frequencies within audio. My other project right now is an embodiment kit that uses a Feather S3 reverse TFT with various sensors and outputs like lights, vibration motor, and piezo buzzer to make a device intended to let an LLM sense and interact with the environment that the human user is in. I refactored parts of the communication on my stream Tuesday, and I’ve got all of the hardware put together on a perma-proto breadboard now.

Scott

This past week I tested the P4GPIO board, found and fixed an issue. I also made the same fix to the P4HIL board and then ordered them both. I’ve detoured back to Zephyr to update to the latest and greatest. At the same time, I’m working on the software side of hardware in the loop. It involves the harness firmware for USBIP, logic capture and toggling GPIO. My goal is to have the testing working on generic hardware and be able to scale up when the P4HIL boards arrive.

Liz

This week I’ve been working on a PCB that can fit in the Ikea Alpstuga CO2 monitor. It uses an ESP32-S3 and an HT16K33 to drive the LEDs that fit into a character mask in the enclosure. I have a scan of the original board to get the coordinates of each LED for the layout.

Upcoming Events

Open Hardware Summit

The Open Source Hardware Association Open Hardware Summit will be in Berlin, Germany on May 23rd and 24th, 2026.

MicroPython Meetup

The next MicroPython Meetup in Melbourne will be on May 27 – Luma. You can see recordings of previous meetings on YouTube.

Other Events This Year

  • EuroPython 2026 is coming to Kraków, Poland 13-19 July, 2026.
  • PyOhio 2026 is from 25 July through 26 July, 2026 this year in Cleveland, USA.
  • HOPE 26 Conference is from August 14th through 16th at the New Yorker Hotel, NY, NY.
  • PyCon AU 2026 will be 26 Aug. 2026 – 30 Aug. 2026 in Brisbane, Australia

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 10.2.1 and its unstable release is 10.3.0-alpha.2. New to CircuitPython? Start with our Welcome to CircuitPython Guide.

20260508 is the latest Adafruit CircuitPython library bundle.

20260515 is the latest CircuitPython Community library bundle.

v1.28.0 is the latest MicroPython release. Documentation for it is here.

3.14.5 is the latest Python release. The latest pre-release version is 3.15.0b1.

4,477 Stars Like CircuitPython? Star it on GitHub!

Call for Help – Translating CircuitPython is now easier than ever

CircuitPython translation statistics on weblate

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.

39,007 Thanks

39,007 THANKS

Adafruit Discord

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

ICYMI

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. To contribute your content, please email your news to cpnews (at) adafruit (dot) com with information and link(s) to your content.

Join the Adafruit Discord or post to the forum if you have questions.

]]>
657441
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/05/19/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-19/ Tue, 19 May 2026 10:00:09 +0000 https://blog.adafruit.com/?p=657446

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
657446
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/05/18/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-18/ Mon, 18 May 2026 18:40:05 +0000 https://blog.adafruit.com/?p=657444

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
657444
CircuitPython 10.3.0-alpha.2 Released! https://blog.adafruit.com/2026/05/15/circuitpython-10-3-0-alpha-2-released/ Fri, 15 May 2026 21:45:18 +0000 https://blog.adafruit.com/?p=657328

From the GitHub release page:

This is CircuitPython 10.3.0-alpha.2, an alpha release for 10.3.0. Further features, changes, and bug fixes will be added before the final release of 10.3.0.

Highlights of this release

  • Fix crashes on certain boards with integral displays.
  • Adafruit MagTag 2025: improve display quality and support new display variant.
  • Add CIRCUITPY_SDCARD_USB to settings.toml to control visibility of a mounted SD card on USB.
  • Support float values in settings.toml.
  • Report USB MSC drives as removable media to the host.
  • Update ESP-IDF to v6.0.1.
  • Fix audiomixer.Mixer regressions on SAMx5x.
  • STM: support audio.AudioOut, using DAC.

Download from circuitpython.org

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

Installation

To install follow the instructions in the Welcome to CircuitPython! guide. To install the latest libraries, see this page in that guide.

Try code.circuitpython.org or 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).

Documentation

Documentation is available in readthedocs.io.

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, these ports are consider stable (but see Known Issues below):

  • atmel-samd: Microchip SAMD21, SAMx5x
  • cxd56: Sony Spresense
  • espressif: Espressif ESP32, ESP32-C2, ESP32-C3, ESP32-C6, ESP32-C61, ESP32-H2, ESP32-S2, ESP32-S3
  • nordic: Nordic nRF52840, nRF52833
  • raspberrypi: Raspberry Pi RP2040, RP2350
  • stm: ST STM32F4 chip family

These ports are considered alpha and will have bugs and missing functionality:

  • analog: Analog Devices MAX32690
  • broadcom: Raspberry Pi boards such as RPi 4, RPi Zero 2W
  • espressif: , ESP32-P4
  • litex: fomu
  • mimxrt10xx: NXP i.MX RT10xxx
  • renode: hardware simulator
  • silabs: Silicon Labs MG24 family
  • stm: ST non-STM32F4 chip families
  • zephyr: multiplatform RTOS, running on multiple chip families

Changes since 10.3.0-alpha.1

Fixes and enhancements

  • Adafruit MagTag 2025: improve display quality. #11003, #11001. Thanks @mikeysklar.
  • Update frozen libraries. #10998. Thanks @dhalbert.
  • Fix crashes on boards with FourWire displays with no reset pin. #10997, #10995. Thanks @dhalbert.
  • Add CIRCUITPY_SDCARD_USB to settings.toml to control SD card USB presentation. #10996. Thanks @dhalbert.
  • Add support for float values in settings.toml. #10975. Thanks @dhalbert.
  • Report USB MSC drives as removable media to the host. #10967. Thanks @mikeysklar.

Port and board-specific changes

Analog Devices

Broadcom

Espressif

  • Fix WiFi/BLE crashes after ESP-IDF v6.0.1 upgrade. #11004. Thanks @tannewt.
  • Preserve alarm.sleep_memory across software resets. #10989, #10899. Thanks @lzr
  • Support ESP32-P4 V1. #10986. Thanks @tannewt.
  • Update ESP-IDF to v6.0.1. #10922. Thanks @tannewt.

i.MX

Nordic

renode

RP2

SAMx

  • Fix audiomixer.Mixer regressions on SAMx5x. #10906. Thanks @relic-se.

SiLabs

Spresense

STM

  • Support audio.AudioOut, using DAC. #10976. Thanks @ChrisNourse.

Zephyr

Individual boards

  • Adafruit MagTag 2025: improve display quality, support new display variant. #11003, #10992, #10987. Thanks @mikeysklar.
  • Unexpected Maker S3 D series: add board.ANTENNA_SWITCH (board.IO41). #10984. Thanks @JonNelson.

Documentation changes

Build and infrastructure changes

Translation additions and improvements

  • Thanks for translations:
    • @cyphra (Spanish)

New boards

  • Adafruit P4GPIO. #10986. Thanks @tannewt.
  • Espressif ESP32-P4X-Function-EV. #11004. Thanks @tannewt.
  • NHB Systems JL401-S3. #10997, #10977. Thanks @NHBSystems.

Known issues

  • The CIRCUITPY drive is not working on at least some STM32 boards.
  • Native-code .mpy files are not working. This capability is currently enabled only on the winterbloom_sol board.
  • See https://github.com/adafruit/circuitpython/issues for other issues, including issues still to be addressed for:

Thanks

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

]]>
657328
John Park’s CircuitPython Parsec: LCD Character Display Buffer Width https://blog.adafruit.com/2026/05/15/john-parks-circuitpython-parsec-lcd-character-display-buffer-width/ Fri, 15 May 2026 16:09:32 +0000 https://blog.adafruit.com/?p=657321

#circuitpythonparsec
How to shift the character display buffer in CircuitPython.

code example
To learn about CircuitPython: https://circuitpython.org

 

]]>
657321
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/05/15/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-15-2/ Fri, 15 May 2026 15:13:02 +0000 https://blog.adafruit.com/?p=657313

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
657313
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/05/14/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-14/ Thu, 14 May 2026 15:38:31 +0000 https://blog.adafruit.com/?p=657262

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
657262
CircuitPython 10.2.1 Released! https://blog.adafruit.com/2026/05/12/circuitpython-10-2-1-released/ Wed, 13 May 2026 01:20:35 +0000 https://blog.adafruit.com/?p=657061

From the GitHub release page:

This is CircuitPython 10.2.1, a bugfix revision of CircuitPython, and is a new stable release.

Highlights of this release

  • Fix crashes on certain boards with integral displays.
  • Adafruit MagTag 2025: improve display quality and support new display variant.

Download from circuitpython.org

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

Installation

To install follow the instructions in the Welcome to CircuitPython! guide. To install the latest libraries, see this page in that guide.

Try code.circuitpython.org or 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).

Documentation

Documentation is available in readthedocs.io.

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, these ports are consider stable (but see Known Issues below):

  • atmel-samd: Microchip SAMD21, SAMx5x
  • cxd56: Sony Spresense
  • espressif: Espressif ESP32, ESP32-C2, ESP32-C3, ESP32-C6, ESP32-C61, ESP32-H2, ESP32-S2, ESP32-S3
  • nordic: Nordic nRF52840, nRF52833
  • raspberrypi: Raspberry Pi RP2040, RP2350
  • stm: ST STM32F4 chip family

These ports are considered alpha and will have bugs and missing functionality:

  • analog: Analog Devices MAX32690
  • broadcom: Raspberry Pi boards such as RPi 4, RPi Zero 2W
  • espressif: , ESP32-P4
  • litex: fomu
  • mimxrt10xx: NXP i.MX RT10xxx
  • renode: hardware simulator
  • silabs: Silicon Labs MG24 family
  • stm: ST non-STM32F4 chip families
  • zephyr: multiplatform RTOS, running on multiple chip families

Changes since 10.2.0

Fixes and enhancements

  • Update frozen modules. #11001. Thanks @dhalbert.
  • Fix crashes on boards with FourWire displays with no reset pin. #10995. Thanks @dhalbert.

Port and board-specific changes

Analog Devices

Broadcom

Espressif

i.MX

Nordic

renode

RP2

SAMx

SiLabs

Spresense

STM

Zephyr

Individual boards

  • Adafruit MagTag 2025: improve display quality, support new display variant. #11002, #11000,. Thanks @mikeysklar.

Documentation changes

Build and infrastructure changes

Translation additions and improvements

New boards

  • NHB Systems JL401-S3. #10977. Thanks @NHBSystems.

Known issues

  • ESP32-C6 has problems.
  • The CIRCUITPY drive is not working on at least some STM32 boards.
  • Native-code .mpy files are not working. This capability is currently enabled only on the winterbloom_sol board.
  • See https://github.com/adafruit/circuitpython/issues for other issues, including issues still to be addressed for:

Thanks

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

]]>
657061
How to reverse-engineer almost any keyboard matrix with Raspberry Pi Pico https://blog.adafruit.com/2026/05/12/how-to-reverse-engineer-almost-any-keyboard-matrix-with-raspberry-pi-pico-2/ Tue, 12 May 2026 20:45:14 +0000 https://blog.adafruit.com/?p=657051 How to Reverse-Engineer Almost Any Keyboard Matrix With Raspberry Pi Pico

thanishurs31 on Instructables has developed a Pi Pico and CircuitPython solution to scan an entire keyboard ribbon cable matrix.

The old way to tackle this is the continuity-meter dance — you probe every possible pin pair, draw a grid, cross things out, wonder if that reading was real or just a ghost, and eventually end up with a hand-cramp and a half-correct diagram. It works. Eventually. But it’s also the kind of experience that makes people give up and buy a new keyboard.

This guide does it differently. We use a Raspberry Pi Pico running CircuitPython to scan the entire matrix for us — it figures out which pins are rows, which are columns, handles diode-protected N-key rollover boards and old simple membrane boards, flags shared power lines, and spits out a clean JSON map at the end.

Then we take that map and turn the keyboard into a proper USB HID device you can actually type on, with layers, Fn keys, and everything.

Check this out on Instructables.

Via hackster.io.

 

]]>
657051
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/05/12/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-12/ Tue, 12 May 2026 15:47:33 +0000 https://blog.adafruit.com/?p=657014

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
657014
ICYMI Python on Microcontrollers Newsletter: New Python Versions, Now PCBs Are Getting Scarce, BeagleBoard and More! https://blog.adafruit.com/2026/05/12/icymi-python-on-microcontrollers-newsletter-new-python-versions-now-pcbs-are-getting-scarce-beagleboard-and-more/ Tue, 12 May 2026 14:33:45 +0000 https://blog.adafruit.com/?p=656988

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 a terrific newsletter each Monday (which is out before this post). 12,370 subscribers worldwide!

The next newsletter goes out Monday morning and subscribing is the best way to keep up with all things Python for hardware. No ads or spam, no selling lists, leave any time.


From the Editor:

Welcome to the latest Python on Microcontrollers newsletter. It must be Spring, the city is digging up the streets! And with the retooling, the Python Software Foundation is making strides on their current and future releases. Raspberry Pi has put a basket full of goodies into their new Raspberry Pi Connect software. And even VS Code has been updated.

BeagleBoard discusses all their latest endeavors. And finally we’ve had memory and storage shortages – the next domino apparently is a printed circuit board shortfall. Oh, my. Lots more in this issue, I hope you like it all. – 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, please subscribe here. Here’s the news this week:

Python 3.15.0 beta 1 and Python 3.14.5 Release Candidate 1

New Python Versions

Two new versions of Python were released this week. Python 3.15 gets closer to release while Python 3.14.5 is a release candidate for the fifth maintenance release of 3.14, containing around 113 bugfixes, build improvements and documentation changes since 3.14.4 – Python 3.15 and Python 3.14.

The best new features of Python 3.15 – InfoWorld.

You’ve Seen The Chip Shortage And The Memory Shortage, Now Prepare For The PCB Shortage

You’ve Seen The Chip Shortage And The Memory Shortage, Now Prepare For The PCB Shortage

The conflict in the Middle East has disrupted supplies of crucial raw materials and ‌pushed up prices of the printed circuit boards (PCB) used in almost all electronic devices, from smartphones and computers to AI servers, industry sources and executives have said – Reuters. Via Hackaday.

Raspberry Pi Imager Now Supports Raspberry Pi Connect for Organizations

Raspberry Pi Imager Now Supports Raspberry Pi Connect for Organizations

Raspberry Pi Imager 2.0.9 has been released as the latest stable release of this user-friendly tool for creating bootable media for Raspberry Pi devices, introducing support for Raspberry Pi Connect for Organizations. Connect for Organizations now lets administrators require all members to use two-factor authentication (2FA) on their Raspberry Pi ID – 9to5Linux, Raspberry Pi News and release notes – GitHub.

“Raspberry Pi Imager 2.0.9 also improves write reliability with better overflow handling for GPT, MBR, and FAT partition wrappers, better handling of long filenames in FAT partitions, support for parsing zstd headers to recover the extract size for local archives, and support for handling extremely large sectors_per_fat in the disk formatter. It also removes the 512-byte alignment requirement.”

“You can now apply tags to any device — for example, by location (London, Cambridge), by environment (production, staging), or by what the device actually does (point-of-sale, kiosk). Tags appear underneath the device name on both the device page and the device list.”

Hearing from BeagleBoard

BeagleBoard

Chris Gammell interviews BeagleBoard’s Jason Kridner as they discuss Beagle happenings, including BeagleBoard.org recently joining Zephyr – The Amp Hour. Via BlueSky.

Testing the New OpenAI Codex Features on a Real Python Codebase, and It’s the Strongest Claude Code Rival Yet

OpenAI has updated Codex with computer use, an in-app browser, and PR reviews. Testing on HTTPie revealed how these features handle real-world Python bug fixes – The New Stack.

New VS Code Released

New VS Code Released

A new version of VS Code is out with some new features and fixes. New items include share integrated browser tabs as context, a new Markdown preview experience and more – Release Notes. Via X.

This Week’s Python Streams

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

Deep Dive

Last Friday, Scott streamed work on finishing P4HIL.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

CircuitPython Parsec

CircuitPython Parsec

John Park’s CircuitPython Parsec this week is on RGB LCD Character Display Shield Basics – Adafruit Blog and YouTube.

Catch all the episodes in the YouTube playlist.

Deep Dive with Tim

Deep Dive with Tim

Last week, Tim streamed work on Sensor Locked Secrets Project Code Refactor & Cleanup.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

CircuitPython Weekly Meeting

CircuitPython Weekly Meeting for May 4th, 2026 (notes) on YouTube.

Project of the Week: How to Reverse-Engineer Almost Any Keyboard Matrix With Raspberry Pi Pico

How to Reverse-Engineer Almost Any Keyboard Matrix With Raspberry Pi Pico

thanishurs31 on Instructables has developed a Pi Pico and CircuitPython solution to scan an entire keyboard ribbon cable matrix. It figures out which pins are rows, which are columns, handles diode-protected N-key rollover boards and old simple membrane boards, flags shared power lines, and spits out a clean JSON map at the end – Instructables. Via hackster.io.

Popular Last Week

What was the most popular, most clicked link, in last week’s newsletter? The Hottest Anti-AI Gadget Is a Cyberdeck.

Did you know you can read past issues of this newsletter in the Adafruit Daily Archive? Check it out.

News From Around the Web

THREEPIO

Samuel Potozkin has created a real-time, AI-powered conversational droid that you can actually talk to. This project explores what happens when AI is removed from the screen and placed into a physical object—shifting interaction from typing to conversation. Uses a Raspberry Pi 5 and Python – Hackaday, YouTube and GitHub.

SPEC CPU 2026 benchmarking suite

New server-focused SPEC CPU 2026 benchmarking suite has results for a Raspberry Pi 5 — updated tools feature more tests and can run a wide range of systems – Tom’s Hardware.

It is easy to take things like CircuitPython for granted

Greg Steiert posts this on X (formerly Twitter) – X.

“Adafruit does not get enough credit. It is easy to take things like CircuitPython for granted. Abstracting away the complexities of programming, you are too busy being productive to think about how difficult it is to make complex things like embedded programming simple. The difficulty is amplified exponentially when you think about all the different hardware and architectures that it supports.”

“CircuitPython is truly a work of art, and it would not be possible without professional development processes. The best part of CircuitPython is that it is open source, so after you have mastered programming MCUs in Python and are looking for the next steps in embedded development, you can see and learn the world-class, best practices for supporting diverse hardware.”

“This is why it is worth noting that Adafruit has decided to build CircuitPython on the Zephyr RTOS. And as with everything they do, they share the reasoning openly. This may be one of the best arguments for Zephyr that I have seen. CircuitPython is not a toy, the variety of hardware it supports is beyond impressive. There is a lot we can learn from Adafruit.”

How Long Do Raspberry Pis Last? Here's What Users Say

How long do Raspberry Pis last? Here’s what users say – BGR.

PulseTrain

James has created a CircuitPython program called PulseTrain specifically for the Raspberry Pi RP2040 Pico. The code uses the RP2040 PIO subsystem to generate exact pulse trains to drive a digital line, allowing an easy creation of common bitstreams used in many protocols – Adafruit Blog, Substack and GitHub.

5 useful things a $5 ESP32 can do for your home network

Five useful things a $5 ESP32 can do for your home network – Make Use Of.

Laptop keyboard on your phone

Need to use your laptop keyboard on your phone? This CircuitPython project forwards laptop keystrokes via a microcontroller over BLE HID, turning your computer into a wireless keyboard – GitHub. Via X.

Every type of microcontroller explained

Every type of microcontroller explained (video). Note the images have AI generation, the voiceover appears correct – YouTube. Via the Adafruit Blog.

FPGA Development Kit

FPGA Development Kit has a Lattice UP5K FPGA on a PCB with headers and a pinout compatible with the Tiny Tapeout Demoboard, which includes all the digital I/O as well as the project reset and clock. It can let you try out and test your digital designs in the same way as you’ll be interacting with ASIC projects: on top of the Demoboard, through PMOD headers or the RP2 MicroPython SDK – Tiny Tapeout and Demo code.

rp2040js

rp2040js is a Raspberry Pi Pico Emulator for the Wokwi Simulation Platform which runs CircuitPython, Arduino and MicroPython – Adafruit Blog and GitHub. Via Hackaday.

How to Re-initialize a Stuck ESP32 in CircuitPython

How to re-initialize a stuck ESP32 in CircuitPython – shallowsky.com.

An accessible driving game

An accessible driving game with haptic feedback + sounds with Raspberry Pi Pico 2W and CircuitPython – Instructables. Via Mastodon.

mcujs

mcujs – a JavaScript runtime for RP2040 and RP2350 microcontrollers, in the same spirit as Node.js for servers – GitHub.

Your smart home needs both an ESP32 and Raspberry Pi 5, not one or the other

Your smart home needs both an ESP32 and Raspberry Pi 5, not one or the other – XDA.

What I learned using Claude Sonnet to migrate Python to Rust

What I learned using Claude Sonnet to migrate Python to Rust – InfoWorld.

Arduino Modulino

Arduino Modulino – intelligent I2C modules used with MicroPython and the Arduino IDE – YouTube.

A music player with the look of the classic PC player WinAmp

A music player with the look of the classic PC player WinAmp made with an ESP32-S3 and LED matrix panels – X and YouTube.

Python isn’t always easy

Python isn’t always easy – InfoWorld.

CachyOS Switches Python To Using Tail-Call Interpreter For 5~15% Better Performance

CachyOS switches Python to using the Python 3.14 tail-call interpreter for 5~15% better performance – Phoronix.

New

Maker Go ESP32P4C5 core board

The Maker Go ESP32P4C5 core board features an ESP32-P4-Module with ESP32-P4 MCU with 32MB PSRAM, an ESP32-C5 dual-band WiFi 6 SoC, and a 16MB NOR flash. Besides the MIPI connectors, the board features three USB ports, one for debugging, and two Type-C/A ports sharing a USB 2.0 data connection, a built-in MEMS microphone, a speaker connector, and two 34-pin headers for expansion – CNX.

Renesas WS125-V2HRDKREFZ is a Robotics Development Kit (RDK) powered by Renesas RZ/V2H Arm Cortex-A55/R8/M33 microprocessor and designed for high‑performance AI vision applications leveraging the MPU’s built-in 80 TOPS (sparse) AI accelerator. The kit ships with 16GB LPDDR4, 64MB QSPI flash, a 64GB microSD card, a 40-pin Raspberry Pi GPIO header, a 16-pin PCIe Gen3 FFC connector, two MIPI CSI connectors, and a micro HDMI port. Other features include a Gigabit Ethernet port, two USB 3.2 ports, two CAN-FD interfaces, and a 12-24V DC input voltage range – CNX.

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 32 new boards added!

For microcontrollers, there are boards that are supported by the emerging CircuitPython Zephyr work. For single board computers, there are boards which can use the Blinka compatibility layer which uses U2IF, allows you to run “regular” Python code on your main computer and have it communicate with external devices connected through an RP2040 board (Learn Guide for this).

  • EK-RA8D1 Evaluation Kit (Zephyr) by Renesas
  • STM32U575ZIT6Q Nucleo (Zephyr) by STMicroelectronics
  • Nordic nRF54L05 Development Kit (Zephyr) by Nordic Semiconductor
  • Nordic nRF7002 Development Kit (Zephyr) by Nordic Semiconductor
  • Nordic nRF5340 Development Kit (Zephyr) by Nordic Semiconductor
  • STM32U575ZIT6Q Discovery Kit (Zephyr) by STMicroelectronics
  • EK-RA6M5 Evaluation Kit (Zephyr) by Renesas
  • Nordic nRF54H20 Development Kit (Zephyr) by Nordic Semiconductor
  • MCXN947 FRDM Development Board (Zephyr) by NXP
  • Nucleo N657X0-Q (Zephyr) by STMicroelectronics
  • Raspberry Pi Pico (Zephyr) by Raspberry Pi
  • Raspberry Pi Pico W (Zephyr) by Raspberry Pi
  • Raspberry Pi Pico 2 (Zephyr) by Raspberry Pi
  • Raspberry Pi Pico 2 W (Zephyr) by Raspberry Pi
  • Feather RP2040 (Zephyr) by Adafruit
  • Feather nRF52840 Express (Zephyr) by Adafruit
  • Feather nRF52840 Sense (Zephyr) by Adafruit
  • STM32WBA65I-DK1 Discovery Kit (Zephyr) by STMicroelectronics
  • STM32H750B-DK Discovery Kit (Zephyr) by STMicroelectronics
  • Renesas DA14695 Development Kit USB (Zephyr) by Renesas
  • NXP FRDM-RW612 (Zephyr) by NXP
  • Feather RP2040 via U2IF by Adafruit (Blinka)
  • Feather RP2040 CAN Bus via U2IF by Adafruit (Blinka)
  • Feather RP2040 RFM9x via U2IF by Adafruit (Blinka)
  • Feather RP2040 RFM69 via U2IF by Adafruit (Blinka)
  • Feather RP2040 ThinkInk via U2IF by Adafruit (Blinka)
  • ItsyBitsy RP2040 via U2IF by Adafruit (Blinka)
  • Adafruit KB2040 via U2IF by Adafruit (Blinka)
  • MacroPad RP2040 via U2IF by Adafruit (Blinka)
  • Trinkey QT2040 via U2IF by Adafruit (Blinka)
  • QT Py RP2040 via U2IF by Adafruit (Blinka)
  • RP2040-One via U2IF by Waveshare (Blinka)

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:

Adafruit Learning System Guides

Learn Guides

The Adafruit Learning System has over 3,200 free guides for learning skills and building projects including using Python.

Adafruit Playground Notes

Adafruit Playground is a 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.

CircuitPython Libraries

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 569!

New Libraries

No new libraries this week.

Updated Libraries

Here are 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 added support for floating-point values in the settings.toml file. Users can use this in their own code. I will also be adding new settings to allow changing durations of various startup delays that CircuitPython uses.

In these notes from last week, I mentioned a bug in the memcpy() function on Espressif RISC-V chips, which caused bugs on CircuitPython ESP32-C6 builds. Espressif fixed the problem in newer versions of ESP-IDF. We are moving to ESP-IDF v6.0.1, which incorporates the fix, in the CircuitPython 10.3.0-alpha.2 release; it will be available shortly.

More than a year ago, users of Chromebooks started having trouble seeing or accessing the UF2 BOOT drive on SAMD boards. Many classrooms were using MakeCode with Circuit Playground Express boards on Chromebooks, but this bug made that impossible. The problem came and went multiple times with different ChromeOS versions, and was hard to debug. The ChromeOS developers tracked it down to fwupd, a firmware update service for attached devices, including USB devices, but the actual cause was still confusing.

A couple of weeks ago I installed the just-released Ubuntu 26.04 on my regular development machine. Then I also started seeing the same SAMD BOOT drive problem. On my own fully accessible machine, I was able to track this bug down to an incorrect error response to a legitimate USB mass storage request coming from fwupd. With some analysis and code suggestions from a couple of LLMs, this problem now appears to be fixed, and we’ll be releasing updates for the SAMD UF2 bootloaders.

Tim

This week I finished writing up the sensor locked secrets guide after cleaning up the code and accompanying web page. I have tinkered a little more with ESP-Claw, setting up a way to flash the Metro S3 with a fork of the web flasher hosted in GitHub Pages. I submitted a PR with the Metro S3 board definition to the upstream project. I picked back up work on I2SIn, the raspberrypi port is my next focus. It can currently produce recordings with sound in them but there is lots of extra noise. It’s getting closer but needs more troubleshooting.

Scott

This week I’ve been hard at work on the ESP32-P4 based hardware-in-the-loop host board. I’ve routed everything and labeled stuff with silkscreen. So, I’m getting close to ordering it. I also got back my P4 GPIO minimal design and the chip can communicate over USB but the flash doesn’t seem to be working. I’ll debug that before ordering either because the flash portion is shared between designs.

Liz

I had the idea to try and install CircuitPython on the new Ikea Matter sensors. They use a SiLabs EFR32MG24. Unfortunately, the chips are fully locked and do not even allow an erase so it’s a non-starter. I did try out some new skills in this process though. I used OpenOCD and SiLabs Simplicity Commander software to interface with the chip.

Upcoming Events

PyCon US

PyCon US is May 13 – May 19, 2026 in Long Beach, California

MicroPython Meetup

The next MicroPython Meetup in Melbourne will be on May 27 – Luma. You can see recordings of previous meetings on YouTube.

Other Events This Year

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 10.1.4 and its unstable release is 10.3.0-beta.1. New to CircuitPython? Start with our Welcome to CircuitPython Guide.

20260416 is the latest Adafruit CircuitPython library bundle.

20260414 is the latest CircuitPython Community library bundle.

v1.28.0 is the latest MicroPython release. Documentation for it is here.

3.14.4 is the latest Python release. The latest pre-release version is 3.15.0b1.

4,477 Stars Like CircuitPython? Star it on GitHub!

Call for Help – Translating CircuitPython is now easier than ever

CircuitPython translation statistics on weblate

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.

39,024 Thanks

39,024 THANKS

Adafruit Discord

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

ICYMI

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. To contribute your content, please email your news to cpnews (at) adafruit (dot) com with information and link(s) to your content.

Join the Adafruit Discord or post to the forum if you have questions.

]]>
656988
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/05/11/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-11/ Mon, 11 May 2026 14:11:00 +0000 https://blog.adafruit.com/?p=656839

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
656839
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/05/08/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-8e/ Fri, 08 May 2026 20:19:00 +0000 https://blog.adafruit.com/?p=656772

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
656772
John Park’s CircuitPython Parsec: RGB LCD Character Display Shield Basics https://blog.adafruit.com/2026/05/08/john-parks-circuitpython-parsec-rgb-lcd-character-display-sheild-basics/ Fri, 08 May 2026 16:02:51 +0000 https://blog.adafruit.com/?p=656790

#circuitpythonparsec
How to read the buttons, write to the display, and change the display colors on the RGB LCD Shield w I2C in CircuitPython.

code example
To learn about CircuitPython: https://circuitpython.org

 

]]>
656790
UPDATED LEARN GUIDE: Adafruit VCNL4030 Proximity and Lux Sensor #WipperSnapper #AdafruitLearningSystem @Adafruit https://blog.adafruit.com/2026/05/08/updated-learn-guide-adafruit-vcnl4030-proximity-and-lux-sensor-wippersnapper-adafruitlearningsystem-adafruit/ Fri, 08 May 2026 15:00:00 +0000 https://blog.adafruit.com/?p=656786 Small rectangular VCNL4030 proximity and light sensor board with four mounting holes, STEMMA QT connectors, and labeled pins: VIN, GND, 3Vo, SDA, SCL, and INT.

UPDATED GUIDE: Adafruit VCNL4030 Proximity and Lux Sensor

The VCNL4030 is a handy two-in-one sensor, with a proximity sensor that works from 0 to 300mm (about 12 inches) and light sensor with range of 0.004 to 16,768 lux.

We’ve all been there. That thing is close but how close? When you need to measure a small distance with reasonable accuracy, such as the rough height of particularly calm bumble bee, the VCNL4030 Proximity Sensor from Vishay can do that for you. If perchance you also needed to measure the amount of light at the same time, perhaps to let the bee to know if it’s time for bed, you’re in luck! The VCNL4030 can do that too (bumble bee not included, we tried putting it in the anti-static bag but it started buzzing in a threatening manner)

A new page has been added for our no-code WipperSnapper firmware, allowing easy sending of data to Adafruit IO.

Read more at Adafruit VCNL4030 Proximity and Lux Sensor

]]>
656786
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/05/08/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-8-3/ Fri, 08 May 2026 14:18:44 +0000 https://blog.adafruit.com/?p=656770

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
656770
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/05/07/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-7-2/ Thu, 07 May 2026 21:05:12 +0000 https://blog.adafruit.com/?p=656762

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
656762
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/05/06/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-6-2/ Wed, 06 May 2026 14:43:36 +0000 https://blog.adafruit.com/?p=656635

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
656635
rp2040js is a Raspberry Pi Pico Emulator for the Wokwi Simulation Platform which runs CircuitPython, Arduino and MicroPython https://blog.adafruit.com/2026/05/05/rp2040js-is-a-raspberry-pi-pico-emulator-for-the-wokwi-simulation-platform-which-runs-circuitpython-arduino-and-micropython/ Tue, 05 May 2026 19:16:45 +0000 https://blog.adafruit.com/?p=656535

rp2040js is a Raspberry Pi Pico emulator for the Wokwi Simulation Platform. It blinks, runs Arduino code, and even the MicroPython and CircuitPython REPLs.

It’s coded nearly entirely in TypeScript.

See more on the GitHub page and on Hackaday.

]]>
656535
Creating specific pulse trains using an RP2040, PIO and CircuitPython https://blog.adafruit.com/2026/05/05/creating-specific-pulse-trains-using-an-rp2040-pio-and-circuitpython/ Tue, 05 May 2026 18:13:42 +0000 https://blog.adafruit.com/?p=656511

James Bowman writes about a common electronic need that does not have an easy, universal solution: generating a specific critically timed set of binary pulses.

Because pulse shape and line turnaround are timing-critical, they require custom low-level code on a microcontroller to implement the protocol.

An example is the WS2812B RGB LED spec (commonly called Adafruit NeoPixels).

James has created a CircuitPython program called PulseTrain specifically for the Raspberry Pi RP2040 Pico. The code uses the RP2040 PIO subsystem to generate exact pulse trains to drive a digital line, allowing an easy creation of common bitstreams used in many protocols.

Currently the implementation runs on RP2040 CircuitPython. It only supports a single I/O line right now, but it seems not too difficult to get it running with 2 or more lines.

The implementation uses RP2040’s PIO block, and was, ah, interesting. PIO is hard, and I’m feeling that PulseTrain is an easier way to get results. The library is a work-in-progress right now, but I’ll be adding some more features soon, including multi-signal support.

See more in the Substack article here and on GitHub.

]]>
656511
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/05/05/the-python-on-microcontrollers-newsletter-subscribe-for-free-5-5/ Tue, 05 May 2026 15:10:25 +0000 https://blog.adafruit.com/?p=656484

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
656484
ICYMI Python on Microcontrollers Newsletter: Cyberdecks are Hot Anti-AI Gadgets, RasPi CM0s On AliExpress and More! https://blog.adafruit.com/2026/05/05/icymi-python-on-microcontrollers-newsletter-cyberdecks-are-hot-anti-ai-gadgets-raspi-cm0s-on-aliexpress-and-more/ Tue, 05 May 2026 14:15:15 +0000 https://blog.adafruit.com/?p=656476

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 a terrific newsletter each Monday (which is out before this post). 12,375 subscribers worldwide!

The next newsletter goes out Monday morning and subscribing is the best way to keep up with all things Python for hardware. No ads or spam, no selling lists, leave any time.


From the Editor:

Welcome to the latest Python on Microcontrollers newsletter! May the 4th Be With You this fine Spring Monday. In keeping my eye out in the Python arena, I had known cyberdecks (small portable custom computers) were getting popular. But I was surprised to find the younger crowd (um, cough) have been seen using them to avoid AI/surveillance, while looking trendy. That works for me.

CircuitPython, meanwhile, is getting some more polishing and a look at single-board computers (SBC) two years ago vs. today makes me a bit sad. All this and much more in a larger than usual issue I hope you enjoy. – 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, please subscribe here. Here’s the news this week:

The Hottest Anti-AI Gadget Is a Cyberdeck

The Hottest Anti-AI Gadget Is a Cyberdeck

On TikTok, young women are going viral for crafting whimsical homemade computers inside their purses. There is a renewed interest in cyberdecks, especially among women eager to share their creations online – Wired.

“What we should do with cyberdecks is gatekeep them from AI and megacorp.”

CircuitPython 10.3.0-alpha.1 Released

New CircuitPython

CircuitPython 10.3.0-alpha.1 is an alpha release for 10.3.0. Further features, changes, and bug fixes will be added before the final release of 10.3.0 – Adafruit Blog and Release Notes – GitHub.

Highlights of This Release

  • Improve SD card USB presentation on macOS.
  • Prefer foo.py over foo/ package when importing, like CPython.
  • Pin fixes.
  • Enable gifio and storage in Zephyr port.

What a Difference Two Years Makes? Comparing SBC Prices in 2024 and 2026

What a difference two years make? Comparing SBC prices in 2024 and 2026

Looking back, 2024 feels like a golden year for single board computers, as the increasing price of RAM (and storage and other components) since late 2025 due to the AI demand has made those much less attractive, price/performance ratio-wise – CNX Software.

“We’ve already documented Raspberry Pi SBC price hikes, and after several increases, the Raspberry Pi 5 16GB went from $120 to $305, or a 154% change in price. Yesterday, I noticed the Banana Pi BPI-M4 Zero had a new version with 4GB RAM and 32GB eMMC flash, and a reader was quick to point out the $181 price tag to Europe was painful, bearing in mind it also includes VAT and shipping. Looking at the original December 2023 article, the BPI-M4 Zero 2GB/8GB sold for $28.90 plus shipping, and it now shows up at $115 before taxes. That’s a 297% hike, or about four times the price from a little over two years ago.”

A Network Scanner To Find All Your Raspberry Pis

Network Scanner

Anyone running a Raspberry Pi in their home network knows the problem: What is the Pi’s IP address right now? The DHCP server assigns a different one at every restart, and searching the router interface is tedious. That’s exactly why there is the raspberry.tips app for Android – an IP scanner specifically developed for the Raspberry Pi, combined with all the website’s tools right on your smartphone – Hackaday and website – raspberry.tips.

Malicious Python Package Poses New Supply Chain Threat

Malicious Python package poses new supply chain threat

The open-source package elementary-data, with over a million downloads per month, has been compromised. Attackers exploited a vulnerability in a GitHub Actions workflow to steal signing keys and publish a malicious version. Users of version 0.23.3 are advised to rotate their credentials immediately. This will be a familiar phenomenon to developers by now: open-source packages are a popular delivery mechanism for malware – TechZine.

The Linux Kernel Tree About To Hit 40 Million Lines, AMD Driver Above 6 Million Lines

The Linux Kernel Tree About To Hit 40 Million Lines, AMD Driver Above 6 Million Lines

Linux 7.1-rc1 kernel release is out, closing the Linux 7.1 merge window. Michael Larabel was curious if all the code removals would lead to a negative change in line count over Linux 7.0. The removals were not enough and Linux 7.1 Git is fast approaching 40 million lines – Phoronix.

Raspberry Pi CM0 System-on-Module is Now Sold for $33 and Up on AliExpress

Raspberry Pi CM0

The Raspberry Pi CM0 system-on-module is now available on AliExpress for $33 and up from various resellers, many of which claim to have several thousand in stock. The Raspberry Pi Compute Module Zero was introduced last year with a Raspberry Pi RP3A0 SiP with 512MB RAM, optional 8GB or 16GB eMMC flash, optional WiFi and Bluetooth, and castellated I/Os, or basically a Raspberry Pi Zero 2 W in Compute Module form factor. There’s just one little issue: it’s only officially sold in China, and (previously) the only way to get one is to get a development board like the Makerfabs CM0IQ or a complete product such as the ED-AIC1000 smart camera or ED-IPC1100 industrial box PC – CNX. Via X.

This Week’s Python Streams

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

Deep Dive

Last Friday, Scott streamed work on Hardware in the Loop Host.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

CircuitPython Parsec

CircuitPython Parsec

John Park’s CircuitPython Parsec this week is on Smooth Noise Road – Adafruit Blog and YouTube.

Catch all the episodes in the YouTube playlist.

Deep Dive with Tim

Deep Dive with Tim

Last week, Tim streamed work on I2SIn for CircuitPython.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

The CircuitPython Show

Tom Fox joins the show and discusses the SPOKE board, which had a successful Kickstarter in 2025. Tom shares how the SPOKE came to be, how it works, the SPOKE CircuitPython Online Editor, and more – The CircuitPython Show.

CircuitPython Weekly Meeting

CircuitPython Weekly Meeting for April 27, 2026 (notes) on YouTube.

Project of the Week: AIS Shiptracker

AIS Shiptracker

Jeff Gillow on the Adafruit Forums posts a real-time maritime vessel tracking system built on a Raspberry Pi 5, displaying live ship traffic in the English Channel on a 64×64 RGB LED matrix panel. Vessels are color-coded by type, positioned on a geographic map with coastline reference, and identified by a scrolling ticker with type codes, destination, speed, heading, and nav status – Adafruit Forums and GitHub.

Popular Last Week

What was the most popular, most clicked link, in last week’s newsletter? Stop buying Raspberry Pis: Why a cheap used mini PC is the better choice.

Did you know you can read past issues of this newsletter in the Adafruit Daily Archive? Check it out.

Put Your Projects Up For Free With Adafruit Playground Notes

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.

News From Around the Web

Colourful Macropad With Audio Using Pimoroni Keybow 2040 and Adafruit STEMMA Speaker (HID + MIDI Capable)

Adding an Adafruit STEMMA Speaker board to the quiet Pimoroni Keybow 2040 Macropad kit for extra noisy fun – Instructables.

LLM Python library and CLI tool

Simon Willison has LLM 0.32a0, an alpha release of a LLM Python library and CLI tool for accessing LLMs. LLM provides an abstraction over thousands of different models via its plugin system – Simon Willison.

DIY Liquid Color Sensor

A DIY liquid color sensor with Raspberry Pi, Python and Blinka – KrillSwarm and code – GitHub.

Bird camera - Raspberry Pi Zero 2 W

A Raspberry Pi Zero 2 W and Raspberry Pi Camera Module 3 based bird camera coded with Python – Curious Scientist, GitHub and YouTube.

SerialPlotster

SerialPlotster is a cross-platform desktop serial plotter built with Tauri 2. It graphs line-oriented numeric data from a serial port as a real-time strip chart, with scrub/zoom that does not pause data collection, plus a console pane for bidirectional communication with the device – GitHub. Via BlueSky.

Free book: A Guide to CubeSat Mission and Bus Design by Frances Zhu

Free book: A Guide to CubeSat Mission and Bus Design by Frances Zhu – hawaii.edu. Via Adafruit Blog.

Logging Vivarium Temperature and Humidity with an SHT30 and Two Lambdas

Logging Vivarium temperature and humidity with an SHT30, CircuitPython and two lambdas – krillswarm.com. Via Reddit.

IoTflow

IoTflow is a simple, scalable automation engine for IoTextra boards and MicroPython – makethingshappy.io and GitHub.

The nine coolest Raspberry Pi projects

The nine coolest Raspberry Pi projects from Colossus Magazine – X.

Using Sensors with CircuitPython

Using sensors with CircuitPython – KrillSwarm.

MicroPython-Microdeck

AlderVaren posts the MicroPython-Microdeck v0.1 using an Adafruit KB2040 – Reddit.

LilL3x, the Desktop AI Sidekick

LilL3x, the desktop AI sidekick using Raspberry Pi 4 8MB and Python – El3ktra.net.

E-Ink

Running an old WaveShare black and white e-paper display with CircuitPython and more – Akki’s Diary.

RedBoard Robot - Compatible with LEGO® Components

RedBoard Robot – compatible with LEGO® components and MicroPython – SparkFun News, YouTube, and GitHub.

Cyberpunk smartwatch

Building a Cyberpunk smartwatch on a round GC9A01 display with MicroPython – Reddit.

Bork

Bork: Heart of the Earth exhibit reveals a Raspberry Pi in existential crisis, running CircuitPython and Blinka – The Register.

Build a simple quiz game in Python

Build a simple quiz game in Python – Raspberry Pi News.

Why it’s so hard to create stand-alone Python apps

Why it’s so hard to create stand-alone Python apps – InfoWorld.

GitHub says sorry and vows to do better as uptime slips and devs complain

GitHub says sorry and vows to do better as uptime slips and devs complain – The Register.

New

ThingPulse - Color Kit Grande

This kit ships with the ePulse Feather ESP32 development board. The large 3.5″ 320×480 color display also sports a high-precision capacitive touch interface. Contrary to resistive touch interfaces that often work best when using a stylus this auto-calibrated module offers a smartphone-like user experience – ThingPulse. CircuitPython support note – Gillius’s Programming and MicroPython support – ThingPulse forums.

ESP32-C5 Mini

ESP32-C5 Mini is a tiny development board with dual-band (2.4/5 GHz) WiFi 6, Bluetooth 5.x LE, and an 802.15.4 radio for Zigbee, Thread, and Matter, as well as two 9-pin headers offering up to fourteen GPIOs for IoT and Smart Home projects. It’s similar to the XIAO ESP32-C5, but it’s slightly longer and features an ESP32-C5HF4 SoC instead of an ESP32-C5HR8 + 8MB SPI flash, meaning it lacks PSRAM, and only comes with 4MB flash on-chip instead of external flash. It also adds four GPIO pins and comes with a built-in antenna and an IPEX antenna connector – CNX.

Waveshare UGV Beast

Waveshare UGV Beast is an off-road robot with tracked wheels designed for Raspberry Pi 4 or 5 SBC handling AI vision and strategy planning, while an ESP32 sub-controller takes care of motion control and sensor data processing. Python programmable. – CNX and YouTube.

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 Adafruit Learning System Guides

New Learn Guides

The Adafruit Learning System has over 3,200 free guides for learning skills and building projects including using Python.

Stomp-Reactive Light Up Slippers from Erin St Blaine

CircuitPython Libraries

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 569!

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 10.3.0-alpha.1 last week, to introduce the first development releases past 10.2.x. There are only a few changes in this release, but there are a number of interesting updates in the works, including updating to ESP-IDF 6 and further work on Zephyr.

I spent a while continuing to debug a problem with memcpy() on ESP32-C6. It is apparently a configuration problem in our build: a simple reproducer in ESP-IDF clearly works in with one setting but not the opposite. But in CircuitPython the “correct” setting causes an early crash. Updating ESP-IDF may solve this problem, as there has been work on memcpy() in ESP-IDF v5.4.4 and later.

Tim

This week I’m working on adding support for I2SIn with a new module in the core. I have tested it successfully on a Sparkle Motion and have just received some breakouts to test it more widely. I’ve been working on code and pages for my next guide about sensor-locked secrets, it’s about using environmental sensor readings as the key to unlock secret messages as pictures. I also tinkered a little with the ESP-Claw project that Espressif published. I added support for the Metro S3 + 2.8” TFT shield in a development branch.

Scott

Scott

This week I’ve been heads down on another ESP32-P4 board designed to host other dev kits (device under test/DUT) for automated “hardware-in-the-loop” (HIL) testing. I’ve come up with a layout that I’m happy with and I’ve been brainstorming exactly how I want it to work. The layout is designed to fit as an Arduino shield or as a breadboard style two pin header rows. (Note: I’m still working on this, so it’ll likely change.)

It’ll have two USB-A on the left to connect to and power the DUT. The P4 will host them via a hub chip.

On the right, there may be:

  • An RJ45 for ethernet connectivity and, maybe, power.
  • Barrel jack for power.
  • USB-C for flashing the P4 and powering it.
  • Headers for selecting power source and adding wide voltage regulator to 5V. (For the barrel jack and ethernet.)
  • Boot and reset buttons.

Liz

This week I published the LED Matrix FIFA World Cup Scoreboard guide. This guide uses a Matrix Portal S3 running CircuitPython code to access the World Cup scoreboard API from ESPN. All of the info is displayed on four LED matrices tiled together to make a 128×64 display.

Upcoming Events

PyCon US

PyCon US is May 13 – May 19, 2026 in Long Beach, California

MicroPython Meetup

The next MicroPython Meetup in Melbourne will be on May 27 – Luma. You can see recordings of previous meetings on YouTube.

Other Events This Year

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 10.2.0 and its unstable release is 10.3.0-alpha.1. New to CircuitPython? Start with our Welcome to CircuitPython Guide.

20260424 is the latest Adafruit CircuitPython library bundle.

20260414 is the latest CircuitPython Community library bundle.

v1.28.0 is the latest MicroPython release. Documentation for it is here.

3.14.4 is the latest Python release. The latest pre-release version is 3.15.0a8.

4,477 Stars Like CircuitPython? Star it on GitHub!

Call for Help – Translating CircuitPython is now easier than ever

CircuitPython translation statistics on weblate

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.

39,024 Thanks

39,024 THANKS

Adafruit Discord

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

ICYMI

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. To contribute your content, please email your news to cpnews (at) adafruit (dot) com with information and link(s) to your content.

Join the Adafruit Discord or post to the forum if you have questions.

]]>
656476
The TI-84 Evo graphing calculator https://blog.adafruit.com/2026/05/04/the-ti-84-evo-graphing-calculator/ Mon, 04 May 2026 19:34:23 +0000 https://blog.adafruit.com/?p=656370

The TI-84 Evo The TI-84 Evo is a next-generation graphing calculator featuring integrated Python programming, a 3x faster processor, and a USB-C port, designed to replace the TI-84 Plus CE Python. It includes an icon-based menu, a larger graphing area, and supports both Python and TI-Basic for coding. It is approved for major exams, including SAT, ACT, and AP.

It features an ARM Cortex CPU running at 156 MHz, delivering 3x faster performance than previous models, along with integrated Python programming via a USB-C port.

Includes built-in CircuitPython support, allowing users to write and run Python code directly on the calculator.

It acts as a successor to the TI-84 Plus CE Python which used a separate ARM Cortex M0 co-processor. It offers a faster, refined experience with a new icon-based user interface.

See more at the TI Product Page.

]]>
656370
John Park’s CircuitPython Parsec: Smooth Noise Road https://blog.adafruit.com/2026/04/30/john-parks-circuitpython-parsec-smooth-noise-road/ Fri, 01 May 2026 01:10:52 +0000 https://blog.adafruit.com/?p=656258

#circuitpythonparsec
Create smooooth noise with the CircuitPython_Noise library.

code example
Todbot’s noise library
To learn about CircuitPython: https://circuitpython.org

 

]]>
656258
CircuitPython 10.3.0-alpha.1 Released! https://blog.adafruit.com/2026/04/30/circuitpython-10-3-0-alpha-1-released/ Fri, 01 May 2026 00:30:27 +0000 https://blog.adafruit.com/?p=656255

From the GitHub release page:

This is CircuitPython 10.3.0-alpha.1, an alpha release for 10.2.0. Further features, changes, and bug fixes will be added before the final release of 10.3.0.

Highlights of this release

  • Improve SD card USB presentation on macOS.
  • Prefer foo.py over foo/ package when importing, like CPython.
  • Pin fixes.
  • Enable gifio and storage in Zephyr port.

Download from circuitpython.org

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

Installation

To install follow the instructions in the Welcome to CircuitPython! guide. To install the latest libraries, see this page in that guide.

Try code.circuitpython.org or 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).

Documentation

Documentation is available in readthedocs.io.

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, these ports are consider stable (but see Known Issues below):

  • atmel-samd: Microchip SAMD21, SAMx5x
  • cxd56: Sony Spresense
  • espressif: Espressif ESP32, ESP32-C2, ESP32-C3, ESP32-C6, ESP32-C61, ESP32-H2, ESP32-S2, ESP32-S3
  • nordic: Nordic nRF52840, nRF52833
  • raspberrypi: Raspberry Pi RP2040, RP2350
  • stm: ST STM32F4 chip family

These ports are considered alpha and will have bugs and missing functionality:

  • analog: Analog Devices MAX32690
  • broadcom: Raspberry Pi boards such as RPi 4, RPi Zero 2W
  • espressif: , ESP32-P4
  • litex: fomu
  • mimxrt10xx: NXP i.MX RT10xxx
  • renode: hardware simulator
  • silabs: Silicon Labs MG24 family
  • stm: ST non-STM32F4 chip families
  • zephyr: multiplatform RTOS, running on multiple chip families

Changes since 10.2.0

Fixes and enhancements

    • Prefer foo.py over foo/ package when importing, like CPython. Conforms to CPython behavior. #10951. Thanks @tannewt.
  • Automount SD card earlier to make USB SD card access work properly on macoS. #10963. Thanks @mikeysklar.

Port and board-specific changes

Analog Devices

Broadcom

Espressif

i.MX

Nordic

renode

RP2

SAMx

SiLabs

Spresense

STM

Zephyr

  • Enable gifio and storage. #10970. Thanks @FoamyGuy.

Individual boards

  • Waveshare ESP32-S3 Matrix: fix pin name typo. #10971. Thanks @kylefmohr.

Documentation changes

Build and infrastructure changes

Translation additions and improvements

  • Thanks for translations:
    • @andibing (English – UK)

New boards

Known issues

  • ESP32-C6 networking is not working well.
  • The CIRCUITPY drive is not working on at least some STM32 boards.
  • Native-code .mpy files are not working. This capability is currently enabled only on the winterbloom_sol board.
  • See https://github.com/adafruit/circuitpython/issues for other issues, including issues still to be addressed for:

Thanks

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

]]>
656255
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/04/30/the-python-on-microcontrollers-newsletter-subscribe-for-free-4-30-2/ Thu, 30 Apr 2026 14:08:32 +0000 https://blog.adafruit.com/?p=656211

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
656211
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/04/29/the-python-on-microcontrollers-newsletter-subscribe-for-free-4-29-2/ Wed, 29 Apr 2026 15:41:49 +0000 https://blog.adafruit.com/?p=656115

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
656115
NEW GUIDE: LED Matrix FIFA World Cup Scoreboard #AdafruitLearningSystem @Adafruit https://blog.adafruit.com/2026/04/28/new-guide-led-matrix-fifa-world-cup-scoreboard-adafruitlearningsystem-adafruit/ Tue, 28 Apr 2026 18:15:42 +0000 https://blog.adafruit.com/?p=655948 an LED matrix display showing game stats for an upcoming fifa world cup game. it shows South Africa (RSA) vs Mexico (MEX) with each country's respective flag above the country name. it shows the location of the game (Mexico City) and the date and time. The display then updates to show another upcoming world cup game, Czech Republic (CZE) vs South Korea (KOR)

You can build a large RGB LED matrix display to follow along with the FIFA World Cup. A Matrix Portal S3 running CircuitPython requests data from the ESPN API to show the tournament gameplay data alongside country flags that are resized and gamma corrected to look crisp and bright on the matrices.

Read more at LED Matrix FIFA World Cup Scoreboard

]]>
655948
How to Reverse-Engineer Almost Any Keyboard Matrix With Raspberry Pi Pico https://blog.adafruit.com/2026/04/28/how-to-reverse-engineer-almost-any-keyboard-matrix-with-raspberry-pi-pico/ Tue, 28 Apr 2026 17:56:43 +0000 https://blog.adafruit.com/?p=655962

Super handy tutorial from Indian student/maker thanishurs31 that combines the powers of the pi pico with CicuitPython:

This guide does it differently. We use a Raspberry Pi Pico running CircuitPython to scan the entire matrix for us — it figures out which pins are rows, which are columns, handles diode-protected N-key rollover boards and old simple membrane boards, flags shared power lines, and spits out a clean JSON map at the end. Then we take that map and turn the keyboard into a proper USB HID device you can actually type on, with layers, Fn keys, and everything.

See full details here on instructables.

]]>
655962
Stomp-Reactive Light Up Slippers #Adafruit Products #AdafruitLearningSystem @Adafruit https://blog.adafruit.com/2026/04/28/stomp-reactive-light-up-slippers-adafruit-products-adafruitlearningsystem-adafruit/ Tue, 28 Apr 2026 17:10:35 +0000 https://blog.adafruit.com/?p=655633

Make every step sparkle with these stomp-reactive light up slippers by Erin St Blaine. This playful wearable project uses a force-sensitive resistor tucked into the sole to detect your steps, triggering colorful NeoPixel animations as you walk, dance, or stomp around. It’s a fun and beginner-friendly way to combine soft circuits, wearables, and interactive lighting into something you can actually use (and show off).

Powered by a microcontroller running CircuitPython, the slippers respond instantly to pressure, bringing your movement to life with customizable colors and effects. The guide uses the Adafruit Feather Prop-Maker RP2040 along with a force-sensitive resistor (FSR) to sense each step and trigger animations.

From the guide:

Turn every step into a burst of light with these interactive light-up children’s animal slippers. A force-sensitive resistor tucked inside the insole detects steps, and instantly triggers animations across addressable NeoPixel LEDs, glowing in your favorite colors. As you walk, the slippers respond in real time—adding a playful, responsive layer of light to every step. Comfortable, customizable, and full of personality, this project brings wearable tech right to your child’s feet.

This guide uses a Feather PropMaker RP2040 board, and we’ve included sample CircuitPython code to get you up and running. Customize the code to make the colors and animations exactly what you want them to be, and let your animal spirit shine through.

Read more at Stomp-Reactive Light Up Slippers

 

]]>
655633
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/04/28/the-python-on-microcontrollers-newsletter-subscribe-for-free-4-28/ Tue, 28 Apr 2026 14:26:53 +0000 https://blog.adafruit.com/?p=655924

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
655924
ICYMI Python on Microcontrollers Newsletter: Happy Birthday MicroPython, New CircuitPython, ESP-Claw and More! https://blog.adafruit.com/2026/04/28/icymi-python-on-microcontrollers-newsletter-happy-birthday-micropython-new-circuitpython-esp-claw-and-more/ Tue, 28 Apr 2026 13:48:20 +0000 https://blog.adafruit.com/?p=655893

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 a terrific newsletter each Monday (which is out before this post). 12,377 subscribers worldwide!

The next newsletter goes out Monday morning and subscribing is the best way to keep up with all things Python for hardware. No ads or spam, no selling lists, leave any time.


From the Editor:

Welcome to the latest Python on Microcontrollers newsletter! Big news this week: MicroPython is 13 years old on Wednesday! And it’s better than ever with its new release. CircuitPython also got a final release last week.

There is also a great deal of goodness “below the fold” as CircuitPython gets a 3rd party WebAssembly port and two related articles: How to convert EAGLE CAD files to KiCad 10, and Espressif provides a free “Claw” LLM agent for ESP32-S3 boards with at least 8MB of Flash and 8MB PSRAM, which is so much easier than configuring alternatives. – 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, please subscribe here. Here’s the news this week:

Happy Birthday MicroPython!

Happy Birthday MicroPython!

We’re celebrating MicroPython’s 13th birthday on April 29th! – micropython.org.

Here are some important milestone dates provided in 2019 by Damien:

  • 29th April 2013: first line of code written (in private, before anyone knew about it, before it was even called MicroPython)
  • 17th Sept 2013: first code running on a microcontroller, on the very first prototype of the pyboard
  • 2nd Oct 2013: register micropython.org
  • 4th Oct 2013: first commit in what is now the main repository
  • late Dec 2013: source code up on GitHub
  • 21st June 2014: last of the Kickstarter rewards sent out (for the first Kickstarter)
  • 7th April 2026: MicroPython v1.28.0 released

CircuitPython 10.2.0 Released

CircuitPython 10.2.0 Released

CircuitPython 10.2.0 is a minor revision of CircuitPython and is the new stable release – Adafruit Blog and Release Notes – GitHub.

Highlights of This Release

  • New audiotools.SpeedChanger.
  • New qspibus support for displayio.
  • Stability improvements to USB SD card handling.
  • Merge of MicroPython v1.27.
  • Update to ESP-IDF v5.5.3.
  • Many additions to the Zephyr port.
  • Simulated hardware testing is now being done in the Zephyr port.

Exciting Python Features Are on the Way

Exciting Python features are on the way

Transformative new Python features are coming in Python 3.15. In addition to lazy imports and an immutable frozendict type, the new Python release will deliver significant improvements to the native JIT compiler and introduce a more explicit agenda for how Python will support WebAssemblyInfoWorld.

Jumping Jerboa – Transfer A Mouse+Keyboard To Other Computer

Jumping Jerboa - Transfer Mouse/Keyboard To Other Computer

This project is a combination of Python and CircuitPython scripts to transfer the mouse and keyboard of your computer to another computer. A Raspberry Pi Pico is used as a USB HID Mouse/Keyboard – GitHub, hackster.io and YouTube.

MicroPython on LiteX Refreshed and Enhanced

MicroPython on LiteX

The LiteX port of MicroPython has been refreshed and enhanced with new peripherals support – GitHub. Via X.

ESP-Claw Lets You Build IoT Projects via Chat

ESP-Claw

While not technically Python, this is a big step in using microcontrollers for personal projects. Using the newly released ESP-Claw, you can chat with your ESP32 board to bring hardware projects to life without writing code. It requires at least 8MB Flash and 8MB PSRAM. Board definition formats are specified to allow more platforms; more boards are being added herehackster.io, Official Site and GitHub.

Comparing Thread, Zigbee, and Matter

Comparing Thread, Zigbee, and Matter

You’ve probably heard multiple mentions of Thread, Zigbee, and Matter from different companies. While Matter is a connectivity protocol that determines which language your smart home devices speak, Zigbee and Thread are wireless protocols that govern how your devices interact. ZDNet discusses them all – ZDNet.

This Week’s Python Streams

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

Deep Dive

Last Friday, Tim filled in for Scott and he streamed more work on the CircuitPython Zephyr port.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

CircuitPython Parsec

CircuitPython Parsec

John Park’s CircuitPython Parsec this week is on external monitor rotation – Adafruit Blog and YouTube.

Catch all the episodes in the YouTube playlist.

Deep Dive with Tim

Deep Dive with Tim

Last week, Tim streamed work on enabling more Core Modules in Zephyr storage and gifio.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

CircuitPython Weekly Meeting

CircuitPython Weekly Meeting for April 20th (notes) on YouTube.

Project of the Week: Detecting Drones with a Raspberry Pi

Detecting Drones with a Raspberry Pi

DroneAwareDan has been messing around with turning a Raspberry Pi using Python into a drone detector by reading Remote ID broadcasts over WiFi (2.4GHz) and Bluetooth – Reddit, hackster.io and GitHub.

Detecting Drones with a Raspberry Pi

Popular Last Week

What was the most popular, most clicked link, in last week’s newsletter? Stop buying Raspberry Pis: Why a cheap used mini PC is the better choice.

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.

CircuitPython WASM Port

CircuitPython WASM Port – Adafruit PlayWASMground.

Import Eagle Libraries into KiCad 10.0

Import Eagle Libraries into KiCad 10.0 – Adafruit Playground.

News From Around the Web

I used Claude to learn about Python and I should have sooner

I used Claude to learn about Python and I should have sooner – XDA.

Native Zephyr support for reTerminal E1001

Native Zephyr support for reTerminal E1001 is now available. Powered by ESP32-S3, reTerminal E1001 now supports the standard Zephyr RTOS build using flash and debug workflows for ePaper applications – Zephyr. Via X.

Matthias Wandel Turns Metal Into Proximity Sensors with the Raspberry Pi Pico's PIO Blocks

Matthias Wandel turns metal Into proximity sensors with the Raspberry Pi Pico’s PIO blocks – hackster.io, GitHub and YouTube.

HP Robots Otto Kit the gift of hearing

Give an HP Robots Otto Kit the gift of hearing. With two microphones, the bot will turn towards a noise. This project shows how to design circuits and 3D printed parts, and then use MicroPython and Thonny to make a robot that listens for a loud sound and then turn in that direction – nLab and YouTube. Via Adafruit Blog.

Claude Code Lego Flag

Claude Code Lego Flag is a physical Lego mailbox with a motorised flag that tells you when Claude Code is working vs. ready for your next prompt. A servo raises the flag when Claude finishes a response and lowers it as soon as you send a new message. Using Python and Arduino – X and GitHub. A bonus: a brick Claude – MecaBricks.

SamuRoid

SamuRoid – a Raspberry Pi-powered 22-DOF humanoid robot with Multimodal LLMs and ROS support programmable in Python and C++ – CNX and YouTube.

GR3ML1N

Maker Andy Warburton has turned an Espressif ESP32 microcontroller into a handheld, wide-format, pocket-friendly cyberdeck “built for chaos:” the GR3ML1N, running CircuitPython – Andy’s Site, hackster.io and GitHub.

The PiPaper Frame

The PiPaper Frame is an e-ink wall mount device designed to treat information like furniture. It uses a 7.5-inch Waveshare E-Paper display and a Raspberry Pi Zero 2 programmed in Python- hackster.io.

DigiKey and Microchip to Host Educational Webinar on Programming Embedded Systems

DigiKey and Microchip to host educational webinar on programming Embedded Systems April 30th – Morningstar.

IoT With CircuitPython

IoT With CircuitPython is a collection of hands-on IoT projects by Kritish Mohapatra built with CircuitPython on the Raspberry Pi Pico 2 W — exploring sensors, displays, wireless communication, and more – GitHub.

Python Vulnerability Allows Out-of-Bounds Write on Windows Systems

Python vulnerability allows out-of-bounds write on Windows systems (update recommended) CVE-2026-3298 (high) – Cyber Security News.

5 Tiny Raspberry Pi Projects That Can Fit In The Palm Of Your Hand

Five tiny Raspberry Pi projects that can fit in the palm of your hand – BGR.

5 Essential Gadgets Every Raspberry Pi Enthusiast Should Have

Five essential gadgets every Raspberry Pi enthusiast should have – BGR.

I stopped reaching for Raspberry Pi when the $60 board hit $95

I stopped reaching for Raspberry Pi when the $60 board hit $95 (and jumped to Raspberry Pi Pico 2W) – XDA.

Ubuntu 26.04 LTS

Ubuntu 26.04 LTS “Resolute Raccoon”: What’s new since 24.04? – OMGUbuntu and YouTube.

New

BeagleConnect Zepto

BeagleConnect Zepto – A “$1 computer” based on TI MSPM0L1117 Cortex-M0+ MCU and qwiic connector(s) – CNX.

Challenger+ RP2350 NB-IoT

Challenger+ RP2350 NB-IoT is a Feather-compatible board pairing a Raspberry Pi RP2350 microcontroller and a certified NB-IoT cellular module with built-in GNSS, suitable for long-range, low-power connectivity. It looks to be a variant of the earlier Challenger+ RP2350 WiFi6/BLE5 board that replaces an ESP32-C6 WiFi 6, BLE, and 802.15.4 module with an STMicroelectronics ST87M01 NB-IoT and GNSS module – CNX.

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 15 new boards added!

  • Pimoroni Badger2350 by Pimoroni
  • Pimoroni Explorer RP2350 by Pimoroni
  • TinyCircuits Thumby by TinyCircuits
  • TinyCircuits Thumby Color by TinyCircuits
  • Waveshare ESP32-S3 Touch AMOLED 2.41” by Waveshare
  • WeAct Studio RP2350B Core by WeAct Studio
  • Xteink X4 by Xteink
  • Feather HUZZAH ESP8266 by Adafruit (Blinka)
  • NodeMCU ESP8266 by NodeMCU (Blinka)
  • Orange Pi 5 Ultra by Shenzhen Xunlong Software CO., Limited (Blinka)
  • Pico 2 by Raspberry Pi (Blinka)
  • Pico 2 W by Raspberry Pi (Blinka)
  • Pico W by Raspberry Pi (Blinka)
  • Banana Pi BPI-P2 Pro by SinoVoip (Blinka)
  • LuckyFox Pico Ultra by LuckyFox (Blinka)

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:

Check Out the Adafruit Learning System Guides

Learn Guides

The Adafruit Learning System has over 3,300 free guides for learning skills and building projects including using Python.

CircuitPython Libraries

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 569!

New Libraries

Here are this week’s new CircuitPython libraries:

  • No new libraries this week.

Updated Libraries

Here are 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

I released CircuitPython 10.2.0 final last week. The release candidate, 10.2.0-rc.0, had a regression that caused problems when web workflow was used. I fixed that with some helpful advice from an LLM about some unnecessary changes I had made.

I’m now working on some other bugs, including a mysterious problem with memcpy on ESP32-C6.

Tim

This week I wrote a guide about using iNTERCEPT with a USB SDR on a Raspberry Pi. It’s a signals intelligence system that can scan various types of radio signals and record them and metadata about them. I enabled a few more modules in the zephyr port this week: jpegio, gifio, and storage. I also fixed the flash size declaration for the Feather RP2040 zephyr board def. I’m also working on finishing up a sweep over the libraries with a patch to update the version of ruff being used and some new capabilities in adabot that will allow me to fix any errors raised by the new ruff rules efficiently.

Scott

At the end of last week, I fixed the P4 logic analyzer capture firmware and that got me thinking about what I need to get things scaled up a bit. So, I’ve been heads down designing a basic ESP32-P4 board. It is a platform for learning everything needed for the new ESP32-P4. I’ve done the schematic and board layout. I’m adding silkscreen labels and then will get the bill of materials formalized for ordering. Once this is ordered, I want to make a logic analyzer specific board and a hardware-in-the-loop specific board.

Liz

This week I worked on some CircuitPython Tetris code. This code runs on an RP2040 Prop-Maker Feather with a NeoPixel grid as the display and a seesaw gamepad as the controller. This is for an upcoming Learn Guide with Noe Ruiz. He modeled the MIT Green Building, which is famous for being hacked with lights in its windows to show various displays including a playable game of Tetris.

Upcoming Events

PyCon US

PyCon US is May 13 – May 19, 2026 in Long Beach, California

MicroPython Meetup

The next MicroPython Meetup in Melbourne will be on May 27 – Luma. You can see recordings of previous meetings on YouTube.

Other Events This Year

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 10.2.0. New to CircuitPython? Start with our Welcome to CircuitPython Guide.

20260424 is the latest Adafruit CircuitPython library bundle.

20260414 is the latest CircuitPython Community library bundle.

v1.28.0 is the latest MicroPython release. Documentation for it is here.

3.14.4 is the latest Python release. The latest pre-release version is 3.15.0a8.

4,477 Stars Like CircuitPython? Star it on GitHub!

Call for Help – Translating CircuitPython is now easier than ever

CircuitPython translation statistics on weblate

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.

39,025 Thanks

39,025 THANKS

Adafruit Discord

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

ICYMI

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. To contribute your content, please email your news to cpnews (at) adafruit (dot) com with information and link(s) to your content.

Join the Adafruit Discord or post to the forum if you have questions.

]]>
655893
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/04/27/the-python-on-microcontrollers-newsletter-subscribe-for-free-4-27/ Mon, 27 Apr 2026 15:08:19 +0000 https://blog.adafruit.com/?p=655764

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
655764
John Park’s CircuitPython Parsec: External Monitor Rotation https://blog.adafruit.com/2026/04/24/john-parks-circuitpython-parsec-external-monitor-rotation/ Fri, 24 Apr 2026 16:45:22 +0000 https://blog.adafruit.com/?p=655720

Set your DVI/HDMI monitor rotation in the settings.toml file in CircuitPython. Vertical ‘tate’ mode here we come!
code example
To learn about CircuitPython: https://circuitpython.org

 

]]>
655720
CircuitPython 10.2.0 Released! https://blog.adafruit.com/2026/04/22/circuitpython-10-2-0-released/ Wed, 22 Apr 2026 22:55:30 +0000 https://blog.adafruit.com/?p=655638

From the GitHub release page:

This is CircuitPython 10.2.0, a minor revision of CircuitPython, and is a new stable release.

Highlights of this release

  • New audiotools.SpeedChanger.
  • New qspibus support for displayio.
  • Stability improvements to USB SD card handling.
  • Merge of MicroPython v1.27.
  • Update to ESP-IDF v5.5.3.
  • Many additions to the Zephyr port.
  • Simulated hardware testing is now being done in the Zephyr port.

Download from circuitpython.org

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

Installation

To install follow the instructions in the Welcome to CircuitPython! guide. To install the latest libraries, see this page in that guide.

Try code.circuitpython.org or 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).

Documentation

Documentation is available in readthedocs.io.

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, these ports are consider stable (but see Known Issues below):

  • atmel-samd: Microchip SAMD21, SAMx5x
  • cxd56: Sony Spresense
  • espressif: Espressif ESP32, ESP32-C2, ESP32-C3, ESP32-C6, ESP32-C61, ESP32-H2, ESP32-S2, ESP32-S3
  • nordic: Nordic nRF52840, nRF52833
  • raspberrypi: Raspberry Pi RP2040, RP2350
  • stm: ST STM32F4 chip family

These ports are considered alpha and will have bugs and missing functionality:

  • analog: Analog Devices MAX32690
  • broadcom: Raspberry Pi boards such as RPi 4, RPi Zero 2W
  • espressif: , ESP32-P4
  • litex: fomu
  • mimxrt10xx: NXP i.MX RT10xxx
  • renode: hardware simulator
  • silabs: Silicon Labs MG24 family
  • stm: ST non-STM32F4 chip families
  • zephyr: multiplatform RTOS, running on multiple chip families

Changes since 10.1.4 and 10.2.0-alpha.1

Fixes and enhancements

  • Fix web workflow background callback handling. #10966. Thanks @dhalbert.
  • Fix sdcardio.SDCard regression that failed to init some cards. #10956. Thanks @dhalbert and @bablokb.
  • Update frozen libraries. #10945, #10853, Thanks @dhalbert and @FoamyGuy.
  • Merge MicroPython v1.27 into CircuitPython. #10931. Thanks @dhalbert.
  • Fix palette length validation in _stage. #10904. Thanks @deshipu.
  • Add audiotools.SpeedChanger. #10900. Thanks @todbot.
  • Add mcp4822 SPI DAC support. #10895. Thanks @todbot.
  • Improve USB SD presentation, sdcardio implementation, displayio bus sharing. #10887. Thanks @dhalbert.
  • Add arg validations in various bitmaptools methods. #10884. Thanks @FoamyGuy.
  • Merge 10.1.x fixes. #10877, #10839. Thanks @dhalbert.
  • Fix handling of full-width glyphs in lvfontio. #10865. Thanks @FoamyGuy.
  • Added displayio qspibus support. #10844. Thanks @ppsx.

Port and board-specific changes

Analog Devices

Broadcom

Espressif

  • Change USB task priority to be the same as the CircuitPython task. #10887. Thanks @dhalbert.
  • Fix BLE startup crash. #10858. Thanks @tannewt.
  • Update to ESP-IDF 5.5.3. #10840. Thanks @tannewt.

i.MX

Nordic

renode

RP2

  • Fix i2ctarget bugs. #10933. Thanks @FoamyGuy.
  • Fix i2ctarget start bug. #10474. Thanks @MarkEbrahim.

SAMx

SiLabs

Spresense

STM

  • Move SPI deinit code to prevent crash. #10926. Thanks @ChrisNourse.

Zephyr

  • Fix flash size on Feather RP240. #10960. Thanks @FoamyGuy.
  • Enable jpegio, getpass, adafruit_bus_device, hashlib, zlib, aesio, msgpack. #10952, #10949, #10943, #10939, #10932, #10927. Thanks @FoamyGuy.
  • Add nvm support. #10918. Thanks @tannewt.
  • Add Adafruit Feather RP240. #10925. Thanks @FoamyGuy.
  • Add Adafruit Feather nRF2840 Sense. #10923. Thanks @tannewt.
  • Add Raspberry Pi Pico, Pico W, Pico2, Pico2 W. #10917. Thanks @tannewt.
  • add audiobusio.I2SOut support. #10916. Thanks @tannewt.
  • Zephyr port and build fixes. #10912, #10911, #10863, #10860, #10859. Thanks @tannewt.
  • Allow building and uploading native_sim .exe. #10897. Thanks @tannewt.
  • Add heap statistics tracking to native_sim. #10869. Thanks @tannewt.
  • Add zephyr_display to support fixed Zephyr displays. #10868. Thanks @tannewt.
  • Implement _bleio scanning, advertising, connect, and disconnect. #10862, #10833. Thanks @tannewt.
  • Add TCP neworking support. #10847. Thanks @tannewt.
  • Test simulated hardware using perfetto traces. #10846. Thanks @tannewt.
  • Handle time simulation without using yields. #10834. Thanks @tannewt.

Individual boards

  • Adafruit QT Py ESP32-S3 4/2 and 8/0: reduce default WiFi power to 15 dBm. #10921. Thanks @jesseadams.
  • Cytron Maker Pi RP2040: add GP29 pin definitions. #10893. Thanks @CytronTechnologies.
  • uGame S3: slow down SPI to avoid display glitches. #10837. Thanks @deshipu.

Documentation changes

  • Fix typo in tim.monotonic_ns(). #10950. Thanks @tannewt.
  • Explain SD card initialization more thoroughly. #10962, #10947. Thanks @mikeysklar.
  • Correct return type in busio.I2C.probe(). #10891. Thanks @FoamyGuy.

Build and infrastructure changes

  • Update CI actions to Node.24 versions. #10910. Thanks @dhalbert.
  • Fix ReadTheDocs build warnings. #10907. Thanks @dhalbert.
  • Add support for user-supplied build configuration files: user_pre_mpconfigport.mk, user_post_mpconfigport.mk, user_post_circuitpy_defns.mk. #10817. Thanks @bablokb.

Translation additions and improvements

New boards

  • Pimoroni Badger2350. #10929. Thanks @bablokb.
  • Pimoroni Explorer RP2350. #10778. Thanks @tyeth.
  • TinyCircuits Thumby and Thumby Color. #10851, #10303. Thanks @tannewt.
  • Waveshare ESP32-S# Touch AMOLED 2.41″. #10844. Thanks @ppsx.
  • WeAct Studio RP2350B Core. #10646. Thanks @cvmanjoo.
  • Xteink X4. #10873. Thanks @BlitzCityDIY.

Known issues

  • ESP32-C6 networking is not working well.
  • The CIRCUITPY drive is not working on at least some STM32 boards.
  • Native-code .mpy files are not working. This capability is currently enabled only on the winterbloom_sol board.
  • See https://github.com/adafruit/circuitpython/issues for other issues, including issues still to be addressed for:

Thanks

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

]]>
655638
ICYMI Python on Microcontrollers Newsletter: New CircuitPython Release Candidate, Linux 7, Pi OS Update and More! https://blog.adafruit.com/2026/04/21/icymi-python-on-microcontrollers-newsletter-new-circuitpython-release-candidate-linux-7-pi-os-update-and-more/ Tue, 21 Apr 2026 14:20:46 +0000 https://blog.adafruit.com/?p=655420

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 a terrific newsletter each Monday (which is out before this post). 12,402 subscribers worldwide!

The next newsletter goes out Monday morning and subscribing is the best way to keep up with all things Python for hardware. No ads or spam, no selling lists, leave any time.


From the Editor:

Welcome to the latest Python on Microcontrollers newsletter. Software abounds! Everyone has been excited about the new version of MicroPython being released. And it’s in time for MicroPython’s 13th birthday which we’ll be celebrating in the next newsletter. CircuitPython is getting a new release soon; you can kick the tires now. The Linux kernel has ticked over to a major update and as soon as Debian has it, I’ll bet the Raspberry Pi OS folks will incorporate it. Pi OS was updated for a default password required for sudo. Security these days…

I have a couple of updates on the Pi and the memory shortage, in continuing coverage. I hope you enjoy 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, please subscribe here. Here’s the news this week:

CircuitPython 10.2.0-rc.0 Released

CircuitPython 10.2.0-rc.0 Released

CircuitPython 10.2.0-rc.0 is the latest release candidate for CircuitPython 10.2.0 final. CircuitPython 10.2.0 will be the latest minor revision of CircuitPython before 10.3, and it will be a new stable release – Adafruit Blog and Release Notes.

Highlights of this Release

  • New audiotools.SpeedChanger.
  • New qspibus support for displayio.
  • Stability improvements to USB SD card handling.
  • Merge of MicroPython v1.27.
  • Update to ESP-IDF v5.5.3.
  • Many additions to the Zephyr port.
  • Simulated hardware testing is now being done in the Zephyr port.

Linux 7.0 is Out and Available on Seven Distros Now

Linux 7.0

Linux 7.0 is out, and the latest Linux kernel boasts full Rust support and a greatly improved scheduler to speed up work and games – ZDNet.

“The following distros already have 7.0 available: Arch Linux, openSUSE Tumbleweed, Gentoo, NixOS (unstable), Fedora Rawhide, and Ubuntu 26.04 LTS (beta/rc). In the next few weeks, it should be in Fedora 44 and Ubuntu 26.04. After that, popular Ubuntu-derived distributions such as Linux Mint and Pop!_OS 26.04 will roll it out.”

Multithreading (and use in MicroPython)

Multithreading (and use in MicroPython)

Multithreading is a technique that allows multiple threads to execute concurrently in software or hardware. In a program, multiple threads can execute simultaneously, each performing independent tasks. Check out this article and MicroPython applicability – dev.to. Via BlueSky.

The Raspberry Pi’s 15-Year Reign is Quietly Ending and Here’s Why

The Raspberry Pi's 15-year reign is quietly ending

The Raspberry Pi is a single-board computer that first appeared in 2012, primarily as an educational tool. It quickly found favor with hobbyists and those looking for a device to better their skills, power small projects, and put power efficiency over raw grunt for general computing tasks. While a Raspberry Pi is perfectly capable of running Home Assistant, a bunch of Docker containers, or even acting as a makeshift NAS, it’s no longer the best tool for the job, according to the author of this piece. That crown (currently) goes to a (used) mini PC. And on the low end, the ESP32 is putting pressure on small form factor builds – How-To Geek.

A Security Update for Raspberry Pi OS Affects sudo Use

Security Update for Raspberry Pi OS

Raspberry Pi has released version 6.2 of Raspberry Pi OS, the second update to the Trixie version released last year. The update is mostly a round-up of all the small changes and bug fixes made over the past few months, but there is one significant change to note: passwordless sudo is now disabled by default – Raspberry Pi News.

Being Hopeful About Ridiculous RAM Prices

Being Hopeful About Ridiculous RAM Prices

But now that the panic has subsided and turned into people increasingly voting with their wallets by not buying until the numbers make sense, you’re starting to see a slow-burn. A calculated attempt to find just the right price where you’ll finally hit buy – Tom’s Guide. Similar video – YouTube.

A Subset of MicroPython Features Comes To The Arduino Uno Q

Arduino Uno Q

Natasha wanted to teach MicroPython using an Uno Q, but the usual MicroPython APIs weren’t available. They made their own library to implement the most important bits of the familiar API. It currently implements a subset of the machine module: Pin, PWM, ADC, I2C, SPI and UART. While not complete, this certainly has potential to make the Uno Q easier to use for those familiar with MicroPython – Hackaday and GitHub.

This Week’s Python Streams

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

Deep Dive

Last Friday, Scott streamed work on a ESP32-P4 based Logic Analyzer.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

CircuitPython Parsec

CircuitPython Parsec

John Park’s CircuitPython Parsec this week is on DAC Volume Control – Adafruit Blog and YouTube.

Catch all the episodes in the YouTube playlist.

Deep Dive with Tim

Deep Dive with Tim

Last week, Tim streamed work on Zephyr bus_device testing inside native_sim.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

The CircuitPython Show

Paul welcomes three former guests back to the show for a panel discussion about developing for the Adafruit Fruit Jam. Tim Cocks, Dan Cogliano and Cooper Dalrymple share their experiences in creating apps, games, and screensavers for the Adafruit Fruit Jam and FruitJamOS – The CircuitPython Show.

CircuitPython Weekly Meeting

CircuitPython Weekly Meeting for April 13, 2026 (notes) on YouTube.

Project of the Week: Optocam Zero

Optocam Zero

The Optocam Zero is a pocket Raspberry Pi Zero camera running Python with off-the-shelf parts and a 3D-printed shell. It features autofocus, eight filters, a WiFi hotspot, USB-C charging, and an interchangeable 14,500 mAh battery. The tech specs include 2592×2592 JPEG photos, 240×240 1.4” LCD, 15-20 fps preview, and ~70-80 min per charge – XDA, Hackaday and GitHub.

Popular Last Week

What was the most popular, most clicked link, in last week’s newsletter? MicroPython v1.28.0 is out.

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.

Octoprint LED Status Crystal

Octoprint LED Status Crystal – Adafruit Playground.

Tiny Terminal with a Magnetic Connector – Adafruit Playground.

News From Around the Web

Bee Write Back journal

Simon Shimel created a simple Raspberry Pi based journal to enter the chaos of the day. He found that the form factor was really fun to use, and began developing more apps and functions, including a simple Claude chat client. The case is 3D printed. A Raspberry Pi Zero 2W provides the brains, running Python. Total cost less than $200 – Adafruit Blog, YouTube and GitHub. Via X and CNX.

PlanePortal

Ever stare out the window and wonder where that plane overhead is going? PlanePortal is an Adafruit PyPortal and CircuitPython-powered desk gadget for plane fans – hackster.io.

GitHub adds Stacked PRs

GitHub adds Stacked PRs to speed complex code reviews – InfoWorld.

Mini airplane radar

Building a mini airplane radar using a Raspberry Pi, Python and an ADS-B receiver – Sozorablog. Via X.

Key presser

Jack Ryan and Kopai-kun created a device that detects PC beep sounds and sends the F2 key. It’s configured with CircuitPython on the Seeedstudio Xiao RP2040. Basically, this thing acts like a USB keyboard that only sends the F2 key to get around an annoying BIOS issue – X.

In celebration of cyberdecks

In celebration of cyberdecks – Raspberry Pi News.

Tetris

New project in progress – a CircuitPython-powered NeoPixel Tetris controlled by a seesaw gamepad. Inspired by this much larger implementation. – Mastodon.

Accessible Catch Game for people with severe Physical Challenges

An accessible catch game for people with severe physical challenges, coded in CircuitPython – YouTube and GitHub. Via Mastodon.

Bus servo

Kevin McAleer is using MicroPython for some bus servo stuff for robotic arms – Mastodon.

New open-source Python-based software boosts space-weather modeling

New open-source Python-based software boosts space-weather modeling – Phys.org.

RAG Isn’t Enough

RAG isn’t enough — building the missing context layer in Python that makes LLM systems work – Towards Data Science.

Docker for Python & data projects

Docker for Python & data projects: a beginner’s guide – KDnuggets.

New

Orange Pi Zero 3W

Orange Pi Zero 3W is a Raspberry Pi Zero-sized SBC powered by an Allwinner A733 octa-core Arm Cortex-A76/A55 SoC paired with up to 16GB of LPDDR5 RAM, a microSD card slot, and footprints for eMMC flash or UFS storage. Other features include a 4K-capable mini HDMI port, two USB-C ports, one with DP 1.4 Alt mode, a MIPI DSI display connector, two MIPI CSI camera connectors, a WiFi 6 and Bluetooth 5.4 module, and a 40-pin GPIO header – CNX.

STM32U575

The $15 STM32U575VGT6 Maker Go board offers a high-performance Cortex-M33 core running at 160 MHz, along with ultra-low-power capabilities. The board has 8MB of external flash and is designed to accept 1.47-inch or 2.0-inch LCDs directly via a ribbon cable – CNX.

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 Adafruit Learning System Guides

New Learn Guides

The Adafruit Learning System has over 3,200 free guides for learning skills and building projects including using Python.

ESP-NOW Walkie Talkies from Liz Clark (technically not Python, but way cool)

CircuitPython Libraries

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 569!

New Libraries

Here are this week’s new CircuitPython libraries:

Updated Libraries

Here are 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

I finished the merge from MicroPython v1.27 last week. It was incorporated into the CircuitPython 10.2.0-rc.0 release last week, in preparation for 10.2.0 final.

Tim

This week I wrote the guide and CircuitPython driver for the MAX44009. I’ve also continued enabling core modules in the Zephyr port and writing tests for them. This week I enabled hashlib, zlib, and adafruit_bus_device. I looked into an issue that was causing the bundle updates to fail and I am going to work on modifications in adabot to try to reveal the root cause in a more obvious way, should the same issue occur again.

Scott

Scott

This week (and last) I’ve been heads down on my vision for hardware in the loop testing. This involves many components including 1) a USB IP bridge to isolate both the test device and instrument driving it and 2) logic analyzer firmware for capturing output signals. I’m documenting the whole setup in an Adafruit Playground note.

Liz

This week I finished documenting the ESP-NOW Walkie Talkies project. It uses a Feather ESP32-S3 Reverse TFT with an I2S microphone and I2S DAC/amp. The code is written in Arduino and handles the ESP-NOW connection, recording the audio packet, sending the packet and playing it back. I used the w.FL antenna version of the Feather and was able to get really good range between the two walkie talkies, even outside.

Upcoming Events

MicroPython Meetup

The next MicroPython Meetup in Melbourne will be on April 22 – Luma. You can see recordings of previous meetings on YouTube.

PyCon US

PyCon US is May 13 – May 19, 2026 in Long Beach, California

Note: The PSF only has until April 24th to get folks into the official hotel to break even, so please read, share, and book your PyCon US stay in the official block today.

Other Events This Year

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 10.1.4 and its unstable release is 10.2.0-rc.0. New to CircuitPython? Start with our Welcome to CircuitPython Guide.

20260416 is the latest Adafruit CircuitPython library bundle.

20260414 is the latest CircuitPython Community library bundle.

v1.28.0 is the latest MicroPython release. Documentation for it is here.

3.14.4 is the latest Python release. The latest pre-release version is 3.15.0a8.

4,477 Stars Like CircuitPython? Star it on GitHub!

Call for Help – Translating CircuitPython is now easier than ever

CircuitPython translation statistics on weblate

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.

39,024 Thanks

39,024 THANKS

Adafruit Discord

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

ICYMI

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. To contribute your content, please email your news to cpnews (at) adafruit (dot) com with information and link(s) to your content.

Join the Adafruit Discord or post to the forum if you have questions.

]]>
655420
John Park’s CircuitPython Parsec: DAC Volume Control https://blog.adafruit.com/2026/04/17/john-parks-circuitpython-parsec-dac-volume-control/ Fri, 17 Apr 2026 16:55:57 +0000 https://blog.adafruit.com/?p=655217

 

#circuitpythonparsec
Adjust DAC audio volume using an analog pot and I2C control.

code example
To learn about CircuitPython: https://circuitpython.org

 

]]>
655217
CircuitPython 10.2.0-rc.0 Released! https://blog.adafruit.com/2026/04/16/circuitpython-10-2-0-rc0-released/ Thu, 16 Apr 2026 13:00:22 +0000 https://blog.adafruit.com/?p=655145

From the GitHub release page:

This is CircuitPython 10.2.0-rc.0, a release candidate for CircuitPython 10.2.0 final. CircuitPython 10.2.0 will be the latest minor revision of CircuitPython, and will be a new stable release.

Highlights of this release

  • New audiotools.SpeedChanger.
  • New qspibus support for displayio.
  • Stability improvements to USB SD card handling.
  • Merge of MicroPython v1.27.
  • Update to ESP-IDF v5.5.3.
  • Many additions to the Zephyr port.
  • Simulated hardware testing is now being done in the Zephyr port.

Download from circuitpython.org

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

Installation

To install follow the instructions in the Welcome to CircuitPython! guide. To install the latest libraries, see this page in that guide.

Try code.circuitpython.org or 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).

Documentation

Documentation is available in readthedocs.io.

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, these ports are consider stable (but see Known Issues below):

  • atmel-samd: Microchip SAMD21, SAMx5x
  • cxd56: Sony Spresense
  • espressif: Espressif ESP32, ESP32-C2, ESP32-C3, ESP32-C6, ESP32-C61, ESP32-H2, ESP32-S2, ESP32-S3
  • nordic: Nordic nRF52840, nRF52833
  • raspberrypi: Raspberry Pi RP2040, RP2350
  • stm: ST STM32F4 chip family

These ports are considered alpha and will have bugs and missing functionality:

  • analog: Analog Devices MAX32690
  • broadcom: Raspberry Pi boards such as RPi 4, RPi Zero 2W
  • espressif: , ESP32-P4
  • litex: fomu
  • mimxrt10xx: NXP i.MX RT10xxx
  • renode: hardware simulator
  • silabs: Silicon Labs MG24 family
  • stm: ST non-STM32F4 chip families
  • zephyr: multiplatform RTOS, running on multiple chip families

Changes

Fixes and enhancements

  • Update frozen libraries. #10945, #10853, Thanks @dhalbert and @FoamyGuy.
  • Merge MicroPython v1.27 into CircuitPython. #10931. Thanks @dhalbert.
  • Fix palette length validation in _stage. #10904. Thanks @deshipu.
  • Add audiotools.SpeedChanger. #10900. Thanks @todbot.
  • Add mcp4822 SPI DAC support. #10895. Thanks @todbot.
  • Improve USB SD presentation, sdcardio implementation, displayio bus sharing. #10887. Thanks @dhalbert.
  • Add arg validations in various bitmaptools methods. #10884. Thanks @FoamyGuy.
  • Merge 10.1.x fixes. #10877, #10839. Thanks @dhalbert.
  • Fix handling of full-width glyphs in lvfontio. #10865. Thanks @FoamyGuy.
  • Added displayio qspibus support. #10844. Thanks @ppsx.

Port and board-specific changes

Analog Devices

Broadcom

Espressif

  • Change USB task priority to be the same as the CircuitPython task. #10887. Thanks @dhalbert.
  • Fix BLE startup crash. #10858. Thanks @tannewt.
  • Update to ESP-IDF 5.5.3. #10840. Thanks @tannewt.

i.MX

Nordic

renode

RP2

  • Fix i2ctarget bugs. #10933. Thanks @FoamyGuy.
  • Fix i2ctarget start bug. #10474. Thanks @MarkEbrahim.

SAMx

SiLabs

Spresense

STM

  • Move SPI deinit code to prevent crash. #10926. Thanks @ChrisNourse.

Zephyr

  • Enable adafruit_bus_device, hashlib, zlib, aesio, msgpack. #10943, #10939, #10932, #10927. Thanks @FoamyGuy.
  • Add nvm support. #10918. Thanks @tannewt.
  • Add Adafruit Feather RP240. #10925. Thanks @FoamyGuy.
  • Add Adafruit Feather nRF2840 Sense. #10923. Thanks @tannewt.
  • Add Raspberry Pi Pico, Pico W, Pico2, Pico2 W. #10917. Thanks @tannewt.
  • add audiobusio.I2SOut support. #10916. Thanks @tannewt.
  • Zephyr port and build fixes. #10912, #10911, #10863, #10860, #10859. Thanks @tannewt.
  • Allow building and uploading native_sim .exe. #10897. Thanks @tannewt.
  • Add heap statistics tracking to native_sim. #10869. Thanks @tannewt.
  • Add zephyr_display to support fixed Zephyr displays. #10868. Thanks @tannewt.
  • Implement _bleio scanning, advertising, connect, and disconnect. #10862, #10833. Thanks @tannewt.
  • Add TCP neworking support. #10847. Thanks @tannewt.
  • Test simulated hardware using perfetto traces. #10846. Thanks @tannewt.
  • Handle time simulation wihtout using yields. #10834. Thanks @tannewt.

Individual boards

  • Adafruit QT Py ESP32-S3 4/2 and 8/0: reduce default WiFi power to 15 dBm. #10921. Thanks @jesseadams.
  • Cytron Maker Pi RP2040: add GP29 pin definitions. #10893. Thanks @CytronTechnologies.
  • uGame S3: slow down SPI to avoid display glitches. #10837. Thanks @deshipu.

Documentation changes

  • Explain SD card initialization more thoroughly. #10947. Thanks @mikeysklar.
  • Correct return type in busio.I2C.probe(). #10891. Thanks @FoamyGuy.

Build and infrastructure changes

  • Update CI actions to Node.24 versions. #10910. Thanks @dhalbert.
  • Fix ReadTheDocs build warnings. #10907. Thanks @dhalbert.
  • Add support for user-supplied build configuration files: user_pre_mpconfigport.mk, user_post_mpconfigport.mk, user_post_circuitpy_defns.mk. #10817. Thanks @bablokb.

Translation additions and improvements

New boards

  • Pimoroni Badger2350. #10929. Thanks @bablokb.
  • Pimoroni Explorer RP2350. #10778. Thanks @tyeth.
  • TinyCircuits Thumby and Thumby Color. #10851, #10303. Thanks @tannewt.
  • Waveshare ESP32-S# Touch AMOLED 2.41". #10844. Thanks @ppsx.
  • WeAct Studio RP2350B Core. #10646. Thanks @cvmanjoo.
  • Xteink X4. #10873. Thanks @BlitzCityDIY.

Known issues

  • See https://github.com/adafruit/circuitpython/issues for other issues, including issues still to be addressed for:
  • The CIRCUITPY drive is not working on at least some STM32 boards.
  • Native-code .mpy files are not working. This capability is currently enabled only on the winterbloom_sol board.

Thanks

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

]]>
655145
NEW LEARN GUIDE: Adafruit MAX44009 Lux Light Sensor #Adafruit Products #AdafruitLearningSystem @Adafruit https://blog.adafruit.com/2026/04/15/new-learn-guide-adafruit-max44009-lux-light-sensor-adafruit-products-adafruitlearningsystem-adafruit/ Wed, 15 Apr 2026 17:00:46 +0000 https://blog.adafruit.com/?p=655081 Angled Shot of the Adafruit MAX44009 Wide-range Lux Sensor.

This is an easy to use light / lux sensor which features an ultra-wide 22-bit dynamic range from 0.045
lux to 188,000 lux. That means you can use the Adafruit MAX44009 Wide-range Lux Sensor in darkness or in bright outdoors sun, without having to tweak the integration time or gain: the sensor will auto-range for you so you get smooth readings no matter the light level.

Most light sensors just give you a number for brighter/darker ambient lighting. The MAX44009 makes your life easier by calculating the lux, which is an SI unit for light. You’ll get more consistent readings between multiple sensors because you aren’t dealing with some unit-less values.

The guide has pages covering the pinout, how to use the breakout with CircuitPython and Arduino. Datasheet and fab files are available on the downloads page.

Read more at Adafruit MAX44009 Lux Light Sensor

]]>
655081
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/04/14/the-python-on-microcontrollers-newsletter-subscribe-for-free-4-14/ Tue, 14 Apr 2026 13:52:08 +0000 https://blog.adafruit.com/?p=654949

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
654949
ICYMI Python on Microcontrollers Newsletter: MicroPython v1.28.0 is Out, Folks Are Gobbling Up Pi 2Ws, and More! https://blog.adafruit.com/2026/04/14/python-on-microcontrollers-newsletter-micropython-v1-28-0-is-out-folks-are-gobbling-up-pi-2ws-and-more/ Tue, 14 Apr 2026 11:50:04 +0000 https://blog.adafruit.com/?p=654895

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 a terrific newsletter each Monday (which is out before this post). 12,398 subscribers worldwide!

The next newsletter goes out Monday morning and subscribing is the best way to keep up with all things Python for hardware. No ads or spam, no selling lists, leave any time.


From the Editor:

Welcome to the latest Python on Microcontrollers newsletter! I love to have a variety of articles in each newsletter to provide readers with a broad spectrum of news. But sometimes certain topics are the “talk of the town” and that was the case this week. First, it is a big deal, having a new major version of MicroPython out. There are likely some additions you all were hoping to get included.

And I may have been a bit optimistic on RAM prices going down. Things are pretty stable at the elevated levels, within 5% or so. This has made people look at smaller single board computers like the Pi Zero 2W. It can run full Linux and either do speech work or smaller LLMs (and many more projects). Stock seems to be dwindling at retailers, though. The more things change… cheers. – 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, please subscribe here. Here’s the news this week:

MicroPython v.1.28.0 is Out!

MicroPython v.1.28.0

MicroPython lead developer Damien George has posted a new release, version v.1.28.0. – MicroPython GitHub. Via Adafruit Blog.

“This release of MicroPython sees machine.PWM support finally added to the stm32 port, as well as the alif port. This rounds out PWM support to all Tier 1 and Tier 2 microcontroller-based ports. A new machine.CAN class that has been in development for a couple of years has now been finalised in this release, with added documentation, a common set of bindings, comprehensive tests, and an implementation for the stm32 port.

This release also sees the addition of template strings as per PEP 750. Template strings (or t-strings) are similar to f-strings, allowing expressions within the string literal. But unlike f-strings, t-strings do not concatenate the pieces of the literal, rather they remain as separate components within a Template object.

An outline of MicroPython’s design values has been added to the main README. This aims to put into words some of the more intangible aspects of the project, in the hope that it will help strengthen and maintain those values moving forward. All MicroPython users and developers are encouraged to read these values, which can be found here.”

The Pi Zero 2 W is the Only Raspberry Pi That Makes Sense Right Now

The Pi Zero 2 W is the only Raspberry Pi that makes sense right now

Unlike its expensive mainline brethren, the Raspberry Pi Zero systems are meant to be light and affordable machines for DIY projects, and their budget-friendly nature hasn’t changed all that much even with the ongoing RAM armageddon. Yes, it can’t hold a candle to the computing prowess of even a Raspberry Pi 4, let alone its successor or x86 rivals. But for typical DIY projects and beginner-friendly SBC experiments, this tiny board can satiate your tinkering thirst – XDA.

Stop overspending on Raspberry Pis: why I picked a $15 Pi Zero over a $200 Pi 5 – How-To Geek.

Ed. Note: and with full Linux, they can call out to agentic models and do things, at a low cost. That is, if you can find one. It seems many retailers are out of stock at the moment. DigiKey quoted availability around August 10, 2026.

RAM Prices Are Threatening the Viability of the Raspberry Pi and Single-Board Computing

RAM Prices Are Threatening the Viability of the Raspberry Pi and Single-Board Computing

The whole point of single-board computers was their affordability. Raspberry Pi, in particular, describes its mission as “[putting] high-performance, low-cost, general-purpose computing platforms in the hands of enthusiasts and engineers all over the world” – Gizmodo.

An MCP server for MicroPython

MCP server for MicroPython

There’s been a growing trend to connect Large Language Models (LLM) to various tools and systems. Physical devices like microcontrollers can become quite interesting when running LLMs with attached hardware. So Yusuke Sasaki has implemented an MCP server that allows direct code execution from an LLM on a board running MicroPython – Switch Science and GitHub. (Japanese)

Find MicroPython Packages with Mim

Mim

If you are looking for a MicroPython package to do something you need, mim by Corella Creations, is very handy. It not only lists libraries and has a quick search feature, but it also provides the mip/mpremote commands to install each library – checkmim.com. Via X.

“While the MicroPython community is amazing at making powerful packages that make embedded development a dream, historically it has been painful to actually find what has previously been made. This has led to a lot of re-created wheels.

mim aims to solve this problem by providing a singular place to find all MicroPython packages that can be installed with mip, making the process for installation consistent and providing a clear command to follow to get running with the package you need.

mim contains both “Official” MicroPython packages (from the micropython-lib repo↗) and “Community” packages, open-source packages submitted by the users of mim.”

Making The Case Against Markdown

Ed: The March 23rd Newsletter had an InfoWorld article advocating for Markdown. Apparently not all agree with that take.

Making The Case Against Markdown

For some reason, Markdown has not just become the format of choice for giving READMEs in GitHub repositories some flair, but also for writing entire websites and documents. In a recent rant, Burak Güngör covers all the ways in which Markdown is a good idea as a basic document formatting concept and how its implementation is absolutely atrociousHackaday.

This Week’s Python Streams

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

Deep Dive

Last Friday, Scott streamed work on an ESP USBIP bridge.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

CircuitPython Parsec

CircuitPython Parsec

John Park’s CircuitPython Parsec this week is on UART Display Write – Adafruit Blog and YouTube.

Catch all the episodes in the YouTube playlist.

Deep Dive with Tim

Deep Dive with Tim

Last week, Tim streamed work on trying out the Zephyr port some more.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

CircuitPython Weekly Meeting

CircuitPython Weekly Meeting for April 6, 2026 (notes) on YouTube.

Project of the Week: Overglade Hackathon Badges

Overglade Hackathon Badges

Kai Pereira designed electronic e-ink badges for the Overglade Hackathon in Singapore. They have an NFC reader, an e-ink display, and run MicroPython – GitHub. Via Adafruit Blog.

Popular Last Week

What was the most popular, most clicked link, in last week’s newsletter? MicroPython Release Imminent.

Did you know you can read past issues of this newsletter in the Adafruit Daily Archive? Check it out.

Put Your Projects for Free on 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 with no ads, etc.

News From Around the Web

The NASA Artemis 2.0 Smartwatch

CircuitMess timed the NASA Artemis Watch 2.0 perfectly into a cultural moment. This is a $129 programmable smartwatch, fully assembled and ready to use out of the box. The hardware inside includes a dual-core ESP32 microcontroller, a color LCD screen, an accelerometer, a gyroscope, a compass, and a temperature sensor. It pairs with iOS and Android devices over Bluetooth for activity tracking and notifications, and the firmware is entirely open-source, reprogrammable in Python, CircuitBlocks, or the Arduino IDE. You can design custom watch faces, build interactive apps, and modify sensor behavior as deep as you want to go – Yanko Design and CircuitMess.

TinyProgrammer

TinyProgrammer v0.1 is a self-contained device that autonomously writes, runs, and watches little Python programs… forever. Powered by a Raspberry Pi, Python and an LLM via OpenRouter. It types code at human speed, makes mistakes, fixes them, and has its own mood. The display mimics a classic Mac IDE, complete with a file browser, editor, and status bar – GitHub.

The PyKit Explorer: The CircuitPython Development Kit That Lives on Your Desk

The Microchip Curiosity PyKit Explorer is a CircuitPython development kit in a ruler form factor. It features a SAME51 MCU, TFT display, IMU, sensors, audio and BLE. It enables engineers and students to go from LED blink to full games, all while reinforcing real embedded design concepts – Microchip.

Python notebook flaw

This Python notebook flaw shows how fast hackers are exploiting published security advisories – Cybernews.

Project index

Cosmin Dolha posts “I have a few folders, with a lot of projects and experiments, some Python, C, ESP-IDF, CircuitPython, Micropython, Lua, etc. Each in its own folder, some of them interact across multiple languages. I made Codex go through each folder, index what it is about, put it in an index HTML with a short description for each. Now when I tell Codex to do something, it goes to that index, looks if there is something there it can re-use, and sometimes finds stuff there that is useful, modifies them and uses them in the current project” – X.

Hackable history: Clay Interactive and Raspberry Pi at the Young V&A

Hackable history: Clay Interactive and Raspberry Pi at the Young V&A in the UK – Raspberry Pi News.

Cyberdeck project

Andy Warburton writes: “I’ve been hacking on this little cyberdeck project. It’s very much in prototype mode at the moment, but I’ve built a mini CircuitPython powered launcher that loads ‘apps’ from the SD card and can be navigated by touch or keyboard navigation. The keyboard is hand-wired with tactile switches (to keep things compact) through a Pi Pico that talks to the main brain (a Waveshare ESP32-S3 2.8” touch screen) over UART and can be switched to work as a standalone keeb too” – Mastodon.

ESP32 vs STM32 Comparison

An ESP32 vs. STM32 comparison – UltraLibrarian.

ESP32 with easy circuitpython code

“We did the last school project with an ESP32 with easy CircuitPython code and grok-guided research to build an auto-clicker for Roblox” – X.

Mighty projects for your 1GB Raspberry Pi 5

Mighty projects for your 1GB (or higher, of course) Raspberry Pi 5 – Raspberry Pi News.

PyPortal

An Adafruit PyPortal project from Mastodon user with CircuitPython – Mastodon.

Robot arm

Robot arm class in Physical Computing class and the MakerSpace was electric with CircuitPython, Raspberry Pi Pico and 3D printing arms battling to pick up candy – BlueSky.

10 Affordable Pi Projects for 2026

Ten Affordable Pi Projects for 2026 from Kevin McAleer – YouTube.

Snake Game

An updated snake game in MicroPython from nerdymark – BlueSky.

Raspberry Pi SBC gets (analog and) digital radio HAT with AM, FM, DAB, DAB+, HD radio

Raspberry Pi SBC gets (analog and) digital radio HAT with AM, FM, DAB, DAB+, HD radio – CNX.

ChatGPT refused to help me vibe code my project and it led me somewhere better

ChatGPT refused to help me vibe code my project and it led me somewhere better – MakeUseOf.

I replaced 3 paid productivity apps with one simple Python script

I replaced 3 paid productivity apps with one simple Python script – How-To Geek.

How Python is getting serious about Wasm

PEP 816: how Python is getting serious about Wasm – InfoWorld.

Ten Raspberry Pi projects

Ten Raspberry Pi projects you can build in under an hour (no extra hardware needed) – Raspberry Tips.

New

Sentinel Core

Sanctuary Systems’ Sentinel Core is a Raspberry Pi CM5 mini-ITX carrier board with a PCIe x16 slot to easily connect a graphics card to accelerate 3D graphics, video transcoding, or AI workloads. It’s basically a larger Raspberry Pi CM5 IO board with a prototyping area, a PCIe slot, and a 24-pin ATX power connector. The Sentinel Core also comes with two HDMI ports, a Gigabit Ethernet port, two USB 3.0 ports, MIPI DSI/CSI connectors, and the usual 40-pin GPIO header – CNX.

AIO-3588Q

The AIO-3588Q is an ARM-based motherboard built around the Rockchip RK3588 SoC, aimed at edge computing, industrial control, and multi-display systems. The platform integrates high-resolution video interfaces, networking, and expansion options within a compact form factor. The RK3588 features an octa-core CPU running up to 2.4 GHz, paired with a Mali-G610 MP4 GPU and a neural processing unit rated at up to 6 TOPS – LinuxGizmos.

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 Adafruit Learning System Guides

New Learn Guides

The Adafruit Learning System has over 3,200 free guides for learning skills and building projects including using Python.

Star Trek Data Dispenser from Ruiz Brothers

CircuitPython Libraries

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 569!

New Libraries

Here are this week’s new CircuitPython libraries:

  • No new libraries this week.

Updated Libraries

Here are 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

I am on the tail end of the MicroPython v1.27 merge into CircuitPython. I have made a pull request and am now fixing the build errors. Once it builds successfully I will do some more extensive testing on different board families. After it’s merged we will release CircuitPython 10.2.0, starting with a release candidate.

Tim

I finished the guide for using a Raspberry Pi as a router, that I mentioned last week. I’ve started working on some changes to the way that adabot library patches can work to make it easier to run a patch that will update the version of ruff used in the actions for the libraries.

I’ve also been diving into the zephyr port a bunch. I added a board def for the Feather RP2040 and have been testing display and NVM related core modules. I also have started enabling other core modules and writing native sim tests to validate their behavior. So far I’ve enabled msgpack and aesio successfully, the msgpack PR is in, and aesio needs a few finishing touches. I’ll keep looking into what other modules might be possible to turn on with minimal effort.

Scott

Last week I was testing and debugging the update of the ESP IDF from 5.5 to 6. It took a while to get WiFi working but I did. It’s been pushed to a branch for others to test. The testing for this highlights the need for automated testing. So, I’ve circled back to my idea to use USB over IP to make USB devices easily accessible for testing without needing a host OS connected directly.

Crashing or confusing Linux with rogue USB devices hampered my automated testing in the past. My goal is to have a ready made firmware to drop on an ESP that bridges the USB host port onto the network with USBIP. Then, any network host can connect to it and do testing over the TCP socket. I’m also working on pyusb and pyserial integration that will use the TCP connection directly. It will hopefully allow existing code to target these devices too.

Liz

Liz

This week I documented the Terminal Block BFF, the newest BFF in the shop. This board lets you plug in your QT Py or Xiao board and then lets you access all of the GPIO with socket headers or terminal blocks. There’s also onboard battery charging and a STEMMA QT port.

I’m also continuing on the ESP-NOW powered walkie talkies. For the enclosure design, I looked at a bunch of 90s toy walkie talkies and tried to emulate that vibe.

Upcoming Events

PyCon DE & PyData 2026 will be 13 April 2026 – 17 April 2026 in Darmstadt, Germany

MicroPython Meetup

The next MicroPython Meetup in Melbourne will be on April 22 – Luma. You can see recordings of previous meetings on YouTube.

Other Events This Year

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 10.1.4 and its unstable release is 10.2.0-alpha.1. New to CircuitPython? Start with our Welcome to CircuitPython Guide.

20260402 is the latest Adafruit CircuitPython library bundle.

20260402 is the latest CircuitPython Community library bundle.

v1.28.0 is the latest MicroPython release. Documentation for it is here.

3.14.4 is the latest Python release. The latest pre-release version is 3.15.0a8.

4,492 Stars Like CircuitPython? Star it on GitHub!

Call for Help – Translating CircuitPython is now easier than ever

CircuitPython translation statistics on weblate

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.

39,031 Thanks

39,031 THANKS

Adafruit Discord

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

ICYMI

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. To contribute your content, please email your news to cpnews (at) adafruit (dot) com with information and link(s) to your content.

Join the Adafruit Discord or post to the forum if you have questions.

]]>
654895
John Park’s CircuitPython Parsec: UART Display Write https://blog.adafruit.com/2026/04/10/john-parks-circuitpython-parsec-uart-display-write/ Fri, 10 Apr 2026 16:54:25 +0000 https://blog.adafruit.com/?p=654762

#circuitpythonparsec
Write serial messages to a UART display (TermDriver2) in CircuitPython.

code example
To learn about CircuitPython: https://circuitpython.org

 

]]>
654762
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/04/10/the-python-on-microcontrollers-newsletter-subscribe-for-free-4-10-2/ Fri, 10 Apr 2026 13:56:21 +0000 https://blog.adafruit.com/?p=654746

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
654746
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/04/09/the-python-on-microcontrollers-newsletter-subscribe-for-free-4-9-2/ Thu, 09 Apr 2026 20:09:36 +0000 https://blog.adafruit.com/?p=654737

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
654737
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/04/08/the-python-on-microcontrollers-newsletter-subscribe-for-free-4-8/ Wed, 08 Apr 2026 22:44:28 +0000 https://blog.adafruit.com/?p=654685

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
654685
ICYMI Python on Microcontrollers Newsletter: MicroPython v1.28.0 Imminent, Arduino Report, Memory Prices and More! https://blog.adafruit.com/2026/04/07/icymi-python-on-microcontrollers-newsletter-micropython-v1-28-0-imminent-arduino-report-memory-prices-and-more/ Tue, 07 Apr 2026 16:50:26 +0000 https://blog.adafruit.com/?p=654474

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 a terrific newsletter each Monday (which is out before this post). 12,387 subscribers worldwide!

The next newsletter goes out Monday morning and subscribing is the best way to keep up with all things Python for hardware. No ads or spam, no selling lists, leave any time.


From the Editor:

Welcome to the latest Python on Microcontrollers newsletter! This week, I thought Raspberry Pi had an April Fool’s joke about raising prices again. But it was no joke. I have posted some related content about the memory situation as it exists this week. Try finding a Pi 5 16GB or a Mac Mini in your favorite shop. All out? Everyone is running OpenClaw 🦞 or similar on them. And Jeff Geerling sees a major shift in the single board computer (SBC) market, perhaps one that is not so good for hobbyists.

Well, we can call up and get poetry on a telephone or see Artemis II statistics on displays, all powered by Python on hardware. Making things continues at a good pace and a new version of MicroPython being at hand will help. Ad Astra, Per Aspera 💫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, please subscribe here. Here’s the news this week:

MicroPython v1.28.0 Release Imminent

MicroPython v1.28.0

All issues for MicroPython v1.28.0 have been completed, so expect a new release soon – GitHub. Ed. note: It’s out – see this.

The (Confidential) 2025 Arduino Open Source Report

The 2025 Arduino Open Source Report

The 2025 Arduino Open Source Report cover page contains the text “STRICTLY CONFIDENTIAL” in 11.5pt RobotoMono-Regular, colored #9e9e9e (medium gray), positioned in the lower-right quadrant of page 1. You can’t see it when viewing the PDF because the gray text sits on top of the cover photograph and blends in. But select-all on the page and there it is. (Someone probably set up the presentation template with a gray “STRICTLY CONFIDENTIAL” watermark for internal review, the cover photo went behind it, the text became invisible, and nobody thought to remove it before publishing.)

Of course, the big news is Arduino is now a wholly-owned subsidiary of Qualcomm. The acquisition closed in late 2025, and since then the new ownership rewrites the Terms of Service to include perpetual irrevocable content licenses, ban reverse engineering (on a platform built on hackability), integrate user data into Qualcomm’s corporate data infrastructure, and require contributors to agree to a 6,000-word Qualcomm privacy policy just to submit a bug fix – Adafruit Blog (analysis and commentary), Arduino Blog and PDF.

Raspberry Pi 4 3GB Launched for $83.75, Further Price Increases Announced Across the Board for 4GB+ RAM Hardware

Raspberry Pi 4 3GB

This may sound like an April Fool’s joke, but the Raspberry Pi 4 with 3GB RAM is real and now offered for $83.75. Raspberry Pi also announced another round of price increase for Raspberry Pi 4/5/CM4/CM5 due to a “seven-fold increase over the last year in the price of LPDDR4 DRAM“ – CNX and Raspberry Pi News.

“We’ve said a number of times now that memory prices won’t remain at their current very high level indefinitely; the circumstances in which we find ourselves are challenging, but in the future they will abate. When they do, we will reverse our price increases, and until they do, we will continue to work hard to limit their impact in every way we can.” – Raspberry Pi

DRAM Pricing is Killing the Hobbyist SBC Market

DRAM Pricing is Killing the Hobbyist SBC Market

“Unless the DRAM pricing situation changes radically, I think the hobbyist SBC market is dying—or at least on life support. And I don’t just mean Raspberry Pis, but all SBC vendors. LPDDR chips now account for the majority of board cost from the vendors I’ve checked with.” – Jeff Geerling and YouTube.

New Report Shows the Memory Crisis May be Subsiding as ‘DDR5 Retail Prices Pullback’

New report shows the crisis may be subsiding

After months of devastating price hikes, the cost of RAM is starting to fall. Trendforce reports that U.S. DDR5 RAM prices have dropped by over 20% in the last month – although other prices seem to not be going down significantly. There are several indicators to watch: The OpenAI “rug pull”, Google’s recently announced TurboQuant – able to compress AI’s working memory by at least 6x and make it 8x faster, and people do not wish to pay absurd prices. A current trend: the popularity of OpenClaw has put pressure on obtaining high memory systems, especially Mac Minis – Tom’s Guide and TechRadar.

A Poetry Phone in the Key of Banana

Poetry Phone

Mario Cruz created an interactive art installation for the O, Miami Poetry Festival. Dial a number on a real phone keypad, hear ringing, then listen to a poem through the earpiece. Every number leads to a poem — but some numbers hide surprises. Built with a Raspberry Pi Pico, DFPlayer Mini MP3 module, CircuitPython and a salvaged phone handset – MarioTheMaker.

Velxio – an Arduino and Embedded Board Emulator

Velxio

David Montero Crespo has released Velxio, a fully local, open-source multi-board emulator. Write Arduino, C++ or Python, compile it, and simulate it with real CPU emulation and 48+ interactive electronic components — all running in a browser – Velxio and GitHub.

This Week’s Python Streams

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

Deep Dive

Last Friday, Scott streamed work on CircuitPython ESP-IDF6 and Zephyr updates.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

CircuitPython Parsec

CircuitPython Parsec

John Park’s CircuitPython Parsec this week is on making a CLUE Magnet Polarity Finder – Adafruit Blog and YouTube.

Catch all the episodes in the YouTube playlist.

Deep Dive with Tim

Deep Dive with Tim

Last week, Tim streamed work on a Fruit Jam Egg Hunt Game.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

The CircuitPython Show

Abby Bergman and Esha Patel, graduate students at Boston College, join the show and share their experience taking Professor John Gallaugher’s Physical Computing – Interactive Art, Robotics, & Tech for Good course. They share their motivations for taking the course, how they learned in a flipped classroom, and share the projects they worked on in the class. – The CircuitPython Show.

CircuitPython Weekly Meeting

CircuitPython Weekly Meeting for March 30, 2026 (notes) on YouTube.

Project of the Week: Artemis II Live Tracker on Matrix Portal M4

Artemis II Live Tracker on Matrix Portal M4

The Artemis II Live Tracker is a CircuitPython project for the Adafruit Matrix Portal M4 + 64×32 RGB LED matrix that displays real-time Artemis II mission status. The display automatically transitions through mission phases: Pre-launch countdown, Live in-flight telemetry (AROW data), and Post-mission splashdown messages – Adafruit Forums and GitHub.

Popular Last Week

What was the most popular, most clicked link, in last week’s newsletter? Four actually useful Python programs I use on my phone.

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.

Homebridge Plugin for Adafruit IO Feeds

Homebridge Plugin for Adafruit IO Feeds – Adafruit Playground.

A NeoTrinkey “Small Friend” Morse code blinker – Adafruit Playground.

News From Around the Web

CircuitPython is supported in Lopaka editor

CircuitPython is now supported in Lopaka editor – X and lopaka.app.

Kibo-journal terminal

“I made a Kibo-journal terminal for post-apocalypse. It charges the battery from solar panels and boots up the Raspberry Pi 400. The UI uses the textual-tui library with Python. You can keep a survival journal (the software itself was also made on the terminal)” – X. (Japanese)

build123d

build123d is a Python-based, parametric boundary representation (BREP) modeling framework for 2D and 3D CAD. Built on the Open Cascade geometric kernel, it provides a clean, fully Pythonic interface for creating precise models suitable for 3D printing, CNC machining, laser cutting, and other manufacturing processes – GitHub.

CircuitBambu

CircuitBambu

CircuitBambu: monitor your Bambu Labs 3D printer using CircuitPython, updated with the code from the Qualia example – GitHub. Via Mastodon.

Medications reminder box

Build a medications reminder box which lights up when it’s time to take prescription medications or supplements. This is a simple build with a potentially big impact that can be created with less than $20 in parts. Uses a Raspberry Pi Pico W (any WiFi capable Pico, including Pico 2W will work) and CircuitPython – YouTube and GitHub.

I stopped treating my Raspberry Pi like a tiny server — and it finally clicked

I stopped treating my Raspberry Pi like a tiny server — and it finally clicked – XDA.

Arduino dropped 7 new tools

Arduino dropped 7 new tools for the UNO Q: the UNO Media Carrier, Bug Hopper debugger, a USB-C hub, and the Modulino LED Matrix – hackster.io.

I built a DIY automation keypad for under $20, and it replaced three devices on my desk

I built a DIY automation keypad for under $20, and it replaced three devices on my desk (it also shows you can use CircuitPython) – XDA.

Badge

Bailey Townsend made a badge with Pimoroni Badger 2350 and MicroPython – Bailiey’s Retrospective.

Catode32

Catode32, a cat Tamagotchi with an ESP32, 128×64 OLED display and MicroPython – YouTube.

MicroPython/LVGL

MicroPython/LVGL – a Round Touch LCD using ESP32-C3 SuperMini – YouTube and GitHub.

YOLO computer vision model

How to train a custom YOLO computer vision model for Raspberry Pi (from scratch) with Python – Instructables.

MIDI controller

Making a MIDI controller with a Raspberry Pi Pico and CircuitPython – YouTube.

Claude just turned Python from confusing into actually intuitive with one feature

Claude just turned Python from confusing into actually intuitive with one feature – XDA.

We Put Dice on a Microcontroller (and It Slaps)

We put dice on a Microcontroller (and it slaps) with a Raspberry Pi Pico and MicroPython – Pishup.

Bitcoin transaction using Mesh Radio

Broadcasting a live Bitcoin transaction using Mesh Radio with Meshtastic and Python – GitHub.

New

Toradex OSM and Lino SoMs

Toradex has launched two new ultra-compact (30x30mm) System-on-Module (SoM) families: OSM and Lino, powered by NXP i.MX 91 or i.MX 93 Arm Cortex-A55 SoC for Edge industrial and IoT applications – CNX.

M5Stamp ESP32P4 Module

Stamp-P4 is a high-performance embedded module based on the ESP32-P4NRW32 chip. Stamp-AddOn C6 For P4 is a Wi-Fi expansion module based on the ESP32-C6-MINI-1-N4, supporting 2.4GHz Wi-Fi 6 – M5Stack Shop. Via X.

ESP32-P4-Pi-VIEWE

The ESP32-P4-Pi-VIEWE is a Raspberry Pi-inspired development board equipped with a VIEWE ESP32-P4C6-Core module, combining a 400 MHz ESP32-P4 dual-core RISC-V MCU with an ESP32-C6 chip for Wi-Fi 6 and Bluetooth 5.0 wireless connectivity, as well as 32MB PSRAM and 16MB NOR flash.

The board also offers 10/100Mbps Ethernet connectivity, MIPI DSI, and CSI connectors for display and/or camera, two onboard microphones, a speaker output, a USB 2.0 port, a micro SD card slot, and a 40-pin GPIO header, all in a familiar 85 x 56 mm (Pi-sized) form factor – CNX.

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 Adafruit Learning System Guides

New Learn Guides

The Adafruit Learning System has over 3,200 free guides for learning skills and building projects including using Python.

Egg Hunt Maze Game on Fruit Jam from Tim C

Updated Learn Guides

PyPortal Astronauts in Space

CircuitPython Libraries

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 569!

New Libraries

Here are this week’s new CircuitPython libraries:

Updated Libraries

Here are 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

I’ve gotten the MicroPython v1.27 merge into CircuitPython to compile and run. I now need to run and correct any failing tests.

Tim

This week I wrote a guide for an egg hunt maze game on the Fruit Jam. I also ran some infrastructure patches on the CircuitPython libraries. I converted the Arduino hardware tests for the APDS9999 breakout to CircuitPython and worked through testing them on hardware and tweaking some parts of the driver library based on the results. My next guide will cover using a Raspberry Pi as a network router. I’ve done lots of experimenting and begun writing pages for it.

Scott

This week I’m back after a short vacation and churning through testing and reviewing piles of LLM generated code. Dan approved and merged in some flash logic fixes for the Zephyr port. It was blocking some other changes (because the bugs made it hard to test.) So, now I’ve got a few more PRs out for review: adding I2S support, builds for the variety of Picos and adding the Feather nRF52840 Sense.

The testing time needed after prompting for the code has me thinking about automating on device testing. Limor and Tim have started to play with this too. Getting hardware “in the loop” of an LLM will be super helpful.

Liz

This week I wrote up a Playground note documenting an experiment I did with Homebridge. I wrote a plugin that lets your Adafruit IO feeds send data to Apple Home. I set it up so that each feed can be seen as a HomeKit service type. This means that if you were using, for example, an AHT20 temperature and humidity sensor, you could setup a feed for each parameter and then with the plugin have a Temperature Sensor and Humidity Sensor appear in your Apple Home.
I’ve also started researching and prototyping my next project guide which will involve ESP-NOW and audio.

Upcoming Events

PyCon DE & PyData 2026 will be 13 April 2026 – 17 April 2026 in Darmstadt, Germany

MicroPython Meetup

The next MicroPython Meetup in Melbourne will be on April 22nd – Luma. You can see recordings of previous meetings on YouTube.

Other Events This Year

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 10.1.4 and its unstable release is 10.2.0-alpha.1. New to CircuitPython? Start with our Welcome to CircuitPython Guide.

20260402 is the latest Adafruit CircuitPython library bundle.

20260402 is the latest CircuitPython Community library bundle.

v1.27.0 is the latest MicroPython release. Documentation for it is here.

3.14.3 is the latest Python release. The latest pre-release version is 3.15.0a7.

4,477 Stars Like CircuitPython? Star it on GitHub!

Call for Help – Translating CircuitPython is now easier than ever

CircuitPython translation statistics on weblate

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.

39,027 Thanks

39,027 THANKS

Adafruit Discord

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

ICYMI

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. To contribute your content, please email your news to cpnews (at) adafruit (dot) com with information and link(s) to your content.

Join the Adafruit Discord or post to the forum if you have questions.

]]>
654474
The Python on Microcontrollers Newsletter: subscribe for free https://blog.adafruit.com/2026/04/06/the-python-on-microcontrollers-newsletter-subscribe-for-free-4-6/ Mon, 06 Apr 2026 14:51:49 +0000 https://blog.adafruit.com/?p=654285

The Python for Microcontrollers Newsletter is the place for the latest news involving Python on hardware (microcontrollers AND single board computers like Raspberry Pi).

This ad-free, spam-free weekly email is filled with CircuitPythonMicroPython, and Python information that you may have missed, all in one place!

You get a summary of all the software, events, projects, and the latest hardware worldwide once a week, no ads! You can cancel anytime.

It arrives about 11 am Monday (US Eastern time) with all the week’s happenings.

And please tell your friends, colleagues, students, etc.

Please sign up > > >

Image

]]>
654285
John Park’s CircuitPython Parsec: CLUE Magnet Polarity Finder https://blog.adafruit.com/2026/04/03/john-parks-circuitpython-parsec-clue-magnet-polarity-finder/ Fri, 03 Apr 2026 15:21:12 +0000 https://blog.adafruit.com/?p=654208

#circuitpythonparsec
Use the CLUE board to determine the polarity of a magnet (useful for embedding magnets in your 3D printed enclosures!).
code example
To learn about CircuitPython: https://circuitpython.org

 

]]>
654208