# Adafruit CircuitPython Weekly October 8th, 2018

Video is available here: https://youtu.be/nst4u_j-DtU

Thanks to @kattni for taking notes!

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.

## 2:42 State of CircuitPython

### Overall

* 25 pull requests merged
  * 12 authors - brennen, xpecex, iBug, VladMihai28, kattni, hathach, process1183, jerryneedell, C47D, ladyada, urish, caternuson
  * 6 reviewers - brennen, tannewt, dhalbert, ladyada, kattni, caternuson
* 15 closed issues by 7 people, 14 opened by 11 people

### Core
* 5 pull requests merged
  * 5 authors - xpecex, jerryneedell, C47D, urish, hathach
  * 1 reviewers - dhalbert
* 9 open pull requests
  * https://github.com/adafruit/circuitpython/pull/1249
  * https://github.com/adafruit/circuitpython/pull/1242
  * https://github.com/adafruit/circuitpython/pull/1236
  * https://github.com/adafruit/circuitpython/pull/1235
  * https://github.com/adafruit/circuitpython/pull/1193
  * https://github.com/adafruit/circuitpython/pull/1188
  * https://github.com/adafruit/circuitpython/pull/1167
  * https://github.com/adafruit/circuitpython/pull/1144
  * https://github.com/adafruit/circuitpython/pull/943
* 4 closed issues by 3 people, 8 opened by 6 people
* 55 open issues
  * https://github.com/adafruit/circuitpython/issues


Download stats for 4.0.0-alpha.1
372 total


By board:
* arduino_zero - 24
* circuitplayground_express - 39
* circuitplayground_express_crickit - 14
* feather_huzzah - 24
* feather_m0_adalogger - 13
* feather_m0_basic - 20
* feather_m0_express - 16
* feather_m0_express_crickit - 8
* feather_m0_rfm69 - 7
* feather_m0_rfm9x - 11
* feather_m4_express - 16
* feather_nrf52832 - 6
* feather_nrf52840_express - 10
* gemma_m0 - 14
* hallowing_m0_express - 51
* itsybitsy_m0_express - 14
* itsybitsy_m4_express - 19
* metro_m0_express - 13
* metro_m4_express - 21
* pirkey_m0 - 7
* trinket_m0 - 25


By language:
* de_DE - 43
* en_US - 242
* es - 30
* fil - 26
* fr - 31


Download stats for 3.0.2
2599 total


By board:
* arduino_zero - 54
* circuitplayground_express - 883
* circuitplayground_express_crickit - 178
* feather52832 - 34
* feather_huzzah - 152
* feather_m0_adalogger - 35
* feather_m0_basic - 56
* feather_m0_express - 139
* feather_m0_express_crickit - 26
* feather_m0_rfm69 - 22
* feather_m0_rfm9x - 23
* feather_m4_express - 127
* gemma_m0 - 133
* hallowing_m0_express - 43
* itsybitsy_m0_express - 103
* itsybitsy_m4_express - 94
* metro_m0_express - 117
* metro_m4_express - 111
* pirkey_m0 - 14
* trinket_m0 - 255


By language:
* en_US - 2599

### 6:26 Libraries
CircuitPython Library Tracking Issue: https://github.com/adafruit/circuitpython/issues/1246
* 20 pull requests merged
  * 8 authors - brennen, iBug, VladMihai28, kattni, process1183, jerryneedell, ladyada, caternuson
  * 5 reviewers - brennen, tannewt, ladyada, kattni, caternuson
* 12 open pull requests
  * https://github.com/adafruit/Adafruit_CircuitPython_DHT/pull/14
  * https://github.com/adafruit/Adafruit_CircuitPython_EPD/pull/4
  * https://github.com/adafruit/Adafruit_CircuitPython_NeoPixel/pull/28
  * https://github.com/adafruit/Adafruit_CircuitPython_MCP3xxx/pull/4
  * https://github.com/adafruit/Adafruit_CircuitPython_MCP3xxx/pull/3
  * https://github.com/adafruit/Adafruit_CircuitPython_MCP3xxx/pull/1
  * https://github.com/adafruit/Adafruit_CircuitPython_MAX31856/pull/1
  * https://github.com/adafruit/Adafruit_CircuitPython_FRAM/pull/1
  * https://github.com/adafruit/Adafruit_CircuitPython_DotStar/pull/23
  * https://github.com/adafruit/Adafruit_CircuitPython_DotStar/pull/22
  * https://github.com/adafruit/Adafruit_CircuitPython_SK9822/pull/2
  * https://github.com/adafruit/Adafruit_CircuitPython_Slideshow/pull/1
