# CircuitPython Weekly for Tuesday January 18, 2022


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


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.










## 2:43 Community News
### MicroPython version 1.18 released
 MicroPython version 1.18 released 

The MicroPython dev team has announced MicroPython, v1.18! There were 335 commits since the last release on September 2021, so there were about 2.5 commits per day since then - MicroPython Forums and Adafruit Blog.
This release of MicroPython sees a boost to the overall performance of the VM and runtime... Performance options are enabled on the esp32, mimxrt, rp2, stm32 and unix ports.
Source code and firmware and the full change log.  
### 3:17 CircuitPython 7.1.1 Released
 CircuitPython 7.1.1 Released 

CircuitPython 7.1.1, the latest bugfix revision of CircuitPython, is the current stable release. It has fixes for RGBMatrix on RP2040 and PDMIn (microphone input) on SAMx boards, such as Circuit Playground Express. There are no other changes; unless you are affected by these problems, you do not need to upgrade from 7.1.0. - Adafruit Blog and GitHub.
### 3:40 CircuitPython2022 Updates
 CircuitPython2022 Updates 

Here's the CircuitPython 2022 feedback received to date.
* CycleMatch’s (aka kmatch) thoughts on Twitter
* Jeff (aka jepler) posted to his blog.
* Dexter Starboard (aka rsbohn) wrote a short gist
* Kelly (aka ksprayberry) posted to the forum.
* Matt Kojetin wrote a comment on the kick-off blog post.
* Pierre Constantineau has written a blog post that dives deep into keyboard software including CircuitPython.
* blakebr posted three different topics on the forum.
* retiredwizard also posted to the forum about using CircuitPython REPL directly to change files and protecting sensitive data.
* mlewus posted on the forum
* JohnHind also posted to the forum.
* Phil (PT) from Adafruit talked on Ask An Engineer about #CircuitPython2022.
* Patrick (@askpatrickw) posted a gist with two new projects and a review of last years.
* Scott (@tannewt) posted #CircuitPython2020 to the blog
* Anne's email on #CircuitPython2022
The CircuitPython Team wants to hear from you. When you post, please add #CircuitPython2022 and email circuitpython2022@adafruit.com to let us know about your post - More information.
### 4:23 Reading Floppy Disks in CircuitPython
 Reading Floppy Disks in CircuitPython 

jepler just created a build of CircuitPython with the new native ‘adafruit_floppy’ module which implements MFM decoding ‘on the fly’ to provide Python-native filesystem support for floppy drives! You can now store files and code that is read or executed off of a floppy disk. Adafruit whipped up a quick demo that lists the files on a disk and pages through any textfiles it finds on these FAT12 disks. Arduino libraries and more CircuitPython capability are being worked on at the moment - Adafruit Blog, YouTube and Twitter.
 Mounting Floppy Disks in Windows 

In related work, Adafruit also demonstrates using TinyUSB and Arduino to make a USB mass storage floppy drive on Windows. Most of us have not seen a Drive A: on their computers in many years - Adafruit Blog, Hackster.io and YouTube.
### 5:05 The CircuitPython Show
 The CircuitPython Show 

The CircuitPython Show is a new independent podcast, hosted by Paul Cutler, focused on the people doing awesome things with CircuitPython. Each episode features Paul in conversation with a guest for a twenty to thirty minute interview - CircuitPythonShow, Blog Post and Twitter.
### 5:26 The Pi Cast Celebrates 10 Years of Raspberry Pi: New Episodes With Ladyada, Eben Upton, and More
 The Pi Cast 

The Pi Cast Celebrates 10 Years of Raspberry Pi: New Episodes With Ladyada, Eben Upton, and others. Adafruit's Limor Fried will be on a livecast on February 15, 2022 - More on Tom's Hardware and YouTube.
### 5:49 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:40 State of CircuitPython, Libraries and Blinka
### 7:00 Overall
* 46 pull requests merged
  * 22 authors - emmanuelthome, electricalgorithm, EmergReanimator, tekktrik, kevincon, dhalbert, jposada202020, 0hotpotman0, kattni, alustig3, Neradoc, CharString, hexthat, weblate, prplz, jepler, andrejacobs, alvarowolfx, FoamyGuy, aziascreations, arturo182, tannewt
  * 12 reviewers - microDev1, jerryneedell, anecdata, ladyada, tannewt, gamblor21, dhalbert, jepler, FoamyGuy, caternuson, kattni, brentru
* 34 closed issues by 15 people, 23 opened by 18 people


