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

CircuitPython 4.0.0 beta 6

We are nearing the end of the betas of CircuitPython 4.0.0 and hope to be issuing a release candidate soon. There are still a few issues to fix before it is stable. We think the API’s are now stable. Please use the latest 3.x stable release (available from the new website!) when first starting with CircuitPython. It is stable.

When you find a bug please check the current known issues and file an issue if something isn’t already known – Adafruit.

Python and the Internet of Things Hack Chat

Python and the Internet of Things Hack Chat @ Hackaday.io. The power of Python on microcontrollers – Wednesday, April 3, 2019 12:00pm PDT / 3pm EDT a Hack Chat at hackaday.io! The CircuitPython team from Adafruit (Dan Halbert, Kattni Rembor, Scott Shawcroft, Limor “Ladyada” Fried, and Phillip Torrone) will be hosting the Hack Chat on Wednesday, April 3, 2019 at noon PDT / 3pm EDT. Time zones got you down? Here’s a handy time converter! Opinions differ about what the most-used programming language in right now is, but it’s hard to deny both the popularity and versatility of Python. In the nearly 30 years since it was invented, it has grown from niche language to full-blown development environment that seems to be everywhere these days. That includes our beloved microcontrollers now with CircuitPython, greatly lowering the bar for entry-level hackers and simplifying and speeding development for old hands and providing a path to a Python-powered Internet of Things. The CircuitPython team from Adafruit Industries will drop by the Hack Chat to answer all your questions about Python and the IoT. Join us as we discuss:

  • How CircuitPython came to be;
  • The range of IoT products that support Python;
  • Getting started with Python on IoT devices; and
  • What’s on the horizon for a Python-powered IoT?

Blog post – Hackaday.com

And as extra enticement, we’ll be giving away five free one-year passes to Adafruit.io! We’ll draw five names at random from the list of Hack Chat attendees. Stop by for a chance to win. JOIN US!

We’ll also be broadcasting behind the scenes live via Hangouts – YouTube.

We made a Hack Chat count down just for event based on the countdown guide & code too!

Displaying your realtime Blood Glucose from NightScout with CircuitPython

Scott Hanselman writes –

“Adafruit makes an adorable tiny little CircuitPython IoT device called the PyPortal that’s just about perfect for the kids – and me. It a little dakBoard, if you will – a tiny totally programmable display with Wi-Fi and lots of possibilities and sensors. Even better, you can just plug it in over USB and edit the code.py file directly on the drive that will appear. When you save code.py, the device soft reboots and runs your code. I’ve been using Visual Studio Code to program CircuitPython and it’s become my most favorite IoT experience so far because it’s just so easy. The “Developer’s Inner Loop” of code, deploy, debug is so fast. As you may know, I use a Dexcom CGM (Continuous Glucose Meter) to manage my Type 1 Diabetes. I feed the data every 5 minutes into an instance of the Nightscout Open Source software hosted in Azure. That gives me a REST API to my own body. I use that REST API to make “glanceable displays” where I – or my family – can see my blood sugar quickly and easily.”

Read more, code, and Chortkeh BDF Font viewer which we did not know about!

Let’s Talk About the MSGEQ7: Porting Arduino Code to CircuitPython

Blitz City DIY has a great video on porting Arduino code to CircuitPython. Liz starts out with some projects based around the MSGEQ7 IC. First up, Liz ported the initial Arduino example code to CircuitPython. She also talks about her love for the MSGEQ7 chip – YouTube & code on GitHub.

Use CircuitPython boards on the TI-83 Premium CE calculator!

The new Texas Instruments TI-Python external module for the TI-83 Premium CE calculator runs CircuitPython and has an Atmel ATSAMD21E18 chip. Some calculator hackers at TI Planet figured out how to get many of the CircuitPython powered boards to run with the TI-83! – Twitter.

Looks like you need to get a USB OTG Cable – Micro USB to Mini USB – M/M – USB OTG and possibly change the USB VID/PID identifiers using a tool like Zadig, so the TI calculator can interact with the non-TI hardware.

