View this email in your browser.
Welcome to the latest Python on Microcontrollers newsletter! Folks are coming to a surprising conclusion: running their project code on the new RP2350 micirocontroller works better than on the RP2040. Ok, maybe not a surprise, but a confirmation of initial speed up estimates. New versions of CircuitPython add ten new boards and fix some bugs. And the budget Raspberry Pi 5 2GB is out – does it work for your use case? Check out the testing in today’s linked articles. All that and so much more in this packed edition. Cheers! – 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:
The 2GB Raspberry Pi 5 is on Sale Now for US $50 – How Does It Stack Up?
Raspberry Pi has launched the 2GB Raspberry Pi 5, built on a cost-optimised D0 stepping of the BCM2712 application processor, and it’s priced at just $50 – Raspberry Pi News.
Raspberry Pi 5’s new 2GB model benchmarked: Do you need 2, 4, or 8GB? Tom’s Hardware tests the 2GB against the 4 and 8GB versions – Tom’s Hardware.
How much can a 2GB Raspberry Pi handle? Adrian Kingsley-Hughes puts it to the ultimate test – ZDNet.
CircuitPython 9.1.2 and 9.2.0 Alpha 2351 Released
CircuitPython 9.1.2 is the latest bugfix revision of CircuitPython and is a new stable release – Adfafruit Blog and GitHub Release Notes.
Highlights of this release
- Fix Adafruit FunHouse build, which was not working.
- Correct pins for Adafruit Feather ESP32-C6.
- Allow wider range of counts for
Counter
, FrequencyIn
, and IncrementalEncoder
.
- Prevent crash or hang on nRF boards when stopping VM and BLE is not running.
CircuitPython 9.2.0-alpha.2351 is an alpha release for 9.2.0. It has significant known bugs, and will have further additions and fixes before the final release of 9.2.0 – Adafruit Blog and GitHub Releases Page.
Highlights of this release
- Fix the Adafruit FunHouse build, which was not working.
- Correct pins for Adafruit Feather ESP32-C6.
- Prevent crash or hang on nRF boards when stopping VM and BLE is not running.
- Many new RP2350 boards.
- Update to Espressif ESP-IDF V5.3.
- Merge MicroPython updates from v1.22.2.
Notable changes in 9.2.0 from 9.1.x
- Raspberry Pi RP2350 support.
- Update to Espressif ESP-IDF V5.3.
- Merge MicroPython updates from v1.22.2.
Inside the Raspberry Pi RP2350
The first view of a Raspberry Pi RP2350 chip die (the RP2350B version) has been posted by Lennert – X.
What’s inside the Raspberry Pi Pico 2’s RP2350? Les Pounder takes a thorough look at all the specs and capabilities – Tom’s Hardware.
CircuitPython Projects Benefit from the Raspberry Pi RP2350
Two projects this week have shown the benefits of using the new RP2350/Pico 2 with CircuitPython:
Tod Kurt’s algorithmic music generator uses a rotary encoder, a round TFT, and an I2S DAC on the Pico 2 running CircuitPython – Mastodon, YouTube and Adafruit Show & Tell.
Mark Komus uses a Pico 2 and CircuitPython to upgrade a video googly eye project from a couple years ago. With an RP2040, Mark got 60 frames per second, with the RP2350 120 frames per second, allowing for smoother video – Mastodon and GitHub.
Commparing the Raspberry Pi Pico vs. the Pico 2 with MicroPython
A comparison using the Raspberry Pi Pico verses the Pico 2 (Cortex M33 and RISC-V) with MicroPython (1.24.0 beta) – lucstechblog.
Reviewing the Radxa X4 SBC: A Perfect Raspberry Pi-Sized Mini PC?
The Radxa X4 is a pretty cool single board computer with an Intel N100 chip. Maker by Mistake compares the X4 to traditional a Mini PCs and a Raspberry Pi 5 to find out if it is the SBC everyone has been asking for – YouTube.
Raspberry Pi Pico 2 for CircuitPython Day – A Live Hack Chat
Hackster’s Alex Glow and special guest David Groom stream looked into the new Pi Pico 2, powered by Raspberry Pi’s recently unveiled RP2350 chip. Expect nerdy chaos in this full getting started video tutorial – Adafruit Blog and YouTube.
How to Access Linux Ext4 partitions in Windows using WSL (great for reading Raspberry Pi microSD cards)
If you use Linux and Windows in your life, you’ll notice one huge point of frustration: Windows can’t read Linux partitions, which are typically in the ext4 or ext3 file format. The lack of ext4 / ext3 support is a particularly big problem for Raspberry Pi fans. Now you can use WSL (Windows Subsystem for Linux) for working with them thanks to a tutorial at Tom’s Hardware.
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 bisecting CircuitPython bugs.
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 is off this week. Catch all the episodes in the YouTube playlist.
CircuitPython Weekly Meeting
CircuitPython Weekly Meeting for August 19, 2024 (notes) on YouTube.
Project of the Week: An LED Matrix Flight Tracker
Maker and developer Wesley G Mitchell has put together a Raspberry Pi and Python powered flight tracker that outputs to a custom matrix display – Reddit, GitHub and Tom’s Hardware.
Popular Last Week
What was the most popular, most clicked link, in last week’s newsletter? A closer look at Raspberry Pi RP2350’s HSTX high-speed serial transmit interface.
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.
Feather TFT gamepad tester with sprites – Adafruit Playground.
Wii Nunchuck BLE adapter – Adafruit Playground.
Storing & graphing IoT data with PostgREST – Adafruit Playground.
News From Around the Web
Tachyon is a powerful new 5G cellular single-board computer, with an AI accelerator, by Particle with a past goal Kickstarter. Particle is teaming with Adafruit with the Adafruit CRICKIT Robotics HAT, plus free Adafruit IO for all Tachyon backers – Adafruit Blog and Kickstarter.
A look at measuring current and the associated voltage drop for periperhals powered by a wide range of microcontroller boards using power pins and GPIO using CircuitPython and MicroPython (and Arduino C/C++) test programs, plus a closer look at voltage drop over USB and spiky servo current – Instructables.
A Raspberry Pi Pico 2 powered Virtual Pet with a 1.3” OLED display and MicroPython – KevsRobots.
The Pi Cast (8/20/2024) features the new Pico 2 products from Pimoroni – YouTube.
Combining a Raspberry Pi with an eInk display and Python to make the perfect photo frame – XDA.
Making a retro Pico and MicroPython powered incandescent lamp – Raspberry Pi News.
77 MicroPython LED strip effects for the Pimoroni Plasma 2040 and their 66 star LED strip – GitHub.
The PicoDVI project (bitbanging DVI video on a Rp2040) has been updated to take advantage of the RP2350 including Cortex M33 optimizations and RISC-V – GitHub.
Implementing a basic user authentication system with Flask, MongoDB and Python – YouTube and GitHub code.
A badge for PyLadies Dublin with an Adafruit PyBadge and CircuitPython – X.
A series of articles about using MicroPython to control radio transmitters, receivers, and transceivers – Medium.
Getting started with RP2350-based W5100S-EVB-Pico2 and MicroPython – WIZnet Makers.
A labrynth game in MicroPython for ESP32 – Wokwi via X.
“A big thanks to everyone who made EuroPython 2024 a success this past July! Whether in person, online, or helping to organize, your energy and passion made it all possible” – EuroPython.
Add a NeoPixel light strip to a Circuit Playground Express with CircuitPython – YouTube.
Why you should install Python apps with pipx
(and how to get started) – How-to Geek.
How to build good coding habits as a new Python developer – freeCpdeCamp.
10 Python programming optimization techniques – dev.to.
New
Bringing WiFi to the Raspberry Pi RP2350B via a custom dev board and ESP32 – Tom’s Hardware.
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 ten new boards added:
Note: For non-Adafruit boards, please use the support forums of the board manufacturer for assistance, as Adafruit does not have the hardware to assist in troubleshooting.
Looking to add a new board to CircuitPython? It’s highly encouraged! Adafruit has four guides to help you do so:
New Learn Guides
Visual Studio Code for Education… and CircuitPython from Anne Barela
Blinka LED Sign from Ruiz Brothers
Instagram Photo Frame from John Park
Adafruit RS-232 Full Pinout Level-Shifter Breakout 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 493!
New Libraries
Here’s this week’s new CircuitPython libraries:
Updated Libraries
Here’s this week’s updated CircuitPython libraries:
Library PyPI Weekly Download Stats
Total Library Stats
- 125,029 PyPI downloads over 333 libraries
Top 10 Libraries by PyPI Downloads
- Adafruit CircuitPython Requests (adafruit-circuitpython-requests): 9,724
- Adafruit CircuitPython BusDevice (adafruit-circuitpython-busdevice): 9,641
- Adafruit CircuitPython ConnectionManager (adafruit-circuitpython-connectionmanager): 8,561
- Adafruit CircuitPython Register (adafruit-circuitpython-register): 1,928
- Adafruit CircuitPython ADS1x15 (adafruit-circuitpython-ads1x15): 1,708
- Adafruit CircuitPython DHT (adafruit-circuitpython-dht): 1,317
- Adafruit CircuitPython MiniMQTT (adafruit-circuitpython-minimqtt): 1,113
- Adafruit CircuitPython framebuf (adafruit-circuitpython-framebuf): 1,010
- Adafruit CircuitPython SSD1306 (adafruit-circuitpython-ssd1306): 982
- Adafruit CircuitPython Display Text (adafruit-circuitpython-display-text): 841
What’s the CircuitPython team up to this week?
What is the team up to this week? Let’s check in:
Dan
I released CircuitPython 9.1.2 and also 9.2.0 Alpha 2351 last week. The 9.1.2 release contains some important fixes for certain boards. The 9.2.0 Alpha release includes those fixes and others, adds a bunch of new RP2350 boards, and also updates to Espressif ESP-IDF v5.3. And finally, I’ve finished the merge from MicroPython v1.22, which is also in the Alpha release.
Coming up, I’ll start the MicroPython v1.23 merge, and also investigate some newly reported bugs.
Melissa
On CircuitPython Day, the video I created was premiered and it worked out nicely. I also worked on some bugs on the CircuitPython Code Editor.
Tim
In addition to my usual weekly library maintenance tasks, this week I troubleshooted an issue in Adabot with the commands that generate the reports that we read out during the weekly meetings. I’m also testing a Qualia S3 project to attempt to recreate an issue submitted by learn guide user feedback.
Scott
I’ve gotten sucked back into ESP-IDF land. I was debugging a reset issue on the S3 and decided to update the IDF to 5.3 as well. Unfortunately, it didn’t fix the bug. So, I’ve been digging to figure out what the issue is. I’ll be out off and on next week because we have family in town.
Liz
Since my last update we had CircuitPython Day 2024. Thank you to everyone who participated! I was involved in organizing the livestreams and prerecorded videos for the day. In case you missed anything, we have a playlist with all of the Adafruit videos in the order that they aired.
For guides, I wrote up the RS-232 Full Pinout Level-Shifter Breakout. This breakout has a DE-9 connector onboard for directly plugging into RS-232 gear. I wrote example code in both CircuitPython and Arduino that lets you use the Serial Console to communicate with an RS-232 device. A big thanks to Anne for rounding out the guide with her knowledge of RS-232.
Upcoming Events
The next MicroPython Meetup in Melbourne will be on August 28 – Meetup. You can see recordings of previous meetings on YouTube. The July 2024 Video.
Espressif DevCon24 will be held Sep 3-5, 13:00-18:00 CEST. Call for presentations now – Espressif.
Maker Faire Bay Area returns to Mare Island Naval Shipyard on October 18-20, 2024 – Maker Faire.
Hackaday Superconference is an epic gathering of hardware hackers, makers, and tech enthusiasts happening November 1-3 in Pasadena, California – Hackaday and Eventbrite.
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.2 and its unstable release is 9.2.0-alpha.2351. New to CircuitPython? Start with our Welcome to CircuitPython Guide.
20240822 is the latest Adafruit CircuitPython library bundle.
20240817 is the latest CircuitPython Community library bundle.
v1.23.0 is the latest MicroPython release. Documentation for it is here.
3.12.5 is the latest Python release. The latest pre-release version is 3.13.0rc1.
3,996 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,258 Thanks
The Adafruit Discord community, where we do all our CircuitPython development in the open, reached over 38,258 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.