# CircuitPython Weekly Meeting for August 14, 2023


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


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.
## 02:55 Community News
CircuitPython Day 2023 is Nearly Here - August 18th!
This Friday, August 18 (8/18/2023), is CircuitPython Day 2023! The day highlights all things CircuitPython and Python on Hardware - Adafruit Blog.
Here is a current list of events planned (all in US Eastern Time):
* 10:00am ET – CircuitPython Day Introduction with John Park
* 10:10am ET – Special Edition 3D Hangouts with Pedro, Noe & Liz – In this special livestream, we’re highlighting our favorite projects that use CircuitPython. Special guest Liz Clark joins us to talk about coding and 3D printing.
* 11:00am ET – Beeps and Boops with synthio: A CircuitPython Day Panel Discussion hosted by Paul Cutler – Panelists share everything you might want to know about synthio, including how it came to be, what you need to get started, synthio’s potential for makers and musicians, and more.
* 12:30pm ET – CircuitPython Day Game Jam Stream with Foamyguy – On CircuitPython day I’ll be streaming another game jam session this year. I’m planning to make a replica of the classic Atari and Win 3.11 game Chip’s Challenge. Stop by if your interested in some CircuitPython game development. If anyone else is interested in working on games during CircuitPython Day or the following weekend, I’d be happy to see what you create!
* 1:30pm ET – MatrixPortal Message Board Build with Maker Melissa – Join Maker Melissa on her second live stream. This project will be an animated message board project based on the new Adafruit MatrixPortal S3 and uses the CircuitPython bitmaptools module to produce some graphic effects.
* 2:30pm ET – A CircuitPython Day Chat with Jeff, Dan and Kattni – Join Jeff, Dan and Kattni as they gather again to discuss CircuitPython and related topics. Bring your CircuitPython questions for the live Q&A at the end.
* 4:00pm ET – Special Edition John Park’s Workshop
* 5:30pm ET – Deep Dive with Scott Shawcroft – Join Scott as he answers questions about CircuitPython’s internals and discusses ongoing work including USB host.
* 7:30pm ET – Show & Tell
* 8:00pm ET – Ask an Engineer
Stay tuned to the Adafruit Blog and Adafruit Social Media for links including YouTube! Interaction with shows in-progress will be via the Adafruit Discord server.
Working with CircuitPython? Tag your projects #CircuitPythonDay2023 on social media and Adafruit will look to highlight them.
03:56 Nicholas Tollervey and Fabio Pliger Give an Update on PyScript
One of the most exciting initiatives in the Python space these days is PyScript, which enables Python running natively in a browser. With consistent support from the folks at Anaconda, this project has been making solid strides since its initial release. On the latest episode of TalkPython, host Michael Kennedy catches up with Fabio Pliger and Nicholas Tollervey to see where they are with the PyScript project. - TalkPython.
04:24 Project of the Week: ADA
ADA: the AI Display Assistant is a beginner-friendly project for using ChatGPT on an ESP32. This project uses ChatGPT and an Adafruit MagTag (an ESP32 with an eInk display) to display interesting facts and inspirational quotes. You can adjust the refresh frequency to whatever frequency you want/need - hackster.io.
### 04:48 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.
## 05:27 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.**
### 05:43  Overall
* 17 pull requests merged
  * 16 authors - adam-huganir, FoamyGuy, JohnAZoidberg, bcr, hexthat, scogswell, andibing, jepler, perja12, wtuemura, BlitzCityDIY, bergdahl, makermelissa, weblate, elpekenin, patcher-ms
  * 8 reviewers - caternuson, FoamyGuy, jepler, BlitzCityDIY, ladyada, makermelissa, tannewt, dhalbert
* 7 closed issues by 6 people, 10 opened by 10 people
### 05:58 Core
* 8 pull requests merged
  * 9 authors - JohnAZoidberg, bcr, hexthat, andibing, jepler, wtuemura, bergdahl, weblate, elpekenin
  * 3 reviewers - jepler, tannewt, dhalbert