Zardam in the TI-Planet forums made a couple of these to load up.

TI-Python modded firmware – for Adafruit Trinket M0 & for Arduino Zero.

Updating the TI 83 – OS 5.3.5 + PyAdaptr app for TI-83 Premium CE and TI-Python.

There is also aTI-83 Game Boy Emulator – Update Game Boy ROMs for OS 5.3.5.

Previously – “TI-Planet – TI-Python: import sys reveals Adafruit CircuitPython on TI-83 Premium CE calculator” – Adafruit.

REVIEW – Jetson Nano: Is it AI for the masses?

androidauthority.com has a review of the new Jetson Nano with great overview to check out if you’re thinking of trying out Nvidia’s latest machine learning development platform. For hardware support, BLINKA is there too:

“One of the key features of the Raspberry Pi is its set of General Purpose Input and Output (GPIO) pins. They allow you to connect the Pi to external hardware like LEDs, sensors, motors, displays, and more. The Jetson Nano also has a set of GPIO pins and the good news is that they are Raspberry Pi compatible. Initial support is limited to the Adafruit Blinka (Python 3) library and to userland control of the pins. However, all of the plumbing is there to allow broad support for many of the Raspberry Pi HATs available.”

uChip – CircuitPython powered Kickstarter

uChip: Arduino Zero compatible in a narrow DIP-16 package! by Itaca Innovation — Kickstarter. A very small narrow-DIP-sized, Arduino Zero compatible USB dev board (OTG enabled), with integrated buck and boost power supplies.

Adafruit worked with the team to complete CircuitPython support (thanks for the pull request!) and it’s available to view on circuitpython.org! The usual disclaimer applies, it’s a Kickstarter, so anything could happen (or not!), that said – it’s open-source hardware and the team has actual hardware already, so if they hit the funding goal, seems likely it ship. If you have a Kickstarter with actual hardware and you have CircuitPython running on it (or want to, let us know – Adafruit can help!).

News from around the web!

Dan has some kind words about PyPortal, thanks! – Twitter.

Avengers: Endgame Posters on an Adafruit PyPortal, made with CircuitPython! – YouTube.

FEATHER takes flight again at SparkFun, in addition to some CircuitPython-powered products, SparkFun has introduced FEATHER footprint products – this week, check out: ESP32 Thing Plus DMX to LED Shield & Feather Stackable Header Kit.

maker_hacks made a really cool to-do list extractor that uses the Asana API to display on a PyPortal – Instagram.

Ron used the PyPortal to make a Python list of job positions to display job openings at IBM Monroe CIC. It has a button so you can click next and get another random job position from the list – Twitter.

Work in progress Splatoon2 current stages from Splatoon2inkbot display with a PyPortal, this counts as sports! – Twitter.

TG Techie has a cool keyboard work-in-progress which is 100% coded in CircuitPython – Twitter.

PyPortal – access the micro-SD Card – AndyFelong.com

The Electric Dollar Store is performing an experiment in selling very low price modular I²C components and each comes with a Python example – electricdollarstore.com

Keith has some updates on snek – SAMD21 USB vs Windows 7.

We’re still looking around for when it would be most accurate to say which day/year is MicroPython’s birthday, on Twitter we received a link to a presentation PDF which lists April 30th, 2013 as the “start” with the Kickstarter, starting November 13th, 2013 and officially finishing April 12th, 2015. We’ll update more as we get more information – Twitter. If the PDF is not accessible, we have a copy here too – Adafruit.

Microcontroller Monday: Vanguard – bigl.es

What is MicroPython? By Jack McKew.

Unexpected Maker started a new video series on MicroPython – Ep 1 is an intro and how to download and install it – YouTube.

April 1 Linktastic MicroPython links from the Melbourne MicroPython Meetup, includes: ESP32 Pi Hat-compatible board, WiPhone, Sipeed MAIX news, Dadamachines Doppler, M5Stick, Pycom Tour and more! – melbournemicropythonmeetup.github.io

micro:mag Issue 4 is out, it is the community made magazine for micro:bit – micromag.cc & PDF.

