# CircuitPython Weekly for January 31, 2022


Video is available [on YouTube](https://youtu.be/lAQj_f0-HSc).


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


### Floppy Interfacing Hack Chat with Adafruit and Hackaday.io
Adafruit's Limor "Ladyada" Fried, Jeff Epler, and Phillip Torrone will host the Hack Chat on Wednesday, February 2 at noon Pacific.
More information - [hackaday.io](https://hackaday.io/event/183426-floppy-interfacing-hack-chat-with-adafruit).
### Apple Finally Removing Python 2 in macOS 12.3
Apple will no longer bundle Python 2.7 with macOS 12.3, according to developer release notes for the upcoming software update. Python 2 has not been supported since January 1, 2020 and no longer receives any bug fixes, security patches, or other changes - [MacRumors](https://www.macrumors.com/2022/01/28/apple-removing-python-2-in-macos-12-3/) and [Release Notes](https://developer.apple.com/documentation/macos-release-notes/macos-12_3-release-notes#Python).
### Golioth introduces CircuitPython SDK for Cloud Data
What if you could open a text document on a device, write code, click save, and everything magically starts working? This is the promise of high level programming languages like CircuitPython. Golioth Labs now has an SDK to utilize the language’s fast prototyping capabilities. In addition to Golioth’s cloud functions, it’s super easy to pass data from a networked device up to the Golioth cloud. Click save to stream IoT device data to the cloud - [Golioth](https://blog.golioth.io/click-save-to-stream-iot-device-data-to-the-cloud/).
### The Pi Cast Celebrates 10 Years of Raspberry Pi: New Episodes With Ladyada, Eben Upton, and More
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](https://www.tomshardware.com/news/pi-cast-celebrates-10-years-of-raspberry-pi) and [YouTube](https://www.youtube.com/watch?v=aGV6zZmF8Bs).
### 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:31 State of CircuitPython, Libraries and Blinka
### 7:10 Overall


* 59 pull requests merged
  * 28 authors - ae5au, DavePutz, prplz, CedarGroveStudios, evaherrada, TheWoodsy, JingleheimerSE, MicroDev1, rimwolf-redux, fabaff, askpatrickw, fivesixzero, FoamyGuy, Gigahawk, jepler, jerryneedell, dkulinski, tammymakesthings, tekktrik, raquo, tannewt, wtuemura, EmergReanimator, weblate, bergdahl, kattni, UnexpectedMaker, caternuson
  * 12 reviewers - FoamyGuy, brentru, dhalbert, jerryneedell, jepler, PaintYourDragon, evaherrada, tannewt, ladyada, MicroDev1, kattni, caternuson
* 32 closed issues by 14 people, 30 opened by 20 people
### 8:00 Core
* 18 pull requests merged
  * 14 authors - DavePutz, prplz, jepler, jerryneedell, dkulinski, tammymakesthings, TheWoodsy, tannewt, wtuemura, EmergReanimator, weblate, MicroDev1, bergdahl, UnexpectedMaker
  * 5 reviewers - jepler, dhalbert, ladyada, MicroDev1, tannewt
* 9 open pull requests
  * https://github.com/adafruit/circuitpython/pull/5298 (Open 149 days)
  * https://github.com/adafruit/circuitpython/pull/5352 (Open 137 days)
  * https://github.com/adafruit/circuitpython/pull/5491 (Open 101 days)
  * https://github.com/adafruit/circuitpython/pull/5726 (Open 47 days)
  * https://github.com/adafruit/circuitpython/pull/5781 (Open 35 days)
  * https://github.com/adafruit/circuitpython/pull/5852 (Open 17 days)
  * https://github.com/adafruit/circuitpython/pull/5908 (Open 8 days)
  * https://github.com/adafruit/circuitpython/pull/5951 (Open 0 days)
  * https://github.com/adafruit/circuitpython/pull/5948 (Open 0 days)
* 10 closed issues by 4 people, 18 opened by 12 people
* 495 open issues
  * https://github.com/adafruit/circuitpython/issues
* 6 active milestones
  * 7.2.0: 10 open issues
  * 7.x.x: 23 open issues
  * 8.0.0: 8 open issues
  * Libraries: 18 open issues
  * Long term: 426 open issues
  * Support: 7 open issues
  * 3 issues not assigned a milestone [fixed as of today]


* Core download stats available at https://circuitpython.org/stats
### 9:15 Libraries
* 40 pull requests merged
  * 15 authors - FoamyGuy, ae5au, prplz, Gigahawk, CedarGroveStudios, evaherrada, tekktrik, raquo, tannewt, JingleheimerSE, rimwolf-redux, fabaff, askpatrickw, kattni, fivesixzero
  * 10 reviewers - FoamyGuy, brentru, dhalbert, jerryneedell, jepler, PaintYourDragon, evaherrada, ladyada, kattni, caternuson
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_BluefruitSPI/pull/20 (Days open: 239)
    * https://github.com/adafruit/Adafruit_CircuitPython_Debouncer/pull/34 (Days open: 68)
    * https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/146 (Days open: 25)
    * https://github.com/adafruit/Adafruit_CircuitPython_Thermistor/pull/19 (Days open: 14)
    * https://github.com/adafruit/Adafruit_CircuitPython_24LC32/pull/11 (Days open: 12)
    * https://github.com/adafruit/Adafruit_CircuitPython_Bitmap_Font/pull/56 (Days open: 6)
    * https://github.com/adafruit/Adafruit_CircuitPython_Logging/pull/25 (Days open: 6)
    * https://github.com/adafruit/Adafruit_CircuitPython_AzureIoT/pull/37 (Days open: 5)
    * https://github.com/adafruit/Adafruit_CircuitPython_MacroPad/pull/36 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_STMPE610/pull/22 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_AzureIoT/pull/40 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/155 (Days open: 2)
    * https://github.com/adafruit/Adafruit_CircuitPython_74HC595/pull/23 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_AdafruitIO/pull/83 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_ADT7410/pull/19 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_ADXL34x/pull/32 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_ADS1x15/pull/78 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_AHTx0/pull/10 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_AirLift/pull/7 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_AM2320/pull/26 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_APDS9960/pull/40 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_AMG88xx/pull/33 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE_Apple_Media/pull/12 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE_Apple_Notification_Center/pull/15 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MiniMQTT/pull/99 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Nunchuk/pull/28 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BNO055/pull/92 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MacroPad/pull/37 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Simple_Text_Display/pull/11 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE/pull/153 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_VL53L1X/pull/2 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_OV5640/pull/13 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_asyncio/pull/16 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_NeoPixel/pull/123 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_24LC32/pull/14 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_24LC32/pull/13 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Ticks/pull/4 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/pull/366 (Days open: 1)
    * https://github.com/adafruit/cookiecutter-adafruit-circuitpython/pull/169 (Days open: 1)
    * https://github.com/adafruit/cookiecutter-adafruit-circuitpython/pull/167 (Days open: 1)
  * 18 open pull requests (Oldest: 489, Newest: 1)
* 22 closed issues by 11 people, 11 opened by 8 people
  * 634 open issues
  * 236 good first issues
* https://circuitpython.org/contributing
Library updates in the last seven days:
**Updated Libraries**
 * [Adafruit_CircuitPython_ADS1x15](https://github.com/adafruit/Adafruit_CircuitPython_ADS1x15)
 * [Adafruit_CircuitPython_Bitmap_Font](https://github.com/adafruit/Adafruit_CircuitPython_Bitmap_Font)
 * [Adafruit_CircuitPython_CCS811](https://github.com/adafruit/Adafruit_CircuitPython_CCS811)
 * [Adafruit_CircuitPython_CLUE](https://github.com/adafruit/Adafruit_CircuitPython_CLUE)
 * [Adafruit_CircuitPython_Debouncer](https://github.com/adafruit/Adafruit_CircuitPython_Debouncer)
 * [Adafruit_CircuitPython_Display_Button](https://github.com/adafruit/Adafruit_CircuitPython_Display_Button)
 * [Adafruit_CircuitPython_DisplayIO_Layout](https://github.com/adafruit/Adafruit_CircuitPython_DisplayIO_Layout)
 * [Adafruit_CircuitPython_ESP32SPI](https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI)
 * [Adafruit_CircuitPython_Logging](https://github.com/adafruit/Adafruit_CircuitPython_Logging)
 * [Adafruit_CircuitPython_SCD4X](https://github.com/adafruit/Adafruit_CircuitPython_SCD4X)
 * [Adafruit_CircuitPython_STMPE610](https://github.com/adafruit/Adafruit_CircuitPython_STMPE610)
 * [Adafruit_CircuitPython_Thermistor](https://github.com/adafruit/Adafruit_CircuitPython_Thermistor)
 * [Adafruit_CircuitPython_Nunchuk](https://github.com/adafruit/Adafruit_CircuitPython_Nunchuk)
 * [Adafruit_CircuitPython_BNO055](https://github.com/adafruit/Adafruit_CircuitPython_BNO055)
 * [Adafruit_CircuitPython_MacroPad](https://github.com/adafruit/Adafruit_CircuitPython_MacroPad)
 * [Adafruit_CircuitPython_Simple_Text_Display](https://github.com/adafruit/Adafruit_CircuitPython_Simple_Text_Display)
 * [Adafruit_CircuitPython_24LC32](https://github.com/adafruit/Adafruit_CircuitPython_24LC32)
 * [Adafruit_CircuitPython_AzureIoT](https://github.com/adafruit/Adafruit_CircuitPython_AzureIoT)
 * [Adafruit_Python_PlatformDetect](https://github.com/adafruit/Adafruit_Python_PlatformDetect)
### 11:40 Blinka
* 1 pull requests merged
  * 1 authors - caternuson
  * 1 reviewers - ladyada
* 5 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka/pull/417 (Open 355 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/496 (Open 189 days)
  * https://github.com/adafruit/Adafruit_Blinka_bleio/pull/40 (Open 115 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/201 (Open 55 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/540 (Open 24 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: 17266
Number of supported boards: 87


## 12:30 Hug reports
13:30, 15:xx @danh
* All our translators for making CircuitPython available and understandable for non-English speakers
* @tammymakesthings for first core PR
* @EmergReanimator for generalizing the STM port and finding long-standing bugs
* @tannewt for speedy progress using nimble for BLE on Espressif

14:00 @charlesburnaford
* Group Hug


14:25 @david.glaude (lurking)
* @MakerMelissa for “Stream Deck controlled RGB Message Panel using Adafruit IO” learn guide.
* Brent and Limor for some other MQTT learn guide.


14:45 @foamyguy
* @fivesixzero for submitting typing and other improvements to the MacroPad library
* @tammymakesthings for submitting their first circuitpython PR and for plans to start streaming CircuitPython and making on Twitch
* @danh for working on the secondary USB drive. Really looking forward to ability to edit files on the attached SDCard


16:26 @jepler
* Group hug because I was late writing my notes
* Hug to everyone pitching in on the recent regressions & their fixes
* Hug to TammyMakesThings for her first PR


16:55 @jerryn
* @danh for the quick fix to the samd51 builds
* @Franklin for joining the moderator team


17:16 @kattni
* @Franklin for joining the Discord moderation team
* @tammymakesthings for rejoining the community and for their first PR
* @pcutler for the upcoming CircuitPython Show podcast
* @foamyguy for continuing to get through older library PRs
* @tekktrik for always being up for library work
* @cater for sending me a couple of Pi Zero Ws because I can’t for the life of me find mine, and I really wanted to use a Zero W for a project I’m working on.
* Group Hug to the community for many reasons, not the least of which being the effort that current community members put into keeping the community welcoming and safe for both new and current folks.


19:15 @kmatch
* @tannewt, @danh and @neradoc for helping me get back able to build CircuitPython
* @jerryn and @danh for confirming and fixing issue on pyportal build


19:45 @MakerMelissa
* Group Hug


19:51 @mark(Gamblor) [lurking/text only for some]
* @tannewt for catching a few more mistakes in my latest PR
* @tammymakesthings for their first PR


20:05 @tammymakesthings
* Everyone, but especially @danh and Michael, for helping me get my first PR through the release process!
* Group hug, because the CircuitPython community is amazing and I’m super happy to be participating again!


21:20 @tannewt
* @Michael for the type PR
* @TheMindVirus for the links to the AudioWorklet API in an issue
* @ladyada for reviews
* @tammymakesthings for the neopixel PR 


22:05 @tekktrik
* @kattni for providing me with opportunities to help out with the some of the library infrastructure
* Group Hug!
## Status Updates
23:11 @danh
* Testing of multiple LUNs for USB Mass Storage. Thach will do more testing after Tet.
* Fixing I2C bugs.
* Fixed a SAMD bug that caused the build to crash immediately.
* Doing support and triaging potential bugs.




24:40 @charlesburnaford
* Still working on various devices for my synth rig
* Just got my keyboar boards for the synth.
* Still looking for slider boards


27:05 @david.glaude (lurking)
* Playing with MQTT from FeatherS2 to a Mosquito on a Pi.
   * I tried all the simple test and figured how to go to my server rather than Adafruit.io
   * Hoping for networking to integrate with the asynchronous aspect and follow great learn guide
* Tested Neopixel on Pi Zero 1 W and it failed on me (I wrote an issue)
* Future plan: Do something like the learn guide “Stream Deck controlled RGB Message Panel using Adafruit IO” but with a PyPortal rather than Stream Deck and my own MQTT server rather than Adafruit.io.


27:58 @foamyguy
* Recorded video and finishing touches on Neko cat animation guide
* Updated the documentation section of readme file in cookiecutter to include link to readthedocs 
* Started working on “converter” script for Winamp skins to prepare them for usage on a PyPortal
* Continuing PR reviews. I learned the basics of button matrix circuits this week for testing with HT16K33
* Working on pulling and showing data from government web traffic this week


29:40 @jepler
* Last week: Floppy stuff, outside of CircuitPython
   * Now using the RP2040 PIO peripheral for very highly accurate timing when reading & writing disks. While the code is going into Arduino first, being able to prototype the PIO code in CircuitPython was invaluable.
* This week: Floppy stuff, outside of CircuitPython
   * Will be on the floppy hack chat this week
   * Floppy stuff will be entering CircuitPython, but mostly after we get the implementation finished in Arduino. The coding is taking into account the differences between the coding environments.


30:47 @jerryn
* Experimented with microbit_v2 build
   * Able to use ampy to load files
      * Had to add binascii to the build for “get” function
      * Ampy requires a mod to import binascii if ubinascii not found
         * Submitted issue and PR to ampy repo.
      * Rshell will need similar mod, but it was not working for me to upload
         * Will explore later. 
   * Also able to use code.circuitpython.org via BLE!
* Ampy also works with the esp32c3 build.
* Got my rfm9x/mlx90640 transmitter and receiver working pretty well. 
   * Transmitter is a feather rp2040 with rfm9x featherwing and mlx90640 breakout
   * Receiver is a feather rp2040 with rfm9x featherwing and a 2.4inch TFT featherwing – it displays the image.  
   * Working on a “pillow” based display on a Raspberry Pi. Lots to learn about pillow first. So far I can get a black and white image.


34:05 @kattni
* Last week:
   * Finished up adding the Arduino templates to all of the RP2040 board guides
   * Started the Arcade STEMMA QT guide
   * Misc.
* Today so far:
   * Update Newsletter with Learn guides
   * Write PWM code for Arcade QT
   * Scramble to continue / finish up my CP2022 post.
   * Order hardware I forgot to bring with me to do the asyncio template
* This week:
   * Finish CP2022 post.
   * Arcade STEMMA QT guide
   * Learn System Groups
   * Update circuitpython.org/trademarks with our content
   * Finish up Feather TFT guide
   * A couple of QT-rev guide updates
   * DotStar status LED template
   * asyncio template


38:18 @kmatch
* Last week: Explored concept of having a “split screen” development display: view both the REPL/print() output and a displayio window. 
* This week: Study background on converting touch events to gestures, particularly looking for open source demo examples. 


39:45 @MakerMelissa
* Last Week:
   * Worked more on porting LittleFS to JavaScript
   * Attempted to use an existing project called LittleFS-JS, but it has not been updated in 4 years and the format was unusable.
   * Updated my stream deck Matrix Learn guide with an update 3D printable model
* This Week:
   * Continuing to debug the work I have done on LittleFS and getting into the details of the code


40:44 @tammymakesthings
* Last week I got the CircuitPython build environment set up and working, and I successfully submitted my first PR (a fix for issue 4218, where calling neopixel.show() after calling neopixel.deinit() did not raise an exception).
* This week I’m hoping to continue to find some places to contribute while I learn my way around the CircuitPython code base.
* I’m planning to start streaming electronic making stuff, with a focus on CircuitPython, on Twitch (twitch.tv/tammymakesthings). This week I’m planning to finish getting OBS set up and everything configured so I can do a first “test” stream the week of the 7th.


41:30 @tannewt
* Last week I got BLE scanning and advertising going on the S3.
* This week:
   * Follow up on advertising simple test
   * Finish BroadcastNet CP bridge
   * Work on GATT services and characteristics
   * Wrap up CircuitPython 2022


43:04 @tekktrik (not in meeting)
* Last week:
   * Nearing completion on the Discord-linked PyBadge project prototype, working with asyncio and displayio has been extremely fun!
   * Apparently some family and friends would like a auto-lighting menorah, so I’m gonna try to design a few simple PCBs to make assembling them easier, a first for this MechE
* This week
   * In non-CircuitPython news, taking a small break to work on grad school applications and moving (mostly because my main workstation is packed up 
¯\_(ツ)_/¯)


## 44:08 In The Weeds




## 44:17 Wrap-Up