* 24 open pull requests
  * https://github.com/adafruit/circuitpython/pull/6555 (Open 405 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/6913 (Open 331 days)
  * https://github.com/adafruit/circuitpython/pull/7220 (Open 269 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7440 (Open 215 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7618 (Open 175 days)
  * https://github.com/adafruit/circuitpython/pull/7675 (Open 163 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7711 (Open 156 days)
  * https://github.com/adafruit/circuitpython/pull/7718 (Open 154 days)
  * https://github.com/adafruit/circuitpython/pull/7811 (Open 137 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7997 (Open 87 days)
  * https://github.com/adafruit/circuitpython/pull/7996 (Open 87 days)
  * https://github.com/adafruit/circuitpython/pull/8033 (Open 80 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8095 (Open 55 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8091 (Open 55 days)
  * https://github.com/adafruit/circuitpython/pull/8100 (Open 53 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8190 (Open 23 days)
  * https://github.com/adafruit/circuitpython/pull/8188 (Open 23 days)
  * https://github.com/adafruit/circuitpython/pull/8233 (Open 15 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8262 (Open 8 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8270 (Open 5 days)
  * https://github.com/adafruit/circuitpython/pull/8277 (Open 1 days)
  * https://github.com/adafruit/circuitpython/pull/8281 (Open 0 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8280 (Open 0 days)
  * https://github.com/adafruit/circuitpython/pull/8279 (Open 0 days)
* 5 closed issues by 4 people, 4 opened by 4 people
* 683 open issues
  * https://github.com/adafruit/circuitpython/issues
* 6 active milestones
 * 8.2.x: 0 open issues
 * 9.0.0: 48 open issues
 * Libraries: 22 open issues
 * Long term: 593 open issues
 * Support: 15 open issues
 * Third-party: 8 open issues
 * 2 issues not assigned a milestone
### 07:24 Libraries
* 9 pull requests merged
  * 8 authors - adam-huganir, FoamyGuy, scogswell, jepler, perja12, BlitzCityDIY, makermelissa, patcher-ms
  * 6 reviewers - caternuson, FoamyGuy, BlitzCityDIY, ladyada, makermelissa, tannewt
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_ESP_ATcontrol/pull/65 (Days open: 293)
    * https://github.com/adafruit/Adafruit_CircuitPython_BME680/pull/56 (Days open: 235)
    * https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad/pull/72 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad/pull/71 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_PIOASM/pull/59 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_seesaw/pull/120 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_TCA8418/pull/12 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_LIS3DH/pull/79 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/pull/434 (Days open: 1)
  * 47 open pull requests (Oldest: 361, Newest: 3)
* 2 closed issues by 2 people, 4 opened by 4 people
  * 631 open issues
  * 19 good first issues
* https://circuitpython.org/contributing
#### Library PyPI Weekly Download Stats
* **Total Library Stats**
  * 138266 PyPI downloads over 312 libraries
* **Top 10 Libraries by PyPI Downloads**
  * Adafruit CircuitPython BusDevice (adafruit-circuitpython-busdevice): 6681
  * Adafruit CircuitPython Requests (adafruit-circuitpython-requests): 6240
  * Adafruit CircuitPython Register (adafruit-circuitpython-register): 1852
  * Adafruit CircuitPython NeoPixel (adafruit-circuitpython-neopixel): 1494
  * Adafruit CircuitPython Wiznet5k (adafruit-circuitpython-wiznet5k): 1342
  * Adafruit CircuitPython Display Text (adafruit-circuitpython-display-text): 1281
  * Adafruit CircuitPython ADS1x15 (adafruit-circuitpython-ads1x15): 1192
  * Adafruit CircuitPython MiniMQTT (adafruit-circuitpython-minimqtt): 1178
  * Adafruit CircuitPython LED Animation (adafruit-circuitpython-led-animation): 1131
  * Adafruit CircuitPython Motor (adafruit-circuitpython-motor): 1089
