 Oh, everyone. This is the Circuit Python Weekly for October 3rd, 2022. This is the time of the week we get together to talk about all things Circuit Python. I am Katny, and I am sponsored by Adafruit to work on Circuit Python. Circuit Python is a version of Python designed to run on tiny computers called microcontrollers. Development is primarily sponsored by Adafruit, so if you want to support them and Circuit Python, consider purchasing hardware from Adafruit.com. This meeting is hosted on the Adafruit Discord server. You can join any time by going to adafru.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 p.m. Eastern, 11 a.m. Pacific, except when it coincides with the U.S. holiday. In the note stock, there is 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 wish to receive these notifications, ask us to add you to the Circuit Python-East-as-Discord rule. There is a note stock to accompany the meeting and recording. It contains timestamps to go along with the video so you can use the doc to view only the parts of the video that interest you most. The meeting tends to run 45 to 60 minutes, so this gives you the option to skip around. After each meeting, we'll post a link to the next meeting's notes document in the Circuit Python-dev channel on the Adafruit Discord. Check the pinned messages to find the latest note stock so you can add your notes for the following meeting. If you wish to participate but cannot attend, you can leave hug reports and status updates in the document for us to read during the meeting. Note that next week's Circuit Python-weekly meeting will be held on Tuesday. There is a U.S. holiday on Monday, so we will revisit that at the end, but it was a good time to mention it. This meeting is held in five parts. The first part is community news, which is a look at all things Circuit Python and Python on harboring the community. The second part is the state of Circuit Python libraries in Blinka, which is a statistical overview of the entire project. The third part is hug reports, which is an opportunity to highlight the good things folks in our community are doing and recognize the awesome folks we have around us. The fourth part is status updates, which is an opportunity to take a couple minutes and talk about what you've been doing since last week or the last meeting and then what you'll be up to over the next week until the next meeting. And the fifth part is in the weeds. In the weeds is an opportunity for more long-form discussions. The topics can come out of status updates or be something identified ahead of time. And with that, I will get started with community news. Circuit Python 8.0.0 beta one, it has been released, which is a beta release for 8.0.0. It's relatively stable, but there will be further additions and fixes before the final release. In the note stock, there is a list of notable changes since 7.3.0. I won't read them off as a lot of them have probably been read off previously. If you want to read the full release notes, there is a link in the note stock to the GitHub where the release is hosted. Next up, Hacktoberfest 2022. It's here. Whether it's your first time or not, it's time to hack out four or more pristine open source project pull and merge requests. The first 40,000 participants, maintainers and contributors who complete Hacktoberfest can elect to receive one of two prizes. A tree planted in their name or the Hacktoberfest 2022 t-shirt. Circuit Python wants your Hacktoberfest contributions. We've labeled a number of issues as Hacktoberfest and the full list is available on circuitpython.org. And your Hacktoberfest participation is not limited to these issues. It's just that we highlight a number of good first issues to have some place to start. And finally, the project of the week is turn your houseplant into a pet. Phyto is a project by Kotor's Cafe Tech, which incorporates a Raspberry Pi Zero and sensors to turn your basic houseplants into a pet. Phyto can show six different emotions based on its interpretation of three sensor measuring soil moisture, temperature and light levels. It uses a Raspberry Pi Zero 2W running Python with the Adafruit Blinka compatibility software allowing use of Circuit Python code. And there are two links to info about that in the notes talk. So that has been community news. It's a preview of the Circuit Python weekly newsletter, which is a Circuit Python community run newsletter emailed every Tuesday. The complete archives are available on adafruitdaily.com. That's adafruitdaily.com slash category slash Circuit Python. It highlights the latest Python and hardware related news from around the web, including Circuit Python, Python and MicroPython developments. You can contribute your own news or projects by editing next week's draft on GitHub, submitting a pull request, or you may also tag a tweet with hashtag Circuit Python on Twitter or email cpnews at adafruit.com. And thanks to Ann for putting together this newsletter every week. It's always full of amazing stuff. Next up is the state of Circuit Python, the libraries and Blinka. This is a statistical overview of the entire project. It's basically the project by the numbers. So we can get an idea of the health of the project aside from the individual things we're all up to. I will start by reading overall issues and then our overall information and then we'll move on to talk about the core, the libraries and Blinka individually. So overall, we had 40 pull requests merged from 17 authors, some names I don't recognize are semi-ninja, and we had five reviewers on those 40 pull requests. In terms of issues, we had 25 closed issues by eight people and 18 opened by 15 people. So we are down a little bit, which is good. And the final note here is assigned Hacktoberfest label to zero issues. That's because no new good first issues have been added and all of the initial issues were assigned on the first. Next up, I will hand it over to Dan to talk about the core. Okay, thank you, Katney. So in the past week, there were 18 pull requests merged to the core by eight authors. Flom84 is a new contributor. I'm not sure if they're new computer this week or last week, but they're new. Thank you. There are two reviewers, Jeff and myself. There are currently 18 open pull requests. There were eight issues closed by three people and 10 issues open by nine people. We haven't assigned Hacktoberfest label to any issues, but there are several good first issues or at least one that I know of. And so we will set that up. There are 575 open issues right now. In those issues, there are zero assigned to the 7.3 point X release. So we're not planning any new 7.3 release in the near future. There are 8, there are 35 issues open for 8.0. And there are seven issues open for past 8.0, but in somewhere in 8, we hope 8XX. There are 20 issues open that are labeled for libraries. Usually those are library suggestions and there are 506 issues open in the long term, which may be enhancements or minor bugs that don't need immediate fixing. And there are seven issues labeled as support. We should probably clean some of those up. Often those can be, those discussions can eventually be moved to the forum or to Discord. And there were two issues not assigned a milestone. And that's it for right now. I just as noted 8.0, beta one was released. Jeff will tell you more in his notes about the Pico W support that's in there. We caught up with about five weeks of stuff. So feel free to test 8.0, beta one and use it if you're willing. Thank you. Okay. Thanks, Dan. Next up, I will talk about the libraries. This applies to every Adafruit circuit Python library, which is everything that starts with Adafruit underscore circuit Python underscore, as well as a couple extras, including our community bundle and our cookie cutter. Across all of those repositories we had 22 poll requests merged by 10 different authors and four reviewers. In terms of the age of these four of them were 12 days or older, including one that was 37 days, which is good to see means we're still getting through older PRs. And by the look of the list, keeping up with quite a number of new PRs. So currently we have across all those repositories 37 open poll requests. There were 16 issues closed by five people and seven open by six people, leaving us with 590 open issues. We have 125 labeled good first issues, which at the moment are also labeled Hacktoberfest. If you're new to everything and you want to get started contributing. Good first issues are a great place to start. If you want to contribute in general circuit python org slash contributing is where you want to head. There's all this information and more there are a list of open poll requests, a list of open issues and some library infrastructure issues. If you are new, if you want to contribute code or documentation and you're new to everything, check out the issues list and search it by good first issue. These are issues we've identified as good for folks who are getting started or are new to contributing to circuit python. If you want to get started reviewing check out the list of open poll requests. If you have the hardware test it if you don't go ahead and take a look at the code. Let us know what you think. Leave a comment and that's always super helpful. And once you get more into that we can talk about leveling you up to the review team. In terms of library updates in the last seven days there were no new libraries and there's a short list of updated libraries in the note stock, which I will not read off. We are participating in Hacktoberfest this year we have for a number of years now. And it's always been a positive experience. So the Hacktoberfest labeled issues are good first issues. If you are interested in something more complicated, you can still contribute to by by checking out issues in for more that are more complicated. And you still will get credit for it regardless for Hacktoberfest, but the Hacktoberfest issues if you search by Hacktoberfest are all good first issues. So if those interest you feel free to check them out. If you are looking for a little more of a challenge, don't worry that it's not labeled Hacktoberfest it will still get you your PRs. And that's what I've got. So with that, I will turn it over to Melissa to talk about Blinka. Hello Blinka is our circuit Python compatibility layer for micro Python Raspberry Pi and other single board computers. This week we had zero poll requests merged and there are currently seven open pull requests. There was one closed issue by one person and went open by one person that currently none of the issues have a Hacktoberfest label. And there were 80, there are currently 84 open issues. There were 12,411 pedals downloads and last month. And we are at 91 boards. And that's it. Perfect thanks Melissa. And that is the state of circuit Python, the libraries and Blinka. Next up is hug reports. Hug reports is a chance to highlight folks that are doing amazing things and to recognize the awesome folks in our community. This will be held as a round robin I will start and then I will go through the list in the notes document. Read them off in order. If there are folks that are lurking or text only I will read those myself and then handed over to folks who are currently voice participating to read their own. So first up I have a hug for Naradok. I was seriously wishing that the support matrix could be searched by boards that do not have a particular module included. And it turns out that was previously implemented. So that was a good enhancement request because no code needed to be written. So thank you to Naradok for already having implemented this thing and now I know how to use it. Hug report to Dashapu for providing me with the code to print out a series of ASCII characters using circuit Python. I had code that did it in Arduino but it did not translate. So Dashapu helped me out with that. Thank you to Tiger Melissa for providing guidance on a guide update. It's a huge guide that involves a lot of different pieces of hardware and she basically wrote the whole thing so I worked with her on updating one section of it to make sure that it still fit with the rest of it. That's what I've got. Next up is Anakdata who is lurking. Has a hug report to Jephler for all of the work so far getting PicoW Wi-Fi up and running. It's great to have Wi-Fi working on a new port. Next up I have some notes from Sea Grover who said a hug report for Tektrick for explain and get concepts during the community help desk stream came away with some very useful hints. And next up is Dan. Thanks Jephler for fixing some PicoW Wi-Fi issues on Friday and Saturday. That meant that I was able to do a release of 808.1 on Saturday. Thanks very much. Thanks to Anakdata who was doing testing of those fixes. That was really helpful. Thanks to Jephler also for automating the formatting of inline documentation that we use in circuit Python. It goes to read the docs. Now that documentation is automatically formatted with black. Thanks to Unexpected Maker for helping with debugging some puzzling ESP32S3 problems. And thanks to MicroDev1 who continues to contribute fixes and reviews. Thank you very much. Okay. Excellent. Next up is DJ Devin3. I have a hug report for Dan H and Unexpected Maker for helping me troubleshoot a nasty UN Feather S3 bug. So I haven't gotten to the bottom yet. Still working on that. A hug report to scare and hem and discord for the advice on how to possibly repair a Feather S2 where it accidentally dropped a solder block right on the voltage regulator faster. And a hug report to all the core developers for releasing the version this week. A hug report to Tanu for a very helpful PyPico video. Even though it's a year old, it was still very relevant and very helpful for the project that I'm working on. A hug report to Tetric for helping me figure out some good issues in preparation for October Fist. And everyone else working on new projects and documentation. Excellent. Next up is PhomyGuy. Thanks, Kenny. This week I have a hug report for Jepler for working on the PicoW, getting support going for that. Thank you to Dan and anybody else who made contributions since the last beta for, of course, getting the new beta.1 released. Been trying that out on a couple of different devices today. Thank you to Shulltronics GitHub user. This person investigated an issue with the turtle library where it wasn't working the same way on BlinkyDisplay.io as it was on CircuitPython. They tracked down that issue, came up with a fix and submitted that, as well as tested some additional tweaks on that. So thank you to them. And thank you to Tetric as well for leading the recent Community Help Desk and Hacktoberfest kickoff. And that's what I have this week. Thanks. Thank you. Next up is Jeff. Hello, just as soon as I can find that unmute button. So I wanted to thank Anecdata especially, but everybody who provided testing and feedback on the PicoW Wi-Fi functionality. As a code author, I get kind of tired of it by the time it's done and my testing can be a little bit cursory. So people putting it through the paces for real with real code or even with testing code is super helpful. Thanks to PaulSK for dogged pursuit of some problems with I2C target, including making a pull request into the core to fix the documentation as well as a flaw in the code. And to Bill88T for adding the PicoW to circuitpython.org really appreciated that I didn't need to do that. And a hug in anticipation of all the Hacktoberfest contributions that the community will be offering. I know you are working with us at all times of the year, but this is a time to prioritize those contributions and, you know, to just pitch in and do stuff. And finally, for everyone I've forgotten, a group hug. Thanks Jeff. Next up is Maker Melissa. Hello. Last but not least. I want to give a hug to you Catney for updating the Quad off on the Merrick backpack, right? Excellent. So next up I have notes from three folks that I will read off. First up is Paul Cutler. A hug report for myself, Catney, for help with the community helpdesk blog post at the last minute. To Tectric for running the community helpdesk last Thursday and for Hacktoberfest kickoff and to everyone who stopped by and a group hug. Next up I have notes from Tectric. That's a hug report for DJ Devon 3, C Grover, Keith the E and Paul Cutler and anyone else I missed that tuned in for CircuitPython community helpdesk stream last week. I especially enjoyed chatting with you all after the tutorial. To Catney for the community helpdesk blog post as well as the nice banner image for it. To Hem and Madbodger for the feedback on posting things in the Discord server and making sure the write info goes in just the right places. To Fomiguy for all the reviews and streams they're always fascinating to watch and a group hug. And finally I have notes from Snakey Makercat who has a hug report for Fomiguy, Jephler and Dan H for being so awesome and helping during my first contributions to CircuitPython and a group hug. And that is hug reports. Next up is status updates. This is an opportunity for us to sync up on what we've all been up to since the last meeting and what we're going to be up to until the next meeting. So take a couple minutes, talk about each of those things. And this is also an opportunity for quick tips and tricks or questions to be answered. Anything that turns out not to be quick can be bumped to in the weeds. So I will start and then I will read through the list. So last week I finished up the QT update for the Quad Alpha Numeric Backpack Stema revision. Submitted a now merged fix to update the pin order on the Grand Central M4 to match the silk. There are multiple names for each pin and sometimes we... This may have actually happened before we decided to start making it all match the silk so that the top one in the list was the one that looks like the pin number on the board. But there were six pins that had the alternate name coming first. So that was fixed. And then continued working on the LTR 329 and 303 guide. This week, first thing up is to finish the final additions to the Wi-Fi mailbox guide, which is to add an external antenna to the completed project to show another way to do it. It was pointed out that the small antenna Velcro or stuck into the mailbox that I had for the project probably wouldn't work in a metal mailbox. So that's why we need to show that there's the ability to add an external antenna. And I need to update the power usage graphs with the latest Circuit Python build. Dan fixed an issue with ESP32 power usage during deep sleep. And these graphs currently are not accurate with the fix. So I get to update that and be done with that guide. Then I'm going to test issue 6676 on the core, which is using pin alarm and time alarm together. It wasn't working. It worked in the mailbox project. So I will give it another test with shorter code to make sure that it actually works and then close that issue. I would be finishing up the LTR 303 329 guide. I need to add the web hook to GitHub for read the docs to four library repositories. Update the Metro mini V2 or update the Metro mini guide to have the Metro mini V2 in it. And then I will be doing the new product guide for the PCF 8575, which is evidently like exactly like the another PCF chip except that it has 16 pins. So that guide should go pretty quick because most of it will be copy and paste. Next up, I have notes from C Grover, who is text only. Since micro lab was dropped from the matrix portal distribution, I repactored palette fader to use list iteration instead successfully tested the new version on 733 and 800 beta one. The revised version runs 25 to 30% slower than the micro lab version, but it is still an acceptable range for most applications. Both versions are available in the palette fader community bundle library and cooler weather weather, which is less than 90 degrees Fahrenheit means the landscaping project will be completed soon. The wildfire smoke dissipates just a three bag concrete project and one more yard of decorative stones to move before a dozen or so boulders arrive. After that there will be ample time for music electronics and software projects thinking wishfully. Next up is Dan. Okay, as mentioned, I released circuit python 800 beta one that was on Saturday night. It includes a lot of working P COW network code. Jeff will tell you more but you can use it to HTTP and stuff you can't do SSL yet. But that's in the works. I did a lot of debugging that was expressive chip power consumption during deep sleep. I found an idiosyncrasy in the way. pins are pin holding is done so I got the consumption back down to the expected value of about 75 micro amps by not asking for pin holds if I didn't need to ask for pin holds during deep sleep. I simplified the status bar enabling and disabling code in hopes of fixing some bugs that had to do with partial connecting to the set when the status bar was already in process of being updated. It seems better, but I still have some problems. I have to recheck it. I did a lot of reviewing of PRs and other things. I wrote a draft page on the specific limitations for built in modules per port draft learn guide page by going through the source code and finding all the not implemented error stuff. And we talked during an internal meeting about whether to use this page whether they maintain this page or put the stuff and read the docs are not. If you have some specific comments about that, let us know in Circle Python Dev or in the issue that's open about it. And this week I will continue to work on A to O issues trying to get the number of bugs down so we can again head toward a release. Okay. Noticing a conversation in the text channel. You can put the hacktoberfest this is for Melissa you can put the hacktoberfest topic on your Blinka repositories and that's what will eliminate the need for individual labels. Yep, I actually went ahead and did that. Okay, excellent. All right, next up is DJ Devon three. See this week I got my tr cowbell step sequencer open source hardware certified I didn't get a t-shirt but I got a nice logo to put on the board, still waiting for those new boards that would be 1.2 volts to arrive this week. I finished up a fort of Becky Stearns YouTube subscriber counter from NodeMCU to Circle Python using the seven, it uses the seven segment display backpacks and ESP32 S2. I'm using the non stem of version of the displays the stem of version didn't exist when I bought two years ago. Procrastinate on a little bit. I was splicing the wires to make it work. I messed up and I messed up big. All of my future seven segment display purchases will now be stem of version for sure. While working on the seven segment display backpacks I accidentally dropped a solder block right on the voltage regulator of the feather s to this morning I used a hot air we work station for the first time ever and successfully repaired the board. It smokes a lot and some headers were melted. But still, I got it working. It was a success. And I resurrected that board, which I probably would have otherwise thrown away because once you drop the solder onto the regulator and a cap next to it, you can't melt it with a soldering. The cap and the board traces dissipate the heat so fast that the solder just doesn't melt. Let's see what's next. No progress on the Laura messenger slash mail box project that's been shipped side started a new YouTube channel this week that will focus on maker types of projects. I recorded my thing that I did with the rework air station and stuff on there is my first videos just test videos. This week, obviously, there was a hurricane hurricane in. It's nearly as affected as degrees brothers, or others on the West Coast for it, but I think you're okay. Use whipper snapper to log some need pressure data. And I have a spark from weather station arriving this week to combine my Laura knowledge and solar for wireless environment logging. So the next time there's a tropical storm or hurricane. Get more data. Whipper snapper is now in Fahrenheit. So that's great. If you've never been to a hurricane, the huge pressure drop will pop your ears like being on an airplane. And it's like a six, seven hour event if you go through my wall. And here's a graphic that shows that pressure drop and the maximum pressure drop for this hurricane actually got down to 830 millibars over in Fort Myers, and I was on the complete opposite end of the state. The data that I log is minimal compared to what they like to. But it's still cool to be able to see that. Logged in out of food IO with whipper stuff. And that's all I got. Thanks, seven. Next up is foamy guy. All right. I did a fair amount of testing and reviewing this week. So a couple of the notable ones were in the BME to 80. There was a PR that refactored that a bit and helped eliminate some of the duplicated code. I got that tested last week. I started investigating some strange status outputs from GitHub actions. We noticed that the actions workflows that generate screenshots sometimes have weird sort of like success but also cancel outputs and I learned a fair amount about GitHub actions and came up with a couple of guesses, but I think there's still something a bit mysterious going on there. Tested a proposed fix for the turtle library that allows it to work the same on link a display as it does on circuit Python. I got some reviews in this morning on several typing PRs. And then the other thing I've got going on today so far is trying to learn a bit about the basics of many MQTT. I've used it a few times with the simple tests, but don't have kind of like a foundational knowledge. I'm trying to get up to speed enough to be able to effectively review and test a fix that's in there and offer some actual insight into that review process. That's what I got going on. Thanks. Thank you. Next up is Chuck. So last week the Pico W support became much more solid, including support for socket servers and all that code made it into 800 beta one. And again, a big thanks to testers but especially for anecdote for not only running the lengthy reliability tests, but for testing this. Initially testing the idea that changing this power saving number register on the Wi Fi chip can make a difference because it did it did make a difference. There's even more testing so if you have a Pico W, please get it out and try out the wireless functionality. The main caveat is you can't connect to secure websites or other things that use SSL. But whatever your experiences are, let us know on circuit Python dev or via issues on GitHub. And those would be issues on the core not on the library at this time. If you're using a different request with the Pico W and you've hit a problem reported in the circuit Python repo not in a different requests. Other stuff I did I implemented black code formatting on the stubs in C comments this is what we build the documentation of the core modules from. And I published a second keyboard guide with circuit Python this one was the Tandy 1000 keyboard. And I did it sooner than I would have after the last keyboard guide because I wanted to get it into the month of sept handy. This week, I am working on integrating embed TLS as the SSL library on the Pico W. And again, just like with sockets micro Python furnishes great foundation, and I hope that after a straightforward conversion into the common health style but basics will start to function. There is still a big question mark around the idea of including a certificate store with circuit Python. So initially, it will probably use SSL but not actually verify the server certificate, which is really the same as no security. And there are a couple more bullet points that are in the notes document I'm not going to read it it's kind of my internal narrative about my understanding of certificates and certificate stores so far. But the caveat is I'm not an expert on this. Certainly not at this point so any correction of my misperceptions above our welcome and also now I haven't gone on, you know, voice record as to whatever misconceptions I might have so anyway, but we will be looking for the best way to do SSL on the Pico W within the limitations of the flash storage that we have available and that is my focus for the week for sure. Thank you, Kenny. You are welcome. Next up maker Melissa. Hello. So last week I worked on wrapping up some of the some more code editor changes. And I decided to take a break and start working on getting TensorFlow Raspberry Pi guy working on bullseye. And I got working on the Raspberry Pi OS desktop but now I'm trying to get running on the Pi OS light and I'm having some success but I suspect like the hammer to maybe having trouble running it on a 240 by 240 display. Other than that I reviewed get me spot off and there back that guy update. And the sweet thing about finish updating that TensorFlow guide and then need to test out the 128 by 64 feather ring wired up to a non feather board and write a page on that. And need to add a few missing boards to circuit Python.org. And then hopefully get back to the finishing code.CirclePython.org. Thanks, Melissa. Next up I have many, many notes from Tech Trick who is text only. Last week streamed for the community help desk on Thursday showing people how to get set up from scratch for Hacktoberfest. Rerecorded said tutorials so I could streamline and improve it and posted the video to the aid of root YouTube channel. Had PR emerged that fixed blank keywords being added to pyproject.toml sometimes when using cookie cutter. Addressed the feedback on the GPS library type annotations PR which merged today. Submitted PR to allow the aid of root logging library to be more C Python compliant but not require a name for a logger, which gives you the root logger. Finished up the GitHub action that compiles MPI files zips them and attaches them to releases which should help people creating circuit Python projects create those files as they develop their code. This week, catching up on PR reviews, merge the merge in the change to the MQTT library that makes it keyword only when instancing. Continue turning our own CI process into composite actions so Adaba isn't needed to update them all anymore. Still hoping to revive the image transfer feature for the Bluefruit Connect library. Looking at making a helper library that makes it easy to use Payspin services like Payspin and GitHub Gist. So I'm hoping to get that in in the next few weeks. And then in personal news moving to a new apartment over the next few weeks. So a lot of putting things in boxes. And that is status update. Thanks everyone. Next up is in the weeds. In the weeds is an opportunity for more long form discussions. This is the type of situation where somebody posts their issue and or question or problem. And we can all talk about it at whatever length is needed to resolve the answer, etc. So first up I have one from Taktrick who is text only. The GitHub action, there's a link here. The GitHub action for building MPI files is called using the owner's name. So I can either transfer it to the Adafruit or CircuitPython GitHub organization depending on which the script would be called using is one preferable to the other. My vote is for CircuitPython because it sounds less like an internal tool, but I'm I think not attached to either. The CircuitPython org is designed for things that multiple people are working on together. There's a very specific reason for it. I think transferring it to Adafruit would make the most sense. Anybody else have opinions on that? I am in agreement with you. Yeah, it's not the type of thing that's necessarily like worked on by a group of us. And it is for lots of the Adafruit libraries will use it. So yeah, that makes the most sense as well. Okay. And I think it's fine, even if this is set up to work on community libraries as well. It's still absolutely fine for it to be run through the Adafruit organization. Taktrick is typing. Taktrick says, yeah, that sounds good, and it'll work the same either way. Great. Yeah, he was just typing what you were saying was annotating. Gotcha. So next up, I've got one from Foamy Guy and I will turn it over to him. All right, thanks, Kenny. And as I get going and apologies if any sounds come through that turns out there's somebody working on a motorcycle. So I just wouldn't put the window down so hopefully it's a little better. I have a link to an issue in the bundle. Which is essentially just asking the question on our actions workflows that generate the images. We have those on the bundle library as well as learning system library. As I was looking into that a bit this weekend, I came to the realization those seem like they are running on that scheduled basis once a day for all the forks of the repo. So that means if somebody forks the bundle or the learning guide in order to put in a PR that we are actually running all those image generations every day across all those forks. I think there are some actions that we limit based on the owner of the repository. So I figured it'd be good to ask if we wanted to do that on those or if there's any reason why we want to keep them generating for everybody. No, 100% we want to limit that. Yeah, if even if you had a reason to want to run it in your repo such as you're working on developing a change to it, or because you know you thought it was useful and you want to use it in your own project, unconnected data fruit. You can modify that workflow file once you're in your fork to override that and make it run again so I don't see a reason not to make that change. I will work on that in both of those repos. I looked at my work or the bundle and I don't see any actions. Is your main up to date because that's one thing I noticed is that mine was not. No, it's not either but my main was not up to date enough to actually have the actions in it. Okay, okay. So yeah, I guess that's a good point. It's not necessarily running for everyone but it's running for everyone who has updated or whatever their default branch is yet that's updated enough to have those actions. Gotcha. Do you know how we would have to be updated to get that. I do not off the top of my head but I could probably find out I want to say like, it's somewhere within the last year, I believe on both of those libraries is when we started doing it but I'm not sure the exact timeline. And just go ahead. So if I created a new fork. Two days ago, then all of that would automatically apply to me. Yeah, you yeah I believe that's the case your new fork I believe of the bundle would be running that that scheduled action. That happened. That's a thing to prepare for October fest just keeping after that. Yeah, I mean, there's not too much to do I guess other than like, ultimately we'll have to remake this change in the Adafruit repo than we are still kind of beholden to people to update their own. But I don't think there should be much of anything specific for anyone to do. Okay. Thanks for catching this. And I would say yes let's let's do it. That's good. All right. And next up, I have one more. Yes, one more topic from snaking maker cat who is text only so I will read this off. Starting from this bug in the audio MP3 module, which lists a link here for 6843. I noticed a lot of similar issues opened over time. Since this is a usage problem, I think one way to definitively solve it is to turn MP3 decoder into a singleton and not allow multiple instances of it. Once an MP3 decoder object is created it could be saved in reuse for every new call to the MP3 decoder constructor. Would this be possible or desirable in this case and I will let Jeff explain his response. I already typed some notes in and I think, you know, you're on the right track because this is almost always going to be used as a singleton meaning you're going to create it near the beginning of your program and reuse that object. However, I don't want to actually turn it into a singleton, because there are some use cases for having multiple MP3 decoder objects. And in the notes document I put a snippet of code from an unpublished project called multi MP3. It used two MP3 decoders and the audio mixer to play one MP3 file called forest ambient loop, and then randomly play one of four different bird calls. And it just kind of created a soundscape that never exactly repeated, even though it was based on one repeating loop, adding the other samples in, gave it some variety. So, unfortunately, I would like to do a project like that someday and so I don't think it's a good idea to make the MP3 decoder be literally a singleton object, even though that would help a lot of people with their trouble. Can I jump in here? As a DJ and audio guy, I'm pretty sure I can speak for Todd bot and JP. If we're going to do audio mixer stuff, we need to have multiple samples going at the same time simultaneously. That's, that's a necessary thing. And I mean that works pretty well with wave files because to create a to have a wave file object out there doesn't take much Ram. I think maybe it takes six or 800 bytes ballpark, whereas the MP3 decoder takes, I don't remember if it's 40k or 60k it takes a lot out of Ram. And there are big single allocations and so the considerations for an MP3 decoder are very much different than for a wave file. And I think, you know, that's what snakey maker cat is looking for a way to address. But, you know, ultimately, the ability to do multiple MP3 files, you can do it with care and I wouldn't want to take that away so thanks for backing me up on that and I trust you because DJ is right in your name here on the server so Well, yeah, that was a legit DJ for a while. 10 years. All right. Snakey maker cat is typing I will let them finish. Well, okay for for audio projects right now, wave. Yes, in the future, we would love to have MP3 just because of the portability, you know, let's say we eventually do get up to 1632, 64 megs of running flash and whatever. So that MP3 stuff is easier if it's if it's not turned into a singleton now, versus hey, you know, down the road, let's change that into the audio core audio mixer stuff, you know, it's easier just to have it work as an audio mixer kind of now versus trying to fix that in the future. Although I understand the RAM considerations now that that's it's probably not a good idea right now. Snakey maker cat says just adding big letters then and all the guides that only one instance should be created. And then also mentions that there are boards for music that do have much flash and Ram, but for regular use it should be made clear that multiple instances kill a project. Got it. Yep, yep. I think we're. Nope, make your cat isn't done. Want to make sure that this is their topic so I want to make sure that they. Oh, also that issue can probably be closed then. It's kind of like the thing that Anna data brought up about the socket pool where there should only be one it should be the top of the file. That should be an alarm guide as well, you know, and big red letters kind of thing. Really noted. Oh, don't apologize. This is your topic. This is in the weeds. It's supposed to take as long as we as long as we need it to. So no worries there. Okay, with no other topics in place. I'm going to wrap this up. First I want to mention that the next meeting is Tuesday on the 11th of October at the usual time. And I will bring that up again in a moment. This has been the circuit Python weekly for October 3 2022. Thank you to everyone who participated. If you want to support a to fruit and circuit Python and those of us that work on circuit Python, consider purchasing from the a to fruit shop at a to fruit dot com. The video of this meeting will be released on YouTube at youtube.com slash a to fruit and the podcast will be available on major podcast services. It will also be featured in the Python for microcontrollers newsletter. Visit a to fruit daily dot com to subscribe. The next meeting will be held on Tuesday at the time of 2pm Eastern 11am Pacific due to a US holiday on Monday. This meeting is held on the a to fruit discord which you can join by going to adafru.it slash discord. To be notified about the meeting and any changes to the time or day you can ask to be added to the circuit Pythonistas role on discord. And we hope to see you all next week. Thanks everyone.