 Hello, Kido. Hello, everybody. This is the Circuit Python Weekly Meeting for Monday, December 6, 2021. This is the time of the week when we get together to talk about all things Circuit Python. I'm Dan. I'm sponsored by Adafruit to work on Circuit Python. Circuit Python is a version of Python designed to run on tiny computers called microcontrollers. Circuit Python development is primarily sponsored by Adafruit, so if you want to support Adafruit and Circuit Python, consider purchasing hardware from Adafruit.com. This meeting is hosted on the Adafruit Discord server. You can join anytime by going to adafruit.com. We hold the meeting in the Circuit Python Dev Text Channel and the Circuit Python Voice Channel. We usually hold this meeting on Mondays at 2 p.m. U.S. Eastern Time, 11 a.m. U.S. Pacific Time, except when it overlaps with the U.S. Holiday, then we usually move it to the next day. If the meeting time has changed, we'll notify you via Discord. You can look at the pinned messages at the top to see what's going on with respect to the next meeting, and there's also a notes document there for adding your notes to the next meeting. We record the meeting both in audio and video form and then put it up on YouTube and some other places. If you don't want to record your voice, you're still welcome to participate via the text chat or just by putting your notes in the notes document. The video of the meeting, as I mentioned, will be posted to YouTube. The audio is released as a podcast. There's a notes document to accompany the meeting. You can find the notes document, or I can post the notes document, actually. Here we go. Oops. Here's a link to the notes document if you want to add your notes. The meeting tends to run about an hour or less, and the notes document has timestamps so you can move around easily in the recorded sessions to find out what you're looking for. So the meeting is held in five parts. News, State of Circuit Python, Hogg Reports, Staten Status Updates, and then in the weeds at the end. So we'll get started with community news. I'll start with a timestamp. Let me bring up here. Oops. I'm adding my timestamp to the wrong document. Okay. All right. We'll start with community news. These are items from the Circuit Python, or the Python for microcontrollers newsletter, which comes out on Tuesdays. So these are the upcoming headlines in the newsletter that's not yet published yet. So first thing to know is that Circuit Python 7.1.0 beta 1 is available. Beta 0 was shipped relatively recently, and beta 1 has a few fixes, but there are plenty of more things to fix. You can look on our Circuit Python repo in GitHub and see the list of issues to be solved for 7.x.x. We're trying to address most of those for 7.1.0. The next headline is that we hit 30,000... 32,000 users on the AFRU Discord community. It keeps gradually increasing. We hit 30,000, I think, laid on Friday sometime. So you'll see more publicity about that. It's great to continue to see the community grow. And then the last headline I have from the newsletter for this week is that there'll be a risk 5 summit this week. The event is in-person and also virtual. You can see some links here that have been posted. Thank you whoever is posting the links. For me, guys, thank you very much. And we have a few chips that we support. I think one actually right now that's risk 5, but there'll be more in the future. So keep an eye on this new emerging open source technology. As I mentioned, the Circuit Python Weekly newsletter comes out on Tuesdays. There are archives at AdafruitDaily.com. You can contribute news to the newsletter by sending a pull request to the draft, which is... there's an URL mentioned in the notes. And you can also tag us on Twitter with Has Circuit Python, or you can mail cpnews at Adafruit.com. Any of those are fine ways to get us news items for the weekly newsletter. Thanks very much. Okay, so now we'll move on to the state of Circuit Python. I'll take another timestamp and spell it correctly. In this section, we talk about how things are going in Circuit Python, its libraries, and the Blinka library, especially, as a separate section. So this is mostly about pull requests and issues and so forth. So I'll do the overall section. Overall, we had 38 pull requests merged with 16 authors. I maybe see one person I haven't seen before, Aaron Tusko, maybe aerialist also, I'm not sure. There were 11 reviewers. 30 closed issues. 30 issues were closed by 17 people, and 22 were opened by 14 people. That's great. We have fewer issues opened than last week, which is excellent. Okay, I'll then do the Circuit Python core. That is the core Circuit Python firmware in there. We had 21 pull requests merged by 10 authors, reviewed by seven people. There are still 15 open pull requests. A lot of those are drafts. There are waiting various things. So it's not terrible. We try to keep that number down, but it doesn't matter too much. We had 15 issues closed and 15 issues opened. There are 458 open issues. A lot of those issues, over 400, are long-term issues that are discussion issues, are long-term features, or low priority bugs. There's a 7XX category. There are 23 open issues. We hope to fix those for 710, or the majority of them. So take a look at any of those issues if you want to work on something, or if you have something to contribute, or even if you just want to test. Some of those issues are old, and maybe they've been fixed in 710, and you don't really know that in the beta versions. So Katnie, if you're available, could go ahead and talk to us about the libraries. I am available. Alright, so this section applies to all of the Adafruit Circuit Python libraries, which is everything that starts with Adafruit underscore circuit python underscore, as well as a couple of extras. So across all of those repos, we had 16 pull requests merged by 7 different authors and 10 different reviewers, leaving us with 67 open pull requests. The oldest one that was closed was 144 days old, or merged rather. So it's really good to see that we're still picking up older PRs. We had 15 closed issues by 13 people, and 7 open by 7 people, leaving us with 642 open issues. 258 of those are labeled good first issue. If you're interested in contributing to Circuit Python on the Python side of things, check out circuitpython.org slash contributing. You'll find all of this information and more, and if you are interested in helping out by reviewing, you can take a look at all the open pull requests, see if any of them are something you have hardware for and you can test, or take a look at the code and let us know whether you think it looks good. Any kind of thing like that is helpful. Leave a comment and let us know that you took a look, and once you're more comfortable with that, we can talk about leveling you up to joining the actual review team. If you're interested in contributing code, you can take a look at the open issues. If you're new to everything, good first issue is a great place to start. If you are looking for something more complicated, bug or enhancement may be a place to go. Comment on the issue, let us know that you're working on it, and that way nobody else tries to work on it at the same time. And if you need help with getting started, we are always available to help. There is a guide on contributing to Circuit Python with Git and GitHub, and we are also available on Discord all week long. In terms of library updates in the last seven days, there were no new libraries and four updated libraries, which are available in the notes. That's what I've got. Okay, thank you, Catty. Okay, Melissa, could you do the Blinka section? Sure. Blinka is our MicroPython and CircuitPython... I'm sorry, let me start over. Blinka is our CircuitPython compatibility layer for MicroPython and Raspberry Pi and other single-board computers such as that. And this week we had one pull request merged by one author and one reviewer. We have six open pull requests. I think it's actually a few less, because I got a few merged in this morning. There are currently zero closed issues by zero people and zero open by zero. And that leaves 65 open issues. There were 15,299 pie wheels downloads in the last month, and we are currently supporting 77 boards. I think actually we have a few more to add that got added in this morning as well, so hopefully that number will be larger next week. And that's it. Okay, thank you, Melissa. Okay, now we'll move on to HUD reports. HUD reports is where we got a chance to thank people who have been working in the CircuitPython community for various purposes. It's sort of the opposite of bug reports. We held all the section as a round robin. I'll start, and then we'll go alphabetically after that. I'll start basically to give an example of what a HUD report is, and then we'll just go down the alphabet. We used to wrap around, but it made things more complicated, so this is an easier way to do it. So I'll start. I'll take a timestamp. I'd like to thank Jeff and Jerry who have been trying to work out a difficult issue where there's some kind of interaction between using SD cards and airlift boards, the ESP32 SPI boards. And for some people, they have a lot of trouble with this and other people can't duplicate this problem at all and we can't really figure it out. So if you have a problem with this, find the issue in Adafruit Circuit Python issues and see maybe if you can try it yourself also and maybe you can figure out what is the difference between the things that it's working on and the things that it's not. It might just be the SD cards, but we've tried a lot of different SD cards and for some people any SD card works and for some people any SD card doesn't work, so we haven't figured that out yet. Okay, I'll go on to C Grover who's Textoni, so I'll read their contribution. Thanking Fomiguy and Sedatius for helpful coding examples that were essential in moving the scale and retro-widget projects toward the next coding plateau. The A was slightly thinner up here. Now we'll do David Glaut. I'll also read his notes. Thanks to Anecdata for a lot of networking things I discovered recently and thanks to Tandu for the inclusion of the Raspberry Pi in CircuitPython.org and soon to learn system. Okay, Fomiguy, go ahead. Alright, thanks, Dan. This week, hug reports for GitHub user Aaron Tusko who found an issue in the AVRProg library and they submitted their first ever contribution on GitHub, first time they ever pushed anything to a repo and made a PR out of it, so that was really cool to see. Thank you to Katny who had a nice chat with me last week that I definitely appreciate. Thank you to Scott who helped diagnose some logs that I got out of GDB and pointed me in the right direction on fixing an issue with RP2040 NVM storage. Dexter Starbird who created some really cool display I.O. examples and shared those on the Discord this week. Thank you to Lady Eda and PT for all of all the work they do and the opportunities that they have given to me and then group hug to everybody else. Thanks. Okay, thank you, Fomiguy. Go ahead, Jeff. Alright, I want to start off with a group hug and then a second smaller group hug to the Adafruit Discord moderators. They've had some items that are a little more complicated than a simple ban and forget to deal with in the past few days and for the most part that's been going good, so thanks to them for keeping on top of the community. More technically, I wanted to thank EnigData for keeping an eye on some stuff about USB PIDs that we're going to talk about, I guess, over in the related issue. And to Fomiguy for agreeing to take on a little question mark display I.O. project, I'm sure we'll hear about that when it is time. That's what I got. Okay, thanks, Jeff. Okay, Jerry, you can go ahead. That's... Sorry. Yeah, so thanks to Scott for helping me get started with trying to look at the Broadcom ports and Katni and the whole moderation team for setting and maintaining a really high standard for the moderation on this Discord server and a group hug to the team. Okay, thanks, Jerry. Okay, Katni, go ahead. All right, so my first hug report is to Andy Tuneau on GitHub for reporting discrepancy in the pinouts information on the ITSI-BITSI-RP2040 guide. The pretty pins diagram was accurate and the pinouts details were not, so that was good to get that fixed up and thanks to them for reporting it. To Carter for always helping me figure out pin decisions for guides, specifically this time, whether or not to include specific pins as touchpins for both the Feather ESP32-S2 and the KB2040. To Fome Guy for a lovely chat and taking a very important step forward and a group hug to all the folks on Discord who put a lot of energy and effort into helping other folks. I'm incredibly proud of this community and its members. That's what I got. Okay, thank you, Katni. Okay, I'll read Keith's contribution. They send a group hug to the community for being awesome and now Melissa, if you're ready. Yeah. I wanted to give a hug to Jerry for testing out Pi Camera on the latest Raspberry Pi OS release. I hugged reporter Katni for adding some helpful info and reproducing a web serial ESP tool error and a group hug to everyone else. That's it. Okay, thank you. Okay, I'll read Mark Gambler's contribution. Take his timestamp. He has a group hug and then next is Scott, also known as Tanute. He's not here today. Scott would like to thank Jerry for testing the Raspberry Pi port. Thank T. Ekigami for pointing out the cool struct feature of the UC Types native module in MicroPython. Thank you, guys, for fixing the RP2040 NVM issue. Okay, that's it for hug reports. Move on to status updates where we is our chance to sync up on what we're doing. It has the same format as the previous section. You're welcome to talk about what you've been working on. It doesn't have to be a... It could be something that you're doing but it's not certain Python related. Other things are going on in your life that you'd like to mention, so no problem. Okay, I'll go first. The first thing that I did this past week was I did some minor work on async.io. Mostly, there are some problems with bundling that particular library into the bundle because it doesn't... MPUiCross is unable to compile it in the 6.x bundle. It works for the 7.x bundle but it doesn't have any mechanism right now for excluding it from them. The two bundles are the same except that they're compiled with different versions of MPUiCross. So we may have to figure out some way of doing some versioning on that. Right now, I just put in a lot of caveats various places to tell people to download the library directly. But I've gotten five or six people who said, where's the library? And it's a problem. We need to fix it. Also, I've worked on several bugs that are on the 7.xx issue list and knocked off like two-and-a-half of them so far, working on the other half and will keep working on some other ones as well. So that's what I've been up to. I'll move on to C Grover who's text-only. C Grover says, conducted a marathon session to wrap up the scale project version 2.0 alpha. Significant progress, operational performance, and memory usage with a robust UI. You can see that in C Grover's GitHub repo, Cedar Grove Studios slash scale. Scale version 2.0 alpha code size increased 21%, but free memory increased from 20 kilobytes to 68 kilobytes. Woo-hoo! And there's a complicated and interesting chart here of how the memory allocations changed. Scales, graphics, and touchscreen zones are based size independent. Built-in board size is automatically detected. Users are specified for other displays. Font sizes are based on display size but do not scale proportionally. Tear and alarm settings are stored on the SD card and used upon power-up. To facilitate testing, the code will simulate a missing custom load cell, feather wing board, which is important during the chip shortage to be able to simulate this because the board may not be available. Revise the scales, custom feather wing PCB design to accommodate a less desirable but available chip package. Dip 16 chips are huge. Next, take a break from retro widget development to make a metrics portal snowman decoration with random blizzard and global warming modes. Place that ever-growing Oshpark and Stetzl order. Resume retro widget development once I play in the sandbox enough to extend a superclass works. We'll move on to David Glaude, who's also text-only. Circuit Python things. Tested Wi-Fi monitor mode with Feather S2. Added booster progress bar on my copy of the MAGTAG COVID vaccination percent tracker. See a Twitter post on that. Non-circuit Python things. Added booster in my body for better protection. A lot of Tasmoda failure. Trying to use an ESP8266 in an Ikea Vindrick ding air quality sensor which has a PM1006 sensor in it. Maybe fix the typo in the previous time stamp and I'll take a time stamp for FOMIGuy. Go ahead, FOMIGuy. Alright, thanks, Stan. Last week, I dug out a couple of Arduinos from deep in the pile of microcontrollers to try to learn enough about those to be able to test the PR on the AVRPROG library. That was definitely an interesting adventure. I have not too much experience with Arduino in building the code for it and programming stuff on it, so I had quite a bit of stuff to catch up on, but it turned out to be a fun activity. I worked on a fix for the RP2040 NVM storage, so whenever the next releases if folks grab that, we should be able to write stuff into the NVM storage on those devices now. I worked on a PR for Pi Badger to add support for the LC version of the hardware which has a few of the components that are on the Pi Badger not populated on that one and the cost is a little bit cheaper. Somebody brought that up in the Discord somewhere and tried using the library and it wouldn't import correctly, so I think we got that resolved. I have had a list floating around in my mind of core module examples that I wanted to eventually see get created and I finally got those written out on an issue on the repo in the CirclePython org, so if folks are interested in helping contribute, that's where you can find that list and contribute your own ideas or work on the examples. For this week coming up, a couple of things in mind are working on trying to build the board.pyi file with all of the available pins in it. That was something we discussed a little bit in the weeds last week. Looking to the work that Dan has done recently on cooperative multitasking and there's a learn guide out there so I want to go through that and try it out and then I got a Pimeroni Pico system this week so I'm planning to start working on importing some of the existing games I have over to that device so I think that will be fun as well. Thanks. Okay, thank you. Okay Jeff, you can go ahead. Alright so as you were talking about Dan, I tested but failed to reproduce some reported problems with SD cards and the airlift sharing a spy bus. I did put in some PRs for the ESP32S3 including support for three boards and then just this morning I figured out some of the problems that were keeping me from getting the display going on the ESP32S3 box and there's a pull request in for that as well. This week is a short week for me. I'm going to re-verify some of the camera functionality and build a small demo for internal use and I'm going on a little travel again so I will miss the meeting next Monday so have a good two weeks everybody. Okay, thanks Jeff. Okay Jerry, you can go ahead. Okay, excuse me if I'm a little winded, I just finished my exercise. So I did a bunch of experimenting and tried with the Broadcom port and just I don't know who else has been working with this other than Scott but the 2W, 02W worked as expected but I can't get anywhere with the 4B. I'll bring that up in the weeds if there's any desire to talk about it today but with Scott not here, we can decide if there's any reason to continue that but I'm curious if, particularly if anyone else has been able to use a Pi 4B with the Broadcom port yet now I submitted some PRs for the RFM9X and 6ix9 a foreign user had suggested replacing time.monotonic with supervisor.tixms whenever possible and that was an easy change to make so it's in review and it's working fine on both ports and then for those who have Raspberry Pi and have been struggling with their cameras on bullseye just in case you're not aware, Raspberry Pi is now supporting legacy support for the camera on bullseye so you can bring back the old camera support which disables the new camera support so you can one or the other I found out that some of my old projects that use the camera interface web cameras were working now and the BrainCraft hat now will install normally but TensorFlow Lite still doesn't quite make it, there's some compatibility issues with one of the major with the TensorFlow Lite library so we need to work on that and then so I tried to make sense of this SD card issue too that Bill Jeff and Dan reported and I had some different experience with it I could not reproduce at all the original poster's problem with the Wi-Fi with the air lift and the SD card so I think there are two different issues going on there I did run into several problems between SD card IO not working and SD card working but in several go rounds I just ended up getting more and more confused and when I updated everything to the latest version like the Python 7.0.2 alpha 7.2 alpha whatever everything's working for me now with all the SD cards I have so I don't know what's going on wish I could help more but it's very confusing yeah this is very confusing everybody seems to have a different set of problems or no problems whatsoever thank you alright thanks Jerry okay Katnie you can go ahead hello alright so last week we made a fruit community code of conduct with a couple of new things we'll be updating it on discord and then we'll make an announcement also on discord with updates so that the details are very clear the details are already clear on github because you can check the most recent pull request but we just want to make sure everyone's aware of any changes I published the feather ESP32 S2 guide did some Arduino ESP32 S2 BSP updates related learned what BSP stands for I taught Ann how to use the Adafruit learn system template Jerry you're unmuted I'm sorry basically I'm the only one who's been using the templates I wrote them and I used them and now I get to find out whether or not the instructions that I put in them are clear enough for someone else I published the core of the KB2040 guide it still needs the circuit python essentials pages but we wanted to get that out for folks wrote the ESP32 S2 and a separate RP2040 factory reset templates to put into the ESP32 S2 and RP2040 board guides and updated the circuitpythonpins.c for the KB2040 so the silk pins come first where there are multiple names for the same pin. So far today fixed the it's the RP2040 pinouts page one of the pin details is incorrect merged a couple PRs and continued on the KB2040 guide so this week I'll be finishing the KB2040 guide I'm going to be testing FOMIGUYS Pi Badger PR on a Pi Badge LC FOMIGUY doesn't have the hardware and I do so I'll be testing that before merging it update the ESP32 S2 factory reset page to include the no flashing option it turns out if you flash a basic Arduino sketch onto an ESP32 S2 that doesn't have a bootloader or has a broken bootloader UF2 bootloader it comes free with the UF2 bootloader so if you already have our Arduino setup it's sort of a magical way to fix the bootloader without having to use the web serial ESP tool or the command line ESP tool I'll be starting the Neo Slider guide that's a new product I need to update the DHT guide to reflect the fact that not all boards are supported I need to verify that the feather ESP32 S2 pretty pins is not correct it turns out it might be correct and I made an assumption but it's on my list to verify that the touch pins in Arduino that are indicated are accurate I'm going to make a PR to the circuit Python Adafruit IO guide the example that I did for the feather or that I adapted from Jerry's code for the feather ESP32 S2 does two things it checks to see whether or not a feed exists on Adafruit IO and if it does it gets it and if it doesn't it creates it and then it gets it and in talking to one of our internal devs to make sure that that was okay to do because the code obviously runs every time because it uses deep sleep so it does it every time and I wanted to make sure that was okay and that was fine in talking to Justin we thought it would be nice if there was a create and get feed function in Adafruit IO so that you don't have to actually put the function in your code you can just do create and get feed and it will do exactly that where it checks to see if the feed exists and if it doesn't it creates it and then it gets it so I'm going to be adding that and then I have a number of existing pretty pins diagrams that have not been put in their applicable homes not in the PCB repos and not in the guides so I need to make sure those end up where they're supposed to be and that's what I've got going on okay thank you okay go on to maker Melissa hello let's see last week I finished writing the guide for the for an unchecked laser cat toy which is currently in moderation I added some missing boards to circuit python.org to test out the micro bit v2 on circuit python code editor on several platforms but I was unable to get working on windows I started looking into an error with the web serial ESP tool and found a reliable way to reproduce the error and this week I am going to continue working on that web serial ESP tool error I'll add a few of the new blinker boards to circuit python.org and probably some guide updates after that that's it okay thank you Melissa okay I'll read the next two entries for people who aren't here or Mark is here but text only Mark says got an IS-31 function based on pixel buff working similar to neopixel really dove into the core in native class subclassing if anyone has any questions and I and myself discussed it a bit in a thread on discord or feel free to ask me need to determine where to place any python libraries related to IS-31 need to PR the core work core work I did still I don't know what IS-31 is but I'll find out or we're talking about the thing that's in the glasses I guess that's right okay and then Scott Tannoud who's not here as I mentioned read his status last week added pinmux info into broad comp peripherals that's for the Raspberry Pi broad comp port added pin and use checking and resetting added support for all I2C peripherals over the weekend I figured out my desktop power supply was failing and causing my wake up issue and maybe other things that's good to know this week I'm finishing the circuit python and Raspberry Pi learn guide during my stream finishing full UART support getting a COVID booster shot on Tuesday afternoon so maybe slow Tuesday after and Wednesday last stream of the year this Friday and back on January 7th tentatively okay put in an approximate timestamp I'll guess and finally we'll go on to the in the weeds section which are more detailed technical discussions of things that we want to have some work on as opposed to just status so Jerry you can go ahead if you'd like yeah so let me just start out with a question is anyone else who is online using the broad comp stuff to work on the Raspberry Pi 4B at all which case then that may explain why I don't think anybody has gotten it to work you're not the only one who hasn't gotten it to work okay other people try that's good to know too all right other person tried maybe I'm not sure but I don't remember what that was the compute module works and it's strange that the the two zero for it works really well well it has some zone issues but it works comes up to rebel and yet so and for anyone who's looking at it then what I did find is it when it hooked up OCD open OCD and got everything up it it just comes up to the starting address of 0x200 and sits there it doesn't move so it doesn't appear to be running at all so at least as far as I can tell and then I had some other questions and again I don't know if anybody else can address these who's worked with this toolset when I installed the art64 toolset chain it looks like it's the gdb is built with python 2 not python 3 that was the one I downloaded from wherever there was a link to and just curious if other people have run into that and again has anyone tried or care well gdb uses an embedded version of python so I'm not sure yeah because there's a script and this is my other question that in the referrals area there's some scripts to use with gdb and I'm a little fuzzy about how you actually go about using those but when I tried to import one of them it gave me an error which is clearly a python 2 versus python 3 error it loaded fine but then I still don't know what to do with it but maybe it's we should probably skip all this and I can bring it up yeah you import it in gdb there's some way to run the scripts from inside gdb and then it uses the right interpreter but it's clearly the version I have and I couldn't run gdb until I installed the python 2 dev library so maybe I need to rebuild the arch the whole toolchain but I'm just curious if anyone else got one with python 3 in it because I would have thought this would come up so again if anyone else is doing this otherwise I guess the only one I know of is using it is Scott and I'll check with him when he's available oh hi Scott are we in the weeds yes because I didn't want to derail it otherwise I feel like I saw that too and I don't remember how I got python 3 and gdb instead of python 2 I thought I had installed it straight from the arm source but I don't remember because and there is no gdb-py anymore is that correct I mean these not in my distribution there's not right my understanding is that in the later stuff they just always have python in it okay I might have built it myself okay for exactly that reason okay and then so what do you do with those scripts when you there's one called cortex A exactly what you use yeah so it you don't need it there's a couple of tools in there that can be handy there's one that will read the there's a there's a fault status register that it will read and interpret for you so it'll tell you like this is a page table fault or an access table fault and try to give you some more information that's in there and then there's also a thing that tries to do better backtraces if you're in an exception handler aka in interrupt okay because unlike cortex M cortex A doesn't do any stack manipulation when entering in an exception so the first thing you have to do is do that which means there's not a standard way of doing it and so there's a thing in there to try to unwind the stack correctly across those frames okay so when you you source that file and then you go into a python session to use the tools in it or so for the backtrace thing it'll just automatically pick it up when you do a backtrace and then there's also there's like two commands that adds there's commands that the gdb prompt in correct so there's like arm v8 exception and then there's another one I added a dump stack thing as well that will read from the stack pointer to the top of the stack and just try to figure out source code lines for it so basically like if your stack is broken trying to give you an idea of what the stack is even though it's broken sort of thing as well but it's not required like you right okay well it's working fine it's nice to I'll just try to rebuild it I don't know anything better to do yeah I think I'll have to look but like on Arch we have like package build files that can build them and I think maybe I had to bump the version of the one that they was actually able to get that script to run by just there's just two end equal statements that didn't like it took those out and it actually loads fine so it probably worked yeah it's not doing anything super fancy and then okay then is it your sense that the 4b port is just still broken yeah I was hoping I'd be able to get to it this week and take a look no pressure from me I'm just curious I don't want to go too far it just at least I was hoping if somebody said oh it works for them I was going to see if I can get an executable in what I would try first is is just try disabling the mass storage and seeing if it works the USB mass storage okay so you won't get the circuit pie drive but you you have to do that in the config.txt file no I'm talking about in the circuit Python build oh in the build we do the build okay yeah just like the circuit pie underscore usb underscore msc just turn that off I would try that my guess what the problem is is that booting off SD card is like putting the SD card peripheral into a different state that like I'm not recovering from because I think it worked before that when I wasn't doing the mass storage stuff but now that I'm trying to do that I think that might be the problem alright thanks so I'm hoping to get to it this week but I've got a couple other things to finish first again this is I understand that the prealpha stays to this one of the things I do want to do before I switch off of it is do a better pass it like the whole family so adding zero support and making sure that the ones that I think work actually work and the other question I had quickly and I think I figured this out but to use the 2w works with the py3 config file which it does work and the 4b is where the 4 config file along with the cm4 so everything non4 goes with the py3 no I don't know about the 1 or 2 yet I haven't looked for that but the chip on the 0 2w is the same chip that's on the 3s it's on the 3s yeah and so what really matters is what cpu is in there that's the thing that matters the most so anything with a cortex a53 which is what's in that py3 chip should work with that open osc2 the open osc2 is working fine I did try and get jlink commander or jlink exe to work with it and it talks to it but it doesn't quite work so because it says it supports the a7 and the cortex m7 right the a7 though not the a72 oh it's a72 yeah so the py4 is an a72 the py2 is an a5 and then the py1 is a rm11 something something some weird long thing before they came up with that branding alright thanks yep okay thanks that was that was interesting do you want to go on voice to discuss the is31 thing okay so it was a brief summary for anyone what I was trying to do is get the ring lights working on the glasses in addition to the display IO and where I ended up was trying to make a subclass of adafruit pixel buff because then it follows the same standard that neopixels do and we can take advantage of other libraries in the end what I did is basically copy what neopixels do and they've got that neopixel write core library that actually does the writing and that's called from a python well from the python neopixel library so I've basically replicated that for the is31 driver and it works now so there is a core pr to go with that that's simple enough to put in the question is is where to put the python library I don't want to cause confusion in the current is31 python library so I'm not quite sure where the best spot to place this is and it's similar there's the pixel buff python class and then there's also all the mappings that map the leds that can be placed there for the common products that are sold so I would want to see it before for sure saying that this is a good idea but I think if we name it something very clear it can be a longer name and then document it that will basically alleviate the confusion and we can just make sure that we document the difference between the current is31 library and the ones that you are going to contribute so I think it's just a matter of naming and documentation to be honest I was just going to say what I can do is get together a zip file of it that would be great for you to look at so it's not you don't have it in a repo yet I don't have it in any repo yet I literally finished it yesterday morning cause I was trying to get it for a project yesterday I was going to say it's easy to rename repos as well so if we like generate one and then as a group decided it's a bad name we can before we put it in the bundle and so on we can make sure that it's something that we as a group agree on but I just want to take a look at it and make sure I'm not staring you wrong so a zip file would be fine is a zip file or actually I could just fork the library and put it in my own repo I guess I mean whatever works, like I said we can always we can always update things like that's the great thing about version controls I would say let's take a look at it see if that makes sense and then we'll just get it up in a place where we can discuss it publicly and make the decision then sounds good I mean you can make your own repo and we can throw it away or transfer the ownership of it too so it sounds like you might have like underscore pixel buff at the end right now or something like that you didn't even come up with a good name because it was in a hurry to finish a product naming things is hard especially with ISFL 3741 to start how do you remember that you write the guide that's how you remember it typing in code a thousand times that's it on that then thanks or Katnie you want to discuss meeting times yeah I just wanted to make sure everyone was aware and Jeff posted it to the text channel earlier on thank you because it meant I didn't have to dig it up but I wanted to point out what then the meetings are going to be for the holidays the next meeting is next Monday on the 13th the following Monday on the 20th we will be having a meeting the following Monday on the 27th of December we will be having a meeting and then the next meeting after that will be January 3rd 2022 the holidays all fall on Saturdays this time normally we drop one in the middle if it falls in the middle of the week but we decided that it actually made sense to just have meetings straight through because it kind of it's not going to impinge on any actual holidays or the holiday observed days on Fridays so again we love to have everyone but please don't feel obligated if you've got family obligations or any other sort of obligations don't feel like you need to attend the meetings obviously you can leave us notes if you want us to read it off you can absolutely attend if you want to but we will not be offended if you can't make it so just to make that clear and unless there's any questions from anybody that's all I've got okay anybody have any comments okay great okay so we wrap up the meeting now you can listen to the Circuit Python weekly meeting for December 6th 2021 on a Monday thank you everyone who participated thank you very much for all your detailed hugs and progress reports and all that if you want to support Adafruit and CircuitPython and those of us that work on CircuitPython consider purchasing items from the Adafruit Shop and Adafruit.com the video of this meeting will be released on youtube at youtube.com slash Adafruit and the podcast will be available on major podcast services this meeting will also be featured in the python for microcontrollers newsletter that's coming out tomorrow visit AdafruitDaily.com to subscribe the next meeting as we mentioned is going to be held next Monday on the 13th of December um meeting will be on there for discord where you found this before adafru.it slash discord if you are a new person and you want to be able to talk during the meeting we add you to the at sign circuit pythonistas role on discord and we'd be happy to do that if you want to participate so thanks very much thanks for everybody for being here and we hope to see you all next week but we understand if this is a busy time of year for everyone so if you'd like to take a break or need to take a break that's great no problem thank you ok I will stop recording now