# CircuitPython Weekly December 10th, 2018

Link to video: https://youtu.be/u5QLeIusQNc

## 2:00 State of CircuitPython + Libraries

## Overall
* 31 pull requests merged
  * 7 authors - kattni, jerryneedell, csylvain, fmorton, brentru, ladyada, tannewt
  * 6 reviewers - kattni, dhalbert, brennen, brentru, ladyada, tannewt
* 7 closed issues by 5 people, 9 opened by 6 people
2:30 Core
* 3 pull requests merged
  * 1 authors - tannewt
  * 1 reviewers - dhalbert
* 7 open pull requests
  * https://github.com/adafruit/circuitpython/pull/1387
  * https://github.com/adafruit/circuitpython/pull/1370
  * https://github.com/adafruit/circuitpython/pull/1367
  * https://github.com/adafruit/circuitpython/pull/1365
  * https://github.com/adafruit/circuitpython/pull/1363
  * https://github.com/adafruit/circuitpython/pull/1274
  * https://github.com/adafruit/circuitpython/pull/1144
* 3 closed issues by 3 people, 4 opened by 2 people
* 155 open issues
  * https://github.com/adafruit/circuitpython/issues


Download stats for 4.0.0-alpha.3
428 total


By board:
* arduino_mkr1300 - 38
* arduino_zero - 4
* circuitplayground_express - 56
* circuitplayground_express_crickit - 9
* feather_huzzah - 32
* feather_m0_adalogger - 11
* feather_m0_basic - 17
* feather_m0_express - 22
* feather_m0_express_crickit - 3
* feather_m0_rfm69 - 8
* feather_m0_rfm9x - 11
* feather_m4_express - 37
* feather_nrf52832 - 4
* gemma_m0 - 10
* hallowing_m0_express - 20
* itsybitsy_m0_express - 21
* itsybitsy_m4_express - 16
* makerdiary_nrf52840_mdk - 6
* meowmeow - 0
* metro_m0_express - 9
* metro_m4_express - 16
* pca10056 - 2
* pca10059 - 12
* pirkey_m0 - 2
* trellis_m4_express - 32
* trinket_m0 - 30


By language:
* de_DE - 56
* en_US - 319
* es - 7
* fil - 3
* fr - 22
* it_IT - 14
* pt_BR - 7


Download stats for 3.1.1
4911 total


By board:
* arduino_zero - 237
* circuitplayground_express - 1338
* circuitplayground_express_crickit - 245
* feather52832 - 48
* feather_huzzah - 414
* feather_m0_adalogger - 123
* feather_m0_basic - 159
* feather_m0_express - 320
* feather_m0_express_crickit - 48
* feather_m0_rfm69 - 29
* feather_m0_rfm9x - 48
* feather_m4_express - 273
* gemma_m0 - 224
* hallowing_m0_express - 189
* itsybitsy_m0_express - 165
* itsybitsy_m4_express - 156
* metro_m0_express - 149
* metro_m4_express - 156
* pca10056 - 21
* pirkey_m0 - 13
* trinket_m0 - 556


By language:
* en_US - 4911

## 4:36 Libraries

* 28 pull requests merged
  * 6 authors - kattni, jerryneedell, csylvain, fmorton, brentru, ladyada
  * 5 reviewers - kattni, brennen, brentru, ladyada, tannewt
* 8 open pull requests
  * https://github.com/adafruit/Adafruit_CircuitPython_SK9822/pull/2
  * https://github.com/adafruit/Adafruit_CircuitPython_ADXL34x/pull/4
  * https://github.com/adafruit/Adafruit_CircuitPython_NeoPixel/pull/28
  * https://github.com/adafruit/Adafruit_CircuitPython_GPS/pull/12
  * https://github.com/adafruit/Adafruit_CircuitPython_FancyLED/pull/5
  * https://github.com/adafruit/Adafruit_CircuitPython_TLC5947/pull/12
  * https://github.com/adafruit/Adafruit_CircuitPython_TSL2561/pull/18
  * https://github.com/adafruit/Adafruit_CircuitPython_MotorKit/pull/9
