# CircuitPython Weekly Meeting for July 11, 2022




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


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.herokuapp.com/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.
## 3:11 Community News
Announcing CircuitPython Day 2022 - August 19th
 CircuitPython Day 2022 

Friday August 19 (8/19/2022) is CircuitPython Day 2022, being designated the snakiest day this year! The day highlights all things CircuitPython and Python on Hardware.
Working with CircuitPython? Tag your projects #CircuitPythonDay2022 on social media and Adafruit will look to highlight them.
Special events will be held during the day - keep an eye on Adafruit social media channels for announcements - Adafruit Blog.
Inclusive Design
 Inclusive Design 

Microsoft gives insight into Inclusive Design, a methodology, born out of digital environments, that enables and draws on the full range of human diversity. Most importantly, this means including and learning from people with a range of perspectives - Microsoft and PDF Document.
Project of the Week: The BornHack 2022 Game On Badge
 BornHack 2022 Game On Badge 

The BornHack 2022 Game On Badge puts the focus on games. With the shape of a small controller and a color LCD screen in the middle, it’s ready for a bunch of interesting homebrew games.
This badge uses the RP2040 dual core Cortex M0+ microcontroller from Raspberry Pi and has 16MB of Quad SPI flash for code and media files.
The badge will have CircuitPython preloaded for a very low barrier of entry, all you need is a USB-C cable, and your favorite text editor and you are on your way to your own games.
In addition to screen and navigation buttons, there are are also a standard SAO v1.96bis connector and a Qwiic/Stemma QT connector for interfacing with modules in those eco-systems over I2C - Adafruit Blog, GitHub and an article on Hackaday.
 TiDAL badge 

The TiDAL badge - your electronic companion at EMF2022. It uses an ESP32-S3 running MicroPython - GitHub and Hackaday.
 AprilTags 

Using AprilTags, OpenMV, and 100 lines of MicroPython to open a front gate - Hackaday.




### 6:16 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.
## 6:21 State of CircuitPython, Libraries and Blinka
### 6:39 Overall


* 28 pull requests merged
  * 15 authors - Lisapple, jepler, askpatrickw, bablokb, weblate, deshipu, crackmonkey, ladyada, karlfl, tekktrik, tcfranks, thetazero, Neradoc, tom24, wtuemura
  * 8 reviewers - brentru, kmatch98, ladyada, tannewt, FoamyGuy, tekktrik, dhalbert, kattni
* 19 closed issues by 7 people, 22 opened by 18 people


### 7:45 Core
* 9 pull requests merged
  * 8 authors - Lisapple, jepler, askpatrickw, weblate, crackmonkey, thetazero, deshipu, wtuemura
  * 2 reviewers - dhalbert, tannewt
* 17 open pull requests
  * https://github.com/adafruit/circuitpython/pull/5352 (Open 298 days)
  * https://github.com/adafruit/circuitpython/pull/5999 (Open 151 days)
  * https://github.com/adafruit/circuitpython/pull/6037 (Open 145 days)
  * https://github.com/adafruit/circuitpython/pull/6119 (Open 127 days)
  * https://github.com/adafruit/circuitpython/pull/6217 (Open 100 days)
  * https://github.com/adafruit/circuitpython/pull/6247 (Open 96 days)
  * https://github.com/adafruit/circuitpython/pull/6349 (Open 67 days)
  * https://github.com/adafruit/circuitpython/pull/6397 (Open 57 days)
  * https://github.com/adafruit/circuitpython/pull/6410 (Open 52 days)
  * https://github.com/adafruit/circuitpython/pull/6522 (Open 17 days)
  * https://github.com/adafruit/circuitpython/pull/6555 (Open 6 days)
  * https://github.com/adafruit/circuitpython/pull/6562 (Open 4 days)
  * https://github.com/adafruit/circuitpython/pull/6567 (Open 3 days)
  * https://github.com/adafruit/circuitpython/pull/6574 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/6572 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/6571 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/6577 (Open 0 days)
