# CircuitPython Weekly for May 11th, 2020


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


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.
## 5:56 Community News
Scott Shawcroft has streamed some of the latest work on CircuitPython intended for the next release. A demonstration of lower power usage by shutting down the microcontroller during sleep - YouTube. Scott livestreams with users and gets the CircuitPython REPL working on the ESP32-S2 microcontroller - You Tube.
Microsoft has started a Discord server specifically aimed at Python. The server follows the Microsoft Open Source Code of Conduct. microsoft-python can be joined via https://aka.ms/python-discord.
CircuitPython received a native library to drive RGB matrices last month using the SAMD51 and nRF52840 microcontrollers. This week, Limor "Ladyada" Fried tests out support in the library for the ST Microelectronics STM32F405 chip available in CircuitPython 5.3.0 - Twitter.


cyberDUCK is billed as a self-contained computer that can edit and run Python files, with USB keyboard input and a display. And it’s shaped like a disaster-recovery duck - Twitter, Hackaday.io, and YouTube.


CircuitPython_NeoSprite: a library for updating NeoPixel arrays from sprite files such as .BMP - GitHub.


The vectorio library builds on m4 express Feather and draws concrete shapes are composed into a VectorShape which is put into a displayio Group for display - GitHub PR.


All this and more in the Python on Hardware newsletter. Please contribute any related projects! Find this week’s draft here: https://github.com/adafruit/circuitpython-weekly-newsletter/blob/gh-pages/_drafts/2020-05-12-draft.md


## 8:55 State of CircuitPython, Libraries and Blinka


### 9:43 Overall


* 28 pull requests merged
  * 12 authors - caternuson, makermelissa, mew-cx, brentru, dhalbert, dearmash, jepler, spkuehl, kattni, siddacious, colindgrant, dherrada
  * 9 reviewers - makermelissa, FoamyGuy, brentru, dhalbert, kattni, siddacious, dherrada, ladyada, tannewt
* 32 closed issues by 9 people, 20 opened by 17 people


Overall: We are looking to do a new release today (or soon) with lower power.  The current master has been very stable, so we’re probably going to push that faster than we might normally.  Look forward to that, it’ll have a few new features, a few new boards, and typically as expected.  In terms of libraries, Kattni completed a sweep of all github issues on all libraries, completing a bunch and closing a bunch.  It was good to be able to go through and clean house.  She’ll go through again soon and make sure that things get followed up on.  Overall, the project is going great with new contributors, which is always excellent.  We always want to see new people.


### 12:20 Core


* 5 pull requests merged
  * 4 authors - kattni, jepler, mew-cx, spkuehl
  * 3 reviewers - dhalbert, ladyada, tannewt
* 17 open pull requests
  * https://github.com/adafruit/circuitpython/pull/2366 (Open 153 days)
  * https://github.com/adafruit/circuitpython/pull/2675 (Open 69 days)
  * https://github.com/adafruit/circuitpython/pull/2754 (Open 32 days)
  * https://github.com/adafruit/circuitpython/pull/2780 (Open 23 days)
  * https://github.com/adafruit/circuitpython/pull/2810 (Open 15 days)
  * https://github.com/adafruit/circuitpython/pull/2827 (Open 12 days)
  * https://github.com/adafruit/circuitpython/pull/2837 (Open 10 days)
  * https://github.com/adafruit/circuitpython/pull/2833 (Open 10 days)
  * https://github.com/adafruit/circuitpython/pull/2857 (Open 5 days)
  * https://github.com/adafruit/circuitpython/pull/2863 (Open 4 days)
  * https://github.com/adafruit/circuitpython/pull/2869 (Open 3 days)
  * https://github.com/adafruit/circuitpython/pull/2868 (Open 3 days)
  * https://github.com/adafruit/circuitpython/pull/2866 (Open 3 days)
  * https://github.com/adafruit/circuitpython/pull/2871 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/2873 (Open 1 days)
  * https://github.com/adafruit/circuitpython/pull/2878 (Open 0 days)
  * https://github.com/adafruit/circuitpython/pull/2877 (Open 0 days)
* 1 closed issues by 1 people, 8 opened by 7 people
* 294 open issues
  * https://github.com/adafruit/circuitpython/issues
* 6 active milestones
  * 5.x.0 - Features: 7 open issues
  * 5.x.x - Bug Fixes: 27 open issues
  * 6.0.0: 26 open issues
  * Libraries: 11 open issues
  * Long term: 201 open issues
  * Support: 4 open issues
  * 18 issues not assigned a milestone


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