* 4 closed issues by 2 people, 5 opened by 4 people
* 54 open issues
  * https://github.com/adafruit/Adafruit_CircuitPython_SD/issues/11
  * https://github.com/adafruit/Adafruit_CircuitPython_SD/issues/8
  * https://github.com/adafruit/Adafruit_CircuitPython_INA219/issues/5
  * https://github.com/adafruit/Adafruit_CircuitPython_RGB_Display/issues/21
  * https://github.com/adafruit/Adafruit_CircuitPython_RGB_Display/issues/20
  * https://github.com/adafruit/Adafruit_CircuitPython_RGB_Display/issues/19
  * https://github.com/adafruit/Adafruit_CircuitPython_RGB_Display/issues/1
  * https://github.com/adafruit/Adafruit_CircuitPython_SI4713/issues/2
  * https://github.com/adafruit/Adafruit_CircuitPython_PN532/issues/8
  * https://github.com/adafruit/Adafruit_CircuitPython_PN532/issues/7
  * https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad/issues/3
  * https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad/issues/1
  * https://github.com/adafruit/Adafruit_CircuitPython_SK9822/issues/1
  * https://github.com/adafruit/Adafruit_CircuitPython_EPD/issues/5
  * https://github.com/adafruit/Adafruit_CircuitPython_EPD/issues/2
  * https://github.com/adafruit/Adafruit_CircuitPython_DotStar/issues/25
  * https://github.com/adafruit/Adafruit_CircuitPython_DotStar/issues/21
  * https://github.com/adafruit/Adafruit_CircuitPython_MCP3xxx/issues/7
  * https://github.com/adafruit/Adafruit_CircuitPython_MCP3xxx/issues/2
  * https://github.com/adafruit/Adafruit_CircuitPython_ADXL34x/issues/3
  * https://github.com/adafruit/Adafruit_CircuitPython_NeoPixel/issues/27
  * https://github.com/adafruit/Adafruit_CircuitPython_CircuitPlayground/issues/37
  * https://github.com/adafruit/Adafruit_CircuitPython_TSL2591/issues/8
  * https://github.com/adafruit/Adafruit_CircuitPython_TSL2591/issues/7
  * https://github.com/adafruit/Adafruit_CircuitPython_CCS811/issues/25
  * https://github.com/adafruit/Adafruit_CircuitPython_GPS/issues/10
  * https://github.com/adafruit/Adafruit_CircuitPython_BluefruitSPI/issues/9
  * https://github.com/adafruit/Adafruit_CircuitPython_BluefruitSPI/issues/8
  * https://github.com/adafruit/Adafruit_CircuitPython_BluefruitSPI/issues/4
  * https://github.com/adafruit/Adafruit_CircuitPython_BME280/issues/19
  * https://github.com/adafruit/Adafruit_CircuitPython_BME280/issues/15
  * https://github.com/adafruit/Adafruit_CircuitPython_TCS34725/issues/15
  * https://github.com/adafruit/Adafruit_CircuitPython_TCS34725/issues/7
  * https://github.com/adafruit/Adafruit_CircuitPython_HID/issues/25
  * https://github.com/adafruit/Adafruit_CircuitPython_CharLCD/issues/21
  * https://github.com/adafruit/Adafruit_CircuitPython_Motor/issues/19
  * https://github.com/adafruit/Adafruit_CircuitPython_Motor/issues/18
  * https://github.com/adafruit/Adafruit_CircuitPython_Motor/issues/17
  * https://github.com/adafruit/Adafruit_CircuitPython_FeatherWing/issues/4
  * https://github.com/adafruit/Adafruit_CircuitPython_TLC5947/issues/11
  * https://github.com/adafruit/Adafruit_CircuitPython_TLC5947/issues/10
  * https://github.com/adafruit/Adafruit_CircuitPython_BME680/issues/12
  * https://github.com/adafruit/Adafruit_CircuitPython_BME680/issues/11
  * https://github.com/adafruit/Adafruit_CircuitPython_BME680/issues/10
  * https://github.com/adafruit/Adafruit_CircuitPython_FRAM/issues/2
  * https://github.com/adafruit/Adafruit_CircuitPython_BNO055/issues/16
  * https://github.com/adafruit/Adafruit_CircuitPython_BNO055/issues/12
  * https://github.com/adafruit/Adafruit_CircuitPython_BNO055/issues/9
  * https://github.com/adafruit/Adafruit_CircuitPython_TinyLoRa/issues/8
  * https://github.com/adafruit/Adafruit_CircuitPython_TinyLoRa/issues/7
  * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/issues/117
  * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/issues/83
  * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/issues/77
  * https://github.com/adafruit/Adafruit_CircuitPython_IRRemote/issues/16
124 out of 125 repos need work.




