adafruit-circuitpython-week.../2019/2019-08-19.md
2019-08-19 13:20:45 -07:00

23 KiB
Raw Permalink Blame History

CircuitPython Weekly August 19th, 2019

Video of the meeting is available on YouTube and on diode.zone

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 were missing some.

4:20 Community News

Hug report, @jepler audio stuff with nrf...

CircuitPython day is not quite over, YET! Here are some CircuitPython cupcakes from the Lamba Labs Beirut Hackerspace https://www.instagram.com/p/B1Os82ADp9B/?igshid=jcb7cwkdsryp

Latest newsletter is in DRAFT, please add an issue with any updates and more, and/or for next week too! https://github.com/adafruit/circuitpython-weekly-newsletter/blob/gh-pages/_drafts/2019-08-20-draft.md

New feature: Bryan, Dan, and Melissa!

Consumers Should Immediately... Python the Circuit http://www.extrasleepy.com/#/recalled/

Python powered art: CompuCanvas https://youtu.be/4BkDwmhM_Gc?t=1114

CircuitPython book! https://twitter.com/AoyamaProd/status/1161419847781142529 "Limitless hue of the spectral color represents the infinite possibilities by multiplying the programmatic necessity by the creativity of the CPX users. I would be happy if my artwork visualizes the multiplicity of the possibility of CPX."

Stickers all month: https://www.adafruit.com/free

Circuit Playground Bluefruit - Bluetooth Low Energy, ahead of schedule! https://www.adafruit.com/product/4333 https://youtu.be/FzYq9_8j-Bg https://youtu.be/sS5JoHFpvw8

9:48 State of CircuitPython + Libraries

Overall

  • 23 pull requests merged
    • 10 authors - devoh747, caternuson, adario7, LBertrandDC, tannewt, brentru, jepler, cogliano, makermelissa, dhalbert
    • 6 reviewers - matt-land, dhalbert, makermelissa, ladyada, tannewt, brentru
  • 11 closed issues by 7 people, 11 opened by 10 people

Overall: 4.x is in a good spot. 5.x is coming very shortly. First unstable release this week. Alpha. Correspond with first batch of Circuit Playground Bluefruit.

11:55 Core

Download stats by board:

Board 4.1.0 4.1.0-rc.1
arduino_mkr1300 17 1
arduino_mkrzero 12 3
arduino_zero 10 4
bast_pro_mini_m0 0 0
capablerobot_usbhub 0 0
catwan_usbstick 0 0
circuitplayground_express 650 49
circuitplayground_express_4h 3 0
circuitplayground_express_crickit 38 4
circuitplayground_express_digikey_pycon2019 3 0
datum_distance 0 2
datum_imu 0 0
datum_light 0 0
datum_weather 1 0
electronut_labs_blip 2 1
electronut_labs_papyr 0 0
escornabot_makech 1 1
feather_m0_adalogger 39 1
feather_m0_basic 42 15
feather_m0_express 122 8
feather_m0_express_crickit 9 0
feather_m0_rfm69 32 0
feather_m0_rfm9x 33 3
feather_m4_express 166 24
feather_nrf52840_express 53 9
feather_radiofruit_zigbee 2 2
gemma_m0 77 5
gemma_m0_pycon2018 2 1
grandcentral_m4_express 58 6
hallowing_m0_express 35 4
itsybitsy_m0_express 87 7
itsybitsy_m4_express 110 25
kicksat-sprite 0 0
makerdiary_nrf52840_mdk 7 3
makerdiary_nrf52840_mdk_usb_dongle 12 4
meowmeow 0 0
metro_m0_express 68 8
metro_m4_airlift_lite 25 9
metro_m4_express 73 14
mini_sam_m4 3 1
particle_argon 2 1
particle_boron 2 0
particle_xenon 8 1
pca10056 14 10
pca10059 39 9
pewpew10 5 5
pewpew13 0 0
pirkey_m0 1 0
pybadge 59 15
pybadge_airlift 0 1
pygamer 78 17
pygamer_advance 1 2
pyportal 201 52
pyruler 58 12
robohatmm1 0 0
sam32 6 1
sparkfun_lumidrive 0 0
sparkfun_nrf52840_mini 7 0
sparkfun_redboard_turbo 3 0
sparkfun_samd21_dev 2 0
sparkfun_samd21_mini 4 3
trellis_m4_express 59 4
trinket_m0 321 48
uchip 2 0
ugame10 16 3
---------------------------------------------- -------- -------------
Total 2680 398
---------------------------------------------- -------- -------------

Download stats by language:

Board 4.1.0 4.1.0-rc.1
ID 2 0
de_DE 61 7
en_US 2465 361
en_x_pirate 17 2
es 55 6
fil 7 1
fr 27 6
it_IT 7 2
pl 19 3
pt_BR 14 5
zh_Latn_pinyin 6 5
----------------- -------- -------------
Total 2680 398
----------------- -------- -------------