* 11 closed issues by 4 people, 6 opened by 6 people
* 55 open issues
  * https://github.com/adafruit/METROX-CircuitPython/issues/3
  * https://github.com/adafruit/awesome-circuitpython/issues/3
  * https://github.com/adafruit/Adafruit_CircuitPython_IRRemote/issues/17
  * https://github.com/adafruit/Adafruit_CircuitPython_IRRemote/issues/16
  * https://github.com/adafruit/Adafruit_CircuitPython_SD/issues/11
  * https://github.com/adafruit/Adafruit_CircuitPython_SD/issues/9
  * https://github.com/adafruit/Adafruit_CircuitPython_SD/issues/8
  * https://github.com/adafruit/Adafruit_CircuitPython_HID/issues/25
  * https://github.com/adafruit/Adafruit_CircuitPython_RTTTL/issues/8
  * https://github.com/adafruit/Adafruit_CircuitPython_BNO055/issues/12
  * https://github.com/adafruit/Adafruit_CircuitPython_BNO055/issues/11
  * https://github.com/adafruit/Adafruit_CircuitPython_BNO055/issues/9
  * https://github.com/adafruit/Adafruit_CircuitPython_CharLCD/issues/5
  * https://github.com/adafruit/Adafruit_CircuitPython_OneWire/issues/7
  * 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_FeatherWing/issues/4
  * https://github.com/adafruit/Adafruit_CircuitPython_BME680/issues/11
  * https://github.com/adafruit/Adafruit_CircuitPython_BME680/issues/10
  * https://github.com/adafruit/Adafruit_CircuitPython_TSL2591/issues/8
  * https://github.com/adafruit/Adafruit_CircuitPython_TSL2591/issues/7
  * https://github.com/adafruit/Adafruit_CircuitPython_BME280/issues/15
  * https://github.com/adafruit/Adafruit_CircuitPython_CCS811/issues/25
  * https://github.com/adafruit/Adafruit_CircuitPython_SI4713/issues/2
  * https://github.com/adafruit/Adafruit_CircuitPython_TLC5947/issues/6
  * https://github.com/adafruit/Adafruit_CircuitPython_EPD/issues/2
  * https://github.com/adafruit/Adafruit_CircuitPython_NeoPixel/issues/27
  * https://github.com/adafruit/Adafruit_CircuitPython_RFM9x/issues/5
  * https://github.com/adafruit/Adafruit_CircuitPython_SGP30/issues/1
  * https://github.com/adafruit/Adafruit_CircuitPython_MCP3xxx/issues/2
  * https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad/issues/1
  * https://github.com/adafruit/Adafruit_CircuitPython_HT16K33/issues/8
  * https://github.com/adafruit/Adafruit_CircuitPython_LSM9DS1/issues/11
  * https://github.com/adafruit/Adafruit_CircuitPython_LSM9DS1/issues/6
  * https://github.com/adafruit/Adafruit_CircuitPython_PN532/issues/7
  * https://github.com/adafruit/Adafruit_CircuitPython_L3GD20/issues/2
  * https://github.com/adafruit/Adafruit_CircuitPython_FRAM/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_SK9822/issues/1
  * https://github.com/adafruit/Adafruit_CircuitPython_miniQR/issues/2
  * https://github.com/adafruit/Adafruit_CircuitPython_CircuitPlayground/issues/37
  * https://github.com/adafruit/Adafruit_CircuitPython_TCS34725/issues/10
  * https://github.com/adafruit/Adafruit_CircuitPython_TCS34725/issues/7
  * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/issues/94
  * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/issues/93
  * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/issues/83
  * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/issues/77
  * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/issues/57
  * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/issues/53
  * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/issues/3
  * https://github.com/adafruit/Adafruit_CircuitPython_DRV2605/issues/9
110 out of 111 repos need work.


Wiki should be disabled - 13


Likely missing CircuitPythonLibrarians team. - 3
* https://github.com/adafruit/Adafruit_CircuitPython_VS1053
* https://github.com/adafruit/Adafruit_CircuitPython_MAX31856
* https://github.com/adafruit/Adafruit_CircuitPython_SK9822


