 Hello, everyone. This is the CircuitPython Weekly Meeting for August 21, 2023. This is the time of the week where we get together to talk about all things CircuitPython. My name is Tim. I am sponsored by Adafruit to work on CircuitPython. CircuitPython is a version of Python that's designed to run on tiny computers called microcontrollers. The CircuitPython development is primarily funded by Adafruit, so if you want to support Adafruit and CircuitPython, consider purchasing hardware from Adafruit.com. This meeting is hosted on the Adafruit Discord server. You can join any time by going to adafruit.it slash discord. We hold the meeting in the CircuitPython dev text channel as well as the CircuitPython voice channel. This meeting typically occurs on Mondays at 2 p.m. Eastern, 11 a.m. Pacific time, except when that coincides with a U.S. holiday. In the note stock near the top, there is a link to a calendar which you can view online or add that to your favorite calendar app. That will get it synced up with your personal calendar if you want the meetings to be listed in there. We also do send out notifications about the upcoming meetings via Discord. If you'd like to receive those notifications, you can ask to be added to the CircuitPythonistas role over on Discord. There is a note stock that accompanies the meeting. The final notes document indicates time stamps to go along with the meeting, so you can use that document to skip around and view the parts of the video that interest you most. The meeting tends to run about 30 to 60 minutes. After each meeting, we'll post a link for the next meeting's notes document over in that CircuitPython dev channel on the Adafruit Discord. You can always check the pinned messages in that channel to find the latest notes doc, and you can add your hug reports and status updates or in the weeds topics throughout the week if you would like as well. Once that gets pinned, usually shortly following the meeting, then you are free to start filling in stuff for the next week. The meeting is going to be held in five parts. The first part will be community news. That's a look at the CircuitPython and Python on hardware newsletter, which comes out on Mondays now, so we'll see a couple of the items from that. The second part is the state of CircuitPython, the libraries and Blinka. That one is a quantitative overview of the entire project. It's a chance to look at the project by the numbers separate from all of our status updates. And the next part, the third part of the meeting is hug reports. That is an opportunity to highlight the good things that folks are doing. Take a moment to recognize the awesome folks in our community and beyond. The fourth part is for status updates. That is the second of our round robins, along with hug reports. During status updates, you'll have an opportunity to report on what you've been up to. You can take a couple of minutes, tell us about what you have been doing since the last meeting last week, as well as what you anticipate you'll be doing over the course of the next week until the next meeting. The fifth and final part is called in the weeds. In the weeds is an opportunity for more long form discussions. Those can be things that come out of status updates or they can be identified ahead of time as too long for status updates. So that is how the meeting is going to go. So next up, we will get into community news. I will take the first timestamp here. So our first item in the newsletter, which should have, I believe, been sent out earlier today. So that first item was Circuit Python 8.2.3 was released. The Circuit Python 8.2.3 version is the latest bug fix revision of Circuit Python. And it's the new stable release. There is a link here in the notes that will take you over to the Adafruit blog, as well as another link for the release notes. And there was a short list of notable changes since the prior stable release, which was 8.2.2. And the main item that's there is improvements in the RGB matrix timing for the SAMD 51 or 5X it says here. So better support for RGB matrix, it sounds like, is the main update there in 8.2.3. Next up, we have getting Linux running on an ESP32S3. Lady Aida at Adafruit has been hacking on a community project to get a version of Linux running on an ESP32S3 microcontroller. She's had success using Docker to run Linux builds when other methods have had issues. Now Wi-Fi and a number of other features work under Linux. There is a link here to check that out on YouTube if you would like to see more about that project. Next up is big European companies have formed a risk five venture. The risk five open instruction set architecture got a boost today after it emerged that five chip giants are coming together jointly invest in a companies to develop reference architectures based on the standard. The new entity will be formed in Germany with investment from Infineon Technologies, Qualcomm, NXP Semiconductors, Bosch and Nordic Semiconductor with the aim of speeding up the commercialization of future products based on open source risk five architecture. There is a link here to an article in the register if you would like to learn more about that. And a couple more that we have our projects for the week. In fact, the project of the week was recreating the Tars robot from Interstellar. Charlie Diaz created, excuse me, describes making a miniature version of the robot Tars from the movie Interstellar. That one's linked over on Haxter IO. And the final newsletter item, which caught my eye this week was the Pico W Bluetooth controller. Kevin McAlar has made their first PCB, which is a Bluetooth controller that uses a Raspberry Pi Pico W and it is programmed in MicroPython. I thought this was really neat for a first PCB project for sure to have the Pico mounted there in the handheld controller. Super cool design. So all of these items were from the CircuitPython Weekly newsletter. Let me tell you just a moment about that. The CircuitPython Weekly newsletter is a community run newsletter that's emailed every Monday. The complete archives of that newsletter are available on AdafruitDaily.com. It highlights the latest Python on hardware related news from around the web, including CircuitPython, Python and MicroPython developments. You can contribute your own news or projects if you would like, and it is much appreciated. To do so, you can either edit next week's draft on GitHub, which is linked here in the Notestock, or so you can submit a pull request, editing that draft file. Another thing that you can do is tag a tweet with hashtag CircuitPython on Twitter or email over to cpnews at Adafruit.com. You submit projects and ideas for the newsletter. Next up, we will get into the state of CircuitPython libraries and Blinka. Let's see here. Let me catch up on this one. Yes. Okay, so the state of CircuitPython libraries and Blinka is a quantitative overview of the entire project gives us a chance to look at the health of the project separate from our status updates. We'll talk about the project overall and then separately discuss the core, the libraries and Blinka. So first up is the overall section, which I'll tell you about. Overall this week we had 13 pull requests merged. Those were from 10 authors. I did not highlight ahead of time. So let me go through and try to do these real quick here. A couple of the names that at least I don't recognize. So these might be newer or less frequent contributors who are certainly much appreciated as are all of the contributors. But those names for this week again that were not recognized by me are Andy being Tyler Crumpton as well as Santis. So thank you to those folks, as well as all of our other more frequent contributors. Across all of those pull requests, there were five reviewers. So thanks to those folks. It's like we have mostly usual suspects there. So very much appreciated. Jose, Jeff, Mark, Scott and Dan as the reviewers there, there were let's see eight closed issues by six people and 14 issues that were opened up by 12 people. That is it for overall. So next up I will pass it over to Jeff to tell us about the core. Hello. Yeah, Scott is out enjoying a little vacation somewhere. Hope he and his family are having fun. But anyway, as for the core, it was a slower week than some lately, we had 10 pull requests merged by seven authors, including a couple of those that Tim mentioned a moment ago, Santis, or Santis, and Andy Bing, as well as four reviewers. We currently have 26 open pull requests, about half of which are in draft mode, and which range from one to 412 days old. Issues wise, we saw an increase in issues with only three issues closed and nine issues opened. That leaves us with 691 open issues. The work that is prioritized by Adafruit, we display that through the milestones. So for our stable version, 8.2.x, we have two issues we'd like to resolve. And for our main branch with new features and then compatible changes 9.0.0, we presently have 50 open issues that we're working on. We've also got a large number of issues tagged as long term. And what that means is that Adafruit isn't prioritizing work on those right now, but we almost certainly welcome community involvement to work on those. So if you have familiar with C programming, and would like to see one of those long term issues resolved, we really invite you to step up and work with us. And you can find us on the Adafruit Discord in the Circuit Python Dev text channel to help you out. Just please drop by, ask us questions, get yourself oriented and dive in because there's a lot of work that a new contributor could do. We've also got four issues not assigned to milestone, which means that any different person needs to go in and triage them according to whether we want to work on those in the near future. Then I have a couple of notes about what is going on in the core aside from the numbers. We will soon merge a very substantial PR that brings all of the features and changes from MicroPython 1.19 into main. And one consequence of that is going to be that MPY files are not going to be compatible with the old 8.x version. So the way to install packages then becomes circup install dash dash py, which has it installed the source version instead of the MPY compiled version. We are not supporting this this version right now because we will merge MicroPython 1.20 soon. And that has a second change to the format of MPY files. After that is merged, we will probably at that time add the main branch building to the bundle, do an alpha release and that kind of thing. But for people who are testing in the meantime, there are going to be a couple of more speed bumps. The final speed bump that we're aware of is you'll need an updated version of async.io, which is currently in a pull request in that repository. And then finally, another consequence of this is that for the moment, we are going to add all new 80 fruit boards to version 8.x. And third parties who are adding boards are also encouraged to add the boards to 8.x. And this is because of all the stuff I was just talking about. And of course, ask us on Discord and help with CircuitPython or CircuitPython dev if you're using main and run into problems. And I can't promise you exactly when this pull request is going to be merged, but we really hope it's this week. And thanks for letting me go on for a moment. That is what's going on in the core. All right, thank you, Jeff. Appreciate it. Next up is the libraries. I will send it over to Katni to tell us about the libraries for the week. Thanks, Tim. So this week, in terms of all of the 80 fruit CircuitPython libraries and all of our CircuitPython community libraries, we had three pull requests merged from three authors and three reviewers. Two of those were to the community bundle and one was to a new library, which is great, leaving us with 49 open pull requests. We had five closed issues by three people and five open by four people, leaving us as even as we were last week with 632 open issues. 19 of those are still labeled good first issue. If you're interested in contributing to CircuitPython on the Python side of things, check out circuitpython.org slash contributing. You'll find all of this information and more, including the list of open pull requests and the list of open issues. If you're interested in reviewing, check out the open pull requests. If you're interested in contributing documentation or code, check out the open issues. If you are new to everything, there is a guide on contributing to CircuitPython using Git and GitHub that walks through both contributing code and also the whole review process. And we are also always available on Discord to help you out. We want you to be able to contribute in a way that works for you. For library Pi PI week, we download stats. This week was 130,530 Pi PI downloads over 312 libraries. And as always, the top 10 are listed in the notes. In terms of library updates in the last seven days, we had two new libraries. One is Circuit Python Micro OSC from Todd Bot. And the other is Circuit Python GC9D01 by Tyler Crumpton. And we had one updated library PIO ASM. And that's where we are with the libraries. I'm ready. Thank you, Katnie. Next up is the section on Blinka. I will send it over to Makar Melissa if you're able to tell us about Blinka this week. I am. Thank you. So Blinka is our Circuit Python compatibility layer for MicroPython Raspberry Pi and other single board computers. In this week, we had zero pull requests merged. There are currently five open pull requests amongst all the repositories. There's zero closed issues and zero opened, leaving a net of 102 open issues. There were 10,134 Pi PI downloads in the last week. 10,238 Pi wheels downloads in the last month. And we are 119 boards. And that is it. All right. Thank you, Melissa. That is it for the stats section. Next up is Hug Reports. Let me get a timestamp going here. There we are. Hug Reports. As a reminder to folks, Hug Reports is a chance to highlight folks in the Circuit Python community and beyond for doing awesome things. I'll start and then we'll go down the list alphabetically to give everyone a chance to participate. If you are text only or missing the meeting, then I'll read your notes when we get to them in the list. Otherwise, I will call your name and you can speak in the voice channel. So I will get us going here. Let me get a timestamp. So this week, Hug Reports for me, as I imagine we'll hear quite a bit. Everybody who was involved in Circuit Python Day, everybody who streamed, there were lots of great streams going on. I enjoyed watching streams about Synth.io and the 3D Hangouts in the morning as well as all the panels and Asking Engineer and Show and Tell and everything. There was so much great stuff going on on Circuit Python Day. So thank you to anybody who's streamed as well as anybody who watched along. There were lots of great folks hanging out in the chat. It was a really fun day to just hang out and enjoy Circuit Python in the community. So thank you to everybody for that. My other one for this week, Hug Report is too clever over on Discord. They made a version of Chip's Challenge, which was a game that I was also working on. They made a version for the Raspberry Pi that runs bare metal on the graphics chip, which is really cool. And they were sharing all sorts of information and saved me some time on a couple of things where they pointed out how stuff needed to be in the game that I was working on. So much appreciated to them and all sorts of really cool stuff, if you want to check out the Discord history from them. Next up, I will send it over to Dan. Sorry, okay. I'm meeting my Hug Report. Is that right? Yes. Okay, I was doing something else entirely. Thanks to Jeff, who is working on the merge of Margaret Python v1.19.1 with me. He spent a lot of time getting the test to run and fixing another bunch of miscellaneous problems after I got the initial after I submitted the PR a week or so ago. So we're getting very close. Thanks to Katnien Jeff for the joint video chat that we had on Circuit Python Day. Talk more about that later. Thanks to Katnien for doing all kinds of organizational things for Circuit Python Day. And thanks to everyone who presented or participated in Circuit Python Day last Friday. It worked out great. Okay. Right. Thanks, Dan. Next up is to Shippu. So thank you to Dan for helping me with the bugs over the weekend. And also to Clever, who also helped with that. And that's it. Alright, thanks to Shippu. Next up is DJ Devon 3. Thank you. I have a hug to Dan H for helping me with a Git problem. Using multiple working branches within the same library. It's tedious, but I have finally seen the light on why it's best practice after I watch two separate submissions get merged into one PR. A hug to Romkey for confirming an Adifruit request bug that I was testing. A hug to Mark Gambler for confirming a GitHub report bug with some older unexpected maker board shipping with an overriding .star.pi file, which I'll go into later. A hug to Unexpected Maker for being an active developer and responding to an issue before I even had a chance to bring it up in today's meeting. The issue came up last night and he was right on it. So a big hug to Unexpected Maker. You're awesome. And a hug to everyone who participated in streaming on Circuit Python Day 2023. There are far too many people to give hugs to individually. It was an amazing day full of projects and formative topics and everyone just being awesome. Thank you. Alright, yes. Thank you, DJ Devon. Next up is David Glauda, who is text only. So I'll read David has a hug report to everyone that participated in or organized Circuit Python Day 2023. So thanks to David for that. And next up, I will send it over to Jeff. Hello again. So I have a hug report to the whole community and especially the enthusiastic participants in the Chat during Friday's streams. Y'all are what makes us worth doing. But in particular to Paul Cutler, Todd Bot, Catney, JP and Dan H for being on streams with me. And to Paul in particular, because being a panel moderator is at least as hard as being a panel member. I did a little more than show up while he prepared the whole outline of topics that we discussed. Also a big thanks to Todd for a box of cool objects that are also on his Tindy store. You should check that out on Tindy. There's a whole Todd Bot store. And Todd, I owe you at least one cool project based on these boards now. And Liz, it was so nice to see you on the 3D Hangout Stream. I don't know whether it was your debut or if you've appeared before other than maybe a background figure. Your contributions and skills in 3D printing have gone under appreciated by me before now. And thank you to everyone else who appeared on all of the other streams. There were so many I have not watched everything yet. But I noticed especially Tim that there was a lot of continuing interest in your stream after it was finished. And Dan, thank you for doing so much of the work in the 1.19 merge. And for helping and guiding me while we work together to get the PR action checks all green. And I'm so excited that we've gotten to that. Thank you. That's what I've got. All right, thanks, Jeff. Next up is Katnie. All right, echoing a lot of other folks. First up, hug report to Paul Cutler for hosting the SynthIO panel on Circuit Python Day. This is the second year in a row that Paul's hosted a panel. I totally understand the amount of stress that goes into doing that. And he has not only done so it's been amazingly successful. And I really appreciate you doing that to Todd, John and Jeff for joining me on the SynthIO panel. It was a lot of fun. I definitely went into it with a lot less experience with SynthIO than I planned but still felt very welcome and very involved. To Jeff and Dan for joining me on another successful Circuit Python Day chat. I always give us a lot of time and every year we all sit around and wonder how we're going to fill it and then inevitably we always do. To a group hug to all the folks who participated in Circuit Python Day by doing streams. Thank you for making organization simpler this year by stepping up to join in and making for the longest Circuit Python Day of content we've ever done. A lot more work went into it last year than this year because I was able to reach out to all the same folks who joined us last year including a couple new folks. And it worked out really well. And I really appreciate it. To Todd for the excellent examples to go with the amazing little cutie pie synth board from my synth care package. And another group hugged everyone who watched Circuit Python Day without you. What's the point. That was the other great thing about the Circuit Python Day chat as Jeff mentioned in the chat just now. We had an excellent set of questions from folks both on Discord and YouTube and it allowed us to expand on the topics we were talking about and also just answer questions that were completely unrelated to what we were talking about but related to Circuit Python. And it made everything a lot of fun and the participation is really what drives feeling good about doing it. So thank you so much to everyone who joined in who was able to watch and who's watching after the fact. We really appreciate you. That's what I got. All right. Thank you, Kenny. Next up is maker Melissa. I want to give a hug to everybody who participated in Circuit Python Day to Jeff for reviewing my alpha plan PR and group hugged everyone else. All right. Thanks maker Melissa. Next up is Paul Kuller. Thanks for me, guy. I've got a hug for Jephler, Catney, Todd bot and JP for being on the Cynthia panel and a group hug for everyone who participated in Circuit Python Day. Thanks. Excellent. Thank you, Paul. Next up is Todd bot who's text only so I'll read Todd bot has a group hug for everybody on Circuit Python Day, an extra hug to all the Cynthia panel members and an extra extra hug to everyone who organized things in particular Paul Kuller and Catney. So thank you to Todd for hug reports as well as everybody else. Let us get a time stamp for status updates and I will tell you about that. Status updates is our time to tell folks about what we are up to individually. I will start and then we'll go through the list alphabetically. When I call on you, you can take a couple of minutes to talk about what you've been doing since the last meeting and what you'll be doing until the next meeting. This is also an opportunity to provide folks with tips and tricks relevant to what people are working on. If a discussion does become too long for status updates, we can always move it down to end the weeds to handle a little bit later. So I will kick us off here once I get a time stamp. There it is. So my status up this date this week. I did not do too much in library world in the past week or so I haven't touched libraries very much. I have been very much in Oshawa land still working on submitting products that hadn't been submitted to them yet. I have built up a series of scripts that pull and cash data from the Adafruit product API and then process it down into only the fields that are unique for each product because there are quite a few fields that are repeated. So just get it down to only the ones that change. Then the couple of manual steps that remain are filling in the description, checking the silk screen for the revision and then lastly just getting the link to the PCB repo. So I was tempted very briefly to try and bust out like some beautiful soup and write scripts for this as well. But I figured that's probably overkill and I could probably just work through the list quicker than I could write the script. So that's what I've been doing. Once all the data is compiled and there is a separate script that does go ahead and send the post request out to Oshawa in order to submit that and saves the responses. I am on track to finish up the last of those. There was about 60 of them at the time that I wrote my status update here, but I have actually knocked out a few more of those in the time since. And then the only other thing I really have for status updates was the other thing I worked on over the past week, which was mostly my game that I streamed about on CircuitPython Day. I created a small clone of Chips Challenge. It works on a PyPortal with a StemAQT gamepad. At least that's how I've been running it. The maps are loaded from JSON files that get exported via a program called Tiled, which is an open source tile map editor. I have a completely functional level one and the place where I left off, I was working on the entities, the behavior required for them in order to make level two. So that is where I ended up making it two with the streams over the weekend on that. All right, I will pass it over to Dan next to tell us about your status update. Okay, thanks. So as we mentioned, Jeff and I worked on the MicroPython Merge over the past few days. We're really close to getting it to Merge. There were, especially with Async.io, there are a lot of, at one point I was working with four versions of the Async.io library. So we figured out a way to avoid some version skew problems with Async.io so that we can have some compatibility between 8 and 9. We're going to do smoke tests on all the architectures and then go ahead and merge, we think. And we will not make an alpha release for this because this is an intermediate build which has a certain version of the MPY stuff, which is different from eight series. But we then have to do the next Merge, the next version of MicroPython in and it also changes the MPY versions. So in order to avoid confusion, we're just going to not start making test releases like Alpha or Beta releases until the MPY version has stabilized. And as mentioned, we're going to make, we want to make sure that any new builds for new boards should be done, those should be against the 8.2.x or later in the eight series lines so that people don't have to deal with some possibly unstable 9 version for these new boards. And as mentioned also, I was in the chat session with Caddy and Jeff. We had a great time. We were covering things, certain Python features you might know about and we want to highlight. And so I did keep had Async.io, secondary USB, SafeMode.py and a couple of the things and there are just a lot of things that are in CircuitPython. There are so many things in CircuitPython and it's hard to know all of those. That's what that was motivated, what we wanted to do. Okay. All right. Thank you, Dan. Next up is the Shippu. So I planned to work on my game for the CircuitPython day. So I dug out the game console I was working on previously, one with a bigger display for convenience and turned out there was a number of things I wanted to fix on it first and then I run into a number of bugs. So I turned out the weekend fixing things around that and refreshing the board definition for that board because I haven't submitted it to CircuitPython or PostArray yet because I didn't have the PID for USB. So I worked around all that basically made all the pull requests for that and I will make the pull request with the board definition as soon as relevant the PID and flash memory definition requests get merged. All right. Thank you to Shippu. Next up is DJ Devin 3. Thank you for my guy. Kind of like to Shippu. I was kind of in the same place where I was working on a CircuitPython day project. I got stopped by running into multiple bugs. I was working on the Matrix Portal S3 with a bunch of panels and ran into a bunch of hard faults as well. So I switched to a Feather S2 and still got one of the same bugs which kind of threw me for a loop. I spent my 10 p.m. on a Saturday bisecting the Adafruit Request Library that prevented an SSL handshake with GitHub, which is part of the stock learn guide. So that's that was kind of clued me in that there was a major problem there if the learn guide doesn't even work. This bug at a minimum affects all S2 and S3 boards using the ad for any project using the Adafruit Request Library starting in 8.2.2. If you have a project using Adafruit Request Library, I highly recommend sticking with 8.2.1 or prior at this current time. The developers are aware of that issue. I ran into another bug report on GitHub for the unexpected maker Feather S2. Turns out unexpected maker was including an adafruit underscore dot star dot pi library in the circuit pi root directory, which obviously overrides anything with the same name that you would throw into the lib directory. And he's been made aware of that. And he is currently working on changes. So that's it. I have caused them some work for developers and I'm sorry. That's it. All right. Yeah, no worries. I mean somebody's got to be the one to find the bugs. It's probably best for somebody who understands it to be the one to find it for sure. So thanks, DJ Devon. Next up is David Galada, who's text only. David says soldered an I2S amp to a Feather RP 2040 USB host following this guide. There's a link here to the learn guide for that. Made the DVI version, but it works perfectly and tried various Synthio examples from Todd, guessing that's probably going to be Todd bought on that one, tested the USB host MIDI library, which is linked here. That's a new library repository. David says he tested the simple test that the MIDI Synth and the demo from Scott, but it failed. The piano keystrokes were taking a lot of a second to be relieved, received, taking maybe longer than a second. It sounds like so it sounds like there was some delay, perhaps when David tried out that USB host MIDI example. All right. Next up for status updates is Fede to who's also text only. So I'll read Fede says last week compiling circuit Python natively on a risk five 64 hardware just because I'm sorry I wasn't able to host a circuit Python day event. I hope I can for next year. Hopefully with an event inside Microsoft and in Latin America. That would certainly be very cool. And then for this week Fede says if somebody wants to test the risk five 64 hardware that is probably suitable for per circuit Python. Let me know and I'll send you the sends you a milk V probably milk five I'm guessing duo microcontroller for $9 for free or cost $9 I guess probably is that for free. And there's a topic in the weeds for more on that Fede says so with that I will send it over to Jeff. Hello again. So last week early in the week I worked on dot clock displays but I still don't have the code actually doing anything yet. Later in the week I shifted to helping Dan with the 1.19 merge by working on compile and test failures on Friday with circuit Python day. Yay. It was so good that everyone here everyone involved gets another hug here in status updates. And as I mentioned earlier I got the 1.19 merge to be green across the board and GitHub actions over the weekend. It was bothering me like a toothache. But instead of going to the dentist you get to code so that's fine. This week helping in any way I can to get one 19 over the finish line and merged. I met your back and call Dan. And then back to the parallel display stuff you may have seen over the weekend that more did a stream. She's already designed hardware that needs to go with the software that I'm working on. There is Arduino code that works with it though so all is not lost if I don't get it done in terms of having a product that's useful to test all of her strange displays with. Coming up soon I ordered my first board from JLCPCB. Previously I've done Osh Park and some other board houses more a decade or more ago. I opted for the cheap slow shipping so it won't be here anytime soon. But when it does I'm looking forward to putting it together. It is a board for programming two kilobyte eProms. And of course I forgot something so I'll have to put a bodge resistor on it. But that's life. And here's a random idea for anyone to use a circuit art flexible PCB bookmark. I think somebody should make one. Yeah. So let me know if you do. That's what I got. All right. Thank you Jeff. Next up is Katnie. Hello. So last week was mostly circuit python day festivities. I started the Metro ESP 32 S3 guide but kind of lost momentum on that with preparing for circuit python day both between organizing it and participating in two streams. The everything went great. Thank you again to Noah Pedro and Liz Paul, John, Todd, Jeff, Dan, to you Tim, to Melissa, to John again and then to Scott and Phil and the more and everybody who was on show and tell I didn't get a chance to watch it. But I'm sure it was amazing. It was the longest circuit python day we've ever had which was pretty amazing and special hug to John Park for doing the intro. I really didn't want to and he offered to do it. So that was also excellent, especially considering what time it was in Pacific time. So that went amazing. I'm really happy with it. I'm happy with the streams I was on and thank you again to everyone. It was really an excellent experience and I don't know how we're going to top it next year. Another Latin America stream would definitely add to it and top that. So looking at you Feta 2. So this week is the drilling back down to the Metro ESP 32 S3 guide. Last week I added a pin to the circuit python board definition that was missing, which I'm only mentioning because I PR that to main and to 8 to X. And that was the first time I've ever PR to a release branch. It actually wasn't difficult, but I did not do it magically. I did two separate branches and two separate pull requests. So I didn't really level up much. But still it was it was a good experience. And as for what's actually done, the first thing I've just done, I finished finally the pretty pins diagram. This one was a little bit normally because there's a lot of a lot going on on this board. There's an SD card slot. There's a battery connector, Neopixel, WQT connector and debug pins. Those are the ones that are not typically on metros. So a lot of pins, a lot of pins going on. So the pretty pins diagram is finally finished. And then the guide skeletons created and I'm finally prepared to start filling it in. I usually do the pinouts page from the pretty pins diagram. So it's something that has to be done in a certain order to make it easier. It's doable without it, but it's so much easier with it. So that's what I'm going to be working on this week. And that's what I've got. Alrighty, thank you, Catney. Next up and rounding out the status updates for the week is maker Melissa. Hello, so last week I finished software for my message board and I designed in 3D print and the enclosure for it. And I worked on I started working on the guide for that. And I did my circuit Python day live stream using that. And I'm this week I'm going to finish up writing the message board guide. That's it. Alright, thank you, Melissa. And that is the end of status updates. The fifth and final section for the meeting, which I will tell you about after I take a timestamp is in the weeds in the weeds is an opportunity for longer form discussion. These can either come out of status updates or be identified ahead of time and put into the note stock. You've gotten in the weeds topic, please make sure you get it added. As soon as you think of it, we don't necessarily want to stop and wait for folks to write out topics at this time. There are a couple of them in there. One of them was mine. The first one was mine. So I'll say that although it looks like I've got a response. And I think I know that this won't take much longer. But just to read what's in the notes here from this one, it was a question with a list of libraries that don't have releases yet. And I was just asking if any of those need to be released and or added to the library bundle. That would be an and not an or actually on that one. And looks like I've got a response here, Catney. I'll read which just says we could go over these individually after the meeting. Some of them definitely do not yet. But there are some I don't recognize. So they're more recent. So I will speak with Catney about that one. Yeah, that'll be totally fine. It's there's a bunch of them that we just sort of that just exist that we're not doing anything with so we can talk about the rest of them after the meeting. It sounds good. The next in the weeds topic was from Fede to his text only. So I'll read this one out about a new micro controller. So Fede says, is the micro controller from milk V duo? There is a link here to that as well as a link to the docs. And it looks like maybe a model number or something like that as well. So is that processor a good processor for circuit Python as a powerful alternative to an M seven? I understand that the chips need time to mature. So this is very early question about its usefulness. No uf two, no tiny USB, but it is a risk 564. It fruit is a member of the risk five foundation has two cores with one of them clocked at a blazing one gigahertz. It has USB mass storage with USB hub, AI and DSP, Ethernet, Linux support, and it is extremely cheap $9 for a complete duo board, etc. And let's see here looks like Jeff mentioned looks like it's designed to run a Linux, maybe it's better for standard Python plus Blinka could be the case. I am not familiar with not only this specific hardware, but even the hardware on this level. So I don't really have an ability to add much more, but anybody else has thoughts in terms of it's running a Linux. I think the question is whether 64 megabytes is enough RAM to run regular CPython with Blinka on top. Yeah, good question. Sounds like maybe a good maybe like first sort of probing step if you will for trying to figure out something like that might be to try the Linux that they've got now and see what level of support is there, whether it can run Python with the existing bit and what the memory kind of like headroom is looking like or if it's already running out or how that's going, that's probably a good first step, I would imagine. But yeah, I don't have much other insight into that one. Right. I mean, it would be really interesting. I mean, it could also be like the Broadcom ports that run bare metal. Yeah. They're complicated because the architecture of that chip is a lot more complicated than the typical microcontroller because it has fancier caching fancier memory management and things like that. And I don't know what level of that is on this this particular chip, whether it has a memory management unit. I mean, it's very interesting. Doing something for a particular chip is dealing with the secreties of that chip. And then also things like I to see and so forth are peripherals and those may or may not we may or may not be able to take implementations of particular peripherals from other places. But often what a port takes is a lot of work getting the peripherals on the bunch of peripherals to work, you know, just getting the the repel up may not be so much trouble, but getting it getting it to deal with all the peripherals, especially if they're if they're if they're not stand kind of standard, right, take a lot of time. But it is interesting. It is interesting. Yeah. Yeah. Okay. Some good information there to at least get started, it sounds like next in the weeds topic was from Todd Bot, who's text only. So I'll read that one as well. It says a quick ESP IDF question with the impending merge of the ESP IDF version five. Is that going to allow for DAC audio out? And there is a link to a circuit Python issue three eight nine eight. And I will say again, on that one, I have no real insight into that. I'm not super familiar with IDF or whether that's going to be a thing that is possible or not. If there's like a specific improvement to or addition to ESP IDF, it might enable that. But that on its own will not add different forms of audio output, someone needs to write the common health code that does that. So like Dan was talking about, the big question is how do you create this adaptation layer between the the board's SDK or the registers and the circuit Python's idea of what an audio audio is? So like you were saying, I don't either know specifically about whether this added better support for like doing a DMA operation to an audio or an analog output. But even if it does, there's still code for us or for someone to write. So it sounds like a couple, a couple layers there, even if IDF does add it, there will still probably be some work to get it going in circuit Python sounds like. Okay. And then the let's get a time stamp for that one as well. OK, so the last of our in the weeds was from Carter who's text only says, will the MPY compatibility break? Will it break sync with a circuit Python major number like 9X? And an answer here says, yes, after micropython 1.19 merge, MPY files will not be compatible. Users will have to install the Python source version, which if you're using circuit, you can do by doing circuit install dash dash pie, use the dash dash pie flag will get you the Python version of that file. You can, of course, also download the library bundles from circuit Python dot org or GitHub. There's a Python bundle as well, where you can grab that file from. And then it says, thanks. So the 7X library bundle will work with 7X 8X library bundle will work with 8X and 9X library bundle will work with 9X. And that is my understanding. Yeah, okay. Yeah, also saying yes, except with the caveat that we won't add nine immediately, we're only going to add that after a second additional incompatible change. And that's why we're only that's why we're having users use source Python files in the meantime until we think we are done with the incompatible changes that are going on in the main branch, which is what will become circuit Python 9. Okay. So did that make sense? Yes, it did to me at least. Yeah. I'd also note that between seven and eight, there's actually not any compatibility. So you think 8X maybe will turn into a bundle on seven. Yeah. Yeah. Mostly. Yeah. Okay. Right. I think that one is covered. So with that, I will take one final time stamp for the wrap up. I will mention that this has been the circuit Python weekly meeting for August the 21st 2023. Thank you to everyone who participated as a reminder, if you'd like to support Adafruit and circuit Python and those of us that work on circuit Python, consider purchasing hardware from the Adafruit shop at Adafruit.com. The video of this meeting will be released on YouTube at YouTube.com slash Adafruit. The podcast will be made available on major podcast services. The it will also be featured in the newsletter, Python for microcontrollers newsletter. You can visit Adafruit daily.com to subscribe to that. The next meeting is at the usual time of 2 p.m. Eastern 11 a.m. Pacific. That is on the 28th of August next week, one week from today. The meeting is held, of course, on the Adafruit Discord, which you can join at adafru.it slash discord. If you'd like to be notified about the upcoming meetings, you can ask to be added to the circuit Python Easter's role on Discord and we will send out notices there. And so with that, I'll say thank you again to everyone and we hope to see you all next week. Thanks, everyone.