13:50 Libraries

15:22 Hug Reports

17:22 @brentru

  • @mscosti for ESP32SPI Access Point Mode, its merged and released!
  • @adam.io for the Adafruit IO web redesign and revamp - if you havent checked it out yet head over to https://io.adafruit.com
  • @danh for BLE - more protocols!
  • Jpadilla on GitHub for work on PyJWT - API inspiration for the yet-to-be-released CircuitPython JWT module

@cater (lurking)

  • Group hug!

@cgrover (lurking)

18:30 @danh

  • @jepler for numerous PRs, new work, cleanups, and fixes.
  • @tannewt for displayio PRs and review of my BLE PRs.
  • @hierophect for stm32 PR
  • @jerryn for simulating a continuous testing engine :) Thanks for trying PRs and also filing issues on apparent glitches.

20:00 @dave briccetti

  • @kattni for creating a new category for advanced examples

20:18 @deshipu

20:33 @jepler

  • @danh for some PR reviews and help with some git SNAFUs
  • @ladyada for some helpful direction on PDM audio
  • @sommersoft for multiple chats about audio stuff
  • @tannewt for taking a joke pull request even slightly seriously
  • @tannewt for the github CI work
  • Group hug to everyone for being the best community I participate in

21:40 @jerryn (missing meeting)

  • @danh - congratulations on the release of the BLE lib! Also thanks for patiently helping me with several issues that turned out to be non-issues.
  • Thanks to Adafruit for getting several STEMMA/QWIIC breakouts out there. Nice to be able to daisy chain sensors.

22:05 @josh (text only)

  • My hug report this week goes to the team working on the Circuit Playground Express BLE version. Its going to open up a whole new way to interact with the Circuit Playground and CircuitPython.

22:22 @kattni

  • @dcbriccetti for submitting new examples to the Circuit Playground Express lib repo and for being super patient with PR issues
  • @siddacious for helping out with forums and such while I was getting caught up with work after being gone
  • @krayola for help with my current code and explaining modulo
  • @warthog9 for getting me set up with VMware
  • @sommersoft for continued work on Adabot, and fixing up an issue on circuitpython-build-tools this weekend
  • @dherrada for suggesting adding a note to the PyGamer guide on how to read the analog joystick data

@kingernorth (lurking)

24:26 @MakerMelissa

  • @tannewt for helping me get the SSD1351 display driver working again
  • Group Hug

23:51 @sommersoft (not in meeting)

  • @jepler for the conversation regarding MixerVoice.

15:46 @tannewt

  • Johnpark, cgrover and jepler for finding and fixing the MIDI byte packing
  • @jepler for filling in the gaps for the circuitplayground ble
  • @jerryn for the debugging of the purple led mystery

25:05 Status Updates

28:38 @brentru

  • Completed work on Google Cloud Core IoT for Circuit python
  • Built out a JWT library this past Thurs/Fri to support JSON-Web-Token authentication
  • As a result of work on GCS, Ive been making CircuitPython MiniMQTT a solid MQTT client..
    • Network management improvements - sockets and the network manager are handed in a more intelligent way, blocking loop updated to handle the network manager.
    • Control loop improvements - Both loops (blocking and nonblocking) handle the keepalive value with a timer/timeout, pingreq/pingresp added to loops to prevent disconnection from server.
    • CONNECT packet creation was refactored to support long client identifiers and passwords - added the remaining-length algorithm described in the MQTT specification.
  • Starting to release all the components early this week (Mon/Tue):
    • CircuitPython RSA Module
    • CircuitPython JWT (JSON Web Token) module
    • CircuitPython GCS IoT Core Module
      • Guide about GCS IoT later this week

@cater (lurking)

@cgrover (lurking)

30:20 @danh

  • BLE PRs revised and merged after reviews by @tannewt.
  • Reviewed and merged several PRs by @jepler and @tannewt.
  • Board definition for Circuit Playground Bluefruit.
  • Made GPIO-based touchio originally developed for nRF available on SAMD51. Now all CircuitPython boards can have touchio.
  • Increased number of Travis job to shorten build times after it increased due to new optimization for nRF builds
  • To do: Debug BLE HID, implement bonding

33:17 @Dave Briccetti

  • Wanting to add simulated momentum to the imaginary object represented by the NeoPixel in our example, Gravity Pulls Pixel. Im thinking maybe pendulum physics formulas is the way to go.
  • This Wednesday my grades 68 students at a private school where I teach part time will start with CPX. Well start with MakeCode, and then Ill encourage them (especially the older grades) to apply the Python skills they developed last year and use CircuitPython.

34:37 @deshipu

  • Prototype number 4 for PewPew M4

