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,444 subscribers worldwide!
8/8/2019 is CircuitPython Day!
8/8/2019 is CircuitPython Day! This week we’ll 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 or sending links/photos post-event, email: [email protected]
CircuitPython day events coming up THIS WEEK!
Some of items arrived in time too! – Twitter.
MORE PHOTOS! – CircuitPython Day 2019 – ILUGD, HHC-Delhi.
Looking good! – Twitter.
Over the weekend! Getting started programming microcontrollers with CircuitPython was at NYC Resistor – August 3, 2019.
Dan is posting up some excellent CircuitPython related stereograms for e-ink and for CircuitPython Day! – Twitter.
Going to a SOCKS HOP for CircuitPython day ?? – Twitter.
PyRuler – Engineer Reference Ruler with CircuitPython
The first time you soldered up a surface mount component you may have been surprised “these are really small parts!” and there’s a dozen of different names too! QFN, TDFN, SOIC, SOP, J-Lead, what do they mean and how can you tell how big they are? Now you can have a reference board at your fingertips with this snazzy PCB reference ruler.
Measuring approx 1” x 6” standard-thickness FR4, this gold plated ruler has the most common component packages you’ll encounter. It also has font size guide, trace-width diagram, and a set of AWG-sized drills so you can gauge your wire thicknesses.
That’s not all, it’s even a fully featured microcontroller board! Embedded in the end is a Trinket M0, our little Cortex M0+ development board, and in addition, there are 4 capacitive touch pads with matching LEDs that our code will turn into a specialized engineer keyboard. We’re always needing to type O and µ, but we can never memorize the complex key-commands necessary. Thanks to CircuitPython, it’s super-easy to make a touch keyboard to solve this for you. Plug in the ruler into your computer, if it’s your first time using it, you’ll need to open up the code.py file and set the Keyboard mode to “True”. Now when you touch the pads, you’ll get a O, µ, p, or, when the Digi-Key logo is touched, the URL for Digi-Key’s Python on Hardware guide – Adafruit.
Kattni PyOhio keynote video
“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.org, YouTube.
Accelerating Driver Development with CircuitPython
An introduction to Python on hardware from the perspective of writing device drivers for embedded systems, Bryan Siepert – PyBay.
“My talk will start with an overview of embedded development and working with sensors, highlighting differences compared to normal computing. Once the broad strokes are covered I will explain the high level goals and techniques of writing drivers specifically before diving into the details I will first discuss using datasheets to determine how a device works and what it’s capabilities are. Following that I will discuss using the device’s capabilities by writing to and reading from registers and will include a review of basic bitwise operations. Next will discuss the common communication protocols used in embedded development before talking about the CircuitPython libraries that support them. Finally I will discuss some newer libraries that I use that make developing drivers very simple and compare it with traditional embedded development practices.”
CircuitPython 4.1.0 Released!
This is identical to 4.1.0-rc.1 except for the version number. 4.1.0’s biggest feature is speed! General execution of Python should be 2-5x faster and display refreshing will be faster as well. It shouldn’t break any code compatible with previous 4.x releases – GitHub.
NEW BOOK! CircuitPython for beginners with Adafruit Circuit Playground Express & Mu in Japanese
CircuitPython editing and saving on iOS is here!
It’s now possible to open, edit, and save Python code on iOS for embedded electronics plugged in, CircuitPython USB devices. This is a follow up to our post about Apple’s iOS 13 beta, which is now up to beta 5.
The upcoming iOS 13 allows iPads (and iPhones) to be more like computers, which means you’ll be able to do computer-like things such as plugging in a USB drive, opening up the Files app in iOS 13 and browsing the files. This is going to be fantastic for folks who want to use an iPad as their full-time desktop replacement, and if you’re a coder it looks like you’ll be able to do things like opening up Python .py files, use IDEs for coding, etc. A lot of schools use iPads, so this means any iPad will be able to be used to code for electronics: if the app can open a text file, it can be used to write Python.
iOS 13 beta 1 had some troubles: it deleted files off some devices that act like USB drives, for example, all the CircuitPython boards. But now the GOOD NEWS: we filed a bug report, and since iOS beta 5 IT IS ALL WORKING! This means any code editor for iOS can be used as a code editor for CircuitPython and you’ll be able to open, edit, and save your code to the device(s) plugged in to the iOS device!
Here’s a quick summary of how to edit a CircuitPython file now on an iPad running iOS 13 beta 5: plug in a CircuitPython board, such as a Circuit Playground Express, select a file on CIRCUITPY, drag or copy/paste the file to “On My iPad”, use an editor to change the file, then delete the original file on CIRCUITPY, copy/paste, share, or drag the file back to CIRCUITPY, giving it a new name, rename and it all saves and runs automatically. It’s awesome. The code editing apps are not aware of this new “USB storage” in iOS 13 yet; when they are (soon), it will be even easier. For now, just use the iOS Files app to move the files around.
Also, iOS 13 beta 5 clearly still has some bugs: you can’t save the file with its original name, so you need to to save with a new name, delete the old file, and rename the new file.
Full post and more – Adafruit.
And for future-us to do some testing, here is “iPad Pro USB-C hubs- the best, worst, and weirdest options” – The Verge.
CircuitPython sneks its way to Snek!
Snekboard is designed to hook up to Lego Power Functions motors and switches, allowing you to build robots out of Lego and control them with CircuitPython or the simpler snek programming language. Snekboard is 48mm × 48mm, which is the same size as 6 x 6 Lego studs allowing you to build a box out of Lego to hold it attached to your Lego design. It uses a single cell lithium polymer battery that fits under the board and charges over USB while snekboard is being programmed from the host – circuitpython.org & keithhp.com
CircuitPython snakes its way to DEFCON!
It’s August, it’s hot out, time for DEFCON. In recent years “Badge Life” the making of electronic badges for the hacking event, DEFCON, has become really popular. This year we’re seeing more and more CircuitPython-compatible badges! – Twitter. DEFCON happens August 8th to the 12th, we’ll post up more on the Adafruit blog and Twitter!
“RISC architecture is gonna change everything”
“RISC architecture is gonna change everything” …. “Yah, RISC is good.” Hackers (1995), accurately predicted the future, maybe… Big news! Adafruit joins the RISC-V Foundation!
“RISC-V is a free and open ISA enabling a new era of processor innovation through open standard collaboration. Born in academia and research, RISC-V ISA delivers a new level of free, extensible software and hardware freedom on architecture, paving the way for the next 50 years of computing design and innovation.”
“RISC-V (pronounced “risk-five”) is a free and open ISA enabling a new era of processor innovation through open standard collaboration. Founded in 2015, the RISC-V Foundation comprises more than 275 members building the first open, collaborative community of software and hardware innovators powering a new era of processor innovation. Born in academia and research, RISC-V ISA delivers a new level of free, extensible software and hardware freedom on architecture, paving the way for the next 50 years of computing design and innovation. The RISC-V Foundation, a non-profit corporation controlled by its members, directs the future development and drives the adoption of the RISC-V ISA. Members of the RISC-V Foundation have access to and participate in the development of the RISC-V ISA specifications and related HW / SW ecosystem.”
Adafruit is a member and listed in the RISC-V Foundation Members Directory – Adafruit.
We’re excited for open silicon! If someone is working on a RISC-V microcontroller with built-in USB and a good chunk of RAM please let us know! We’re looking forward to writing “CircuitPython snakes its way to RISC-V!”
For now, we’re experimenting with some of the K210 boards.
- Members at a Glance – RISC-V.
RISC-V news and more…
- RISC-V YouTube.
- RISC-V Twitter.
- RISC-V LinkedIn.
- RISC-V QQ.
- RISC-V RSS feed.
- RISC @ Adafruit blog search / RSS & RISC-V category @ Adafruit blog / RSS.
- RISC-V search on hackaday / RSS.
- RISC-V search @ hackster.io.
- RISC-V google news RSS.
- RISC-V #riscv Twitter.
- RISC-V #riscv on Instagram.
- RISC-V on Reddit / RSS.
- RISC -V on eBay / RSS.
- RISC -V on CNX / RSS Feed
WebUSB is here! TinyUSB now has WebUSB
PyCon AU 2019 – Python on hardware talks!
PyCon AU 2019 was/is August 2 – 6 2019, ICC Sydney. PyCon Australia (“PyCon AU”) is the national conference for the Python Programming Community, bringing together professional, student and enthusiast developers with a love for developing with Python. PyCon Australia informs the country’s Python developers with presentations, tutorials and panel sessions by experts and core developers of Python, as well as the libraries and frameworks that they rely on. Here are some of the Python on hardware talks!
We all somehow get the feeling that MicroPython is not quite the Python we know. During the talk, I’ll show what the “not quite” actually means. I’ll present a set of different issues I stumbled upon when working with different MicroPython powered boards ranging from memory constraints to API calls: By Michal Galka – pycon.au.
Extending MicroPython: Using C for good!*
MicroPython is a fantastic environment for embedded development. But it is an interpreted language; what happens when you hit performance limitations? Or want to use a new feature of your microcontroller? We’ll look at how MicroPython can be extended to add features and improve performance: By Matt Trentini – pycon.au & slides. The video was also posted – YouTube.
Check out Katie’s excellent PyBadge! – Twitter.
Adafruit IOT Updates with CircuitPython
MQTT comes to CircuitPython!
So, you have a CircuitPython project and want to connect it to the internet? You may want to consider adding MQTT to your project. MQTT is an extremely popular and lightweight protocol which can connect your project to the internet and quickly process network events. We’ve built a robust MQTT module for CircuitPython called CircuitPython MiniMQTT to quickly get you started connecting your projects to the internet and sending data around. Learn all about using MQTT with CircuitPython in on the Adafruit Learning System Guide here! learn.adafruit.com
Adafruit IO CircuitPython Library UPDATE: MQTT!
The Adafruit IO CircuitPython library has been updated with a new IO_MQTT class for accessing Adafruit IO’s MQTT Broker. We’ve included helpful methods for simplifying interactions with Adafruit IO over MQTT. Download the latest version of the Adafruit IO CircuitPython Library in the CircuitPython Bundle here and check out some examples which make use of the new MQTT class here – learn.adafruit.com
What is Adafruit IO?
Adafruit.io has over 14,000+ active users in the last 30 days and over 750+ Adafruit IO Plus subscribers. Sign up for Adafruit IO (for free!) by clicking this link. Ready to upgrade? Click here to read more about Adafruit IO+, our subscription-based service. We don’t have investors and we’re not going to sell your data. When you sign up for Adafruit IO+, you’re supporting the same Adafruit Industries whose hardware and software you already know and love. You help make sure we’re not going anywhere by letting us know we’re on the right track – io.adafruit.com
Sign up for our new newsletter “Internet of Things Monthly” here – adafruitdaily.com
CircuitPython powered swag
Jackie asked “What is the absolute best swag you have ever received?” – Twitter. CircuitPython got lots o love!
PortKi – Kiosk-style navigation screens for the Adafruit PyPortal
News from around the web!
From Daniel’s Engineering Design Club, the class learned about programming with the Circuit Playground Express, one of the favorite introductions to programming and electronics. The kids enjoyed competitively making their board as loud as possible – Twitter.
Dan is working on some CircuitPython code to load images onto an ePaper display from a monochrome BMP file – Twitter.
Automated rocket parachute deployment based on accelerometer data with CircuitPython! – Twitter.
Zrna hardware realizes the analog circuit you specify in software, in real time. Change any circuit parameter on the fly with an API request, at your lab bench or embedded in-application – zrna.org
The Personal Particle Accelerator is a ‘working’ model of a particle accelerator, a DIY kit that fits on your desk – Kickstarter. We are a backer, would like to see it Python-powered.
Glasgow is a tool for exploring digital interfaces, aimed at embedded developers, reverse engineers, digital archivists, electronics hobbyists, and everyone else who wants to communicate to a wide selection of digital devices with high reliability and minimum hassle. It can be attached to most devices without additional active or passive components, and includes extensive protection from unexpected conditions and operator error – GitHub.
You can now use API tokens to authenticate with PyPI – pipy.org
specgram.py demo – GitHub.
“How I built a spreadsheet app with Python to make data science easier” by Rick Lamers – hackernoon.
Exploring the Visible Spectrum in Python – CodeDrome.
GIT Mirror of: A compiler for ARM, X86, MSP430, xtensa and more implemented in pure Python – GitHub.
“How to set up a perfect Python project” by Brendan Maginnis – sourcery.ai
Searching for Pulsars with Machine Learning by Frank Ceballos.
4 Attempts at Packaging Python as an Executable – tryexceptpass.org
Using Machine Learning To Identify Smartphone Users By The Way They Walk by Steven Wessels.
Windows Terminal Preview v0.3 Release – devblogs.microsoft.com
LiveCode is both a language and a framework. It delivers executable native apps with the LiveCode Virtual Machine embedded – livecode.org. Kinda HyperCard like…
A Fascinating Melting Pot: Embroidery Meets Technology With TurtleStitch – siggraph.org
Dark is a holistic programming language, structured editor, and infrastructure, for building backend web services. It’s for frontend, backend, and mobile engineers – Dark.
Detecting Credential Compromise in AWS – GitHub.
Build Demolition Man’s verbal morality ticketing machine – raspberrypi/org
Some great Python turtle art from Rob – Twitter.
Metastability is Hard – xobs.io
Algebra, Topology, Differential Calculus,and Optimization Theory, For Computer Science and Machine Learning, Jean Gallier and Jocelyn Quaintance, Department of Computer and Information Science, University of Pennsylvania – PDF.
“Electronic Music Review Volume 1 1967 Moog Electronica. Stamped Issue No. 1 of Robert Moog’s “Electronic Music Review” magazine, published with the purpose to “provide a source of information on all electronic music.” Articles by Moog and Stockhausen” – eBay.
PhotoCard by Bill Atkinson. Capture the moment and send a gorgeous personal keepsake to be treasured for years. Create unique custom-designed postcards using your own photos or Bill’s expressive nature photos, and send them as eCards, or as real printed and mailed postcards. Type or dictate a message on the back, and add a decorative stamp and stickers. Make your creation even more personal with custom stamps and stickers of your own images, and finish with your signature. Brought to you by Bill Atkinson, author of Apple’s original QuickDraw, MacPaint, and HyperCard software – apps.apple.com. Wow, if you want to see the closest thing to Magic Cap and HyperCard on iOS, this is it!
#ICYDNCI What was the most popular, most clicked link, in last week’s newsletter? Changing Lives through Open Source, Passion and Mentoring – PyOhio, Kattni Rembor’s keynote.
PyDev of the Week: Eric Matthes on Mouse vs Python
Made with Mu – Zelda Master Sword
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
We only do eyes.
All the secure things!
Building Brains on the Edge: Running TensorFlow Lite models on microcontrollers by Alasdair Allan – hackster.io
“Building on the initial demo built by the TensorFlow team at Google, Adafruit has invested a lot of time over the last month into iterating the tooling around the speech demo to make it easy to build and deploy models. They’ve also put together a TensorFlow Lite for Micro-controllers Kit and accompanying the kit is a quick start guide and guide on how to train new voice models on your desktop with Docker.”
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!
Keep checking back for more updated learn guides!
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 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:
PyBay will be held August 15-18, 2019 in San Francisco, California USA with workshops Thurs-Fri and talks Sat-Sun. Bryan Siepert (@siddacious) will be giving a talk on Saturday titled “Accelerating Driver Development with CircuitPython”! PyBay is offered by SF Python, a volunteer-run organization dedicated to building a stronger Python developer community. PyBay offers influential speakers presenting crucial technologies to help beginners and seasoned developers alike get up-to-date quickly. Whether you’re interested in web technologies, data, devops, Python internals, or performance, PyBay will help you stay on top of your game. There will be workshops, tutorials, talks, keynotes, open spaces, lightnight talks, a maker happy hour and more! Registration is now open! PyBay
At the next monthly Puget Sound Programming Python (PuPPy) meeting in Seattle Scott will be giving a talk about CircuitPython and GameBoys. It is August 14th at Redfin 6pm – 8:30pm. Find out more on Meetup.
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 – 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.
Hackaday Superconference is November 15th, 16th, and 17th in Pasadena, California USA. The Hackaday Superconference is returning for another 3 full days of technical talks, badge hacking, and hands-on workshops: Eventbrite & hackaday.io
20190805 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,392 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
Notable Women in Technology 2019 – Limor “Ladyada” Fried
Notable Women in Technology, Crain’s New York Business. Our Ladyada, Limor Fried, makes the list!
“Crain’s New York Business’ inaugural Notable Women in Tech feature pays homage to 75 of these women in the Greater New York City area. Among them are deans, chief information officers and company founders in education, finance and fashion.”
Long story, we’ve been trying to get a signed copy of WIRED, signed by Satya Nadella, the CEO of Microsoft… but our self-imposed rule was it needed to be in trade for a copy of WIRED with our founder/engineer/CEO, Ladyada. And now it’s complete ?? Thank you team at Microsoft who helped make this happen! 2 COVER MODELS!
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.