# CircuitPython Weekly Meeting for April 10, 2023

Liz is hosting.


Video is available [on YouTube](https://youtu.be/2A-IOxaS2Kw).


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:42 Community News
New Raspberry Pi Python Code Editor - beta software is now available that allows one to write and run Python code right in their browser.
[A Playable (and Edible) Dungeons and Dragons Cake](https://www.hackster.io/aaej/playable-dungeons-and-dragons-cake-8f8787)
[CircuitPython Show Podcast has returned with guest Danny Staple.](https://circuitpythonshow.com/)
### 03:12 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.
## 04:00 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.**
### 04:05 Overall
* 27 pull requests merged
  * 18 authors - jposada202020, wtuemura, BiffoBear, hexthat, tcfranks, waptang, thess, weblate, BlitzCityDIY, dhalbert, FoamyGuy, furbrain, jepler, michalpokusa, bergdahl, tannewt, jath03, anhmiuhv
  * 11 reviewers - FoamyGuy, brentru, jposada202020, tekktrik, makermelissa, caternuson, DavePutz, ladyada, microdev1, tannewt, dhalbert
* 15 closed issues by 9 people, 12 opened by 10 people
### 04:24 Core
* 13 pull requests merged
  * 11 authors - FoamyGuy, jposada202020, wtuemura, hexthat, jepler, waptang, thess, weblate, bergdahl, tannewt, dhalbert
  * 5 reviewers - dhalbert, ladyada, tannewt, microdev1, DavePutz
* 23 open pull requests
  * https://github.com/adafruit/circuitpython/pull/6037 (Open 418 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/6555 (Open 279 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/6913 (Open 205 days)
  * https://github.com/adafruit/circuitpython/pull/7161 (Open 160 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7221 (Open 143 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7220 (Open 143 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7282 (Open 130 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7293 (Open 129 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7430 (Open 92 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7440 (Open 89 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7592 (Open 53 days)
  * https://github.com/adafruit/circuitpython/pull/7591 (Open 53 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7618 (Open 49 days)
  * https://github.com/adafruit/circuitpython/pull/7675 (Open 37 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7711 (Open 30 days)
  * https://github.com/adafruit/circuitpython/pull/7718 (Open 28 days)
  * https://github.com/adafruit/circuitpython/pull/7811 (Open 11 days)
  * https://github.com/adafruit/circuitpython/pull/7833 (Open 5 days)
  * https://github.com/adafruit/circuitpython/pull/7841 (Open 3 days)
  * https://github.com/adafruit/circuitpython/pull/7846 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/7844 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/7849 (Open 1 days)
  * https://github.com/adafruit/circuitpython/pull/7852 (Open 0 days)
* 8 closed issues by 6 people, 5 opened by 4 people
* 631 open issues
  * https://github.com/adafruit/circuitpython/issues
* 8 active milestones
 * 8.0.x: 0 open issues
 * 8.1.0: 15 open issues
 * 8.x.x: 68 open issues
 * 9.0.0: 20 open issues
 * Libraries: 20 open issues
 * Long term: 502 open issues
 * Support: 7 open issues
 * Third-party: 4 open issues
 * 1 issues not assigned a milestone
### 06:01 Libraries
* 8 pull requests merged
  * 7 authors - dhalbert, jposada202020, michalpokusa, furbrain, BiffoBear, BlitzCityDIY, tcfranks
  * 6 reviewers - FoamyGuy, brentru, jposada202020, tekktrik, tannewt, dhalbert
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_PN532/pull/65 (Days open: 20)
    * https://github.com/adafruit/Adafruit_CircuitPython_HTTPServer/pull/43 (Days open: 14)
    * https://github.com/adafruit/CircuitPython_Community_Bundle/pull/150 (Days open: 2)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE/pull/185 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE/pull/184 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Wiznet5k/pull/106 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/pull/424 (Days open: 1)
    * https://github.com/adafruit/CircuitPython_Community_Bundle/pull/152 (Days open: 1)
  * 48 open pull requests (Oldest: 923, Newest: 1)
* 5 closed issues by 4 people, 7 opened by 6 people
  * 607 open issues
  * 73 good first issues
* https://circuitpython.org/contributing


#### Library PyPI Weekly Download Stats
* **Total Library Stats**
  * 73292 PyPI downloads over 310 libraries
* **Top 10 Libraries by PyPI Downloads**
  * Adafruit CircuitPython BusDevice (adafruit-circuitpython-busdevice): 6467
  * Adafruit CircuitPython Requests (adafruit-circuitpython-requests): 5530
  * Adafruit CircuitPython NeoPixel (adafruit-circuitpython-neopixel): 1844
  * Adafruit CircuitPython Register (adafruit-circuitpython-register): 1550
  * Adafruit CircuitPython Pixelbuf (adafruit-circuitpython-pixelbuf): 967
  * Adafruit CircuitPython Motor (adafruit-circuitpython-motor): 957
  * Adafruit CircuitPython BLE (adafruit-circuitpython-ble): 906
  * Adafruit CircuitPython binascii (adafruit-circuitpython-binascii): 739
  * Adafruit CircuitPython Display Text (adafruit-circuitpython-display-text): 737
  * Adafruit CircuitPython Wiznet5k (adafruit-circuitpython-wiznet5k): 704


#### Library updates in the last seven days:
* **New Libraries**
  *[adafruit/Adafruit_CircuitPython_Wii_Classic](https://github.com/adafruit/Adafruit_CircuitPython_Wii_Classic)
  * [furbrain/CircuitPython_async_buzzer](https://github.com/furbrain/CircuitPython_async_buzzer)
  * [jposada202020/CircuitPython_BMI160](https://github.com/jposada202020/CircuitPython_BMI160)
* **Updated Libraries**
  * [adafruit/Adafruit_CircuitPython_PN532](https://github.com/adafruit/Adafruit_CircuitPython_PN532)
  * [adafruit/Adafruit_CircuitPython_HTTPServer](https://github.com/adafruit/Adafruit_CircuitPython_HTTPServer)
  * [adafruit/Adafruit_CircuitPython_BLE](https://github.com/adafruit/Adafruit_CircuitPython_BLE)
### 06:59 Blinka
* 6 pull requests merged
  * 4 authors - BlitzCityDIY, dhalbert, jath03, anhmiuhv
  * 4 reviewers - ladyada, makermelissa, tannewt, caternuson
* 6 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka/pull/417 (Open 789 days)
  * https://github.com/adafruit/Adafruit_Blinka_bleio/pull/40 (Open 549 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/267 (Open 131 days)
  * https://github.com/adafruit/Adafruit_Python_PureIO/pull/33 (Open 60 days) (draft)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/284 (Open 18 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/670 (Open 2 days)
* 2 closed issues by 1 people, 0 opened by 0 people
* 93 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* PyPI downloads in the last week: 13414
* Piwheels Downloads in the last month: 16432
Number of supported boards: 101
## 07:36 Hug reports
07:55 @Liz (host)
* .@Kattni for a good chat last week
* @carter for U2IF resources and assistance
* Group hug


08:06 @CGrover (text only)
* @foamyguy for introducing `bitmaptools` in one of their streams. It made a big difference in simplifying and improving performance of graphic object animations.
* @kmatch and the 12 contributors to the surprisingly useful `bitmaptools` module. Exceptional design and implementation. I’m still discovering all it has to offer.
* @kattni for a discussion about Thermal Camera features and operational characteristics (and other interesting subjects). Has given me a new perspective about some useful improvements.


08:39 @charlesb  (lurking)
* Group Hug


08:45 @danh
* @tannewt for fixing background task/tick stuff; fixes a PulseIn problem
* @jepler for great additions to synthio


09:23 @david.glaude: (not present)
* @Neradoc for porting lilygo_twatch_2020_v3 to CP
* @foamyguy for his streaming on TR-Cowbell usage and coding


09:37 @DJDevon3 (text only)
* @Neradoc, @Danh, @Todbot, @Fede2, @Deshipu, @DavidG for helping to resolve the Alphanumeric backpack I2C issue from last week’s “in the weeds” topic.
* @Danh & @Kattni for helping me with Git. 
* @Anecdata for helping me troubleshoot a new LED board issue.
* @Kattni for the excellent RFM69 learn guide. One of the largest guides I’ve read yet, very well documented. Can tell you put a lot of effort into that one. 


10:07 @foamyguy
* @Jose David for submitting many libraries to the community bundle recently and reviewing things in Github
* @Kattni for a Quest to add some interesting functionality to the Con Badge / Snake game for PyCon
* @DJDevon3 for sharing a tip about a known issue with certain models of NVMe drives.
* Group Hug


10:59 @jepler (missing meeting)
* Missing the meeting, but hi from Boulder Colorado! Take care all, and group hug.


11:10 @Jose David (probably missing)
* @Kattni for all the help in discord
* @tfranks for the documentation for the PN523 library
* @furbrain for adding the asynchronous buzzer library to the community library


11:26 @kattni
* @krayola for working on a 3D printed case for my in-progress conference badge. 
* @foamyguy for helping me with my badge code and the Snake game that’s going to be included.
* @CGrover for writing a slimmed down version of the Improved Thermal Camera software to also be included on my badge.
* @Brent for looking into whether Adafruit IO works as I imagined it does, or whether my plans for the badge mode of my badge are being dashed. 
* @Tekktrik for handling a thing over the weekend, and seeing it through.
* The Discord *-Helpers for a very thoughtful discussion over the weekend.
* PT and Limor for helping me put together two extra special items to donate to the PyLadies auction at PyCon this year.
* @Mr. Certainly for help gathering content for my upcoming talk, and a preemptive hug for the further help I expect will happen over the next eight days.
* @todbot for help with some audio cable questions.
* @blitzcitydiy for the same.
* @johnpark for agreeing to help with some Adobe Premiere questions this week, so I can successfully edit a video of my talk quickly during PyCon.
* @tammymakesthings, @todbot, @tekktrik, @johnpark for contributing an applicable personal moment to my upcoming talk.
* Group hug to everyone! 


13:08 @mark[gamblor] (lurking)
* @LadyAda and everyone else at Adafruit that puts board schemas in the learn guide. I was using them the last couple days to learn more to help me start on my own project.


13:21 @tannewt
* @DavePutz for debugging the PulseIn breakage on ESP.
* @applecuckoo for the Code of Conduct link fix.
* 

14:01 @tekktrik (not present)
* @kattni for help over the weekend
* All the discord helpers for always helping out in a number of ways in the Discord server
* Group hug

14:12 @tfranks (not present)
   * @Kattni & @jposada202020 for helping me over the issues building RTD output in Pycharm for local reading and review


## 14:39 Status Updates
15:02 @Liz (host)
   * I’ve been working with U2IF firmware and Blinka. U2IF lets you use RP2040 boards with Blinka and CPython. Carter has done a lot of work with this previously and added a few Adafruit boards. I just added the upcoming ThinkInk Feather and will be adding other RP2040 “bones” feathers
   * Related, I attempted to add support for the 7 color eink displays to the CircuitPython_EPD library. I have it refreshing but only displaying in black and white, no colors yet and the resolution seems off so definitely still a work in progress


16:14 @CGrover(text only)
   * Continued to exercise `bitmaptools` for improving the Precision VCO’s graphical UI. Finally broke out of sandbox mode and will be wrapping up the prototype soon. Found two PCB changes that will be needed as a result and having an internal debate about choosing purple or after-dark OSHPark boards. A happy dilemma.
   * Spending some time today creating a small memory footprint version of the original PyGamer/PyBadge Thermal Camera. Should be fairly straightforward (famous last words).
   * Also researching a recently discovered issue with 8.0.5 and display_text not recognizing the width of a space character in a .bdf font and throwing an error. Will run some more tests and submit an issue if it turns out to be other than a cockpit error.
   * Found a bunch of “nails” around the house and yard needing the pressure washer “hammer” yesterday. Trigger hand is a little sore today.


17:11 @danh
   * Scott and I will triage the 8.1.0 and 8.x.x issues sometime soon.
   * BNO055 on i.MX RT1011 fails easily, despite RT1011 claiming that it supports clock stretching. Works fine on RP2040, SAMD, etc. Lots of discussion about this in the Teensy Forums, with maybe somewhat hackish fixes. Paul S. says the BNO055 disobeys I2C protocol in certain ways. The Teensy code is at the register level, not the NXP SDK. I have Saleae traces but need to study them in more detail. To-do: add workarounds to BNO055 library (and other similar libraries).


@david.glaude: (not present)
   * nothing yet


18:40 @DJDevon3 (text only)
   * It was really neat to see a lot of people participating to help figure out the Alphanumeric backpack I2C issue after last week's “in the weeds” topic. @Danh did a fantastic job troubleshooting the electronic circuit and helping to get I2C working. The culprit was initially hidden because I was using the ESP32-S2 which has an on-board pull-up just enough to pull-up 1 backpack but not both. I switched to the RP2040 Feather and the issue using I2C.scan() became more obvious, the pull-ups on the backpacks simply weren’t working. A bodge wire from VDD to VIO is all that was required. I would have never figured that out on my own. 
   * A small batch of new LED boards arrived I designed called “Bleeding Rainbow”. It’s a NeoPixel stick made of 50 WS2812C RGB LED’s from Worldsemi. They’re tiny 2mm LED’s and  the smallest I could find with a built-in LED driver.. 
   * Only red works at 3.3V, they require 5V for RGB. Thanks to Anecdata for helping to figure it out. I’m happy to report they work great with Circuit Python and the board is cool to the touch after hours of running. You can use 1 on USB power but not 2. Windows threw an error about exceeding the USB power rating and shut off access to my feather completely. Power hungry little things! It removed the Feather from Windows and no amount of power cycling helped.. I had to use Device Cleanup and reboot the PC to get the feather to show up again. With an external 5V power supply they will be replacing the Neopixel strips inside my Mail Boombox.
   * House I moved into last year had an old gooseneck faucet probably original to the house. It broke and sprayed water 5 feet into the air. Replaced it with a modern one that has a detachable head. No leaks so far. 


20:25 @foamyguy
* Lighter than usual circuitpython workload. Still been working on swapping PC hardware components and ended up opting to set up a new OS instance after failing to get my old one to boot.
* Looking into issues with using 2 displays with displayio. PR’d a fix for an issue that was caused by recent displayio API change. Still chasing some other more subtle issues that are leading to hard crashes on the Monster M4sk
* Updates to the con badge / snake game developed last year for PyCon, adding capability to launch arbitrary external script files defined by the user.
* Catching up community bundle PRs that needed merges from main.


22:39 @kattni
* Wrapping up the RFM69 guide.
* Essentials pages.
* RFM69 basic demo page
* Starting the RFM95 guide.
* Same as RFM69, except for the physical radio module (so, images), and the software
* Wrapping up anything else needed.
* Prepping for PyCon! (some of the things, in no particular order)
* PyBadge badge case and software
* Gathering hardware etc. for Open Spaces and Sprints
* Test my recording setup
* Write my talk for the Education Summit
* Whatever else more


25:37 @tannewt
* Burned out on iMX RT with the 1015. Also realized I probably can’t do XIP mode because we need to escape it to do erase and write.
* Got my DVI feather and started down that journey. Made pretty good progress but it doesn’t work. Need to break out the debugger and/or printfs.
* Speaking of not working, woke my desktop up last night to find the root fs had gone into read-only mode! Boots all the way to the desktop but nothing works with it readonly. Will spend today recovering to another drive and hopefully not losing too much. (Feather DVI code was pushed to github on friday.)


27:52 @tekktrik (not present)
* Last week
* Finished up some Arduino things, and now resuming all my CircuitPython work that was on temporary hold
* This week
* Catching up on some PR reviews
* Prototyping how the rp2040js CI will work
* Looking at some Adabot upgrades/patches that were identified a while ago


## 28:16 In The Weeds

28:36 @tannewt 
* Workflows after deep sleep. Should the wifi workflow start again? 
* https://github.com/adafruit/circuitpython/pull/7814#issuecomment-1494739035
* https://forums.adafruit.com/viewtopic.php?p=967515#p967515
* Default behavior should be off. We should add a switch to boot.py to allow it to be enabled.

36:19 @kattni
* PyCon 2023!

## 41:39 Wrap-Up