### 13:40 Libraries
* 20 pull requests merged
  * 9 authors - caternuson, makermelissa, brentru, dhalbert, dearmash, kattni, siddacious, colindgrant, dherrada
  * 9 reviewers - makermelissa, FoamyGuy, brentru, dhalbert, kattni, siddacious, dherrada, ladyada, tannewt
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_GPS/pull/42 (Days open: 39)
    * https://github.com/adafruit/Adafruit_CircuitPython_AS726x/pull/14 (Days open: 15)
    * https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/97 (Days open: 7)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE_Cycling_Speed_and_Cadence/pull/4 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE_iBBQ/pull/2 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE_Heart_Rate/pull/8 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE_Heart_Rate/pull/9 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE_MIDI/pull/3 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_PyPortal/pull/81 (Days open: 2)
    * https://github.com/adafruit/Adafruit_CircuitPython_FONA/pull/2 (Days open: 2)
    * https://github.com/adafruit/Adafruit_CircuitPython_TSL2591/pull/17 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_LSM6DS/pull/16 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BitbangIO/pull/7 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/98 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_FONA/pull/3 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MiniMQTT/pull/32 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Requests/pull/27 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_AdafruitIO/pull/35 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_GPS/pull/45 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_INA219/pull/19 (Days open: 1)
* 26 closed issues by 8 people, 11 opened by 9 people
* https://circuitpython.org/contributing
  * 146 open issues
  * 26 open pull requests (Oldest: 490, Newest: 1)
