# CircuitPython Weekly Meeting for Monday, October 2, 2023


Welcome to the CircuitPython Weekly meeting notes! Feel free to add your Hug Reports and Status Updates early. During the meeting, we go through them as a round robin sorted by username. 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/zPS2fC6E_8g).


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.
## 03:26 Community News


### Raspberry Pi 5 Details Released
On the heels of the supply shortage easing comes information on the Raspberry Pi 5 - [Raspberry Pi](https://www.raspberrypi.com/products/raspberry-pi-5/).
There are many new features, many requested by the community and enthusiasts for modern computing - [Raspberry Pi Blog](https://www.raspberrypi.com/news/introducing-raspberry-pi-5/) and [YouTube](https://youtu.be/yul4gq_LrOI).

### 04:19 Python Developers Survey 2022 Results
The Python SOftware Foundation has announced the results of the sixth official annual Python Developers Survey. This work is done each year as a collaborative effort between the Python Software Foundation and JetBrains. Late last year, more than 23,000 Python developers and enthusiasts from almost 200 countries/regions participated in the survey to reveal the current state of the language and the ecosystem around it. (Spoiler alert: Many people are using Python, and 51% are using it for both work AND personal projects) - [JetBrains](https://lp.jetbrains.com/python-developers-survey-2022/) and [PSF](https://pyfound.blogspot.com/2023/09/python-developers-survey-numbers-for.html).
Highlights
* 8% of those surveyed are using it for embedded development (up from 7% last year) with 10% using it as a secondary language for embedded work.
* 59% of Python users use Linux, 58% Windows, 26% macOS
* 51% use Python for work and personal, 28% personal only, 21% work only


### 06:08 October is Open Hardware Month
October is Open Hardware Month! Join OSHWA by Certifying hardware as open source, becoming a member, or – where it is safe due to the pandemic – hosting a small event. OSHWA is providing resources and asking the community to host small, local events (if it’s safe) in the name of open source hardware - [OSHWA](https://ohm.oshwa.org/).
hackster.io welcomes Sid Drmay to discuss everything the Open Source Hardware Association (OSHWA) is planning for Open Hardware Month! Returning guest Ayesha Iftiqhar-Wilson joins the conversation as Alex Glow explore the process of documenting your projects on the way to OSHWA certification. Now's the perfect time to certify your own project, become a member of OSHWA, or get involved in other ways - [YouTube](https://www.youtube.com/live/GXs-nZ3JXy8?feature=shared).
### 07:12 Hacktoberfest 10 is Here
This year marks the 10th anniversary of Hacktoberfest! Hacktoberfest has grown from 676 participants in 2014 to nearly 147,000 participants last year - [Hacktoberfest](https://hacktoberfest.com/).
What is Hacktoberfest?
"Join forces in virtual and in-person events to get your project's pull/merge requests done as a team, learn new skills, and meet lifelong friends. This year we’re partnering with Major League Hacking to help the community connect. Open source projects, maintained by community-minded coders, make the modern internet function. Supporting that essential work, and the folks behind it, is what Hacktoberfest is all about."
As in previous years, CircuitPython will be participating in Hacktoberfest, marking some Pull Requests as Hacktober eligible. The list of issues is [here](https://circuitpython.org/contributing/open-issues?label=hacktoberfest). More info - [Adafruit Blog](https://blog.adafruit.com/2023/09/22/participate-in-hacktoberfest-2023-circuitpython-hacktoberfest-github-digitalocean/).
Note the reward system is shifting from T-shirts to virtual rewards - [Hacktoberfest Rewards](https://hacktoberfest.com/about/#digital-rewards).
### 08:57 Project of the Week: The Pico W Air is a Sensor Data Logger using MQTT
Pico W Air is a tiny board to get started on environment data logging. It broadcasts PMS5003 particulate matter (and other STEMMA QT/Qwiic) sensor data over MQTT. It's also a tiny web server with a JSON API running on CircuitPython - [X, Formerly Twitter](https://twitter.com/makerbymistake/status/1705960530605686988) and [GitHub](https://github.com/DPHacks/picow-air).






### 09:40 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.
## 10: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.**
### 11:05 Overall
* 23 pull requests merged
  * 11 authors - FoamyGuy, jepler, PaintYourDragon, makermelissa, bill88t, MakerM0, tannewt, pedasmith, rimwolf-redux, weblate, dhalbert
  * 7 reviewers - FoamyGuy, jepler, PaintYourDragon, makermelissa, anecdata, tannewt, dhalbert
* 19 closed issues by 5 people, 19 opened by 16 people
* Assigned Hacktoberfest label to 0 issues.


### 12:29 Core
* 12 pull requests merged
  * 7 authors - MakerM0, tannewt, rimwolf-redux, weblate, jepler, PaintYourDragon, bill88t
  * 5 reviewers - anecdata, tannewt, jepler, PaintYourDragon, dhalbert
* 18 open pull requests
  * https://github.com/adafruit/circuitpython/pull/6555 (Open 454 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7440 (Open 264 days)
  * https://github.com/adafruit/circuitpython/pull/7618 (Open 224 days)
  * https://github.com/adafruit/circuitpython/pull/7675 (Open 212 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7711 (Open 205 days)
  * https://github.com/adafruit/circuitpython/pull/7718 (Open 203 days)
  * https://github.com/adafruit/circuitpython/pull/7811 (Open 186 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7997 (Open 136 days)
  * https://github.com/adafruit/circuitpython/pull/7996 (Open 136 days)
  * https://github.com/adafruit/circuitpython/pull/8033 (Open 129 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8095 (Open 104 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8100 (Open 102 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8233 (Open 64 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8262 (Open 57 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/8285 (Open 47 days)
  * https://github.com/adafruit/circuitpython/pull/8349 (Open 32 days)
  * https://github.com/adafruit/circuitpython/pull/8447 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/8451 (Open 0 days)
* 7 closed issues by 4 people, 8 opened by 8 people
* Assigned Hacktoberfest label to 0 issues.
* 727 open issues
  * https://github.com/adafruit/circuitpython/issues
* 6 active milestones
 * 8.2.x: 10 open issues
 * 9.0.0: 58 open issues
 * Libraries: 22 open issues
 * Long term: 607 open issues
 * Support: 19 open issues
 * Third-party: 8 open issues
 * 6 issues not assigned a milestone


### 14:17 Libraries
* 9 pull requests merged
  * 4 authors - makermelissa, dhalbert, pedasmith, FoamyGuy
  * 3 reviewers - tannewt, dhalbert, FoamyGuy
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_Display_Button/pull/38 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PyBadger/pull/66 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_ESP32S2TFT/pull/8 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_FunHouse/pull/39 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MagTag/pull/91 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PYOA/pull/38 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Simple_Text_Display/pull/14 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_SSD1680/pull/18 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_SSD1680/pull/16 (Days open: 1)
  * 46 open pull requests (Oldest: 410, Newest: 1)
* 1 closed issues by 1 people, 6 opened by 6 people
* Assigned Hacktoberfest label to 0 issues.
  * 645 open issues
  * 19 good first issues
* https://circuitpython.org/contributing


#### 16:31 Library PyPI Weekly Download Stats
* **Total Library Stats**
  * 178065 PyPI downloads over 313 libraries
* **Top 10 Libraries by PyPI Downloads**
  * Adafruit CircuitPython Requests (adafruit-circuitpython-requests): 12155
  * Adafruit CircuitPython BusDevice (adafruit-circuitpython-busdevice): 10347
  * Adafruit CircuitPython Register (adafruit-circuitpython-register): 3644
  * Adafruit CircuitPython NeoPixel (adafruit-circuitpython-neopixel): 1982
  * Adafruit CircuitPython Motor (adafruit-circuitpython-motor): 1657
  * Adafruit CircuitPython PCA9685 (adafruit-circuitpython-pca9685): 1479
  * Adafruit CircuitPython ServoKit (adafruit-circuitpython-servokit): 1478
  * Adafruit CircuitPython Pixelbuf (adafruit-circuitpython-pixelbuf): 1433
  * Adafruit CircuitPython framebuf (adafruit-circuitpython-framebuf): 1364
  * Adafruit CircuitPython DHT (adafruit-circuitpython-dht): 1333


#### 16:55 Library updates in the last seven days:
* **Updated Libraries**
  * [adafruit/Adafruit_CircuitPython_SSD1680](https://github.com/adafruit/Adafruit_CircuitPython_SSD1680)
  * [adafruit/Adafruit_CircuitPython_WSGI](https://github.com/adafruit/Adafruit_CircuitPython_WSGI)
  * [adafruit/Adafruit_CircuitPython_ESP32S2TFT](https://github.com/adafruit/Adafruit_CircuitPython_ESP32S2TFT)
  * [furbrain/CircuitPython_mag_cal](https://github.com/furbrain/CircuitPython_mag_cal)


### 17:09 Blinka
* 2 pull requests merged
  * 1 authors - makermelissa
  * 2 reviewers - tannewt, makermelissa
* 4 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka/pull/417 (Open 964 days)
  * https://github.com/adafruit/Adafruit_Blinka_bleio/pull/40 (Open 724 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/299 (Open 127 days)
  * https://github.com/adafruit/Adafruit_Blinka_Displayio/pull/115 (Open 2 days)
* 11 closed issues by 1 people, 5 opened by 3 people
* Assigned Hacktoberfest label to 0 issues.
* 72 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* PyPI downloads in the last week: 17160
* Piwheels Downloads in the last month: 2119
Number of supported boards: 121






## 19:05 Hug reports
19:30 @foamyguy
* Jeff for the opportunity to get together to chat and have dinner. +1 more for introduction to a new restaurant in Omaha
* @makermelissa for working on rewriting the necessary parts of Blinka_DisplayIO to bring it in line with the current core API. Also organizing the related issues and creating ones to track further improvements and additions of newer core modules like bitmaptools and vectorio.
* @michaelpokusa for continued work on Templating engine


20:18 @charlesburnaford
* Group hug 


20:59 @deshipu
* group hug


21:15 @DJDevon3 (text only)
* @Tannewt for the RGB Matrix allocation fix. 
* Group Hug


21:29 @fede2 (text only)
* To anyone who has done any work on circuitpython. It’s much easier to use than anything else and it makes development fun, thanks to you all.
* @tannewt and the rest of the crew for the esp-idf 5.1 upgrade. If BT-esp comes from this, it will make me extremely happy.


21:59 @jepler (missing meeting)
* Group hug
* @liz I’m jealous of some of the projects you have coming down the pike. I know you’ll knock it out of the park.
* See y’all in November!


22:21 @makermelissa
* @jepler for a good chat we had last week and for getting the Qualia S3 guide started
* @lesamouraipoupre for rewriting some of blinka displayio, which I ended up using parts of in my huge update
* Past me for creating a page about telling some of the eInks apart, which came in super handy
* Group Hug


22:56 @mark[gamblor21] (lurking)
* @biffobear on GitHub for the AS3935 driver that saved me so much time. I think I forgot a hug for previously.
* Group hug, as I can finally listen to a meeting live.


23:21 @tannewt
* @PaintYourDragon (PhilB) for the audio fix PR and corresponding issue.


23:33 @todbot (missing meeting and out sick)
* Group hug hi everyone 
## 23:49 Status Updates


24:20 @foamyguy
* Followed up on the remaining failed actions that were revealed during, but not really related directly to the recent patch / release sweep across libraries. Most were related referencing a core module that hadn’t been added to the “mock docs list” of modules. Submitted fixes for all that I could. There were 3 that had actions fail for something related to token / permissions that someone with more access to repos will need to troubleshoot further, and 1 that I was unable to understand the cause of failure, but strangely the asset upload that it reports failing seems to actually have succeeded anyhow.
* Wrote a first draft of simpletest script for ESP32S2-TFT, but was without WIFI access when I wrote it and need to confirm it works when a valid network is present and configured then I’ll submit it.
* This week
   * Working on enhancing the Automated Releaser utility, removing some of the hardcoded values and adding functionality that prompts the user to select the new tag, and enter the title if one was not supplied with a configuration variable.
   * Test and review ADT7410 re-write PR
   * Try out newest Blinka_DisplayIO with PyGameDisplay library and work on any adjustments needed to work with the latest version.


27:30 @danh (not at meeting)
* Continuing with MicroPython V1.20.0 merge. Working on board builds. I have several boards compiling, and I can do  things in the REPL. Builds are bigger for some reason and I am researching why.


27:52 @deshipu
* work on touch version of keypad stalled
* looking into qrcodes and apriltags


31:11 @DJDevon3 (text only)
* I’m in the mountains. They have racoons and skunks as pets. Lovely remote place with internet.


31:25 @eightycc (text only)
* Working on RP2 port of _bleio. Have a skeleton implementation in place that I’m filling in with functional code. Plumbing the depths of background callbacks, delighted to see that CP has limited multitasking!
* Seeking working CP BLE examples for testing. Also seeking WiFi examples to ensure coexistence.


32:24 @fede2 (text only)
* I’ve just finished porting circuitpython to the esp32 (micromod) that Sparkfun uses for their Weather station, I’m just finishing up with pins.c and will send a PR.
* Recently I got some Milkv duo boards to test both blinka on top of linux and tinyusb as mentioned on a previous weeds.


32:52 @makermelissa
* Last Week:
   * Finished updating Blinka Displayio so that monochrome and grayscale displays are now supported
   * Finished a PR to add eInk display support to Blinka Displayio
* This Week:
   * Working on writing a learn guide for the new Qualia S3
   * Afterwards probably getting back to testing out more displays and eInks in Blinka Displayio and adding examples to the appropriate driver repos
   * Then updating learn guides for running displays in Python


33:41 @michalpokusa (text only)
* Finished working on adafruit_templateengine, waiting for it being released, then I will add examples to adafruit_httpserver that utilize it
* Created a wrapper for adafruit_hid’s Mouse for drawing shapes based on SVG path and/or both cubic and quadratic bezier curves, it can also be used for just more complex mouse movement than up/down/right/left.
  

  

  



34:54 @tannewt
* Submitted a quick, partial fix for RGBMatrix crashes. Still not perfect.
* Re-enabled rgbmatrix on ESP.
* I think the best future direction is to switch to split heaps with MP 1.20 and then have a supervisor heap. Being able to allocate outside the VM while the VM is running will greatly simplify displays and other allocations outside the VM. No more moving after VM shutdown.
* If anyone wants to work on native IOExpander/DigitalInOut support, then let me know.


## 41:06 In The Weeds
* Add position information to qrio (deshipu)
   * (tannewt) I’d add position state to https://docs.circuitpython.org/en/8.2.x/shared-bindings/qrio/index.html#qrio.QRInfo
   * some discussion at https://github.com/adafruit/circuitpython/issues/8452 


* 51:11 In general, just curious about the status of this: https://github.com/adafruit/Adafruit_Learning_System_Guides/pull/2429 and any other related efforts for dealing with upcoming breaking API change for displayio. (carter)


## Wrap-Up