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

Hacking Digital Calipers with CircuitPython to measure tumors

Calipers

Save time and avoid errors with these hacked USB calipers that Caitlyn and Max developed. Data is entered into Microsoft Excel with a click of a button. Caitlyn’s lab does preclinical studies for novel cancer therapies. One way to determine if the therapies work is to measure tumor growth over time. It’s very time consuming to manual input all the data, so they wanted an automated and affordable solution – Twitter, and how-to guide with code.

DRAGONS, powered by CircuitPython

DRAGONS, powered by CircuitPython

Sound provided by Adafruit PyGamer and CircuitPython using a mix of manual triggers and accelerometer step & jump detection – Twitter.

FEATHER – form factor of choice in Twitter poll

FEATHER

You are designing a new board and you want to make it compatible with 3rd party hardware. What is your form factor of choice? A poll by Xose Pérez has the results – Twitter.

PyPaint Drawing Program In CircuitPython

PyPaint

Painting for your PyPortal, PyBadge, PyGamer, etc. using displayio – learn.adafruit.com

Create a CircuitPython powered event badge with PyBadger, PyBadge and PyGamer!

PyBadger

You’re headed to the next big conference or event. They’ll likely provide a badge with your name on it, but what if you could have something better?

That’s where PyBadger and PyBadge (or PyGamer) come in! Use CircuitPython to easily create an interactive conference or event badge. You can display a “Hello My Name Is”-style badge that you can quickly add your name to, or customise it entirely. You can generate and display a custom QR code to direct people to your website. You can also display a “business card” with an image, such as your face or company logo, and a string of text, such as your email address.

PyBadger also gives you access to the other features on the board, such as buttons, NeoPixels, a light sensor, and an accelerometer. You can easily add all kinds of features to your badge if you choose to.

CircuitPython’s own Blinka is headed to the next Circuit Playground conference and wants to have the coolest badge there. This guide will walk you through Blinka creating an interactive conference badge. Follow along and customise it to fit your needs! – learn.adafruit.com. Send us pictures of your PyBadger-based badges via Twitter @Adafruit.

CircuitPython Turtle Graphics

Turtle Graphics

You may have heard of, or even played around with, turtle graphics. Simply put, this is a metaphor for drawing vector images where you control a turtle that can drag a pen along with it. Commands to the turtle include things like move forward some distance, turn left or right by some angle, lift the pen off the paper (so that moving won’t make a mark), or put it on the paper (so that moving will make a mark).

There have been many on-screen implementations of turtle graphics, most notably the LOGO programming language. Versions have also been made that control a robot that has a pen so as to create on-paper copies of turtle drawings.

This guide introduces a turtle graphics library for CircuitPython that is built on top of displayio for use on display based boards such as the PyPortal, PyBadge, and PyGamer – learn.adafruit.com

CircuitPython snakes its way to the Qwiic Keypad

QWIIC

A new CircuitPython library for the Sparkfun Qwiic Keypad, now part of the CircuitPython Community Bundle on GitHub. Thanks Gaston aka fourstix.

Qwiic Python

AND! SparkFun is working on Python libraries, which are compatible with CircuitPython boards, Raspberry Pi boards, and other Linux boards – GitHub.

Adafruit Circuit Playground Express makes an appearance in the latest Agents of S.H.I.E.L.D

S.H.I.E.L.D

S.H.I.E.L.D

Adafruit Circuit Playground Express makes an appearance in the latest Agents of S.H.I.E.L.D (video). Looks a like a TRINKET made it in there too – Adafruit.

Time to Say Goodbye to Arduino and Go On to Micropython/ Adafruit Circuitpython? by Andreas Spiess, #1 in views

Time to Say Goodbye

Time to Say Goodbye

Andreas Spiess video “Time to Say Goodbye to Arduino and Go On to Micropython/ Adafruit Circuitpython?” has now become the #1 video on his popular video channel. It racked up the most views, being the most watched in less than a year, congrats Andreas!

8/8/2019 is CircuitPython day!

Mark your cals’, some CircuitPython day events coming up!

NYCR

Getting started programming microcontrollers with CircuitPython by NYC Resistor – August 3, 2019.

ILUGD

CircuitPython Day with the India Linux Users Group Delhi (ILUGD) at the Delhi Technical University for Women – August 4, 2019. Meetup & Eventbrite.

