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

Digi-Key + Adafruit @ PyCon!

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

Big news! Digi-Key and Adafruit have teamed up for PyCon 2019: 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 brings 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, in using Python on microcontrollers.

What else is happening? The CircuitPython team will be running several Open Spaces sessions (as they did last year), showing how to use CircuitPython on the Digi-Key / Adafruit PyCon special edition Circuit Playground Express. We’ll also have extra add-ons to play with: 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, but it is a good idea for you all 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!

PyCascades: Light Up Your Life – With Python and LEDs talk posted & more!

Nina’s talk “Light Up Your Life – With Python and LEDs!” at PyCascades was outstanding, check out the code, slides, and video – YouTube (the talk starts at 13:26).

Photos from Carter as well!


Scott, running CircuitPython on all the things!


Nina and the Circuit Playground Express.


Nina, MicroPython and CircuitPython.


Scott on the big screen!

Python on Hardware Means Choices for Makers

From Apress “Python on Hardware Means Choices for Makers” by Liz Clark. From the article:

Python has also been ported to microcontrollers (MCUs), with popular choices being MicroPython and, now, CircuitPython (a fork of MicroPython that is designed from the ground up to be beginner friendly.) This allows end users to use Python for their electronics hardware projects similar to how they may have used C/C++ with the Arduino IDE. This brings the same benefits from the Python programmer side of things to the maker community in an even more dramatic way. Blinking an LED is considered to be the electronic community’s “hello world” equivalent. This can be achieved in CircuitPython with a couple of lines of code that are straightforward and easy to read, making the barrier to entry for beginners to both hardware and software much lower.

Read the entire article here.

CircuitPython the magazine – Quarterly

Timothy Garcia’s CircuitPython magazine concept for his editorial class – PDF. We would totally subscribe to this magazine!

adafruit.io for CircuitPython is here

We are thrilled to release the CircuitPython wrapper library for communicating with Adafruit IO! – GitHub.

5,000 Thanks to all our readers, contributors, and the community!

Thank you so much, all 5,000 of you! The Python on Microcontrollers newsletter at Adafruitdaily.com reached over 5,000 subscribers last week. Thank you to the community, the readers, the contributors, and the teams that make this spam-free, privacy-respecting, excellent resource available to so many people each and every week.

We started the newsletter 2 years ago, and in April of 2018, we really focused on bringing all thing Python on hardware together and it’s become our fastest growing newsletter month over month!

One of the reasons is the activity and sharing in the Python community, which is amplified when you bring all the fun and projects with electronics together. Each week it’s becoming a challenge to keep up with all the projects from the community, news, new devices … and that is an excellent “problem” to have! A newsletter, a site, an event, is a reflection of a community and we’re so happy with all the people coming together who like to code, and like to make & share things.

It’s hard to pick one big news event or community project over the last couple years, however – here’s a list of things that really shined brightly in the last few months.

We recently added the complete archives (check them out here) which has every newsletter, from the beginning, for your reference.

News from around the web!

A bunch of CircuitPython runnin’ Minifigures by Benjamin Shockley – Twitter. They are now available for sale!

Electrifying Printed Pictures with CircuitPython by caitlinsdad – Instructables.

TG-Techie added a thermal camera to the Tricorder project, nice work! – Twitter.

Blitz City DIY is making an IR-Controlled Rover Robot coded with CircuitPython and running on Crickit – Video.

What is this? one stuffed dog named Tanya, one Adafruit Crickit, one Circuit Playground Express, 2 conductive pads, a recycled computer speaker, a servo to wag the tail, and only about 50 lines of CircuitPython. Good work 8th grade students! – Twitter.

Nick is working on a super-cute CircuitPython powered robot named “Red” – Twitter.

SouthernDragon posted up this GPS Logger in Discord. It records GPS coordinates (among other geographic stuff) to a CSV file on an SD Card, showing basic information on the OLED FeatherWing. It is smart enough to only save new coordinates if the device changes positions. Adafruit and Particle hardware coded in CircuitPython.

Over on Python Discord, Juanita is controlling Mario Kart DS with a Circuit Playground Express – Video.

OLED display module connected Crunchable synth I2C debug port coded in CircuitPython – Twitter by CedarGroveMakr.

Hacking on Gameboys at the PyCascades pre-conference social – Twitter.

One of our favorite Science Fiction authors, Bruce Sterling, has adopted CircuitPython as his avatar on Twitter, we endorse this!

Slides from Jessica Greene’s talk at the Python Pizza conference in Berlin: “Python on bare metal.”

Cypress and Zerynth demo – Python on PSoC 6 microcontrollers for Internet of Things and Blockchain applications – Zerynth.

This appears to be a MicroPython port for the AI Thinker GSM, GPRS a9 BoardGitHub.

Monitor your air quality with this DIY setup consisting of a Raspberry Pi, low-cost gas sensors and a remote-controlled switch. You can control the air quality in your house by Bert Carremans.

