Hello, everyone. This is the Circuit Python Weekly Meeting for November 6th, 2023. This is the time of the week where we get together to talk about all things Circuit Python. My name is Tim. I'm sponsored by Adafruit to work on Circuit Python. Circuit Python is a version of Python that is 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 gets hosted on the Adafruit Discord server. You can join that at any time by going to adafruit.it. We hold the meeting in the hashtag Circuit Python Dev text channel as well as the Circuit Python voice channel over on Discord. This meeting typically occurs on Mondays at 2 p.m. Eastern, 11 a.m. Pacific time, except when that coincides with the U.S. holiday, in which case we will typically bump it to Tuesday. In the note stock, there is a link to a calendar which you can view online or add to your favorite calendar app. We also send notifications about the upcoming meetings via Discord. If you'd like to receive those notifications, ask us to add you to the Circuit Pythonistas Discord role, which of course is the same role you need in order to speak as well. So if you wish to participate by reading out your own notes, then you'll need that role too. There is a notes document to accompany the meeting. As mentioned, the final notes document includes time stamps to go along with the video so you can skip around and view only the parts of the video that interest you most. Meeting tends to run 30 to 60 minutes. After each meeting, we will post a link for the next meeting's notes document in the Circuit Python Dev channel on the Discord. Check the pin messages there to find the note stock for the upcoming meeting. You can always fill in your notes ahead of the meeting as well. That note stock typically goes up just after the meeting, so you can fill those in throughout the week. Five reports or status updates come to you some time before Monday. The meeting structure, it's held in five parts. The first part is community news. This is a look at all things Circuit Python and Python on hardware in the community. It's a chosen set of items from the Python and microcontrollers newsletter. The second part is the state of Circuit Python, the libraries in 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 our status updates. The third part is the first of our two round robins, and that is the hug reports section. Hug reports is an opportunity to highlight the good things folks are doing and take a moment to recognize awesome folks in our community. The fourth part and the second of our two round robins is status updates. Status updates is an opportunity to report on what we've been up to. Can take a couple of minutes, talk about what you have been doing since the last week and what you'll be getting into over the next week until the next meeting. The fifth and final part of the meeting is called in the weeds. This is an opportunity for more long form discussions. These can be things that came out of status updates, or they can be identified ahead of time as too long for status updates. So if you know of anything you want to discuss in the weeds, go ahead and scroll all the way down to the bottom of that note stock and put an entry in the weed section there for that. That way, when the time comes, we'll be able to just pass the baton, so to speak, and go through the items. So that covers how the meeting will go. So with that, we will get into community news. Let me get my first time stamp. Here we go. So in community news this week, a couple items that caught my eye, we had the Beagle V fire, or perhaps Beagle V fire. I don't know how it's supposed to be pronounced. A single board computer is now out. This device is a single board computer powered by a microchip polar fire. And there's a model number here. It's a pentachore risk five. I guess that probably the V is five then for risk five system on a chip FPGA that allows the Beagle bone black, excuse me, that follows the Beagle bone black form factor for compatibility with Beagle bone Cape expansion boards. The Beagle five fire comes with Ubuntu pre-installed to get started out of the box. Some suppliers have them on order. RS apparently has some now at the time of press that this item was published. So Beagle board fans, if you're interested in that, there's new device there. And I know lots of the various Beagle board hardware's support blinker. So I imagine that one perhaps will someday too. Next up we have arm has acquired a minority stake in Raspberry Pi arm holdings PLC today announced late last week that it had made a strategic investment for a minority stake in the Raspberry Pi limited. That's the arm of the Raspberry Pi company that's responsible for the new Raspberry Pi five and the prior Raspberry Pi products. There are links here if you want to learn more about that out to times hardware and Haxer IO. Next up we have Girl Scout maker badges. Stanley Black and Decker has partnered with the Girl Scouts of the USA to launch maker badges. These new badges are providing the next generation with tools to tap into their creativity, discover new interests and explore future careers in the trades. There are links here to the kind of official Girl Scouts website as well as to a Twitter post talking about this if you'd like to read more. Two more we have next one is the some Python software foundation news in the PSF. They recently just announced a new member of Mary Norden is the new inaugural community communications manager. I don't know if it's Mary or Marie so my apologies but I'll say Marie joins the PSF as a longtime contributor in open source, an experienced community organizer and enthusiastic communicator. There are links here to the Python software foundation website discussing that. And the final item for the news update this week is the project of the week. This one was an electronic guitar with an ultrasonic neck, an electronic guitar with some novel twists. This one is programmed in Circuit Python on a Raspberry Pi Pico uses an ultrasonic sensor rather than a neck to detect movements and translate them to notes and there is a link here to Twitter if you'd like to learn more about that project. You can read about all of these items and more in the Circuit Python weekly newsletter which is a community run newsletter that's emailed every Monday. The complete archives of that newsletter are available on AdafruitDaily.com. This newsletter 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 projects to that newsletter. You can either head to GitHub and edit the draft for the next week's newsletter submit a pull request for that or if you'd like you can also tag a tweet with hashtag Circuit Python on Twitter or email to cpnews at adafruit.com. Thanks to Ann of course for all the great stuff in the newsletter week to week. So next up we will talk about the state of Circuit Python, the libraries and Blinka. So this report let's see here let me get to the right spot. So yeah this is the 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 we'll separately discuss the core the libraries and Blinka. So this week in the overall stats we had an astounding 74 pull requests merged over the entire project from 17 authors and there were quite a few names in here that are newer or less frequent contributors or perhaps just less familiar to me personally but the the names that stood out to me as folks that might be newer were XRSTF, Jyns-TKOMOTA, Retired Wizard, Paul Ketler, Argove, I'm Not James, THZ Inc. Yep those were the names although I notice here Hex that I think I didn't boldify but I don't recognize that name either so that person may be new as well so thank you to all of those folks, thank you to all of our authors including the more frequent ones but especially those folks who might be newer it's always nice to see new names popping into these lists from week to week so very cool stuff. We had seven reviewers this week those ones do look like the normal suspects so thank you to all of our relatively usual reviewers there were 62 issues across all these projects that were excuse me 62 issues closed by eight people and 24 issues opened by 13 people so I think we had a couple initiatives this week on cleaning up some issues and it definitely is showing in the stats here and then it mentions Hacktoberfest label removed but as noted in the prior weeks we do that on the repos and we're over into November now so Hacktoberfest is no longer as relevant so with that I will pass it over to Scott if you are available to talk about the core. Totally happy to thanks Tim. Okay so for the core we had eight pull requests merged from seven different authors new name here is THZ Inc. isn't new I think Hex that is a common translator along with WTMRO so thank you to our translators we had two reviewers as well myself and Dan we have 23 open pull requests which is comfortably under that 25 one page limit we had eight closed issues by five people and seven opened by six people so we're net down one which is awesome for a total of 672 open issues again that number is down below 700 thanks to Dan doing work last week we use milestones to track urgency for eight of your folks to work on different issues we have no open issues for 10.0 we have 14 open issues by 8 2x and we have 63 open issues for 9.0 and two open issues for 9xx so the the highest priority ones are the 8 2x ones and then the 9.0 as well the 10.0 milestone is really just for us to remember to do breaking API change stuff after you know after 9.0 is stable and we're ready to start on 10 we have zero issues not assigned to milestones so it looks like we're coming we're keeping up with triaging all of these as well and that's it for the the core all right thanks Scott next up we will talk about the libraries these are all of the libraries over on github those are going to be inside of repositories named eta fruit underscore circuit python underscore and then the name of the respective library across all of those libraries this week we had 66 pull requests merged which is quite high we had lots of folks working on some display updates so sneak peek of a couple hard reports there there were 10 authors for those 66 pull requests which is also amazing we usually don't see quite so many so thanks to all of our authors including the folks I mentioned before as well as some of our more usual contributors there were seven reviewers this week so thank you to all of our reviewers there is a list of the merged pull requests here the vast majority of pull requests this week were just one or two days old we did lots and lots of new ones with folks doing display IO API updates so let me scroll past those to get to the next section here that leaves us with 51 open pull requests the oldest of which is 445 days the newest is just one day over the past seven days we had 51 closed issues by three people as well as 16 new issues open by six people that leaves us with 679 open issues and of those there are 19 that are currently labeled good first issue if you are interested in getting involved in circuit python if you'd like to learn more and help contribute to the project the best way to get started with that is at circuit python.org slash contributing you'll find a list of open pull requests and open issues there if you are wanting to get involved you can head over to the issues page and there's a drop down to filter on different tags and the good first issue tag is in that drop down so you can find those 19 good first issues also would encourage you if you're interested in getting involved to join us here on the discord throughout the week you can keep in touch with everyone who's working across different areas of the project so all good stuff to get involved with so let's see for PyPy stats this week this is also covering the same libraries but this is stats pulled out of PyPy the python packaging system so we had across all these libraries 102,599 downloads across those 319 libraries there's a list of the top 10 here so you can check those out if you are interested there also is a list of libraries that have been updated in the last 7 days which is a relatively long list again this week so you can check those out in the notes doc if you'd like and then let's see next up is a section for Adafruit Blinka I don't see Melissa in the chat so I'll read the Blinka section let me just get to the right spot here so Adafruit Blinka this is our compatibility layer for Circuit Python excuse me yeah for Circuit Python to run on Raspberry Pi and other single board computers as well as a compatibility layer for MicroPython across those Blinka libraries this week we had no pull requests merged no authors no reviewers there are currently three open pull requests there are excuse me there were three closed issues by two people one open by one person and that leaves the Blinka world with 77 open issues and for PyPy stats on Blinka there were 13,766 downloads and 8,779 PyWheels downloads and Blinka is currently supporting 125 devices so with that I will take our next timestamp here and tell you about the hug reports so next up will be hug reports this 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 as they appear in the note stock to give everyone a chance to participate if your text only or missing the meeting then I'll read your notes when we get to your turn in the list so I will kick us off hug reports for me this week a big thanks to Paul Cutler and retired wizard both of whom have submitted lots and lots of fixes for display IO API updates across many libraries so thank you to those two folks and also thank you to Dan who's done a lot of the reviews for those libraries I really appreciate all those folks helping out next up is hug reports for Dan H who's having some trouble with Discord this morning so I'll read Dan says hug report for retired wizard and Paul Cutler for doing PRs to update the libraries to not use display IO show and another hug report from Dan goes to 88 ADCC for a lot of ongoing fat FS investigation and doing fixes next up is David Glauda who's not present so I'll read David has a hug report for Dan H for helping David with the 9.x transition a hug report for Paul and another one for me for me guy for fixing many of the changes changes needed for display IO API change in 9.x and another hug reports for David goes out to maker Melissa for work on the S3 matrix portal and message board next up is C Grover who's text only C Grover has got a hard report for Jepler for the superb gift of synth IO that just keeps on giving a hard report for me for me guy for creating an excellent solution for a circuit module dependencies and a group hug to the team and community so thank you C Grover for those hard reports uh next up is DJ Devin who's text only DJ Devin has got a report to the circuit python developers for all new changes in 9.0 you've all put a lot of work into it I'm excited to see where circuit python is headed a hard report for me for a neat deep dive on how to switch display projects to use 9.0 root group syntax and finding some really neat legacy edge cases where show is using its own custom display method and a post halloween group hug again those were from DJ Devin and then next up we will hear from catney thanks Tim so my first hug is to two folks Paul Cutler and maker Melissa for some great suggestions and information on my latest endeavors to you Tim for help with a piece of code from sometime in 2022 I wrote a piece of code that allows me to post to my blog and post that information to mastodon at the same time and you wrote a large chunk of that code which I now need to adapt to do more and it is very clear and clean and I'm very excited to start with that so thank you very much for that congratulations to everybody on the 9.0 upgrades I saw a lot of resolved closed issues going by stuff that I either filed or commented on and there were pretty major issues and it looks like the IDF update is what affects them but it's excellent that you guys were able to get that going a group hug to all of the folks joining me in my new adventure and a group hug to this community for continuing to be amazing all right thank you catney nice to hear from you next up is Liz hello uh so hug report to discord user Elpa Kenan for suggesting the circle python decimal library for the mars clock project I've been working on and a hug report related to Jeff for helping for writing the circle python decimal library and for giving me some feedback on how to better use the api and a group hug awesome thanks Liz next up is scott hello uh hug reports dan foamy guy pr cutler and retired wizard for updating the libraries to root group and also to my eight of root coworkers for support and flexibility all right thank you scott next up is the second of our two round robins this is the status reports section let me to the right spot here so status updates this is our time to tell folks about what we're up to individually I'll start then we'll go through the list as it appears in the note stock when I call on you take a couple of minutes to talk about what you've been doing since the last meeting and what you'll be up to during the next week until the next meeting so for my status updates this week I worked on um circuit dependencies for libraries that are in a bundle but not deployed to pi pi uh and I submitted some uh successful I submitted a pr to the build tools and then a separate one to circuit and I was able to get kind of a successful proof of concept um reading from pi project dot toml a list of circuit dependencies which then circuit will install with this new modified version so I learned a lot about the internals of circuit while working on that it was uh very interesting for sure um the other kind of major thing that I've been working on uh is the um learn guide code updates for the display io changes in nine point x so the same thing that was discussed for the libraries but I've been in the learning guide system repo rather than the libraries and I'm kind of closing in on it I think I'm past the halfway point but I don't know the exact count so getting closer but still got some work to there to do there as well um the uh the other thing I worked on was testing some new examples for the HTTP server um there are new examples now that include the usage of the new template engine so I was checking those out this weekend uh late belated hug report let me say for my goal pocusa for those uh and then the other thing I have in mind for the upcoming week is I will be on deep dive this Friday so if folks are interested in hanging out I'll be around Friday afternoon for that uh or uh evening depending on where you're at um next up is c grover uh who's texting me so I'll read c grover says uh had a need to use synthio generated ad sr envelopes and lfo waveforms for a euro rack project although cv like input is supported by the synthio vock t2 hz function cv output is achieved by tricking synthio dot note to modulate uh to modulate note amplitude with the envelope or lfo uh although the result is workable it rectifies the cv input since amplitude can only be positive value uh only a positive value okay for an ad sr envelope but problematic for an lfo sine wave a discussion and recommendations are detailed in an uh an issue on the repo uh on the and this playground note uh there's a link here in the note stock if you'd like to check that out uh over the aid of playground and then the other item in c grover status update this week says uh twice annual test of my automatic dst adjuster helper for real-time clocks was again successful nice uh was deployed over three years ago uh let's see it's deployed over three years ago to four local and three remote clocks but I continue to treat the change event as a code test looking forward to us congress finally eliminating the need for the helper and all of detesting and there's a link here to that repo if anybody would like to set up your own automatically updating rtc yeah so thanks to c grover for that uh next up is dan h uh who i'll read dan says retested the lc 709203 f which i think is battery sensor maybe uh on the esp 32 s3 with 9.0 0.0 alpha 2 it's up it's got the updated esp idf version 5.1 uh seems to work a lot better the bno 055 however still does not work uh but it doesn't work on lots of microcontrollers um next up dan says opened issues for all libraries that use deprecated show from display i o paul cutler and retired wizard addressed all of these issues emerged and created new releases uh starting to look at 9.0 bugs made issues for updating libraries not to use uh show i think maybe this was duplicated yeah these ones are done much more quickly than i expected by retired wizard paul cutler they did the prs and i reviewed these and made releases and then uh dan's last item says did more debugging on the nina firmware comparing arduino and adafruit versions uh and now understand which versions do and don't work uh which is awesome cool uh next up is david glada uh who's not present so i'll read david scott uh two uh or i say a couple three high level categories here the first one's teddy ruckspin so uh david glada this week for teddy ruckspin changing the eye color from blue to red uh there's a link here to get hub for some code that does that um controlling the activation of teddy ruckspin with time of flight sensor and a feather rp20 40 with usb type a host and a bonus led screen uh to display distance and status there's a link here to that as well for the gist went to show and tell to show the results and then in circuit python news this week david reports uh testing upgrade to 9.0 alpha 2 on the trinky rp20 40 plus temperature sensor with an itc uh display and a flight excuse me and a fight with circup impy compatibility and display io changes excuse me testing qr code reading with a tiny sensor and the output usb hid keyboard with the french keyboard layout it works fine with 8.x but has a mysterious crash with 9.x so maybe an issue is in order for that one migrating my matrix display from pimeroni board to the new s3 matrix portal but i need to adapt the learn guide to my matrix resolution and size there's a link here to the learn page for that and then uh non-circuit pythons are outside of the circuit python world david reports helping my son's girlfriend with arduino thanks to a metro 328 and some guides from eta fruit not sure how i'm gonna not sure how i'm going to help her with uh visual basic and access on her mac all right thank you to david for those status updates and uh next up is dj debon three dj debon three says uh due to daylight savings time yesterday i got tired of switching time zone offset in settings dot toml manually twice a year open weather map now has a feature they call geocoding that will automatically extract your time zone based off of your latitude and longitude this feature wasn't present when i started coding my feather weather script uh updated it with the geocoding json call and it works great uh if anyone out there is using open weather map look into automating your local time now using latitude longitude and never have to worry about the time zone offset again which definitely sounds good to me uh for halloween dj debon got a cyberpunk looking helmet that incorporates a 16 by 32 flexible four millimeter pitch led matrix that smoothly wraps around the inside of a helmet visor requires a shady chinese mobile app that i'm not a fan of this week i'll be working on piping it to an itsy bitsy blue fruit to get it running on circuit python is successful i uh if successful i will detail it in playground notes and then lastly dj debon says help the few people on discord get their projects working hearing people get excited when they get an led to turn on never gets old totally agreed there it's always nice when folks get their stuff working um next up is adcc who's text only so i'll read adcc says debugging mostly open ocd and the pico prog ate up most of my time no complaints a journey well worth taking so thank you for that adcc next up is catney hello so after two months of non-stop work i'm incredibly excited to share that i reached an important milestone in my latest adventure i took much longer than i expected though in hindsight as always it seems like maybe i should have expected that i'm still not entirely ready but realizing completely that i never will be this needed to happen so i went with it you can check out the details on my website catney.com and i wrote a post up there i spent the better part of the last three days writing up the first project i'll be covering the text is basically done and i'm trying to figure out the best way to handle images i use a python based static site generator which can do images natively but i suspect it won't scale well um so i'm trying to mitigate that from the start instead of needing to go back through everything it was suggested to host the images on pixel fed and embed from there which i haven't looked into yet but sounds like it's a good idea however if anyone has any other suggestions i'm interested to learn about other options regardless of whether i use them um so if anybody's uh using some sort of um photo service or or that sort of thing uh to host photos uh for their personal sites please reach out to me and let me know what you're doing um i have no intention of ever switching toward press so i can't speak to that um but uh any other help would be uh super appreciated that's what i've got all right thank you catney uh next up is liz hello uh so in continuing work on my mars clock project i hit the float limits of circuit python which i'd never experienced before uh i went to the help with circuit python channel and luckily uh discord user elpa kenan pointed me in the direction of jebler's circuit python decimal library and using that library allowed for an accurate mars sold date calculation and as a result accurate mars time which was 100 on point with the official mars 24 nasa clock uh so i wrote up a eight of fruit playground post about this uh talking about the process and i'll include as a footnote in the upcoming learn guide so folks will see why that library is necessary for an accurate uh calculation uh and then for personal project i just received uh some pcbs from ash park park in my mailbox a couple minutes ago uh so i'm going to be building a patch bay for the arteria keystep pro midi controller uh for those who don't know in the back uh it has a lot outputs for cv so 1v oct and gates um but what's a little tricky is since they're all in the back it makes for patching like you normally would with euro rack a little tricky so what i'm going to do is i'm going to have this kind of patch bay with carrier pcbs come up um to the top of my euro rack uh set up so then i can patch a little bit more naturally and uh that's my stash update nice thank you liz uh next up i will send it over to scott thanks tim uh okay so i'm around all day today but tomorrow will be off and on uh my mom is in the hospital and she'll be getting a diagnosis this week uh had a biopsy on friday so i was there thursday friday um and we'll know more this week and that will inform kind of what our schedule is in the longer term uh i'm circling back to the split heat pr to get it finished up i just looked and i only failed pre-commit so i just pushed a fix for that um after that i'll be bug hunting um memore just poked me about an sd card issue on 9.0 so i'll probably take a look at that i'm scheduled to be out on friday and monday to go to san diego but that does depend on what happens with my mom's health over the week so that's what i was uh alluding to with the flexibility in the in the sport so uh that's what's going on with me and uh thank you tim for covering deep dive last weekend this week i really appreciate it yeah definitely yep thanks scott all of us uh wishing the best for you and your your family for sure um thanks then that is it for status updates uh so let us talk about the weeds for just a moment uh this would be the time for in the weeds however uh i see down at the bottom of the note stock we don't have any topics so i think we will skip pass in the weeds and head on to the wrap up so this has been the circuit python weekly meeting for let me do take a time stand though before i go uh the circuit python weekly meeting for november 6 2023 thank you to everyone who participated again 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 and the podcast will be made available on major podcast services it'll also be featured in the python for microcontrollers newsletter uh you can visit adafruitdaily.com to subscribe to that and you should definitely do so uh the next meeting will be held at the usual time i believe next monday the 13th that is at 2 p.m eastern 11 a.m pacific um the meeting of course as it is every week is held here on the adafruit discord you can join that at adafruit.com if you'd like to be notified of changes to the time or date of the upcoming meetings you can ask to be added to the circuit python east is roll on discord and that is all for now thanks for hanging out everybody we hope to see you all next week thanks