PyLint version very out of date - 117


Example file(s) missing sensor/library name. - 38


Failed to fetch ReadTheDocs valid versions - 118


For pypi compatibility, missing pypi provider in .travis.yml - 4
  * https://github.com/adafruit/Adafruit_CircuitPython_CPython
  * https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad
  * https://github.com/adafruit/Adafruit_CircuitPython_LED_Animation
  * https://github.com/adafruit/Adafruit_CircuitPython_CircuitPlayground


PyLint version not fixed - 2
  * https://github.com/adafruit/Adafruit_CircuitPython_CPython
  * https://github.com/adafruit/Adafruit_CircuitPython_LED_Animation


For pypi compatibility, missing setup.py - 4
  * https://github.com/adafruit/Adafruit_CircuitPython_CPython
  * https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad
  * https://github.com/adafruit/Adafruit_CircuitPython_LED_Animation
  * https://github.com/adafruit/Adafruit_CircuitPython_CircuitPlayground


For pypi compatibility, missing Adafruit-Blinka in requirements.txt - 16


Not in bundle. - 2
  * https://github.com/adafruit/Adafruit_CircuitPython_CPython
  * https://github.com/adafruit/Adafruit_CircuitPython_US100


ReadTheDocs missing as a subproject on CircuitPython - 1
  * https://github.com/adafruit/Adafruit_CircuitPython_CPython


CircuitPython drivers page missing driver - 7


Not listed on PyPi for CPython use - 4
  * https://github.com/adafruit/Adafruit_CircuitPython_CPython
  * https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad
  * https://github.com/adafruit/Adafruit_CircuitPython_LED_Animation
  * https://github.com/adafruit/Adafruit_CircuitPython_CircuitPlayground


Library repository has no releases. - 1
  * https://github.com/adafruit/Adafruit_CircuitPython_CPython


Missing simpletest example. - 15


New repo(s) currently in work, and unreleased. - 5
  * https://github.com/adafruit/Adafruit_CircuitPython_AT86RF233
  * https://github.com/adafruit/Adafruit_CircuitPython_SK9822
  * https://github.com/adafruit/Adafruit_CircuitPython_miniesptool
  * https://github.com/adafruit/Adafruit_CircuitPython_BoardTest
  * https://github.com/adafruit/Adafruit_CircuitPython_espatcommands


ReadTheDocs latest build has warnings and/or errors - 2
  * https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad
  * https://github.com/adafruit/Adafruit_CircuitPython_LED_Animation


Unable to find or create (no auth) GITHUB_TOKEN env variable - 1
  * https://github.com/adafruit/Adafruit_CircuitPython_LED_Animation


Library has new commits since last release. - 10


Unable to enable Travis build - 2
  * https://github.com/adafruit/Adafruit_CircuitPython_MotorKit
  * https://github.com/adafruit/Adafruit_CircuitPython_BoardTest


Wiki should be disabled - 3
  * https://github.com/adafruit/Adafruit_CircuitPython_miniesptool
  * https://github.com/adafruit/Adafruit_CircuitPython_BoardTest
  * https://github.com/adafruit/Adafruit_CircuitPython_espatcommands


CircuitPythonLibrarians team missing or does not have write access. - 3
  * https://github.com/adafruit/Adafruit_CircuitPython_miniesptool
  * https://github.com/adafruit/Adafruit_CircuitPython_BoardTest
  * https://github.com/adafruit/Adafruit_CircuitPython_espatcommands


Only allow merges, disallow rebase and squash - 3
  * https://github.com/adafruit/Adafruit_CircuitPython_miniesptool
  * https://github.com/adafruit/Adafruit_CircuitPython_BoardTest
  * https://github.com/adafruit/Adafruit_CircuitPython_espatcommands


Travis doesn't know of repo - 2
  * https://github.com/adafruit/Adafruit_CircuitPython_miniesptool
  * https://github.com/adafruit/Adafruit_CircuitPython_espatcommands

## 6:41 Hug Reports

@acidic1 (lurking)


11:59 @adafruit


@andriod_ninja (lurking)


13:00 @brennen (doc only, power’s out again at my house)
* @kattni for patience with MotorKit deployment issues
* @ladyada for platform detection work & feedback


13:16 @cater
* Group hug


