# CircuitPython Weekly for 27 April 2020

Video is available here [on YouTube](https://youtu.be/Fyjpvj9hRrU) and [on diode.zone](https://diode.zone/videos/watch/1f0a5f2d-b959-44cd-946c-8c5a1aae2eb8).

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 using the following link: https://raw.githubusercontent.com/adafruit/adafruit-circuitpython-weekly-meeting/master/meeting.ical

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.

## 4:12 Community News
* MicroPython turns 7 in a couple days!
* 5.3.0-rc.0 is out!
* 5:13 Cyanobyte Python I2C Driver Creator to MicroPython
* 5:38 Harvard University Offering Free Online Courses Including Programming
* 6:07 A New CircuitPython Library for eInk Displays from PlasticLogic


https://github.com/adafruit/circuitpython-weekly-newsletter/blob/gh-pages/_drafts/2020-04-28-draft.md


## 7:38 State of CircuitPython, Libraries and Blinka
### 8:14 Overall
* 29 pull requests merged
  * 21 authors - mew-cx, anecdata, FoamyGuy, dunkmann00, xobs, siddacious, anlorn, hierophect, chfw, jimbobbennett, k0d, jerryneedell, makermelissa, jepler, dhalbert, hhk7734, tgs, theelectricmayhem, virgilvox, tannewt, caternuson
  * 12 reviewers - makermelissa, jepler, dhalbert, hathach, FoamyGuy, tannewt, brentru, siddacious, hierophect, caternuson, kattni, ladyada
* 21 closed issues by 11 people, 10 opened by 10 people


Overall: Blinka keeps expanding.  Kattni has been doing an awesome job polishing up the libraries and keeping them more uniform.  Sommersoft has collaborated with that as well.  Our library quality is increasing.  On the core side, 5.3.0 will be out shortly, with Heirophect and Jeff’s core work (STM32F7 and RGB Matrix stuff).  Low power stuff will land hopefully as 5.4, but is anticipated to destabilize things so expect betas and release candidates.
### 11:21 Core
* 9 pull requests merged
  * 7 authors - k0d, mew-cx, xobs, tannewt, hierophect, jepler, dhalbert
  * 4 reviewers - dhalbert, tannewt, hierophect, hathach
* 10 open pull requests
  * https://github.com/adafruit/circuitpython/pull/2366 (Open 139 days)
  * https://github.com/adafruit/circuitpython/pull/2675 (Open 55 days)
  * https://github.com/adafruit/circuitpython/pull/2685 (Open 51 days)
  * https://github.com/adafruit/circuitpython/pull/2754 (Open 18 days)
  * https://github.com/adafruit/circuitpython/pull/2780 (Open 9 days)
  * https://github.com/adafruit/circuitpython/pull/2799 (Open 5 days)
  * https://github.com/adafruit/circuitpython/pull/2808 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/2806 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/2810 (Open 1 days)
  * https://github.com/adafruit/circuitpython/pull/2811 (Open 0 days)
* 4 closed issues by 3 people, 4 opened by 4 people
* 281 open issues
  * https://github.com/adafruit/circuitpython/issues
* 6 active milestones
  * 5.x.0 - Features: 7 open issues
  * 5.x.x - Bug Fixes: 26 open issues
  * 6.0.0: 25 open issues
  * Libraries: 11 open issues
  * Long term: 199 open issues
  * Support: 4 open issues
  * 9 issues not assigned a milestone


* Core download stats available at https://circuitpython.org/stats
### 12:55 Libraries
* 17 pull requests merged
  * 13 authors - jerryneedell, anecdata, dhalbert, caternuson, FoamyGuy, dunkmann00, tgs, theelectricmayhem, siddacious, anlorn, virgilvox, chfw, jimbobbennett
  * 9 reviewers - makermelissa, jepler, FoamyGuy, tannewt, brentru, siddacious, caternuson, kattni, ladyada
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_Debouncer/pull/10 (Days open: 247)
    * https://github.com/adafruit/Adafruit_CircuitPython_LIS2MDL/pull/5 (Days open: 74)
    * https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/89 (Days open: 60)
    * https://github.com/adafruit/Adafruit_CircuitPython_RGB_Display/pull/75 (Days open: 7)
    * https://github.com/adafruit/Adafruit_CircuitPython_BNO055/pull/47 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_LSM6DS/pull/14 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_MiniMQTT/pull/29 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_MiniMQTT/pull/30 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE/pull/80 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_AM2320/pull/16 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_ADXL34x/pull/23 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_CCS811/pull/42 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Pypixelbuf/pull/19 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Pypixelbuf/pull/18 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PyPortal/pull/77 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PyPortal/pull/75 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PyPortal/pull/74 (Days open: 1)
* 8 closed issues by 6 people, 6 opened by 6 people
* https://circuitpython.org/contributing
  * 178 open issues
  * 22 open pull requests (Oldest: 476, Newest: 1)
Library updates in the last seven days:
**New Libraries**
 * [Adafruit_CircuitPython_FONA](https://github.com/adafruit/Adafruit_CircuitPython_FONA)
**Updated Libraries**
 * [Adafruit_CircuitPython_Debouncer](https://github.com/adafruit/Adafruit_CircuitPython_Debouncer)
 * [Adafruit_CircuitPython_RGB_Display](https://github.com/adafruit/Adafruit_CircuitPython_RGB_Display)
 * [Adafruit_CircuitPython_LSM6DS](https://github.com/adafruit/Adafruit_CircuitPython_LSM6DS)
 * [Adafruit_CircuitPython_BLE](https://github.com/adafruit/Adafruit_CircuitPython_BLE)
 * [Adafruit_CircuitPython_MiniMQTT](https://github.com/adafruit/Adafruit_CircuitPython_MiniMQTT)
 * [Adafruit_CircuitPython_AM2320](https://github.com/adafruit/Adafruit_CircuitPython_AM2320)
 * [Adafruit_CircuitPython_ESP32SPI](https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI)
 * [Adafruit_CircuitPython_LIS2MDL](https://github.com/adafruit/Adafruit_CircuitPython_LIS2MDL)
 * [Adafruit_CircuitPython_BNO055](https://github.com/adafruit/Adafruit_CircuitPython_BNO055)
 * [Adafruit_Blinka](https://github.com/adafruit/Adafruit_Blinka)


### 15:25 Blinka
* 3 pull requests merged
  * 2 authors - hhk7734, makermelissa
  * 2 reviewers - ladyada, makermelissa
* 0 open pull requests
* 9 closed issues by 3 people, 0 opened by 0 people
* 29 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* PyPI Downloads in the last week: 2110
Number of supported boards: 45
## 16:40 Hug reports

17:40 @tannewt
* Electronic_harry, and akir helping stargirl debug on discord.
* @igrr for the help with the linker crash.
* @MarkOlsson for the STM PRs and Hierophect for reviewing them.
* @xobs for the nRF52833 PRs.
* @Slawek for getting the heap analysis scripts going.
* @dunkmann00 for picking up the pixelbuf work.
19:33 @anecdata ( text only)
* Group Hug


@cater (lurking)


@charlesBurnaford (lurking)


19:40 @danh
* @tannewt for persevering on low power and for starting on ESP32-S2
* community for trying new things and filing bug reports :)


@dave p (lurking)


20:39 @DavidGlaude (lurking)


* @jepler for RGB LED
* @brentru for Quarantine Clock learn guide
* @KevinWalters for the CLUE Sensor Plotter learn guide


@Duewester (lurking)


21:00 @foamyguy
* @Siddacious for more help understanding low level bit/byte operations for testing a PR to the register library
* Digikey for their work keeping employees safe and continuing operations to make shipments
* @cater for adding UART support to AS726x
* Group hug to the amazing community


22:42 @geekguy (Text only)
* Adafruit 
   * For being the AWESOME Open Source Hardware Company it is. 
   * For backing development of Circuitpython, which makes it very difficult for me to go back to tinkering with Arduino stuff.
* @danh for his helping hands everywhere
* @foamyguy for being everywhere on the #help-with channels
* @Hierophect for work on the Circuitpython STMF7/H7 ports
* Group and Community hug for being the most AWESOME online place I have ever been


23:27 @hierophect
* @MarkOlsson for lots of great feature/testing PRs and double checking on the F7 port, including the F746 Discovery board. 
* @jepler for some other bug finds, such as the flash on the Espruino Pico
* @jepler and @sommersoft, @tannewt and @danh for their reviews on the documentation PR
* @tannewt for his work on the low power code, looking forward to it. 


24:40 @jasonp
* @brentru for pointing me to Jim Bennet’s AzureIoT PR
* @brentru and @sommersoft for the GitHub help (also @kattni since I reference her learn guide just about any time I need to check out a branch) 
* @Jim Bennet (Microsoft) for pointing me to the Azure IoT Central examples which fast-tracked my efforts to display simple data


25:35 @jepler
* Scott, Danh, Hierophect, Limor and others for PR reviews
* Forum user johncblacker for finding and reporting a bug I introduced
* V923z for continuing to be active in ulab, we’re getting huge benefits from it
* Everyone in the community -- You’re an inspiration, and I’m trying to take some of the things we do here to my other community, LinuxCNC.  There, I’m working up the courage to suggest a voice meeting of active community members, like this one.


26:56 @jerryn
* Group Hug


27:09 @kattni
* @sommersoft for a well needed chat and for generally being great 
* @jepler for taking notes today and always being there for a chat
* Everyone helping others on Discord - the current climate has caused an influx of new users and you have all continued to provide the positive, supportive community that we have put so much effort into curating. It’s brilliant to scan through the chats and see all the excellent discussions.
* @tgs on GitHub for persevering on a 247 day old PR, and getting it finished up and ready for merging
* Digi-key for unbelievably fast (free!) shipping to Canada, for the excellent partnership with Adafruit, and all the effort they’re putting into keeping their people and shipments safe 
* Adafruit for becoming the number one certified open source certified hardware company. (And to Dylan for all the work put into sending the certification applications)
* @Adafruit for continuing to embrace the focus shift from programming and electronics to PPE and pandemic support, for taking amazing care of Adafruit folks.


28:59 @KingerNorth (hug reports only)
* Group hug
* Hug for Anne B. who posted my video in the Python on Microcontrollers newsletter.
* To Phil and Lady Ada for all the work they’re doing in NYC and trying to help at that end


29:44 @MakerMelissa
* @tannewt and @jsharper for your thoughts on the Blinka I2C unusual configuration changes.


30:09 @markolsson (lurking)
* @tannewt for an interesting and fun video chat.
* @Hierophect for getting through my PRs
* Everyone on discord for keeping me company during this ‘hometime’


@MrCertainly (lurking)


30:30 @sommersoft
* @hierophect for pushing through on getting STM32 docs finished.
* @Fox95 for jumping into contributing to the Community Bundle. Getting a feel for the dev-workflow is no small feat, and I wanted to recognize the willingness to do so and bring in some more tools. Even if your submission moved into `ulab` development.
* Group Hug


31:22 @tg-techie
* Community hug for everyone joining the community
* @Danh and @foamyguy for answering multiple questions at all hours of the night
* @MakerMelissa and @tannewt for display work

## 31:59 Status Updates

32:37 @tannewt
* Fixed up STM32 low power and got a second look at it. Dan found SAMD21s are flaky. Will take a fresh look into it this week.
* Make headway on ESP32-S2 build setup. Streamed it on Friday: https://www.youtube.com/watch?v=_ZC6gNefnYw&list=PLjF7R1fz_OOXBHlu9msoXq2jQN4JpCk8A&index=2
* Will stream this week too. Focused on fixing linker errors which will likely bring me into FreeRTOS land.
* Will test PixelBuf stuff so we can flip the switch.
* Chatting with Helen tomorrow about Python and hardware. https://twitter.com/helenleigh/status/1254782379270365184


34:37 @TG-Techie
* I have two weeks of updates, will try to keep it quick
* My ongoing project is the CircuitPython wristwatch.  It’s stable enough to test bluetooth functionality, but for some reason the nRF chip is broken so more in-depth debugging is required.  Reason is unknown.
* A lot of work on graphical user interface library for circuitpython
* Next week:
   * Add some more frozen libraries for accelerometers
   * That’s about it

@anecdata (lurking)
@cater (lurking)
@CharlesBurnaford (lurking)
36:03 @danh
* Still working on Adafruit services for Bluefruit Playground app. About 75% done, but needed to add core changes to support PacketBuffer length calculations, so that’s pushed on my stack to finish before going back to the services work. Some libraries will need to be updated.
* Next, I’ll look at using `bleak` for `_bleio` on host computers, Linux first.
* Also looking at BLE-enabled body-weight scale and blood pressure monitor.


@dave p (lurking)


37:27 @DavidGlaude (lurking)
* Tested @brentru Quarantine Clock on PyPortal
* Replicated Quarantine Clock on Adalogger + oled Feather wing
* Non CP: Trying to reflash (AVR) my Crazy Clock from Geppetto Electronics to make a week clock.
* @duewester (lurking)




37:53 @foamyguy
* Still plugging away on the game guide. Hoping to get it wrapped in in another week or two
* Testing new UART functionality within AS7262 library
* Testing register library PR with MAX31856 thermocouple device. First time learning about thermocouples
* Porting some neopixel animation code to work simultaneously with multiple animations
* Small cleanup fix and testing for PyPortal library


@geekguy (text only)


40:06 @hierophect
* Last week:
   * Documentation PR, which took a cluster of build flags (MINIMAL, ALWAYS, SMALL etc) down to just one, FULL BUILD, which should be turned off if you want your code restricted to 192KB. 
   * Also categorized modules by common-hal implementation requirements and created a recommended “todo” list to include in your port config. 
   * Added the STM32 boards to the support matrix.
   * Did a lot of PR reviews - for the F746 Nucleo and Discovery, various other F7 double-checks from Mark Olsson, the low power code from Tannewt, etc. 
* This week:
   * A couple of obvious board implementations, the OpenMV board, and the Toasty, since they’re (so far) just straightforward pin defines. 
   * F767 implementation for the startup code
   * Diving into the i.MX libraries and toolchain stuff so I can start hacking at the issues list for the platform 
   * Staying nimble on bugfixes and reviews as we get all this code in
* Personal projects
   * I’ve been working with a friend on our own STM32 dev board for Circuitpython, so I spent time on Friday working on that
   * I’ve also been exploring a system for learning languages on Circuitpython e-paper. I use Anki (a flashcard system) a lot for language study but I don’t like using it late at night, and it also can’t generate variations of a sentence you’re struggling with, so I’m making my own json-based version. 




44:08 @jasonp
* Experimenting with using PyPortal as a controller for QLab audio/video control software  (https://qlab.app/)
* Initial testing with Feather M4E + AirLift and Microsoft Azure
* Maybe AWS this week?
* Azure/AWS development is groundwork for an edge analytics solution that will soon include an Evo SAMD/FPGA board
* Will likely revisit the Troll Controller project this week.  
   * The official grand-opening of the exhibit has been delayed indefinitely due to COVID-19.
   * There are undocumened FIXMEs that are starting to fade from memory and should really be addressed.  :)


46:34 @jepler
* RGBMatrix released (yay!)
* CircuitPython 5.3.0-rc.0 released
* Got side tracked on lots of little things
* Started on RGBMatrix for STM, learning a lot
* This week: 5.3.0 final.  Continuing RGBMatrix for STM.
* Fun stuff: Bread baking!


47:42 @jerryn
* Upgraded computer to Ubuntu 20.04 -- and a new SSD hard drive :-( -- not by choice.
   * All went well -- able to build CP - no issues
* Not much other CP activity -- updating some existing projects.
   * Playing with zephyr on nrf52840 and stm32f405
* Rainy week ahead so should have more time for toys.
* Woodshed is coming along...


49:18 @kattni
* Last week:
   * Continued through CircuitPython library GitHub issues.
   * Started updating the CircuitPython Essentials AudioOut code to work with audiocore/audiopwmio - currently not working properly. I missed something obvious.
   * Updated the Circuit Playground library to have two new functions - one returns which board is connected, and the other allows you to specify which board you’re looking for and use that in your code.
* This week:
   * Finish up CircuitPython Essentials AudioOut code update
   * Test the Circuit Playground Express CircuitPython build with the board type check updates
   * Finish the Circuit Playground library update once build is tested
   * Continue through GitHub issues
   * Misc.
* Other:
   * Working on porting my tabletop lightbox photo studio from Raspberry Pi/Python to Feather nRF/CircuitPython - opted to go with a miniTFT FeatherWing for the physical controller and received that this weekend. Looking forward to getting started on that port.


@KingerNorth (hug reports only)


52:47 @MakerMelissa
* Last Week:
   * Moved PlatformDetect and Blinka over to Github actions which included adding documentation and formatting.
   * Blinka was not being linted prior to this and I needed to address over 800 issues by PyLint.
   * Worked on improving some Raspberry Pi installer scripts
   * Started adding the Rock Pi S to Blinka
   * Wrote a Generic SysFS Pin class so that should make getting even the most difficult to support boards easy to add to Blinka
* This Week:
   * Finish up adding Rock Pi S to Blinka
   * Start working on improving I2C in Blinka with unusual pin configurations using an external library
   * Add I2C to the external CircuitPython bitbangio library (not the built-in module)
   * Integrate the external bitbangio library into the bitbangio module of Blinka so it’s easier for users to make use of it.


54:10 @markolsson (lurking)
* Last Week:
   * STM32F7 Disco/Nucleo port. Working through enabling modules
   * VCP (stm32 onboard debug uart support) Nearly finished
* Next Week:
   * swdio issue #2781
   * STM32F7 LTDC (tft controller)
* Other:
   * Order to arrive tomorrow, including some dev boards like the esp32s2 saola so I can help @tannewt with testing/dev.
   * Have been looking at various data sources for auto generating MCU/Board configs, especially for STM32. 


@MrCertainly (lurking)


55:15 @sommersoft
* Last Week:
   * RosiePi:
      * Just fighting USB/mount issues when uploading target firmware. Seems to smash the firmware, and causes failures when reset.
      * Started tightening up exceptions and ensuring physaCI is updated when they happen.
   * core/FrequencyIn:
      * Grand Central came in on Friday. Tried to duplicate the issue, but couldn't. Will give a deeper look. Maybe it's when other modules are in use (displayio, etc)?
* This Week:
   * Deeper-dive on FrequencyIn
   * adabot work I didn't get to last week.

## 57:46 In The Weeds
58:15 @foamyguy -  Pip install support for non-Blinka used/related libraries.  Does it make sense to install libraries via pip when they aren’t made for use with SoC / Blinka devices? The one that came up over the weekend was adafruit_pyportal, it had a small issue with the setup.py file causing pip install to fail.
* Update PyPortal to remove from PyPI.
* Update cookiecutter to specify if not going on PyPI?


## 1:02:07 Wrap-Up