Not in bundle. - 9
* https://github.com/adafruit/Adafruit_CircuitPython_VS1053
* https://github.com/adafruit/Adafruit_CircuitPython_CPython
* https://github.com/adafruit/Adafruit_CircuitPython_AT86RF233
* https://github.com/adafruit/Adafruit_CircuitPython_TFmini
* https://github.com/adafruit/Adafruit_CircuitPython_MAX31856
* https://github.com/adafruit/Adafruit_CircuitPython_FRAM
* https://github.com/adafruit/Adafruit_CircuitPython_SK9822
* https://github.com/adafruit/Adafruit_CircuitPython_Slideshow
* https://github.com/adafruit/Adafruit_CircuitPython_CAP1188


Only allow merges, disallow rebase and squash - 13


Unable to enable Travis build - 3
* https://github.com/adafruit/Adafruit_CircuitPython_VS1053
* https://github.com/adafruit/Adafruit_CircuitPython_LED_Animation
* https://github.com/adafruit/Adafruit_CircuitPython_SK9822


Missing lint config - 6


README missing Travis badge - 1
* https://github.com/adafruit/Adafruit_CircuitPython_VS1053


Missing .travis.yml - 6


Mismatched readthedocs.yml - 5
* https://github.com/adafruit/Adafruit_CircuitPython_VS1053
* https://github.com/adafruit/Adafruit_CircuitPython_DHT
* https://github.com/adafruit/Adafruit_CircuitPython_CharLCD
* https://github.com/adafruit/Adafruit_CircuitPython_DS3231
* https://github.com/adafruit/Adafruit_CircuitPython_GPS


For pypi compatibility, missing setup.py - 13


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


ReadTheDocs missing as a subproject on CircuitPython - 9


CircuitPython drivers page missing driver - 16


Not listed on PyPi for CPython use - 15


PyLint version very out of date - 95


