# CircuitPython Weekly for 12 July 2021

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


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://raw.githubusercontent.com/adafruit/adafruit-circuitpython-weekly-meeting/master/meeting.ical)


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




### CircuitPython Day is 8-6-2021, Set Your Calendars!

8-6-2021 is the Snakiest day of the year and it's also this year's CircuitPython Day!

### CircuitPython and MicroPython – Talk Python Live Stream

On July 8th, the Talk Python Live Stream host Michael Kennedy had guests Scott Shawcroft and Damien George to discuss how MicroPython and CircuitPython are working together to further embed Python onto all the small things - Adafruit Blog and YouTube.
### CircuitPython 7.0.0 Alpha 4 Released
 
CircuitPython 7.0.0-alpha.4, has been released. It is relatively stable, but contains a number of issues still to be addressed for 7.0.0. The Python API’s it presents may change.
Notable additions to 7.0.0 since 6.3.0 include:
 * Support for the CircuitPython development workflow over BLE.
 * Camera support on ESP32S2.
 * The keypad key-scanning module.
 * Run-time customization of USB devices.
 * Merging in of MicroPython fixes and enhancements as of MicroPython 1.16.
 * Simplifications to the RGB status LED codes.
 * A clocking fix for a few samples of RP2040 boards.

### Mu 1.1.0-beta 5 is now out
 
Mu 1.1.0 Beta 5 is now available on their downloads page. It is a beta release so it may contain bugs or unfinished features. Bug reports or feedback via GitHub is solicited. The Mu Team had hoped for a regular (fortnightly) release tempo. Due to the voluntary nature of Mu’s development and because some of the updates in this release were quite challenging, this release is a LOT later than the developers had planned - Mu Blog.

### Python, C and Java all compete for the most popular programming language in TIOBE Index
 
The July TIOBE index shows C, Java, and Python are in a near dead heat for most popular languages - TIOBE and Adafruit Blog.
### 2021 Global IoT Trends Report

Newark reached out to their global customer base with an IoT survey between September 2020 and December 2020, compiling the results into their 2021 Global IoT Trends Report - Newark and Adafruit Blog.

### Sphero 

Now that my Sphero RVR drives to specific coordinates on the floor, I can get my apartment delivery system online for use during quarantine in HCMC. Powered by an Adafruit Metro M4 running CircuitPython and elements of the SDK - Twitter.


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.
## 6:22 State of CircuitPython, Libraries and Blinka
### Overall
* 41 pull requests merged
  * 15 authors - jposada202020, lesamouraipourpre, hexthat, ladyada, kattni, dherrada, dgriswo, gmparis, jepler, PhearZero, deshipu, FoamyGuy, DavePutz, dhalbert, microDev1
  * 12 reviewers - jposada202020, makermelissa, ladyada, kattni, tannewt, dherrada, brentru, jepler, tyomitch, FoamyGuy, dhalbert, microDev1
* 20 closed issues by 8 people, 18 opened by 13 people


### 7:32 Core
* 11 pull requests merged
  * 9 authors - lesamouraipourpre, hexthat, kattni, dgriswo, jepler, deshipu, DavePutz, dhalbert, microDev1
  * 6 reviewers - jepler, kattni, tyomitch, tannewt, dhalbert, microDev1
* 17 open pull requests
  * https://github.com/adafruit/circuitpython/pull/3696 (Open 238 days)
  * https://github.com/adafruit/circuitpython/pull/3730 (Open 234 days)
  * https://github.com/adafruit/circuitpython/pull/3941 (Open 186 days)
  * https://github.com/adafruit/circuitpython/pull/3967 (Open 182 days)
  * https://github.com/adafruit/circuitpython/pull/4088 (Open 163 days)
  * https://github.com/adafruit/circuitpython/pull/4131 (Open 157 days)
  * https://github.com/adafruit/circuitpython/pull/4762 (Open 58 days)
  * https://github.com/adafruit/circuitpython/pull/4793 (Open 52 days)
  * https://github.com/adafruit/circuitpython/pull/4851 (Open 39 days)
  * https://github.com/adafruit/circuitpython/pull/4903 (Open 22 days)
  * https://github.com/adafruit/circuitpython/pull/4907 (Open 19 days)
  * https://github.com/adafruit/circuitpython/pull/4925 (Open 16 days)
  * https://github.com/adafruit/circuitpython/pull/4940 (Open 13 days)
  * https://github.com/adafruit/circuitpython/pull/4961 (Open 9 days)
  * https://github.com/adafruit/circuitpython/pull/4964 (Open 6 days)
  * https://github.com/adafruit/circuitpython/pull/4980 (Open 2 days)
  * https://github.com/adafruit/circuitpython/pull/4987 (Open 0 days)
* 5 closed issues by 4 people, 9 opened by 7 people
* 472 open issues
  * https://github.com/adafruit/circuitpython/issues
* 5 active milestones
  * 6.x.x - Bug Fixes: 0 open issues
  * 7.0.0: 74 open issues
  * Libraries: 15 open issues
  * Long term: 372 open issues
  * Support: 6 open issues
  * 5 issues not assigned a milestone


