# CircuitPython Weekly August 5th, 2019

Video of the meeting is available [on YouTube](https://youtu.be/jWAWQpZQoHY) and [on diode.zone](https://diode.zone/videos/watch/f17e04ff-a7e9-4749-94e2-3dbe5dde8972)


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.

## 4:50 Community News

DRAFT newsletter!
https://github.com/adafruit/circuitpython-weekly-newsletter/blob/gh-pages/_drafts/2019-08-06-draft.md

8/8/2019 is CircuitPython day!
We'll have a show on Weds, and Thurs, and more planned!
Some photos!
https://photos.app.goo.gl/xoAHetFnCj6RQpnz7

Kattni PyOhio keynote video posted!
https://youtu.be/-bBHXimlfPQ

Accelerating Driver Development with CircuitPython
https://pybay.com/speaker/bryan-siepert/

CircuitPython 4.1.0 Released!
https://github.com/adafruit/circuitpython/releases/tag/4.1.0

NEW BOOK! CircuitPython for beginners with Adafruit Circuit Playground Express & Mu in Japanese
https://twitter.com/AoyamaProd/status/1157775643750232064

CircuitPython editing and saving on iOS is here!
https://blog.adafruit.com/2019/07/30/its-now-possible-to-open-edit-and-save-python-code-on-ios-for-embedded-electronics-plugged-in-circuitpython-usb-devices-apple-ios-circuitpython/

CircuitPython sneks its way to Snek!
https://circuitpython.org/board/snekboard/

“RISC architecture is gonna change everything”
https://youtu.be/RL9yCWv7NS0
We’re excited for open silicon! If someone is working on a RISC-V microcontroller with built-in USB and a good chunk of RAM please let us know! We're looking forward to writing "CircuitPython snakes its way to RISC-V!"
https://blog.adafruit.com/2019/08/02/risc-architecture-is-gonna-change-everything-adafruit-joins-the-risc-v-foundation-risc_v-riscv-adafruit-adafruit/
added #risc-v topic in Discord, er, RISCord…

Best swag, yay!
https://twitter.com/JackieKazil/status/1157502891822858243

## 11:08 State of CircuitPython + Libraries
Script is not happy. (@sommersoft: I restarted it yesterday. Failed both times due to requests/urllib3 timeouts) 

https://adafruit-circuit-python.s3.amazonaws.com/adabot/bin/adabot/circuitpython_library_report_20190805.txt

CircuitPython 4.1.0 stable has been released!
5.x alphas coming soon!

## 13:08 Hug Reports

17:10 @_cli_ninja - phillip for boards for circuitpython day and help organizing! They had cake!

18:03 @brentr
* @kantti for the keynote, watched it yesterday and it was wonderful. Circuit python = Code+Community!
* Sybrenstuvel on GitHub for Python-RSA, a pure-python RSA implementation.
* Another for @kattni for CPX docs/learnguides/resources, taught a class at NYCResistor on Circuitpython on the CPX and your resources helped me create curriculum for the class.
* @danh BLE work

@cater - lurking

19:20 @CGrover - group hug!
* Ladyada for useful decision in hardware design.
* Kattni for inspiring keynote.

20:02 @danh
* @kattni for the keynote again, got to watch it
* @tannewt for 4.1.0 release
* @deshipu for _stage fixes and enhancements, pre-allocating buffers
* @sethitow for BLE doc fix
* @jepler for PWM and audio work

21:06 @Dave Briccetti
* General thanks for Circuit Python. It’s so nice to run Python on the Circuit Playground Express with my students.

@DaveP - lurking

21:32 @deshipu
* @kattni for the keynote and a new font from it
* @danh, @jepler and @tannewt for reviews and improvement suggestions
* @jepler for discussion on audio buffers
* @sommersoft, @jerryn and @ladyada for English lessons
* @danh and @jerryn for continuing their fight with BLE

22:30 @hukuzatanu - lurking - but hugs to _everyone_ who’s written Python intro guides. I’ve been able to point a number of people on Discord to them instead of saying “go buy this 1000-page Lutz book to learn Python.” :-)

22:55 @jepler
* Group hug

23:22 @jerryn
* @danh for continued BLE work and his patience with my questions.

23:40 @kattni (missing meeting)
* Thank you to everyone involved with PyOhio and my keynote. I will do my individual hugs next week when I’m around.

23:55 @MakerMelissa
* @Kattni for your excellent keynote. I enjoyed watching it...twice. :)

@MikeBarela - lurking

@ptorrone/adafruit - Thank you to all those folks who did CircuitPython Day events.

@sommersoft (lurking)
* Group Hug!

13:55 @tannewt
* Kattni for the wonderful keynote. Community is key for CircuitPython: https://www.youtube.com/watch?v=-bBHXimlfPQ
* Jepler and sommersoft for the audio work.
* Hexthat for fixing up audiocore imports
* @matt-land for ImageLoad reviews
* Matt Trentini for Extending MicroPython talk at PyCon.AU: https://www.youtube.com/watch?v=fUb3Urw4H-E
* Nina for debugging talk at PyCon.AU: https://www.youtube.com/watch?v=HHrVBKZLolg
* Elizabeth Dunham for community talk at PyCon.AU: https://www.youtube.com/watch?v=TW7PxyrCBR0
* Thanks to PyOhio and PyCon.AU folks for including those of only online with the talk videos.

## 24:27 Status Updates

