CircuitPython Weekly Meeting for January 13th, 2025


Welcome to the CircuitPython Weekly meeting notes! Feel free to add your Hug Reports and Status Updates before the meeting, alphabetically by your username. During the meeting, we go through them in order. If you can’t make the meeting and would still like to participate, add your notes with a “(missing meeting)” after your username and we’ll read them off for you. 


Add any longer-form discussion topics or general questions you have to the “In the weeds” section. 


Thanks! We hope to see you in the meeting!


Tim is hosting.


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


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


The CircuitPython Weekly Meeting normally is held at 2pm US 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 for use with standard calendar applications and can also be viewed in your browser.


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 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. The canonical URL for the podcast version is https://adafruit-podcasts.s3.amazonaws.com/circuitpython_weekly_meeting/audio-podcast.xml which you may be able to enter directly into compatible podcast apps.
## 04:21 Community News
### 05:18  Scott and Ladyada Talk CircuitPython 2025
Scott Shawcroft, the lead developer of CircuitPython, speaks with Ladyada on the past, present and future of CircuitPython - Adafruit Blog and YouTube.


### 05:41 Raspberry Pi Releases the Raspberry Pi 5 with 16GB RAM
On Thursday, Raspberry Pi released the awaited 16GB RAM version of their Raspberry Pi 5 flagship single board computer. Boards are available from retailers at a price point of $120 US - Raspberry Pi News.
"The optimised D0 stepping of the Broadcom BCM2712 application processor includes support for memories larger than 8GB. And our friends at Micron were able to offer us a single package containing eight of their 16Gbit LPDDR4X die, making a 16GB product feasible for the first time."
They also launched Raspberry Pi Carbon Removal Credits, providing an option to mitigate the carbon footprint of manufacturing, shipping, and disposing of one of their computers. Priced at $4, they use offsets based on UNDO Carbon's enhanced rock weathering (ERW) technology - Raspberry Pi News.
### 06:58 OSHWA Nears 3,000 Open Source Projects and Adafruit Reaches 800
The Open Source Hardware Association (OSHWA) is nearing the certification of 3,000 open source projects worldwide as of the end of 2024. Of those, 800 are by Adafruit - OSHWA.


### 07:32 The Year in Open Source Hardware: Why Open Hardware is Needed
Open Hardware isn't just about abstract principles. Several projects this year offered powerful demonstrations of why Open Hardware is needed - Adafruit Blog and The New Stack. Via BlueSky.
### 08:15 Cyber WalkMan
  

A Cyberpunk-style multi-display music player using Python - hackster.io, DFRobot and hackaday.io. Via X.
08:49 Newsletter Details
The Python on Microcontrollers 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 and submit a pull request with the changes. You may also or email cpnews@adafruit.com, or tag a post with #CircuitPython on Mastodon, Bluesky, or X (formerly known as Twitter),.
09: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.**
## 10:15 Overall
* 25 pull requests merged
  * 13 authors - dhalbert, KeithTheEE, weblate, jepler, CTho9305, Neradoc, jposada202020, bootc, arturo182, ncguk, FoamyGuy, supcik, tannewt
  * 5 reviewers - dhalbert, jepler, FoamyGuy, tannewt, ladyada
* 16 closed issues by 8 people, 9 opened by 8 people


### 11:25 Core
* 15 pull requests merged
  * 9 authors - dhalbert, KeithTheEE, weblate, jepler, Neradoc, bootc, arturo182, supcik, tannewt
  * 3 reviewers - dhalbert, tannewt, jepler
* 19 open pull requests
  * https://github.com/adafruit/circuitpython/pull/7811 (Open 655 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8457 (Open 468 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8647 (Open 418 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/9009 (Open 313 days)
  * https://github.com/adafruit/circuitpython/pull/9094 (Open 292 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/9349 (Open 208 days)
  * https://github.com/adafruit/circuitpython/pull/9385 (Open 196 days)
  * https://github.com/adafruit/circuitpython/pull/9559 (Open 142 days)
  * https://github.com/adafruit/circuitpython/pull/9776 (Open 73 days)
  * https://github.com/adafruit/circuitpython/pull/9804 (Open 62 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/9844 (Open 45 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/9876 (Open 37 days)
  * https://github.com/adafruit/circuitpython/pull/9878 (Open 36 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/9883 (Open 34 days)
  * https://github.com/adafruit/circuitpython/pull/9909 (Open 20 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/9950 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/9946 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/9951 (Open 1 days)
  * https://github.com/adafruit/circuitpython/pull/9955 (Open 0 days) (draft)