36:07 @jepler

  • Thanks to @kattni, Ive been promoted to CircuitLibrarian
  • nRF PDMIn quickly reached a PRable state, but some additional work / re-work anticipated. Were having a make check-translate problem that I dont understand yet.
  • While doing PDMIn, found a bug with PWMAudioOut always looping RawSamples
  • Small, simple fixes for several other issues
  • Contributed several reviews
  • Working on upstreaming the namedtuple bugfix to micropython
  • PyRuler project: USB HID device to control my media player, digital picture frame, and a wifi-addressable lamp. Status: Done, but the tape-over key legends keep coming loose

38:33 @jerryn (missing meeting)

  • Trying to understand why the PyRuler DotStar comes up solid magenta instead of pulsing green … good excuse to get J-link hooked up and remember how to use it.
    • Still a WIP
  • Spent a lot of time chasing what seemed to be a similar DotStar issue on Gemma_M0 but it appears to have been an isolated HW issue on one board…..
  • Found odd issue with VEML4040 i2c on nRF52840s but it appears to be isolated to the VEML4040 and VEML7700 and not a generic I2C issue.
  • This week -- just keep breaking stuff ...

39:29 @josh (text only)

  • This week Ive been working on an offline version of EduBlocks as its been heavily requested by multiple people. For now, Ive only got it working on Linux + Raspberry Pi & Hopefully Windows + Mac when I learn how to do installers for them. Itll include offline support for CircuitPython so you can code your CircuitPython compatible devices in block format without having internet.

40:05 @kattni

  • Last week:
    • Started redoing uPython Watch guide in CircuitPython, immediately ran into bug in CircuitPython with I2C and OLEDs. Put that on hold.
    • Assembled OLED watch stacking assemblies (Feather M4, DS3231 FeatherWing, OLED FeatherWing)
    • Started looking into linting guide.
    • Tested bug fix for CircuitPython, I2C and OLEDs.
    • Completed code for CircuitPython OLED Watch.
    • Started CircuitPython code page in OLED Watch guide.
    • Setup Windows VM.
  • This week:
    • Finish CircuitPython page in OLED guide (contingent on 5.0 release)
    • Start linting guide
    • Update the CP Libs issue in CircuitPython issues list to point to circuitpython.org
    • Make note of how to use joystick_x/y.value to find analog joystick data on PyGamer somewhere in PyGamer guide - Essentials guide
    • Begin sorting out how to better track library PRs and issues
      • Consistent follow through needed
      • Needs to be multiple people involved
      • Update Adabot to better facilitate this
      • Discuss with @sommersoft how best to go about updating Adabot
    • Hopefully setting up replacement new laptop (the first one GPU failed, had to be returned)

@kingernorth (lurking)

44:48 @MakerMelissa

  • Last Week:
    • Finished updating the remainder of the display guides (11, I think) with a displayio section
    • Did some Blinka testing on the Jetson Nano
    • Started on a new Adafruit IO MessagePanel guide
    • Updated Display Text PyPortal example to work on latest stable build
  • This Week:
    • Finish Message Panel Guide
    • Start working on a guide for getting TensorFlow running on the Raspberry Pi 4
    • Anything else that comes up

45:45 @sommersoft (not in meeting)

  • Last Week:
    • MixerVoice
      • Non-DSP v DSP Capable Functions:
        • At @jepler's suggestion, I've dropped efforts to accomplish/fix non-working ASM/DSP functions in favor of using C functions. My ears & eyes cannot discern any lag in using the C functions compared to the ASM.
      • 8-bit signed/16-bit unsigned:
        • Last week I asked about not supporting these formats, which received agreement. During our conversation, @jepler also pointed out that RawSample allows both of these formats.
        • Worked through some test scripts for this, and the functions seem to be working properly on an M4. Need to test on M0. Then should have a PR in.
    • Circuitpython-build-tools
      • Fixed a bundling issue with an examples subfolder containing the word "examples" in the name (e.g. "examples/advanced_examples"). Basically, the subfolder path would be truncated when building the path tree, causing the bundle/zip functions to cough up a NotFoundError.
  • This Week:
    • MixerVoice

47:12 @tammymakesthings (not in meeting)

  • Working on a script to automatically update CircuitPython devices with the latest .uf2 and latest libraries (more details to come)

25:30 @tannewt

  • Finishing EPaper work and refresh rework
  • Finishing switching to GitHub CI
  • Finish stop=
  • Group hide and show

47:43 In the Weeds

  • 48:14 @danh- more 4.x releases with new features?
    • binascii and hashlib for RSA for IoT
    • HID custom descriptor for @ATMakersBill
  • 58:03 @tannewt - Breaking changes and backwards compatibility: https://github.com/adafruit/circuitpython/pull/2068
  • 1:13:40 @kattni - Lib bundle builds question.

1:17:10 Wrap-up