Daily tips and tricks from the experts at Adafruit!
View this email in your browser

View this email in your browser. Warning: Flashing Imagery

Welcome to the latest Python on Microcontrollers newsletter! As the Raspberry Pi stock offering gets closer, the announcements keep coming. This week includes a Raspberry Pi bundle of their PCIe HAT and an AI board. I’m encouraged, even with school out, that the number of projects being presented is as high as ever. Hopefully that will continue, as using Python on hardware is a fabulous way to develop – Anne Barela, Editor

We’re on Discord, Twitter, and for past newsletters – view them all here. If you’re reading this on the web, subscribe here. Here’s the news this week:

Raspberry Pi’s New $70 AI Hailo Kit

Raspberry Pi AI

Raspberry Pi targets Edge AI through a partnership with Hailo for the Raspberry Pi AI Kit – Hackster.io and PCmag.

“The kit pairs the buyer’s existing Raspberry Pi 5, the newest and most powerful model in the popular single-board computer family, with a Hailo-8L M.2 accelerator capable of delivering 13 tera-operations per second (TOPS) of minimum-precision compute for machine learning and artificial intelligence workloads. The two devices are mated using the newly-launched Raspberry Pi M.2 HAT+, which offers a PCI Express M.2 slot compatible with the accelerator and connects over the Raspberry Pi 5’s single externally-accessible PCIe Gen. 2 lane.”

Raspberry Pi AI Kit Review: Brainiac (3.5 stars) – Tom’s Hardware.

Jeff Geerling tests Raspberry Pi’s AI kit – 13 TOPS for $70 – Jeff Geerling and YouTube.

Is the new Raspberry Pi AI Kit better than Google Coral?

Is the new Raspberry Pi AI Kit better than Google Coral? – YouTube.

POG: A KMK GUI, Layout Editor, Keymap Editor, and Flashing Utility

POG

POG guides you through the setup of your KMK CircuitPython firmware on compatible keyboards. A fully working custom firmware takes only minutes – GitHub, Documentation and YouTube.

New MicroPython In-Browser Integrated Development Environment (IDE)

MicroPython In-Browser IDE

Volodymyr Shymanskyy has created a MicroPython IDE that works directly in the browser using WebSerial & WebUSB: Viper IDE – GitHub and Try It, via X.

A PyCon US 2024 Recap

PyCon US 2024 Recap

Katherine Michel provides a summary of the things seen at the recently concluded PyCon US 2024 – GitHub.

Reprogramming 80s BASIC Retro Games in MicroPython

Reprogramming 80s BASIC Retro Games in MicroPython

Kevin McAleer translates some 80s Retro games into MicroPython and runs them on a microcontroller – YouTube.

Raspberrry Pi Teams with Dolphin Design for More Power-Efficient Chips

Raspberrry Pi Teams with Dolphin Design for More Power-Efficient Chips

Future Raspberry Pi devices could make strides in energy efficiency, thanks to a partnership with Dolphin Design on new power management capabilities — to be implemented on Taiwan Semiconductors (TSMC) 40nm process – hackster.io.

“We are excited to work with Dolphin Design to bring forward chips that not only meet the high standards of performance and reliability expected by our users, but also push the boundaries of power efficiency,” says Raspberry Pi’s chief technology officer James Adams.

This Week’s Python Streams

Python Streams

Python on Hardware is all about building a cooperative ecosphere which allows contributions to be valued and to grow knowledge. Below are the streams within the last week focusing on the community.

CircuitPython Deep Dive Stream

Deep Dive

Last Friday, Scott streamed work on ESP32-C6 Deep Sleep.

You can see the latest video and past videos on the Adafruit YouTube channel under the Deep Dive playlist – YouTube.

CircuitPython Parsec

CircuitPython Parsec

John Park’s CircuitPython Parsec this week is on the built-in Help function – Adafruit Blog and YouTube.

Catch all the episodes in the YouTube playlist.

CircuitPython Weekly Meeting

CircuitPython Weekly Meeting for June 03, 2024 (notes) on YouTube.

Project of the Week: Space Invaders on NeoPixels using CircuitPython

Space Invaders on Neopixels using CircuitPython

Djair Guilherme has created a Space Invaders game using NeoPixels programmed in CircuitPython – hackster.io.

Popular Last Week

What was the most popular, most clicked link, in last week’s newsletter? A New git Cheatsheet (and the accompanying zine).

New Notes from Adafruit Playground

Adafruit Playground is a new place for the community to post their projects and other making tips/tricks/techniques. Ad-free, it’s an easy way to publish your work in a safe space for free.

Raspberry Pi Pico Dice Programmed with CircuitPython

Raspberry Pi Pico dice programmed with CircuitPython – Adafruit Playground.

Running Two Programs on a Single CircuitPython Device

Running two programs on a single CircuitPython device – Adafruit Playground.

Tiny Plaintext MIDI Sequencer for SAMD21

A tiny plaintext MIDI sequencer for SAMD21 – Adafruit Playground.

Magicquest!

Magicquest! – Adafruit Playground.

News From Around the Web

