# CircuitPython Weekly for 9 September 2020


Welcome to the CircuitPython Weekly meeting notes! Feel free to add your Hug Reports and Status Updates early. During the meeting, we go through them as a round robin sorted by username. If you can’t make the meeting and would still like to participate, add your notes with a “(missing meeting)” after your username and we’ll read them off for you. 


Add any longer-form discussion topics or general questions you have to the “In the weeds” section. 


Thanks! We hope to see you in the meeting!


Video is available here [on YouTube](https://www.youtube.com/watch?v=CsaqMtyZlak).


Join here for the chat all week: http://adafru.it/discord


The CircuitPython Weekly happens normally at 2pm ET/11am PT on Mondays, but we held this week’s edition on Wednesday 9/9 as a part of CircuitPython day. 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 using the following link: https://raw.githubusercontent.com/adafruit/adafruit-circuitpython-weekly-meeting/master/meeting.ical for use with standard calendar applications or 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.
## 9:37 Community News

### Adafruit COVID update
https://www.adafruit.com/opensafely

### 11:41 Dedication
This year CircuitPython Day is being dedicated to Lamba Labs Makerspace, who are helping during the Beirut disaster.

### 12:26 CircuitPython Day schedule: https://github.com/adafruit/circuitpython-weekly-newsletter/blob/gh-pages/circuitpythonday2020.md

### 12:53 The 99th Newsletter and Python on Hardware Video

99th Newsletter and Python on Hardware Video 

This issue, corresponding to CircuitPython Day, is the 99th issue of both this newsletter and the accompanying Python on Hardware Video produced from newsletter contents. 99 is just the snakiest number to have things coincide with CircuitPython Day on 9-9!
* See the archive of all newsletters here.
* See the archive of all the Python on Hardware videos here.

### 13:44 A New Version of MicroPython Released

A new version of MicroPython has just been released: Version 1.13. It includes a new uasyncio module, code formatting, and BTstack bindings with Unix support. For the ESP8266, the default filesystem has changed from FAT to littlefs v2 - MicroPython Release Notes.

### 14:10 adafruit.com/vote

### 15:03 New boards and chipset discussion! From @ladyada

## State of CircuitPython, the Libraries, and Blinka

### 25:21 Overall


Note that these statistics cover 7 days, but it’s been 9 days since our last meeting.  I apologize if this means we miss calling out your contribution -- feel free to drop a note in the chat about contributors or releases that we’ve missed


* 20 pull requests merged
  * 13 authors - makermelissa, kmatch98, bergdahl, jepler, wtuemura, ladyada, tannewt, dherrada, kattni, FoamyGuy, dhalbert, ciscorn, ronfischler
  * 9 reviewers - makermelissa, ladyada, tannewt, dherrada, kattni, FoamyGuy, siddacious, dhalbert, jepler
* 13 closed issues by 9 people, 10 opened by 9 people


Overall: Issues are down slightly, mostly thanks to amazing work from the community of people who work on the libraries.  A respectable number of pull requests were merged (libraries being the majority again), and we are shaking the bugs out of the current 6.0 alpha release.  However, there’s still around a dozen issues that we need to resolve before that can become a stable release.  Scott, Kattni, and Melissa will have more specific information coming up.
### 26:40 Core
* 7 pull requests merged
  * 5 authors - wtuemura, dhalbert, ciscorn, jepler, bergdahl
  * 3 reviewers - jepler, tannewt, dhalbert
* 17 open pull requests
  * https://github.com/adafruit/circuitpython/pull/2966 (Open 104 days)
  * https://github.com/adafruit/circuitpython/pull/3044 (Open 84 days)
  * https://github.com/adafruit/circuitpython/pull/3144 (Open 60 days)
  * https://github.com/adafruit/circuitpython/pull/3192 (Open 47 days)
  * https://github.com/adafruit/circuitpython/pull/3237 (Open 38 days)
  * https://github.com/adafruit/circuitpython/pull/3291 (Open 22 days)
  * https://github.com/adafruit/circuitpython/pull/3302 (Open 20 days)
  * https://github.com/adafruit/circuitpython/pull/3326 (Open 14 days)
  * https://github.com/adafruit/circuitpython/pull/3349 (Open 11 days)
  * https://github.com/adafruit/circuitpython/pull/3370 (Open 6 days)
  * https://github.com/adafruit/circuitpython/pull/3369 (Open 6 days)
  * https://github.com/adafruit/circuitpython/pull/3372 (Open 5 days)
  * https://github.com/adafruit/circuitpython/pull/3375 (Open 4 days)
  * https://github.com/adafruit/circuitpython/pull/3374 (Open 4 days)
  * https://github.com/adafruit/circuitpython/pull/3378 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/3384 (Open 0 days)
  * https://github.com/adafruit/circuitpython/pull/3382 (Open 0 days)
* 2 closed issues by 2 people, 4 opened by 4 people
* 324 open issues
  * https://github.com/adafruit/circuitpython/issues
* 7 active milestones
  * 6.0.0: 10 open issues
  * 6.x.0 - Features: 2 open issues
  * 6.x.x - Bug Fixes: 11 open issues
  * 7.0.0: 3 open issues
  * Libraries: 12 open issues
  * Long term: 282 open issues
  * Support: 3 open issues
  * 1 issues not assigned a milestone


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


### 28:28 Libraries
* 11 pull requests merged
  * 9 authors - makermelissa, kmatch98, ladyada, tannewt, dherrada, kattni, FoamyGuy, dhalbert, ronfischler
  * 6 reviewers - ladyada, tannewt, dherrada, kattni, FoamyGuy, siddacious
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE/pull/103 (Days open: 9)
    * https://github.com/adafruit/cookiecutter-adafruit-circuitpython/pull/87 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_LC709203F/pull/1 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Debug_I2C/pull/7 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MS8607/pull/2 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Bitmap_Font/pull/29 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Bitmap_Font/pull/28 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BNO080/pull/2 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Display_Text/pull/92 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_FeatherWing/pull/63 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MatrixPortal/pull/16 (Days open: 1)
* 9 closed issues by 6 people, 6 opened by 6 people
* https://circuitpython.org/contributing
  * 188 open issues
  * 8 good first issues
  * 34 open pull requests (Oldest: 611, Newest: 1)
Library updates in the last seven days:
**Updated Libraries**
 * [Adafruit_CircuitPython_MCP230xx](https://github.com/adafruit/Adafruit_CircuitPython_MCP230xx)
 * [Adafruit_CircuitPython_ImageLoad](https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad)
 * [Adafruit_CircuitPython_Motor](https://github.com/adafruit/Adafruit_CircuitPython_Motor)
 * [Adafruit_CircuitPython_Debug_I2C](https://github.com/adafruit/Adafruit_CircuitPython_Debug_I2C)
 * [Adafruit_CircuitPython_MS8607](https://github.com/adafruit/Adafruit_CircuitPython_MS8607)
 * [Adafruit_CircuitPython_Bitmap_Font](https://github.com/adafruit/Adafruit_CircuitPython_Bitmap_Font)
 * [Adafruit_CircuitPython_PyPortal](https://github.com/adafruit/Adafruit_CircuitPython_PyPortal)
 * [Adafruit_CircuitPython_framebuf](https://github.com/adafruit/Adafruit_CircuitPython_framebuf)
 * [Adafruit_CircuitPython_DS3502](https://github.com/adafruit/Adafruit_CircuitPython_DS3502)
 * [Adafruit_CircuitPython_Display_Text](https://github.com/adafruit/Adafruit_CircuitPython_Display_Text)
 * [Adafruit_CircuitPython_FeatherWing](https://github.com/adafruit/Adafruit_CircuitPython_FeatherWing)
 * [Adafruit_CircuitPython_MatrixPortal](https://github.com/adafruit/Adafruit_CircuitPython_MatrixPortal)
 * [Adafruit_Blinka](https://github.com/adafruit/Adafruit_Blinka)


### 30:54 Blinka
* 2 pull requests merged
  * 1 authors - makermelissa
  * 3 reviewers - ladyada, jepler, makermelissa
* 2 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka/pull/304 (Open 93 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/322 (Open 47 days)
* 2 closed issues by 2 people, 0 opened by 0 people
* 25 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* PyPI Downloads in the last week: 1652
Number of supported boards: 52


## 31:36 Hug reports


37:13 @anecdata (lurking)
* Group hug to everyone on Discord, with roles and without, contributing daily with good questions and good feedback, and helping to make it a fun place to learn.


37:27 @anneb
* Community for coming out to CircuitPython day. True challenge to make sure we have everything in a coherent fashion. Code+Community = CircuitPython
* PT and limor for making it all possible.


38:20 @brentru
* Group hug to everyone involved with CircuitPython, from the community to the Adafruit-sponsored contributors.
* Group hug to those who worked on CircuitPython day 2020, starting my day off with a Dan Stream was fun!


39:05 @CGrover (text only)
* Group hug to the team and community! It’s been an incredible learning journey to travel with the likes of you. My projects have been completely transformed because of CircuitPython’s ease-of-use and the innovation of the community. I appreciate the leadership and overall philosophy of @ladyada, @pt, @tannewt, and the core Adafruit CircuitPython team.
* @JohnPark for finding a pesky hysteresis bug in the Range_Slicer library.
* @Stargirl for walking me through a quick and easy way to flash the bootloader on the StringCar M0 express board.


39:46 @charlesburnaford (lurking)
* Group Hug for CircuitPython Day


39:54 @danh
* Big thanks to Noe and Pedro for running my livestream this morning, fielding questions, posting links, and just generally backup me up. Thanks also to everyone else participating.
* @tannewt for latest BLE reviews.
* @jepler for again fixing a large number of disparate things.
* Thanks to everyone all over the world for participating in Circuit Python Day.


40:55 @David.Glaude (lurking)
* @jepler for requesting that the QT Py have a spot for SPI flash chip…
* and @ladyada for making it a reality.
* @ladyada for taking into account the 64x64 matrix that need address pin E.
* @UnfinishedStuff for demonstrating the use of FeatherCap to plug a FeatherWing on a Raspberry Pi: https://twitter.com/UnfinishedStuff/status/1303061602753818625?s=20
* @arturo182 for the PiZero adaptor for the Keyboard Featherwing


@Dave P (lurking)


@fede2 (lurking)


41:35 @foamyguy
* Group hug for Circuit Python Day! Thanks to everyone streaming and participating in other ways.
* @fede2 @kattni @noe @pedro and anyone else who worked on Central American and Spanish CircuitPython day activities.
* @arturo182 for the BlackBerry Q10 Keyboard breakout, and the newer Keyboard Featherwing
* @kmatch98 for working on core enhancement to let display.Shape change size


@Gadgetoid (lurking)


42:53 @hierophect
* Group hug to the community, and PT and Ladyada
* @DavePutz for investigating issues with pin validity in the SPI and Microcontroller modules
* @MicroDev1 for adding the internal temp sensor to the ESP32-S2
* @emard for finding an issue with the ESP32 SPI and @Tannewt for tackling it
* Group hug to anyone who volunteers their time to help us uncover and solve bugs in the core, it really helps a lot


@Jayguitar (lurking)


32:14 @jepler
* Group hug!
* A big thanks to everyone who is streaming and sharing on CircuitPython day
* @ladyada and @pt for taking me on as part of the team (somewhere around a year ago was when we firmed up my half time contractor status)
* @kattni for the livestream we’re about to do together
* @tannewt for taking care of the technical side of streaming this meeting


33:08 @jerryn
* @jepler for the USB Proxy for RPi blog.
* Thanks to Adafruit for all the cool toys.


33:30 @kattni
* Huge hug to @fede2 for hosting a special edition of Show and Tell for CircuitPython day en Español!
* Thank you to Noe and Pedro for jumping in on the stream earlier and sticking around to help.
* Group hug to everyone involved with CircuitPython day here and around the world, everyone who put together events and those participating, or tuning in to watch.


34:26 @kmatch98
* @tannewt for direction on Shape dirty rectangle tracking and @foamyguy for testing it


34:40 @MakerMelissa
* @kattni for help with the LED Animation library
* @tannewt for your great review suggestions
* Group Hug to Everybody who is participating in CircuitPython day


35:06 @Mark (Gamblor) [lurking]
* Group hug to everyone whose hard work has contributed to CircuitPython and CircuitPython Day 2020!


@Mr. Certainly [lukring]


35:18 @sommersoft (prob missing meeting; day job meetings galore today):
* Group Hug & Happy CircuitPython Day 2020!


35:28 @tannewt
* @danh, @noe and @pedro for the getting started stream to kick things off.
* @fede2, @kattni, @noe and @pedro for Spanish show and tell!
* @kmatch98 for all of the displayio improvements to core.
* @BruceS for helping folks on Discord.
* @askpatrickw for helping with CircuitPython AND ElectionCal. Congrats on adding all 50 state data.
* Dastels for awesome forum support https://forums.adafruit.com/viewtopic.php?f=60&t=169211
* microDev1 for adding temp sensor support to ESP32S2.
## 44:35 Status Updates


@anecdata (lurking)


59:17 @anneb
* Proofreading newsletter. Until March, PT had been doing it.
* Thanks to the community for helping because the Python universe is quite large.
* Got issue 99 out this week.
* Issue 100 this coming Tuesday.
* Working for last 2.5 months on CircuitPython day. Apprecaite people who volunteered for events. Lots of fun.
* Probably taking time off to move.


@brentru (lurking)
* Nothing to report!


1:01:25 @calpardo
* Working from Turkey.
* Recently working on Raspberry Pi to automate agricultural drone.


1:02:30 @CGrover (text only)
Last week:
* Produced the second version of the Range_Slicer compander+quantizer Eurorack module PCB and began to re-tweak the supporting code library. Will be testing an entirely new core process in the library to improve hysteresis filtering accuracy and reduce signal processing latency as well as to simplify the conceptual model. Worked on the module’s X-Y graphic display to introduce variable trace persistence. The hardware is based on the ItsyBitsy M4 Express with a 128x128 TFT display.
* The latest StringCar M0 Express boards arrived from OSH Park. Reflow soldering went flawlessly and the board awakened with its own pin designations and a CircuitPython file system. The original CPy 3.1.0 code worked perfectly in 5.3.0 and the string car was able to enjoy a few laps on the string in the backyard. The birds at the nearby feeder eventually got used to the speedy new visitor.
* Developed a new approach to characterizing and controlling brushed DC motors that involves a combination of frequency and duty cycle adjustments. Is particularly useful for increasing torque at very low motor speeds. Saw some amazing improvements in low-speed performance of the 3-volt motor used for the LiPo version of the StringCar M0 Express board.
        Next week:
* Expecting some challenges with the new core process approach for Range_Slicer but things are looking very promising. Hope to republish the core library in a few days and will update the documentation to ‘splain the new conceptual approach.
* Will test the new brushless DC motor characterization and control scheme across my collection of motors to see if it’s reliable. If so, I will modify the base motor control library and write up a tutorial.
* Going to rewrite the original StringCar library code to reflect all that I’ve learned during my CircuitPython quest.


@charlesburnaford (lurking)


1:04:31 Note from Curtis:
* Hi , I'm Curtis from Hackerlab in Sacramento California, I was planning on three hours of Circuit Python Day events for later today but unfortunately I have been impacted by the intentional power cut off here in California due to high fire risk in my area; high winds, low humidity, high heat. Super sorry, we'll plan to do a follow up event to celebrate at some point in the future, not due how to best get the word out to this community, I’m sending this out on my solar backup but wont be online much longer


1:05:17 @danh
* Created the adafruit_airlift library to manage co-processors that support WiFi and/or Bluetooth. ESP32 is the first one supported. Revised the adafruit_ble HCI PR to use this new library.
* Getting Blinka bleio to work on MacOS. It’s significantly different from the Windows and Linux versions.
* Did many reviews.
* Debugging the NINA BLE fw build with @brentru and @ladyada.
* Fixed a pin swap bug on Feather M4 for board.I2C().


1:08:40 @David.Glaude (lurking)
* CP:
   * Controlling a BLE device with pressure on an inflated balloon (the one with a Feather Sense inside)
   * Downgrading to 5.3.1 because my old BLE code fail on 6.0.0-alpha3
* Non CP:
   * Investigating the use of Pi-KVM to remotely control my Colour Maximite 2


@Dave P (lurking)


@fede2 (lurking)


1:09:16 @foamyguy
Last week:
* Made an quick demo video for the MiniTFT Featherwing timer
* Started recording “Learn to Program with Circuit Playground” videos
* Created a helper class for the TFT Featherwing 2.4” 
* Played with BB Q10 Breakout in anticipation for the Keyboard Featherwing
This week:
* Continue recording learn to program videos. Hope to release them once the ones covering basic variable types are complete and then continue adding more.
* Creating an InputText widget for displayio for projects that have keyboards
* Continue working on Multi-Tasking example scripts and guide
* Investigate PyPortal adafruit_sdcard issue causing device lockup


@Gadgetoid (lurking)


1:12:16 @hierophect
* Last week
   * Hacked at the DisplayIO ESP32 crash
   * Got GDB up and running on the ESP32 to assist
   * Took a break and implemented the F1 flash system (which will also be shared with the F0, L0 and L4 if anyone ever wants to add those too). 
   * F1 now compiles, though it has other bugs holding it up
   * Reviewed some incoming PRs and issues for the ESP32-S2
* This week
   * Keep working on ESP32 stack crash
   * Fill out the rest of ESP32 microcontroller features
   * Other miscellaneous bug support
* Fun stuff
   * I got my first motor driver featherwing back from fab
   * Fingers crossed that it actually works
   * Made a ton of fermented hot sauce and jalapeno pickles over Labor Day weekend.


@Jayguitar (lurking)


45:12 @jepler
* CANBUS support for CircuitPython.
* Close to being able to receive a packet on the CircuitPython board.
* Continue working on CANBUS support.
* Adding support for SAME51 as a new subfamily.


46:56 @jerryn
* Nothing significant regarding CP -- seems like I’ve been trying lots of things, but nothing to report. Just trying to keep up...
* Received a pair of LilyGo - TBeam (LoRa + GPS + BLE + WiFi) boards 
   * Experimenting with meshtastic -  https://www.meshtastic.org
   * Coding now via platformio - arduino.


48:02 @kattni
* Since the last meeting:
   * Updated two stepper motor driver guides with CircuitPython pages, including how to install the libs, and examples of how to control stepper motors using the driver boards controlled by a microcontroller.
   * Wrote the guide for the 128x64 FeatherWing OLED
   * Wrote a new guide for the new SPI FRAM chip
   * Blogged all the new/updated guides
   * Made some new fritzing objects
   * Did a few miscellaneous items
   * Created a skeleton of a guide for Limor to finish for a new product
   * Recorded the Python on Hardware newsletter video
   * Prepared for CircuitPython day - this was involved.
   * Hosted a show and tell in Español
* The rest of this week:
   * Live streaming a CircuitPython Conversation with Kattni and Jeff following this meeting.
   * The rest of today is pretty much booked up with CircuitPython Day events.
   * There’s a couple of Fritzing objects on my list
   * Various misc on my list, but I expect to receive a priority list in our meeting this evening.
* Next week and beyond:
   * I’m off for two weeks starting Monday. I’ll return on the 28th. Plan to spend some quality time with my brand new Nintendo Switch, among other things.


51:57 @kmatch98
Last week:
* Added capability for immediate display.refresh()
* Added dirty rectangle tracking to Shape display object, some details left on the PR
* Created a PyPortal holder to fit it on top of my monitor and easy-to-reach Reset button 
This week:
* Investigate seeking through screen display elements to find which ones are at a given x,y screen location, for use with touch screen response. 
* Fix some documentation formatting bugs on Sparkline
Other fun stuff:
* Verified a custom-shaped 3D printed mould and deckle for paper making, including watermarks


54:16 @MakerMelissa
* Last Week:
   * Added STM32MP1 to Platform Detect
   * Got GPIO working on the STM32MP1, but we put it on hold for now since getting I2C, SPI, and UART required compiling a new device tree.
   * Worked on some more Shell Script to Python Script conversions
   * Wrote another Demo for John Park
   * Started Writing a Neopixel Matrix FrameBuffer library and have it partially working
* This Week:
   * Finish Neopixel Matrix FrameBuffer library
   * Write another Demo for John Park
   * Take a look at a redundant chip detection issue with the FT232H
   * Possibly work on an Air Quality project using the MatrixPortal library
   * Work on some more Shell to Python install script conversions


@Mr. Certainly [lurking]


55:37 @sommersoft (prob missing meeting):
* Adabot:
   * Put in a PR to add a validator for Pylinting each library (examples excluded). This is to help detect issues that arise from new Pylint versions that add/remove checkers.
* Cookiecutter:
   * Have a PR in to give more options on target bundle and desired CI service. Would love some more feedback/suggestions before finalizing it.




56:24 @tannewt
* Four day weekend! Hiking and house projects. Got electioncal.us’s code tweeting out dates.
* Native_wifi branch tested and ready for re-review.
* Lots of streaming for CircuitPython Day. Deep dive will be about SPI with PSRAM.
* Need to add test for legacy MODE parameter to `socket.connect` for backwards compatibility of `adafruit_requests`.
## 1:14:32 In The Weeds




## 1:14:53 Wrap-Up