8/8/2019 is CircuitPython Day! We’re in the planning stages and will have live videos, celebrations, and more for this very snake friendly date! Here’s some artwork in our public DropBox CircuitPython folder, check it out – DropBox.

If you need to get in touch with us for planning your event and more, email: circuitpythonday@adafruit.com

News from around the web!

Keyboard FeatherWings

Some updates from Arturo – 5 booting FeatherWings, not tested 100%, but keyboards and screens work. Still have 5 PCBs and some parts left – Twitter.

Maker Update #130

Maker Update #130, Adafruit Edition – YouTube.

Decoding GIF files in plain CircuitPython – GitHub.

ItsyBitsy CircuitPython Clock

ItsyBitsy CircuitPython Clock – hackaday.io

Brandon Satrom

Brandon Satrom’s Twitch stream, July 1st, 2019. Includes: AdaBox #012, and PyGamer! – Video.

DC27 CircuitPython

A DEFCON 27 (DC27) CircuitPython S-Add-On V1.69BIS Totem. Use CircuitPython to control up to 4 S-Add-Ons (SAO) with the V1.69BIS “standard” connectors – hackaday.io

CircuitPython nRF52840 LCD Displays Tutorial

CircuitPython nRF52840 LCD Displays Tutorial – Demonstrates how to use character LCD and color TFT displays on the nRF52840 with CircuitPython. It explores the DisplayIO library and using Bluetooth low energy to interact with LCD displays from a mobile phone – Rototron & YouTube.

Adding Neopixels to a Backpack Kit

Adventures in Sewing: Adding Neopixels to a Backpack Kit, by Blitz City DIYYouTube.

GBA Cartridge FeatherWing

GBA Cartridge FeatherWing’! An Adafruit nRF52840 Express Feather -> Lattice iCE40 FPGA -> Game Boy Advance – YouTube via Twitter.

Supercharge Your Hardware

Scott’s teardown presentation “Supercharge Your Hardware” is up on GitHub.

hackaday

And speaking of Teardown, Hackaday’s coverage.

USB Hub Control Jupyter Notebooks

USB Hub Control Jupyter Notebooks – Crowd Supply.

Keanu Gif Player

PyGamer making the rounds with the portable Keanu Gif Player – Gizmodo & Boing Boing.

Sean made an Azure Functions app returns the middle school’s default bell schedule as a JSON representation. Next, he is going to make it date-driven and then start writing apps for the Adafruit PyPortal – Twitter.

Farmer Says

A modern hack of the classic Farmer Says – GitHub. And The Vertiv Adventures – Part 1: Stovehouse Plans.

This is pretty cool, MicroPython has a new port for Microchip SAMD microcontrollers AND there’s a pull request to add our PyGamer board – GitHub. Also, by the same developer, Meowbit and PyGamer Experiments.

Getting started with MicroPython on the W600 – ULTRATECHIE.

Controllers

Controllers built and tested for the MicroPython workshop at EuroPython – Twitter.

ESP32-S2

The new ESP32-S2 Beta – First Look! – YouTube.

When Corporate Innovation Goes Bad — The 141 Biggest Product Failures Of All Time – CBINSIGHTS.

Lemmings

Code your own path-following Lemmings in Python – Wireframe issue 17.

MIDI over Bluetooth LE – Nordic & GitHub.

Factory Automation with Python Stories about Robots, Serial Ports, and Barcode Readers – YouTube.

Microscheme is a Scheme subset designed for Atmel/Microchip microcontrollers, especially as found on Arduino boards – GitHub.

Industrial Python! RAD-IO2 Series, neoradio2 Python library – GitHub.

Measuring Machine Learning – Towards Data Science – Towards Data Science.

Raspberry Pi 4 and Kali – Kali.

Benchmarking TensorFlow Lite on the New Raspberry Pi 4, Model B – Hackster.io

pypilot

There is a Python based auto-pilot project – pypilot is an open source marine autopilot & article about the developer.

Gen, a general-purpose probabilistic programming system with programmable inference – GitHub.

Publication of Research on Company Contributions to OSS Projects – OSI.

Scaling from 2,000 to 25,000 engineers on GitHub at Microsoft by Jeff Wilcox.

Learning git: Locations, Remotes, and GitHub. When you are new to git and GitHub, one of the first things that is helpful to learn is where your code is located. Do you want to contribute to open source or a friend’s project? – Carol Willing.