### 7:40 Core
* 24 pull requests merged
  * 15 authors - alustig3, Neradoc, CharString, hexthat, electricalgorithm, EmergReanimator, tekktrik, weblate, dhalbert, jepler, prplz, 0hotpotman0, kattni, arturo182, tannewt
  * 8 reviewers - microDev1, jerryneedell, ladyada, gamblor21, dhalbert, jepler, kattni, tannewt
* 15 open pull requests
  * https://github.com/adafruit/circuitpython/pull/5298 (Open 136 days)
  * https://github.com/adafruit/circuitpython/pull/5352 (Open 124 days)
  * https://github.com/adafruit/circuitpython/pull/5422 (Open 107 days)
  * https://github.com/adafruit/circuitpython/pull/5491 (Open 88 days)
  * https://github.com/adafruit/circuitpython/pull/5551 (Open 73 days)
  * https://github.com/adafruit/circuitpython/pull/5711 (Open 35 days)
  * https://github.com/adafruit/circuitpython/pull/5726 (Open 34 days)
  * https://github.com/adafruit/circuitpython/pull/5718 (Open 34 days)
  * https://github.com/adafruit/circuitpython/pull/5781 (Open 22 days)
  * https://github.com/adafruit/circuitpython/pull/5832 (Open 6 days)
  * https://github.com/adafruit/circuitpython/pull/5852 (Open 4 days)
  * https://github.com/adafruit/circuitpython/pull/5862 (Open 3 days)
  * https://github.com/adafruit/circuitpython/pull/5874 (Open 1 days)
  * https://github.com/adafruit/circuitpython/pull/5880 (Open 0 days)
  * https://github.com/adafruit/circuitpython/pull/5878 (Open 0 days)
* 11 closed issues by 5 people, 13 opened by 10 people
* 472 open issues
  * https://github.com/adafruit/circuitpython/issues
* 6 active milestones
  * 7.2.0: 4 open issues
  * 7.x.x: 19 open issues
  * 8.0.0: 8 open issues
  * Libraries: 17 open issues
  * Long term: 413 open issues
  * Support: 7 open issues
  * 4 issues not assigned a milestone


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


### 9:29 Libraries
* 21 pull requests merged
  * 10 authors - emmanuelthome, tekktrik, kevincon, dhalbert, jepler, jposada202020, alvarowolfx, FoamyGuy, aziascreations, kattni
  * 10 reviewers - jerryneedell, anecdata, ladyada, tannewt, dhalbert, jepler, FoamyGuy, caternuson, kattni, brentru
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_hashlib/pull/14 (Days open: 270)
    * https://github.com/adafruit/Adafruit_CircuitPython_HT16K33/pull/88 (Days open: 261)
    * https://github.com/adafruit/Adafruit_CircuitPython_MAX31865/pull/33 (Days open: 237)
    * https://github.com/adafruit/Adafruit_CircuitPython_MAX31865/pull/32 (Days open: 237)
    * https://github.com/adafruit/Adafruit_CircuitPython_24LC32/pull/6 (Days open: 22)
    * https://github.com/adafruit/Adafruit_CircuitPython_PIOASM/pull/29 (Days open: 17)
    * https://github.com/adafruit/Adafruit_CircuitPython_Requests/pull/94 (Days open: 5)
    * https://github.com/adafruit/Adafruit_CircuitPython_MiniMQTT/pull/97 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_DRV2605/pull/30 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_DRV2605/pull/29 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_DRV2605/pull/28 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_FRAM/pull/33 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/150 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/151 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/152 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/149 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE/pull/149 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_asyncio/pull/13 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Bitmap_Font/pull/54 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/pull/364 (Days open: 1)
    * https://github.com/adafruit/cookiecutter-adafruit-circuitpython/pull/165 (Days open: 1)
  * 27 open pull requests (Oldest: 493, Newest: 1)
* 23 closed issues by 13 people, 9 opened by 8 people
  * 630 open issues
  * 236 good first issues