Rain Gauge

Making a Raspberry Pi Pico rain gauge with MicroPython – YouTube and Explaining Computers.

Use PyCharm with CircuitPython on Macs

Use PyCharm with CircuitPython on Macs (takes setup, but it is glorious) – YouTube.

Add Python Programmable GPIO Pins to Any Computer

Add Python programmable GPIO pins to any computer with USBgpio – hackster.io.

CircuitPython ESP-NOW: Remote control on-board RGB LED via wireless

CircuitPython ESP-NOW: Remote control on-board RGB LED via wireless – YouTube.

FMP Notebooks

Python Notebooks for the textbook Fundamentals of Music Processing is a fabulous way of learning music – AudioLabs.

Arm64 on GitHub Actions

Arm64 on GitHub Actions: powering faster, more efficient build systems – GitHub Blog.

Magic 8-Ball

Combining the CircuitPython deep sleep feature with an ePaper display and an accelerometer interrupt to make a Magic 8-Ball with the 2024 eChallengeCoin – X.

armbian 24.5.1 stability release

Armbian 24.5.1, DietPi 9.4, and Otii server are now out for Single Board Computers (SBC) – CNX Software.

Understanding NeoPixels Matrix Parameters

Understanding NeoPixels matrix parameters with CircuitPython – hackster.io.

RaspberryPi ZERO No OS/CircuitPython

RaspberryPi ZERO No OS/CircuitPython HDMI, Clock and Photo Frame – X.

Python Turtle Bingo

Python Turtle Bingo: write Python turtle code to recreate simple pictures – andersource.

Flashing an OS onto the Nvidia Jetson Orin Nano

Flashing an OS onto the Nvidia Jetson Orin Nano can be tricky, especially using an SSD. Shawn Hymel put together a guide to help with the process – Shawn Hymel.

FeatherS3Neo

A spiral animation on the new Unexpected Maker Feather S3 Neo with CircuitPython – X.

Raspberry Pi Seen Pricing London IPO at Top End of Range

Raspberry Pi seen pricing London IPO at top end of range – Yahoo Finance.

ESP32-S3 Sense video streaming

ESP32-S3 Sense video streaming in MicroPython – hackster.io.

Espressif releases Arduino ESP32 Core 3.0.0, but PlatformIO support is in doubt

Espressif releases Arduino ESP32 Core 3.0.0, but PlatformIO support is in doubt – CNX Software.

How To Create a Python GUI App With PyQt5

How to create a Python GUI app with PyQt5 – The New Stack.

New

ThingPulse Pendrive S3

The ThingPulse Pendrive S3 is an ESP32-S3 board which fits neatly into a USB pendrive and supports CircuitPythonThingPulse.

New Boards Supported by CircuitPython

The number of supported microcontrollers and Single Board Computers (SBC) grows every week. This section outlines which boards have been included in CircuitPython or added to CircuitPython.org.

This week, there was one new board added:

Note: For non-Adafruit boards, please use the support forums of the board manufacturer for assistance, as Adafruit does not have the hardware to assist in troubleshooting.

Looking to add a new board to CircuitPython? It’s highly encouraged! Adafruit has four guides to help you do so:

New Learn Guides

New Learn Guides

Optical Sensor Drum Track Sequencer from John Park

Dune Worm Thumper from Ruiz Brothers

Adafruit Pixel Trinkey from Liz Clark

CircuitPython Libraries

CircuitPython Libraries

The CircuitPython library numbers are continually increasing, while existing ones continue to be updated. Here we provide library numbers and updates!

To get the latest Adafruit libraries, download the Adafruit CircuitPython Library Bundle. To get the latest community contributed libraries, download the CircuitPython Community Bundle.

If you’d like to contribute to the CircuitPython project on the Python side of things, the libraries are a great place to start. Check out the CircuitPython.org Contributing page. If you’re interested in reviewing, check out Open Pull Requests. If you’d like to contribute code or documentation, check out Open Issues. We have a guide on contributing to CircuitPython with Git and GitHub, and you can find us in the #help-with-circuitpython and #circuitpython-dev channels on the Adafruit Discord.

You can check out this list of all the Adafruit CircuitPython libraries and drivers available.

The current number of CircuitPython libraries is 485!

Updated Libraries

Here’s this week’s updated CircuitPython libraries:

Library PyPI Weekly Download Stats

Total Library Stats

  • 82885 PyPI downloads over 326 libraries

Top 10 Libraries by PyPI Downloads

  • Adafruit CircuitPython BusDevice (adafruit-circuitpython-busdevice): 7935
  • Adafruit CircuitPython Requests (adafruit-circuitpython-requests): 7473
  • Adafruit CircuitPython ConnectionManager (adafruit-circuitpython-connectionmanager): 6799
  • Adafruit CircuitPython Register (adafruit-circuitpython-register): 1973
  • Adafruit CircuitPython Wiznet5k (adafruit-circuitpython-wiznet5k): 886
  • Adafruit CircuitPython Motor (adafruit-circuitpython-motor): 872
  • Adafruit CircuitPython Pixelbuf (adafruit-circuitpython-pixelbuf): 819
  • Adafruit CircuitPython ADS1x15 (adafruit-circuitpython-ads1x15): 784
  • Adafruit CircuitPython MiniMQTT (adafruit-circuitpython-minimqtt): 744
  • Adafruit CircuitPython framebuf (adafruit-circuitpython-framebuf): 735