Voice Control for Industrial Applications – IoTFuse.

“Using a Digi XBee3 Category M Cellular device, we are going to use some MicroPython code to enable your own Amazon Echo Alexa-enabled thermostat. This could be applied to any home smart hub, but for the purpose of the class, this would be using an Echo.”

Squeezebox player for ESP32 board – GitHub.

“How I solved my NYC parking problem with the Search Tweets API” – developer.twitter.com

BlockPy is a web-based Python environment that lets you work with blocks, text, or both. Designed for Data Science, equipped with powerful tools like the State Explorer, and scaffolding beginners with Guided Feedback, the goal of BlockPy is to let you authentically solve real-world problems – BlockPy.

Building a Raspberry Pi security camera with OpenCV – pyimagesearch.com

From 2013 “How many Python programmers are there in the world?” – pythonanywhere.com

A Quick Python Check-in With Naomi Ceder – Episode 204 – pythonpodcast.com

“Naomi Ceder was fortunate enough to learn Python from Guido himself. Since then she has contributed books, code, and mentorship to the community. Currently she serves as the chair of the board to the Python Software Foundation, leads an engineering team, and has recently completed a new draft of the Quick Python Book. In this episode she shares her story, including a discussion of her experience as a technical author and a detailed account of the role that the PSF plays in supporting and growing the community.”

pyray, a tool for creating visualizations using nothing but Python – post & GitHub.

It’s not Python’s fault that Randall’s computer is a mess by Brett Cannon & xkcd comic.

Audio visualizer using the MacBook keyboard lights written in Python for Linux running MacBooks – GitHub & YouTube.

Raspberry VI’s site provides visually impaired or blind (hence VI) users of the Raspberry Pi computer with somewhere to come to find answers to accessibility questions, share ideas and experiences – raspberryvi.org

Coding Platforms for the Visually Impaired: Microsoft Code Jumper – Adafruit.

Standardizing WASI: A system interface to run WebAssembly outside the web – hacks.mozilla.org

Freedombone is a home server system which enables you to self-host Email, chat, VoIP, web sites, file synchronisation, wikis, blogs, social networks, media hosting, backups, and VPN from your place of residence (not a data center). You can run Freedombone on an old laptop or single board computer – freedombone.net

Python in Visual Studio Code – March 2019 Release – devlogs.microsoft.com

Zadig – USB driver installation made easy – zadig.akeo.ie

Some Adafruit making CircuitPython hardware in the USA news… Limor “Ladyada” Fried, founder and engineer, is a 2019 STEP Ahead Award Winner from the Manufacturing Institute. Winners are women who have accomplished success within their companies and have proven to be leaders in the industry as a whole – themanufacturinginstitute.org

#ICYDNCI What was the most popular, most clicked link, in last week’s newsletter? Make: Vol. 68 April / May 2019 is here! Guide to Boards! Tech Trend #1: The Push for Python.

PyDev of the Week: Kyle Stratis on Mouse vs Python

CircuitPython Weekly Meeting for April 1st, 2019 available on YouTube and on diode.zone

Made with Mu

Mu 1.1.0-alpha.1 was released and the feedback has been excellent, stop by gitter and/or the issues on GitHub to see the latest – GitHub.

Every commit to master a new app package is created for Mu, these are not official releases, they are for the purposes of our testing. You can find the automatically built installers here – mu-builds.

Coming soon

AirLift METROS!

AirLift FEATHER!

Pybadge!

E-Ink!

And a quick video overview of all our upcoming E-Ink – YouTube.

New Learn Guides!

PyPortal Alarm Clock from Dave Astels

IterTools for CircuitPython from Dave Astels

PyPortal BitCoin Display from John Park

Currying in CircuitPython from Dave Astels

PyPortal Oblique Strategies from Collin Cunningham

PyPortal NeoPixel Color Picker from Kattni

PyPortal Astronauts in Space from John Park

PyPortal Discord Online Counter from John Park

Updated Guides – Now With More Python!