RPJiOS: RPJ’s RPi OS, a sensor data platform for the Raspberry Pi built with Python 2.7 and redis – GitHub.

Building a simple Python API for Internet of Things (IoT) gadgets – Hackaday.

ActivityWatch is an automatic time-tracking software. Log what you do on your computer. Simple (yet powerful), extensible, no third parties, open – GitHub.

Drops of Jupyter notebooks: how to keep notes in the information age – Hackaday.

Onionshare, securely and anonymously send and receive files – GitHub.

Guide to String Formatting with Python – Kite.

Python script to generate fake datasets optimized for testing machine learning/deep learning workflows – GitHub.

A tour in the wonderland of math with Python – GitHub.

Python datetimes made easy – GitHub.

PyWeek is a game jam in which you must write a game from scratch, in Python, in just one week – PyWeek.

Optimizing Jupyter Notebooks – A Comprehensive Guide. Finding bottlenecks and increasing your speed performance by magnitudes – towardsdatascience.com

What Is Computer Science And How To Make Kids Love It. These resources will help you get started with computer science and even teach it – potatopirates.game

PyDev of the Week: Ryan Lilly on Mouse vs Python

CircuitPython weekly meeting for February 25th, 2019 on YouTube

#ICYDNCI What was the most popular, most clicked link, in last week’s newsletter? PyPortal – A new Python-powered board – adafruit.com/pyportal.

Made with Mu

Stress Management Mask by Dilnaam D. – A prototype of a mask to manage stress using Python and a Circuit Playground Express – GitHub. This mask was made to demonstrate how a Circuit Playground Express could be used to measure body temperature and indicate stress levels. My theory is that body temperature is an indicator of stressful feelings and that people can better control their stress when they have a visual indication of their own stress state.Made with Mu.

What is Mu? The Mu editor tries to make it as easy as possible to get started with programming but aims to help you graduate to “real” development tools soon after. Everything in Mu is the “real thing” but presented in as simple and obvious way as possible. It’s like the toddling stage in learning to walk: you’re finding your feet and once you’re confident, you should move on and explore! Put simply, Mu aims to foster autonomy. Try out Mu today! – codewith.mu

Coming soon

Controlling Gameboys with CircuitPython from PyCascades – Twitter.

Weather “app” made in a few minutes with the Python-Powered IoT PyPortal using data from OpenWeather.

It’s been over 46 years, 79 days, 9 hours, and 35 minutes since we were on the moon. Adafruit made this simple “count up” IoT project with PyPortal.

New Learn Guides!

CircuitPython BLE Crickit Rover from John Park

Wireless Dual Stepper Control with Adafruit IO, Raspberry Pi and Python from Brent Rubell

Circadian Pi Desk Light from Michael Sklar

Custom Fonts for CircuitPython Displays from Noe and Pedro

Robotic Xylophone with Adafruit Grand Central from Dano Wall

A CLI in CircuitPython from Dave Astels

Make It Pulse from Mike Barela

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

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 538 18205
Adafruit_CircuitPython_BusDevice 360 8962
Adafruit_CircuitPython_NeoPixel 109 2572
Adafruit_CircuitPython_ServoKit 80 606
Adafruit_CircuitPython_ADS1x15 72 1046
Adafruit_CircuitPython_LIS3DH 71 923
Adafruit_CircuitPython_MCP9808 69 446
Adafruit_CircuitPython_PCA9685 63 961
Adafruit_CircuitPython_CharLCD 62 7778
Adafruit_CircuitPython_Motor 59 1036

Upcoming events!

March 11th, London, UK. Meet, learn and share ideas about MicroPython. Nicholas Tollervey will be telling us about the latest features of Mu – a free code editor for Python, MicroPython and CircuitPython devices – Meetup.

Hopper Local / Dublin. February 27, 2019 · 7:30 am – 7:00 pm. Hopper Local / Dublin is a one-day locally organized conference modeled after our Grace Hopper Celebration (GHC). This immersive event brings together women technologists at all levels – along with leading companies from industry, academia, and research – to build relationships, learn, and advance their careers. Hopper Local / Dublin is the inaugural event and will launch an AnitaB.org Local Community in Ireland – anitab.org

Vicky Twomey-Lee will be demoing MicroPython on Micro:Bit and CircuitPython on Circuit Playground Express – codinggrace.com

KiCon is a KiCad user focused conference. Held for the first time ever, April 26th and 27th 2019 in Chicago IL USA. Adafruit is a sponsor – kicad-kicon.com

May 2019 Cleveland, Ohio! 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 – PyCon.

Latest releases

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

20190225 is the latest CircuitPython library bundle.

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

3.7.1 is the latest Python release. The latest pre-release version is 3.8.0a2.

1049 Stars to date on the CircuitPython GitHub repository. Do you like CircuitPython? Star it on GitHub!

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.

10,791 thanks!

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

ICYMI – In case you missed it

The wonderful world of Python on hardware! This is video-newsletter-podcast that we’ve started! 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.

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.