Pydroid 3 – IDE for Python 3 for Android – Google Play.

Choose Boring Technology – boringtechnology.club

Debian 10 Buster released – debian.org

quadplay

The quadplay fantasy console – GitHub.

Illustrated Children’s Guide to Kubernetes

The Illustrated Children’s Guide to Kubernetes – cncf.io

Laptop stickers

Nice collection of laptop stickers – Twitter.

PyDev of the Week: David Kopec from Mouse vs Python

CircuitPython Weekly July 8th, 2019 on YouTube

ICYDNCI

#ICYDNCI What was the most popular, most clicked link, in last week’s newsletter? The Quick Python Book, Third Edition by Naomi Ceder, foreword by Nicholas Tollervey.

Made with Mu – Alpha 2 Released with Web Mode

Mu 1.1 alpha 2 is here. Overview from the announcement: Visit Mu’s download page to get installable versions for Windows and OSX. If you’re on Linux, please run Mu from source by following the instructions.

Alpha 2 contains the largest number of updates, from the most culturally diverse group of contributors, for any release of Mu so far. This is a healthy sign that Mu is flourishing all over the world.

A particular highlight of such community participation is the contribution of Sean Tibor, a teacher from Fort Lauderdale, Florida. A teacher contributing code to the tools used to teach code is a wonderful sort of virtuous circle.

The full list of changes can be found in the change log for this release.

Mu Alpha 2

The most visible update is a new web mode and the “Adafruit” mode being renamed to “CircuitPython” mode.

Mu Alpha 2

Mu Alpha 2

The web mode makes it very simple and easy to create dynamic web applications using the Flask web framework. As the screenshot below shows, users are currently able to edit Python, HTML, and CSS files, run a local web server and view their website in their browser.

Why Mu? Mu 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 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

CircuitPython rules

CircuitPython rules

CircuitPython rules, er, ruler 🙂

Eyes

Eye see it.

New Learn Guides!

Cursor support

PYOA for PyGamer/PyBadge – Adding Cursor Support to CircuitPython from Brent Rubell

CircuitPython Turtle Graphics from Dave Astels

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

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 2365 42714
Adafruit_CircuitPython_BusDevice 1290 16760
Adafruit_CircuitPython_MCP230xx 367 2949
Adafruit_CircuitPython_Register 274 7361
Adafruit_CircuitPython_NeoPixel 254 6303
Adafruit_CircuitPython_Motor 205 4934
Adafruit_CircuitPython_BME280 161 2411
Adafruit_CircuitPython_ADS1x15 147 2516
Adafruit_CircuitPython_PCA9685 132 4419
Adafruit_CircuitPython_LIS3DH 128 2231

Upcoming events!

EuroPython

July, 8 to 14th 2019. The EuroPython conference series was initiated by the European Python community in 2001 and started with EuroPython 2002 in Charleroi, Belgium, as the first major Python conference entirely run by volunteers – ep2019.europython.eu

EuroPython 2019 attendees getting CircuitPython-powered PewPew Game Consoles!

PewPew

The device was created and designed by Radomir Dopieralski, a long time EuroPython regular and enthusiastic Python device and robotics builder.

PewPew

The PewPew is a simplified game console, programmable with CircuitPython, a variant of MicroPython. It comes with a 64 LED display and a set of small buttons to drive the console. They are looking for attendees to help Radomir with workshops on the PewPew. See more on the blog post and on the PewPew workshop page. The PewPew game hardware is here – GitHub.

PyOhio

PyOhio is July 27-28, 2019 in Columbus, Ohio, USA! Kattni Rembor will be the opening keynote speaker! PyOhio is a non-profit annual Python community conference held in Columbus, OH. It is free to attend and welcomes anyone with an interest in Python. Content ranges from beginner to advanced and is intended to be relevant to all types of Python users: students, software professionals, scientists, hobbyists, and anyone looking to learn more. There are keynotes, tutorials, talks, sprints, open spaces, lightning talks and more. Registration is now open! PyOhio

Open Source Summit and Embedded Linux Conference

Open Source Summit and Embedded Linux Conference, August 21 – 23, 2019 at the Hilton San Diego Bayfront, California USA. The Open Source Summit North America combines with Embedded Linux Conference North America (ELC). ELC has been a vendor-neutral technical conference where developers working on embedded Linux and industrial IoT products and deployments gather for education and collaboration. Open Source Summit brings together developers and open source professionals to collaborate and learn about the latest technologies – Linux Foundation.