You can use CircuitPython libraries on Raspberry Pi! We’re updating all of our CircuitPython guides to show how to wire up sensors to your Raspberry Pi, and load the necessary CircuitPython libraries to get going using them with Python. We’ll be including the updates here so you can easily keep track of which sensors are ready to go. Check it out!

Keep checking back for more updated CircuitPython guides!

CircuitPython Libraries!

CircuitPython support for hardware continues to grow. We are adding support for new sensors and breakouts all the time, as well as improving on the drivers we already have. As we add more libraries and update current ones, you can keep up with all the changes right here!

For the latest drivers, download the Adafruit CircuitPython Library Bundle.

If you’d like to contribute, CircuitPython libraries are a great place to start. Have an idea for a new driver? File an issue on CircuitPython! Interested in helping with current libraries? Check out this GitHub issue on CircuitPython for an overview of the State of the CircuitPython Libraries, updated each week. We’ve included open issues from the library issue lists, and details about repo-level issues that need to be addressed. We have a guide on contributing to CircuitPython with Git and Github if you need help getting started. You can also find us in the #circuitpython channel on the Adafruit Discord. Feel free to contact Kattni (@kattni) with any questions.

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

The current number of CircuitPython libraries is 143!

New Libraries!

Here’s this week’s new CircuitPython libraries:

Updated Libraries!

Here’s this week’s updated CircuitPython libraries:

PyPI Download Stats!

We’ve written a special library called Adafruit Blinka that makes it possible to use CircuitPython Libraries on Raspberry Pi and other compatible single-board computers. Adafruit Blinka and all the CircuitPython libraries have been deployed to PyPI for super simple installation on Linux! Here are the top 10 CircuitPython libraries downloaded from PyPI in the last week, including the total downloads for those libraries:

Library Last Week Total
Adafruit-Blinka 2235 22734
Adafruit_CircuitPython_Register 387 3219
Adafruit_CircuitPython_NeoPixel 365 3506
Adafruit_CircuitPython_BusDevice 289 9326
Adafruit_CircuitPython_Motor 269 1738
Adafruit_CircuitPython_ServoKit 190 1207
Adafruit_CircuitPython_PCA9685 147 1319
Adafruit_CircuitPython_BME280 129 1489
Adafruit_CircuitPython_MotorKit 129 1486
Adafruit_CircuitPython_MCP3xxx 93 551

Upcoming events!

Happening April 26th and 27th 2019 in Chicago IL, this will be the first and largest gathering of hardware developers using KiCad. Talks at the conference will span hardware design, revision control, scripting, manufacturing considerations, proper library management and getting started developing the underlying tools. All talks have been listed on the conference site. Additionally, there will be contests, roundtable discussions with the developers and hands-on demos to deepen knowledge of hardware design and using KiCad.

Is this a conference only for current users of KiCad? No! Attendees will learn general concepts around PCB design, hardware creation and developing products for the market. Attendees include hardware and software developers from around the world, including members of the core KiCad development team out of CERN in Switzerland.

Attend this unconventional conference to learn more about how to build your next hardware project using open source, extensible tools. Join industry figures (and sponsors) like Digikey, Adafruit, Supplyframe and Bantam Tools. Interact with manufacturing experts from OSHpark, Royal Circuits, Aisler and SnapEDA. Meet and get to know others in the hardware community, who regularly are creating new hardware for fun and profit – kicad-kicon.com

PyLadies Dublin, Tuesday, April 16, 2019. Hot off PyCon Limerick, Mick Twomey is back giving an updated talk from November about the history of Python Packaging and why pipenv is awesome. Vicky Twomey-Lee will have some Adafruit Circuit Playground Express boards and you can play around with them with CircuitPython – Meetup.

Digi-Key + Adafruit @ PyCon!

PyCon 2019 returns May 1–9, 2019 to Cleveland, OH – with talks, tutorials, sprints, and more!

Big news! Digi-Key and Adafruit have teamed up for PyCon 2019 so every attendee (about 4,000!) will receive a SPECIAL EDITION Circuit Playground Express, running … CircuitPython.

