Video is available [on YouTube](https://youtu.be/5Y-rSn0wTMc).


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.
## Community News
3:11 Pybricks Brings MicroPython to LEGO Controllers

Pybricks is Python coding for smart LEGO® hubs. You can run MicroPython scripts directly on the hub and get full control of your motors and sensors.
Pybricks runs on LEGO® BOOST, City, Technic, MINDSTORMS®, and SPIKE®. You can code using Windows, Mac, Linux, Chromebook, and Android.
You can restore the original LEGO firmware with ease. This is very well coded and it even has a dark mode!
See the site at code.pybricks.com and the author Twitter - Adafruit Blog.

An LCD watch using an RP2040, RTC, wireless Qi charging, a 1.3” TFT display, and 6 pins including analog ones broken out to a Hirose Mezzanine flat connector. Runs CircuitPython - Mastodon.

A cuddly dumpling bot that keeps you warm! Perfect companion for the end-of-year season. Machine sewn, animated eyes with an Adafruit Monster M4sk + CircuitPython. USB-powered rechargeable hand warmers inside - Twitter Thread.

### 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.
## 4:43 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.**
### 4:45 Overall
* 19 pull requests merged
  * 15 authors - jepler, ladyada, michalpokusa, wtuemura, RetiredWizard, chukwon, jaygreco, bergdahl, CDarius, dhalbert, ocaro, Neradoc, weblate, xgpt, Pixel-Clay
  * 5 reviewers - jepler, dhalbert, Neradoc, anecdata, FoamyGuy
* 16 closed issues by 9 people, 13 opened by 13 people


### 5:09 Core
* 15 pull requests merged
  * 12 authors - jepler, ladyada, wtuemura, RetiredWizard, jaygreco, bergdahl, CDarius, dhalbert, ocaro, weblate, Pixel-Clay, chukwon
  * 2 reviewers - dhalbert, jepler
* 19 open pull requests
  * https://github.com/adafruit/circuitpython/pull/5999 (Open 327 days)
  * https://github.com/adafruit/circuitpython/pull/6037 (Open 321 days)
  * https://github.com/adafruit/circuitpython/pull/6555 (Open 182 days)
  * https://github.com/adafruit/circuitpython/pull/6913 (Open 108 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7114 (Open 70 days)
  * https://github.com/adafruit/circuitpython/pull/7141 (Open 67 days)
  * https://github.com/adafruit/circuitpython/pull/7153 (Open 65 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7151 (Open 65 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7161 (Open 63 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7216 (Open 48 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7221 (Open 46 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7220 (Open 46 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7237 (Open 44 days)
  * https://github.com/adafruit/circuitpython/pull/7282 (Open 33 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7293 (Open 32 days) (draft)
  * https://github.com/adafruit/circuitpython/pull/7332 (Open 22 days)
  * https://github.com/adafruit/circuitpython/pull/7343 (Open 19 days)
  * https://github.com/adafruit/circuitpython/pull/7371 (Open 12 days)
  * https://github.com/adafruit/circuitpython/pull/7396 (Open 5 days) (draft)
* 9 closed issues by 5 people, 8 opened by 8 people
* 586 open issues
  * https://github.com/adafruit/circuitpython/issues
* 8 active milestones
 * 7.3.x: 0 open issues
 * 8.0.0: 6 open issues
 * 8.x.x: 34 open issues
 * 9.0.0: 2 open issues
 * Libraries: 20 open issues
 * Long term: 511 open issues
 * Support: 10 open issues
 * Third-party: 4 open issues
  * 2 issues not assigned a milestone


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


### Libraries
* 4 pull requests merged
  * 3 authors - xgpt, michalpokusa, Neradoc
  * 5 reviewers - jepler, dhalbert, Neradoc, anecdata, FoamyGuy
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_HTTPServer/pull/29 (Days open: 13)
    * https://github.com/adafruit/Adafruit_CircuitPython_Display_Text/pull/179 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Ticks/pull/9 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_ST7789/pull/35 (Days open: 1)
  * 50 open pull requests (Oldest: 826, Newest: 1)
* 7 closed issues by 5 people, 5 opened by 5 people
  * 600 open issues
  * 94 good first issues
* https://circuitpython.org/contributing


#### Library PyPI Weekly Download Stats
* **Total Library Stats**
  * 61708 PyPI downloads over 306 libraries
* **Top 10 Libraries by PyPI Downloads**
  * Adafruit CircuitPython BusDevice (adafruit-circuitpython-busdevice): 17249
  * Adafruit CircuitPython Requests (adafruit-circuitpython-requests): 16637
  * Adafruit CircuitPython Register (adafruit-circuitpython-register): 823
  * Adafruit CircuitPython BitbangIO (adafruit-circuitpython-bitbangio): 679
  * Adafruit CircuitPython DHT (adafruit-circuitpython-dht): 574
  * Adafruit CircuitPython HTTPServer (adafruit-circuitpython-httpserver): 547
  * Adafruit CircuitPython Display Text (adafruit-circuitpython-display-text): 406
  * Adafruit CircuitPython Pixelbuf (adafruit-circuitpython-pixelbuf): 404
  * Adafruit CircuitPython Wiznet5k (adafruit-circuitpython-wiznet5k): 360
  * Adafruit CircuitPython PCA9685 (adafruit-circuitpython-pca9685): 355


#### Library updates in the last seven days:
* **Updated Libraries**
  * [Adafruit_CircuitPython_NeoPxl8](https://github.com/adafruit/Adafruit_CircuitPython_NeoPxl8)
  * [Adafruit_CircuitPython_Wiznet5k](https://github.com/adafruit/Adafruit_CircuitPython_Wiznet5k)
  * [Adafruit_CircuitPython_Display_Text](https://github.com/adafruit/Adafruit_CircuitPython_Display_Text)
  * [Adafruit_CircuitPython_HTTPServer](https://github.com/adafruit/Adafruit_CircuitPython_HTTPServer)


### 8:15 Blinka
* 0 pull requests merged
  * 0 authors - 
  * 0 reviewers - 
* 4 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka/pull/417 (Open 692 days)
  * https://github.com/adafruit/Adafruit_Blinka_bleio/pull/40 (Open 452 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/267 (Open 34 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/637 (Open 29 days)
* 0 closed issues by 0 people, 0 opened by 0 people
* 86 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* PyPI downloads in the last week: 18384
* Piwheels Downloads in the last month: 7191
Number of supported boards: 100




## 9:19 Hug reports
9:39 @Paul Cutler (hosting)
* @DJDevon3 for sharing a TR-Cowbell - I’m looking forward to playing with it
* Thank you to everyone who has listened to the podcast - having just wrapped up season two and the first year, I’m very grateful to everyone who has listened or been a guest on the show


10:10 @CGrover
* @Tekktrik for a speedy response and expert help with a confusing (to me) git CI issue.
* @DJDevon3 for sharing the exceptional and evolving TR-Cowbell design and @foamyguy for taking CircuitPython support for it to the next level.
* Group hug to the community for copious inspiration and support in 2022!


10:51 @danh
* @DJDevon3 for TR-Cowbell proto, and for testing heap-based stack settings
* @jepler for settings.toml bug diagnoses and fixes
* @michalpokusa for HTTPServer library revamp; @anecdata and @paul-1 for testing it; @bill88t for doc fix that was included in the other PR


12:11 @david.glaude (not present)
* @LadyAda & @Phil for managing parenting and bringing the streaming schedule. It was great to have @JohnPark and others, but nothing compares to you.
* Group Hug


13:01 @DJDevon3 (text only)
* @Neradoc & @FoamyGuy for code contributions that brought the TR-Cowbell to life as a real MIDI sequencer. The contributions you’ve made are years ahead of where I thought I’d be with it.
* @FoamyGuy for streaming while working on code for the TR-Cowbell. I’m thankful to be able to watch you code multiple times a week. I love your streams because I always learn something new about Circuit Python in every episode no matter what you’re working on.
* @Skerr for spotting some issues with the TR-Cowbell, potential workaround, and encouragement. Congratulations on finishing your wireless charging wrist watch running Circuit Python!
* @Todbot for his PicoStepSeq, without you & your design I would have never attempted to make a sequencer or dragon eyes for the halloween mask. 
* @JohnPark for the gracious words about the PCB design and for hosting an amazing show every week.
* @LadyAda & @Phil T. You three are a beautiful thing. Wishing you happiness, joy, more cowbell, and golden diapers in 2023.
* @MakerMelissa for an awesome demo of a custom CNC machine on her YouTube channel.
* @Everyone who spent a little bit of their holiday off time answering questions in the circuit python help channel. There was definitely a little uptick in activity after Christmas with new members looking for help with their new devices.
* @Group Hug to all and a happy new year!


14:01 @foamyguy(not present)
* @DJDevon3 Thanks again for sharing your TR-Cowbell sequencer design and sending some out. I’ve had great fun tinkering with it. Also for sharing a great MIDI tutorial video
* @Danh for answering some questions I had around storage behavior over the break
* @Kattni for being a great friend and community leader as well as going to great lengths to make me feel comfortable and welcome during my adafruit on-boarding at the beginning of the year
* Group Hug to everyone in this amazing community. Here’s to another wonderful year of tinkering!


14:46 @jepler
* Group hug
* @Paul, thanks for your time as a host of the weekly meeting!


@kmatch (not present)
* I’ve been away for several months, what have I missed (🧑‍🍼)?
* Happy 2023 hugs to all! 


15:12 @tannewt
* @dhalbert for hunting down tricky caching bugs.
* @spovlot, @neradoc, @OatsNHoney, @dhalbert, @deshipu, @anecdata, @argonblue and others for helping in #help-with-circuitpython over the holidays.


15:43 @tekktrik (not present)
* Group hug to everyone


## Status Updates
@Paul Cutler (hosting)
* Built a sensor with CircuitPython using an ESP32-S2 Feather and time of flight sensor to measure how much water softener salt I have remaining and reports the measurement to Adafruit IO.
* My day job has changed and this will be my last time hosting.  Thank you for the opportunity to represent the community by hosting the meeting, it’s been an honor.


16:39 @CGrover
* Initial release of the PaletteSlice wrapper class was finished but not yet submitted to the community bundle. Two versions are available in the repo. One is a minimal version that only supports the slice/extended slice capability. The second adds a moderate set of typical list tools such as __contains__, .append(), .count(), .index(), .insert(), and .pop(). The next phase of development will involve adding the remainder of list attributes as well as iterative methods like min(), max(), and enumerate. It’s not likely that a complete inventory of list methods will ultimately be needed for palettes (tradeoffs, tradeoffs), but it’s a good opportunity to get some experience with magic methods and to learn where they might be useful and economical.
Repo: https://github.com/CedarGroveStudios/CircuitPython_PaletteSlice
Test Video: https://youtu.be/EwtSjBfnhWY
* Next in the project queue (if not further distracted by PaletteSlice) is to finalize the Ibanez Flanger hand-drawn PCB replacement followed by a eurorack realization of a precision VCO in the style of a retro HP wave generator. The VCO will be using something from the Feather MCU family and my custom AD9833 FeatherWing. The physical panel design and functional block diagram portions are done. Time to get to the funnest part, PCB design.
* The Just Repair The Cracked Wind Chime Sail project took on a life of its own. I now know more about tuning chime tubes than was needed to complete this simple project.


19:05 @danh
* Fixed an obscure bug having to do with optimized compilation and turning the CPU cache on and off.
* Clarified error messages for properties that are read-only, but only on some ports.
* Lots of PR reviews.
* Will continue on 8.0.0 bugs; we are triaging the list again, probably today.


20:34 @david.glaude (not present)
* I Introduced a co-worker to CircuitPython and we monitored the office temperature during the break. I made the CP part and he captured the temperature on the host, storing in a database… it worked without glitch for 15 days.
* Failed to control my beamer in InfraRed. I failed with CP and then failed with Arduino too. The Google TV remote and my Set Top Box remote also fail at that… so maybe it is not me and there is something special about that protocol or the beamer sensibility.
* Scrolled messages on a 8x8 RGB neoPixel Matrix.
* Some CircuitPython.org activity related to LOLIN boards.


21:16 @DJDevon3 (text only)
* Worked on documentation for the TR-Cowbell. Everything from I2C bus issues & multiplexer behavior to soldering instructions and schematics.
* Between @Neradoc & @FoamyGuy the code for the TR-Cowbell has evolved beyond my ability to fully comprehend it. It’s taken on a life of its own to become a community based project to those who have received a board. It’s going to take me the rest of 2023 just to digest what FoamyGuy was able to do in 4 hours live streaming. Thank you to everyone who has been having fun with the board and figuring out ways to use it. The feedback has been positive & constructive.
* Efforts continue in learning Fusion 360 & designing a 3D printable enclosure. Currently working on a way to add modular peripherals using Adafruit’s 4-pin magnetic connectors. Docking connectors to the I2C bus means you can add/remove peripherals like dewalt batteries, just slide in a different peripheral. 
*   * There is a lot that could go wrong with such an intricate design. It might take months so I’m making no estimates on when the enclosure will be available. Everyone that received a TR-Cowbell v1.2 will also receive an enclosure, when they’re ready.
* I have enough components again for 3 more TR-Cowbells to give away. If anyone is interested in getting one, feel free to DM me on discord. The full kits (assembled or unassembled) are completely free, not for sale. Currently the offer is only for Adafruit Folks, Circuit Pythonistas, or well known long time active Circuit Python community members because an address exchange is involved.


22:48 @foamyguy (scott reads)
   * Over break:
   * Code for the midi sequencer hardware. Started with usb MIDI output and then adding ways for user to modify note values with the knob and other types of manipulations. Also started working on a display for it with a secondary microcontroller connected via UART
   * Investigated an offset in positioning for display_text labels. Particularly noticeable with monospace fonts and labels that have leading space characters, though technically it’s present in other cases as well. Found what I think is the root cause and submitted a PR for it
   * Moving Forward:
   * Look over my Circuitpython 2022 post and write one for 2023
   * Starting working through the open library PRs testing and reviews.


23:41 @jepler
   * Past weeks: Not much activity. Did some small PRs and reviewing here and there.
   * Wrote code for the standalone NeXT mouse to USB HID converter with CircuitPython, the guide will probably be finished sometime in January
   * CircuitPython bugs!
   * Doing something with Scorpio and 8 meters of NeoPixel LEDs that came on Saturday(!)


24:21 @tannewt
   * Out the last two weeks. #CircuitPython2023 blog went live on New Year’s Day. Haven’t gotten any circuitpython2023@adafruit.com emails so let me know if you sent one. 
   * Short week this week. Tuesday - Thursday. Traveling home on Friday.
   * Want to get caught up and in sync this week.
   * Will work on #CircuitPython2023 post as well.


26:19 @tekktrik (not present) (scott reads)
   * Over the holidays
   * Went out west to hang out with my girlfriend and her parents, it was an absolute blast.
   * Continued doing the Advent of Code in C, got a hash table working for the first time so that was exciting.  Doing all the challenges in C has given me a renewed appreciation for everything CircuitPython is doing under the hood!
   * This week
   * Probably sleeping now from a red-eye flight back east
   * Going to continue updating parts of the CI that have deprecation warnings
   * I’ll try to hit all corners of the tooling, but please don’t hesitate to tag me on anything with warnings - some parts will be deprecated as early as June I believe, so trying to be proactive!
   * Looking into so older issues I’ve submitted that got some renewed traction over the holidays
   * Hoping to organize a Community Help Desk soon for people looking for some help with anything they may have received over the holidays!


## 27:21 In The Weeds




## Wrap-Up
Next meeting on the usual day & time, 2PM ET on Monday January 9, 2023. The following meeting is Tuesday January 17, 2023 due to a US holiday.