13:31 @cgrover (text only)
* Group hug and special thanks to all the inventive folks working on NeoTrellis projects. A hug to Ladyada as well for designing the STEMMA interface for I2C, UART, audio input, and other uses. Nice to have a consistent, compact, and flexible interface. BTW, there’s a STEMMA interface on my Feather M4/CPy lunchbox synth PCB that’s connected to a temporary OLED display needed for testing and troubleshooting.


14:00 @charlesburnaford
* Group hug


33:31 Dakotah (joined late).
* Hugs to my brother for fixing my heating system.


14:50 @danh        
* @tannewt for all the new boards, including Particle boards, and great new “get into safe mode” idea
* @jerryn for testing so much so quickly


@deshipu (lurking)


@jay doscher (lurking)


15:30 @jerryn
* @ladyada for the esp8266 espatcommands library work and for encouragement and support  in using it!
* @sommersoft for helping understand the Particle.argon <-> esp32  communications.
* @tannewt for particle mesh board support


8:10 @kattni
* @brennen for slogging through fighting with PyPI and Travis with me
* @sommersoft for all the Adabot work and for trying to help with Travis


8:41@ladyada
* @cater for picking up so many PR tweaks
* @kattni for re-doing our hat/shield/featherwings
* @jerryn for bein' an ESP-hackin' pal this weekend
* @sommersoft for adding some arduino-library stuff to adabo
* @tannewt for tinyusb - using it a lot, its SOLID
* @brennen for fighting linux demons

@s-light (lurking)

10:03@sajattack (lurking)
* thanks to @ladyada for answering my dap questions

@sdw_nj (at work)

11:36 @ShawnHymel
* Many thanks to Scott for filling me in on the history of CircuitPython and helping me understand how to best work with the community here

9:33 @siddacious
* Group hug to everyone keeping the github-spice flowing. RIP my inbox.

10:25 @sommersoft (text only)
* @jerryn & @ladyada for the push over the weekend to get ESPxx AT communication working over various UARTs.
* A Group Hug beyond that!

10:30 @tannewt
* Jerryn x 2 - For prompt testing of alpha 4 and helping folks on the forum.
* Danh for noticing the Travis build break and fixing the print flush issue.

## 16:00 Status Updates

@acidic1 (lurking)

24:30 @adafruit
* text only for me for this part: we updated the awesome-circuitpython list on github. we are always looking for help keeping it updated - https://github.com/adafruit/awesome-circuitpython  AND the "python on microcontrollers" newsletter is approaching 4,000 readers, you can add to it, post suggestions to include, etc. and more - https://github.com/adafruit/circuitpython-weekly-newsletter

27:06 @android_ninja (text only) (26:50)
* Getting close to finished with writing my first guide on learn.adafruit.com which covers how to use the Android Circuit Python Editor that I created.
* Just last night I got REPL macros working mostly, looking forward to getting that finished up this week.

27:30 @brennen (doc only)
* Last week: Adafruit_Python_PlatformDetect; MotorKit deployment issues (still not quite sure what’s up there).
* Rewriting Adafruit_Blinka platform stuff to use Adafruit_Python_PlatformDetect, getting PlatformDetect PyPI’d.
* Writing up a one-pager on Pi library testing process, as requested last week.

28:00 @cater misc

28:16 @cgrover
* Merged a couple of @JohnPark ‘s projects this week to create a CircuitPython-based NeoTrellis “Launch Pad” for USB-HID and MIDI control (via STEMMA). My digital audio workstation’s (DAW) control surface interface is designed for just MIDI, but I wanted to simultaneously incorporate USB-HID commands. The result is an expanded control surface that exactly fits my personal DAW workflow and can dynamically morph for other, more typical applications like MU, Atom, and window/app selection.
* Projects for the remainder of this week include the highly anticipated prototype of a dual 5-volt CV output board from the NeoTrellis for my Eurorack synth setup (using CircuitPython, of course) and excitedly assembling a bunch of new PCBs as soon as the OSH Park order arrives.

29:14 @charlesburnaford travelling. Close to finishing the ocarina. Working to speed up key response time.

30:00 @danh
* UART updates for 4.0, including breaking change for timeout (secs instead of msecs)
* Travis debugging
* Approved lotsa pull requests
* nRF API work continuing

@deshipu - lurking

@Jay Doscher - lurking