This effort is to get Python on hardware to the most folks out there, at the events that bring people together.

This is just one of many efforts we’re teaming up with Digi-Key to continue to fuel all the developers from beginners to pro, using Python on microcontrollers.

Adafruit at PyCon: The CircuitPython team (Kattni, Scott and Dan as well as Brent, Melissa and Bryan) will be running several Open Spaces sessions May 3 – 5 in the afternoons. They will be showing how to use CircuitPython on the Digi-Key / Adafruit PyCon special edition Circuit Playground Express. They’ll have extra add-ons to play with also: potentiometers, NeoPixel strips, and servos. The team will be running a CircuitPython Sprint for several days to work on CircuitPython libraries and CircuitPython core code. BYOMUSB “Bring your own Micro USB” cables, we’ll have some to borrow during the sprints/sessions, as well as some USB C adapters, good idea to bring one too!

The PyCon 2019 conference, which will take place in Cleveland, is the largest annual gathering for the community using and developing the open-source Python programming language. It is produced and underwritten by the Python Software Foundation, the 501(c)(3) nonprofit organization dedicated to advancing and promoting Python. Through PyCon, the PSF advances its mission of growing the international community of Python programmers.

We will have a lot more updates, stay tuned to the Adafruit blog, Twitter, Discord, and more!

Latest releases

CircuitPython’s stable release is 3.1.2 and its unstable release is 4.0.0-beta.6. New to CircuitPython? Start with our Welcome to CircuitPython Guide.

20190401 is the latest CircuitPython library bundle.

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

3.7.3 is the latest Python release. The latest pre-release version is 3.8.0a3.

1125 Stars Like CircuitPython? Star it on GitHub!

circuitpython.org help make it together!

Downloads are now available from circuitpython.org! This site makes it much easier to select the correct file and language for your board. The downloads page is here. We could use some help with filling in the text for the various boards. Adafruit Learning System tutorials have been edited to point to CircuitPython.org for downloading CircuitPython for specific boards.

Call for help – CircuitPython messaging to other languages!

We posted on the Adafruit blog about bringing CircuitPython messaging to other languages, one of the exciting features of CircuitPython 4.x is translated control and error messages. Native language messages will help non-native English speakers understand what is happening in CircuitPython even though the Python keywords and APIs will still be in English. If you would like to help, please post to the main issue on GitHub and join us on Discord.

We made this graphic with translated text, we could use your help with that to make sure we got the text right, please check out the text in the image – if there is anything we did not get correct, please let us know. Dan sent me this handy site too.

Here is a cool tip we saw, Google Sheets can do translations right in the doc – Twitter.

jobs.adafruit.com

jobs.adafruit.com has returned and folks are posting their skills (including CircuitPython) and companies are looking for talented makers to join their companies – from Digi-Key to Hackaday, Microcenter, Raspberry Pi and more.

11,451 thanks!

The Adafruit Discord community, where we do all our CircuitPython development in the open, reached over 11,451+ humans, thank you! Join today! https://adafru.it/discord

ICYMI – In case you missed it

The wonderful world of Python on hardware! This is our first video-newsletter-podcast! The news comes from the Python community, Discord, Adafruit communities and more. It’s part of the weekly newsletter, then we have a segment on ASK an ENGINEER and this is the video slice from that! The complete Python on Hardware weekly videocast playlist is here.

This video podcast is on iTunes, YouTube, IGTV (Instagram TV), and XML.

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.

Updates to awesome-circuitpython

We updated awesome-circuitpython, the comprehensive, curated collection of all things CircuitPython – GitHub.

Added:

CircuitPython.org

CircuitPython.org is the first stop on the information snake highway. Here you can see all the supported boards and download the specific firmware for each one, including beta, latest, and previous versions. Downloads can be sorted by: maker, features, name, and more. At this time there are over 30+ boards supported in the CircuitPython family!

Code

News

Social

Did we miss anything? Please add it!

Contribute!

The CircuitPython Weekly Newsletter is a CircuitPython community-run newsletter emailed every Tuesday. 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. Join our Discord or post to the forum for any further questions.