 Hello everyone. This is the Circuit Python weekly meeting for July 10th, 2023. This is the time of week where we get together to talk about all things Circuit Python. My name is Tim and I'm sponsored by Adafruit to work on Circuit Python. Circuit Python is a version of Python that's designed to run on tiny computers called microcontrollers. The development for Circuit Python is primarily sponsored by Adafruit. So if you want to support Adafruit and Circuit Python, consider purchasing hardware from them over on Adafruit.com. This meeting is hosted on the Adafruit Discord server, which you can join anytime by going to adafru.it slash discord. We hold the meeting in the Circuit Python Dev text channel, as well as the Circuit Python voice channel. The meeting typically occurs on Mondays at 2 p.m. Eastern or 11 a.m. Pacific, except when that coincides with a U.S. holiday. In the note stock, there is a link to a calendar that you can view online or add to your favorite calendar app. We also send out notifications about the upcoming meetings via Discord. If you would like to receive those notifications, you can ask to be added to the Circuit Pythonistas Discord role, the same role that allows you to speak during the meeting. There is a shared notes document that accompanies the meeting and recording. The final notes document includes time stamps to go along with the video so that you can use the doc to skip around and view the parts of the video that interest you most. The meeting tends to run 45 to 60 minutes. It just depends on the number of folks that we have for the round robin sections. After each meeting, we will post a link to the next meeting's notes document in the Circuit Python Dev channel on the Adafruit Discord. You can check the pinned messages there in the Circuit Python Dev channel throughout the week to always find the latest notes document, or I should say the most upcoming notes document. If you wish to participate, but you cannot attend, that's totally fine. You can leave hard reports and status updates in the document and we'll read those out during the meeting. The meeting is structured to be 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 preview of the Python on microcontrollers newsletter. The second part is the state of Circuit Python, the libraries and Blinka. That one is a quantitative overview of the entire project. The chance to look at the project by the numbers separate from our status updates. The third part and the first of our two round robins is the hug report section. Hug reports is an opportunity to highlight the good things folks are doing, take some time to recognize the 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 you've been up to. Take a couple of minutes, talk about what you've been doing in the last week or two weeks as it is this time since the previous meeting or what you'll be up to over the next week until the next meeting. The fifth and final section is in the weeds. In the weeds is an opportunity for more long form discussion. Those discussions can come out of status updates or be identified ahead of time. Those will be listed down in the bottom of the notes document like we talked about before. That covers how the meeting will go. With that, I will get the timestamps started and jump into community news for the week. There we go. News in the newsletter this week, which is I think a day early this week, so that one's already out. Check your email inbox for that. The items that caught my attention this week were the release of CircuitPython 8.2.0. CircuitPython 8.2.0 is the latest minor release version of CircuitPython and it's been marked as a new stable release. There is a posting here on the Adafruit blog as well as a link to the release notes on GitHub. A couple notable changes that have been brought in since 8.1.0 are continued enhancement of the SynthIO module as well as alarm.sleep memory for the RP2040-based devices. The next item from the newsletter this week was THANI has released a new version 4.1.0. The THANI Python IDE has released version 4.1.0. It includes an ESP flashing dialogue that allows you to select from a list of known MicroPython or CircuitPython boards and downloads them for you. It comes with Python 3.10 as well as additional updates. There are links here in the notes doc that take you to Twitter message about the release as well as again the link over to the actual release notes on GitHub itself for the THANI project. The next item here is from the United Kingdom, United Kingdom Primary Schools to get free BBC MicroBits. The BBC has announced their new campaign which I believe they call BBC MicroBit the next gen and this campaign will empower primary school children ages 8 to 11 to gain digital skills. Each primary school in the UK can register to claim 30 MicroBit devices. The campaign is sponsored by the MicroBit Educational Foundation as well as Nominet who made the donation possible. Teachers will be able to access training on the MicroBit in person and online and there is a link here I believe to register for those free MicroBits. So if you are hearing or reading this from the UK and you are a teacher head to the link in there and get registered to get yourself some free MicroBits for the classroom. Next up we have IoT with Raspberry Pi Pico in Kenya. The Raspberry Pi Foundation provided free workshops in Kenya last month for the hardware community around Nairobi. In partnership with Gearbox and Safaricom they started with the Raspberry Pi Pico W and MicroPython. The participants started by learning the basics of MicroPython and Blinken and LED. From there they moved on to more advanced topics including how to work with motion and proximity sensors as well as environmental sensors. Lastly they connected the Raspberry Pi Pico W to the internet and used Adafruit IO which is Adafruit's cloud platform for IoT in order to graph their data, set up alerts and create dashboards. There are links here in the notes that take you to a raspberrypi.com news article discussing that topic and the last item that we have from the newsletter this week is about EuroPython 2023. This one was timely so I decided to grab that in there for anybody that might be interested. So this is an upcoming meet-up in the Czech Republic as well as with a remote component as well and this is about a week from today. So today is the 10th of July. This starts on the 17th of July one week from today. So if you are interested in EuroPython definitely check out the link here in the notes letter in order to find out about it and get involved if you are interested. So let's get a timestamp on this one. So these all these items came from CircuitPython newsletter. CircuitPython Weekly Newsletter is a CircuitPython community run newsletter that's emailed weekly. That's going to be emailed out on Mondays for the next couple of weeks. The complete archives are available on Adafruit Daily.com and it highlights the latest in Python on hardware related news from around the web including CircuitPython, MicroPython, and Standard Python developments. To contribute your own news or projects you can edit next week's draft on GitHub, submit a pull request with changes. You can also tag a tweet with hashtag CircuitPython on Twitter or email to cpnewsatatafruit.com And with that we will move over to the state of CircuitPython, the libraries, and Blinka. It is worth noting up at the top here this week since we did not have a meeting last week and the way that these stats are aggregated is on kind of a rolling daily basis. That means that our stats for this week do only cover the last seven days which means that the seven days prior to that we did not actually catch in any meeting. So thank you to all the folks who contributed during that period of time as well. We definitely fully appreciate all of them too but the system that does pull the stats is on a rolling schedule essentially. So we've got the last seven days here. So in the last seven days overall we have had 23 pull requests merged across the entire project. Of those 23 pull requests they came from 16 authors. I have highlighted a couple authors' names who were less familiar to me. So these might be folks that are either newer contributors or less frequent contributors or it could be the case that it's just a name that I don't happen to be familiar with and maybe they have contributed more. But those folks this week thanks to them for getting involved. Those names are Kai Zelen, Joshua Beck 0908, Impolt, Creative Control, and KB Seriram. So thanks to those folks who again were authors this week across various different repositories related to the project. For those authors we had 10 reviewers looking over their work. Those do look like a pretty usual list of names there. So thanks of course to everyone who is reviewing those PRs for us. Of course the more reviewers we have the more authors we can support. So thank you to everyone who takes time to look over PRs and offer up comments, suggestions, thoughts, anything like that. There were 13 closed issues by nine people and 14 opened issues by 12 people. In the last seven days there were, oops, let's see here, oh I see maybe this is the previous seven days I think. Yeah, yeah this is the previous, okay so that works actually that's really nice. Yeah I didn't think about grabbing the previous ones. Thank you to whoever grabbed this early herb report. So for the previous seven days, so everything we talked about just a moment ago was the current previous seven days. For the seven days before that which is what we would have covered in last week's meeting. Overall for those we had 11 pull requests merged from 12 authors and the highlighted names there for newer or less frequent contributors are Jimmo and N0XA. So thank you to those folks. During that seven day period we had eight reviewers. Again looks like mostly the usual suspects so thanks to those folks again as well and during that prior seven day period we had eight closed issues by five people with 18 issues opened by 15 people. And with that I will pass it over to Scott if you're available to tell us about the core. Sure so these numbers are just the previous week so we're ignoring it does not include the two weeks ago. So this is five pull requests merged from five different authors. Kai Zelen is a new name to me so thank you to them. We had four reviewers so thank you to all of our reviewers. We have 27 open pull requests so we're just above kind of that 25 threshold which means it's on a single page. So as always please take a look at pull requests and see what we can't get merged in. We had four closed issues by two people and nine opened by nine people so we're net up five for a total of 671 open issues. Milestone wise this is how we track prioritization for folks funded by Adafrit work on sarcopython meaning if you're not funded by us feel free to pick up whatever is interesting to you. So we have 42 open issues for 9.0. We don't have a milestone currently for 8.2x but we may in case we need to follow up with anything and we have 590 open issues. Five issues are not assigned to milestones so we'll need to do a round of triaging for those as well and that's the stats for the core. All right thank you Scott next up I will send it over to Catney if you are available to tell us about the libraries. I sure am. All right so this is again over the last week we had this this section applies to all of the Adafrit circuit Python libraries and the circuit Python community libraries. Across all of those repositories we had 15 pull requests merged by 10 different authors and 10 reviewers which is excellent. The oldest actually no geez a lot of old ones. For over 400 days days open there were two of them. There were there was one at 73 days and two over 20 days which is excellent. I asked our host today to start looking at some of the older PRs and so some of those have been taken care of or merged or closed and that sort of thing. So it's nice to see the progress there at the top of the list and that leaves us with 61 open pull requests. We had nine issues closed by eight people and five opened by five people leaving us with 633 open issues. 46 of those are labeled good first issue. If you're interested in contributing to the libraries or contributing to circuit Python on the Python side of things the libraries are a great place to start. Check out circuitpython.org slash contributing. You'll find all of this information and more including the actual list of open pull requests and the list of open issues. If you're interested in reviewing check out the pull requests. If you are interested in contributing Python code or documentation check out the open issues. If you're new to everything good first issue is a great place to start. We also have a guide on contributing to circuit Python using get and get hub and we're always on discord to help you out. We want to make sure that you can contribute in a way that works for you. We have library PyPI download stats here. Over 310 libraries there were 151,621 downloads and the top 10 PyPI downloaded libraries are available in the note stock. I noticed the numbers are back up to where they are usually. The last few weeks they've been surprisingly low. So I guess people took a break from PyPI stuff. In terms of library updates in the last seven days we have one new library from FurBrain called circuitpython underscore cave BLE and a few updated libraries which I will not read off and that's other than the the note about the fact that older older PRs are now being looked into. If you have an open PR on a library that is aging expect to see some action on it either already or soon and please respond to it or if you don't we're going to close it but we can always reopen it if you're interested in picking it up again in the future. Just be aware of that and that's where we are with the library. All right thank you very much Ketney. Next up is the Blinka section. I will send it over to maker Melissa if you're available for that. So Blinka is our circuitpython compatibility layer for MicroPython Raspberry Pi and other single board computers and this last couple well these stats kind of apply more to the last week than the last two weeks but there were three pull requests merged by two authors and one reviewer. There are currently three open pull requests there were zero closed issues and zero open ones. There are currently 98 open issues and there were 12,278 Pi PI downloads in last week and 7,022 Pi Wills downloads in last month and we are at 119 ports and that's it. So thanks Melissa. So that wraps up the state of circuitpython, the libraries in Blinka. So our next section will be the first of our two round robins. It will be the hard reports section. As a reminder, hard reports is a chance to highlight folks in the circuitpython community and beyond for doing awesome things. I'll start and then we'll go down the list alphabetically and give everyone a chance to participate. If you're text only or missing their meeting then I'll read the notes when we get to you in the list. So I will get us going. This week I have hard reports. Thank you to BlitzCityDIY as well as DJ Devon who both started kicking off the process of updating library examples to use the newer settings.toml over the older secrets.py recently. So thanks to those folks it's not necessarily glamorous work so to speak but I think is very important and very appreciated. Thanks to Jose David for trying out an old display button PR and offering some great feedback on that recently. Thank you to JP, John Park from the Adafruit live streams who recently created a repo and started collecting and sharing the code that's shown during the circuitpython parsec videos which I think is really great so thanks to JP for that and I also have a group hug this week for everybody. So with that I will send it over to Dan next. Okay thanks this week I'd like to thank Katnien Paul Cutler who were taking over the weekly Python and microcontroller newsletters while Ann is away on vacation and the first one went off great. You notice it might be a day early somewhere all the time but they'll continue to do the smooth job that Ann started with. Thanks very much. Yep thank you Dan. Next up is Jeff. Hi so I wanted to give a thank you to Nair Doc for a circuitpython bundle called circuitpython keyboard layouts. It's a bundle full of mostly international keyboard layouts that work with circuitpython and when we get to my status updates I'll tell you a little bit more about why. I wanted to thank Tac and Scott for so much groundwork on USB host like I told Scott when I was talking directly to him the other day you know I built it and put it on my device and it just worked the first time the first thing I wanted to try and that's really exciting so thank you to both of you. To Dan thank you for being the release manager and for releasing 8.2.0. The Adafruit iOS mobile developer by the name of Antonio I owe a big hug report for reverse engineering the Teddy Ruxpin audio format and now we've got a working converter that you can run on any old host computer with Python to create fresh audio files. It's really exciting. All right back to circuitpython world a hug to Jimmo from the MicroPython project for a documentation fix. That's Jimmo's first PR into circuitpython but of course we use a ton of his work that we inherit through circuitpython. A hug for Lady Aida for sending a prototype Metro RP2040 my way. I need to check out some specific functionality on that prototype board before it goes into production and lastly a group hug. All right thank you Jeff. Next up is DJ Devon 3 who's text only so I will read. DJ Devon has hug reports for Dan H as well as NirDoc for helping with a display issue on the yes s2 reverse TFT device. Another hug report for Dan H for the idea to create portable RFM95 distance tester months ago. DJ Devon just got around to making one and it worked out very well. A hug report for Tyeth and Dan H for advice on automating heart rate, oxygen and blood pressure monitoring. I understand hacking medical devices isn't the best idea in the world but I was quite desperate and appreciated your patience and understanding. A hug report for Tyeth for helping me understand some of the inner workings of the Adafruit hashlib library. A hug report for Dan H and Kevin T for helping with a random number generator went through a couple of different iterations before settling on os.urandom and passing in random.randint with a range of 43 to 128 which it turns out satisfies BitBits OAuth salt requirements I assume for interacting with their API. And then lastly a hug report thanks to Tyeth and her excuse me her brain for joining the helpers roll over on Discord. And next up I will pass it over to Kat me. Thanks. So first up a huge hug for Paul for so much help on this week's Python on hardware newsletter, the one that shipped today. The original plan was that I would do the first one. Paul would guess it at the second one and then I would be doing the third one. It turns out the real plan is that we're both basically working together on the entire thing. It was such a relief last week to have all that help and I just really appreciate it. To Dan for entering the newsletter post one up as expected there's an extra thing that has to happen before it emails and you can fix it if it doesn't quite work right but only before the email check so Dan made sure that that was good to go to Todd bot for an amazing hour and a half long chat about synth basics. I have a much greater understanding of a lot of basic synth features now than I did and that's really exciting to airbrain for joining the community helpers on discord to the discord helpers overall and the discord moderators for a thoughtful discussion about a specific issue and for handling a few other issues incredibly well. Thanks to the folks who suggested airbrain for the community helpers role. They were not on my radar but that was it's always good to have suggestions there. To Dan for helping with a code example I was attempting to adapt from Arduino and failing. Turns out CirclePython can't really do it the way Arduino does so I would have been going in circles for a very long time. To Tim you for going through all the stale PRs across the libraries and seeing what the next step should be. Also to you for working through removing secret stop pie on the ESP32 SPI library and replacing it with settings.toml. Hug to everyone I'm starting I missed since it's been two weeks since the last meeting and a group hug. Alright thank you Catney. Next up is maker Melissa. Hello let's see here I lost my place. Oh yeah I was just doing a group hug to everyone on this. Alright yeah thank you Melissa. Next up is Paul. Thanks Tim. I've got a hug for Catney for showing me the ins and outs of putting the weekly Python on hardware newsletter together as well as some excellent editing catching some mistakes that I made. Thanks. Alright yeah thank you Paul. Next up is Scott. Hello I've got two. I don't know how to pronounce their name but Sekiganganak who did the PIO USB stuff did a quick PR review and merged for me last week or over the weekend so thank you to them. And then also hug to Jeff for the USB keyboard support boost with their report serial code from their CPM project that made it much quicker for me to get a demo going so thanks Jeff for that. Alright thank you Scott. And that is it for hug reports so next up we will change over to the status updates section. As a reminder status updates is our time to tell folks what we've been up to individually. I'll 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 up to until the next meeting. It's also an opportunity for folks to provide tips and tricks relevant to what people are working on. If a discussion does become too long for status updates we can always bump it down to in the weeds. So I will take a time stamp and get us started. I have been working on a couple things. One of them was wrapping up the ESP32 spy socket compatibility changes and getting those merged. All the PRs that are related to that stuff after another round of testing over this past weekend. I also started working on a way to show outline text with configurable stroke color and size. And to that end I completed a hacky hard-coded proof of concept that does work and uses simple bitmap manipulation just with the slice like square bracket accessing and setting pixels. From there I added functionality inside a bitmap blitz in the core in order to speed up the bitmap dilation process by doing some of the stamping in the core. So it was iterating through lots and lots of pixels and doing that in the core is much faster. So that provided a pretty good speed boost but it did lead to the next to true which was that adding that functionality pushed a couple of boards, a couple of builds over the size limit. So from there I refactored that bitmap blitz function over into bitmap tools which is already disabled on the devices that don't have as much room. So now that is over there, everything is back under the limit and the new functionality still works and does exactly the same thing. You just call it from a different module. With all of that done actually did also sit down on I think it was Friday and worked on the outlined label class so an actual kind of higher level class that makes this functionality much easier to reuse. It's pretty much fairly close to a drop in replacement for the existing label. You just set up a couple extra arguments for your stroke size and color and then beyond that you can treat it the same way. You get some nice outlined text and kind of the last thing I have in mind for that is I'd like to ultimately also create a dilation helper function inside bitmap tools. The newer version with that's using blit from the core is much faster than the original was but I think moving the actual dilation into the core would be another pretty big speed up because we are still iterating through pretty much all the pixels inside the bitmap. So that's kind of my final plan on that front. A couple other things I was doing I have been, let's see, I started this morning changing over the ESP32 spy library both the internal components as well as the examples to start using settings Tommel instead of secrets. I am as Catney mentioned following up on older library PRs so I'll be going through posting follow-up comments on those to see what the status is and if they remain active for a little while after that comment then I will go back through and close them but they can always certainly be reopened in the future if they do become active so like Catney mentioned as well if you have a PR open and you think it's waiting on us or needs somebody to take a look at it feel free to ping me there otherwise I will make it to there in time and get all that moving. And the last thing over the weekend I started writing a clone for the old Atari game called Breakout. Mine runs on a pi portal and uses a StemAQT gamepad as the controller and it uses Vector IO for graphics I have not published it anywhere yet but I'll probably put it up on GitHub at some point for other folks to play with if they would like. And that is it for me so I will send it over to Dan next. Okay thanks so after a number many many steps we got to CircuitPython 8.2.0 final last Wednesday that's released. Importantly if you have an NRF board the bootloader on your board is probably may not be able to load CircuitPython 8.2.0 because it's larger than the maximum size that the old bootloaders could load and you need to update the bootloader it's not as simple as just loading a UF2 updater file so check the guide pages for your board about that and as a consequence of that I made sure that all the guide pages the guide page for how to do that update was mirrored across all the Atari boards so check that out and I also updated it in CircuitPython.org on the download pages and then I did some other a learn guide work there's a more extensive discussion of what Blinka is and how it works and how it's not CircuitPython but is a compatibility library and that's the second page in a bunch of Blinka Blinka guides now and the overview pages is a little redundant with that so we'll clean up the overview pages but check that out if you want a better explanation or you want to give somebody a pointer to a better explanation of Blinka or more complete explanation I followed up I tested a bunch of bug reports to see if they were real some of them were some of them weren't that is a constant thing every week and though I didn't do much on the MicroPython merge last week I did work on it a little and I'm going to work on it more this week okay that's it all right thank you Dan next up is DJ Devin 3 whose text only so I'll read DJ Devin says finished a portable RFM95 rangefinder using a battery powered ESP32S2 reverse TFT and RFM95 featherwing I went for a drive and figured out the real world max distance for my area to my Laura mailbox boombox thanks to Dan H for the idea to make it next item is got a Fitbit to help track some of my elderly mothers vitals I chose Fitbit because they have a 24-7 heart rate monitor feature and web API I've successfully adapted it for use with the Adafruit requests library using get and post requests as well as the refresh tokenizer is working it's just a matter of cleaning up the OAuth code to release it as a simple example Fitbit's OAuth token scheme is the most stringent that I've come across thus far it requires a randomized 23 to 128 bit salt which is hashed with SHA256 and then base64 URL encoded unlike most other APIs the Fitbit API token expires every eight hours if your application doesn't make a request at least once every eight hours to create an automated refresh token you must generate an entirely new set of tokens and start over it has not been fun to work with on a personal note my mother who's been bedridden in the hospital ICU for weeks finally got over pneumonia fever and sepsis she's now at a rehab facility walked half a mile on Saturday and daily calorie intake average is about 3000 from 89 pounds up to 110 pounds in two weeks Fitbit by the way has no options for people who need to gain weight so yeah definitely wishing you well with all of that for sure DJ Devon next up I will send it over to Jeff Hi again so most of my work has been on the USB keyboard this weekend I added support for alternate keymaps right now only ASCII is supported uh so Naradoc implemented alternate keymaps for USB HID which were used for sending strings from a host or from Sergipython to a host computer but you can kind of create the reverse of that table so that you can interpret a an international keyboard's key presses into ASCII so that is why that was useful uh my testing was done on the French layout which is known informally as as Erty it moves around a couple of the alphabetical characters including swapping A and Q putting M where the semicolon is even more fun you have to use the alt gr modifier to type curly braces and shift to type the numbers so it's really not a program or centric layout but it's great if you need to type French letters I guess right now modifiers arrows page up page down caps lock etc cannot be remapped those are fixed in function I got key repeat working and the code is in a pull request to Scott's USB branch if you want to take a look at that there's a link in the notes doc but I think actually what I will do is once Scott's initial USB host pull request is merged I will recreate this pull request against Sergipython instead of against Scott's fork the other thing that I've been experimenting with is the screen-based text editor it's in good shape the most glaring emission is no undo and the second most glaring is no search again there's a link to that code in the notes doc so what's up next for this to be useful without a host computer that means you're going to be displaying the editor on display IO display IO doesn't currently have a way to show you the cursor position which did not use to be very important but if you're using a full screen editor it becomes pretty important so we need some scheme to support a visible cursor you get Scott thinking about things and he gets some very ambitious ideas he's like well let's do let's do emoji and let's do CJK and let's do everything I'm trying not to bite that much off right now I'm trying to just find a way to show a cursor on display IO no offense Scott the other things that we need in the core are to decide how the editor will be invoked such as there's that moment at which you can press ctrl-c to drop into the REPL and any other key to restart your program we might pick another letter like ctrl-e to start the editor I think that's likely what we'll do and then the editor will need to be installable via circa the repository transfer data for you and all that stuff my one note on the experience of using the USB host the keyboard stops working if I for instance leave circuit python running overnight it works again once I replug the keyboard which in this case I've only tested with one wireless keyboard so the next step is to test with a different keyboard and only after that trying to find if there's a bug and fix it and the other thing that I have coming up Lamar sent me a prototype of the Metro RP 2040 it's currently inside the shipping system my job is to check that the SD card works with both SPI and SDIO protocols and I will probably initially do that just by building something under the Arduino or Pico SDK setup ultimately we'll need to pull in some code from a library called Pico extras into circuit python to support the SDIO using the PIO peripheral and that will be plenty enough to keep me busy thank you all right thanks Jeff next up is catney all right so uh since I can remember which is to say I'm sure there's stuff I missed over the last two weeks but I published the gamepad qt guide the stem audio amp guide the TRS jack breakout guide and the i2s bff guide um updated the sht 40 and 45 guide to include the new sht 41 this really good guide is in moderation I took over the python on hardware newsletter for three weeks beginning last week shipped the first takeover newsletter this morning um so this week the first thing that's up is post newsletter tasks there's a bunch of stuff to be done and scheduled for the rest of the week once the newsletter goes out so I need to do that I need to go through the feedback on guide reviews so folks review my guides obviously and then provide feedback and tell me stuff that could be done better so I need to go through that and then also I will be updating my raspberry pi breakout testing setup um I don't use it that often and often forget and then it ends up unusable because it's not even close to updated um so I need to get back done and then actually uh make it to do somewhere that reminds me to update it every so often even if I'm not using it uh most of this week we'll be going through guide feedback um whenever anybody clicks the feedback link the bottom left of a learn guide uh it posts to um like a background database in in learn and you can obviously not you personally but I personally can view all the feedback on all my guides and um usually we go through that regularly but it's been a bit bonkers lately so um I have a lot of guide feedback to do and so that's going to be the task for this week other than working with paul on next week's newsletter and that's what I've got all right thank you catney uh next up is maker melissa uh so our last couple weeks uh I added the submission boards to circuitpadfund.org I updated the led backpack guide for the 1.2 inch 7 segment led backpack uh I updated the matrix portal s3 for definition to work with the newer revision um I updated the rgb display examples to work with the latest pillow library um I wrote the ek 79 686 2.7 inch e ink driver for circuit python and I updated the 8 of 4 circuit python e pd uh library to work with the ek 79 686 ink display uh I updated the 2.7 inch ink uh learn guide and I started working on testing out and figuring out a new touchscreen controller chip uh to get working with the raspberry pie device tree and this week I'm gonna continue doing that right thank you melissa uh next up is paul thanks tim um as we've been talking about I'm working on the python on hardware newsletter if you see some uh news or a cool project please make sure to let us know the more info we can get in there the better thanks for sure yep thanks to you and catney as well for taking that on uh last up for the status updates is going to be scott there's the button uh okay so for me uh the usb host pr will be sent out really this week slash today I got the pio usb changes need me did uh merged in so i've got to update my stuff um I was working on the intel keys but sending a report doesn't seem to be working so i'm still debugging that so i'm gonna i'm gonna pr even though it may not work perfectly and we'll go from there um I did get hit report parsing and descriptor parsing working in chi-tie struct which has an awesome web IDE um I posted the code for that as gist so that you can just copy there and then post them in the web id with your data and then also I've been using salier captures plus pi siggrac to analyze the usb traces so um I'm in let's get the pr out and see how it works mode and also let me keep working on it and find the issues so that's where I'm at right thank you scott so that was the end of our status updates section uh the final section of the meeting is in the weeds is a reminder in the weeds is an opportunity for more long form discussions these can either come out of status updates or be identified ahead of time if you have it in the weeds topic and you have not already put it in the document please do that pretty much nowish um we do have one so we'll start with that and if another one pops up then we'll hit that otherwise we'll be wrapping up afterwards the current item that is in there is from tyeth who's text only so i'll read this one it says um in the weeds related this question uh got issues with the adafruit scd 4x circuit python driver uh seems to rarely have data ready equals true since filing the issue i had a user in discord with the same issue does anyone else have one of these co2 sensors who could look into it um i don't have the links but it sounds like there probably is an issue link maybe that goes with that um i do not personally i don't think i have that sensor otherwise i would be happy to try it out but uh yes there we go thank you for the uh the link there give me to it there jeff yeah thanks so it looks like i'm guessing just based off the name i'm guessing data ready is some api you can call it it will tell you true false whether there's actually a value to read and so then your code would be structured like check if there is a value and then if there is read it and it sounds like oftentimes it tells you false there is no value to read i have two scd 41s and one scd 40 uh keep the ee says okay keith if you uh yeah you end up having a chance yeah i'll take a look into this um probably tomorrow uh with the scd it can only sample carbon dioxide once every five seconds and it lets you pull it repeatedly and if it's not ready to sample again it just gives you the data not ready flag so i'll go into this i've got a few and uh earlier this weekend dan and i were discussing with another individual another inconsistency or issue with one of these and i'm willing to bet they're probably tied together these are uh when they sample carbon dioxide they're very power hungry and i have had to swap power supplies on two out of three of the sensors i've got uh and it's um i'll look into it uh and i'm going to try and get a like convenient little write-up of saying hey if you see these problems consider looking into these solutions because i've had it two out of three times and then another user in the discord had it this weekend um but yeah i'll take a look into it awesome yeah definitely appreciate that and yeah once you if you figure anything out like that we can definitely add it to the read me or somewhere maybe in an alert or something like that on the guide page or something to get folks pointed there if they are having similar problems that's definitely good to know all right so thank you to uh keith for that um and we do not have any other in the weeds topics so let me get back to here and we will wrap it up for the day let's do a time stamp for that one um okay yeah here we are so uh that was the circuit python weekly meeting for july the 10th 2023 thank you to everyone who participated if you as a reminder if you want to help 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 will also be featured in the python for microcontroller newsletter uh this week's meeting will be in next week's newsletter since those are coming out on mondays the next meeting will be uh on monday the 17th seven days from today at its normal time of 2 p.m eastern 11 a.m pacific the meeting as always is held on the adafruit discord which you can join by going to adafru.it slash discord if you like to be notified of any changes to the day or time or you just want reminders you can also ask to be added to the circuit pythonistas role on discord uh and that is all for now so thanks everybody and we hope to see you all next week