Library updates in the last seven days:
**Updated Libraries**
 * [Adafruit_CircuitPython_MSA301](https://github.com/adafruit/Adafruit_CircuitPython_MSA301)
 * [Adafruit_CircuitPython_PyPortal](https://github.com/adafruit/Adafruit_CircuitPython_PyPortal)
 * [Adafruit_CircuitPython_TSL2591](https://github.com/adafruit/Adafruit_CircuitPython_TSL2591)
 * [Adafruit_CircuitPython_AS726x](https://github.com/adafruit/Adafruit_CircuitPython_AS726x)
 * [Adafruit_CircuitPython_BLE_Cycling_Speed_and_Cadence](https://github.com/adafruit/Adafruit_CircuitPython_BLE_Cycling_Speed_and_Cadence)
 * [Adafruit_CircuitPython_BLE_iBBQ](https://github.com/adafruit/Adafruit_CircuitPython_BLE_iBBQ)
 * [Adafruit_CircuitPython_BLE_Heart_Rate](https://github.com/adafruit/Adafruit_CircuitPython_BLE_Heart_Rate)
 * [Adafruit_CircuitPython_BLE_MIDI](https://github.com/adafruit/Adafruit_CircuitPython_BLE_MIDI)
 * [Adafruit_CircuitPython_LSM6DS](https://github.com/adafruit/Adafruit_CircuitPython_LSM6DS)
 * [Adafruit_CircuitPython_BitbangIO](https://github.com/adafruit/Adafruit_CircuitPython_BitbangIO)
 * [Adafruit_CircuitPython_ESP32SPI](https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI)
 * [Adafruit_CircuitPython_FONA](https://github.com/adafruit/Adafruit_CircuitPython_FONA)
 * [Adafruit_CircuitPython_MiniMQTT](https://github.com/adafruit/Adafruit_CircuitPython_MiniMQTT)
 * [Adafruit_CircuitPython_Requests](https://github.com/adafruit/Adafruit_CircuitPython_Requests)
 * [Adafruit_CircuitPython_GPS](https://github.com/adafruit/Adafruit_CircuitPython_GPS)
 * [Adafruit_Blinka](https://github.com/adafruit/Adafruit_Blinka)


### 16:00 Blinka


* 3 pull requests merged
  * 1 authors - makermelissa
  * 2 reviewers - makermelissa, ladyada
* 0 open pull requests
* 5 closed issues by 3 people, 1 opened by 1 people
* 23 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* PyPI Downloads in the last week: 2651
Number of supported boards: 46


## 16:56 Hug reports
18:10 @kattni
* @krayola for all his work on pixelbuf, NeoPixel and DotStar
* @dunkman00 for picking up where Roy left off and getting PRs into NeoPixel and DotStar.
* @foamyguy for testing PRs, and picking up a number of issues from my sweep
* @cater for following up on a number of issues from my sweep
* @stargirl for looking into new possibilities.


@kingermorth (lurking)
@kjw (lurking)


18:51 @makermelissa
* All the other Discord Moderators for being on top of any issues
* Group Hug


@Mark (Gamblor) (lurking)




@Mr. Certainly (lurking)


19:12 @sommersoft
* @danh for some conversations and pointers related to debugging the bootloader & OS issue I'm having. And, @jerryn for being willing to help test (as always!) replication of what I’m seeing.
* Group Hug!


19:46 @stargirl (text only)
* @tannewt for his deep dive streams.
* @kattni for answering a ton of my questions.


@Szymon (lurking)


20:21 @tannewt
* @igrr for all of the help getting esp32-s2 to blinky.
* @kattni for the core CircuitPython C fix!
* @WarriorOfWire for the vectorio PR.
* @stargirl for making awesome progress on her USB Host code.
* :heart: Discord mods.


20:55 @AndrewTribble
* Group hug to all


@anecdata (lurking)


@anneb (lurking)


@cater (lurking)


21:11 @CGrover (text only)
* Group hug for the team and community.


@charlesburnaford (lurking)

21:23 @danh
* @antonio-openroad for working with me on debugging Bluefruit Playground issues.
* @stargirl for Hostess FeatherWing.
* Group hug for everyone giving us more work to do by finding bugs and suggesting features :) .


22:27 @Dave Briccetti (lurking)
        Group hug and good to see you all again

@davep (lurking)


@Duewester (lurking)


22:42 @foamyguy
* @rhooper and @dunkmann00 (George Waters) for their work on NeoPixel and Dotstars using pixelbuf 
* @kmatch98 for sharing their work on USB Host / UART and super cool CyberDuck project
* @stargirl for work on USB Hostess Feather wing
* @kattni for encouraging me to work on a few issue / PR coding quests.


24:00 @hierophect
* @askpatrick, @makermelissa and @tannewt for some help with font stuff
* Thanks @jerryn for uncovering some STM32 bugs


@jasonp (lurking)


24:54 @jepler
* Group hug -- I’m too scatterbrained as I write this to remember who I need to thank this week


25:24 @jerryn 
* @community_moderators for being thoughtful and deliberate when taking actions.
* @dglaude -- thanks for example (several months ago) using CLUE on the “bit-buggy” -- oh boy saved a lot of headscratching.
* Group hug


## 25:40 Status Updates
26:00 @jepler
* Last week: SD card implementation in core
* This week: Returning to JEplayer (mp3player) project with help from @cater to test & give feedback


27:35 @jerryn
* reported issues with stm32f405 in 5.3.0 build
   * Known issues in master -- will not boot, but 5.3.0. boots, but Crashes to hardfault when importing libraries using I2C or SPI. 
   * Works ok at 5.2.0
   * Should we talk about this in weeds?
* Played with CLUE mounted on a microbit-bit-buggy
   * Started with @dglaude example - uses BLE to control
* Spent a lot of time playing with new HQ camera for RPi -- fun


29:15 @kattni
* Last week:
   * Finished initial GitHub library issue sweep.
   * Completed and/or closed a number of issues, requested follow up on more.
   * Newsletter video.
   * Hosted another Show and Tell for JP.
   * Fixed Adabox 11 guide to deprecate the file zip for 4.x, and include files for CircuitPython 5.x
   * Started work on LED Animations PR from mid-December
      * Got it passing.
      * Still needs cleanup and a couple of features added
      * Worked with @krayola to get some rainbow versions of current features functioning properly.
   * Submitted my first CircuitPython core C contribution. PR’d a fix to pixelbuf.
* This week:
   * Continue working on LED Animations PR
      * New features added.
      * Need examples for more complicated features.
      * Need to document library with examples.
   * Newsletter video.
   * LED Animation guide


@kingermorth (lurking)


@kjw (lurking)


32:34 @makermelissa
* Last Week
   * Finished up adding I2C to the bitbangio library
   * Added missing pack_into function to the Blinka bleio library
   * Added platform detection support for the GreatFET One
   * Started adding the GreatFET One to Blinka
* This Week
   * Finish Adding GreatFET One to Blinka
   * Add any missing boards to circuitpython.org
   * Whatever else comes up


@Mark (Gamblor) (lurking)


@MrCertainly (lurking)


33:20 @sommersoft
* Last Week:
   * RosiePi:
      * Continued debugging OS lockups when putting a board into bootloader on Ubuntu 20.04 & RPi 3B+. Still no definitive answer. Slowly establishing some empirical test processes, I think. Bottom line, I haven't determined if the root cause is the OS or the bootloader.
         * Tested some udev rules; doesn't fix, but also doesn't rule out udev being the source.
         * Tried Microsoft's master branch of uf2-samdx1; doesn't fix.
         * Tried increasing the reset (SINGLE_RESET) wait interval in uf2-samdx1; initially showed some promise but started failing.
         * Tried increasing the `cdc_enabled` wait interval in uf2-samdx1. No change/fix.
   * Adabot:
      * Submitted draft changes to the example filename checks, to ignore underscores in example where it makes filenames more legible.
* This Week:
   * RosiePi (unchanged from last week):
      * Keep looking into OS/bootloader lockups.
      * Start working on webpage display of full test results, to link into GitHub checks page.
   * Starting to hit “total frustration” mode with the above, so willingly open to distractions. :D


34:58 @stargirl (text only)
* Mostly working on my USB host feathering (“Hostess”)
* Sent off Hostess boards to OSH Park.
* Made good progress on USB host drivers for MIDI devices and HID keyboards.
* Figured out a basic SPI command set.


@Szymon (lurking)


35:25 @tannewt
* Going to release 5.4.0-beta.0 soon. I want to add teensy 4.1 support first.
* Got ESP32-S2 to blinky!
* Stream was here: https://www.youtube.com/watch?v=LfUBOF1AWzs
* Goal this week is to get CI going and a PR out for ESP32-S2.
* This Saturday is PyCon mentored sprints.




38:23 @AndrewTribble
* Last 2 weeks
   * Started work on the PyPortal weather radio project before getting pulled away for an intense work project.
* This week
   * Hopefully will get to hook up the PyPortal Weather Radio project to the NWS api this week and get a proof of concept to consume data from the API.
* Fun stuff: 
   * Got my 3D printer fully configured for dual-filament single-nozzle printing, all that is left is to set the flags in the Marlin firmware to be able to use it!


@anecdata (lurking)


@anneb (lurking)


@cater (lurking)


39:10 @CGrover (text only)
* A Clue arrived and became a fun distraction from other projects. Impressed with all that’s packed onto that little board. More exploring is in store.
* Wrapped up a large-format LED clock for a friend’s workshop. A custom CircuitPython Clock_Builder library made coding simple (link to GitHub repo). Putting all the components into a large mint tin case was the challenge. (link to tweet)
* In the final carpentry phases for the heirloom clock enclosure. Working with wood and hand tools is very therapeutic. Also involves experimenting with a kalimba-like bridge for the clock’s piano wire gong assembly. Used the Clock_Builder library for the PyBadge + Crickit system control for two miniature servos and a small solenoid. (link to tweet)
* Reawakened my culinary skills and am having fun playing with kitchen tools and tech. Was a pretty good cook back when I was a single dad but thought I had forgotten most of that. Turns out that it’s like riding a bicycle and I’m better than before, at least that’s what I think. Probably should ask.


@charlesburnaford (lurking)

40:32 @danh
* Pretty much finished the BLE Adafruit Services library, and wrote demo programs that work with the Circuit Playground Bluefruit app. Debugged some issues with Antonio, the app author: we found and fixed some bugs in both the app and the CircuitPython code.
* Thinking about how the CircuitPython download-counts collector would work. Instead of writing a purpose-specific JSON file of data, I believe I will just collect the anonymized log entries in a CSV or SQLite file, which can be downloaded for further processing, doing any kind of queries you’d like.
* Tested the Kinsa BLE-capable fever thermometer, and found it has a simple BLE interface. Further reverse engineering is necessary, but it looks like it’s going to be straightforward.
* Next up:
   * Implement the download counts collector.
   * Start trying out `bleak` on host computers and use it to implement `_bleio` under Blinka.


@Dave Briccetti (lurking)


@davep (lurking)


@duewester (lurking)


43:30 @foamyguy
* Working on adding rotation flag for gestures on APDS9960 sensor (CLUE)
* Updating the TLC59711 light controller library to use existing SPI bauderate instead of hardcoded value
* Working on new function for color readings from TCS34725 sensor
* Testing new Dotstar library that uses pixelbuf 


46:00 @hierophect
* Last week
   * Had home stuff come up so productivity was a little low
   * Mostly reviews and work on the i.MX
* This week
   * Need to track down an LSE issue that seems to be bricking all F405 boards at startup (yikes!) 
   * Wrap up pin utilities on the i.MX
   * Start working on RGB Matrix


@jasonp (lurking)




@Theo R (lurking)
## 48:21 In The Weeds
@hierophect: I’m experiencing some issues with the LSE on the STM32F405 boards. Specifically, it doesn’t appear to be able to start. Most online references recommend replacing the hardware in this case, so I wanted to verify with others who have tried the STM32 whether the hardware has worked for them in the past and on other platforms like stm32duino. 
* Needs testing again.
* Possibly fixed!
57:20 Discussion of default stm32 stack allocation.

## 1:00:09 Wrap-Up
