Next one goes out in a week and it’s the best way to keep up with all things Python for hardware. It’s the fastest growing newsletter out of ALL the Adafruit newsletters!
Over 5,100 subscribers worldwide!
Blinka in spppaaaaccce! Welcome Pythonauts!
Here are 50+ micro satellites loaded with CircuitPython for a hackathon! Imagine all the cool SCIENCE students can conduct in orbit if the software barrier is lowered by using Python – Twitter. KickSat Sprite, 2019, running CircuitPython – GitHub.
We contacted Max to find out a bit more about this project, here are some the details – it’s out of this world!
I’m a materials science PhD student at Stanford working to make space more accessible. Did you know 65% of small satellite missions are unsuccessful? This directly hinders the amount of science being conducted– imagine if the first step to conducting a chemistry experiment required designing and building the fume hood or hotplate! That would be silly!
Small satellites have steep hardware and software learning curves. I’ll be speaking at SmallSat 2019 about Prof. Zac Manchester and I’s low cost, open source, radiation-tolerant hardware designs implemented on KickSat-2, currently in orbit. Now I’m addressing the software side of things with CircuitPython.
KickSat-2 deployment of “sprites.”
CircuitPython provides an approachable and logical means of conducting science with hardware. Paired with low-cost hardware shown to work in space, we can enable an new generation to question and explore the unknown. With the necessary “satellite stuff” already baked in, students can spend their time trying something new rather than reinventing the wheel (similar philosophy to early Arduino efforts and the microcontroller movement in general).
Empowered from the helpful discord community, I started off with CircuitPython with makerspace workshops like the snowflake.
Then my “SAM32” dev board, that’s potentially being integrated into the Stanford EE curriculum this fall. And now the workshop in New Zealand with the Breakthrough Initiatives folks.
This is all possible because of ADAFRUIT and the hard work/money you’ve invested in open source. THANK YOU. Please let me know if there’s anything I can do on my end to help the cause. I’d love to collaborate!
Python on hardware takes the stage in Singapore FOSSASIA
Embedded system or firmware programming can be very intimidating for beginners and often they tend to drop it very soon, thanks to connecting wires across a breadboard and writing bits and bytes to processor registers using bit shifting and logical operations. Enter MicroPython and CircuitPython which let’s you program microcontrollers using everyone’s favourite Python programming language, no toolchain, cross compiler, assembler required. The code lives on your board itself and every lower level detail is abstracted. And if you think you can just blink LEDs with it, you just imagined tip of the iceberg. You can actually track the current location of International Space station and turn on an alarm when it is passing above you. Quite Interesting, hah! There is so much we can do with it and it’s not scary. Talk included Introduction and some example project showcase and can also include basic hands-on experience.
CircuitPython Beta 4 release streamed live and Python on GameBoy!
CircuitPython – A sight for Thor eyes
Thor by Cheyenne. Smoke AND light up eyes, the light up eye effect are UV leds mounted in her helmet to make her contacts glow, all using an Adafruit Gemma M0 and programmed with CircuitPython – Twitter.
CircuitPython 4.0.0 Beta 5 released!
We are nearing the end of the betas of 4.0.0, and hope to be issuing a release candidate soon. There are still issues to fix before stable. Beta 5 squashed some of the most critical bugs though. So, if you are feeling adventurous please give it a try! When you find a bug please check the current known issues and file an issue if something isn’t already known.
Beta 4 was also released last week. It polished the
displayio API, introduced Pirate (aaaaarrrrr matey) language support and fixed a number of issue. All of this good stuff is in Beta 5. Download it here.
News from around the web!
The Adafruit Circuit Playground Express (CPX) board running CircuitPython 4.0.0 beta2 with a program reading MIDI over USB generating a variety of waveforms shown on a Telequipment (Tektronix) S51B oscilloscope (broken trigger). Sound is from the onboard, tiny 7.5mm speaker – YouTube.
MakerMelissa has a lot of good progress on this PyPortal calculator – Twitter.
There is a new mailing list for the PewPew game devices!
The PewPew family of devices were designed to be an affordable device for teaching game development using CircuitPython. An eight by eight display, with four shades of pixels, together with an equivalent of a Trinket M0 on board let you create and play simple games such as Snake, Tetris or Frogger. A number of example games, together with an online tutorial and documentation, let you quickly pick up the skills that you will later find useful when creating bigger games and interactive applications. A row of pins on the back also lets you connect anything you could use with other boards, so you can also use this for playing with electronics.
Documentation from TG-Techie’s CircuitPython powered Tricorder is coming along nicely – Twitter.
Codecademy did a Reddit AMA, Ask Us Anything, and looking closely a nice hint about some upcoming courses!
We have a lot more in store for you in 2019, including a hardware course with Adafruit…
Alex Dainis, PhD “Made A Thing!” video – LED HELIX, using CircuitPython – YouTube.
Lenin is making a HomeKit compatible laser “trip wire” with CircuitPython and particle hardware – Twitter.
Blitz City DIY is brewing up a Lynchian-themed PyPortal project – Twitter.
Ray Ozzie, known for being the Chief Technical Officer and Chief Software Architect at Microsoft and his role in creating IBM Notes, formerly Lotus Notes, amongst other things, is tinkering with Python on hardware – Twitter.
Meet cyber:bot, programmable with the online MicroPython editor & Mu. Includes an electronic breadboard to learn circuits & easily add sensors for students from middle school to college – Parallax.
Ever wanted to use Python modules with the micro:bit online editor? Now you can in the beta version! Using libraries and extending the micro:bit functionality is easy as 1-2-3 – micro:bit Python editor.
MicroPython NES Emulator on a RISC-V 64 Processor – Robot Zero One.
TinyPICO is a small, fully featured ESP32 development board, designed to give access to the power of the ESP32’s dual core 240 MHz and internet connectivity, in a package smaller than your thumb – Crowd Supply & Video.
Damien George, creator of MicroPython and the PyBoard – a video of a talk and questions via a Google Hangout from Australia. And a bit about MicroPython’s trip into space with the ESA – skillsmatter.com
Python Packages Since 2005 – pydist.com
Here is a MicroPython based Youtube API wrapper library and example code that allows you to connect to the Google Apps API backend to obtain channel stats for a YouTube channel – GitHub.
Balena is a good way to Flash OS images to SD cards & USB drives, safely and easily – balensaEtcher. This is a tool we use a lot, and seeing Shawn’s post “Worksheets for Your Maker Workshops” with the PDF that included is an extra good reminder.
10 Steps to Set Up Your Python Project for Success. How to add tests, CI, code coverage, and more by Jeff Hale.
How to Build a Python GUI Application With wxPython by Mike Driscoll.
Classic Computer Science Problems in Python is Published – David Kopec.
Why operators are useful – Guido van Rossum.
PEP 8 Speaks is GitHub integration for Python code style that automatically review Python code style over Pull Requests – GitHub.
pyckitup is a Python game engine you can use to make 2D games. It is free, open source and works on Web, Linux, OS X and Windows – GitHub.
5 Reasons Why You Should Learn Python by Bisrat Yalew.
Take Your API Beyond Static Documentation. Three ways to make your documentation come alive by Adam DuVander.
Text Data Visualization in Python, ScatterText – kanoki.org
PuTTY 0.71 is a new release, it includes a large number of security fixes, it’s also the first release to be built for Windows on ARM – PuTTY.
instantbox is a project that spins up temporary Linux systems with instant webshell access from any browser – GitHub.
Python Data Types, including built-in data types such as scalar types or numbers and collection types. Starting from variable declaration, different types such as numbers, list, tuple, strings, set and dictionary in Python with examples and practices. – By Dhiraj.
The KiCad project announced the release of version 5.1.0. This is the first ever minor version release of KiCad and was developed primarily to resolve compatibility issues with Linux GTK3 and long awaited support for Python 3 – kicad.org
Gorgeous photos of Boldport’s circuit boards. The images contained in this repository are licensed under an Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) – GitHub.
PyDev of the Week: Bruno Rocha from Mouse vs Python
Made with Mu – try builds before release
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.
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
Thinking about picking a day for “CircuitPython day” … maybe 8/8 of each year since it looks like 2 snakes? Are there better days/dates? Let us know.
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 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 138!
Here’s this week’s new CircuitPython libraries:
Here’s this week’s updated CircuitPython libraries:
- Adafruit CircuitPython BME280
- Adafruit CircuitPython Motor
- Adafruit CircuitPython FeatherWing
- Adafruit CircuitPython HT16K33
- Adafruit CircuitPython MIDI
- Adafruit CircuitPython PyPortal
- Adafruit CircuitPython Display_Text
- Adafruit CircuitPython MCP3xxx
- Adafruit CircuitPython ESP32SPI
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:
KiCon is a KiCad user focused conference. Held for the first time ever, April 26th and 27th 2019 in Chicago IL. Adafruit is a sponsor – kicad-kicon.com
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.
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 have extra addons 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.
20190315 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. We’re seeing more jobs for CircuitPython, so post up if you’re looking or seeking!
The Adafruit Discord community, where we do all our CircuitPython development in the open, reached over 11,194 humans, thank you! Join today! https://adafru.it/discord
Speaking of Discord, The Atlantic has a good article on non-gamers moving to Discord for their fan-bases. How an App for Gamers Went Mainstream – Discord has become an indispensable tool for internet creators to connect with their fans.
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.
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.