38:22 @_cli_ninja Gonna try the MQTT lib tomorrow and see how it goes with local and remote broker. Also did some light painting with circuitplayground last week, and looking for a BLE board to work on ble projects .

28:36 @brentru
* Last Week: IOT Monthly sent, Started work on CircuitPython RSA and Google IOT Core for Circuit python, misc. support/board bring up work. Spent my saturday PM teaching Circuit python at NYCResistor - oldest hackerspace in US. Lots of ideas on improving curriculum for the next time? Teaching absolute beginners to programming, nvm hardware.
* CPY RSA is in a good spot, will likely see a release this week prior to an IOT Core release
   * Hitting a memory issue whilst porting Pyasn1 (https://github.com/etingof/pyasn1) over, if anyone has any “favorite asn.1” libraries, or would be interested in helping me see where/why it’s failing (tosses a generic MemoryError), let me know. 
      * This work will let us load PEM files directly from the CIRCUITPY drive, opposed to decoding on your machine and loading into a secrets.py file.
   * Hashing, encryption/decryption all work
   * Tests written for high-level methods.
* Google IOT Core for CircuitPy
   * Requires a JSON web token, hence all the RSA work (we may use this for IO in the future, it’s a better scheme than what we have now).
      * Hopefully will auth/talk with an application by EOD today, working on the library today.

@cater - lurking

31:14 @CGrover
* adding musical envelope generator to custom featherwing. (ADSR) Probably use digital potentiometers. Can play Star Trek theme. Interesting volume trick by modifying aref.

New string car m0 express will likely be new board def.

Cheaper than gym membership and twice as sweaty landscaping project.

35:33 @danh
* Got pairing working and Current Time Service client working: can fetch time from an IOS device.
* Working on BLE HID. Generalized current HID library so it can be used with BLE. Augmenting bleio as needed for BLE HID, and doing a little API restructuring
   * additional functionality for bleio.Descriptor
   * Can pass security permissions to Characteristic and Descriptor
   * Changed Characteristic.properties to a bitmask instead of a bunch of boolean args
   * Refactoring internals
* To do: bonding

38:40 @Dave Briccetti
* With students, using CPE accelerometer with a p5.js program, to control the initial velocity of the boxes. Perhaps we’ll use this.

@DaveP - lurking

39:50 @deshipu
* Stage updates (MicroPython, scaling, GIF)
* Another PewPew-based badge for a conference
* Second prototype for PewPew M4 — mostly working, only one bodge wire
* PewPew Standalone now produced and sold by Makerfabs

@hukuzatuna - lurking

44:35 @jepler
* Nrf pwm audio: feature complete, pull request waiting for review and merge. I don’t think anybody else has tried this code yet, though :(
* Nrf “link time optimization”: pull request sent, is a trade off: increases build time but yields ~14% runtime performance improvement in “pystone” benchmark

46:43 @jerryn
* Mostly a Raspberry Pi week - Buster updates and some camera projects.
   * Blinka working very well!
* Finally got to start poking at BLE -- with some help and pre-releases from Dan
   * Hope to have more time to explore this week. Sounds familiar….

@jtrip - lurking

48:14 @kattni (missing meeting)
* PyOhio 2019 keynote - more next week.
* Short vacation
* PyRuler guide
* Next up: display guides

48:30 @MakerMelissa
* Last Week:
   * Wrote a triangle Display Shape to get more familiar with displayio
   * Wrote Updated displayio Demo
   * Worked on updating lots of display guides with displayio specific setup steps
   * Updated Arduino ImageReader examples
* This Week:
   * Continuing to update display guides

@MikeBarela - lurking

49:45 @sommersoft (lurking)
* Last Week:
   * RosiePi:
      * Got Ubuntu Server 19.04 working. Its gcc-arm-none-eabi package is version 7-2018-q2, so firmware building will match current.
      * New Ansible headaches, with new OS/packages.
   * MixerVoice
      * Working on M4 again. 
      * Discovered DeanM didn't get M0 functions finished. M0 doesn't have the Thumb/ASM instructions used on M4.
* This Week:
   * MixerVoice: get M0 functions working
   * adabot: look into increasing occurrences of requests/urllib3 timeouts

25:18 @tannewt
* More EInk tricolor work. Next work is to redo refresh API. It’s the final displayio work todo too.
* Released 4.1.0
* Pushed driver repos if people want to test.
* Leave for New York Tuesday afternoon and back Sunday evening.
* Lots of videos, photos and streaming including CircuitPython Day!

## 51:34 In the Weeds

@danh
* 51:57 Are non-Latin language translations (e.g. Korean) blocked due to missing Unicode functionality or fonts or both? Korean has a syllabic alphabet, about 90 characters. For ideograph languages, we could separate needing a font from being able to use Unicode chars over serial. We’ll need to test further.
* 55:08 Increase circuitpython Travis builds to >5 jobs to speed up builds. We are paying for 10 concurrent jobs but share with other Adafruit builds. Maybe reorganize boards lists and collect third-party boards in separate lists. Could break build into one board+ all languages per job, and have shorter but more jobs. @sommersoft would like to clean up the build using travis matrix.

@jepler
* 1:02:02 I think that we can do better buffer allocation for audio I/O, but it requires more cooperation between audio sources (WaveFile, RawAudio, Mixer) and the audio device (AudioOut, PWMAudioOut).  Just what this looks like is unclear, but it might save ~512 bytes of RAM when playing audio.

@tannewt
* 1:05:30 Remove displayio.Shape?

## 1:10:25 Wrap-up
