Skip to content

Latest commit

 

History

History
400 lines (305 loc) · 24.4 KB

File metadata and controls

400 lines (305 loc) · 24.4 KB

CircuitPython Weekly Meeting for February 13, 2023

Video is available on YouTube.

Join here for the chat all week: http://adafru.it/discord.

The CircuitPython 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. Meeting times are also available in iCal format for use with standard calendar applications and can also be viewed in your browser.

If you want to be able to participate in the meeting by speaking, you will need to be added to the @circuitpythonistas role on Discord. Please ask any one of the moderators or admins to add you if you’d like to join.

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:00 Community News

3:20 The Raspberry Pi Pico Software Developer Kit Version 1.5.0 Released

The official C++ Raspberry Pi Pico Software Developer Kit Version 1.5.0 has been released. While there are many, many fixes and enhancements, the standout is Bluetooth support for the Raspberry Pi Pico W - GitHub.

Per Tom's Hardware, "With Bluetooth support, the Pico W can be used to create a wireless mouse, wireless keyboard or other peripheral (Bluetooth audio does not appear to be supported). So you can just imagine creating your own DIY mouse jiggler, but operating over Bluetooth instead of USB."

The CircuitPython development team states this will allow CircuitPython to also support Pico W Bluetooth but no estimate when this may happen. At the moment, MicroPython also does not support Bluetooth for the Pico W but it is also likely in the future.

4:11 Tulip is a Complete Computer Running MicroPython

The Tulip Creative Computer (aka Tulip, aka Tulip CC) is a self contained portable creative computer, with a display and keyboard and sound. It boots instantaneously into a MicroPython prompt. Tulip is not a shell on top of another operating system. The entire system is dedicated to code, the display and sound, running in real time, on specialized hardware - GitHub.

You can build your own Tulip CC for about $25 plus the cost of a display ($50) and USB keyboard. The hardware for revision 4 of Tulip CC is based on the ESP32-S3 dual core microcontroller running at 240MHz. This single inexpensive chip can support all of Tulip's functionality at low power use. It can last on any USB battery pack or LiPo battery for many hours. The display we use is a 10.1" 1024 x 600 RGB dot clock color LCD with capacitive touch support. Tulip's sound system is a full featured 32-voice synthesizer with a stereo line-out / headphone jack. You can use speakers or other connectors instead.

5:26 KiCad Version 7.0.0 Released

The KiCad project is proud to announce the release of version 7.0.0. KiCad 7 is a significant upgrade from KiCad 6, and comes with a number of exciting new features as well as improvements to existing features - Adafruit Blog and KiCad. Also in KiCad news, The KiCad to Unicode Renderer takes KiCad source files and translates them to unicode text drawings - GitHub.

6:00 Embedded.fm Interviews Adafruit's Liz Clark

In the latest embedded.fm podcast #442, Elecia & Christopher White interview Liz Clark, who is on the CircuitPython team at Adafruit on "I do like musical robots". Liz speaks on MIDI, music, and tutorials - embedded.fm and transcript.

6:32 MicroPython Talks from FOSDEM Posted

Two talks relating to MicroPython have been posted to the web. Wouter van Ooijen presented an introduction to MicroPython - fosdem.org.

Mat Booth presented Realtime 3D Graphics on a MicroPython ESP32 - Hacking the EMFCamp Conference Badge - fosdem.org.

7:10 Newsletter Details

The CircuitPython Weekly Newsletter is a CircuitPython community-run newsletter emailed every Tuesday. The complete archives are here. It highlights the latest Python on hardware related news from around the web including CircuitPython, Python and MicroPython developments. To contribute your own news or project, edit next week's draft on GitHub and submit a pull request with the changes. You may also tag a tweet with #CircuitPython on Twitter, or email cpnews@adafruit.com.

8:06 State of CircuitPython, Libraries and Blinka

This report contains information from the previous seven days. Any changes (PRs merged, etc.) made today are not included in this report.

8:22 Overall

  • 20 pull requests merged
    • 11 authors - tekktrik, jepler, tlyu, wgroeneveld, tcfranks, FoamyGuy, gneverov, jposada202020, matemaciek, Neradoc, todbot
    • 8 reviewers - MicroDev1, tekktrik, gamblor21, tannewt, dhalbert, FoamyGuy, makermelissa, jposada202020
  • 14 closed issues by 9 people, 18 opened by 16 people

