19 KiB
CircuitPython Weekly for 28 May 2019
Video is available here on YouTube.
Join here for the chat all week: https://adafru.it/discord
The weekly happens normally at 2pm ET/11am PT on Mondays. Check the #circuitpython channel on Discord for notices of change in time and links to past meetings.
CircuitPython development is sponsored by Adafruit. Please support them by purchasing hardware from https://adafruit.com.
Reminders: Podcast available on most services. Let us know if we’re missing some.
3:13 Community News
For folks who use/know about/test screen readers, etc. please check out https://circuitpython.org/ and add any PRs if we need to make it work better for screen readers.
Atom plug in for CircuitPython, try it out! https://github.com/jos-b/atom-circuitpython
HOW-TO Creating Custom Boards https://www.hackster.io/wallarug/circuitpython-creating-custom-boards-8e979e
Added more boards to: https://circuitpython.org/
Robo HAT MM1 by Robotics Masters. Escornabot Makech by Electronic Cats. Programmable USB Hub by Capable Robot Components. PyGamer by Adafruit.
Python now in win 10, guide coming soon: https://devblogs.microsoft.com/python/python-in-the-windows-10-may-2019-update/
4:46 State of CircuitPython + Libraries
Overall
- 22 pull requests merged
- 13 authors - ZachNo, peterhinch, tannewt, makermelissa, brentru, tgs, deshipu, matt-land, dhalbert, jraber, jpecor, dherrada, caternuson
- 9 reviewers - sommersoft, tannewt, makermelissa, matt-land, kattni, ladyada, siddacious, dherrada, caternuson
- 11 closed issues by 9 people, 15 opened by 12 people
Core
- 3 pull requests merged
- 3 authors - deshipu, dhalbert, tannewt
- 1 reviewers - tannewt
- 12 open pull requests
- https://github.com/adafruit/circuitpython/pull/1915
- https://github.com/adafruit/circuitpython/pull/1914
- https://github.com/adafruit/circuitpython/pull/1909
- https://github.com/adafruit/circuitpython/pull/1907
- https://github.com/adafruit/circuitpython/pull/1903
- https://github.com/adafruit/circuitpython/pull/1898
- https://github.com/adafruit/circuitpython/pull/1897
- https://github.com/adafruit/circuitpython/pull/1893
- https://github.com/adafruit/circuitpython/pull/1858
- https://github.com/adafruit/circuitpython/pull/1845
- https://github.com/adafruit/circuitpython/pull/1363
- https://github.com/adafruit/circuitpython/pull/1274
- 1 closed issues by 1 people, 5 opened by 4 people
- 170 open issues
- 5 active milestones
- 4.x - Features: 39 open issues
- 4.x.x - Bug fixes: 1 open issues
- 5.x: 2 open issues
- Libraries: 8 open issues
- Long term: 118 open issues
- 2 issues not assigned a milestone
Download stats by board:
| Board | 4.0.1 | 4.0.0-rc.3 |
|---|---|---|
| arduino_mkr1300 | 0 | 0 |
| arduino_mkrzero | 0 | 1 |
| arduino_zero | 6 | 4 |
| bast_pro_mini_m0 | 0 | 2 |
| capablerobot_usbhub | 0 | 0 |
| catwan_usbstick | 3 | 0 |
| circuitplayground_express | 244 | 66 |
| circuitplayground_express_4h | 2 | 1 |
| circuitplayground_express_crickit | 16 | 4 |
| circuitplayground_express_digikey_pycon2019 | 0 | 3 |
| electronut_labs_papyr | 2 | 4 |
| escornabot_makech | 1 | 0 |
| feather_m0_adalogger | 13 | 6 |
| feather_m0_basic | 14 | 5 |
| feather_m0_express | 56 | 15 |
| feather_m0_express_crickit | 2 | 0 |
| feather_m0_rfm69 | 4 | 2 |
| feather_m0_rfm9x | 14 | 8 |
| feather_m4_express | 52 | 18 |
| feather_nrf52840_express | 11 | 6 |
| feather_radiofruit_zigbee | 1 | 0 |
| gemma_m0 | 22 | 6 |
| gemma_m0_pycon2018 | 1 | 0 |
| grandcentral_m4_express | 30 | 45 |
| hallowing_m0_express | 22 | 7 |
| itsybitsy_m0_express | 16 | 4 |
| itsybitsy_m4_express | 28 | 10 |
| kicksat | 0 | 0 |
| makerdiary_nrf52840_mdk | 0 | 0 |
| makerdiary_nrf52840_mdk_usb_dongle | 1 | 2 |
| meowmeow | 1 | 0 |
| metro_m0_express | 27 | 16 |
| metro_m4_airlift_lite | 5 | 8 |
| metro_m4_express | 24 | 27 |
| mini_sam_m4 | 4 | 0 |
| particle_argon | 6 | 0 |
| particle_boron | 5 | 1 |
| particle_xenon | 4 | 3 |
| pca10056 | 6 | 0 |
| pca10059 | 8 | 8 |
| pewpew10 | 0 | 0 |
| pewpew13 | 0 | 0 |
| pirkey_m0 | 0 | 0 |
| pybadge | 23 | 19 |
| pygamer | 23 | - |
| pyportal | 121 | 157 |
| robohatmm1 | 0 | 0 |
| sam32 | 0 | 0 |
| sparkfun_lumidrive | 0 | 1 |
| sparkfun_nrf52840_mini | 3 | 4 |
| sparkfun_redboard_turbo | 0 | 1 |
| sparkfun_samd21_dev | 0 | 0 |
| sparkfun_samd21_mini | 2 | 2 |
| trellis_m4_express | 20 | 35 |
| trinket_m0 | 70 | 24 |
| uchip | 0 | 1 |
| ugame10 | 1 | 1 |
| ---------------------------------------------- | -------- | ------------- |
| Total | 914 | 527 |
| ---------------------------------------------- | -------- | ------------- |
Download stats by language:
| Board | 4.0.1 | 4.0.0-rc.3 |
|---|---|---|
| ID | - | 0 |
| de_DE | - | 3 |
| en_US | 914 | 495 |
| en_x_pirate | - | 6 |
| es | - | 5 |
| fil | - | 0 |
| fr | - | 10 |
| it_IT | - | 2 |
| pl | - | 1 |
| pt_BR | - | 4 |
| sprite | 0 | - |
| zh_Latn_pinyin | - | 1 |
| ----------------- | -------- | ------------- |
| Total | 914 | 527 |
| ----------------- | -------- | ------------- |
9:20 Libraries
- 19 pull requests merged
- 12 authors - ZachNo, peterhinch, tannewt, makermelissa, brentru, tgs, matt-land, dhalbert, jraber, jpecor, dherrada, caternuson
- 8 reviewers - sommersoft, makermelissa, matt-land, kattni, ladyada, siddacious, dherrada, caternuson
- 30 open pull requests
- https://github.com/adafruit/Adafruit_CircuitPython_SK9822/pull/2
- https://github.com/adafruit/Adafruit_CircuitPython_WS2801/pull/4
- https://github.com/adafruit/Adafruit_CircuitPython_GFX/pull/6
- https://github.com/adafruit/Adafruit_CircuitPython_Debouncer/pull/8
- https://github.com/adafruit/Adafruit_CircuitPython_DotStar/pull/36
- https://github.com/adafruit/Adafruit_CircuitPython_DotStar/pull/35
- https://github.com/adafruit/Adafruit_CircuitPython_BitbangIO/pull/1
- https://github.com/adafruit/Adafruit_CircuitPython_TLC59711/pull/5
- https://github.com/adafruit/Adafruit_CircuitPython_MAX31865/pull/9
- https://github.com/adafruit/Adafruit_CircuitPython_HT16K33/pull/37
- https://github.com/adafruit/Adafruit_CircuitPython_Fingerprint/pull/11
- https://github.com/adafruit/Adafruit_CircuitPython_framebuf/pull/14
- https://github.com/adafruit/Adafruit_CircuitPython_CharLCD/pull/39
- https://github.com/adafruit/Adafruit_CircuitPython_Hue/pull/6
- https://github.com/adafruit/Adafruit_CircuitPython_MIDI/pull/13
- https://github.com/adafruit/Adafruit_CircuitPython_AdafruitIO/pull/21
- https://github.com/adafruit/Adafruit_CircuitPython_AdafruitIO/pull/20
- https://github.com/adafruit/Adafruit_CircuitPython_NeoPixel/pull/28
- https://github.com/adafruit/Adafruit_CircuitPython_LSM303/pull/11
- https://github.com/adafruit/Adafruit_CircuitPython_MCP230xx/pull/14
- https://github.com/adafruit/Adafruit_CircuitPython_Bitmap_Font/pull/6
- https://github.com/adafruit/Adafruit_CircuitPython_BNO055/pull/30
- https://github.com/adafruit/Adafruit_CircuitPython_BNO055/pull/22
- https://github.com/adafruit/Adafruit_CircuitPython_PyPortal/pull/36
- https://github.com/adafruit/Adafruit_CircuitPython_PyPortal/pull/34
- https://github.com/adafruit/Adafruit_CircuitPython_PyPortal/pull/20
- https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/45
- https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/29
- https://github.com/adafruit/Adafruit_CircuitPython_CircuitPlayground/pull/57
- https://github.com/adafruit/Adafruit_CircuitPython_CircuitPlayground/pull/51
- 10 closed issues by 8 people, 10 opened by 9 people
- 107 open issues
11:03 Hug reports
16:50 @brentru
- @makermelissa for Blinka work
- And a group hug to all!
17:07 @cater (LURKING)
- kattni - for help fixing pypi on MCP230xx (which i broke with a refactor)
- dan - for continued efforts in forums
- and others i'm probably forgetting....so....group hug!
@CGrover (LURKING)
@charlesburnaford (Lurking)
17:31 @danh
- @kattni, @Roy, @MakerMelissa for writing up internal PyCon debriefing
- @MakerMelissa, @ladyada for working on fonts
- Mbgraham in forums, via @cater for noticing that negative HID mouse movements were broken
18:35 @docmollo (lurking)
- @kattni for the one-on-one code review and assistance with the ESP32SPI WiFi manager code I’ve been working on
18:50 @jerryn (LURKING)
- Group hug -- glad to be part of this community
18:58 @joseph
- Group hug - Thanks for being so welcoming everyone and for the help on the Atom plugin!
@kattni
- @dherrada for taking the time to get feedback from classmates on PyCon and the CircuitPython sprints they (and he) participated in, and for providing his own feedback on his experiences.
- @MakerMelissa for providing her feedback on PyCon
- @DanH for reviewing the PyCon notes
- @siddacious for persevering through frustrating board design issues
- @Community Moderators for keeping up with things this weekend. I was unavailable and it was a relief to know I didn’t need to worry about Discord. Thank you for helping to make our Discord server the amazing place that it is!
@KingerNorth
- (LURKING)
@LEDSquibs (Lurking)
@MakerMelissa
- @ladyada for helping me with getting some of the less tested languages for guide
- @pt for helping make the community a better place
- @kattni for helping answering my hundreds of questions
@mikebarela (LURKING)
@Roy (LURKING)
15:30 @siddacious
- @kattni and @sommersoft for PyPi and Travis help
- @kattni for blinka testing help
- @ladyada for giving me an intro to Volcano arcana, and for helping me work through i2c issues with a fussy chip
- @dherrada for continuing to help manage PRs and for taking the initiative to start teaching himself C
- @ladyada for being understanding as I shot myself in the foot several times
16:16 @sommersoft
- @MakerMellisa for the move to fulltime Adafruiter. Congrats!
- @joseph for the Atom package work over the last couple days. Looks nice, and awesome to have additional options for the community.
- Group hug!
@TG-Techie
19:17 Status Updates
32:35 @brentr Last Week:
- New Module: CircuitPython Azure IoT Module - connect your circuitpython device to a Microsoft Azure IoT Hub. Lots of possibilities when you integrate this with Azure’s services like machine learning, data analytics, etc.
- New Guide: Azure IoT with CircuitPython to make a plant monitor
- Non-CircuitPython: The ESP8266 now works with Adafruit IO Arduino without downgrading firmware anymore. This Week:
- Building out a CircuitPython library for the ATECC608 cryptographic coprocessor.
- End goal would be generating a CSR, usable by AzureIoT or maybe Adafruit IO in the future.
- faster/more secure circuitpython IoT - even with CircuitPython_TinyLoRa.
@cater (LURKING)
@CGrover (LURKING)
@charlesburnaford (LURKING)
34:15 @danh
- Fixed HID library issue preventing negative mouse movements due to stricter CircuitPython bytearray value checking.
- Updating frozen libraries to update HID and other libraries.
- Added mechanism for per-language clean builds, needed for large translations.
- Moving BLE advertising data preparation to Python from C.
- Support work for bootloader problems.
- To do:
- Continue BLE work.
- CIrcuitPython variants refactoring: Maybe add flags to distinguish 192KB, 256KB, and full builds. Update documentation to match.
37:03 @docmollo (lurking)
- Based on code review with @kattni on the ESP32SPI library, going to refactor the connect() function into two functions. Due to work and the holiday this weekend, didn’t have time, so will be at least a week or two before I finish all the updates I’m working on.
37:26 @jerryn (LURKING)
- Back from travels - still trying to remember what I was doing before I left.
- Should be re-engaged this week.
37:37 @joseph
- Last couple of days: Atom Plugin
- This week: Holidays, time to revise
- Last couple of weeks: Exams
- Next couple of weeks: More exams
- After that: Summer holidays! Plenty of time to write all sorts of code.
19:57 @kattni
- Last week:
- PyGamer guide
- PyGamer fritzing object
- Moved!
- This week:
- Meeting wrap-up
- MCP9600 guide
- MCP9600 upload CAD files to GitHub
- Test CP lib
- Email… so much email.
- Review cp.org board PRs
- Blog posts for PyCon wrap-up
- Finalise cp.org/libraries and /contributing setup
@kingernorth
- (LURKING)
@LEDSquibs (Lurking)
22:51 @MakerMelissa:
- Last Week
- Typed up my notes for PyCon
- Worked on displaying fonts in more complicated language fonts
- Got my PyBadge Conference Badge guide in moderation
- Finished updating the SSD1331 guide
- Added a couple small image updates to SSD1351 guide
- Added enableDisplay() to ST77xx Arduino Library
- Tested similar functionality on HX8357 Display with Backlight
- Got Orange Pi R1 merged into Blinka Library
- Next Week
- Update Orange Pi guide with Orange Pi R1
- Work on guide for displayio using Breakouts and Shields
- Get CircuitPython Motor Library PR issue fixed
- Test Orange Pi R1 more Thoroughly
- Get enableDisplay() working on remaining Arduino Displays @mikebarela (LURKING)
@Roy (LURKING)
24:56 @siddacious:
- Previously on Law & Order:
- Finished up version 1.0 of BD34 CP and Arduino drivers
- Sent out a board rev for the BD34
- Sent out a board to test a new OLED
- Finished the LPS34HW guide
- Wrote tester code for and designed the tester for the LPS35HW
- Next time on “siddacious does stuff”
- Neopixel connector widgets
- BD34 rev be assembly and driver work
- OLED testing
- Miscellaneous board, driver, and support work.
- Going to NY for the Five Points Festival with my wife, stopping by HQ to say hi
27:00 @sommersoft
- Last Week:
- Circuitpython-build-tools:
- Fixed PyPI deployment issue (that i created).
- Adabot:
- Fixed the non-.py file "missing sensorname" validator. However, there are still some inconsistencies that aren't easily fixed on the repo side:
- Multi-version libraries: e.g.
adafruit_ads1x15has simpletests for different variants. I think the variants are a good thing. I can probably work around it with some regex + slicing…
- Multi-version libraries: e.g.
- Dove into the "release notes documenting proper contributor" issue. Walking the code step by step in a terminal, it produces desired results.
- The issue may have been a one-off, but I can't explain it. Left the issue open for continued monitoring.
- Fixed the non-.py file "missing sensorname" validator. However, there are still some inconsistencies that aren't easily fixed on the repo side:
- Experiment: RosiePi
- Realized I was essentially re-creating the wheel, once I investigated
tests/&tools/cpboard.pyin the core. It was still a fun little exercise. - I may move forward with it, but need to decide if it should live in the core vs external. My overall goal was to include physical testing, which is still not a thing:
- simple example: does
board.Dnset todigitalio->OUT/INactually produce expected behavior, as confirmed by say a MCP3008. - super-duper-optimistic example: does
displayioproduce the expected image as verified by a PiCam & OpenCV/tesseractOCR/etc.
- simple example: does
- Realized I was essentially re-creating the wheel, once I investigated
- Circuitpython-build-tools:
- This Week:
- Experiment: RosiePi
- Study current testing in the core, and try to formulate an approach to use on a RPi and expand CircuitPython's usage to physical testing.
- Look into writing a GitHub App for this. Seems simple enough; just need to work through the Ruby bits. if running this during PR checks would be desired, of course. otherwise...just for fun.
- Experiment: RosiePi
@TG-Techie:
- Last week of school, time to relax with some CP
- Fixes pure CP tricorder that was broken, convinced a friend to try a board
- Figuring out display rotation with locations of objects on the screen
38:36 In The Weeds
@TG-Techie:
- We now have displayio for displays; any talk about a universal touch library? Interested but want to avoid reinventing the wheel
- Sommersoft: Maybe could fall into touchio
- Dan: Touchio is for lower level, more for directly handling pins.
- Charles: Atmel q-touch libs are what was referenced regarding handling touch currently in touchio. Most touch screens already have drivers built in, so they wouldn’t likely work directly with touchio
- TG: Has and idea to abstract turning user interactions into events that can be handled, Dan would like to see a proposal