PYCON UK 2019

PYCON UK 2019 – Cardiff City Hall, Friday 13th to Tuesday 17th September. PyCon UK is back at Cardiff City Hall, for five days of talks, workshops and collaboration. The conference also features a young coders’ day, themes dedicated to science and education, and numerous Python-related events – PyCon UK.

micro:bit Live 2019

micro:bit Live 2019 is coming to BBC MediaCityUK, Greater Manchester, England on October 4-5. This will be the very first annual gathering of the global micro:bit community of educators and partners – micro:bit.

2020 Open Hardware Summit – March 13th 2020, Tishman Auditorium at NYU School of Law, New York

OSHSUmmit

In 2020, the Open Hardware Summit will be celebrating their tenth anniversary. The 2020 Open Hardware Summit will be held Friday, March 13th, 2020 at Tishman Auditorium – NYU School of Law located at 63 5th Ave, New York, NY 10003, USA.

OSHSUmmit

In addition to it being the 10th of the Open Hardware Summit, it’s the 20th anniversary of the keyhole logo that evolved to the logo for the Open Source Association as well as the community-made Open-Source Hardware logo.

Latest releases

CircuitPython’s stable release is 4.0.2 and its unstable release is 4.1.0-beta.1. New to CircuitPython? Start with our Welcome to CircuitPython Guide.

20190707 is the latest CircuitPython library bundle.

v1.11 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.0b2.

1293 Stars Like CircuitPython? Star it on GitHub!

CircuitPython.org updates!

CircuitPython.org

By the numbers: CircuitPython has over 62+ boards supported, adding more each week & has 16+ SBC Linux boards supported, adding more each day, & 163 Libraries, adding more every week!

Call for help – CircuitPython messaging to other languages!

Hello world

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.

jobs.adafruit.com

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.

Adafruit is hiring! We’re looking for PHP developers in the NYC area! Email: apply@adafruit.com

12,966 thanks!

12,966

Adafruit Discord

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

BOOST!

Discord now offers “server boosts” we have 11 on our server (level 2), if we get to 50 boosts we get to level 3 and some other good features for the community: +100 emojis for a total of 250, 384 Kbps audio, vanity URL, 100 mb uploads for all members (and all the things we have now, like the server banner). Stop by and boost! https://adafru.it/discord.

ICYMI – In case you missed it

ICYMI

The wonderful world of Python on hardware! This is our first 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.

Codecademy “Learn Hardware Programming with CircuitPython”

Codecademy CircuitPython

Codecademy, an online interactive learning platform used by more than 45 million people, has teamed up with the leading manufacturer in STEAM electronics, Adafruit Industries, to create a coding course, “Learn Hardware Programming with CircuitPython”. The course is now available in the Codecademy catalog.

Python is a highly versatile, easy to learn programming language that a wide range of people, from visual effects artists in Hollywood to mission control at NASA, use to quickly solve problems. But you don’t need to be a rocket scientist to accomplish amazing things with it. This new course introduces programmers to Python by way of a microcontroller — CircuitPython — which is a Python-based programming language optimized for use on hardware.

CircuitPython’s hardware-ready design makes it easier than ever to program a variety of single-board computers, and this course gets you from no experience to working prototype faster than ever before. Codecademy’s interactive learning environment, combined with Adafruit’s highly rated Circuit Playground Express, present aspiring hardware hackers with a never-before-seen opportunity to learn hardware programming seamlessly online.

Whether for those who are new to programming, or for those who want to expand their skill set to include physical computing, this course will have students getting familiar with Python and creating incredible projects along the way. By the end, students will have built their own bike lights, drum machine, and even a moisture detector that can tell when it’s time to water a plant.

Visit Codecademy to access the Learn Hardware Programming with CircuitPython course and Adafruit to purchase a Circuit Playground Express.

Codecademy has helped more than 45 million people around the world upgrade their careers with technology skills. The company’s online interactive learning platform is widely recognized for providing an accessible, flexible, and engaging experience for beginners and experienced programmers alike. Codecademy has raised a total of $43 million from investors including Union Square Ventures, Kleiner Perkins, Index Ventures, Thrive Capital, Naspers, Yuri Milner and Richard Branson, most recently raising its $30 million Series C in July 2016.

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.