Submind YouTube summaries
Thumbnail for CircuitPython Weekly Meeting for August 17, 2026 #adafruit

CircuitPython Weekly Meeting for August 17, 2026 #adafruit

Watch on YouTube

Video summary

The August 17, 2026 CircuitPython weekly meeting serves as a comprehensive gathering for the community to discuss developments in Python running on microcontrollers. Hosted by Scott from Adafruit, the session covers various aspects of the ecosystem, starting with community news that highlights recent projects like Open Bricks, an open-source firmware for ESP32 devices offering advanced robotics capabilities. The meeting also announces CircuitPython Day on August 21st, a special event featuring live streams and demos, while sharing updates on Python 3.15 features such as lazy imports and improved error messages. Attendees are encouraged to engage with the community through the Adafruit Discord server, where they can access shared notes, submit status reports, and stay informed about upcoming events. A significant portion of the discussion focuses on the quantitative health of the CircuitPython project, including its core libraries and the Blinka compatibility layer. The team reported that the core library bundle contains 396 libraries while the community bundle holds 180, totaling 576 distinct Python libraries supporting various hardware. Although activity in the libraries section was quiet with only one pull request merged recently, the project remains stable with a manageable number of open issues and pull requests. The meeting also addressed the state of Blinka, which enables CircuitPython APIs on Linux single-board computers, noting that while no new pull requests were merged last week, the supported board count stands at 174. Contributors are invited to review existing code or submit their own improvements via GitHub, with guidance available through learn guides and Discord support. The session included "hug reports" where community members recognized each other's contributions, such as optimizing game engines for the Pico, developing audio effects for guitar pedals, and improving board definitions for new hardware like the ESP32 S3 dev kit. Status updates followed, with Scott detailing recent merges for BLE bonding and Zephyr USB HID support, alongside plans to create a board definition for the Adafruit CLUE. Dan provided an update on debugging BLE workflows across different Linux distributions and discussed the progress toward releasing CircuitPython 10.3.0, emphasizing quality improvements over minor feature additions. Foamy Guy shared his work on adding mass storage support to the Teenage Engineering SP-1 device and preparing a proper audio driver for inclusion in the core bundle. The meeting concluded with a wrap-up that reinforced the importance of community collaboration and encouraged attendees to participate in upcoming events, particularly CircuitPython Day. Scott reminded everyone that the next regular meeting would take place on Monday at 2:00 p.m. Eastern time, with notifications available via Discord for those who wish to be alerted to schedule changes. The team expressed excitement about the live streams planned for Friday, which will include discussions with key developers and a boot loader podcast. As always, the group thanked everyone for joining and invited supporters to purchase hardware from Adafruit to help sustain their work on CircuitPython and related projects.
Read the full video transcript
Hello everyone. This is the Circuit Python weekly meeting for August 17th, 2026. It's the time of the week where we get together to talk about all things Circuit Python. I'm Scott and I'm sponsored by Adafruit to work on Circuit Python. Circuit Python is a version of Python designed to run on tiny computers called microcontrollers. Circuit Python development is primarily sponsored by Adafruit. So, if you want to support Adafruit and Circuit Python, consider purchasing hardware from adafruit.com. This meeting is hosted on the Adafruit Discord server. You can join anytime by going to the URL adafruit.it/discord. We hold the meeting in the Circuit Python dev text channel and the Circuit Python voice channel. This meeting typically happens on Mondays at 2:00 p.m. Eastern, 11:00 a.m. Pacific, except when it coincides with a US holiday. In the notes doc, there's a link to a calendar you can view online or add to your favorite calendar app. We also send notifications about upcoming meetings via Discord. If you would like to receive these notifications, ask us to add you to the @circuitpython Nices Discord role. There is a shared notes document that accompanies the meeting and recording. You can contribute to this document beforehand. The final notes document includes timestamps to go along with the video, so you can use the doc to skip around and view the parts of the video that interest you most. The meeting tends to run 30 to 60 minutes. After each meeting, we post a link to the next meeting's notes document to the Circuit Python dev channel on the Adafruit Discord. Check the pinned messages to find the latest notes doc so you can add your notes to the for the following meeting. If you wish to participate but cannot attend, you can leave your hug reports and status updates in the doc for us to read during the meeting. This meeting is held in five parts. The first is community news. This is a look at all things Circuit Python and Python on hardware in the community. It It's a chosen set of items from our Python on microcontrollers newsletter. The second part is the state of Circuit Python libraries and Blinka. This is a quantitative overview of the entire project. It's a chance to look at the project by the numbers and separate from our status updates. Third part is hug reports. Hug reports is an opportunity to highlight the good things folks are doing, taking the time to recognize the awesome folks in our community. Fourth is status updates. It's an opportunity to report on what you've been up to. Take a couple of minutes and talk about what you've been doing in the last week since the last meeting and what you'll be up to over the next week. Lastly, we have the fifth and final part, which is in the weeds. In the weeds is an opportunity for more long-form discussions. These discussions can come out of status updates or be something you've identified ahead of time as too long for status updates. And that covers how the meeting will go. With that, I will switch to the notes doc and start with community news. So, in community news, I will talk about the newsletter, but this are a few select items from our newsletter, which will cover more in more detail at the end. So, first up, we have Open Bricks, which is a Pybricks-style MicroPython robot firmware for the ESP32. Open Bricks is an open-source MicroPython firmware for the ESP32 S3 that brings a Pybricks-style Python robotics API to commodity hardware, $15 serial bus servos, a spy IMU, reflectance arrays. The motor hot path runs at 1 kHz in native C inside the firmware. Drive base controller, trajectory planner, and gyro heading correction read inside the control tick, which is plus or minus 0.2° per turn on our bench robot versus 3 to 5 degrees with encoder only. Programs cross-compile on the host with MPY cross and upload over BLE. And a MuJoCo-based simulator runs the same firmware API unchanged for hardware-free development. The link to openbricks.dev, Their documentation and GitHub. Sorry for the hiccups. All right. Next up, Circuit Python Day is on Friday, August 21st, 2026. And that's the end of this week. It's that time of year. Adafruit has determined that August 21st, 2026 is the sneakiest day of sneakiest day of this year and is designated it for Circuit Python Day. Adafruit will have special shows and more throughout the day. Tag your projects with #CircuitPythonDay2026 on social media and Adafruit will look to highlight them. Check out the post for the latest schedule which changes as more content is added. Next up, a Circuit Python based guitar pedal, Cooper, aka relic SE, who's in the meeting, has whipped together a demo of a good handful of audio effects available in Circuit Python playing live directly through his prototype DSP guitar pedal. All right. In Python news, uh the best new features of Python 3.15. Highlights of Python 3.15 include lazy imports, faster jit compilation, better error messages, and smarter profiling. A release candidate is now available. All right. Those items come from the newsletter. The Python on Microcontrollers Weekly Newsletter is a Circuit Python community-run newsletter emailed every Monday. The complete archives are available at uh adafruitdaily.com/categories/circuitpython. It highlights the latest Python on hardware related news from around the web including Circuit Python, Python, and MicroPython developments. To contribute your own news or project, email cpnews@adafruit.com and we appreciate all those leads. Okay. Next up, we have the state of Circuit Python Libraries and Blinka. This is a statistical overview of the health of the Circuit Python world broadly. Uh kind of in its three core parts, the Circuit Python core, the libraries, and the Blinka layer. Um so these are stats that we pull every night, and these are for the last 7 days. Uh so overall, uh we had nine pull requests merged from six different authors, so good number of authors, three reviewers. We had three closed issues by two people and five opened by five people, so we're net up a few. Uh within the core, uh we had eight pull requests merged from five different authors. Man, I can't type. Doing time codes at the same time. Uh five different authors. Uh highlights to Mikey Sklar, Relic SE, and Lynn Smika, who are infrequent contributors to Circuit Python core. We have 18 pull requests open. Uh and about half of those are have been quite old, uh but there's a lot of new stuff as well. Uh we're comfortably under our goal of staying under 25, which is a single page's worth on GitHub. I- Issues-wise, uh for the core, we had three closed issues by two people and three opened by three people, so we're net even for 762 open issues. We prioritize those for Adafruit funded folks in a public way using the milestone system. Um and we are currently We have no issues that are not assigned to milestones, so we're on top of triage. Uh we have the long-term bucket. This is stuff that is not a priority for Adafruit, but if you find something in that bucket, um or you bring up an issue and it gets put in that bucket, um we're happy to support folks who are working on that stuff. Uh which means we'll give guidance, and we'll do reviews even if it's not something that we're actively working on. Um the things that are higher priority for us is that we have no open issues on 10.2.x, which is anything that would be critical on the current stable release. Um 10.3.0 will be the next uh minor stable release, and there's 16 open issues there. Uh but I think Dan will give us an update on the state of that. And then uh 40 10x issue xx issues as well, all of which are like ones that would be nice to do, but are not super high priority. So, that's the lay of the core land. Uh let's see if I'll make guy will do the libraries for us. >> Yeah, thanks, Scott. Uh this section covers all of the Circuit Python libraries, which are hosted on GitHub under two different library bundles. The Adafruit library bundle has uh 396 libraries in it right now, and the community library bundle has 180 libraries in it. Uh for a total of 576 different Python libraries that support various pieces of hardware and helper functionality uh on Circuit Python devices. Um across the last 7 days, we had uh not too much action, just one uh pull request merged by one author. Thanks to GR Grant uh for the PR this week, and thanks to Scott for the review. Uh the merged pull request was 7 days old, uh so that was both oldest and newest. That leaves us right now with 42 pull requests open. Uh the oldest one of those is a draft that's at 1460. The newest one is 1 day old. And then uh issues-wise, uh also quiet last week. Zero issues closed by zero people, two new issues opened up by two people, uh leaving us with 779 open issues, and there are two of those that are labeled good first issues. You can find those uh listed over at circuitpython.org/contributing, uh which is the website where you should head if you're interested in contributing to Circuit Python on the Python side of things. Uh when you first load that page, you'll find a list of open PRs and open issues. Uh if you want to get started contributing, this is a great place to start. Usually, the first place that we point folks is reviewing. If you don't already have an idea of what you want to do, then you can take a look at that list of open PRs, and you can go through there, find something that interests you, that catches your eye, that you have the hardware for or some interest in, click through to GitHub, read about what the PR is, and then you can look over the code for spelling, syntax, logic, anything like that. If you do have the hardware, you can test it out, and then leave a comment on GitHub letting us know how it went. What did you find when you looked it over? If you were able to test it out, how did that go? Once you get comfortable with that process, doing reviews by leaving those comments on GitHub, if you'd like to get leveled up to join our review team, we can add you to that, which will get you some additional notifications and stuff on GitHub to make it easier to find stuff that is in need of review. If you would like to get started submitting some of your own code, you can click over to the issues tab. You will find a similar looking list of links to GitHub, but these ones represent issues. They don't have a proposed change yet. You could be the person to make that proposed change if it sounds like something that you'd like to work on. So, you could read up on the issue, and then you'd be submitting your own PR to resolve that. We do have a learn guide for contributing Circuit Python using Git and GitHub, and we also have folks who are happy to help you out here on the Discord. So, if you'd like to get involved, but you're having trouble with any part of the process, reviewing or contributing, just come say hi on the Discord, let us know what you're up to, and somebody will be happy to help you out. We want everyone to be able to contribute in whatever way works for them, and I'll leave you with library updates. PyBadger's the only one listed here, but I do know there were a handful of others, so I think these stats might not work, but I will mention here that the bundle was not updated for a couple weeks, I think, around 2 weeks or so. I was heads down on some other stuff, forgot to do releases for the last couple of weeks. So, if anyone did have a PR merged, or you were interested in a PR that got merged in the last week or two, and you found that that was not in the bundle, that should be there now as of I think Friday or Saturday. So, check back on that if anyone is in that situation. And that's what we have for libraries. Thanks. >> Thanks a lot, Foamy Guy. All right, next up we have Blinka updates. Uh so, Blinka is the CircuitPython API compatibility layer that allows you to use all those libraries that Foamy Guy was just talking about, but not on the CircuitPython core, but rather on Linux single-board computers and MicroPython. So, it presents the same CircuitPython API, but is backed by something else. So, in Blinka land, no pull requests merged, 15 open pull requests, zero issues opened and closed. So, not a lot happening in Blinka land this last week. The number of supported boards was 174. And that's it for Blinka. Okay, next up. The next section we have is hug reports. This is done as kind of a round robin. Um this is a chance for us to say thank you to folks in our community for the awesome work that they're doing. It's great to recognize people, and it's also great to recognize the things that we value as a community. So, I will start, and then I'll go down through the list of folks in the note stock. I will read off anybody who's not in the active voice channel. And I should also say that if you are listening to this after the fact, can't make the meeting normally, feel free to put in note stocks notes hug reports or status updates, which we'll do later in this doc. Happy to read them off even if you can't make the meeting. So, I will start uh with a hug to Smitka for the Pico game PR. Excited to get it in mainline builds for folks to use. This is a an optimized game engine for CircuitPython. And next up, I'll read from Cool Dom, who says, "Hugs to Mikey Sklar and GRGrant for a record-setting turnaround of a new board definition for the ESP32 S3 dev kit C 1.1 and 32 R16 in CircuitPython and in TinyUF2. And with that, I'll kick it over to Dan. >> Okay. Um thanks to relic-security who's been doing a audio work and testing of other people's audio work. Very helpful. Thank you. And thanks to Scott for uh yet more Zephyr additions uh BLE get support, not just advertising and stuff, and then uh USB HID. So, Scott continues to add more and more features to the Zephyr port. >> Thank you, Dan. Next up is FomyGuy. >> All right. I have hug report thanks to relic-security for sharing the CircuitPython uh guitar pedal on uh Discord and YouTube. Definitely check out the video for that if you haven't. Very cool stuff. Thanks also to Smeekha for uh continuing to improve Pico Game and working towards getting it uh into the core with the new PR. Also for a few improvements uh that they made to the web-based level editor that I was playing around with this weekend. Um so, thanks for work on that. That's what I've got. Thanks. >> Neat. Okay, next up I have notes from GR Grants who says hugs to Mikey Sklar for record-setting turnaround on a new board definition. Uh hugs to T. Moser for help in testing multiple Adafruit GPS changes and pointing out a functionality issue with the library currently being addressed. And hugs to Dan H. for seemingly being everywhere at once. Frequently the first to answer newbie questions. And now let's go to relic-security. >> Uh I'm going to thank Mikey Sklar and FomyGuy for helping me get uh USB audio stereo support across the finish line. Uh I kind of set up the foundation for that, but they're really the ones that took it uh, to the finish line there with testing and uh, modifications. Um, I want to thank uh, Scott, sorry, uh, Tanute uh, for helping me out with a lot of great reviews. And uh, Todd Bot for being a great support and really awesome part of the community. And I'm really excited cuz this week we're going on Friday, I believe, we're going to have Circuit Python day and it'll be great to see everybody live streaming and everything. So, very exciting. >> Ah, thank you. Yes. And speaking of Todd Bot, they're the last on the list here who has a hug back to you, Relic SE, for audio and synth IO click removal work and adding feedback filters to echo/freeverb. All right. Next up is status updates. Um, this is a section that runs similarly, so we go through the folks in the list. I will read anybody off who's not here. Um, although there are none of those this week. Um, you can drop your notes in here and we'll read them off here even if you can't make the meeting. This is a chance for you to just say, "Hey, like this is what I'm working what I did last week and this is where I'm going this week." Um, it's great for figuring out how to collaborate uh, and give tips and tricks if somebody's working on something that you've thought about or worked on in the past. It can be really good way to collaborate. So, I will start and then we'll go down the list of folks. So, uh, for me uh, like kind of came up in hug reports, um, BLE bonding and pairing is merged in this morning. Um, this allows you to get secure connections over BLE and and do more things. Um, Zephyr USB HID support is merged in. Um, this allows you in the Zephyr port to act as a mouse and keyboard. Uh, which is exciting as well. Uh, top of my list for today is to make a Zephyr board definition for the Adafruit CLUE. It's an nRF52840 based board. It's It's a built-in display and sensors as well. So, it's going to be kind of like a good testing platform. So, that's number one on my list. Um and then the rest of the week I want to work to get uh BLE workflow working within Zephyr and also tested using the BSim. So, that's that's my work this week and I'll be collaborating with Dan on that. Uh and a note, uh I just bought tickets to go to SuperCon. So, if folks want to hang out with me um and some a lot of other awesome people, um I've been to SuperCon before. It's been a minute. It's been a few years since I have, but I'm very excited to start going to some conferences again. Um and SuperCon looks to be the first one of those. All right. Uh next up, let's hear from Dan. >> Okay. So, I was actually on vacation uh most of last week. Uh so, things are about the same the same space they were before, but I'm trying to finish up uh debugging the BLE workflow. Um there a lot of head-scratching. It turns out that the BLE adapter that was in uh my development machine was rather flaky, probably because of uh the Linux driver for it. And I swapped it out for a much better supported one and all the a lot of the problems got very odd problems went away. So, I'm doing testing with that instead. Um one issue is that on some versions of Linux, there is no what's so-called BLE pairing edge agent. And that's the thing that comes up and says, "Do you want to pair with such and such device?" So, when you first start trying to use a BLE board, you have to pair and bond with it. And it is not necessarily the case that gnome lets you do that. It looks like maybe some other distributions do and we're going to test that thoroughly and document it as needed. It works best on macOS if you want to try it. Um and after once I I'm testing right now on Nordic, which is a very reliable uh BLE implementation, and I'll test it next on Espressive. There may be some like vital things missing from Espressive, which make it impossible, but we'll see. Um the other thing I want to talk about is that we'd like to get 10.3.0, CircuitPython 10.3.0, out. There are like around 15 issues or so left in 10.3.0. Um most of those could be deferred. They're not showstoppers. They're not regressions. So, uh we may put them we'll we may push them forward so we can get a new stable release out. Um my emphasis on this release has been a lot of sort of quality and stability improvements in various ways, and I think we succeeded at that. And the other things left to do are kind of point fixes. So, that's uh hopefully you'll see a 10.3.0 final in the not in the in the in the near future. And that's it. >> Sounds great, Dan. That's That sounds like a good uh goal for CircuitPython Day on Friday. So, 10.3 out. Um all right, last up, let's go to Foamy Guy. >> All right, thank you. Um I have been mostly heads down working on CircuitPython support for the Teenage Engineering SP-1. Um that has been going pretty well. I have uh audio proof of concept with four-track playback uh using the little fader uh l- uh slider bars on this device to um move up and down the the the level of each of the tracks, which is kind of the out of box functionality of this device. It has a 4 GB eMMC chip on it, which originally uses like a custom loader and a custom format. And towards the latter part of last week, what I was working on was getting that formatted as fat instead with a file system and having it mount as mass storage when you plug this device into your computer so that you can actually just copy-paste regular old standard wave files onto it. And you don't need the special loader and you don't need the special format anymore. And that's working out pretty well, which is really cool. I think that's a big improvement in kind of like how you can use this device, honestly. This week I am going to be doing lots of cleanup in the core to get things shaped up there to submit a PR with support for this. I need to also make a proper audio driver. What I have right now is just kind of a quick and dirty bit banged one one file script thing that's not not a proper driver, so to speak. So, I need to get that cookie-cuttered and then get a proper driver set up and get that added to the bundle. And then I would also like to get a start on the learn guide this week. And I'm hoping to kind of wrap the guide up next week with the video and the last couple of things to finish it off. Over the weekend, the other thing that I did look into a little bit was getting back into the Pico game world. I took a look at the latest commits, got my branch updated and the builds going so that I could update my fruit jam. And I looked at all of the demos and example code and was brainstorming some for what game that I want to make for the game jam stream that I will do on Circuit Python day. And I am starting to narrow in on an idea for that. If folks are interested, you can watch my stream VOD from this past weekend. Um but I will not spoil it here. You you also check out the stream on uh Friday if you're interested in Pico game and uh game stuff. Um so that is what I'm up to. Thanks. >> Thank you so much, Foamy Guy. All right. Uh that's it for status updates. Uh next session is in the weeds, but we don't have any topics this week. Uh so we'll go straight to the wrap-up. Uh or I should say just for those of you who missed it, in the weeds is a chance for any longer form discussions if folks have questions about how things should be done or why things are done a particular way, that's great thing for in the weeds. Um but now let's wrap it up. So this has been the Circuit Python weekly meeting for August 17th, 2026. Thank you all for joining. Um if you want to support Adafruit and Circuit Python and those of us that work on Circuit Python, consider purchasing from the Adafruit shop at adafruit.com. The video of this meeting will be released on YouTube at youtube.com/adafruit and the podcast is available where podcasts are available. It will also be listed in the Python for microcontrollers newsletter. You can visit adafruitdaily.com to subscribe to that. I will double-check that we are on normal Discord meeting next week. So next week will be the usual time next Monday at 2:00 p.m. Eastern and 11:00 a.m. Pacific. Um the meeting is held on the Adafruit Discord, which you can join anytime by going to the URL adafru.it/discord. To be notified about the meeting and any changes to the time or day, you can ask to be added to the @circuitpythonistas role on Discord. I will just plug one more time uh that we have a bunch of streams happening on Friday for Circuit Python Day. Um this is something we do every year. Um all of our kind of like regular Adafruit shows get aligned there, plus we have some some uh uh new shows that we don't normally do, like a discussion with Dan and Tim and I Um and there's a boot loader podcast that that will be done live as well. Um, you can check the blog post there for for info on that. I I think it starts at like 8 or 9 a.m. Pacific with the 3D Hangouts. That so so join the Discord, follow along all day. It's going to be a blast. I'm excited to see all of the demos and things that our folks are working on. So, we'll uh hope to see everybody on Friday for Circuit Python Day and then next week on Monday for the normal meeting time. Thank you everybody.