#### Library updates in the last seven days:
* **New Libraries**
  * [adafruit/Adafruit_CircuitPython_USB_Host_Descriptors](https://github.com/adafruit/Adafruit_CircuitPython_USB_Host_Descriptors)
* **Updated Libraries**
  * [adafruit/Adafruit_CircuitPython_ImageLoad](https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad)
  * [jposada202020/CircuitPython_uplot](https://github.com/jposada202020/CircuitPython_uplot)
  * [ricardoquesada/bluepad32-circuitpython](https://github.com/ricardoquesada/bluepad32-circuitpython)
### 09:32 Blinka
* 0 pull requests merged
  * 0 authors - 
  * 0 reviewers - 
* 5 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka/pull/417 (Open 915 days)
  * https://github.com/adafruit/Adafruit_Blinka_bleio/pull/40 (Open 675 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/299 (Open 78 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/694 (Open 9 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/307 (Open 6 days)
* 0 closed issues by 0 people, 2 opened by 2 people
* 102 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* PyPI downloads in the last week: 11694
* Piwheels Downloads in the last month: 10248
Number of supported boards: 119
## 10:30 Hug reports
10:47 @Liz (hosting):
* @carter for many rapid PR reviews last week as I was working on a product guide
* Group hug


10:58 @danh
* @tannewt for a good detailed discussion about the MicroPython v1.19.1 merge.
* @jepler for diagnosing a bunch of the build errors in my draft merge PR.


11:39 @david.glaude: (text only)
* @hathach (tinyusb author) for the great contribution to CP ease of use and now USB Host things.
* @lynt-smitka (Vladimír Smitka) for the PicoPad support in CP and educational content he is working on.
* Group hug to the community and learn guide writer/reviewer: I have been and I am still learning a lot about software development, git usage, automation, … thanks to you all.


12:06 @DJDevon3
* @Jepler for explaining how a syntax snippet worked for shifting and truncating binary/hex values
* Group hug


12:35 @foamyguy
* @kattni for organizing CircuitPython day
* @makermelissa for adding more functionality in ImageLoad for different types of RGB images
* Group Hug


13:04 @jepler
* @danh for the merge, even if it’s not building yet
* @kattni for a wonderful chat
* @todbot for sending me one of their PCB designs (a synth, naturally)
* @kattni for organizing CP day
* @david.glaude for backporting a board definition to the stable release


14:07 @kattni
* @jepler for a wonderful chat
* @todbot for a synth hardware care package with one thing I was expecting and three surprises!
* @paul cutler for hosting a synthio panel for CircuitPython Day
* @makermelissa for hosting a stream on CP Day
* @foamyguy for hosting a stream on CP Day
* @jepler and @danh for joining me in a chat for CP Day
* @JohnPark, @Noe and @Pedro for hosting their weekly streams on CP Day
* @JohnPark for taking on doing the Introduction
* @tannewt for hosting a stream for CP day
* Group hug!


14:52 @kmatch (text only)
* @jepler for taking on the challenge of the ESP32-S3 dot clock displays, can’t wait to see what is possible for big touchscreen displays. 
* Hugs to all!


15:06 @makermelissa
* @jepler and @paintyourdragon for laying the groundwork for the MatrixPortal S3 and bitmaptools
* Group Hug


15:26 @mark[gamblor] (text only / missing)
* @kattni for all the CircuitPython day organization. Hope to attend some of it.
* Group hug


15:36 @tannewt
* @microdev for the IDF 5 PR from long ago.
* @kattni for organizing CircuitPython Day (Friday!)
* @danh for the 1.19.1 merge PR!
* @david.glaude for some board backports
## 16:12 Status Updates
16:36 @Liz (hosting):
* I’ve been working on a few product guides. The PC joystick to seesaw breakout and the Arduino pages for the Metro RP2040. I had never used a PC joystick before, so I had to procure one on eBay for testing but luckily it worked really well.
* I’ve also been putting together some code with synthio for an upcoming project collab with Noe. We are redoing our MX MIDI guitar project to be a synth guitar. We’re using the prop-maker feather since it has the onboard I2S amp and accelerometer, which we’ll use for some effects controls


17:13 @danh
* Released CircuitPython 8.2.3 on Friday. Only changes were Protomatter update for RGBMatrix and an RTD fix.
* Discussed MicroPython v1.19.1 merge with Scott, and we talked about backing out some of our changes (mostly long-lived storage) to ease the merge.
* Finished most of the MicroPython v1.19.1 merge, and made a draft PR with a detailed write-up. Some things were still broken when I made the PR. Jeff has looked at a lot of these problems this morning and made solutions for many of them. Huge number of file changes. A big chunk are just formatting fixes, but there are many changes in the build logic. Long-lived storage was removed: we will need to see how badly that affects the small builds. I have some ideas for putting it back in a different way if necessary.


19:43 @david.glaude: (text only)
* CP: PicoPad and git week
   * Contacted Vladimír Smitka to see if he could do a backport PR for PicoPad support into 8.2.x branch.
   * Decided to do it myself and learn about `git cherry-pick` for backporting and the proper way to take PRs from one branch and apply it to another branch (keeping the original author credited).
   * Checked the 20-25 latest boards in https://circuitpython.org/downloads and found that together with PicoPad, the Metro-ESP32S3 was the only other board without a stable release download option.
   * Made a blind (I don’t have the hardware to test) backport PR of Metro-ESP32S3 to 8.2.x branch, so that if there is a 8.2.4 it could contain both boards.
   * Also found out that what I did the previous week for the DS18x20 and photocell sensor was not needed since Vladimir has a lot of educational content in CP with code covering those sensors.
* Non-CP: A Feather RP2040 USB Host week
   * Tested the latest release and feature of jfedor2/hid-remapper 
   * Finally tested my IntelliKey membrane with Feather RP2040 USB Host and firmware from adafruit/hathach.
   * Found an uppercase/lowercase bug on one of the overlays.
   * Made an PR, now approved, (without installing Arduino, but tested the result with the resulting artifact).


21:15 @DJDevon3
* Started working on a Matrix Portal S3 project with 2 matrix panels.  Wanted to stack them vertically and quickly found out the included IDC cable isn’t long enough to reach. Had to jump onto Digikey and try to find the right ribbon cable out of tens of thousands of IDC ribbon cables. Think I got the right one and ordered 10 feet of it. Eventually will have 4 matrix panels running on it with a beefy 10A external PSU. Aaand I just found out I did it wrong and can easily daisy chain the 2nd row inverted.
* Working on a jewelry box birthday gift for my sister that incorporates a graphed display of Fitbit heart rate data. The TFT will be mounted inside the lid and when opened will play a song and display the last 15 minutes of heart rate data. My sister will have a dedicated display to see my mom’s heart rate any time she wants. All she has to do is input her wifi details into settings.toml


22:34 @foamyguy
* Knocked out a few more of the older library PRs
* Wrote scripts to compare full list of Adafruit PIDs against the data from OSHWA API to find any that aren’t in OSHWA yet. Then working through the resulting 200ish to find the “real” ones that aren’t revisions of already submitted things or non-adafruit hardware etc..
* Started prepping a test map and some helper Classes that will be used for the game I’m working on during CircuitPython day stream


24:02 @jepler
* Working on dot clock displays but no light yet
   * Chose not to use esp-idf code because it doesn’t allow direct access to framebuffer memory, as well as other limitations like “can never deinitialize display”
   * This means more work to do, register-level stuff
   * Getting close though! I think.
* Helping out with CI errors in dan’s micropython merge. We’ve solved several items already this morning
* Seem to be coming down with a cold, my activity for the rest of the week is uncertain


24:58 @kattni
* Last week and today:
   * Published Metro RP2040 guide.
   * Did a bit of guide feedback
   * Wrapped up a few GitHub issues.
* This week:
   * CircuitPython Day; on Paul’s panel, and chatting with Jeff and Dan, as well as coordinating folks throughout the day, and during this week.
   * Write up the CP Day intro
   * Metro ESP32-S3 guide


26:24 @makermelissa
* Last Week:
   * Finished alphablend changes to the CircuitPython core
   * Added bitfield compression support to the Imageload library
   * Updated MatrixPortal M4 and S3 Simpletest and Factory Reset images in their respective guides
   * Worked on finalizing code for message board project
   * Started guide for message board
* This Week:
   * Get Message Board code PR’d
   * Work on guide for Message Board
   * CircuitPython Day Livestream


27:36 @tannewt
* USB bug hunting with Thach
* Finishing up a USB host midi + synthio demo for the 1060 evk
* Fixing up IDF 5 PR
* Fixing up blackmagic PR based on feedback
* CircuitPython Day stream Friday
* Out Monday-Wednesday next week.
## 29:07 In The Weeds




## 29:30 Wrap-Up
