# CircuitPython Weekly for May 2, 2022


Video is available [on YouTube](https://youtu.be/NLfJOfkIDwA).


Join here for the chat all week: http://adafru.it/discord.


The CircuitPython Weekly happens normally at 2pm ET/11am PT on Mondays. Check the #circuitpython channel on Discord for notices of change in time and links to past meetings. Meeting times are also available in [iCal format](https://raw.githubusercontent.com/adafruit/adafruit-circuitpython-weekly-meeting/master/meeting.ical) for use with standard calendar applications and can also be viewed [in your browser](https://open-web-calendar.herokuapp.com/calendar.html?url=https%3A%2F%2Fraw.githubusercontent.com%2Fadafruit%2Fadafruit-circuitpython-weekly-meeting%2Fmain%2Fmeeting.ical&title=CircuitPython%20Meeting%20Schedule&tab=agenda&tabs=month&tabs=agenda).


If you want to be able to participate in the meeting by speaking, you will need to be added to the @circuitpythonistas role on Discord. Please ask any one of the moderators or admins to add you if you’d like to join.


CircuitPython development is sponsored by Adafruit. Please support them by purchasing hardware from https://adafruit.com.


Reminders: Podcast available on most services. Let us know if we’re missing some.
## 8:45 Community News
### MicroPython Turns 9 Years Old
 MicroPython Turns 9

The 29th of April marked the date on which the first line of MicroPython code was written, which is now 9 years ago! Via the MicroPython Newsletter, Issue 12, here are some highlights at this point:
In the past 12 months the main MicroPython code has seen:
* 1210 commits, up from 817 in the previous year (there are now 13393 total commits)
* 147 contributors, up from 93 in the previous year; thank you to all of you!
* And versions v1.16, v1.17 and v1.18 were released.
MicroPython also gained numerous new features, including f-strings, speed-ups, and many additions to ports. [Detailed list in newsletter]/
MicroPython was again part of Google's Season of Docs, for 2021, where there was a new technical writer who added documentation about the rp2 port, detail about the differences between MicroPython and standard Python, and other things.
GitHub Sponsors has been growing well over the past year, and MicroPython is now receiving USD $4150/month, up from USD $1250/month this time last year. This funding is greatly appreciated and goes towards maintaining the open source code. You can find the sponsorship page here.
### New MicroPython Version 1.19 Coming Very Soon
From Twitter: We plan to release v1.19 very soon, which includes a completely reworked .mpy file format to facilitate freezing Python code without rebuilding firmware.
### PyCon US 2022 Coverage
 PyCon US 2022 CircuitPython Team

PyCon US 2022 was held this past week in Salt Lake City, Utah, US. With all the Python happenings, there were plenty of Python on Hardware moments. Above are Jeff, Kattni, and Melissa from the Adafruit CircuitPython Team and CircuitPythonista and library author Rose.
Kattni gave a talk "Simplicity and Fun Learning with CircuitPython". You can see the slides - GitHub (PDF).
Adafruit hosted CircuitPython Open Spaces. Circuit Playground Bluefruit boards were available to code during the events. The code, etc. is available - GitHub.
### CircuitPython 7.3.0 Beta 2 Released
CircuitPython 7.3.0-beta.2, the third published beta release for CircuitPython 7.3.0, is now out on circuitpython.org. It is relatively stable, but there will be further additions and fixes before final release - Adafruit Blog and GitHub.
### Project of the Week: The Boston College Physical Computing Presentations
The Boston College Physical Computing students demonstrated their class assistive technologies project demonstrations, with the projects coded in CircuitPython.
Assistive technology (AT) projects presented to Boston College Campus School by BCPhysComp students: a wheelchair mountable pinball machine, a color cube game for pre-schoolers, a haptic communication tool for a student who is deaf-blind, all powered by CircuitPython - Twitter.
[more details in newsletter]
Adafruit's Dan Halbert (creator of the Linix/Unix "more" command) checks out the students' projects - Twitter.


### Newsletter Details
The CircuitPython Weekly Newsletter is a CircuitPython community-run newsletter emailed every Tuesday. The complete [archives are here](https://www.adafruitdaily.com/category/circuitpython/). It highlights the latest Python on hardware related news from around the web including CircuitPython, Python and MicroPython developments.
To contribute your own news or project, edit next week's draft [on GitHub](https://github.com/adafruit/circuitpython-weekly-newsletter/tree/gh-pages/_drafts) and [submit a pull request](https://help.github.com/articles/editing-files-in-your-repository/) with the changes. You may also tag a tweet with #CircuitPython on Twitter, or email cpnews@adafruit.com.
11:35 ## State of CircuitPython, Libraries and Blinka
### Overall


* 29 pull requests merged
  * 15 authors - Neradoc, KurtE, dhalbert, ilikecake, tekktrik, wtuemura, mwisslead, jepler, ZodiusInfuser, bergdahl, ViktorWiz, fivesixzero, weblate, FoamyGuy, hexthat
  * 8 reviewers - dhalbert, tekktrik, ladyada, gamblor21, FoamyGuy, makermelissa, jepler, deshipu
* 18 closed issues by 9 people, 16 opened by 13 people


### Core
* 16 pull requests merged
  * 12 authors - mwisslead, KurtE, ViktorWiz, dhalbert, tekktrik, ZodiusInfuser, weblate, wtuemura, FoamyGuy, hexthat, jepler, bergdahl
  * 5 reviewers - dhalbert, gamblor21, jepler, deshipu, ladyada
* 14 open pull requests
  * https://github.com/adafruit/circuitpython/pull/5352 (Open 228 days)
  * https://github.com/adafruit/circuitpython/pull/5491 (Open 192 days)
  * https://github.com/adafruit/circuitpython/pull/5999 (Open 81 days)
  * https://github.com/adafruit/circuitpython/pull/6037 (Open 75 days)
  * https://github.com/adafruit/circuitpython/pull/6119 (Open 57 days)
  * https://github.com/adafruit/circuitpython/pull/6217 (Open 30 days)
  * https://github.com/adafruit/circuitpython/pull/6247 (Open 26 days)
  * https://github.com/adafruit/circuitpython/pull/6256 (Open 25 days)
  * https://github.com/adafruit/circuitpython/pull/6288 (Open 15 days)
  * https://github.com/adafruit/circuitpython/pull/6325 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/6330 (Open 1 days)
  * https://github.com/adafruit/circuitpython/pull/6328 (Open 1 days)
  * https://github.com/adafruit/circuitpython/pull/6327 (Open 1 days)
  * https://github.com/adafruit/circuitpython/pull/6331 (Open 0 days)
* 10 closed issues by 5 people, 8 opened by 6 people
* 523 open issues
  * https://github.com/adafruit/circuitpython/issues
* 7 active milestones
  * 7.2.x: 0 open issues
  * 7.3.0: 6 open issues
  * 7.x.x: 30 open issues
  * 8.0.0: 12 open issues
  * Libraries: 19 open issues
  * Long term: 455 open issues
  * Support: 1 open issues
  * 0 issues not assigned a milestone


* Core download stats available at https://circuitpython.org/stats


### Libraries
* 13 pull requests merged
  * 6 authors - Neradoc, ilikecake, tekktrik, FoamyGuy, fivesixzero, jepler
  * 6 reviewers - dhalbert, tekktrik, FoamyGuy, makermelissa, jepler, ladyada
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_SharpMemoryDisplay/pull/19 (Days open: 63)
    * https://github.com/adafruit/Adafruit_CircuitPython_VL6180X/pull/28 (Days open: 57)
    * https://github.com/adafruit/Adafruit_CircuitPython_SharpMemoryDisplay/pull/21 (Days open: 43)
    * https://github.com/adafruit/Adafruit_CircuitPython_PortalBase/pull/70 (Days open: 6)
    * https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad/pull/58 (Days open: 6)
    * https://github.com/adafruit/Adafruit_CircuitPython_SD/pull/48 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_PIOASM/pull/41 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_Typing/pull/13 (Days open: 2)
    * https://github.com/adafruit/Adafruit_CircuitPython_PIOASM/pull/42 (Days open: 2)
    * https://github.com/adafruit/Adafruit_CircuitPython_VL53L1X/pull/5 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PyBadger/pull/58 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MONSTERM4SK/pull/12 (Days open: 1)
    * https://github.com/adafruit/CircuitPython_Community_Bundle/pull/100 (Days open: 1)
  * 18 open pull requests (Oldest: 580, Newest: 3)
* 7 closed issues by 4 people, 7 opened by 7 people
  * 632 open issues
  * 197 good first issues
* https://circuitpython.org/contributing
Library updates in the last seven days:
**Updated Libraries**
 * [Adafruit_CircuitPython_PortalBase](https://github.com/adafruit/Adafruit_CircuitPython_PortalBase)
 * [Adafruit_CircuitPython_Typing](https://github.com/adafruit/Adafruit_CircuitPython_Typing)
 * [Adafruit_CircuitPython_SD](https://github.com/adafruit/Adafruit_CircuitPython_SD)
 * [Adafruit_CircuitPython_SharpMemoryDisplay](https://github.com/adafruit/Adafruit_CircuitPython_SharpMemoryDisplay)
 * [Adafruit_CircuitPython_VL6180X](https://github.com/adafruit/Adafruit_CircuitPython_VL6180X)
 * [Adafruit_CircuitPython_ImageLoad](https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad)
 * [Adafruit_Blinka](https://github.com/adafruit/Adafruit_Blinka)
 * [CircuitPython_Community_Bundle](https://github.com/adafruit/CircuitPython_Community_Bundle)


### Blinka
* 0 pull requests merged
  * 0 authors -
  * 0 reviewers -
* 5 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka/pull/417 (Open 446 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/496 (Open 280 days)
  * https://github.com/adafruit/Adafruit_Blinka_bleio/pull/40 (Open 206 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/201 (Open 146 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/579 (Open 2 days)
* 1 closed issues by 1 people, 1 opened by 1 people
* 74 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* Piwheels Downloads in the last month: 10002
Number of supported boards: 88


## 15:10 Hug reports


@danh
* Thanks to @jepler, @makermelissa, @kattni, @krayola, @tekktrik (who else did I forget?) who are attending PyCon, absorbing new ideas and introducing people to CircuitPython.
* PyCon Sprint participants who are working on things for CircuitPython


16:20 @david.glaude: (lurking)
* Group Hug


16:42 @deshipu (can't attend)
* @dhalbert for fixing a nasty displayio bug and explaining it to me
* all CircuitPython community at PyCon for spreading the love


17:00 @foamyguy
* @paulsk for trying out and showing some usages of the new TabLayout class
* @cwalther for the supervisor.set_next_code_file() functionality
* JetBrains for following me on twitch and offering a bundle of their IDEs to use.
* @shulltronics for a fix in Blinka to allow Blinka_Displayio to work on PCs
* @kattni and @makermelissa for running sprints at PyCon
* @jimmyttri @ktkinsey37 @LuckyDav88 @rmblau and any others for working on typing information PRs (or anything else circuitpython related) during sprints at PyCon
* @tammymakesthings for helping out with reviews on typing PRs.


19:20 @jasonp (not attending)
* @danh and Neradoc for the weekend MacroPad/HID help - Thanks!


 19:40 @jepler (missing meeting)
* @kattni so nice to see you again at pycon
* @makermelissa so nice to finally meet you!
* Both of them a second time for staying to run the sprints as well.
* Everyone else I met at pycon: You were awesome and it filled my heart with joy to be in the same space with you all learning about Python and much more
* A ton of people at PyCon know about Adafruit and love what we do. Those that didn’t yet, really wanted to hear about it.
* @danh thanks for holding down the fort!


20:24 @jerryn
* Group hug.


3:15 @kattni
* Thank you to @adafruit for sending us to PyCon
* @KeithTheEE for testing, updating and PRing all of the examples from 2019 to the PyCon2022 repo so folks had examples to work with during the Open Spaces
* Hugs to the PyCon organisers for putting together an amazing conference
* The Education Summit for welcoming my talk
* Everyone who attended the Open Spaces
* @objectfox and @akubera for submitting examples to the PyCon2022 repo
* The folks who have joined us for Sprints
* @jepler and @makermelissa for joining me at PyCon this year
* @Tekktrik for stopping by our Open Spaces and for helping out with Sprints on Discord
* @Foamyguy for all the help he’s providing on Discord for the Sprints
* Many more I have missed - a group hug!


21:00 @KeithTheEE (missing meeting)
* @kattni for helping with the bluefruit pull requests, and guiding me to getting it up and running when she was already swamped with prep for PyCon
* @Neradoc for continuing to help answer questions about microcontrollers across a number of discord servers, helping make sure the Circuit Python world is constantly welcoming
* A group hug to everyone


4:21 @makermelissa
* @adafruit for sponsoring us to attend PyCon this year
* Everyone who helped put together PyCon US 2022
* @jepler and @kattni for all your help at PyCon
* @tekktrik for hanging out with us at PyCon
* @krayola (Rose) for all your help at PyCon. Having an extra person is super helpful.
* Paul Cutler for having me as a guest on the CircuitPython show. The episode was released today.
* Everyone who stopped by the Open Spaces during PyCon
* Everyone joining us for Sprints at PyCon
* All the wonderful people I met here
* Group Hug to anyone I missed.


21:25 @mark(gamblor) [ lurking ]
* Everyone at PyCon introducing new people to CircuitPython, wish I could have been there.
* Group hug to everyone else


21:45 @tammymakesthings (missing meeting):
* @foamyguy for more great displayio streams recently, which are helping me think about how I want to design my card deck library
* Group hug to the community for being amazing!


22:10 @tekktrik
* @kattni, @makermelissa, @jepler, and @krayola for an awesome job with the PyCon open spaces.  It was an absolute blast meeting up with you all in person and getting to chat and hang out face-to-face!
* @kattni and @makermelissa for facilitating the development sprints - excited to see all the contributions!
* @tammymakesthings for taking a look at one of my PRs and providing feedback
* Group hug!


23:04 ## Status Updates


23:30 @danh
* Released CircuitPython 7.3.0-beta.2 last week, to catch up on about three weeks of fixes and additions.
* Fixed a SAMD21 issue that caused displays not to work across VM instantiations.
* Continuing to work with an Espressif engineer on a fix for long delays between I2C transactions for ESP32-S2. The simplest test program worked, but CircuitPython showed timeout errors. I made a slightly more elaborate test program that adds a FreeRTOS task, and it’s now imitating the CircuitPython error.
* Will be systematically testing functionality on ESP32-S3. We have reports of various issues.


26:27 @david.glaude (lurking)
        Last week:
* First working prototype of mouse emulation to encode a texture from an in-memory buffer into Game Builder Garage (a “game” on Switch).
        Right now:
* Read data from a binary file “GTD” format, list all the GTD files in the flash and process them one by one.
        This week:
* Display GTD image file in displayio, file has implicit palette, one byte for the most frequent color index and 4096 bytes for the 64x64 pixels of the image.


26:15 @foamyguy
* Last week
   * Found out that I unfortunately deleted my work on the TabLayout that I had started a few weeks back (learn from my mistake and backup early + often and don’t do your development solely on microcontrollers, copy the code back to your PC after making changes!)
   * Re-implemented the TabLayout up to the same point that I had it before. Code hopefully slightly better this time around as a silver lining.
   * Testing and reviewing various PRs including some typing ones and a Blinka PR to get Blinka_Displayio working on PCs with my Blinka_Displayio_PyGameDisplay library.
   * Watched many great talks from PyCon on the online dashboard.
* This week
   * (remotely) Helping new contributors working on typing and other stuff during sprints at PyCon, will be reviewing PRs this afternoon after meeting.
   * Finish up the TabLayout class and make a PR for it, main thing still needed is touch interaction and I don’t think it should be very difficult once I get into it.
   * Implemented a Snake game using displayio primarily meant for PyGamer / PyBadger devices, but could be tweaked to run on others.
   * Figured out how to use supervisor.set_next_code_file() to integrate the snake game (or any other script) with the standard PyBadger conference badge example.


31:48 @jepler (not at meeting)
* Last week:
   * Floppyio merged! The capabilities are less than the Arduino library, but it still enables reading raw flux & MFM format floppies.
   * Pycon! I attended Friday through Sunday for the talks, but sadly had to miss the sprints just due to scheduling.
   * While at Pycon I helped each day with an Open Space, letting people learn at their own pace with a CircuitPlayground Bluefruit and helping when they had questions.
* This week:
   * I’m exhausted.
   * Release Adafruit_CircuitPython_Floppy library which takes care of things like running the drive’s motors
   * Blog about some of the talks I attended and some of the things I learned in hallway track. If you have time to watch just one talk video once they go up, I recommend the keynote by Sara Issaoun about the Event Horizon Telescope, which wouldn’t be possible without Python to do the data analysis. However, many talks I attended were amazing, and I always heard that in the other room there was an amazing talk happening at the same moment.
* Soon:
   * Taking time off from May 16 - June 24. I might drop in for a Weekly meeting somewhere in there, but being a lot less plugged in is among my goals.
   * Learning more about jupyter notebooks, it’s on my list of things to do without hardware while taking time off


32:20 @jerryn
* Not much time available but struggled with rfm9x issues regarding non-default modem settings. The CP library does not play well with the Radiohead library for some settings. Still investigating and puzzled. According to the datasheet, there is good reason for confusion ;-). It will have to wait a few weeks for me to do any more.
   * There is an open issue if anyone else is interested in taking a look. https://github.com/adafruit/Adafruit_CircuitPython_RFM9x/issues/70
* Will be away for the next two weeks with little or no internet/cellphone access :-)




5:41 @kattni
* Last week:
   * PyCon prep
   * Travel to PyCon
   * Attend and give a talk at the Education Summit
   * Host mini-sprints at the Edu Summit
   * Host Open Spaces at PyCon
* This week:
   * Host Sprints at PyCon
   * Travel home
   * No idea, I haven’t looked at my list.


6:44 @makermelissa
* Last Week:
   * Finished up the capacitive and resistive Touch Drivers to a point they are basically functioning
   * Prepped for PyCon
   * Traveled to PyCon
   * Attended PyCon
   * Helped Kattni with the mini-sprint at the Education Summit
   * Helped host the Open Spaces at PyCon
* This Week:
   * Helping Host the Sprints at PyCon
   * Traveling Home
   * Not sure what else.


33:35 @tammymakesthings (missing meeting):
* Last week:
   * Only one [Twitch](https://twitch.tv/tammymakesthings) stream this week because of a hardware issue with my computer which I hope has now been solved.
   * Continued working on my displayio card deck library
   * Submitted a PR for [piku](https://github.com/mraleson/piku) to allow it to work properly with boards that have a lot of flash storage space.
   * Did my first [PR review](https://github.com/adafruit/Adafruit_CircuitPython_TPA2016/pull/10) and left comments. Hoping to do more PR reviews and join the review team soon.
* This week:
   * Twitch streaming  - hopefully Wednesday PM and Sunday AM (Pacific time) and maybe one more popup stream now that I’ve hopefully gotten the hardware issue sorted out.
   * Continuing to work on the displayio card deck library. The easy stuff is out of the way, so now comes the hard part of actually displaying cards/groups of cards on a display device.
   * Hopefully settling down to a more normal work schedule and regular cadence for CircuitPython-related activities.


34:35 @tekktrik
* Last week:
   * Attended my first PyCon - an absolute blast, definitely learned a lot
   * Finished moving out, can’t wait to do it again in a few months 🥲
   * Finally designed my first open source hardware - the auto-lighting menorah I’ve put off
   * Continued reviewing changes to PRs I hadn’t been able to get to
* This week:
   * Refactoring the ATECC library
   * Finishing up some feature additions to the MAX7219 library whose hardware I’ve been waiting for to arrive in the mail
   * Also, unpacking everything in the new place

## 36:30 In The Weeds
@danh - implement auto-backup when writing to CIRCUITPY from an editor or IDE.


## 39:23 Wrap-Up
