# CircuitPython Weekly July 1st, 2019
Welcome to the meeting notes! Feel free to add your notes for Hug Reports and Status Updates early. We do it as a round robin sorted by username. If you can’t make the meeting, then add them anyway with a “(missing meeting)” after your username and we’ll read them off for you. 


Add any discussion topics or general questions you have to the “In the weeds” section. Thanks! We hope to see you in the meeting.


Video of the meeting is available [on YouTube](https://youtu.be/UB6aXzl54qo) and [on diode.zone](https://diode.zone/videos/watch/4b30b52f-f0e1-4a70-83f5-0f9af8ee6d98)


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



The weekly happens normally at 2pm ET/11am PT on Mondays. Check the #circuitpython channel for notices of change in time and links to past episodes.


CircuitPython development is sponsored by Adafruit. Please support them by purchasing hardware from adafruit.com.


Reminders: Podcast available on most services. Let us know if we’re missing some.
## 3:20 Community News
Microsoft Garage Survey – Project Pacifica future features for physical computing projects:
https://forms.office.com/Pages/ResponsePage.aspx?id=v4j5cvGGr0GRqy180BHbRx50AHoXr3BImxtzTGKK4edUQVBONkY5OENWMzYwT1QzVElDRVc3M0ozVi4u 
6,000 Thanks! Python on Hardware is happening!
We started the Python on microcontrollers newsletter in November of 2016, since then we've published 129 newsletters. Check out all the archives here: https://www.adafruitdaily.com/category/circuitpython/ 
Kattni Keynote at PyOhio 2019
The FREE Annual Python Conference in Ohio. PyOhio 2019 is July 27-28, 2019 at The Ohio Union in Columbus, OH. AND! The Saturday keynote speaker: Kattni Rembor!
https://www.pyohio.org/2019/speakers/233 
PyDev of the Week: Scott Shawcroft on Mouse Vs Python
Mouse Vs Python interviewed Scott Shawcroft as the PyDev of the Week!
https://www.blog.pythonlibrary.org/2019/07/01/pydev-of-the-week-scott-shawcroft/ 
2019 Opensource.com summer reading list – FEATURING Getting Started with Adafruit Circuit Playground Express!
https://www.adafruit.com/product/3944
https://opensource.com/article/19/6/summer-reading-list 
293: Skateboard Tricks – Embedded.fm podcast:
https://embedded.fm/episodes/293 
8/8/2019 is CircuitPython day!
Getting started programming microcontrollers with CircuitPython by NYC Resistor - August 3, 2019 & CircuitPython Day with the India Linux Users Group Delhi (ILUGD) at the Delhi Technical University for Women - August 4, 2019. If you need to get in touch with us for planning your event and more, email: circuitpythonday@adafruit.com 

Naomi Ceder, Chair of Python Software Foundation:
https://youtu.be/6Vyzwa4w6mI 
Nina Zakharenko Interview!
https://youtu.be/ae-8H3HE6QM 
500 Thanks, CircuitPython on Reddit:
https://www.reddit.com/r/circuitpython/ 
## 8:03 State of CircuitPython + Libraries
### 8:30 Overall


* 26 pull requests merged
  * 11 authors - dhalbert, tannewt, brettcannon, caternuson, brentru, kattni, siddacious, dastels, ladyada, jerryneedell, AlexHagerman
  * 9 reviewers - dhalbert, tannewt, brentru, caternuson, kattni, sommersoft, siddacious, ladyada, jerryneedell
* 12 closed issues by 6 people, 10 opened by 9 people


Overall: We got another stable release out the door, probably the last 4.0.x release, and a 4.1.x beta. We’re looking for a 4.1.x stable soon. We’ll see a 5.0 beta soon. All things are good, keep on rocking!


### 9:54 Core


* 7 pull requests merged
  * 3 authors - tannewt, AlexHagerman, dhalbert
  * 4 reviewers - tannewt, dhalbert, siddacious, sommersoft
* 7 open pull requests
  * https://github.com/adafruit/circuitpython/pull/1979
  * https://github.com/adafruit/circuitpython/pull/1978
  * https://github.com/adafruit/circuitpython/pull/1932
  * https://github.com/adafruit/circuitpython/pull/1925
  * https://github.com/adafruit/circuitpython/pull/1858
  * https://github.com/adafruit/circuitpython/pull/1363
  * https://github.com/adafruit/circuitpython/pull/1274
* 6 closed issues by 2 people, 3 opened by 3 people
* 179 open issues
  * https://github.com/adafruit/circuitpython/issues
* 6 active milestones
  * 4.1.0: 0 open issues
  * 4.x - Features: 42 open issues
  * 4.x.x - Bug fixes: 2 open issues
  * 5.x: 2 open issues
  * Libraries: 9 open issues
  * Long term: 124 open issues
  * 0 issues not assigned a milestone


Download stats by board:


| Board                                         | 4.0.2  | 4.1.0-beta.1  |
| ----------------------------------------------|--------|---------------|
| arduino_mkr1300                               |   0    |       0       |
| arduino_mkrzero                               |   0    |       0       |
| arduino_zero                                  |   0    |       0       |
| bast_pro_mini_m0                              |   0    |       0       |
| capablerobot_usbhub                           |   0    |       0       |
| catwan_usbstick                               |   0    |       0       |
| circuitplayground_express                     |   82   |       2       |
| circuitplayground_express_4h                  |   1    |       0       |
| circuitplayground_express_crickit             |   3    |       0       |
| circuitplayground_express_digikey_pycon2019   |   2    |       0       |
| electronut_labs_blip                          |   2    |       2       |
| electronut_labs_papyr                         |   1    |       0       |
| escornabot_makech                             |   0    |       0       |
| feather_m0_adalogger                          |   1    |       0       |
| feather_m0_basic                              |   5    |       0       |
| feather_m0_express                            |   18   |       3       |
| feather_m0_express_crickit                    |   2    |       0       |
| feather_m0_rfm69                              |   0    |       0       |
| feather_m0_rfm9x                              |   1    |       0       |
| feather_m4_express                            |   20   |       5       |
| feather_nrf52840_express                      |   9    |       1       |
| feather_radiofruit_zigbee                     |   0    |       0       |
| gemma_m0                                      |   10   |       0       |
| gemma_m0_pycon2018                            |   0    |       0       |
| grandcentral_m4_express                       |   5    |       2       |
| hallowing_m0_express                          |   5    |       1       |
| itsybitsy_m0_express                          |   4    |       0       |
| itsybitsy_m4_express                          |   12   |       3       |
| kicksat-sprite                                |   0    |       0       |
| makerdiary_nrf52840_mdk                       |   4    |       1       |
| makerdiary_nrf52840_mdk_usb_dongle            |   1    |       0       |
| meowmeow                                      |   0    |       0       |
| metro_m0_express                              |   14   |       1       |
| metro_m4_airlift_lite                         |   2    |       0       |
| metro_m4_express                              |   12   |       2       |
| mini_sam_m4                                   |   0    |       0       |
| particle_argon                                |   0    |       0       |
| particle_boron                                |   0    |       0       |
| particle_xenon                                |   0    |       0       |
| pca10056                                      |   4    |       1       |
| pca10059                                      |   3    |       1       |
| pewpew10                                      |   0    |       0       |
| pewpew13                                      |   0    |       0       |
| pirkey_m0                                     |   0    |       0       |
| pybadge                                       |   13   |       3       |
| pybadge_airlift                               |   -    |       0       |
| pygamer                                       |   60   |       6       |
| pygamer_advance                               |   -    |       0       |
| pyportal                                      |   42   |      10       |
| robohatmm1                                    |   0    |       0       |
| sam32                                         |   1    |       0       |
| sparkfun_lumidrive                            |   0    |       0       |
| sparkfun_nrf52840_mini                        |   1    |       1       |
| sparkfun_redboard_turbo                       |   0    |       0       |
| sparkfun_samd21_dev                           |   0    |       0       |
| sparkfun_samd21_mini                          |   0    |       0       |
| trellis_m4_express                            |   5    |       0       |
| trinket_m0                                    |   36   |       2       |
| uchip                                         |   0    |       0       |
| ugame10                                       |   0    |       1       |
| ----------------------------------------------|--------|---------------|
|                                         Total |  381   |      48       |
| ----------------------------------------------|--------|---------------|


Download stats by language:


| Board            | 4.0.2  | 4.1.0-beta.1  |
| -----------------|--------|---------------|
| ID               |   0    |       0       |
| de_DE            |   3    |       0       |
| en_US            |  358   |      45       |
| en_x_pirate      |   2    |       1       |
| es               |   3    |       0       |
| fil              |   0    |       0       |
| fr               |   11   |       0       |
| it_IT            |   1    |       2       |
| pl               |   0    |       0       |
| pt_BR            |   2    |       0       |
| zh_Latn_pinyin   |   1    |       0       |
| -----------------|--------|---------------|
|            Total |  381   |      48       |
| -----------------|--------|---------------|




### 11:39 Libraries


* 19 pull requests merged
  * 9 authors - tannewt, brettcannon, caternuson, brentru, kattni, siddacious, dastels, ladyada, jerryneedell
  * 7 reviewers - ladyada, siddacious, brentru, jerryneedell, tannewt, caternuson, kattni
* 31 open pull requests
  * https://github.com/adafruit/Adafruit_CircuitPython_SK9822/pull/2
  * https://github.com/adafruit/Adafruit_CircuitPython_WS2801/pull/4
  * https://github.com/adafruit/Adafruit_CircuitPython_GFX/pull/6
  * https://github.com/adafruit/Adafruit_CircuitPython_Debouncer/pull/8
  * https://github.com/adafruit/Adafruit_CircuitPython_DS18X20/pull/10
  * https://github.com/adafruit/Adafruit_CircuitPython_BitbangIO/pull/1
  * https://github.com/adafruit/Adafruit_CircuitPython_TLC59711/pull/5
  * https://github.com/adafruit/Adafruit_CircuitPython_NRF24L01/pull/1
  * https://github.com/adafruit/Adafruit_CircuitPython_MAX31865/pull/9
  * https://github.com/adafruit/Adafruit_CircuitPython_Fingerprint/pull/11
  * https://github.com/adafruit/Adafruit_CircuitPython_framebuf/pull/14
  * https://github.com/adafruit/Adafruit_CircuitPython_Hue/pull/6
  * https://github.com/adafruit/Adafruit_CircuitPython_MIDI/pull/13
  * https://github.com/adafruit/Adafruit_CircuitPython_AdafruitIO/pull/21
  * https://github.com/adafruit/Adafruit_CircuitPython_AdafruitIO/pull/20
  * https://github.com/adafruit/Adafruit_CircuitPython_SimpleIO/pull/41
  * https://github.com/adafruit/Adafruit_CircuitPython_LSM303/pull/11
  * https://github.com/adafruit/Adafruit_CircuitPython_DotStar/pull/36
  * https://github.com/adafruit/Adafruit_CircuitPython_DotStar/pull/35
  * https://github.com/adafruit/Adafruit_CircuitPython_Bitmap_Font/pull/6
  * https://github.com/adafruit/Adafruit_CircuitPython_BNO055/pull/30
  * https://github.com/adafruit/Adafruit_CircuitPython_PyPortal/pull/39
  * https://github.com/adafruit/Adafruit_CircuitPython_PyPortal/pull/34
  * https://github.com/adafruit/Adafruit_CircuitPython_PyPortal/pull/20
  * https://github.com/adafruit/Adafruit_CircuitPython_SSD1306/pull/26
  * https://github.com/adafruit/Adafruit_CircuitPython_Pypixelbuf/pull/1
  * https://github.com/adafruit/Adafruit_CircuitPython_CircuitPlayground/pull/57
  * https://github.com/adafruit/Adafruit_CircuitPython_CircuitPlayground/pull/51
  * https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/45
  * https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/29
  * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/pull/170
* 6 closed issues by 5 people, 7 opened by 6 people
* 113 open issues
  * https://circuitpython.org/libraries/contributing
Library updates in the last seven days:
**New Libraries**
 * [Adafruit_CircuitPython_VCNL4040](https://github.com/adafruit/Adafruit_CircuitPython_VCNL4040)
 * [Adafruit_CircuitPython_CursorControl](https://github.com/adafruit/Adafruit_CircuitPython_CursorControl)
 * [Adafruit_CircuitPython_turtle](https://github.com/adafruit/Adafruit_CircuitPython_turtle)
**Updated Libraries**
 * [Adafruit_CircuitPython_seesaw](https://github.com/adafruit/Adafruit_CircuitPython_seesaw)
 * [Adafruit_CircuitPython_miniQR](https://github.com/adafruit/Adafruit_CircuitPython_miniQR)
 * [Adafruit_CircuitPython_MAX31856](https://github.com/adafruit/Adafruit_CircuitPython_MAX31856)
 * [Adafruit_CircuitPython_LIS3DH](https://github.com/adafruit/Adafruit_CircuitPython_LIS3DH)
 * [Adafruit_CircuitPython_PYOA](https://github.com/adafruit/Adafruit_CircuitPython_PYOA)




## 14:52 Hug Reports


17:11 @brentru
* Beachbc on github for ESP32SPI_MQTT work!!
* @arturo182 for CursorControl testing and for producing one of the coolest featherwings out there!
* @deshipu for assistance re: button press detection


@cater (lurking)


17:50 @CGrover (text only)
* Group hug to the team and community today. I am especially appreciative for the published works of @dastels, @kattni, @siddacious, and @ladyada as work begins on a custom CircuitPython board definition.


18:12 @charlesburnaford (lurking)


18:30 @danh
* @tannewt for doing two releases (4.0.2 and 4.1.0-beta.1) in one day
* @tannewt for mpy corruption checking
* @deshipu for display, and stage work
* @arturo182 for keyboard/display FeatherWing and for suggestions and issues
* @hierophect for working on stm32f4 CircuitPython port: big news in Status Reports!




19:54 @deshipu
* Mike Barela and @ladyada for review and improvements in the learn guide
* Team for the new releases


21:50 @hierophect
* Big thanks to Dan for all his help this week - invaluable help on getting spun up on CircuitPython fundamentals


20:33 @kattni
* @siddacious for covering the forums this week while I get caught up
* @MakerMelissa for testing Debug_SPI for me
* @siddacious for catching two issues in the VCNL4040 lib I wrote
* @community moderators for always keeping up with Discord, thanks for everything you do
* @nnja and @Roy for continued help and support with my keynote preparation


@kingernorth (lurking)


22:40 @MakerMelissa
* @ladyada for encouraging me to double check the SPI circuit on the DragonBoard correctly
* @kattni for writing the Debug_SPI tool


23:07 @roy
* @tannewt for his code review on pypixelbuf
* @kattni for helping me solve my pylint issues and reminding me to resume working on pixelbuf


23:57 @siddacious
* @kattni for reviewing and getting my VCNL 4040 changed merged and bundled
* Isaac for testing my neopixel adapters
* @brentru for an amazingly useful eagle-on-mac tip: to open multiple copies of eagle, use “open -n -a EAGLE” on the command line
* @kattni for leaking me a copy of Debug_I2C to help me debug some I2C
* Discord mods for being moderate in their moderations of moderately important moderation tasks




25:18 @sommersoft
* Everyone involved in getting releases out last week
* @deshipu for helping on quite a few display questions in Discord
* Group Hug!


15:38 @tannewt
* Deshipu for teeny font.
* Mike from Mouse vs Python for having me as PyDev of the Week this week!
* Dhalbert for helping Lucian ramp up. Excited to see porting get easier.
* Sommersoft for the travis PR review.
* MikeB for continued work on r/circuitpython
## 25:46 Status Updates
28:08 @brentru
* Released CursorControl last week, perfect library for adding a cursor to your Game/UI. Handles PyGamer/PyBadge hardware via a ‘manager class’ - super simple.
   * https://github.com/adafruit/Adafruit_CircuitPython_CursorControl
* Brought up some new boards at the factory
* Started work on MiniMQTT - mqtt library for Circuit python
   * Started with a direct port of uMQTT but for the ESP32SPI classes done by beachbc on github.
   * MiniMQTT wont have explicit hardware deps, hopefully will be useful for Ethernet, WiFi and possibly cellular interfaces down the road.
   * Continuing with it this week.
      * Unique and useful features so far: you can define custom method handlers for specific mqtt topics (subscribing to /servomotor could bind to sero_angle() method), added a default method handler for topics (reduces code.py file size and complexity), reconnection by default
      * Adding error-checking to reflect MQTT spec 5.0
      * Breaking API changes (need to think about how I want to integrate pre-existing circuit python libs like Azure IoT and Adafruit IO) thru this week


@cater (lurking)


30:26 @CGrover
* Wrapped up the PCB design for a StringCar Racer M0 Express with motor controller board. It was inspired by @dastels’ Trinket M0 Hackspress mod and @siddacious’ custom M4 boards for CircuitPython. OSHPark panelized the board today. So, as a primarily hardware person, I’ll probably need additional help with the board definitions soon.
* Taking a break from CircuitPython for a few days to wrap up some woodworking, landscaping, and in-studio tracking. It will be hard to resist slipping in some late-night code design for the Precision Waveform Generator and Corrosion Monitor projects.


31:11 @charlesburnaford
* Keyboard integration is coming along nicely, still got a few little bugs, sends out wrong message at wrong time, having fun with that. Will get that debugged.
* Probably won’t be attending next week.


32:01 @danh
* Pull request reviews
* Got BLE Central working.
* Continued cleanup and refactoring on BLE internals and adafruit_ble library
* To do:
   * Add a FIFO to BLE Central for use with BLE UART.
   * Make an alpha or beta release with new BLE functionality.


33:58 @deshipu
* Learn guide for Stage published
* Preparing a similar displayio guide
* Preparing for Europython
* Circling around 1-bit display support in displayio


35:06 @hierophect
* STM32 port: Ramp up on structure, targeting working REPL
* Identifying unintended coupling between essential core files and non-essential modules
* Hacking away weird linker issues
* Successful build working. 


36:07 @kattni
* Last week:
   * Updated newsletter and template with upcoming events.
   * Tested Debug_SPI
   * Tested miniQR example update
   * Updated guides with new pinouts diagrams
   * Filed issue for CP safe mode crash into Hardfault_Handler (has been fixed)
   * Continued work on PyBadger:
      * “Business card” function partially implemented (shows image, but does not have text over it)
      * QR generation implemented
   * PR’d PyGamer for testing over the weekend. Still needs more documentation.
* This week:
   * Library Monday! Limited edition.
   * PyBadger guide (started):
      * How to change name for badge, QR code data, etc. - writing it as Blinka attending a conference
      * Pictures of how it looks.
      * Written for event participants
   * Finish documenting PyBadger
      * Publish a release.
      * Have people test: Melissa.
   * Send info about potential bug displaying label over bitmap
   * Get caught up from two days off last week
   * Add PYOA and turtle to RTD.
   * Continuing keynote prep
   * In no particular order:
      * Finish documenting Debug_I2C
      * Finish documenting Debug_SPI
      * Add e-ink shield to downloads page in e-ink breakout guide
      * Finish blog posts
      * Finish processing photos
      * Add FeatherWing header pinouts to PyBadge/PyGamer guides
      * MPL3115A2/MPL115A2 combination product guide
      * Sort out community submitted CircuitPython library to get it into the community bundle


40:33 @MakerMelissa
* Last Week:
   * Finished 96Boards Dragonboard Guide
   * Finished Writeup for Raspberry Pi
   * Added a couple boards to the website
   * Worked on Testing DebugSPI for Kattni
* This Week:
   * Test a Learn Guide PR
   * Fix Display installer script for Raspberry Pi 4
   * Give some attention to RA8875 CircuitPython Library
   * Start working on a new guide (not sure which one yet)
   * More boards to Blinka


42:18 @Roy
* Currently:
   * Working on fixing pypixelbuf fixes so it can get merged
   * Staring at a large stack of Adafruit hardware like the PyGamer that came in the most recent Adabox that I just haven't had time to play with yet and desperately want to!
* This Week:
   * Hopefully finding time to start working on changes to _pixelbuf in circuitpython to harmonize the API with pypixelbuf changes.  (Switching to string based byteorder configuration to reduce code size).


43:56 @siddacious
* Previously:
   * VCNL 4040 CP and Arduino driver work and releases including reworking CP interrupt handling. Commit is here for inspiration:
https://github.com/adafruit/Adafruit_CircuitPython_VCNL4040/commit/1dd9d332fbcd21d24fef1f92066e93137bcc291e
   * Sent out a Rev B of the VCNL4040 breakout to add QUIIC connectors
   * Successfully tested the Rev B OLED friend
   * Worked up a board to test a new WiFi module
   * This week:
   * Working on an OLED bonnet
   * Assembling and testing DS3502 rev b
   * Doubtless guide work
   * Traveling to Nevada for the 4th, working remote remotely


47:01 @sommersoft
   * Last Week:
   * RosiePi:
   * Got the Ansible playbooks working on the Raspberry Pi, up to the last couple steps.
   * Boarded a plane sooper-dooper early Friday; its workcation week in Maine!
   * This Week:
   * RPi would've been a hassle to bring along, so RosiePi dev is a bit on hold. Though i may start  writing some actual tests instead of the dev-stubs I have now.
   * Yesterday, I started working on a dynamic way to build the modules support matrix on RTD; https://github.com/adafruit/circuitpython/issues/1970
   * Finished the python script to build the JSON file describing what boards don't include each module. Will work the Sphinx side of things over the next couple of days.


26:22 @tannewt
   * Got caught up from Teardown
   * Fixed a couple outstanding bugs and released both 4.0.2 and 4.1.0-beta.1.
   * Weird schedule this week due to 4th of July holiday here but hope to make good progress towards wrapping up display work. After that will work on BLE workflow.

## 48:39 In the Weeds

## 49:25 Wrap-up
