The next newsletter goes out in a week and being subscribed the best way to keep up with all things Python for hardware.
Over 6,340 subscribers worldwide!
PyOhio – Kattni’s Keynote!
PyOhio was July 27-28, 2019 in Columbus, Ohio, USA! Kattni Rembor was the opening keynote speaker!
“In trying to learn Python, I stumbled into a passion I had never considered. My path began with learning Python on hardware. Through mentorship and the help of friends, I began to flourish. Since then, I have continued to contribute in ways I never thought possible, between code, community, and becoming a mentor myself. This is the story of my journey and how mentorship can change lives.”
PyOhio is a non-profit annual Python community conference held in Columbus, OH. It was free to attend and welcomes anyone with an interest in Python. Content ranged from beginner to advanced and was intended to be relevant to all types of Python users: students, software professionals, scientists, hobbyists, and anyone looking to learn more. There were keynotes, tutorials, talks, sprints, open spaces, lightning talks and more – PyOhio.
STM32 support snakes its way to CircuitPython!
“This PR adds rudimentary support for the STM32F4 series. Supported features are REPL access over UART, and Microcontroller, Board and DigitalIO object support. Specify USB=FALSE when building. Also includes minor additions to Main.c and supervisor files to add preprocessor exclusion of optional modules for early stage ports, and fixes a potential bug in the nRF port.”
8/8/2019 is CircuitPython day!
Mark your calendars! CircuitPython day events are coming up!
Getting started programming microcontrollers with CircuitPython by NYC Resistor – August 3, 2019.
8/8/2019 is CircuitPython day! We’re in the final planning stages. We 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: firstname.lastname@example.org
DIY Light Painting wand using CircuitPython
Ayan sent this over for CircuitPython day!
“Made a long exposure light painting wand using CircuitPython for CircuitPython day hackathon attendees project inspiration.”
Resistance (to caitlinsdad) is futile
Be a PyBorg for CircuitPython day, by caitlinsdad – Twitter.
Issue 84 – The MagPi Magazine: Control servos with CircuitPython & Raspberry Pi
Issue 84 – The MagPi Magazine:
“Get your Raspberry Pi 4 Starter Guide in The MagPi magazine issue #84. Get to know your Raspberry Pi 4 with our in-depth starter guide. We’ll help you take the first steps with your new computer: discover the best way to set up and use a Raspberry Pi 4. Raspberry Pi 4 comes with a whole new operating system, called Raspbian ‘Buster’. Our starter guide has advice on the new features, and how to get the most from Buster. Coding and making with Raspberry Pi is the most fun you can have with a computer. And our starter guide will get you on your way.”
Read more, AND on page 44: Control servos with CircuitPython and Raspberry Pi. Do you want to use your powerful new Raspberry Pi 4 to control a robot? Adafruit’s Blinka library makes it very easy, by Melissa LeBlanc-Williams.
Issue 21 – HackSpace Magazine: CircuitPython Storage
CircuitPython storage: Save data to the flash drive for later retrieval, by Ben Everard:
“While investigating the performance of the latest CircuitPython release, we wrote a program to perform some benchmarks and then save the results to the storage so that it can be read by the computer the next time that the device is plugged in. Flash different versions of CircuitPython to the board and, voila’, we had all our benchmarks in one handy place.”
The Gizmo for Circuit Playground!
Extend and expand CircuitPython-powered Circuit Playground Express projects with a bolt on Perma-Proto that lets you connect solderable circuits in a sturdy and reliable fashion. This PCB looks just like a solderless breadboard, but has permanently affixed M3 standoffs that act as mechanical and electrical connections. Solder to the gold-plated traces to create your custom invention – Adafruit.
STEMMA and STEMMA QT – easy connections!
Here is our latest STEMMA Sunday video! – YouTube. STEMMA is not an original idea, we’re working within an ecosystem of many other plug and play systems. We started STEMMA in 2014, and intended it to be compatible with Grove only (’cause that’s all that existed at the time) but then when Qwiic came around in 2017, we added a smaller connector so we could work with those parts too! STEMMA attempts to be as cross-compatible as possible with both Grove and Gravity (compatible connectors & 3-5V power/logic). STEMMA QT is cross-compatible with Qwiic – STEMMA QT connector/cable is same as Qwiic. You can use STEMMA QT devices with Qwiic devices/controllers. A complete guide, with cross-compatibility tables, is available now on learn.adafruit.com
Snekboard v0.2 Update: Snek sneks its way to CircuitPython
Snek sneks its way to CircuitPython, Keith writes –
“I included a W25Q16 2MB NOR flash chip on the board so that it could also run CircuitPython. Before finalizing the design, I thought it might be a good idea to actually get that running. I’ve submitted a pull request with the necessary changes. I hope to see that merged at some point, which will allow users to select between CircuitPython and snek.”
Roadmap for next release of MicroPython: v1.11 -> v2.0
Here’s the latest GitHub issue which discusses the roadmap for the next set of features in MicroPython – GitHub.
News from around the web!
Check out Darrell’s PyPortal and PyBade, all set up for PyOhio – Twitter.
Issue 21 HackSpace magazine: Air quality monitor using adafruit.io!
CoderDojo session using Turtle Graphics on PyPortal, the code runs in both Chrome and on the PyPortal – Twitter.
Power Capability & Testing by Capable Robot Components. This is the CircuitPython supported programmable USB Hub with per-port power and data disconnects + dev board + I2C, GPIO, and SPI bridges – Crowd Supply.
Issue 21 HackSpace magazine: 10/10 for the Adafruit Perma-Proto HAT.
Game Devs of Color Expo was this weekend, Adafruit was a sponsor (with special thanks to RedHat) –
“Game Devs of Color Expo returns to the Schomburg Center in Harlem, New York on July 27, 2019! Join us for the 4th annual Game Devs of Color Expo – an inclusive games expo and conference creating a new normal in games by putting creators of color at the forefront, showing off their games, building conversations, and pushing games forward as an artform. #GDoCExpo“
Looks like Seeed Studio is gearing up to do some Python on hardware with ArduPy: MicroPython and Arduino – GitHub.
PyPy JIT for AArch64 – PyPy Status Blog.
Raspberry Pi Model Railway Automation – phwallen.github.io/smrc
ESP News, July 2019 – Newsletter.
Pete Warden is the technical lead of the mobile, embedded TensorFlow Group on Google’s Brain team, and was on ASK AN ENGINEER – YouTube.
Python sample code for robotics algorithms – GitHub.
GNES is Generic Neural Elastic Search, a cloud-native semantic search system based on deep neural network – GitHub.
“In Search of Excellence” at Apple Computer in 1984 – YouTube. Video posted by Andy Hertzfeld, wow!
“In Search Of Excellence” is a documentary produced by John Nathan, based on Tom Peter’s bestselling business book, that profiled six excellent companies. This is the segment about Apple Computer, filmed in the summer of 1984, featuring interviews with Steve Jobs and the original Macintosh team. Highlights include footage of the actual pirate flag waving in the wind.
Exploring the Frontiers of Visual Identity Design as Envisioned by Science Fiction – peculativeidentities.com/research
Alibaba’s chip division releases first core processor IP (based on RISC-V) – Adafruit.
Convert Inkscape SVG drawings to KiCad PCB and footprint modules with svg2shenzhen – GitHub.
kicad_halftone turns raster images into PCB silkscreen images using a halftone technique – GitHub.
From Matt – @roguelynn has posted her slides from #europython where she dives deep into asyncio. Although not targeting MicroPython specifically, this is invaluable for anyone using asyncio (including on MicroPython) – asyncio: We Did It Wrong.
Are We Really Making Much Progress? A Worrying Analysis of Recent Neural Recommendation Approaches – arXiv.org
Unraveling the JPEG – parametric.press
Working with MIDI data in Python using Mido – twillio blog.
Secure Everything with Azure Sphere – Hackster.io
PyDev of the Week: Ines Montani on Mouse vs Python
ICYDNCI – In case ya did not click it …
Made with Mu – A HyperCard inspired GUI framework for beginner developers in Python
A HyperCard inspired GUI framework for beginning developers in Python – GitHub.
Nicholas Tollervey is looking for feedback and more on PyperCard! – Twitter.
“A re-implementation of Adafruit’s CircuitPython PYOA module for non-CircuitPython computing environments. This module re-uses the JSON specification used to create HyperCard like “stacks” of states between which users transition in a Python-your-own-adventure style.”
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
Hallowing M4 – YouTube.
PyPortal Pynt. A tiny PyPortal. “Pint” sized, get it?
PyPortal … “MEGA”? not sure what we’re gonna call this yet, it’s big! It looks just like the PyPortal but this one has a small change – instead of a 320×240 pixel display, it’s a 3.5” 320×480, so twice as many pixels in about the same size!
Here are the names we are thinking of 🙂 It’s Pygantic!
PyPortal Aorta, PyPortal Atrium Colonnade, PyPortal Axis, PyPortal Beast Mode, PyPortal Billboard, PyPortal Boa, PyPortal Bridge, PyPortal Brydge, PyPortal Cavern, PyPortal Chanter, PyPortal Chonk, PyPortal Cinepy, PyPortal Companion, PyPortal Dolmen, PyPortal Drive-in, PyPortal Drive-py, PyPortal Eleven, PyPortal Epyc, PyPortal Eye-oh-tee, PyPortal Fetch, PyPortal Friend, PyPortal Fynd, PyPortal Gigantic (a big big love), PyPortal Grande, PyPortal Guide, PyPortal Guru, PyPortal Henge, PyPortal Hyper, PyPortal Impart, PyPortal Kiosk, PyPortal Locate, PyPortal Loggia, PyPortal Mentor, PyPortal Monolith, PyPortal Muri, PyPortal Neuron, PyPortal Oracle, PyPortal Pangolin, PyPortal Pano, PyPortal Panorama, PyPortal Panoramic, PyPortal Panos, PyPortal Piazza, PyPortal Picta, PyPortal Portico, PyPortal Py-oh-tee, PyPortal PyEye, PyPortal PyPad, PyPortal PyPanel, PyPortal PyPath, PyPortal Pyosk, PyPortal Pytcher, PyPortal Quake, PyPortal Scout, PyPortal Sensei, PyPortal Shift, PyPortal Stout, PyPortal Teleport, PyPortal Teton, PyPortal Titano, PyPortal Traveller, PyPortal Window, PyPortal Wisdom, PyPortal Wise, PyPortal X , PyPortal X2 … Deep Dish PyPortal, Heckin PyPortal, and Hella PyPortal.
STEMMA QT OLED Display!
This STEMMA QT equipped GPS unit is I2C compatible (whew, no UART required) and is only 1”x1” for a super compact GPS/GLONASS receiver. The backup battery is on the back.
Another secure chip… in STEMMA QT format!
Trevor at Adafruit is working on the features and interface for our new app: Circuit Playground Express BlueFruit.
New Learn Guides!
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!
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 171!
Here’s this week’s new CircuitPython 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:
Open Source Summit and Embedded Linux Conference, August 21 – 23, 2019 at the Hilton San Diego Bayfront. 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 – 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.
“October is Open Hardware Month! Check out the Open Hardware Month website. Host an event, find a local event, or certify your hardware to support Open Source Hardware. We are providing resources and asking you, the community, to host small, local events in the name of open source hardware. Tell us about your October event by filling out the form below. Your event will be featured on OSHWA’s Open Hardware Month page (provided you have followed OSHWA’s rules listed on the “Do’s and Don’ts” page).”
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
The Open Hardware. In 2020, we will be celebrating tenth anniversary of the Open Hardware Summit. 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.
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.
20190729 is the latest CircuitPython library bundle.
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.
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.
The Adafruit Discord community, where we do all our CircuitPython development in the open, reached over 13,295 humans, thank you! Join today! https://adafru.it/discord
Discord now offers “server boosts” – we have 12 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
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.
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.
And lastly, we are working up a one-spot destination for all things podcast-able here – podcasts.adafruit.com
Codecademy “Learn Hardware Programming with 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.
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.
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.