# CircuitPython Weekly Meeting for October 23, 2023


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


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.hosted.quelltext.eu/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.
## 2:16 Community News
### Raspberry Pi 5 Capabilities Emerge
Each week, more information is released on the Raspberry 5 single board computer (SBC). Of particular interest to CircuitPython Users 
#### GPIO Handling Differences on the Raspberry Pi 5
On Raspberry Pi single board computers prior to Raspberry Pi 5, all GPIO was memory mapped. Accessing a pin was accessing a location in the processor address space. Most software libraries used the memory mapped access technique. With the Raspberry Pi 5, the new RP1 bridge chip handles the GPIO pins. This means they are no longer mapped to the processor's memory. This may break software using older techniques.
In the Raspberry Pi documentation, they refer to the GPIO Zero library as able to properly access the GPIO pins on a Raspberry Pi 5.
GPIO Zero - [Raspberry Pi](https://www.raspberrypi.com/documentation/computers/os.html#gpio-in-python) and [PDF book on GPIO Zero (free)](https://github.com/raspberrypipress/released-pdfs/raw/main/simple-electronics-with-gpio-zero.pdf).
### 4:01 CircuitPython 8.2.7 Released
CircuitPython 8.2.7 is the latest bugfix revision of CircuitPython and is a new stable release - [Adafruit Blog](https://blog.adafruit.com/2023/10/19/circuitpython-8-2-7-released/) and [GitHub](https://github.com/adafruit/circuitpython/releases/tag/8.2.7).
#### Notable changes to 8.2.7 since 8.2.6
* Improve RGBMatrix memory allocation tracking to prevent leaks.
* Reset MDNS after turning off WiFi.
* Three new boards.


### 4:41 Newsletter Details
The CircuitPython Weekly Newsletter is a CircuitPython community-run newsletter emailed every Monday. 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.
## 5:51 State of CircuitPython, Libraries and Blinka
**This report contains information from the previous seven days. Any changes (PRs merged, etc.) made today are not included in this report.**
### Overall
* 18 pull requests merged
  * 14 authors - symm, UnexpectedMaker, RetiredWizard, dhalbert, makermelissa, CedarGroveStudios, c01o, todbot, weblate, hexthat, ilario, Axeia, tannewt, FoamyGuy
  * 3 reviewers - dhalbert, tannewt, FoamyGuy
* 11 closed issues by 6 people, 18 opened by 17 people
* Assigned Hacktoberfest label to 0 issues.
### 7:10 Core
* 10 pull requests merged
  * 7 authors - weblate, hexthat, UnexpectedMaker, Axeia, dhalbert, makermelissa, tannewt
  * 2 reviewers - dhalbert, tannewt
* 25 open pull requests
  * https://github.com/adafruit/circuitpython/pull/6555 (Open 475 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7440 (Open 285 days)
  * https://github.com/adafruit/circuitpython/pull/7618 (Open 245 days)
  * https://github.com/adafruit/circuitpython/pull/7675 (Open 233 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7711 (Open 226 days)
  * https://github.com/adafruit/circuitpython/pull/7811 (Open 207 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7997 (Open 157 days)
  * https://github.com/adafruit/circuitpython/pull/7996 (Open 157 days)
  * https://github.com/adafruit/circuitpython/pull/8033 (Open 150 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8095 (Open 125 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8100 (Open 123 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8233 (Open 85 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8262 (Open 78 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8285 (Open 68 days)
  * https://github.com/adafruit/circuitpython/pull/8349 (Open 53 days)
  * https://github.com/adafruit/circuitpython/pull/8457 (Open 20 days)
  * https://github.com/adafruit/circuitpython/pull/8467 (Open 14 days)
  * https://github.com/adafruit/circuitpython/pull/8491 (Open 3 days)
  * https://github.com/adafruit/circuitpython/pull/8494 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/8493 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/8492 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/8505 (Open 0 days)
  * https://github.com/adafruit/circuitpython/pull/8504 (Open 0 days)
  * https://github.com/adafruit/circuitpython/pull/8502 (Open 0 days)
  * https://github.com/adafruit/circuitpython/pull/8501 (Open 0 days)
* 5 closed issues by 3 people, 8 opened by 8 people
* Assigned Hacktoberfest label to 0 issues.
* 729 open issues
  * https://github.com/adafruit/circuitpython/issues
* 7 active milestones
 * 10.0.0: 0 open issues
 * 8.2.x: 11 open issues
 * 9.0.0: 55 open issues
 * Libraries: 22 open issues
 * Long term: 610 open issues
 * Support: 18 open issues
 * Third-party: 8 open issues
 * 6 issues not assigned a milestone
### 9:54 Libraries
* 8 pull requests merged
  * 7 authors - c01o, symm, FoamyGuy, ilario, RetiredWizard, CedarGroveStudios, todbot
  * 2 reviewers - tannewt, FoamyGuy
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_PN532/pull/66 (Days open: 22)
    * https://github.com/adafruit/CircuitPython_Community_Bundle/pull/184 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_ADS1x15/pull/93 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_HTTPServer/pull/71 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_turtle/pull/36 (Days open: 1)
    * https://github.com/adafruit/CircuitPython_Community_Bundle/pull/191 (Days open: 1)
    * https://github.com/adafruit/CircuitPython_Community_Bundle/pull/189 (Days open: 1)
    * https://github.com/adafruit/cookiecutter-adafruit-circuitpython/pull/233 (Days open: 1)
  * 40 open pull requests (Oldest: 431, Newest: 1)
* 6 closed issues by 5 people, 8 opened by 7 people
* Assigned Hacktoberfest label to 0 issues.
  * 660 open issues
  * 19 good first issues
* https://circuitpython.org/contributing
#### Library PyPI Weekly Download Stats
* **Total Library Stats**
  * 68930 PyPI downloads over 314 libraries
* **Top 10 Libraries by PyPI Downloads**
  * Adafruit CircuitPython BusDevice (adafruit-circuitpython-busdevice): 7589
  * Adafruit CircuitPython Requests (adafruit-circuitpython-requests): 6781
  * Adafruit CircuitPython Register (adafruit-circuitpython-register): 2954
  * Adafruit CircuitPython ADS1x15 (adafruit-circuitpython-ads1x15): 1294
  * Adafruit CircuitPython Motor (adafruit-circuitpython-motor): 897
  * Adafruit CircuitPython PCA9685 (adafruit-circuitpython-pca9685): 784
  * Adafruit CircuitPython NeoPixel (adafruit-circuitpython-neopixel): 690
  * Adafruit CircuitPython Pixelbuf (adafruit-circuitpython-pixelbuf): 689
  * Adafruit CircuitPython ServoKit (adafruit-circuitpython-servokit): 678
  * Adafruit CircuitPython DHT (adafruit-circuitpython-dht): 610
#### Library updates in the last seven days:
* **New Libraries**
  * [cedargrovestudios/circuitpython_chime](https://github.com/cedargrovestudios/circuitpython_chime)
* **Updated Libraries**
  * [adafruit/Adafruit_CircuitPython_PCF8523](https://github.com/adafruit/Adafruit_CircuitPython_PCF8523)
  * [cedargrovestudios/circuitpython_chime](https://github.com/cedargrovestudios/circuitpython_chime)
### 13:07 Blinka
* 0 pull requests merged
  * 0 authors - 
  * 0 reviewers - 
* 4 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka/pull/417 (Open 985 days)
  * https://github.com/adafruit/Adafruit_Blinka_bleio/pull/40 (Open 745 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/299 (Open 148 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/728 (Open 0 days)
* 0 closed issues by 0 people, 2 opened by 2 people
* Assigned Hacktoberfest label to 0 issues.
* 75 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* PyPI downloads in the last week: 11692
* Piwheels Downloads in the last month: 6827
Number of supported boards: 121


## 14:12 Hug reports
@danh (hosting)
* @tannewt for discussion about the merges, and for fixing issues with MicroPython v1.20.0 and v1.21.0 merges
* @tannewt for splitting up displayio
* @Snipeye for noticing and fixing an interrupt issue in RP2040 PulseIn
* @UnexpectedMaker for keeping up with their new and existing boards, which need changes for 9.0.0.


15:38 @CGrover (text only)
* @foamyguy and @tannewt for quickly fixing a git error cascade I caused with a typo in a Community Bundle submission.


15:50 @DJDevon3 (text only)
* @Tannewt for  improving memory allocation for the Matrix Portal S3 & fixing hard faults on file save. 
* @CircuitPythonDevelopers for all their work for ESP-IDF and Micropython merging and pushing a minor 8.2.7 release update this week
* @CGrover for a new audio breakout board that should be arriving this week.
* @FoamyGuy for streaming the task of changing all display.show instances to root_group in library examples and learn guides for the 9.0 release.
* @Group Hug for everyone doing awesome things for Circuit Python.


16:29 @foamyguy
* @CGrover for letting me know I had music in my audio during a live stream. Caught early and deleted to avoid copyright strikes
* @danh for pointing me toward information about Let’s Encrypt certificates and confirming the usage of a problematic type of them on a URL
* @jepler for looking over a library patch and catching an issue introduced by by IDE editing whitespace 


17:13 @jepler
* Group hug
* Dan and Scott for the merge
* Melissa for the Qualia guide
* Anne for the trek themed pcb art project


17:57 @Liz
* Scott for a good discussion and feedback on design with CircuitPython libraries
* FoamyGuy for the flip clock library. I used it for the first time last week and it’s really amazing, especially the script for generating the sprite sheets


18:20 @makermelissa
* @carter for helping me with updating guides and scripts for Raspberry Pi Bookworm
* @jepler for addressing my issue about the buttons on the Qualia while on vacation
* Group Hug


18:39 @tannewt
* @eightycc for looking into a number of CP related things.
## 18:56 Status Updates


19:29 @danh (hosting)
* Released CircuitPython 8.2.7, with some new boards, board fixes, and a fix for RGBMatrix storage issues that can cause errors.
* MicroPython v1.21.0 merge into CircuitPython appears close to done. We have a few more tests that are failing.


19:58 @CGrover (text only)
* Completed the testing and published the BNo055 9-DoF sensor calibration and double-tap methods. Submitted a PR to the driver repo with the sensor calibration example. Also created a CircuitPython method for detecting taps. Notes: https://adafruit-playground.com/u/CGrover/pages/bno055-sensor-calibration-user-position-orientation-and-tap-detection
* Submitted an issue for how to format a `circup` dependency in the requirements.txt list of a Community Bundle repo. Listing a core CircuitPython module is straightforward, but it’s not clear how to reference the dependency on a second Community Bundle library.


20:42 @DJDevon3 (text only)
* Finished designing an enclosure for the 3.5” TFT Featherwing. I’m extremely happy to see LadyAda revising the 3.5” TFT. They haven’t been available in the store for over a year. It is by far my favorite Adafruit TFT for rapid prototyping and beta testing because you can plug any feather into it.
* Upon request designed a stand for a single P5 matrix panel.
* Returned from a 2 week vacation and fixed a lot of issues around the house before starting on multiple Halloween related projects.


21:17 @eightycc (text only)
* Improved maketranslationdata.py efficiency which in turn improves build times by about 33%. I’m working through improving qstr compression (given the current compression dictionary, escaping shorter qstr’s isn’t always the best choice) and will submit a PR when I’m satisfied.
* Bad news on the Mac Sonoma problem. MacOS SIP and sandboxing is blocking my user agent approach to modifying mounts. Putting it aside for now.
* Chunking along on Pico W _bleio.


22:16 @foamyguy
* Started updating learn guide code to use the new displayio root group API and made a draft PR. Will continue with that effort this week
* Continued working on Fun House IOT Dashboard project. It’s nearly got all of the functionality that I had original envisioned, and can serve as a more advanced example of HTTPServer library and the new Template Engine library.
* Investigating issue with cleveland art pyportal project, will try to find the most recent versions of various components involved that allow it to function.


24:21 @jepler (please read, I’ll probably leave after hug reports)
* One small PR to do less aggressive string compression on builds with plenty of free space (for now, rp2040 and espressif)
* I’m halfway through my vacation in Portugal and Spain, approximately. Posting occasional photos: https://metapixl.com/ijtravel – can follow me on mastodon or read with rss reader if you’re interested


24:48 @Liz
* Last week I continued working on some CircuitPython libraries. Scott met with me and gave me some great feedback and resources on thinking about software design. Last week’s episode of the embedded.fm podcast also discussed software design, which felt a bit kismet and it feels like things are starting to click for me.
* Over the weekend I continued adding to my large matrix display project. This started as the sports scoreboard learn guide and has since had openweather data and a clock added. This past week my partner and i have started playing chess and he wanted to have a way to keep track of and display how many wins each of us had. I’m using the SMS messaging in adafruit io to ping a feed for each of us anytime we win. The matrix portal then gets a count of how many entries are in the feed and displays that count below our name. I also used vectorio to show a chess board pattern


26:06 @makermelissa
* Last 2 Weeks:
   * Updated the Qualia ESP32-S3 guide with additional pages on using touch and figuring out the timings
   * Added missing analog pins to the Qualia ESP32-S3 in circuitpython
   * Went through Blinka and PiTFT guides and started updating for Bookworm
   * Updated the FocalTouch Driver to work with the CST826 touch chip
   * Tested various potential fixes to GPIO not working on the Raspberry Pi 5 and decided to go with libgpiod
   * Added Raspberry Pi 5 support to Blinka
   * Fixed pullups and pulldowns for libgpiod in Blinka
* This week:
   * Continue going through guides and testing on latest Raspberry Pi OS
   * Try and get Qualia buttons working through IO expander
   * Update my FocalTouch PR to improve the detection


27:56 @tannewt
* Sent out PR for splitting BusDisplay, EPaperDisplay, FourWire, I2CDisplay. Remove Shape. https://github.com/adafruit/circuitpython/pull/8493
* Sent out PR to merge 8.2.7 into main. https://github.com/adafruit/circuitpython/pull/8494
* Fixed some 1.21 test issues and pushed them to Dan’s branch.
* Probably look into _transmit issue: https://github.com/adafruit/circuitpython/issues/8488
## 31:58 In The Weeds




## 32:05 Wrap-Up
Next meeting Monday, October 30, 2023, at the usual time.