* https://circuitpython.org/contributing
Library updates in the last seven days:
**New Libraries**
 * [Adafruit_CircuitPython_24LC32](https://github.com/adafruit/Adafruit_CircuitPython_24LC32)
**Updated Libraries**
 * [Adafruit_CircuitPython_Waveform](https://github.com/adafruit/Adafruit_CircuitPython_Waveform)
 * [Adafruit_CircuitPython_AVRprog](https://github.com/adafruit/Adafruit_CircuitPython_AVRprog)
 * [Adafruit_CircuitPython_PCA9685](https://github.com/adafruit/Adafruit_CircuitPython_PCA9685)
 * [Adafruit_CircuitPython_HTS221](https://github.com/adafruit/Adafruit_CircuitPython_HTS221)
 * [Adafruit_CircuitPython_Wiznet5k](https://github.com/adafruit/Adafruit_CircuitPython_Wiznet5k)
 * [Adafruit_CircuitPython_OneWire](https://github.com/adafruit/Adafruit_CircuitPython_OneWire)
 * [Adafruit_CircuitPython_Requests](https://github.com/adafruit/Adafruit_CircuitPython_Requests)
 * [Adafruit_CircuitPython_DRV2605](https://github.com/adafruit/Adafruit_CircuitPython_DRV2605)
 * [Adafruit_CircuitPython_PIOASM](https://github.com/adafruit/Adafruit_CircuitPython_PIOASM)
 * [Adafruit_CircuitPython_BLE](https://github.com/adafruit/Adafruit_CircuitPython_BLE)
 * [Adafruit_CircuitPython_hashlib](https://github.com/adafruit/Adafruit_CircuitPython_hashlib)
 * [Adafruit_CircuitPython_asyncio](https://github.com/adafruit/Adafruit_CircuitPython_asyncio)
 * [Adafruit_CircuitPython_MAX31865](https://github.com/adafruit/Adafruit_CircuitPython_MAX31865)
 * [Adafruit_CircuitPython_Bitmap_Font](https://github.com/adafruit/Adafruit_CircuitPython_Bitmap_Font)
 * [circuitpython](https://github.com/adafruit/circuitpython)
 * [Adafruit_Blinka](https://github.com/adafruit/Adafruit_Blinka)
 * [CircuitPython_Community_Bundle](https://github.com/adafruit/CircuitPython_Community_Bundle)


### 11:53 Blinka
* 1 pull requests merged
  * 1 authors - andrejacobs
  * 1 reviewers - FoamyGuy
* 6 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka/pull/417 (Open 342 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/496 (Open 176 days)
  * https://github.com/adafruit/Adafruit_Blinka_bleio/pull/40 (Open 102 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/201 (Open 42 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/540 (Open 11 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/212 (Open 1 days)
* 0 closed issues by 0 people, 1 opened by 1 people
* 69 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* Piwheels Downloads in the last month: 15321
Number of supported boards: 87




## 12:42 Hug reports


13:16 @kattni (host)
* Eric at Read the Docs for being flexible in working with us to get a sponsorship set up that kept our current documentation model intact, while giving us the features available to their “business” customers, and for patiently answering all of my questions.
* @mattgoff on GitHub for submitting a PR to fix an issue I filed for PrettyPins to resolve the title and URL lines being currently generated right-justified, when the final diagrams typically end up with them centered.
* Group hug!


14:46 @CGrover (text only)
* @foamyguy and @JohnPark for the past week’s streams. Always something new to learn!
* Group hug. 


14:58 @danh
* @ladyada and @jepler for incredible work on floppy disks, and to @keirf (GitHub) for the greaseweazle software which they are using extensively.


15:30 @david.glaude (lurking)
* Ditto for the floppy disks work.
* @MakerMelissa for merging my PR for PiZero[1]W
* Group hug.


15:45  @dexter starboard (text only)
* @danh for fixing the PDM mic issue
* @foamyguy for the Webb Space Telescope tracker guide


15:59 @foamyguy 
* @Neradoc for always providing great help in the Discord
* @Kmatch for looking into reading data back from displays, has potential to lead us to enhanced testing for displayio things
* @prcutler I’m excited to see a CircuitPython podcast getting started up
* Group Hug


16:49 @jepler (no mic today)
* @kattni and Marty for setting us up to pay for service at readthedocs, switching to ad-free & switching the official doc URL to docs.circuitpython.org.
* @limor and @pt for understanding the importance of paying for these free software services we rely on, it is a good example to follow.
* The approximately 59 contributors to MicroPython 1.18, recently released.


17:20 @jerryn 
* @danh for the guide to using asyncio.
* @tannewt for the guide to using the broadcom posts.
* Group Hug


17:40 @kmatch
* @tannewt for guidance on talking to displays


17:54 @MakerMelissa
* @ricardoquesada for writing and maintaining Bluepad32, which allowed me to use a PS4 controller with CircuitPython
* @kevincon for correctly identifying why a PR for Adafruit_CircuitPython_Funhouse was not using the correct requests library version
* @davegoopot for finding some hard to spot issues on the Adafruit FunHouse Documentation compiling
* Group Hug


18:34 @tannewt
* @igrr for helping fix WiFi on the S3
* @TheMindVirus about a tip for Raspberry Pi interrupt issues
* @dkulinski for adding support for 128+ byte eink init sequences
* Thanks to everyone who’s posted a #CircuitPython2022


19:28 @tekktrik: (not in meeting)
        @caternuson for helping me test an old PR with the DRV2605 haptic controller
        @kattni for helping me figure out how to trigger Learn guide updates
        @anecdata for helping me with a PR for the ESP32
        @makermelissa and Liz Clark for writing the PyBadge Learn guides I can use to learn up for my current project
        @foamyguy for always chiming in on PRs and Issues to keep things moving
Group hug!
## 20:05 Status Updates


20:33 @kattni (host)
* Last week:
   * Published the basic TFT Feather ESP32-S2 guide
   * Set up a recurring sponsorship of Read the Docs with the help of PT and Stella at a level that makes our documentation ad-free, and gives us a custom URL.
   * Worked with Justin to get the custom URL going - https://docs.circuitpython.org
   * Updated circuitpython.org and cookiecutter to use the new docs link
   * Refactored the ESP32-S2 “Install UF2 Bootloader” and “Factory Reset” templates to have all the relevant content in the Factory Reset page, and have the Install page point to the Factory Reset page in each guide.
   * Updated all instances of these templates in guides
   * Submitted PR to CircuitPython to add `BUTTON` pin to TFT Feather
   * Updated the pinouts page, and PrettyPins for TFT Feather to include button
   * Added the uFL version to the QT Py ESP guide
   * Continued working on QT Py ESP guide
* This week:
   * Finish up QT Py ESP guide (complete CP Essentials templates)
   * Work on finishing Feather TFT guide
   * Test PrettyPins PR
   * Upcoming guides: Arcade QT, QT-ification of MCP4725
   * Finish template for DotStar status LED
   * Make sure Factory Reset template for RP2040 is good to go
   * asyncio template


25:00 @CGrover (text only)
* Was attempting to get the 2.4” and 3.5” TFT FeatherWings to work with some projects that use `adafruit_button` but the touchscreen driver was incompatible. Added a single property to the STMPE610 SPI driver with the objective to provide screen coordinates just like the `adafruit_touchscreen` library. After some trial and error, the revised driver is working nicely with the CedarGrove touchscreen calibrator helper. Added display size and calibration parameters this morning in advance of testing it with buttons later today. Side notes: The relationship between the touchscreen and display axes isn’t always what you’d expect. Calibration values can vary widely from the default with different touchscreens; not too critical if buttons and drawing pens are large.
* Will be taking another look at the retro widget collection to reduce dependency on floating point calculations and improve RP2040 performance while maintaining normalized screen coordinates and flexible object sizing.




26:00 @danh
* Made a 7.1.1 release to fix PDM microphone bug on CPX.
* Checked on some other bug reports.
* Mysterious problem with OneWire on ESP32-S2: the UF2 version works, the BIN version does not, due to erratic timing delays. The difference between the two is only the second stage bootloader. No clear reason why the BIN version would mess up the timing.
* Starting to work on supporting more than one mounted drive on USB mass storage (multiple “LUN”s: logical units).


27:40 @david.glaude (lurking)
* CP:
   * Testing broadcom port on PiZero v1.2, PiZero v1.3 and PiZero[1]W
   * Adding PiZero[1]W to circuitpython.org/download
* Non CP:
   * extending my ethernet (and wifi) network
   * moving my “datacenter” from visible in the living room to a closet opposite


28:11 @foamyguy 
* Last week
   * Finish up PyPortal Busy Simulator and MagTag Webb Telescope Status projects. Guides are published now.
   * More PR testing and reviews + soldering hardware. HT16K33 and MAX31865 and others.
   * PR for PyPortal library to allow user code to force the content_type instead of relying on the one returned by the server. This fixes an issue with the Discord member count project.
* This week
   * Write the guide for a new project: Neko cat sprite animation
   * Experiment with the WinAmp skins a bit. Trying to narrow down an approach to either using the actual skin assets and building the UI from its individual components vs. starting from the skin preview image and clearing out a few sections to put dynamic text into.
   * Look into making core modifications to make things accept filenames instead of opened files.
   * Finish writing and publish my 2022 CircuitPython post and read the ones that others have published.


30:26 @jepler (no mic)
* Last week:
   * MFM floppy drive reading PR’d, Adafruit_CircuitPython_floppy in [my personal github](https://github.com/jepler/Adafruit_CircuitPython_floppy)
   * Did one tiny bit of the Read The Docs changes
* This week:
   * More floppies. Next is implementing flux writing in Adafruit_Floppy.
   * Continuing to move the CP pull request forward
   * After flux writing in greaseweazel–compatible firmware in Arduino, will try mfm writing to enable writable floppies in CircuitPython


30:59 @jerryn
* Shamelessly copied a project idea from a discord user question.
   * Use rmf9x to transmit a thermal image from an mlx90640 to another system for display.  Worked up a simple example for proof of concept. First time I tried sending a “large” data array in smaller chunks. Lot’s to do now to make it more robust and add displays but it was fun to get the basics working.
* Played around with my Maker Pi - raspberry Pi Pico - board. It is a nice development platform. Lots of LEDS and “grove” I2C connectors that are compatible with the Stemma QT boards with an available adaptor cable.
* Finally found time to work through the asyncio guide. Great stuff!
                          
32:35 @kmatch
* Last Week: validated that displays can be read via SPI if the MISO (SDO) pin is connected. (Demoed with ILI9341 displays and Arduino)
* This week: identify what is required to add display reading to CircuitPython (SPI and parallel) 


33:20 @MakerMelissa
* Last Week:
   * Out sick for most of the week
   * Worked on porting LittleFS to JavaScript which involves converting many c functions over to the closest JavaScript code
   * Worked on a side project over the weekend and was able to get a DualShock 4 controller working with CircuitPython
* This Week:
   * Continue porting LittleFS and hopefully start getting some output soon, which is when it gets fun.


34:00 @tannewt
* Last week:
   * Did #CircuitPython2022 post and stream
   * Fixed ESP32-S3 WiFi thanks to @igrr’s help
   * Switched CP and TinyUSB to core 1 for the S3
* This week:
   * Short week starting Tuesday
   * Testing requests on ESP32-S3 without PSRAM
   * Heads down on ESP BLE hopefully. Using Nimble.


35:17 @tekktrik (not in meeting)
* Last week:
   * More library typing PRs, trying to look at documentation improvements at the same time
   * Removed `gamepadshift` from old examples/projects, in favor of `keypad`, so they’ll working in CircuitPython 8+
* This week:
   * Working on the CAD model for a Hannukah menorah that connects to the internet and lights itself every night (luckily I have a LONG time before it’s needed!)
   * Working on my first BLE and displayio project - a Discord bot running from a Raspberry Pi connected via Bluetooth to PyBadge, to create a two-way message pusher and quick response device I can use to communicate with friends while playing games.


## 35:55 In The Weeds


36:19 @tekktrik:
* Currently, the lack of implementation of `_typing` (or eventually `circuitpython_typing`) in Blinka means that it can’t be used for type annotations in libraries
   * CPython will error upon trying to use the typing, either with “ImportError”, or eventually fail with “ModuleNotFoundError” when using the typing try/catch block we’re using for library type annotations.  Not an issue for CircuitPython, however.
   * An implementation in Blinka would fix the issue, so it leads to the following scenarios/options:
      * `_typing`/`circuitpython_typing` can be implemented in full for Blinka, but that cascades into other issues, like lack of other libraries (e.g. - `rgbmatrix.RGBMatrix` is a valid `ReadableBuffer`, but `rgbmatrix` is not implemented for Blinka either)
      * `_typing`/`circuitpython_typing` can be a subset for Blinka, but I’m not sure how that would affect type checkers (e.g. - `bytearray` and `bytes` are implemented as ReadableBuffers, and `rgbmatrix.RGBMatrix` can be left out since that would never be used on CPython).
      * `_typing`/`circuitpython_typing` can be avoided and only code valid in both CircuitPython and CPython should be used for typing (most of the time, this wouldn’t actually be that different that the expectation for most libraries, but then typing would be an issue for the few cases it is)
   * My initial guess is Option 2 is sufficient because Blinka only needs to implement code that could already run in CPython, since any type checker running or user writing code for use with Blinka would only encounter/use those subsets anyway.
   * Subset is the right way to go. Blinka displayio has a subset already, worth at least looking at.


41:08 @jepler (no mic, please feel free to read or skip)
* Anybody know why the esp32-s2 builds are now failing in main? They are fine locally for me!


## 42:20 Wrap-Up