9:06 Core

10:38 Libraries (please read; Kattni missing meeting)

Library PyPI Weekly Download Stats

  • Total Library Stats
    • 129793 PyPI downloads over 306 libraries
  • Top 10 Libraries by PyPI Downloads
    • Adafruit CircuitPython BusDevice (adafruit-circuitpython-busdevice): 18479
    • Adafruit CircuitPython Requests (adafruit-circuitpython-requests): 17570
    • Adafruit CircuitPython Register (adafruit-circuitpython-register): 1724
    • Adafruit CircuitPython NeoPixel (adafruit-circuitpython-neopixel): 1482
    • Adafruit CircuitPython Motor (adafruit-circuitpython-motor): 1385
    • Adafruit CircuitPython RGB Display (adafruit-circuitpython-rgb-display): 1037
    • Adafruit CircuitPython DHT (adafruit-circuitpython-dht): 1001
    • Adafruit CircuitPython MCP230xx (adafruit-circuitpython-mcp230xx): 982
    • Adafruit CircuitPython DisplayIO Layout (adafruit-circuitpython-displayio-layout): 957
    • Adafruit CircuitPython PCA9685 (adafruit-circuitpython-pca9685): 926

Library updates in the last seven days:

13:26 Blinka

14:36 Hug reports

15:05 @tannewt (host)

  • @ladyada, @cater, @retiredwizard, @neradoc, @jposada202020 for testing pysigrok.
  • @danh for 8.0.0 release and managing 8.0.x. It’s neat to see new faces trying 8.0.
  • KiCad team for 7.0! I’m excited to try it. Always amazed at how much better it is the next time I use it.
  • @Neradoc for the I2CDisplay pin in use fix.

15:40 @CGrover (text only)

  • @JoseDavid/@jposada202020(github) for submitting a superb example for the ColorFader helper in the Community Bundle.
  • @Mark(Gamblor) for the work on animated GIFs and the potential for displayio performance improvements.
  • @foamyguy and @JohnPark for being willing and enthusiastic to stream live. Always something new to discover and apply.
  • @okyeron for suggesting a rudeness-eliminator circuit design for pesky TRS MIDI inputs; no more wondering if that input cable is wired for TYPE A or TYPE B polarity.
  • @tekktrik for the help with the CI for my nineteen Community Bundle repos. They submitted an individual pull request for each repo to update and improve the CI. Certainly above and beyond!
  • @danh and the team+community for the 8.0.0 release.

16:45 @danh

  • @gneverov for asyncio discussions and work, and for PR’d fixes
  • @Neradoc for two core fixes
  • @jepler for two quick fixes
  • @tannewt for pysigrok work

17:34 @david.glaude (not present)

  • Group Hug to everyone behind release 8.0 (sound like group Hug to me)

17:48 @DJDevon3

  • @Sillyworld & @Tannewt for sending me down a rabbit hole of diode matrix and multiplexer PCB designs this week due to your helpful advice from last week’s meeting.
  • @MarkGamblor & @FoamyGuy for teaming up to work on animated gif support. It’s been a treat to watch the progress unfold.
  • @LizClark for the awesome Octoprint guide. The way Noe showed it working on 3D hangouts was extremely impressive. I can’t wait to dive into Octoprint & MQTT stuff using your guide.
  • @Todbot for a nice conversation this week. Your guidance is very appreciated and I have a better sense of direction with my future PCB designs.
  • @CP Developers for an 8.0 release and @Tannewt for hosting the meeting.

19:08 @foamyguy

  • @tekktrik for improving the CI infrastructure and helping community members reap the benefits in their libraries
  • @Markgamblor for working on GIF support for displayio
  • @tannewt for working on bangle.js device and multi-color eink support recently

19:55 @jepler

  • Liz, for help already with download page items & fritzing part for guide .. and who I’m about to ask for help again with organizing the ov5640 product guide :)
  • @Gneverov for a video chat last week. (They’re very motivated to improve async, I’m excited)
  • Gelsrc for an issue report against the core with all the info I needed

20:33 @Jose David(text only)

  • @Tannewt for the work on pysigrok.
  • @Mark for adding the gif support
  • @todbot for pathtopoint class for rendering svg points in circuitpython. And with this principle create a piechart.