ReadTheDocs missing the latest release. (Ignore me! RTD doesn't update when a new version is released. Only on pushes.) - 27


PyLint version not fixed - 9


For pypi compatibility, missing pypi provider in .travis.yml - 7


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


Missing license. - 5
* https://github.com/adafruit/Adafruit_CircuitPython_AT86RF233
* https://github.com/adafruit/Adafruit_CircuitPython_MAX31856
* https://github.com/adafruit/Adafruit_CircuitPython_FRAM
* https://github.com/adafruit/Adafruit_CircuitPython_SK9822
* https://github.com/adafruit/Adafruit_CircuitPython_Slideshow


Missing CODE_OF_CONDUCT.md - 5
* https://github.com/adafruit/Adafruit_CircuitPython_AT86RF233
* https://github.com/adafruit/Adafruit_CircuitPython_MAX31856
* https://github.com/adafruit/Adafruit_CircuitPython_FRAM
* https://github.com/adafruit/Adafruit_CircuitPython_SK9822
* https://github.com/adafruit/Adafruit_CircuitPython_Slideshow


Missing README.rst - 5
* https://github.com/adafruit/Adafruit_CircuitPython_AT86RF233
* https://github.com/adafruit/Adafruit_CircuitPython_MAX31856
* https://github.com/adafruit/Adafruit_CircuitPython_FRAM
* https://github.com/adafruit/Adafruit_CircuitPython_SK9822
* https://github.com/adafruit/Adafruit_CircuitPython_Slideshow


Missing readthedocs.yml - 5
* https://github.com/adafruit/Adafruit_CircuitPython_AT86RF233
* https://github.com/adafruit/Adafruit_CircuitPython_MAX31856
* https://github.com/adafruit/Adafruit_CircuitPython_FRAM
* https://github.com/adafruit/Adafruit_CircuitPython_SK9822
* https://github.com/adafruit/Adafruit_CircuitPython_Slideshow


For pypi compatibility, missing requirements.txt - 5
* https://github.com/adafruit/Adafruit_CircuitPython_AT86RF233
* https://github.com/adafruit/Adafruit_CircuitPython_MAX31856
* https://github.com/adafruit/Adafruit_CircuitPython_FRAM
* https://github.com/adafruit/Adafruit_CircuitPython_SK9822
* https://github.com/adafruit/Adafruit_CircuitPython_Slideshow


Missing examples folder - 5
* https://github.com/adafruit/Adafruit_CircuitPython_AT86RF233
* https://github.com/adafruit/Adafruit_CircuitPython_MAX31856
* https://github.com/adafruit/Adafruit_CircuitPython_FRAM
* https://github.com/adafruit/Adafruit_CircuitPython_SK9822
* https://github.com/adafruit/Adafruit_CircuitPython_Slideshow


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


README image missing alt text - 1
* https://github.com/adafruit/Adafruit_CircuitPython_HCSR04


ReadTheDocs project missing adabot as owner - 1
* https://github.com/adafruit/Adafruit_CircuitPython_miniQR

## 10:23 Hug Reports
27:30 @ATMakersBill - everybody here rocks! Kattni and Cater and everyone here is wonderful, the device just stinking works, and I can plug it in and it works. The hardware is awesome, hugs for all of them.

12:44 @brennen -
* @kattni for continuing to wrangle library organization
* Ladyada for help with serial hardware

13:13 @cater - another one to Kattni for helping with CAP1188, another big one to LadyAda for testing it on HW and finding useful review feedback. Process1183 and iBug for helping out with reviews and submitting PRs for the fixes.

14:02 @cgrover - Group hug! Marveling at the wonderfulness of support for the HalloWing and for 4.0.0alpha. Amazing.

@charlesburnaford - lurking

14:35 @DrewFustini - thanks Kattni for figuring out coming to Chicago to do a workshop on CPX and CircuitPython

15:29 @jerryn - Group hug, shout out to Adafruit for putting hollowing in Adabox009, turns out been having a blast with it and having fun with it and wouldn’t have gotten one, learning more from it with displayio

16:06 @kattni
* @cater and @Roy for tons of help with writing the slideshow software
* @cater and @sommersoft for reviewing the slideshow software
* @brennen for doing up the more difficult PyPi stuff and updating guides.

16:56 @MikeBarela - Thank the community in general, in taking over more of the newsletter and working with Adafruit, often have nose in the news, and there are a couple of people who have done interesting things with 4.0a,17 days since it went up and there are people out there already putting that code into action, Uri from Google getting into badgelife with nRF, hats off to the people who are bleeding through making all of this work, but Scott is doing a lot of the heavy lifting, hug report to Scott.

19:43 @Roy - @kattni and @tannewt for their unending patience and encouragement during my absence for when I eventually have time to return and help wrap up the Pixelbuf and RGBLED work.

20:11 @Siddacious: To @cater for holding my hand with the temp conversions on the new MAX thermocouple driver. And to Drew at OSHPark assisting in getting me help for my footprints.

20:55 @sommersoft
* @platipo, @xpecex, @gcvasconcelos, @furlaneto for doing new translations, and @C47D (carlos) for finishing up the Espanol translation.
* @nickzoic for continued Ethernet work.
* @cater, @siddacious, and @kattni for new library work.
* @Mithro for working TinyFPGA + CircuitPython
* Group Hug!

22:39 @ladyada - thanx to jerryn, sommersoft, siddacious, cater and others helping with hacktober! We’ve got tons of new people showing up!

10:45 @tannewt
* Thank you to sommersoft for pings around the meeting and everyone being flexible
* Thanks to kattni for organizing the libraries
* Thanks to Dan for all of the reviews
* Cater and bill for sip and puff: https://github.com/ATMakersOrg/AirTalker

@DanHalbert:
* @tannewt for Mixer!
* @jerryn for bug reports and erase_filesystem() fix!
* @ all the translators!

## 23:41 Status Updates
27:30 ATMakersBill - Sip/Puff Morse Code project: Up on GitHub under the org account, Carter is helping with that. Something will be doing A-Z and all the control stuff by the end of the weekend. It was not as hard as I expected.

28:56 @brennen -
* Testing libraries on Pi and updating guides for some serial hardware - thermal printer, jpeg camera, gps, etc.
* Ongoing Pi library testing.
* Published Glitter Positioning System tutorial (Feather M4 + GPS + LoRA).
* Bit less CircuitPython time than usual as I work on a few other Raspberry Pi tools.

30:00 @cater - the previously mentioned CAP1188 done. Fix for CPX play_tone, done. Ongoing review of siddacious’ code for thermocouple thing. Process1183 and ibug PRs reviewing.

30:56 @cgrover -
* Upgraded some older projects to 4.0.0alpha – no bugs yet. Besides a bunch of SMD soldering (thanks to OSH Park for early delivery), two current projects were also updated this week, one was for a new Eurorack CV interface wing PCB (for M0s and M4s) and the other for the UFO Controller (the one used as an example in my panel design/build learning guide).
* The CV interface wing is completed; still more work to be done on the UFO controller but am nearing the home stretch. The controller is using potentiometers as animation selection switches augmented by a “click” of a piezo speaker. Much simpler and smaller than rotary switches. No interrupt or breadcrumb complications as with rotary encoders. I’ll share some generic code for that when the project is completed.
* Next on the project docket is to totally upgrade my portable and fixed audio recording studios to get ready for recording my first solo album. Will be replacing everything hardware and software including audio interfaces and the DAW. Must convert and archive all previous recording project files into non-proprietary formats. This will be “fun” but very worthwhile.

@charlesburnaford - lurking

32:51 @DrewFustini - working on I2C for Blinka in the BeagleBone IO, trying to take what’s in there with the PureIO and getting it working on BB.

33:21 @jerryn - did a little fix on nRF52 filesystem create that was missing. Coming up working on LoRaWAN to convert small lib to see if it’ll work with LoRa boards. Looking forward to learning more about displayio

34:12 @kattni
* PyPi stuff on hold for a short time because:
* Writing code for the Hollowing to display a slideshow of bitmap files, thanks again to Roy and Carter for all the help with this.
* Wrote it into a helper library.
* Adding more functionality this week to get it finished up, and rewriting another piece of code so we have multiple examples/options for use.
* Back into PyPi stuff.

36:56 @MikeBarela - Working on tutorial for Adafruit using onboard light sensor as a pulse detector, the big issue is to count the beats/minute, hopefully get it out this week (don’t use it for medical tests). Posted in forum that people have been asking for PDF version of Getting Started with CPX book - https://www.humblebundle.com/books/make-electronics-2018 - One package includes the PDF.

38:48 @Roy - no real status update, just hoping to return in a limited capacity and hopefully be able to talk about pixelbuf and rgbled and what needs to be done.

39:15 @Siddacious:
* With any luck put the max driver to bed early this week and be able to make some progress on the ADXL345 driver. I lost my mouse which has slowed down my Eagle-ing but I finished another large chunk of my custom PCB tutorial so I’ve got that going for me.

39:52 @sommersoft -
* FrequencyIn: still languishing. It feels neglected I'm sure…
* FRAM Library:
   * I2C PR waiting review
   * SPI is done, but has breaking changes to I2C PR. Waiting for that to merge (or I can close and submit a new one)
* Starting to work on including examples into the library bundles.

41:42 @tg-techie - Hugs to: @Dan Halbert  and @cater   also @tannewt  and @kattni    I have really been enjoying making my code in python it makes the process sooo much easier. THANK YOU! and hugs all around too. my status  is just that I have uploaded my half baked gui code to github and a prog to add back delattr by using python code

@ladyada -

24:27 @tannewt - Finishing Mixer, then audio noise reduction. AudioIn after and then back to displayio.

@DanHalbert -
* nRF:
* - Redoing PWMOut to handle variable frequency.
* - Will move on to other pulseio classes next.
* - Will touch up UART to allow dynamic allocation of both UART's on nRF52840.
* - Will accept QSPI PR after fixing merge conflicts.
* CircuitPython in general:
* - Reviewing lots of PR's, including many translation ones.
* - Some more thinking about elapsed time checking that doesn't roll over (`precise_time` or a partial PEP 564 implementation).

## 46:54 In the Weeds


47:19 @sommersoft & @kattni -
* More Fancy CLI options for Adabot:
   * Output Log: print, file, or both
   * Error list: change depth
   * Scott’s input: add one more thing: add ability to not prompt for Adabot’s password if needed, to allow to run every night, “automated mode” would be really nice, we can automatically run it every night and dump it to the S3 bucket, and always have updated version.

50:35 @jerryn - nrf52 BLE support clarification

1:03:30 @cater - i'll try and ask about that ALPHA and RANDOM stuff in the weeds. i'm curious what the various trade offs are also:
* store at module level
* store at class level
* create a helper class to act like an enum

55:14 @cater -
* checking if a release has been done on an updated lib - add to library checks that it has commits that haven’t been released - make sure that whatever is in the bundle is updated to the most recent commit.
* best approach for enum like stuff

1:00:11 @ATMAkersBill
* Info from @tannewt  & others pointed me to 'supervisor' to access serial_bytes_available() which pass through to the usb_bytes_available() which is what I used to do polling on input().  Great idea, but I have no idea how to expose that function up from /supervisor/stubs or how to access it (as a global function?)
* https://github.com/adafruit/circuitpython/blob/master/shared-bindings/supervisor/Runtime.c