* 5 closed issues by 3 people, 4 opened by 3 people
* 780 open issues
  * https://github.com/adafruit/circuitpython/issues
* 7 active milestones
 * 10.0.0: 15 open issues
 * 9.2.x: 10 open issues
 * 9.x.x: 51 open issues
 * Libraries: 22 open issues
 * Long term: 646 open issues
 * Support: 21 open issues
 * Third-party: 16 open issues
 * 0 issues not assigned a milestone


### 13:19 Libraries
* Adafruit Libraries: 348 Community Libraries: 149 (Total: 497)
* 10 pull requests merged
  * 4 authors - ncguk, FoamyGuy, jposada202020, CTho9305
  * 3 reviewers - FoamyGuy, tannewt, ladyada
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_VL53L4CD/pull/17 (Days open: 6)
    * https://github.com/adafruit/Adafruit_CircuitPython_PCF8574/pull/9 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_MPU6050/pull/39 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_LPS2X/pull/17 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_LPS2X/pull/18 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_WS2801/pull/25 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PCF8575/pull/9 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_AS7341/pull/42 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_HTU21D/pull/25 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_SI7021/pull/39 (Days open: 1)
  * 56 open pull requests (Oldest: 879, Newest: 1)
* 10 closed issues by 4 people, 3 opened by 3 people
  * 682 open issues
  * 3 good first issues
* https://circuitpython.org/contributing