31:16 @jerryn
* Playing with particle boards -- xenon and argon working well.
* Trying to understand how to get the particle.argon to use the esp32 via its UART and the esp32 AT command firmware
* Testing Ladyada’s new espatcommands library. This is a really nice way to add wifi support and a great step toward to getting the particle.argon working.
* Founds a few issues: esp8266 build broken :-(  -- nrf uart behaving oddly -- see weeds.
* Found how to get CPYTHON_COMPAT to work on nrf build. - more weeds
* Next week -- all of the above…

18:00 @kattni
* Last week:
   * Library Monday:
      * There are a number of libs that need releases
      * Go through the responses I received from last week’s issue sweep
      * Update library tracking issue
      * Verify everything’s in the bundle, etc
      * fix up some repo issues from Adabot output - PRs in for Pylint version fix
   * Deprecate RPi guide for ADS1x15
   * Help Carter deprecate Python_ADS1x15 repo
   * Get @sommersoft added to the FRAM guides as a contributor
   * Trellis M4 NeoPixel toggle demo page completed
   * Motor FeatherWing code has been tested successfully on RPi, so I’ll be finishing the update on the Motor FeatherWing Guide page with the RPi instructions etc (fritzing already done)
   * Wrote Adafruit_CircuitPython_MotorKit
   * Motor Shield guide.
   * Update all of Pi Hat guide
   * Test Pi hat with I2C address change feature
      * Shield needs testing
      * Pi hat already tested
* This week:
   * Library Monday
      * Adabot!
      * PRs to go through
      * Looking into some PyPI issues
   * Write ServoKit! Servo wing/hat/shield
   * Deprecate Old CircuitPython PCA9685 guide

19:27@ladyada (19:17 on my end)
* status update: ive been neck deep in ESP8xxx-as-wifi-coprocessor hacking. its very alpha. BUT if you have a spare esp8266 chip with at least 1MB flash (most do) you can try following along and try to connect to internet services, find stuff i did wrong :smiley:. you definitely need an M4 for now to hack on it

@s-light (lurking)

20:00 @sajattack (lurking)
* I tried to get SWD running on CPY between the last time I was on and now. Didn't have much luck. Not sure whether that has to do with my implementation or general technical feasibility. I'm also still working on rusty spidma (between studying for exams and advent of code)

20:25 @ShawnHymel
* Created pin and board definitions for MKRZero 
* Wrote test suite for testing GPIO, SPI, I2C, LEDs, and battery monitor pins
* Planning to write tutorial this week for uploading CircuitPython to MKRZero

21:08 @siddacious: (out)
* Nast week: "Finished" my work on the updates to the axdl_34x driver and updated the PR in a mergeable state
* Next week: Guide work and work on the hackaday circuit sculpture contest: https://hackaday.io/contest/162559-circuit-sculpture-contest

20:36 @sommersoft
* Last Week:
   * Adabot:
      * Chased Adabot on Travis errors; we're getting close I think.
      * Added commits-since-release to the Arduino report.
   * FRAM: SPI Learn Guide done, and in review
* This Week:
   * Finish I2C FRAM Learn Guides with CircuitPython usage
   * Adabot insights pagination issue

21:29 @tannewt
* Added Particle Mesh support to CircuitPython and to the nRF bootloader.
* Reworked the nRF UF2 bootloader to flash LEDs in the same way as the atmel bootloader.
* Added safe mode to nRF52 and reworked it to be slow(er) double-clickable.
* Safe mode work also added some heap validity checks to prevent very hard crashes from the stack getting too big.
* Tried to release Alpha 4 but Jerry found an issue. Alpha 5 will be released later today.
* This week:
   * MIDI
   * Pybadge board definition.
   * Maybe text for displays.
   * Last week before vacation so let me know what you need done. No computer for two weeks for me.

34:50 In the Weeds (Discussion)


@jerryn (just to see if there is any direction  on these  -- not meant to be long discussions)
* 36:00 esp8266 build status
* 38:00 nrf uart issue 
* 39:09 mpconfigport.h  updates for nrf 

40:30 dakotah.redstone - ESP32 question

44:48 @sajattack why was #define SPI_FLASH_SERCOM SERCOMx removed, and what's the replacement? cc @cascade

46:40 @charlesburnaford - on MCP23017 reading whole port
https://github.com/adafruit/Adafruit_CircuitPython_MCP230xx/blob/master/adafruit_mcp230xx.py#L306

49:25 - Meeting time:

## Next meeting is 17 December 2018. The meeting after that will NOT be on Monday, due to the holiday. It will be on Thursday, 27 December 2018. Thanks!

## 52:14 Wrap up
