# CircuitPython Weekly January 7th, 2019

Video is available here: [YouTube](https://youtu.be/CL4D3dD8ehU) [diode.zone](https://diode.zone/videos/watch/e4378501-afd7-4f32-a712-588e6b45cbeb)

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.

## 3:07 State of CircuitPython + Libraries

### Overall
* 15 pull requests merged
 * 7 authors - dhalbert, kattni, caternuson, dastels, brennen, PaintYourDragon, brentru
 * 6 reviewers - siddacious, kattni, caternuson, ladyada, dhalbert, brentru
* 5 closed issues by 3 people, 7 opened by 7 people


Summary: Well into 2019 planning. Look to see us finalize it by the end of the month and push to have 4.0 stable in the next month or two. Expect aggressive feature punting into subsequent feature releases like 4.1, 4.2 etc.

### 5:52 Core
* 2 pull requests merged
 * 1 authors - dhalbert
 * 2 reviewers - dhalbert, kattni
* 10 open pull requests
 * https://github.com/adafruit/circuitpython/pull/1423
 * https://github.com/adafruit/circuitpython/pull/1415
 * https://github.com/adafruit/circuitpython/pull/1412
 * https://github.com/adafruit/circuitpython/pull/1408
 * https://github.com/adafruit/circuitpython/pull/1370
 * 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
 * https://github.com/adafruit/circuitpython/pull/943
* 3 closed issues by 2 people, 6 opened by 6 people
* 160 open issues
 * https://github.com/adafruit/circuitpython/issues

Download stats for 3.1.2
104 total

By board:
* arduino_zero - 5
* circuitplayground_express - 28
* circuitplayground_express_crickit - 8
* feather52832 - 2
* feather_huzzah - 9
* feather_m0_adalogger - 7
* feather_m0_basic - 6
* feather_m0_express - 4
* feather_m0_express_crickit - 2
* feather_m0_rfm9x - 1
* feather_m0_rfm69 - 1
* feather_m4_express - 2
* gemma_m0 - 1
* hallowing_m0_express - 2
* itsybitsy_m0_express - 4
* itsybitsy_m4_express - 4
* metro_m0_express - 3
* metro_m4_express - 2
* pirkey_m0 - 0
* trinket_m0 - 13

By language:
* en_US - 104

Download stats for 4.0.0-alpha.5
606 total

By board:
* feather_m0_adalogger - 84
* feather_m0_express - 33
* circuitplayground_express_crickit - 25
* catwan_usbstick - 3
* feather_m0_basic - 25
* pirkey_m0 - 2
* trinket_m0 - 31
* metro_m0_express - 18
* metro_m4_express - 25
* feather_m0_express_crickit - 5
* trellis_m4_express - 99
* arduino_mkr1300 - 4
* feather_m0_rfm69 - 7
* feather_m4_express - 35
* arduino_zero - 14
* feather_m0_rfm9x - 14
* feather_radiofruit_zigbee - 2
* itsybitsy_m4_express - 31
* hallowing_m0_express - 18
* gemma_m0 - 11
* itsybitsy_m0_express - 10
* meowmeow - 1
* feather_huzzah - 14
* mini_sam_m4 - 13
* makerdiary_nrf52840_mdk - 1
* grandcentral_m4_express - 6
* pca10056 - 4
* circuitplayground_express - 34
* feather_nrf52840_express - 14
* feather_nrf52832 - 8
* particle_argon - 4
* particle_boron - 3
* particle_xenon - 4
* pca10059 - 4

By language:
* fil - 50
* es - 22
* de_DE - 33
* fr - 46
* en_US - 432
* pt_BR - 11
* it_IT - 12

### 6:49 Libraries
[CircuitPython Lib Tracking Issue](https://github.com/adafruit/circuitpython/issues/1246)


* 13 pull requests merged
 * 6 authors - kattni, caternuson, dastels, brennen, PaintYourDragon, brentru
 * 5 reviewers - siddacious, kattni, caternuson, ladyada, brentru
* 7 open pull requests
 * https://github.com/adafruit/Adafruit_CircuitPython_SK9822/pull/2
 * https://github.com/adafruit/Adafruit_CircuitPython_TLC59711/pull/5
 * 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_GFX/pull/6
 * https://github.com/adafruit/Adafruit_CircuitPython_ESP_ATcontrol/pull/16
* 2 closed issues by 2 people, 1 opened by 1 people
* 54 open issues
 * https://github.com/adafruit/Adafruit_CircuitPython_SK9822/issues/1
 * https://github.com/adafruit/Adafruit_CircuitPython_MAX7219/issues/16
 * https://github.com/adafruit/Adafruit_CircuitPython_INA219/issues/5
 * https://github.com/adafruit/Adafruit_CircuitPython_SD/issues/11
 * https://github.com/adafruit/Adafruit_CircuitPython_SD/issues/8
 * https://github.com/adafruit/Adafruit_CircuitPython_SI4713/issues/2
 * https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad/issues/3
 * https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad/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_MCP3xxx/issues/9
 * https://github.com/adafruit/Adafruit_CircuitPython_MCP3xxx/issues/7
 * https://github.com/adafruit/Adafruit_CircuitPython_MCP3xxx/issues/2
 * https://github.com/adafruit/Adafruit_CircuitPython_NeoPixel/issues/27
 * https://github.com/adafruit/Adafruit_CircuitPython_TSL2591/issues/8
 * https://github.com/adafruit/Adafruit_CircuitPython_TSL2591/issues/7
 * 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_HID/issues/25
 * https://github.com/adafruit/Adafruit_CircuitPython_CharLCD/issues/24
 * https://github.com/adafruit/Adafruit_CircuitPython_CharLCD/issues/21
 * https://github.com/adafruit/Adafruit_CircuitPython_Crickit/issues/13
 * 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_ADS1x15/issues/21
 * https://github.com/adafruit/Adafruit_CircuitPython_BNO055/issues/20
 * 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_IRRemote/issues/16
 * https://github.com/adafruit/Adafruit_CircuitPython_CCS811/issues/25
 * https://github.com/adafruit/Adafruit_CircuitPython_TCS34725/issues/18
 * https://github.com/adafruit/Adafruit_CircuitPython_TCS34725/issues/7
 * https://github.com/adafruit/Adafruit_CircuitPython_PN532/issues/7
 * https://github.com/adafruit/Adafruit_CircuitPython_GFX/issues/4
 * https://github.com/adafruit/Adafruit_CircuitPython_GFX/issues/2
 * https://github.com/adafruit/Adafruit_CircuitPython_TSL2561/issues/20
 * 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_Motor/issues/18
 * https://github.com/adafruit/Adafruit_CircuitPython_Motor/issues/17
 * https://github.com/adafruit/Adafruit_CircuitPython_TLC5947/issues/10
 * https://github.com/adafruit/Adafruit_CircuitPython_CircuitPlayground/issues/37
 * https://github.com/adafruit/Adafruit_CircuitPython_ESP_ATcontrol/issues/14
 * https://github.com/adafruit/Adafruit_CircuitPython_DotStar/issues/25
 * https://github.com/adafruit/Adafruit_CircuitPython_DotStar/issues/21
 * https://github.com/adafruit/Adafruit_CircuitPython_FeatherWing/issues/4
136 out of 136 repos need work.


New repo(s) currently in work, and unreleased. - 7

Unable to enable Travis build - 131

PyLint version very out of date - 126

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

Failed to fetch ReadTheDocs valid versions - 126

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

For pypi compatibility, missing setup.py - 7

Missing simpletest example. - 17

Not in bundle. - 3
 * https://github.com/adafruit/Adafruit_CircuitPython_BoardTest
 * https://github.com/adafruit/Adafruit_CircuitPython_CPython
 * https://github.com/adafruit/Adafruit_CircuitPython_GFX

CircuitPython drivers page missing driver - 16

Not listed on PyPi for CPython use - 7

Library has new commits since last release. - 111

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

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

ReadTheDocs latest build has warnings and/or errors - 5
 * https://github.com/adafruit/Adafruit_CircuitPython_DS1307
 * https://github.com/adafruit/Adafruit_CircuitPython_Thermistor
 * https://github.com/adafruit/Adafruit_CircuitPython_SD
 * https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad
 * https://github.com/adafruit/Adafruit_CircuitPython_RGB_Display

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

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

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

CircuitPythonLibrarians team missing or does not have write access. - 1
 * https://github.com/adafruit/Adafruit_CircuitPython_TestRepo

Only allow merges, disallow rebase and squash - 1
 * https://github.com/adafruit/Adafruit_CircuitPython_TestRepo

## 9:40 Hug reports

24:04 @brennen - general group hug for everybody

12:50 @brentru
* @jerryn for helping me out with getting started with the particle argon
* @ladyada for ESP32-coprocessor work, it’s great.

@cater - (lurking) Group hug, welcome back and congrats to Scott

@cgrover - lurking

13:28 @charlesburnaford - Congratulations on your get together over your vacation (Scott), glad to see you back. Worked on MIDI USB, definite hug for that, very useful. 

14:18 @danh
* @ktown for lots of BLE help
* @ATMakersBill for nudging me for a 3.1.2 release
* @deshipu for thoughtful CPy in 2019 thoughts

15:23 @dastels - Kattni for guiding me through the library construction and submission process, and made it a good experience

15:55 @deshipu - hugs to Jerryn who helped before xmas with the OLED wing, and great thanks to siddacious for encouragement and for info on how to do resin casting, to everyone who wrote circuitpython2019 posts, they are very interesting to read

@jerryn - Group hug to all!

17:01 @kattni
* @roy for all the work on pixelbuf. So many rainbows! Super excited to see this added.
* @sajattack for helping point out issues for Community Helpers on Discord
* Everyone who reported the bot-spam on Discord - there was a ton of DM spam and without reports, we couldn’t have handled it. Thanks to the community for assisting!
* Everyone who has contributed to the #circuitpython2019 posts - @ntoll, @deshipu, @mattyt, @cgrover, @tannewt - this has been excellent insight into how the community sees the CircuitPython project, and we really appreciate everything you have to say!
* @siddacious for quick reviews on libraries - I’m getting merge emails before I even have the chance to take a look. It’s great!
* @dastels for writing essentially his first lib! The debouncer lib looks great!
* @roy for designing me stands for the Metro and Feather Doubler/Tripler - both have header pins galore sticking out the bottom which are danger zone to my desk, and Roy designed me 3D printed stands for all three form-factors to eliminate this! 

@Maker Melissa - lurking

18:59 @MikeBarela - Happy new year! Congrats to Scott! Many years ahead, hitting 35 this year. Thank everyone who’s been doing the CP2019 posts - encourage you if you’re doing that, you can just send the messages, but if you publish it and don’t mind us sharing that, we’ll blog it up on the Adafruit blog and the CP Reddit, and other places to get some exposure for your ideas. Hug reports to folks who have said they want a DOS text mode for displays - totally on board with that. Hug reports to Scott for working on display. Kattni for all the drivers she’s been writing. And the community, we’re 1000% dedicated to this community and aiming for what the community wants, Open Source, best way to make things go well is the community. Happy healthy community.


21:52 @roy
* @kattni for her never ending patience as I blather on about my work on pixelbuf and for her continuous encouragement.
* @dhalbert for validating that i'm not crazy with regards to strangeness when subclassing C modules
* @tannewt for his architectural guidance as I move towards finalizing pixelbuf work.

22:30 @siddacious - nice big group hug to everyone

22:39 @sommersoft
* @deshipu, @ntoll, @MattyT, @CGrover, and others I may be unaware of or forgetting, for submitting feedback to "CircuitPython 2019: What Do You Want To See". Further, a hug to @tannewt for putting the call out for that feedback.
* A GIGANTO Group Hug to start 2019 off. I believe everyone will MAKE this a great year!


10:15 @tannewt
* Everyone who did reviews while I was out.
* @dhalbert for holding down the fort for core work.
* @kattni for running the meeting while I was out and everyone who attended.
* Everyone who posted about #circuitpython2019 so far:
   * Ntoll: http://madewith.mu/mu/users/2019/01/04/CircuitPython2019.html
   * Cgrover: https://github.com/CedarGroveStudios/CircuitPython2019/blob/master/README.md
   * Deshipu: http://dopieralski.pl/posts/2019-01-04-circuitpython/
   * MattyT: https://gist.github.com/mattytrentini/d5b22a1bce46aaaea3dc26dca4a10a13


23:27 @TG-techie - Love to say hug reports! Big hug to DanH and cater for always being there to help. Also Roy and JerryN for helping with compiling nRF UF2. Big hug to community for awesome work they do.

## 24:37 Status Updates

30:33 @brennen
* Since the last meeting, worked a lot on different little bits of platform detection stuff for Blinka. (extracted what we were doing to tell what SBC you’re running on, into its own lib Adafruit_Python_PlatformDetect) working on adding board defs to Blinka itself
* Little bit of standard issue lib testing on Pi
* Try to get around to CP2019 post

32:02 @brentru
* Releasing a Raspberry Pi/CircuitPython LoRa Guide this week.
   * Doing some non-circuitpython work this week.

@cater - lurking

@cgrover - lurking

32:28 @charlesburnaford
* Going to try something that should be pretty useful for those that want to play around with MIDI in Linux - to see if the MIDI USB will be recognised as a jack device for routing purposes in products like Ubuntu Studio and others.
* Now that I have USB MIDI to create the soundbox for the ocarina, wish me luck on that one!


33:47 @danh - 
* CircuitPython 3.1.2 release. This minor release includes `runtime.serial_bytes_available`, and also fixes some nRF build problems.
* Working on BLE services. Created a Python layer, `adafruit_ble` on top of the native `bleio` layer. Working on BLE UART at the moment.


35:45 @dastels 
* Spent the last little while taking my debouncer class and makiing it a library
* Finished tutorial guide, submitted it
* 360 degree LIDAR product in the shop, getting CP lib built for that, and doing example project or two
* Thinking of using the new nRF52840 chip for that to send telemetry back to something else


36:44 @deshipu 
* Making kind of a break for now
* Cleaning up existing projects I have, making them a bit easier to contribute to, bit better commented
* Started to prototype for text mode library, for OLED and TFT displays, no formatting no fancy stuff. Could be useful, so started working on that.

38:47 @kattni
* Last couple of weeks:
   * Catching up from the holidays.
   * Updated all the current servo guides
   * Deprecated various guides
   * Deprecated various GitHub repos
   * A bunch I can’t remember
   * Updated the OLED FeatherWing guide with everything for All The OLEDs (so many OLEDs……).
   * Started guide for Grand Central
* This week:
   * Library Monday! (and probably Tuesday or more) - a lot of catching up to do:
      * Update [CircuitPython Lib Tracking Issue](https://github.com/adafruit/circuitpython/issues/1246)
      * Could still use help with a release party
   * Finish up #circuitpython2019 post
   * Continue working on / finish guide for Grand Central
   * Create/complete guide for Prop-Maker FeatherWing
   * Finish up deprecating/enlivening servo guides
   * Get familiar with exporting images from Eaglecad
   * Cookiecutter testing
   * Potentially:
      * Work on mirroring OLED guide pages into other OLED guides
      * Re-archive one final GitHub repo
      * Deprecate more old guides - PCA9685, old servo, potentially OLED

@Maker Melissa - lurking

43:00 @MikeBarela
* I’ve been in an amongst all the Adafruit stuff
* nRF52840 has been in the shop and so is the Grand Central - pretty powerful CP hardware getting into people’s hands. Sign up to get notified when they come into stock if you want one!
* A lot of us are doing documentation on these products, guides etc. Moderating these guides
* Going through a lot of other guides, my own and others, making sure everything is up to date
* Involved in the blog posts, and CP subreddit (r/circuitpython on reddit) - If you follow all the other social media, content is the same, but if you’re into Reddit, we have it.
* The best overall snapshot of CircuitPython news is the newsletter! The whole CP team works on it. adafruitdaily.com - Python on Hardware newsletter.
* If anyone has news/comments etc, post on social media and we’ll pick it up and potentially add it to newsletter. 

47:22 @roy
* Used the holidays to sprint on Pixelbuf:
* Tested subclassing the C PixelBuf class in python (with limited success).
* Did some benchmarking to determine what would be the best way to implement `auto_write`.
* Finalized the C module and fixed bugs.  
* Got the build working again for all targets, and made Travis CI happy.
* Resumed work on the python `pixelbuf` implementation.

48:09 @ShawnHymel
* Working on porting UF2 and CircuitPython to SparkFun SAMD21 Mini this week.


48:30 @siddacious - 
* I just sent off a new breakout board for the INA260 to OSH Park and I'm now working on getting a Huzzah breakout and AM2315 talking to adafruit.io to log temp and humiditity for my friends fancy-organic-mushroom farm.
* I will write a #circuitpython2019 post but I'll have to figure out where to put it as I don't actively use any social media platforms at the moment.
* Happy belated holidays to everyone and happy hacking in the new year!


49:06 @sommersoft
* Last Week:
   *  cookiecutter:
      * Template fixes.
      * Adding PyPi templates into the process.
   * FrequencyIn:
      * Finally jumped back into FrequencyIn. Working through the logic/math to calculate a period using the "new" counter method (non-interrupting). I noticed some jumpy numbers when using the REPL, and realized that it was because I was always setting the value to the TC's counter regardless of EIC state. Limited that by checking for the EIC->INTFLAG, but have come to realize that this will also only reset the INTFLAG at the reference TC's interval.
      * Thought about ways to combine @notro's edge detection `Counter` PR. Since their interrupt handler is currently external, I'm not sure how exactly they're handling it. The need for edge vs level detection might limit combination. (I'm using level detection in FrequencyIn to minimize event latency.)
* This Week:
   * Continue butting heads with FrequencyIn.
   * Any further adjustments to cookiecutter, as Kattni tests it.


25:06 @tannewt
* Back from vacation
* Caught up on everything. Let me know if I missed something.
* USB Midi out for review later today. Let me know if you want to test.
* Displayio bitmap text starting tomorrow.
* Encouraging more #circuitpython2019 posts. Want to have them done by next meeting and then draft the overall post.

29:12 @TG-Techie 
* This week I’ve helped hexthat a little bit, teaching some friends some Python, trying to convince them to get CircuitPython. 
* Two minutes ago the PCBs for my M4 based board came in, so when homework is done I’ll be soldering them up.
* Still trying to learn C which is a big challenge for me right now.
* That’s all I can remember

## 52:10 In The Weeds

52:37 @sommersoft:
* “Make releases easy/easier”. Intent or thoughts on that previous statement?
   * Releases should be human-verified. Possibly write a “helper” that will aid in drafting releases.
* Sub-discsussion on further iterating “time since last release” from @cater:
   * Expand current adabot release check to give some indication on commits since the published date of the last release.
   * @cater is going to put in an issue on the adabot repo.

1:02:15 Wrap up
