# CircuitPython Weekly for August 16th, 2021


Video is available here [on YouTube](https://youtu.be/7bs1DNsxrsk).


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://raw.githubusercontent.com/adafruit/adafruit-circuitpython-weekly-meeting/master/meeting.ical)


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:14 Community News

CircuitPython 7.0.0 Alpha 6 Released

Halloween Hackfest

An Asteroid-like Game in CircuitPython for 6 Different Microcontroller Boards

Tree of Life 

Electronics - George Gunn project 

M4 Breadstick 

A pixel-model of the Raspberry Pi Pico 

Vim Keyboard 


### Newsletter Details
The CircuitPython Weekly Newsletter is a CircuitPython community-run newsletter emailed every Tuesday. You may subscribe at https://www.adafruitdaily.com.
The complete [archives](https://www.adafruitdaily.com/category/circuitpython/) are available. 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:28 State of CircuitPython, Libraries and Blinka
### Overall
* 47 pull requests merged
  * 26 authors - kattni, microDev1, weblate, tylercrumpton, ZodiusInfuser, cdwilson, jpconstantineau, apendley, liltux, jepler, WarriorOfWire, rpavlik, lesamouraipourpre, bergdahl, tannewt, dherrada, ajlennon, skieast, anecdata, codetyphon, dhalbert, NathanY3G, eddieespinal, FoamyGuy, garrettheath4, wtuemura
  * 13 reviewers - dherrada, TheKitty, ladyada, kattni, microDev1, cwalther, brentru, makermelissa, jepler, gamblor21, dhalbert, FoamyGuy, tannewt
* 41 closed issues by 18 people, 21 opened by 19 people


### 7:54  Core
* 28 pull requests merged
  * 18 authors - microDev1, weblate, tylercrumpton, ZodiusInfuser, cdwilson, jpconstantineau, jepler, WarriorOfWire, rpavlik, lesamouraipourpre, bergdahl, tannewt, skieast, codetyphon, dhalbert, NathanY3G, eddieespinal, wtuemura
  * 8 reviewers - ladyada, microDev1, kattni, cwalther, jepler, gamblor21, dhalbert, tannewt
* 10 open pull requests
  * https://github.com/adafruit/circuitpython/pull/5048 (Open 23 days)
  * https://github.com/adafruit/circuitpython/pull/5077 (Open 17 days)
  * https://github.com/adafruit/circuitpython/pull/5106 (Open 9 days)
  * https://github.com/adafruit/circuitpython/pull/5120 (Open 6 days)
  * https://github.com/adafruit/circuitpython/pull/5123 (Open 5 days)
  * https://github.com/adafruit/circuitpython/pull/5145 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/5151 (Open 1 days)
  * https://github.com/adafruit/circuitpython/pull/5158 (Open 0 days)
  * https://github.com/adafruit/circuitpython/pull/5157 (Open 0 days)
  * https://github.com/adafruit/circuitpython/pull/5156 (Open 0 days)
* 30 closed issues by 10 people, 10 opened by 9 people
* 423 open issues
  * https://github.com/adafruit/circuitpython/issues
* 6 active milestones
  * 7.0.0: 24 open issues
  * 7.x.x: 5 open issues
  * 8.0.0: 2 open issues
  * Libraries: 15 open issues
  * Long term: 367 open issues
  * Support: 5 open issues
  * 5 issues not assigned a milestone


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


Overall: Hopefully we’ll close a number of issues this week with the goal of getting 7.0.0 stablized. Please keep testing the pre-releases and let us know if there are any issues that should be fixed before releasing 7.0.0 as stable. Thanks!
### 10:52 Libraries
* 19 pull requests merged
  * 10 authors - dherrada, ajlennon, kattni, lesamouraipourpre, apendley, anecdata, liltux, jepler, FoamyGuy, garrettheath4
  * 9 reviewers - dherrada, TheKitty (Anne), ladyada, kattni, brentru, makermelissa, dhalbert, FoamyGuy, tannewt
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_MacroPad/pull/16 (Days open: 9)
    * https://github.com/adafruit/Adafruit_CircuitPython_MIDI/pull/40 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MiniMQTT/pull/89 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MiniMQTT/pull/87 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PCA9685/pull/39 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MONSTERM4SK/pull/10 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_SSD1608/pull/12 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_SSD1680/pull/3 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_SSD1322/pull/11 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Slideshow/pull/37 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_SSD1327/pull/11 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_NeoPixel/pull/116 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_SSD1325/pull/12 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_SSD1681/pull/6 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_DisplayIO_SSD1306/pull/22 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MCP9600/pull/16 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PyBadger/pull/49 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/pull/338 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/pull/337 (Days open: 1)
* 11 closed issues by 9 people, 11 opened by 10 people
* https://circuitpython.org/contributing
  * 338 open issues
  * 3 good first issues
  * 45 open pull requests (Oldest: 605, Newest: 4)
Library updates in the last seven days:

**New Libraries**
 * [Adafruit_CircuitPython_Ducky](https://github.com/adafruit/Adafruit_CircuitPython_Ducky)

**Updated Libraries**
 * [Adafruit_CircuitPython_MacroPad](https://github.com/adafruit/Adafruit_CircuitPython_MacroPad)
 * [Adafruit_CircuitPython_MIDI](https://github.com/adafruit/Adafruit_CircuitPython_MIDI)
 * [Adafruit_CircuitPython_MiniMQTT](https://github.com/adafruit/Adafruit_CircuitPython_MiniMQTT)
 * [Adafruit_CircuitPython_MCP9600](https://github.com/adafruit/Adafruit_CircuitPython_MCP9600)
 * [Adafruit_CircuitPython_PyBadger](https://github.com/adafruit/Adafruit_CircuitPython_PyBadger)
 * [CircuitPython_Community_Bundle](https://github.com/adafruit/CircuitPython_Community_Bundle)






### 13:45 Blinka
* 0 pull requests merged
  * 0 authors - 
  * 0 reviewers - 
* 3 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka/pull/417 (Open 187 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/496 (Open 21 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/501 (Open 0 days)
* 0 closed issues by 0 people, 0 opened by 0 people
* 60 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* Piwheels Downloads in the last month: 8730
Number of supported boards: 75


## 14:46 Hug reports
18:03 @CGrover (text only)
* Group hug
* @todbot for the nostalgic and inspiring Staroids code. Fantastic object physics and smooth animation!


18:21 @charlesburnaford (lurking)  Group Hug


18:26 @danh
* @ladyada for audio debugging experience and suggestions
* @kattni and @philb for audio testing
* @microDev1 for quickly fixing a code-reload crash


@DaveP (lurking)


19:11 @david.glaude (lurking)
* @TodBot for the staroïds game
* @jepler for trying to fix the progressbar on magtag (for vaccination tracker)


19:31 @foamyguy
* Discord member @hem for providing folks great assistance in the #help-with-circuitpython channel.
* @Jeff for sharing some knowledge of core functions and CPython os.walk.
* @Mark Gamblor for reviewing my bitmaptools PR and providing great feedback
* @neradoc for adding support for additional bundles in circup a little while back
* Github user @liltux for their first contribution to the libraries


15:14 @jepler
* Group hug
* Kattni, stay sane during the construction at the apartment
* Scott, thanks for helping split up the meeting dates for the next month


15:43 @jerryn
* Group hug


15:54 @kattni
* @foamyguy for a prompt response to a feature request on the CircuitPython dynamic screenshot generator
* @kmatch, @foamyguy and @warriorofwire for fixing `vectorio` to work with display rotation
* @jepler for finding a bug with and subsquently updating Pylint on the Adafruit Learning System Guides repo
* @tannewt and @jepler for taking over the meetings for a few weeks to deal with the brain-rattling construction going on outside my window


17:02 @MakerMelissa
* @brentru for working with me on getting the NVM Generator for WipperSnapper finished
* Group Hug


17:20 @Mark(Gamblor) [lurking for most]
* @Jeff and @Danh for the discussion on duplicate object checking


17:29 @tannewt
* @danh for sticking with the audio debugging even though it is a slog.
* @todbot for Staroids. Very cool to see what CP can do.
## 20:46 Status Updates
31:46 @AnneB (lurking)
* I have assumed review responsibility for most of the Learning System PRs. If there is an Adafruit Learning System PR, please add user TheKitty (me) as a reviewer.
* Thank you to everyone submitting Newsletter content - if you are working on or see or smell a Python on hardware project or news, send to cpnews(at)adafruit(dot)com or tag me on social media or tag #CircuitPython.
* Replacing printhead parts and bought a new print surface for the Prusa Mk.2S 3D printer I got from Noe & Pedro.


32:30 @CGrover (text only)
* Finally got around to completing a portable indoor air quality monitor using the SCD-30 breakout and CircuitPython. The extreme heat and smoky skies were the perfect motivation -- canceling any/all outdoor projects. The primary implementation was targeted for the PyBadge/PyGamer but the code was built to adapt to multiple boards including the Clue, FunHouse, and entire PyPortal family.
* Ported the AMG8833 Thermal Camera to the Gameduino Dazzler with a Feather M4 running CircuitPython. Graphics speed increased about 4X. Wow. Still learning how to fully manipulate the Gameduino graphics and bitmap primitives, but making progress.
* The new StringCar FeatherWing boards should arrive from OSH Park today. Stencils arrived last week and have been sitting on the desk loudly complaining about having nothing to do.


33:24 @danh
* Finally fixed the RP2040 audio issues. A similar fix may be needed for SAMD51.
* Finished a PR to allow multiple report ID’s in HID. This is the last incompatible API change for 7.0.0, so we can move on to beta releases. Also debugging an international keyboard issue.
* Released 7.0.0-alpha.6 last Wednesday.
* WIll continue to work on the remaining 7.0.0 issues with @tannewt and @jepler.


35:39 @david.glaude (lurking)
* Upgrading a few board to alpha.6
* Playing staroids game on PyGamer
* Trying (but failing) to run staroids on uGame10 (not enough memory)
* Getting a micro:bit v2 (not tested with CircuitPython yet)


36:08 @foamyguy
* Cleaned up code, added input validation and submitted PR for bitmaptools.boundary_fill function
* Got the CI working for circuitpython org bundle releases and added it to circup in the list of bundles it checks
* Made a few tweaks in Staroids to get it running on the PewPew M4
* Modified the CircuitPython project file screenshot tool to include files within subdirectories


This week:
* Move dial widget to its own repo in circuitpython org and update it to use new vectorio API
* Create a repo for the arc gauge widget
* Add all currently existing widgets to the circuitpython org bundle


21:25 @jepler
* Last week:
   * Helped start the process of modernizing pylint in the learn repo. A new version of pylint is being applied to all new guide code, and @dherrada is picking up old guides that have problems with the new pylint.  There are about 150 such guides.
   * A new guide went live on the Learn system covering how to use the QR code library in CircuitPython (qrio)
   * The version of circup with support for `install --auto` was released
   * Added a check for the version of codeformat, so that having 0.69 installed will signal an error promptly instead of silently doing incorrect formatting. (0.71 and 0.72 are both OK; 0.72 is easy to install in current Debian and 0.71 can be installed on Ubuntu from a PPA. this is documented.)
   * Started on “enhanced argument parsing” (core feature to save code space), but will put it on hold.
   * Added the PCF8563 RTC driver to the bundle
* This week:
   * 7.0 bug squashing


24:42 @jerryn
* Got the esp32s2/ov2640 webcam demo working on a saola-wrover (need the PSRAM!)  -- The code is the same as for a Kaluga v1.3 without any display, it just sends the image to AIO.  It does make it a much smaller package than the Kaluga but it is a lot of wiring! I could add it to the OV2640 library examples if you want it there  but it does not contain anything new, it  just uses the generic pin names. I’ll try the QR code demo next.


27:25 @kattni
* Last week:
   * Tested a PR to update `vectorio` to be cleaner and work with rotation
   * Updated my MacroPad code so Fidget Mode is enabled by default, requires being manually disabled, and is reenabled after a customisable delay which defaults to 15 seconds.
   * Worked through a gnarly CI failure on the Learn repo that turned out to be due to a three month old branch. Pro tip: always `git pull` before getting started with your code.
   * Prepped for and co-hosted Show and Tell
   * Merged a few PRs related to updating Pylint on the Adafruit Learning System Guides repo (this was a long time coming, I’m very excited about this)
   * Updated all files still called `main.py` on Learn to `code.py`
   * Started the MCP9601 guide
* This week:
   * Finish the MCP9601 guide
   * Add MP3 playback to MacroPad library
   * New guide on CircuitPython MP3 playback on RP2040
   * New template for MP3 playback on CircuitPython
   * SCD40/1 guide
* In the rest of my world:
   * This building is under construction - they’re redoing the side of the building. There is a lift shaft attached to my balcony that traverses the entire 21 floors, and sounds like thunder every time it moves. Then there’s the sound of removing brick... I’m sure they can and will find something else with which to make lots of noise.


29:28 @MakerMelissa:
* Last Week:
   * Finished up MacroPad RPC and Home Assistant guide
   * Finished up changes to WebSerial ESPTool
   * Added missing boards to circuitpython.org
   * Started trying to reskin CircuitPython Code Editor, but ran into too many difficulties getting a test instance up.
       * Will try and get some help
   * Worked on some issues with the Adafruit Arduino EPD library and a missing example
   * Misc GitHub and Guide updates
* This Week:
   * Hopefully get reskinning going
   * Finish up EPD fixes
* Other Stuff:
   * Moved into my new office this weekend.


30:35 @tannewt
* Tweaked the BLE broadcast levels when broadcasting publicly.
* Started debugging USB on the iMX RT and am waiting for a Beagle 480 coming Tuesday hopefully to make it easier to debug.
* Need to get XCode going for iOS 15 so I can test out the latest Glider code.
* Will be expanding the BLE file transfer api a bit to better support the iOS file mechanics.
* Will be looking into filesystem unicode handling too. (Found with the BLE api.)
## 37:45 In The Weeds


38:02 @Mark(Gamblor) - Checking for duplicate pins in keypad led to a discussion about a more generic way to check for them, or other duplicate objects. The PR 5123 has example code written to test this in argchecks.c. I (Mark) wanted to check if this makes sense and if so I’ll clean it up and properly test it.
## 43:48 Wrap-Up
August 23 at the normal time
