View this email in your browser. Warning: Flashing Imagery
Welcome to the latest Python on Microcontrollers newsletter! Now that everyone has settled in for September, we have October and all the Halloween projects, always a favorite. I’m going to help Adafruit with ShackToberFest where we celebrate Radio Shack through the years. From this week’s news and projects, Python on hardware is thriving. - Anne Barela, Editor
We’re on Discord, Twitter, and for past newsletters - view them all here. If you’re reading this on the web, subscribe here. Here’s the news this week:
Adafruit Grand Opening in Industry Center, Brooklyn, New York
On September 20th, Adafruit had a grand opening in their new Brooklyn, New York factory at Industry City. A special thanks to the President of the Brooklyn Chamber of Commerce, the Managing Director of Industry City, and the Vice President of Partnerships at the NYC EDC - X.
A quick reminder that Adafruit doesn’t have a store or tours, they’re just making cool products in their factory that you order online.
MicroPython Memory Profiler
Planet Innovation has released the MicroPython Memory Profiler under an open MIT license. It’s an in-house tool originally written mostly by Damien George (MicroPython’s creator) for a project where fragmented memory was an issue when running a device for many hours/days - GitHub.
Adafruit on the Open Source Hardware Association Show and Tell event – Oct 2nd, 6:40 PM US Eastern
Adafruit will be part of the Open Hardware Association’s Show and Tell on Wednesday, October 2nd, 2024, at 6:40 PM US Eastern time! Right before the Adafruit weekly Show and Tell, and ASK an Engineer! It’s a triple header of open-source! You’ll be able to watch and participate live - video and blog post.
Join the Adafruit team live as they discuss latest projects, share how open-source has shaped their cause and business, and showcase some of the incredible things that have been open-source hardware certified. You’ll also get a behind-the-scenes look at the new Adafruit factory in Industry City, Brooklyn, NY – USA and the tools in use - Adafruit.
This will part of the OSHWA open-hardware month 24 hour livestream, where you can check in with open-source creators and groups around the world to celebrate all things open! Lee and Sid will be there from OSHWA to host, and answer any viewer OSHWA related questions - Open Hardware Month.
RISC-V on Raspberry Pi Pico 2
The Hazard 3 RISC-V cores on the RP2350 were designed by Raspberry Pi’s own Luke Wren in his spare time, and they’re open source! Luke discusses his work and what went into the Hazard 3 design process - Raspberry Pi News.
C++ vs MicroPython
Kevin McAleer asks which language is best: Arduino C++ or MicroPython - YouTube.
Measuring Peripheral Power With Several Microcontrollers
Kevin J Walters tests the current draw for a range of peripheral devices powered by several microcontrollers including the use of GPIO. A simple testing program was written in C/C++ for Arduino and then ported to CircuitPython and MicroPython for testing - Instructables.
5 Reasons the Raspberry Pi is Still the Best SBC for Most People
5 reasons the Raspberry Pi is still the best single board computer (SBC) for most people - XDA.
Book Corner
OUT NOW: The Official Raspberry Pi Handbook 2025 has landed - Raspberry Pi News.
A retro gaming and Raspberry Pi eBook Humble Bundle lets you pay what you want for the books listed last week and the one above, as low as $15 for 14 eBooks - Humble Bundle.
This Week’s Python Streams
Python on Hardware is all about building a cooperative ecosphere which allows contributions to be valued and to grow knowledge. Below are the streams within the last week focusing on the community.
CircuitPython Deep Dive Stream
Last Friday, Scott streamed work on CircuitMatter Certificates.
You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist - YouTube.
CircuitPython Parsec
John Park’s CircuitPython Parsec this week is Getting to the Bootloader with an External Button - Adafruit Blog and YouTube.
Catch all the episodes in the YouTube playlist.
CircuitPython Weekly Meeting
CircuitPython Weekly Meeting for September 30, 2024 (notes) on YouTube.
Project of the Week: Bringing Fighter Jet Joysticks to Life with Raspberry Pi Pico and CircuitPython
The MagPi Issue 146 documents an amazing reverse engineering project. A pair of military fighter jet joysticks were obtained by Andrew Gregory at EMF Camp. Finding they used RS-232, their protocol was reverse engineered and fed into a Raspberry Pi Pico running CircuitPython as a custom USB HID (Human Interface Device) to feed into a computer so a joystick can be used in flight simulators - Raspberry Pi News.
Popular Last Week
What was the most popular, most clicked link, in last week’s newsletter? New book release: Design an RP2040 board with KiCad.
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.
Launching from DS9 - Adafruit Playground.
News From Around the Web
SuperXBit192 is a Supercon Add-On that lets you play pong on a display made from 192 addressable LEDs. The code is written in Circuitpython - Hackaday.io.
FieldStation42 is an on the air (OTA) television simulator with Raspberry Pi and Python - hackaday.io, YouTube and GitHub.
Using the Adafruit LED animations library for cool, easy, fun LED animations (CircuitPython School) - YouTube.
Ubuntu 24.10 is making preparations for the Raspberry Pi Compute Module 5 - Phoronix.
You can make a customizable robotic head with Raspberry Pi Pico - XDA and GitHub.
The 28 talks fom Espressif DevCon early this month are now online - YouTube.
How to use CircuitPython with the Raspberry Pico 2 - OpenELAB.
Pico W air quality monitoring with a PM 2.5 sensor for Python, MicroPython and CircuitPython, updated - GitHub via X.
CircuitPython has merged support for the Makerdiary iMX RT1011 Nano Kit, a high-performance microcontroller board with Arm Cortex-M7 @ 500 MHz - Makerdiary.
Though the Casio CG50 calculator has a MicroPython app, its version is a bit old (1.9.4). Fortunately, KhiCAS includes a newer MicroPython version (1.12) with additional useful modules. Press Shift + Menu (Set Up) and select MicroPython in the pop-up menu to activate it - X Thread.
Service Awards given by the PSF: what are they and how they differ - Python Software Foundation.
PSoC6: Sending IoT Push Notifications: WiFi with MicroPython - hackster.io.
Use a pair of round displays to compare the performance of the XIAO RP2040 and XIAO RP2350 - hackster.io.
CircuitPython Web Workflow cancel upload warning - YouTube.
A spacey PCB and case (from kit) with the IFK Vanir (the key dot co x infinikey) keycaps and an RP2040 running CircuitPython and KMK - Mastodon.
Microsoft unveils Python Data Science Extension Pack for Visual Studio Code - InfoWorld.
Departure Mono is a monospaced pixel font inspired by the constraints of early command-line and graphical user interfaces, the tiny pixel fonts of the late 90s/early 00s, and sci-fi concepts from film and television - GitHub and Site.
And don’t forget Custom Fonts for CircuitPython Displays.
New
Pimoroni Pico Plus 2 W features mysterious ‘Raspberry Pi RM2’ Wi-Fi chip - Tom’s Hardware.
“…the icing on the cake is the Raspberry Pi RM2 module which looks like an ESP32 type package but inside the module is an Infineon CYW43439. This is the same chip as used in the Raspberry Pi Pico W, and that means we should be able to get online with just a few lines of MicroPython. The Raspberry Pi RM2 also provides Bluetooth connectivity.”
Pimoroni introduces their RP2350B-based Pico 2 W with a status LED and a Raspberry Pi RM2 added for WiFi. 16MB flash, 8MB PSRAM - Pimoroni.
Cytron Motion 2350 Pro review: the RP2350 robot platform - Tom’s Hardware.
“Coming preloaded with CircuitPython is a recurring, and smart move by Cytron.”
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.
There were no new boards added this week.
Note: For non-Adafruit boards, please use the support forums of the board manufacturer for assistance, as Adafruit does not have the hardware to assist in troubleshooting.
Looking to add a new board to CircuitPython? It’s highly encouraged! Adafruit has four guides to help you do so:
New Learn Guides
The Adafruit Learning System has over 3,000 free guides for learning skills and building projects including using Python.
Qualia S3 iOS Photo Display with itsaSNAP from Liz Clark
LEGO-Compatible Servo Mounts from Ruiz Brothers
Adafruit Feather RP2350 with HSTX from Liz Clark
CircuitPython Libraries
The CircuitPython library numbers are continually increasing, while existing ones continue to be updated. Here we provide library numbers and updates!
To get the latest Adafruit libraries, download the Adafruit CircuitPython Library Bundle. To get the latest community contributed libraries, download the CircuitPython Community Bundle.
If you’d like to contribute to the CircuitPython project on the Python side of things, the libraries are a great place to start. Check out the CircuitPython.org Contributing page. If you’re interested in reviewing, check out Open Pull Requests. If you’d like to contribute code or documentation, check out Open Issues. We have a guide on contributing to CircuitPython with Git and GitHub, and you can find us in the #help-with-circuitpython and #circuitpython-dev channels on the Adafruit Discord.
You can check out this list of all the Adafruit CircuitPython libraries and drivers available.
The current number of CircuitPython libraries is 497!
Updated Libraries
Here’s this week’s updated CircuitPython libraries:
Library PyPI Weekly Download Stats
Total Library Stats
- 210,781 PyPI downloads over 333 libraries
Top 10 Libraries by PyPI Downloads
- Adafruit CircuitPython Requests (adafruit-circuitpython-requests): 16,481
- Adafruit CircuitPython BusDevice (adafruit-circuitpython-busdevice): 15,908
- Adafruit CircuitPython ConnectionManager (adafruit-circuitpython-connectionmanager): 14,760
- Adafruit CircuitPython Register (adafruit-circuitpython-register): 2,781
- Adafruit CircuitPython ADS1x15 (adafruit-circuitpython-ads1x15): 2,029
- Adafruit CircuitPython MiniMQTT (adafruit-circuitpython-minimqtt): 1,862
- Adafruit CircuitPython Pixelbuf (adafruit-circuitpython-pixelbuf): 1,712
- Adafruit CircuitPython Display Text (adafruit-circuitpython-display-text): 1,640
- Adafruit CircuitPython ESP32SPI (adafruit-circuitpython-esp32spi): 1,611
- Adafruit CircuitPython Seesaw (adafruit-circuitpython-seesaw): 1,565
What’s the CircuitPython team up to this week?
What is the team up to this week? Let’s check in:
Dan
I’ve been debugging why cameras are not working with the new ESP-IDF I2C driver. I’ve eliminated some causes. It may also not be due to the I2C change at all, but a lot of debugging is about eliminating possible causes.
Jeff
Besides trying all kinds of hardware with the Adafruit Feather RP2350 and the Pico 2, I have also been making small improvements here and there. One example is the addition of the “public label” feature of pioasm
: this advanced feature can be used if Python code needs to cause the PIO state machine to jump to a specifed spot in its instruction list based on something that occurs in the Python code.
Scott
This week I’ve continued working on CircuitMatter. The “interaction model” layer had uncovered some lower level encoding issues that needed to be fixed. Now I have reading an attribute and invoking a command working. I’m working to implement the command used to fetch certificates used to validate the device before it is commissioned.
Liz
This week I published two new guides. The first is for the Feather RP2350 with HSTX. This is the first Adafruit board with the new RP2350 chip. I made sure to include pages on PWM and I2S audio with CircuitPython since audio projects have been very popular with the Raspberry Pi chips. Be sure to check it out if you’ve been waiting for that guide.
I also worked on an exciting project. I built a Qualia S3 iOS Photo Display with itsaSNAP. This project uses the new Adafruit iOS itsaSNAP app to use an Apple Shortcut to send photos from your iOS device to an Adafruit IO feed and then display them on a 720x720 round display. If you haven’t tried out itsaSNAP yet and you are into IoT projects, you definitely should. With the Apple Shortcuts integration, it really opens up project options with Adafruit IO and CircuitPython. I’ve become hooked on trying out different Shortcuts and seeing how I can log different types of data.
Upcoming Events
Maker Faire Bay Area returns to Mare Island Naval Shipyard on October 18-20, 2024 - Maker Faire.
The next MicroPython Meetup in Melbourne will be on October 23rd – Meetup. You can see recordings of previous meetings on YouTube. September’s meeting notes are here.
Hackaday Superconference is an epic gathering of hardware hackers, makers, and tech enthusiasts happening November 1-3 in Pasadena, California - Hackaday and Eventbrite.
PyCon AU will be held from the 22nd to the 26th of November at the Melbourne Convention and Exhibition Centre (MCEC) in Narrm/Melbourne. Matt Trentini and Damien George will both be presennting on MicroPython - PyCon AU.
PyLadies Conference (PyLadiesCon) is a transformative event designed to promote diversity, learning, and empowerment within the Python community. December 6-8, 2024 online - PyLadies.
Send Your Events In
If you know of virtual events or upcoming events, please let us know via email to cpnews(at)adafruit(dot)com.
Latest Releases
CircuitPython’s stable release is 9.1.4 and its unstable release is CircuitPython 9.2.0-beta.0. New to CircuitPython? Start with our Welcome to CircuitPython Guide.
20240924 is the latest Adafruit CircuitPython library bundle.
20240926 is the latest CircuitPython Community library bundle.
v1.23.0 is the latest MicroPython release. Documentation for it is here.
3.12.6 is the latest Python release. The latest pre-release version is 3.13.0rc2.
4,063 Stars Like CircuitPython? Star it on GitHub!
Call for Help – Translating CircuitPython is now easier than ever
One important feature of CircuitPython is translated control and error messages. With the help of fellow open source project Weblate, we’re making it even easier to add or improve translations.
Sign in with an existing account such as GitHub, Google or Facebook and start contributing through a simple web interface. No forks or pull requests needed! As always, if you run into trouble join us on Discord, we’re here to help.
38,333 Thanks
The Adafruit Discord community, where we do all our CircuitPython development in the open, reached over 38,333 humans - thank you! Adafruit believes Discord offers a unique way for Python on hardware folks to connect. Join today at https://adafru.it/discord.
ICYMI - In case you missed it
Python on hardware is the Adafruit Python video-newsletter-podcast! The news comes from the Python community, Discord, Adafruit communities and more and is broadcast on ASK an ENGINEER Wednesdays. The complete Python on Hardware weekly videocast playlist is here. The video podcast is on iTunes, YouTube, Instagram), and XML.
The weekly community chat on Adafruit Discord server CircuitPython channel - Audio / Podcast edition - Audio from the Discord chat space for CircuitPython, meetings are usually Mondays at 2pm ET, this is the audio version on iTunes, Pocket Casts, Spotify, and XML feed.
Contribute
The CircuitPython Weekly Newsletter is a CircuitPython community-run newsletter emailed every Monday. The complete archives are here. It highlights the latest CircuitPython related news from around the web including Python and MicroPython developments. To contribute, edit next week’s draft on GitHub and submit a pull request with the changes. You may also tag your information on Twitter with #CircuitPython.
Join the Adafruit Discord or post to the forum if you have questions.