What’s the CircuitPython team up to this week?

What is the team up to this week? Let’s check in:

Dan

I continued to work on fixing the remaining issues for CircuitPython 9.1.0 final. Only two or three are left now.

Melissa

This past week I continued working on the CircuitPython Code Editor. I refactored the code to make it much more reliable and fixed the output duplication issue. I am continuing working on finishing up the file operations and fixing certain edge cases as I come upon them.

Tim

This week I was focused on the circup repo PR to change from setup.py to pyproject.toml for it’s Python packaging configuration. I learned a lot about the available configuration options and made some changes to the actions tasks in order to support these changes. The new version is released now. I also soldered up a new cardboard arcade project on a perma-proto breadboard, more details to come on that next week.

Jeff

I continued working on streaming MP3s over HTTP with CircuitPython on the ESP32-S3. At the time I’m writing this, it sort of works but playback is not reliable enough to permit merging the PR.

Scott

This week I’ve continued work on ESP BLE support. When enabling the BLE workflow, I found some issues with the workflow code that was nRF dependent. I also found bugs in the ESP BLE implementation. So, I’m continuing to use BLE on ESP and fix issues as they are found.

Liz

This week I worked on a few product guides. The Adafruit Chainable DS18B20 Extender Breakout makes it easy to wire up a DS18B20 temperature sensor. It has the pullup resistor on board, so the sensor becomes plug and play. I also added a minor update to the RGB LCD Shield guide for the new version that is now in the shop. This new version only requires soldering the headers and LCD display.

Upcoming Events

Open Sauce

Open Sauce, the Maker extravaganza, is returning to San Francisco, California June 15-16 – Open Sauce.

MicroPython Meetup

The next MicroPython Meetup in Melbourne will be on June 26 – Meetup. You can see recordings of previous meetings on YouTube.

EuroPython 2024

EuroPython is the oldest and longest running volunteer-led Python programming conference on the planet. This year it will be held July 8-14 in Prague – EuroPython 2024.

PyOhio 24

PyOhio is being held July 27-28, 2024 in Cleveland, Ohio – PyOhio.

Espressif DevCon24

Espressif DevCon24 will be held Sep 3-5, 13:00-18:00 CEST. Call for presentations now – Espressif.

Maker Faire Bay Area

Maker Faire Bay Area returns to Mare Island Naval Shipyard on October 18-20, 2024 – Maker Faire.

Send Your Events In

If you know of virtual events or upcoming events, please let us know via email to cpnews(at)adafruit(dot)com.

Latest Releases

CircuitPython’s stable release is 9.0.5 and its unstable release is 9.1.0-beta.3. New to CircuitPython? Start with our Welcome to CircuitPython Guide.

20240604 is the latest Adafruit CircuitPython library bundle.

20240601 is the latest CircuitPython Community library bundle.

v1.23.0 is the latest MicroPython release. Documentation for it is here.

3.12.4 is the latest Python release. The latest pre-release version is 3.13.0b2.

3,932 Stars Like CircuitPython? Star it on GitHub!

Call for Help – Translating CircuitPython is now easier than ever

CircuitPython translation statistics on weblate

One important feature of CircuitPython is translated control and error messages. With the help of fellow open source project Weblate, we’re making it even easier to add or improve translations.

Sign in with an existing account such as GitHub, Google or Facebook and start contributing through a simple web interface. No forks or pull requests needed! As always, if you run into trouble join us on Discord, we’re here to help.

38,598 Thanks

38,598 THANKS

Adafruit Discord

The Adafruit Discord community, where we do all our CircuitPython development in the open, reached over 38,598 humans – thank you! Adafruit believes Discord offers a unique way for Python on hardware folks to connect. Join today at https://adafru.it/discord.

ICYMI – In case you missed it

ICYMI

Python on hardware is the Adafruit Python video-newsletter-podcast! The news comes from the Python community, Discord, Adafruit communities and more and is broadcast on ASK an ENGINEER Wednesdays. The complete Python on Hardware weekly videocast playlist is here. The video podcast is on iTunes, YouTube, Instagram), and XML.

The weekly community chat on Adafruit Discord server CircuitPython channel – Audio / Podcast edition – Audio from the Discord chat space for CircuitPython, meetings are usually Mondays at 2pm ET, this is the audio version on iTunes, Pocket Casts, Spotify, and XML feed.

Contribute

The CircuitPython Weekly Newsletter is a CircuitPython community-run newsletter emailed every Monday. The complete archives are here. It highlights the latest CircuitPython related news from around the web including Python and MicroPython developments. To contribute, edit next week’s draft on GitHub and submit a pull request with the changes. You may also tag your information on Twitter with #CircuitPython.

Join the Adafruit Discord or post to the forum if you have questions.