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! What a news-filled week. The world does not stop for anything and there is a new bevy of Python news. The head of the Python Software Foundation discusses why devs love Python. Two new goodies are out this week from Raspberry Pi. Another case of Python in orbit. And some amazing projects which show the range of what can be done with some hardware and Python. Enjoy. - 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:

Why Beginning Developers Love Python

Why Beginning Developers Love Python

Recently, Deb Nicholson of the Python Software Foundation, talked about the popularity of the language, the open source community and more in an episode of The New Stack Makers - The New Stack and YouTube.

“It’s a great language for folks that want to learn how to code but aren’t sure what … to do with it yet. And so you’re not as stuck as you are in some of the other languages that are more purpose-built for specific kinds of uses.”

New Raspberry Pi Display and USB Hub

New Raspberry Pi Display and USB Hub

Raspberry Pi has added two more products in the last week. The Raspberry Pi Touch Display 2 replaces the original display introduced back in 2015 with a resolution increase to 1280x720 pixels. And the new Raspberry Pi USB 3 Hub can help when lots of USB devices must be shared on Pi single board computers (SBC).

Display review and builds

Jeff Geerling provides an in-depth review and creates projects for Home Assistant and CarPlay with the Pi Touch Display 2 - Jeff Geerling and YouTube. Via X.

MicroPython in Orbit: Filip’s Story of Satellite Innovation

MicroPython in Orbit: Filip's Story of Satellite Innovation

Filip Rak, the team leader at the Czech Aerospace Research Center talks to Inspiring Computing about his journey from engineering to leading the development of attitude and orbit control systems for satellites, including the technical challenges and triumphs, like launching satellites and using MATLAB and MicroPython. Filip also shares how they took a selfie from space at their facility and how this achievement inspired future projects.

Catch the interview - YouTube and more about the satellite and images CARC.

A Pi Pico Powered Fallout T-45 Power Armor Helmet

Pi Pico Powered T-45 Power Armor Helmet

Grimdaria on Reddit presents a nice Fallout T-45 Power Armor Helmet build. The shell is 3D printed and is powered by a Raspberry Pi Pico running MicroPython. Inside has a temperature sensor, temperature controlled fans, NeoPixels, stereo microphones and headphones, and an internal OLED status screen - Reddit.

5 Tips for Building a Home Server With a Single Board Computer

5 tips for building a home server with an SBC

With their affordable prices, low power consumption, and tiny form-factor, Single-Board Computers are amazing for lightweight DIY projects. SBCs can punch above their weight class when you want to dabble in containers and self-hosted apps. XDA five pointers for anyone looking to turn their credit-card-sized system into a reliable home server - XDA.

At the wire: Controlling a Raspberry Pi Pico W With BlueSky and MicroPython

Controlling a Raspberry Pi Pico W With BlueSky and MicroPython

Controlling a Raspberry Pi Pico W With BlueSky and MicroPython

A late entry for this issue: Les Pounder, working with Mike Bell, have demonstrated controlling a Raspberry Pi Pico W using messages from BlueSky. The demo shows an LED, but anything is possible with a few MicroPython code tweaks. - BlueSky.

Tips and Tricks for Clean, Readable Python Code

Tips and Tricks for Clean, Readable Python Code

From decorators to list comprehensions, several built-in Python features help developers transform clunky code into clean, readable solutions without reinventing the wheel - The New Stack.

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, Tim streamed work on Displayio Text Box.

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 Circle Drawing Tool - Adafruit Blog and YouTube.

Catch all the episodes in the YouTube playlist.

CircuitPython Weekly Meeting

CircuitPython Weekly Meeting for November 4th (notes) on YouTube.

Project of the Week: A New Python Calculator

Python Calculator

Peter Misenko writes that the pyprca Python calculator is back with same dimensions as his PICOmputer and the new pycoboy (a picopad clone). All of the devices can do Armachat, CircuitPython, Picomputer S3 new Meshtastic UI and emulate a ZX Spectrum, C64, and Atari800 - X and PeMi Technology.

Popular Last Week

What was the most popular, most clicked link, in last week’s newsletter? Raspberry Pi product series explained.

Did you know you can read past issues of this newsletter in the Adafruit Daily Archive? Check it out.

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.

News From Around the Web

Sand drawing robot PCB v1.2

A sand painting drawing robot using an ESP32 and MicroPython - GitHub and YouTube.

Introduction to STM32F412 Discovery Kit Getting Started with circuitpython

An introduction to the STM32F412 Discovery Kit and getting started with CircuitPython - YouTube.

Simple fade-in fade-out script

A MicroPython script for the Pimoroni Plasma 2350/2040 which detects motion with the Pimoroni tinyfx PIR sensor connected to the Qwiic port then fades in a connected LED string. It also waits for a few seconds of no motion detection, then gently fades out the LED strip - GitHub. Via X.

Arcade

Testing out a custom Arcade Machine emulator with a custom joystick and buttons using CircuitPython - X and YouTube.

Adventures with MicroPython

Adventures with MicroPython and robotics - Agile Abstractions.

6 tips for securely adding IoT devices to your home network

6 tips for securely adding IoT devices to your home network - XDA.

Raspberry Pi Pico e Paper Display