* 9 closed issues by 4 people, 13 opened by 10 people
* 538 open issues
  * https://github.com/adafruit/circuitpython/issues
* 5 active milestones
  * 7.3.x: 3 open issues
  * 8.0.0: 41 open issues
  * Libraries: 22 open issues
  * Long term: 469 open issues
  * Support: 3 open issues
  * 0 issues not assigned a milestone


* Core download stats available at https://circuitpython.org/stats


### 10:23 Libraries
* 19 pull requests merged
  * 7 authors - karlfl, bablokb, tekktrik, tcfranks, Neradoc, ladyada, tom24
  * 7 reviewers - tekktrik, brentru, kattni, kmatch98, dhalbert, ladyada, FoamyGuy
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_BME680/pull/50 (Days open: 11)
    * https://github.com/adafruit/Adafruit_CircuitPython_VEML7700/pull/21 (Days open: 7)
    * https://github.com/adafruit/Adafruit_CircuitPython_INA219/pull/32 (Days open: 7)
    * https://github.com/adafruit/Adafruit_CircuitPython_RFM9x/pull/78 (Days open: 7)
    * https://github.com/adafruit/Adafruit_CircuitPython_SHT31D/pull/28 (Days open: 7)
    * https://github.com/adafruit/Adafruit_CircuitPython_HTTPServer/pull/7 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_Wiznet5k/pull/62 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_Logging/pull/34 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_Display_Shapes/pull/50 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Dash_Display/pull/5 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_OAuth2/pull/8 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_ADT7410/pull/21 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_DymoScale/pull/15 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_LIS3MDL/pull/20 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_RGBLED/pull/21 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PCF8574/pull/1 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MMC56x3/pull/1 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PortalBase/pull/73 (Days open: 1)
    * https://github.com/adafruit/cookiecutter-adafruit-circuitpython/pull/188 (Days open: 1)
  * 22 open pull requests (Oldest: 650, Newest: 2)
* 10 closed issues by 5 people, 8 opened by 7 people
  * 649 open issues
  * 175 good first issues
* https://circuitpython.org/contributing