Overall: Thanks to Dan, 7.0.0-alpha.4 was released last week. Please test it. We’ve been in 7.0.0 alpha phase for a while so we really want to get into bug squashing mode so that we can get 7.0.0 stable and replace 6.3.0.


### 10:57 Libraries
* 28 pull requests merged
  * 6 authors - jposada202020, lesamouraipourpre, gmparis, ladyada, PhearZero, dherrada
  * 8 reviewers - jposada202020, makermelissa, ladyada, tannewt, dherrada, brentru, jepler, FoamyGuy
  * Merged pull requests:
    * https://github.com/adafruit/Adafruit_CircuitPython_DisplayIO_Layout/pull/40 (Days open: 8)
    * https://github.com/adafruit/Adafruit_CircuitPython_DisplayIO_SH1106/pull/4 (Days open: 5)
    * https://github.com/adafruit/Adafruit_CircuitPython_DisplayIO_SSD1305/pull/12 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_SSD1325/pull/11 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_SSD1327/pull/10 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_SSD1331/pull/14 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_SSD1351/pull/16 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_ST7735R/pull/25 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_ST7789/pull/23 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_Gizmo/pull/19 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_ST7735/pull/15 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_HX8357/pull/15 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_ILI9341/pull/27 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_MONSTERM4SK/pull/8 (Days open: 4)
    * https://github.com/adafruit/Adafruit_CircuitPython_PyBadger/pull/45 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_PYOA/pull/23 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_Bundle/pull/325 (Days open: 3)
    * https://github.com/adafruit/Adafruit_CircuitPython_CLUE/pull/45 (Days open: 2)
    * https://github.com/adafruit/Adafruit_CircuitPython_DisplayIO_SSD1306/pull/21 (Days open: 2)
    * https://github.com/adafruit/Adafruit_CircuitPython_turtle/pull/24 (Days open: 2)
    * https://github.com/adafruit/Adafruit_CircuitPython_DisplayIO_SH1107/pull/6 (Days open: 2)
    * https://github.com/adafruit/Adafruit_CircuitPython_CLUE/pull/46 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_Display_Button/pull/32 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_MiniMQTT/pull/84 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_DisplayIO_SH1107/pull/7 (Days open: 1)
    * https://github.com/adafruit/Adafruit_CircuitPython_PortalBase/pull/43 (Days open: 1)
    * https://github.com/adafruit/CircuitPython_Community_Bundle/pull/83 (Days open: 1)
    * https://github.com/adafruit/CircuitPython_Community_Bundle/pull/82 (Days open: 1)
* 12 closed issues by 5 people, 8 opened by 8 people
* https://circuitpython.org/contributing
  * 317 open issues
  * 3 good first issues
  * 47 open pull requests (Oldest: 570, Newest: 1)
Library updates in the last seven days:

**Updated Libraries**

 * [Adafruit_CircuitPython_ProgressBar](https://github.com/adafruit/Adafruit_CircuitPython_ProgressBar)
 * [Adafruit_CircuitPython_CLUE](https://github.com/adafruit/Adafruit_CircuitPython_CLUE)
 * [Adafruit_CircuitPython_Display_Button](https://github.com/adafruit/Adafruit_CircuitPython_Display_Button)
 * [Adafruit_CircuitPython_DisplayIO_Layout](https://github.com/adafruit/Adafruit_CircuitPython_DisplayIO_Layout)
 * [Adafruit_Blinka_Displayio](https://github.com/adafruit/Adafruit_Blinka_Displayio)
 * [CircuitPython_Community_Bundle](https://github.com/adafruit/CircuitPython_Community_Bundle)




Overall: We’re still working through all the currently open PRs, and continuing to try to get through the older ones. It’s great to see all the new contributions to both the Adafruit libraries and the Community Bundle. There have been a number of significant changes to the libraries (and in the core!) that are breaking changes. The plan is to aggregate a list of all the changes and prioritise in what order we should address them, in terms of updating code examples and Learn guides. I will be doing that this week, so we can get started on updating all the relevant code and guides. Thanks again to everyone who has been helping out with this!


### 13:24 Blinka
* 2 pull requests merged
  * 2 authors - lesamouraipourpre, FoamyGuy
  * 1 reviewers - makermelissa
* 3 open pull requests
  * https://github.com/adafruit/Adafruit_Blinka/pull/417 (Open 152 days)
  * https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/175 (Open 26 days)
  * https://github.com/adafruit/Adafruit_Blinka/pull/490 (Open 19 days)
* 3 closed issues by 1 people, 1 opened by 1 people
* 60 open issues
  * https://github.com/adafruit/Adafruit_Blinka/issues
* Piwheels Downloads in the last month: 11166
Number of supported boards: 75


## 14:10 Hug reports
@anecdata (lurking)


18:52 @charlesburnaford (lurking)
* Group Hug to everyone who brought us version 7.0, so far.


19:01 @danh (not at meeting)
* Group hug for everyone contributing to CircuitPython development and library development. I was impressed with the number of contributors to 7.0.0-alpha.4.


@DaveP (lurking)


19:12 @david.glaude (not at meeting)
* Group hug to all involved in 7.0-alpha.4


19:24 @foamyguy (unable to attend today)
* @lesamouriproupre - for looking into an issue around OnDiskBitmap as well as pulling together a list of libraries that will require fixes related to it.
* Group hug 


@jepler
* @danh for the configurable USB descriptor feature in 7 & the next alpha
* Everyone who contributed to alpha.4
* @ladyada for fixing a problem with OLED displays
* @dpgeorge and @jimmo for reviews on the split type objects PR


15:08 @jerryn
* @danh and all involved with getting 7.0-alpha.4 released
* Group hug.


15:27 @kattni
* @jepler for helping me create my first CircuitPython module!
* @danh for doing the 7.0-alpha.4 release, and everyone else involved
* @lesamouraipourpre for putting together a list of Learn code using a deprecated argument as a starting point for addressing the change
* @johnpark for feedback regarding the development of the MacroPad library, testing the code, and getting me setup with examples for the MIDI documentation
* @silvia for their first library PR
* @danh for the fix for the MacroPad display


17:01 @MakerMelissa
* Group Hug


17:17 @tannewt
* @jepler for the string compression improvement and tyomitch for the quick review.
* @jerryn for being a consistently thoughtful contributor to our community. 
* mkennedy and dpgeorge for the good podcast discussion
* Silvia for their first contribution to the libraries with TCS34725 changes
* M_w and tnt for getting CircuitPython going on their open source PyFive chip test source. https://twitter.com/QwertyEmbedded/status/1414131871143784450
## 19:41 Status Updates
@anecdata (lurking)


31:27 @danh (not at meeting)
* Released 7.0.0-alpha.4 last week, with a late fix for display glitches on MacroPad.
* Continuing to debug audio issues on RP2040.


31:48 @foamyguy (unable to attend today)
* Last Week
   * Working on changes related to Group max_size removal
* This week
   * Working on changes and reviews related to OnDiskBitmap pixel_shader


19:59 @jepler
* Last week:
   * Calculator project: Guide Coming Together
   * Space Savings by Splitting Type Objects: WIP
   * Smaller space savings from string compression
   * Immediately spent some of that space on adding `ticks_ms`
   * Worked on the library that will become `adafruit_ticks`
   * Learned enough about USB descriptors to make two descriptors that support NKRO, one of which is also compatible with at least one PC BIOS menu (dell) as well
* This week:
   * Wrapping calculator project
   * Hopefully wrapping type object split
   * “Out of office” on Friday
   * Publishing `adafruit_ticks`? This library will be targeted at pypi as well as circuitpython and I haven’t done that in the bundle yet
   * Making plans for fixing guides that are incompatible between 6.x and 7:
      * ulab
      * OnDiskBitmap
      * ???
* Soon:
   * Working on capturing JPEG images from OV2640 camera


24:10 @jerryn
* Fielded some forum questions in regards RFM69 and RFM9x
   * Need to “scrub” RFM69 comments -- some outdated
   * RFM9x had CRC disabled by default. This is opposite of the RadioHead library used by Arduino.
      * Will bring up “in the weeds”


25:04 @kattni
* Last week:
   * Started the MacroPad library
   * Created the new `rainbow` module in CircuitPython as a new home for `colorwheel()`
   * Removed `colorwheel()` from `_pixelbuf`
* So far today:
   * Finished and PR’d the MacroPad library.
* This week:
   * Rename `rainbow` to `rainbowio` to avoid naming conflicts on PyPI for Blinka
   * Ensure `rainbowio` is working with Blinka.
   * Test and merge an outstanding PR on adafruit_pypixelbuf if possible
   * Sort out renaming `_pixelbuf` and `adafruit_pypixelbuf`
   * Remove `colorwheel()` from adafruit_pypixelbuf in the new adafruit_pixelbuf lib
   * Start putting together a list of major changes in 7x and libraries, and prioritise what needs to be addressed first.


27:47 @MakerMelissa
* Last Week:
   * Worked on Machine Learning Cat Detector guide
* This Week:
   * Finish up guide
   * Work on the WebSerial ESPTool some more


28:05 @tannewt
* Very short week last week. Went camping this weekend too!
* Last week got a serial console on code.circuitpython.org and hooked up usb serial and ble serial to it. Still very rough design.
* This week will be refining it plus bug hunting things in CP. Need to get caught up on mobile work too.
* Finishing up the micro:bit v2 PR


## 32:05 In The Weeds


@jerryn
RFM9x library has CRC disabled by default in contrast to the Arduino RadioHead library that has it enabled by default. If they don’t match, packets are ignored. This can be dealt with by documentation or a change to one of the Libraries. It could be considered a “breaking change” because any existing  code would not be compatible with new code if the defaults are selected. I’m curious how folks suggest dealing with it.  Enabling the CRC is trivial `rfm9x.enable_crc=True`.


33:38 @DaveP


The Pico SDK does not reset the StateMachine program counter when a pio_sm_restart() is called. Micropython has implemented their own program counter reset code during a restart. Which way do we want it to work?
## 35:27 Wrap-Up
Next week the meeting is on the 19th
