# CircuitPython Weekly for February 7, 2022


Video is available [on YouTube](https://youtu.be/iLdMtQ49WBw).


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](https://raw.githubusercontent.com/adafruit/adafruit-circuitpython-weekly-meeting/master/meeting.ical) for use with standard calendar applications and can also be viewed [in your browser](https://open-web-calendar.herokuapp.com/calendar.html?url=https%3A%2F%2Fraw.githubusercontent.com%2Fadafruit%2Fadafruit-circuitpython-weekly-meeting%2Fmain%2Fmeeting.ical&title=CircuitPython%20Meeting%20Schedule&tab=agenda&tabs=month&tabs=agenda).


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.
## Community News
### 03:08 Raspberry Pi OS 64-bit is Out of Beta
Over the past year, Raspberry Pi has been trialling a beta of Raspberry Pi OS 64-bit. Last week it finally came out of beta. - [Raspberry Pi](https://www.raspberrypi.com/news/raspberry-pi-os-64-bit/).


### 03:31 33,000 Members on the Adafruit Discord
The Adafruit Discord community, where we do all our CircuitPython development in the open, reached over 33,000 humans this week. Thank you!  Adafruit believes Discord offers a unique way for Python on hardware folks to connect. Join today at [https://adafru.it/discord](https://adafru.it/discord).
See the announcement post with a chart of the server growth - [Adafruit Blog](https://blog.adafruit.com/2022/02/03/celebrating-over-33000-members-in-the-adafruit-discord-community-adafruit-discord/).
### 04:04 A CircuitPython Pull Request to Add Split Screen Capabilities
kmatch98 has a new PR in (#5954) that exposes the CircuitPython REPL's display group elements, allowing relocation of the REPL and making things like split screens possible without breaking the existing displayio structure - [Twitter](https://twitter.com/CycleMatch/status/1488370312492326918?s=20&t=n-MDQEFS8XHUjtxEpAiVxQ) and [GitHub](https://github.com/adafruit/circuitpython/pull/5954).


### 04:45 Piku: a small command line utility for managing CircuitPython projects
With Piku you can make creating a CircuitPython project, installing packages, deploying, and connecting to a CircuitPython device easy to do from the command line - [Adafruit Forums](https://forums.adafruit.com/viewtopic.php?f=60&t=188036), [PyPI](https://pypi.org/project/piku/) and [GitHub](https://github.com/mraleson/piku).




### 05:10 CircuitPython2022 Wraps Up - Thank You
Scott posts: "[Thank you](https://blog.adafruit.com/2022/02/01/thank-you-for-circuitpython2022/) to the 24 folks who posted for #CircuitPython2022! Thank you for all of the different ideas. I hope that folks collaborate to make these ideas a reality. Thank you to those whose ideas have been guiding principles over the years. We wouldn’t be here without you."
"As Kattni points out in [her #CircuitPython2022 post](https://blog.adafruit.com/2022/02/01/the-circuitpython-community-a-round-up-and-a-look-forward-to-2022/), don’t hesitate to let us know what you’d like to see from CircuitPython and the community throughout this year. Feel free to give us more ideas on the [Adafruit Discord](https://adafru.it/discord), [Adafruit CircuitPython forum](https://forums.adafruit.com/viewforum.php?f=60) and [CircuitPython issue tracker](https://github.com/adafruit/circuitpython/issues)" - [Adafruit Blog](https://blog.adafruit.com/2022/02/01/thank-you-for-circuitpython2022/).


### 06:01 Wordle Game for CLUE
We expect a number of microcontroller ports with similar looks to the New York Times Wordle game. Here is one by Michael Lacock done on an Adafruit CLUE board in CircuitPython 7 with or without a keyboard - [GitHub](https://github.com/MichaelLacock/Wordle_for_CLUE).
### 06:32 KB2040 powered keyboards
Two board concepts that minimize finger movement and use CircuitPython - [reddit](https://www.reddit.com/r/ErgoMechKeyboards/comments/si320r/two_board_concepts_that_minimize_finger_movement/).
A split keyboard with Adafruit KB2040 microcontrollers using PRK firmware based on PicoRuby - [Twitter](https://twitter.com/alg0002/status/1489986823292329986).








### Newsletter Details
The CircuitPython Weekly Newsletter is a CircuitPython community-run newsletter emailed every Tuesday. The complete [archives are here](https://www.adafruitdaily.com/category/circuitpython/). 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](https://github.com/adafruit/circuitpython-weekly-newsletter/tree/gh-pages/_drafts) and [submit a pull request](https://help.github.com/articles/editing-files-in-your-repository/) with the changes. You may also tag a tweet with #CircuitPython on Twitter, or email cpnews@adafruit.com.
## State of CircuitPython, Libraries and Blinka
### 08:10 Overall
* 49 pull requests merged
  * 22 authors - tannewt, kmatch98, dhalbert, fabaff, bergdahl, sgauche, stonehippo, andypiper, jedgarpark, weblate, Neradoc, Life-Imaging-Services, brtchip-tuannguyen, DavePutz, wtuemura, prplz, jepler, EmergReanimator, tekktrik, walshbp, kattni, gamblor21
  * 8 reviewers - tannewt, ladyada, dhalbert, jedgarpark, brentru, FoamyGuy, askpatrickw, kattni
* 30 closed issues by 11 people, 25 opened by 19 people


### 09:23 Core
* 21 pull requests merged
  * 16 authors - tannewt, kmatch98, dhalbert, bergdahl, sgauche, andypiper, weblate, Neradoc, Life-Imaging-Services, DavePutz, wtuemura, prplz, jepler, EmergReanimator, walshbp, gamblor21
  * 3 reviewers - tannewt, ladyada, dhalbert
* 8 open pull requests
  * https://github.com/adafruit/circuitpython/pull/5298 (Open 156 days)
  * https://github.com/adafruit/circuitpython/pull/5352 (Open 144 days)
  * https://github.com/adafruit/circuitpython/pull/5491 (Open 108 days)
  * https://github.com/adafruit/circuitpython/pull/5781 (Open 42 days)
  * https://github.com/adafruit/circuitpython/pull/5852 (Open 24 days)
  * https://github.com/adafruit/circuitpython/pull/5908 (Open 15 days)
  * https://github.com/adafruit/circuitpython/pull/5963 (Open 5 days)
  * https://github.com/adafruit/circuitpython/pull/5979 (Open 3 days)
* 14 closed issues by 6 people, 11 opened by 10 people
* 498 open issues
  * https://github.com/adafruit/circuitpython/issues
* 6 active milestones
  * 7.2.0: 11 open issues
  * 7.x.x: 23 open issues
  * 8.0.0: 8 open issues
  * Libraries: 18 open issues
  * Long term: 433 open issues
  * Support: 7 open issues
  * -2 issues not assigned a milestone


* Core download stats available at https://circuitpython.org/stats


### 10:44 Libraries
* 28 pull requests merged
  * 10 authors - tannewt, brtchip-tuannguyen, fabaff, jepler, tekktrik, stonehippo, jedgarpark, Neradoc, kattni, gamblor21
  * 8 reviewers - tannewt, ladyada, dhalbert, jedgarpark, brentru, FoamyGuy, askpatrickw, kattni
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_VC0706/pull/20 (Days open: 255)
    * https://github.com/adafruit/Adafruit_CircuitPython_HT16K33/pull/96 (Days open: 28)
    * https://github.com/adafruit/Adafruit_CircuitPython_IS31FL3741/pull/14 (Days open: 15)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE_Cycling_Speed_and_Cadence/pull/9 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MiniMQTT/pull/100 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Pixie/pull/21 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_seesaw/pull/95 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_seesaw/pull/94 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PIOASM/pull/37 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_NeoKey/pull/5 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PCT2075/pull/20 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MPU6050/pull/23 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE_Heart_Rate/pull/16 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_AWS_IOT/pull/18 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE_Adafruit/pull/18 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_datetime/pull/16 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE_LYWSD03MMC/pull/4 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE/pull/156 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE/pull/154 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BLE/pull/155 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BitbangIO/pull/22 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_AS7341/pull/22 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_BMP280/pull/35 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Crickit/pull/33 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_CCS811/pull/49 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_CCS811/pull/48 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_HT16K33/pull/97 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_VCNL4010/pull/22 (Days open: 1)
  * 21 open pull requests (Oldest: 496, Newest: 1)
* 16 closed issues by 7 people, 13 opened by 10 people
  * 635 open issues
  * 227 good first issues
* https://circuitpython.org/contributing
Library updates in the last seven days:
**New Libraries**
 * [Adafruit_CircuitPython_HTTPServer](https://github.com/adafruit/Adafruit_CircuitPython_HTTPServer)
**Updated Libraries**
* Too Many to List See the full list here: https://adafruit-circuit-python.s3.amazonaws.com/adabot/bin/reports/circuitpython_library_report_20220207.txt


### 13:04 Blinka
* 0 pull requests merged
  * 0 authors - 
  * 0 reviewers - 
* 5 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka/pull/417 (Open 362 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/496 (Open 196 days)
  * https://github.com/adafruit/Adafruit_Blinka_bleio/pull/40 (Open 122 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/201 (Open 62 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/540 (Open 31 days)
* 0 closed issues by 0 people, 1 opened by 1 people
* 70 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* Piwheels Downloads in the last month: 17187
Number of supported boards: 87


## Hug reports
@foamyguy (hosting) 14:14 
* @Scott for discovering and sharing a direct from NASA URL for James Webb Telescope data formatted as JSON
* @Kattni for helping me get prepared to run this meeting.
* @neradoc and @anecdata for testing and helping to troubleshoot an issue fetching data from the NASA URL
* @Kmatch for working on a way to split the screen between serial / REPL output and displayio. 


@danh 15:16 
* @foamyguy for running his first meeting
* @DavePutz for tracking down a PIO issue
* @Life-Imaging-Services for a great first PR: adding `binascii.crc32()` without dragging in uzlib
* @Neradoc for adding `board.STEMMA_I2C()` to a lot of boards.


@jepler 16:19 
* @foamyguy for being meeting host & generally stepping up on all things CircuitPython
* @jwfmcclain on github for bringing a really interesting bug report about timekeeping on samd51
* Noe & Pedro for the 3D models of Adafruit products, one came in handy this week-end
* @kattni for providing some slides & outlines for intro-to-circuitpython presentations
* Group hug


@jerryn 17:00 
* Group hug!


@kattni 17:08 
* @cater and @Neradoc for helping me get `enumerate()` going in my examples when Pylint complained
* @Neradoc for adding `STEMMA_I2C()` and `STEMMA_I2C1()` to all applicable boards
* @foamyguy for running this meeting for the first time!
* @tekktrik for figuring out how to automate fixing a library README blunder I caused
* Group hug!


@kmatch 19:09 
* @foamyguy for the weekend stream on the Winamp player
* @tannewt for code suggestions and @foamyguy for encouragement and the stream on the splitscreen REPL
* @EdKeyes and @madbodger for help finding specs on a TFT display
* @Gamblor for a lead on using the keyboard input library for converting touchscreen gestures (tap, long press, etc)


@makermelissa 19:56 
* @foamyguy for running his first meeting
* Group hug


@mark(gamblor) [ missing today ]
* @tannewt for finishing all the reviews for my IS31 PR that’s finally done and pointing me to some getting started with GDB info
* @kattni for helping set me up to write some instructions on how to use it
* @foamyguy for being a meeting host


@tammymakesthings 21:03 
* @mraleson for creating the piku tool, which solves some of the challenges I’ve had in my own CircuitPython development workflow
* The Adafruit shipping/logistics folks for getting some sensor boards and stuff to me amazingly quickly in spite of the bananacrackers weather on the East coast this past week
* The CircuitPython community, for being amazing and making “community” so much more than just an empty platitude


@tannewt 21:39 
* @foamyguy for joining the meeting host rotation
* @kattni for getting @foamyguy all setup
* @scooter for digging into CircuitPython on the STM32


@tekktrik [not present] 22:23 
* @foamyguy and @neradoc for help debug an issue with the HT16K22 pull request for display custom characters on seven segment displays
* Group hug!


@v923z 22:48 
* @danh for a lengthy discussion on setting up an automated firmware compilation system
* @jepler for review ulab code, and catching a number of errors
## Status Updates 
@foamyguy (host)
* Finish up the bulk of the functionality for the Winamp project code. Working on this guide for it this week.
* Continuing PR testing and reviews. First time using a camera with CircuitPython this week  to test out motion sensing capabilities of VC0706 camera.
* Streamed some displayio basics using the new split screen functionality on Thursday.
* Absorbing everything needed to run this meeting.
* Try to troubleshoot SSL error fetching Webb Telescope data from NASA URL.


@danh 26:22 
* Fixed ESP32-S2 I2C problems by adding a combined I2C write/read common-hal operation.
* Fixed board default device update that was causing crashes on SAMD.
* Wrote a simple web server library. Works on ESP32-S2, and also works in CPython.
* Starting on a simple async web client library. It appears the `asks` library, an async version of requests, is a good starting place.
* Continuing to fix bugs for 7.x.
* FIgure out when to make the 7.2.0-alpha.2 release.


@jepler 29:06 
* Last week:
   * Floppies & PIO somehow took all week and still isn’t wrapped
      * Rp2040 reading code with pio is working in arduino, but needs tidying
   * One reason is that I spent a lot of time on a silly 3d printing project
* This week:
   * Really wrapping RP2040 floppy reading & writing with PIO this week?
* Coming weeks:
   * I’ve been asked to speak at an upcoming hybrid event hosted by the Dublin Linux Users Group, details to come. 


@jerryn 30:16 
* Responded to Forum question about using rfm9x library to communicate to arduino-LoRa library
   * I had only used Radiohead in the past
   * Arduino-LoRa  works ok with default settings - you have to create the header manually. It just sends a string of bytes without a specific header.
   * The Forum user wanted to use a non-default setting for spreading factor and it was not working.  All of the CP and RadioHead examples use SF=7.
   * Looks like the CP library is not correctly handling all spreading factors -especially 6, 11 and 12 need special handling. Trying to understand and will create a PR when I succeed.
* Tried RaspiOS 64 bit version with Blinka
   * PulseIn needs minor change to install the libgpiod_pulsein64 lib. Filed issue. It’s an easy thing to fix, just not sure how to do it for a PR.
   * With the file in place I was able to run the dht_simpletest with a dht22.
* Tried adding an ai-thinker-esp-01S (esp8266 with AT firmware) to a Maker-Pi-Pico board
   * It actually works! There is a demo using the  ESP_AT_CONTROL.
      * I had not tried using it a a long time.
      * THe Maker-Pi-Pico boards is really a nice tool.


@kattni 34:53 
* Last week:
   * Finished up my CP2022 post - https://blog.adafruit.com/2022/02/01/the-circuitpython-community-a-round-up-and-a-look-forward-to-2022/
   * Published the Arcade QT guide
   * Ran into issues with Arduino with the Arcade QT which led to a lot of troubleshooting
   * Added content for the upcoming circuitpython.org/start
   * Started the STEMMA QT rev update to the guide for the HT16K33 7-segment LED backpack
* This week:
   * Update the ADXL345 board files on GitHub and in the guide
   * Make sure the Arcade QT plays nice with a Metro (Arduino)
   * Continue on the STEMMA QT rev update for the LED backpack
   * Create some Learn groups in the Adafruit Learn System
   * Get content up on circuitpython.org/trademarks
   * QT updates for MCP4725 guide etc.
   * Guide for the ADXL375
   * DotStar status LED template
   * asyncio template
   * Possibly get my README blunder fixed up with Tekktrik’s script


@kmatch 38:51 
Last week: 
* Finalized PR to allow moving and resizing the REPL displayio Group
* Found and debugged a minor issue in display_text with word wrapping
* Learned about some challenges of re-using TFT displays by tearing down a conference room scheduler touch display <https://hackaday.io/project/183895-crestron-tsw-732-teardown>
* Found a multitouch touchscreen for experimentation (uses a Focal Tech FT5406 touch controller)
This week:
* Submit a new circuitpython_org library for a textBox widget with vertical scrolling
* Experiment with touch screen responses and data visualization. Maybe make a Focal Tech FT5x06 library (interrupts?)


@makermelissa 40:48 
* Last week:
   * Worked on porting LittleFS to JavaScript
   * Mostly debugging errors at this point
   * Now have an image being generated which has its files extractable
* This week:
   * Finish fixing the final bugs in LittleFS
* Coming weeks:
   * Also speaking at Dublin Linux Users Group with Jeff


@tammyamkesthings 41:32 
* Last week:
   * Contributed a PR to @mraleson’s “piku” CPY development tool to add macOS support to the tool.
   * Creating a little helper script to probe the USB bus and set the Blinka environment variables based on which board is actually present on the system.
* Next week:
   * Finish my helper script and share it
   * Look for more places to contribute both to the core and the libraries
   * Hopefully doing my first stream on Twitch (twitch.tv/tammymakesthings) focusing on microcontrollers, CircuitPython, and hardware hacking/making


@tannewt 42:54 
* Last week
   * Wrapped up #circuitpython2022
   * working on getting GATT client going.
      * Got service discovery working
      * Got connecting working
      * Got Characteristic buffer working
* Switched to a new DIY keyboard of my own. Running my custom circuitpython code. Trying not to get tooooo distracted perfecting it
* This week
   * Get PacketBuffer work
   * Get PR out for review
   * Start on dynamic services going in NimBLE


@tekktrik [not present] 44:44 
* Last week:
   * Worked on script for fixing library repo READMEs
   * Working on some more type annotation PRs
   * Submitted PR for making touchpads iterable for CircuitPlayground, also allows to deinit them as needed which is a bonus
   * Submitted PR for adding examples on pausing, resuming, and cycling LED animations using push buttons
* This week:
   * Some additional follow through on other PRs that merged this past week
   * More type annotations and anything else available in the Open Issues!


@v923z 45:37 
* Last two weeks:
   * Implemented a number of file IO features in ulab, fixed an incompatibility issue
* Coming weeks:
   * Rolling out ulab version 5.0, trying to clean up documentation
## In The Weeds 48:52 
@foamyguy  48:58 
Anyone with SSL / HTTP request knowledge interested in helping to troubleshoot the “SSL handshake error” that we receive in CircuitPython if we attempt to fetch data from: 
https://jwst.nasa.gov/content/webbLaunch/flightCurrentState2.0.json?unique=1643741752388




More info discussed in #help-with around here: https://discord.com/channels/327254708534116352/537365702651150357/938245775526355015


We’ve tried both ESP32-S2 based devices as well as ESP32SPI Airlift connections and had no luck with either.


@kattni 51:59 - (as suggested previously by @jepler) Consider updating the description on the “Long Term” milestone on the core to be something aligned with “While these issues are not a priority for Adafruit, we would absolutely love to have the community pick them up.” Thoughts?


@kattni 53:02 - As discussed in my CP2022 post, I want to see us do a call for input from the community more than once per year. I feel that this will help keep the community more involved with the evolution of CircuitPython versus one time per year. Sometime towards the end of April / beginning of May, and for CircuitPython Day (August) seems like a good place to start. The other two do not need to be as involved as the New Year call, and no one should feel obligated to respond to any of them. Thoughts? 


## Wrap-Up