Library updates in the last seven days:
 * [Adafruit_CircuitPython_Wiznet5k](https://github.com/adafruit/Adafruit_CircuitPython_Wiznet5k)
 * [Adafruit_CircuitPython_Display_Shapes](https://github.com/adafruit/Adafruit_CircuitPython_Display_Shapes)
 * [Adafruit_CircuitPython_BME680](https://github.com/adafruit/Adafruit_CircuitPython_BME680)
 * [Adafruit_CircuitPython_VEML7700](https://github.com/adafruit/Adafruit_CircuitPython_VEML7700)
 * [Adafruit_CircuitPython_INA219](https://github.com/adafruit/Adafruit_CircuitPython_INA219)
 * [Adafruit_CircuitPython_RFM9x](https://github.com/adafruit/Adafruit_CircuitPython_RFM9x)
 * [Adafruit_CircuitPython_SHT31D](https://github.com/adafruit/Adafruit_CircuitPython_SHT31D)
 * [Adafruit_CircuitPython_Dash_Display](https://github.com/adafruit/Adafruit_CircuitPython_Dash_Display)
 * [Adafruit_CircuitPython_OAuth2](https://github.com/adafruit/Adafruit_CircuitPython_OAuth2)
 * [Adafruit_CircuitPython_HTTPServer](https://github.com/adafruit/Adafruit_CircuitPython_HTTPServer)
 * [Adafruit_CircuitPython_ADT7410](https://github.com/adafruit/Adafruit_CircuitPython_ADT7410)
 * [Adafruit_CircuitPython_DymoScale](https://github.com/adafruit/Adafruit_CircuitPython_DymoScale)
 * [Adafruit_CircuitPython_Logging](https://github.com/adafruit/Adafruit_CircuitPython_Logging)
 * [Adafruit_CircuitPython_LIS3MDL](https://github.com/adafruit/Adafruit_CircuitPython_LIS3MDL)
 * [Adafruit_CircuitPython_PortalBase](https://github.com/adafruit/Adafruit_CircuitPython_PortalBase)


### 12:28 Blinka
* 0 pull requests merged
  * 0 authors - 
  * 0 reviewers - 
* 4 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka/pull/417 (Open 516 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/496 (Open 350 days)
  * https://github.com/adafruit/Adafruit_Blinka_bleio/pull/40 (Open 276 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/201 (Open 216 days)
* 0 closed issues by 0 people, 1 opened by 1 people
* 77 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* Piwheels Downloads in the last month: 7896
Number of supported boards: 89


## 13:15 Hug reports
@jepler (hosting)
* Dan, Scott & Kattni for meeting to go through the 8.0 issues list
* Dan & Scott for meeting to talk about ESP32 branch & brainstorm
* Kattni for keeping the discord server migration up to date with the newest technology
* Group hug, it’s nice to host the meeting again after my break!


14:22 @CGrover (text only) 
* @BlitzCityDIY for a very useful PyPortal light sensor gesture detection scheme. Although my final method is different, it was inspiring to see Liz’s creative approach and thorough logic.


14:42 @askpatrickw (missing meeting)
* Thank you to Neradoc, KyleMohr, EvilDave66, Prplz, MakerMelissa and Tannewt for all their help and patience as I worked on the Wemos Lolin C3 board definition since April. An extra special thanks to Todbot for adding wifi.radio.tx_power so the Wemos C3 can connect to wifi!


15:04 @charlesburnaford (lurking)
* Group Hug


15:11 @danh (not at meeting)
* @jepler and @tannewt for ESP32 port meeting; @tannewt for an earlier discussion on Espressif sdkconfig settings
* @jepler, @tannewt, and @kattni for 8.0.0 bug triage meeting
* @ladyada for suggestions about ESP32 problems over several weeks


15:32 @david.glaude (not at meeting)
* @neradoc, @tannewt, @retiredwizard, @danh and maybe @evildave666jp or whoever else helped me to start playing with the Web Workflow or is also trying to be on the edge.


15:54 @foamyguy (Text only today loud construction work ongoing)
* @neradoc for being on Show & Tell to show a web based library management tool.
* @DJDevon3 for a new bitmapsaver example and getting more involved in the community + helping folks on Discord
* Group hug


16:23 @kattni
* @tannewt, @danh, and @jepler for meeting up to further triage the 8.0.0 milestone.
* @brent, @pt, @ladyada for being super understanding during a situation on Friday.
* @brent and @loren for WipperSnapper - I haven’t had a reason to mess with it until last week to help Brent out, and what little I’ve seen so far seems really well done!
* Belated hug report to Mr. Certainly for helping with some guide content that was finally published last week!
* @foamyguy for helping with code for the other guide I published last week, including some last minute guidance
* @tekktrik for continuing to work on switching to pyproject.toml on the libs.
* @Neradoc for catching a potentially 2-year-old bug with Sparkle in the LED Animation library.
* @danh for helping out a friend with getting started with CircuitPython development
* Thanks to the folks on Discord who reported changes to how the moderation bot is working.
* Everyone who has agreed to contribute to CircuitPython Day!
* Group Hug!


18:09 @kmatch
* All the folks that come on show and tell with their inspirational projects
* @ladyada for answering questions on the livestreams


18:41 @makermelissa
* @tannewt for helping me get the ESP-IDF working with CircuitPython so I can now compile boards again
* @brent for helping figure out a good workaround for WipperSnapper not going onto the QT Py C3 board.
* Group hug


@mark(gamblor) [ probably only at half the meeting ]
* Group hug!


@tammymakesthings (text only)
* @kattni and PT for helping me get an Adafruit discount code for the DesertPy meetup
* Group hug!


@tannewt
* @kattni for taking the lead on organizing CircuitPython Day


@tekktrik (text only)
* @kattni for continuing to help with work on moving toward pyproject.toml
* @neradoc and @foamyguy for helping to point out and apply the fix for adafruit_logging quickly
* Group hug
## 20:23 Status Updates
@jepler
* Last week:
   * Played with QMK, guide in progress
   * With Dan, Scott, & Kattni, went through the list of issues for 8.0, moved some to long term & assigned others. We’d love your help with the 8.0 issues list, whether it’s by actually fixing/implementing things on that list, or just providing information & testing!
   * Updated ulab, always interesting things have happened in that project between our updates. CP 8.0 will ship with ulab version 5, hopefully
* This week:
   * If Dan didn’t crack it on Friday afternoon, trying to fix the ESP32 memory corruption bug so we can merge ESP32 support into main
   * Other 8.0 items we identified last week


23:18 @askpatrick (missing meeting)
* Wemos C3 Board definition completed, CP.org board page created, and Wemos docs updated with links to CircuitPython.


23:37 @danh (not at meeting)
* Working on plain ESP32 port. REPL works, but there’s a crash when Thonny passes code to the raw REPL. This might be a gc problem. Passing the baton to @jepler for now for debugging this.
* Did some refactoring and some settings automation for all Espressif ports in the process of adding ESP32


24:02 @david.glaude (not at meeting)
* Done this week:
   * Trying Absolute Newest on all my S2 and S3 board to start playing with the Web Workflow.
   * Upgraded my Game Builder Garage texture tool to auto detect and work automatically on 5 different boards (Clue, Wio Terminal, S3+TFT Feather, PyGamer and Espressif S3 USB OTG) https://github.com/dglaude/AGTD_CircuitPython
* Future plan:
   * Test and document the Web Workflow for adding texture in Game Builder Garage. This should be possible by abusing from the web workflow build in web server and upload function:
      * host the “GBG Texture Builder v1.2” html/javascript page
      * Manually upload the texture generated with that tool
* 2022 will be (for me) the year of the Linux Laptop: I Moved from “Windows on a T440p” to “Ubuntu on a T540p”, so my CP workflow is a bit disturbed, but I have the same Mu, browser, circup, git, … so it is just a bit different. Dual booting never worked to daily use of Free software, but having two separate laptops and forcing myself to use the Linux one is the solution.


25:13 @foamyguy (Text only today)
* House is getting new siding. Lots of banging and power tools noise for a few days.
* Still working on final touches for Octopus game and getting the structure of the guide laid out
* Took apart an old project to get at the SDCard slot on the 3.5” TFT Featherwing to test a new bitmap saver example for it
* Following up on open PRs
* Working on adding relevant links for the built-in modules in core circuitpython docs pages. 


25:43 @kattni
* Last week:
   * Finished up the GitHub Actions Status Tower Light guide, put that in moderation.
   * Tested a new feature in Learn, found some bugs.
   * Started into CircuitPython Day planning
   * Started helping Brent with WipperSnapper guide templates for board guides.
* This week:
   * Continue working on WipperSnapper guide templates
   * Test for a bug in Sparkle LED Animation.
   * Check into the Dyno moderation bot we use on Discord to figure out what changed with flagged keywords.
   * Once available in the shop - a STEMMA QT quad segment display scrolling countdown timer.
* Other things:
   * Off Thus/Fri for next few weeks - building room into our basement


27:02 @kmatch
* Created a feature request issue for an interrupt-driven EventQueue for capturing I2C events.  My objective is to eliminate polling of touchscreen events so I can spend most processor time on display animations.  I appreciate any inputs on existing modules to review for guidance on how this might be done. (keypadio is one module with an Event Queue).  https://github.com/adafruit/circuitpython/issues/6568
* This week: Study if an ultra wide band system (UWB) might solve a proximity sensor problem. 
* Back to “real” work catching up on a backlog.


28:22 @makermelissa
* Last Week:
   * Caught up on emails and messages
   * Looked into an issue where the ESP Web Flasher is having issues flashing files to the C3 chip at addresses other than 0x0000
   * Updated the GitHub Actions for WipperSnapper to add a separate workflow for the C3 board to produce a combined binary file
   * Updated my CircuitPython installation so I can now compile for ESP boards
   * Took over the ESP Box Lite board that Scott started making and tweaked the display init parameters to work.
   * Started looking at Web Workflow and what would need to be changed in code.circuitpython.org to make use of it. I ended up just getting it working, but didn’t end up getting any further than that.
* This Week:
   * Finish up merging in ESP Box Lite
   * Add new ESP Box Lite to circuitpython.org
   * Look at Web Workflow some more now that I have it working.
   * Work on a new project guide using the ESP Box


@mark(gamblor) [ Probably not here ] 
* Real life has been keeping me from doing a lot lately. Still around on Discord if anyone ever has a question in regards to anything I have wrote.
* But did find time to make googly eyes, there is always time for googly eyes.


30:23 @tammymakesthings (text-only):
* Last week:
   * Prepared for, and gave, a CircuitPython demo at the DesertPy meetup in Phoenix. Had 15 attendees, and I gave away 3 Circuit Playground Express devices (with the giveaway winners chosen by `random.randint()` run from the REPL of a PyBadge). All of the feedback was very positive. I tried to stream/record the presentation but was unable to do so for technology reasons.
   * Made a decision that, at least for now, my [Twitch](https://twitch.tv/tammymakesthings) streams will need to be on an ad-hoc basis rather than on a regular schedule, because my workload of my day job is very high right now.
* This week:
   * Hoping to load a “latest” build of CircuitPython which fixes the asyncio issue I ran into on my Matrix Portal and finish my TeamCity CI/CD status board project.
   * Hoping to stream at least once and do some more work on my card deck library.
   * Was playing around this weekend with an implementation of Conway’s Game of Life for something else, and am thinking about taking my implementation and wrapping a Matrix Portal UI around it.


31:33 @tannewt
* Continuing to work on WebSocket serial. Got the HTML, CSS and JavaScript working well enough on mobile.
* Need to clean it up to make a PR.
* Next step will be polishing the web workflow so it works better including checking responsiveness and fixing serial loading with set title OSC.
* Out next week for vacation. 


33:36 @tekktrik (text only)
* Last week
   * Additional prep work for getting libraries to use pyproject.toml.  Most of the prep work is done, just going to give the few test libraries that are using it time in the field before any next steps.
   * Submitted PR to update the README for the Actions CI repo
   * Reviewed type annotation PRs (always fun!)
   * Updated CPython compatibility issues for adafruit_logging
   * Fixed up documentation in infrastructure for a couple new libraries
   * Tried to figure out if the BluefruitConnect phone app is able to send large amount of data, but I think my Bluetooth sniffer was thwarted by the sheer amount of BLE traffic in my apartment complex @______@
* Next week
   * Continue to add and update documentation in the core
   * Continue working on BluefruitConnect ImageTransfer feature addition
## 34:37 In The Weeds


@tekktrik (text only):
        
If the plan is to move from secrets.py to .env files, should we consider changing the suggested virtual environment name in library READMEs away from .env:


        python -m venv .env


Not sure if it might confuse users to be told to edit “.env” if they also have a “.env” folder.


* Please use .venv and update everything.
        


37:10 @foamyguy


Is there interest in Learn Guide(s) or pages within existing guide covering displayio-adjacent modules vectorio and bitmaptools? There are some examples in the docs pages and other places in Github but no dedicated place that explains at a basic level how to use them that I am aware of.


If so, would it be better to have new guides, or perhaps just new pages within the main displayio guide?
* @kattni - Yes! How closely related are they? New pages in the main displayio guide.


38:35 @kattni - CircuitPython Day, Friday, 19 August 2022! If you want to participate or contribute, please email circuitpythonday@adafruit.com with any questions, suggestions, or ideas! Virtual event: so streaming, blog stuff, etc.
## 41:33 Wrap-Up