20:57 @kattni (missing meeting)

  • @blitzcitydiy for helping out with the Arduino bits in a guide I’m writing, and one I updated
  • The other hosts of this meeting for covering for me for a few months when I needed it.
  • @todbot for helping me figure out amp to volt math, for help sorting out how many LEDs I need for a specific project, and the hilarity that ensued.
  • @AnneB for always being flexible about my weekly newsletter contributions
  • @tekktrik for a lovely chat, asking to discuss adding issue templates to the libraries, and taking that task on.
  • Folks I forgot because my memory isn’t great lately.
  • Group hug!

21:43 @makermelissa

  • Group Hug

22:02 @Mark(gamblor) [ lurking ]

  • @Foamyguy for finding an alignment bug in the GIF support and testing the PR out
  • @jepler for the TileGrid optimization PR that was eventually closed. Filled in some knowledge gaps I had.

22:23 @MicroDev:

  • Group Hug!

22:33 @tekktrik (text only)

  • @danh, @makermelissa, @tannewt, @jelper, and @MicroDev for feedback on recent PRs
  • @kattni for a good discussion regarding bug report templates for the libraries
  • Group hug!

22:51 @todbot (text only)

  • hug report to @kattni for convincing me to attend weekly CircuitPython meeting!

23:04 Status Updates

23:36 @tannewt (host)

  • Wrapping up pysigrok work for the moment.
    • Add analog support.
    • Added support for skipped digital channels. (Will still slow down the capture rate though.)
    • Reworked data output so it can include raw logic wave forms and decoder output.
    • Added VCD output support. Useful for gtkwave viewing.
    • Added wavedrom support. Supporting syncing the diagram to a clock signal would make it more compact.
  • Need to take a renewed look at the Bangle.js 2 PR and get it building for everything.
  • Next, picking up the iMX and working on additional things.

25:47 @CGrover (text only)

  • After nine fully-refactored revisions, the Precision VCO PCB is off to OSHPark and OSH Stencils. I guess it’ll be safe to upgrade to KiCAD 7.0 now.
  • The AD5293 10-bit digital potentiometer used in the VCO module added two more Eurorack module designs to the list: a dual ADSR with presets and a Vactrol simulator with neon, LED, incandescent, and custom response curves.
  • Unrelated observation: Leaf blower/vacuum mulching impellers don’t last forever and can fail with gusto.

26:37 @danh

  • Determined there is not a BOOTPROT problem with the SAMD21 UF2 bootloader updater. A user was having trouble. However, it waits 8 seconds before finishing its work, which is unnecessary, and causes people to reset before it’s finished. Will fix that.
  • Implemented brownout protection for SAMD21 in UF2 bootloader (was already done for SAMD51). Tested. NeoPixel is staying red for some reason – have to check that. Will pass it on to leafon (forum user) to test.
  • Implemented safemode.py. Works fine; writing up PR now. Reworked and simplified different safemode states, because now they are exposed. safemode.py can’t do sleep right now: all the sleep handling is only in code.py. Can only reset or not.
  • Could do a CircuitPython 8.0.1 soon, most important fix is Scorpio drive strength.

29:40 @david.glaude (not present)

  • (previously) tested PyLeap from android to CPB and CLUE (where do I report issues/ideas)
  • Upgrading 10+ boards/feathers to 8.0 (including libraries)
  • Update mouse jiggler with Macropad https://gist.github.com/dglaude/ef325471aa3a7ae22cab766aaa62fefb special feature:
    • Stealth mode (only visible as a mouse)
    • "Octogonal" edge size is control by the rotary encoder (can even change the rotating direction by going negative)
  • Non CP: I recovered my son (previous) gamer PC (RTX 2060) to try installing Ubuntu + NVIDIA driver + Stable Diffusion + UI or web interface … (I failed at NVIDIA driver, so I will restart from scratch)