A Raspberry Pi Pico and an e-paper display with MicroPython - YouTube and Project Page.

LED art from Gemini AI

ESP32 Neopixel LED art coded in Micropython from a handwritten note uploaded to Gemini AI - YouTube.

Pi 5 Battle: Raspberry Pi vs Orange Pi vs Radxa

Pi 5 Battle: Raspberry Pi vs Orange Pi vs Radxa - YouTube.

RGB pixel sand using a Raspberry Pi Pico and MPU6050 gyro sensor circuitpython

RGB pixel sand using a Raspberry Pi Pico and MPU6050 gyro sensor with CircuitPython - YouTube.

Control Raspberry Pi Pico W Robot Using PS5 Controller

Control a Raspberry Pi Pico W robot using a PS5 controller with MicroPython - hackster.io.

Animated Random Patterns With RP2040-Matrix and MicroPython

Animated random RGB LED patterns with RP2040-Matrix and MicroPython - Instructables and Vimeo.

Pico audio Part 5 - Talking clock

Making a talking clock with Raspberry Pi Pico and MicroPython (Part 5) - lucstechblog.

title

text - site.

Raspberry Pi Pico W drives custom cardiography signal-measuring device

A Raspberry Pi Pico W drives custom cardiography signal-measuring device with Arduino firmware and Python data analysis - Tom’s Hardware and GitHub.

ESP32 Web Server – Controllo LED con Thonny e MicroPython

ESP32 Web Server – Controllo LED con Thonny e MicroPython - YouTube and code.

Smart Power Plug - demo technical project 1a using MicroPython ESP32

A Smart Power Plug demo using MicroPython on an ESP32 - YouTube.

Malicious Python package collects AWS credentials via 37,000 downloads

Malicious Python package collects AWS credentials via 37,000 downloads - SC Media.

title

text - site.

New

4.2inch E-Paper E-Ink Display Module for Raspberry Pi Pico

Waveshare has a 4.2 inch E-Paper/E-Ink display module specifically for Raspberry Pi Pico. 400×300px resolution, Black/White, 4 color grayscale, SPI communications - Waveshare and Review.

title

text - site.

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 were (#/no) new boards 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

The Adafruit Learning System has over 3,000 free guides for learning skills and building projects including using Python.

Creating Custom LED Animations from Tim C

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 ###!

New Libraries

Here’s this week’s new CircuitPython libraries:

Updated Libraries

Here’s this week’s updated CircuitPython libraries:

Library PyPI Weekly Download Stats

What’s the CircuitPython team up to this week?

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

Dan

I’ve been working on CircuitMatter, getting it to run on CircuitPython instead of CPython (regular Python). I have a small sample program, which acts as an “OnOff” device, such as a light bulb. I simply try to run it and, see what errors I get, and then fix them. After some simple fixes, I am now running into missing cryptography libraries that are not available in CircuitPython. I will find code I can use for them or implement them, as needed.

Tim

I finished up the Custom LED Animations guide and it was published this week. I worked on modifications inside of Adabot to remove the pypi installs from our weekly meeting stats, and to add counts for the Adafruit and Community bundles. I’ve also been going through open issues in CircuitPython libraries cleaning up where applicable and trying to resolve any that are within my means without being a huge time sink.

I’ve added timeouts to some sensor drivers that could block forever, and improved documentation in a few, based on info from the issues. Lastly I updated the drivers.rst file in the library bundle to include the import names for each module in addition to their title counterparts.

Jeff

I’ve been working on smaller items, like a check at build time for a known good GCC version.

Liz

This week I worked on the NFC Raspberry Pi Media Player project. This project was fairly complicated because it not only involved writing code but also configuring the file system to use the M.2 HAT+ with an NVME drive. There is a lot of scattered documentation on this, mainly in Raspberry Pi forum posts with people reporting difficulties, so I’m glad I was able to document it in a guide to hopefully save people time and frustration.

On the Python side of things, I really like the script I wrote to have a bouncing Blinka splash screen while waiting for an NFC card and the script for adding a new card and movie to the CSV file.

Upcoming Events

PyCon AU

PyCon AU will be held from the 22nd to the 26th of November at the Melbourne Convention and Exhibition Centre (MCEC) in Narrm/Melbourne. Matt Trentini and Damien George will both be presenting on MicroPython - PyCon AU.

MicroPython Meetup

The next MicroPython Meetup in Melbourne will be on November 27th – Meetup. You can see recordings of previous meetings on YouTube. September’s meeting notes are here.

PyLadies

PyLadies Conference (PyLadiesCon) is a transformative event designed to promote diversity, learning, and empowerment within the Python community. December 6-8, 2024 online - PyLadies.

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 #.#.# and its unstable release is #.#.#-##.#. New to CircuitPython? Start with our Welcome to CircuitPython Guide.

2024#### is the latest Adafruit CircuitPython library bundle.

2024#### is the latest CircuitPython Community library bundle.

v#.#.# is the latest MicroPython release. Documentation for it is here.

#.#.# is the latest Python release. The latest pre-release version is #.#.#.

#,### 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.

NUMBER Thanks

NUMBER THANKS

Adafruit Discord

The Adafruit Discord community, where we do all our CircuitPython development in the open, reached over NUMBER 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.