#### 17:35 Library updates in the last seven days:
* **Updated Libraries**
  * [adafruit/Adafruit_CircuitPython_AS7341](https://github.com/adafruit/Adafruit_CircuitPython_AS7341)
  * [adafruit/Adafruit_CircuitPython_WS2801](https://github.com/adafruit/Adafruit_CircuitPython_WS2801)
  * [adafruit/Adafruit_CircuitPython_SI7021](https://github.com/adafruit/Adafruit_CircuitPython_SI7021)
  * [adafruit/Adafruit_CircuitPython_VL53L4CD](https://github.com/adafruit/Adafruit_CircuitPython_VL53L4CD)
  * [buildwithpiper/PiperBlocklyLibrary](https://github.com/buildwithpiper/PiperBlocklyLibrary)
  * [jins-tkomoda/CircuitPython_QMI8658C](https://github.com/jins-tkomoda/CircuitPython_QMI8658C)
  * [jposada202020/CircuitPython_slider](https://github.com/jposada202020/CircuitPython_slider)


### 18:02 Blinka (@jepler will read)
* 0 pull requests merged
  * 0 authors - 
  * 0 reviewers - 
* 14 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka_bleio/pull/40 (Open 1193 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/335 (Open 381 days) (draft)
  * https://github.com/adafruit/Adafruit_Blinka/pull/884 (Open 152 days) (draft)
  * https://github.com/adafruit/Adafruit_Blinka_Displayio/pull/140 (Open 148 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/888 (Open 135 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/908 (Open 65 days) (draft)
  * https://github.com/adafruit/Adafruit_Blinka/pull/911 (Open 57 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/914 (Open 42 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/915 (Open 37 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/372 (Open 32 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/921 (Open 21 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/925 (Open 4 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/375 (Open 4 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/928 (Open 1 days)
* 1 closed issues by 1 people, 2 opened by 2 people
* 120 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
  * Piwheels Downloads in the last month: 19292
Number of supported boards: 146




## 18:42 Hug reports
19:05 @foamyguy (hosting)
* @Neradoc for looking into our Ruff configuration in cookie-cutter and figuring out how to have it use more of the checks that we’ve configured it for. 
* @PaulCutler for the CircuitPython show podcasts
* @Liz for helpful resources and guidance on writing new product learn guides
* Group hug


19:35 @CGrover (text only)
* Group hug for everyone in the LA area dealing with the devastating fires.
* @squid.jpg for sharing your inspiring ideas and projects on Paul’s podcast.
* @foamyguy for the “crafting” video streams. The overarching concept and coding techniques are very applicable to other projects.


20:03 @danh
* @Jeff M (discord) and @dbiersach (GitHub) for thorough testing of a CircuitPython regression in 9.2.2 with ESP32-S3.
* Group hug for community helpers in discord in the past few weeks.


20:40 @jepler
* @danh and @retiredWizard for testing on the RP2350B “high PIO pins” PR


20:58 @tannewt
* @squid.jpg for being a guest on the CP Show. Nice to hear about your projects!


21:19 Status Updates
21:45 @foamyguy (hosting)
* Created repo and docs for Display AnalogClock library, cleaned up code, and made a standalone example that runs on built-in display. This week add to bundle, and add an NTP based clock example.
* Added a page to the Wiz lights guide for using the scanning functionality to find lights on the network and map them by MAC address
* Working on guide pages for TMC2209
* Practicing C by implementing basic ciphers and debugging with GDB when I mess up.


23:02 @CGrover (text only)
* Updated the “final” version of the LCARS Weather Display to incorporate a day/night color palette shift based on AIO+ weather sunrise/sunset values. Used cedargrove_palettefilter (available in the Community Bundle) to adjust a range of colors in the background bmp image’s palette. Will make it easy in the future to incorporate a Red Alert display condition, as well. https://adafruit-playground.com/u/CGrover/pages/cedar-grove-weather-architecture-v2-0
* Developed a simple scheme for testing AIO feed “freshness” without resorting to using time calculations. This feature is essential for detecting when the data source device out in the workshop has failed to upload to AIO. The plan is to incorporate it into all the weather system display devices.
* Finally got around to making a simple enclosure for the CG-35 Calculator. Probably would be easier if I used a 3-D printer or laser cutter, but I really enjoy cutting and bending Plexiglas using mostly hand tool techniques. Cg-35-a-retro-rpn-calculator
* Next is to complete two more project enclosures using 2020 Al extrusion parts and then resume the PortalWing PCB project. I’m chomping at the bit to get back to PCB design after a long hiatus.


24:48 @danh
* Released CircuitPython 9.2.2 last Thursday.
   * I added a short delay on ESP32-S2 when doing I2C bus probing. It was giving false positives since recent I2C upgrades.
   * Fixed some bugs and CPython incompatibilities while working on CorrcuitMatter in CIrcuitPython.
   * One regression I am working on: ESP32-S3 does not present to USB when not downstream from at least one USB hub. This is traceable to a TinyUSB update PR.
* Not CircuitPython: Arduino NeoPixel library: fails on Espressif >73 pixels due to stack overflow setting up storage for the RMT peripheral. There is a PR to fix this that I may merge soon. CircuitPython uses a seemingly better way to do it with more ESP-IDF help. This could be a second PR for later after more testing.


27:54 @jepler
* Completed work on RP2350 “high pio pins”
* Did a number of other small circuitpython items
   * A papercut that had been bothering me: the way files are determined for inclusion in the docs is now based on an include list, so that when I have junk files in my source tree it doesn’t disturb the doc build. Overall this should be more maintainable than the exclude list.
* Continued work on Pi 5 RGB matrix support. 
   * Completed “refactor” into a C++ library (vs just a standalone demo program) to the point that it builds – but did not test anything yet.
   * Next after that: wrapping the C++ library to Python


29:50 @tannewt
* Working on Zephyr USB support. Flash should be working on boards with it defined.
* Wrapping up CircuitPython2025 on Wednesday.
* Prepping for Robert Feranac stream next week. Will do an Adafruit Playground with the examples for it. Mostly cribbing from Learn Guides.
* Off next Monday for holiday.
32:08 In The Weeds




32:14 Wrap-Up
Next Monday is Martin Luther King Jr. Day, and the meeting will be postponed until Tuesday. Meeting is 2pm US Eastern / 11am US Pacific on Tuesday January 21st.