30:56 @DJDevon3

  • Excitedly waiting for the arrival of a Raspberry Pi 4 so I can start my Octoprint & MQTT journey.
  • Started designing an enclosure for an old 720p Logitech C510 webcam which I took apart and lost the housing for a decade ago. 1st prototype snap fit together so well I had to use a razor blade to separate it. Live & Learn. The 2nd prototype now has a slot for a screwdriver to easily pry the halves apart. Added a ¼”-20 threaded standard camera screw mount which the original never had. Now I can repurpose that old webcam for Octoprint and mount it to the printer. 🙂
  • Finished printing a nice dichromatic blue/green enclosure for FoamyGuy’s TR-Cowbell. I really appreciate his help on the project so I want to ensure he receives a nice enclosure for his efforts.
  • Discussed it with FoamyGuy and neither of us have seen any evidence of errant behavior from the MCP23017 chips used in the TR-Cowbell as described in Microchips recent product notification. Because it uses all 8 inputs per chip I cannot take the chance with future designs. Already started on a diode matrix design which eliminates 1 of the multiplexers.
  • If any TR-Cowbell v1.2 owner experiences any issues with failed step switch reads requiring you press a switch multiple times please contact me.

34:01 @foamyguy

  • Last week
    • Working on argument validation for displayio classes in the core
    • Trying out the early version of GIF support
    • Library PR testing: Dotstar, HTTPServer and a few others
  • This week
    • PR Reviews and testing, ethernet, displayio layout, minimqtt so far today. More in the list for this afternoon
    • Test out the latest version of GIF support
    • Start looking into the multi-color eink support

35:26 @jepler

  • Last week:
    • Fixed slightly obscure crashing bug in CP8.0.0
    • Incorporated Phil B’s fix for scorpio usb flakiness in CP
    • Working on ov5640 product guide
  • This week:
    • Finishing ov5640 product guide
    • Hopefully something else fun
    • Very much want to print the octoprint project that liz did

36:28 @Jose David(text only)

  • Last week:
    • Small documentations improvements
    • Working in some Circuitpython personal libraries
    • Work on an example for the ColorFader community library. This library allows you to systematically fade your chosen color.
  • This week:
    • Continue my community libraries discovery
    • Other small documentations improvements

37:00 @kattni (missing meeting)

  • Last week:
    • Through much of the ESP32-S2 Reverse TFT Feather guide
    • Updated the Feather ESP32-S3 guide to reflect the change in battery monitor chip
    • Reviewed Liz’s guide
    • Met with Alec to get him going on getting GitHub issue templates on the library repos (as in the core)
  • This week:
    • Continue Reverse TFT ESP32-S2 Feather guide
    • Create Fritzing object and PrettyPins for Reverse TFT ESP32-S3 Feather
  • Elsewhere:
    • Timelapse is still going well, and the plant is definitely changing.
    • Building an LED grow light for new plants. Researched it, and, white DotStars and the red in the RGB DotStars are the proper spectrum and wavelength, respectively, for growing plants. Decided to build my own.

37:53 @makermelissa

  • Mostly focused on the CircuitPython Installer
    • I finished up the UF2 copy step, which sounds easy, but between making use of the File System Access API and showing copy progress, it made this step a bit trickier.
    • Finished working on incorporating the repl library I made
    • Currently working on getting user credentials and writing/reading/parsing the settings.toml file via the repl functioning
  • Fixed a few bugs in the CircuitPython Code Editor

38:45 @Mark(gamblor) [ lurking ]

  • Animated GIF work is almost ready to leave draft status, plan is for this week
  • Next up want to look at displayio to see what opportunities may exist for optimizations.

39:02 @MicroDev:

  • CI Stuff

39:43 @tekktrik (text only)

  • Last week
    • Started drafting issues templates for the libraries, similar to the ones used in the core
    • Submitted final remaining PRs to fix CI deprecation
      • Thank you again to everyone who has supported this - this will make the June 1st deprecation date of Node.js 12 for Actions runners much less impactful!
    • A few PR reviews
    • Helped @CGrover update all of their libraries to use the library CI composite actions since they were having issues with the CI regarding releases.
    • Started a repository for documenting CI issues and their fixes - hoping to add information here over time, starting with recent learnings.
  • This week
    • Going away for the weekend, so not expecting to start anything new

40:38 In The Weeds

41:15 @Mark(gamblor) [hoping to be around for this, ask before reading]

  • Animated GIF support - which boards should it be on.
  • The support now exists in gifio which was only enabled on boards with camera support. I enabled it on any full build boards for now, but it also pulls in GifWriter. I do not think there is a problem with that but wanted to ask.

43:48 @MicroDev:

  • Skip translation builds?
  • Defork CP?

53:69

  • Defork circuitpython from micropython

1:02:30 Wrap-Up

Next week’s meeting is on Tuesday the 21st due to President’s day here in the US.