We celebrated MicroPython’s previous birthdays, last year in NYC we were dealing with shutdowns, death, sickness, and more – so we did not get a chance to do a post. But with a new year and 2021 going in the right direction, we are making some noise about the 8th birthday in all the ways we can!
Happy Birthday! We have stocked the official PyBoards from Damien, made direct donations to Micropython to support Damien’s work, make and share contributions, based on CircuitPython core on MicroPython and NOW with GitHub sponsors, we did a $5k sponsorship. Their goal is $5k a month in sponsors, so 1 full month is on us. We hope other companies and orgs that use MicroPython will consider doing a monthly or one-time as well. Companies / orgs can now sponsor, so this was Adafruit sponsoring.
Here are some important milestone dates we checked with the creator, Damien!
- 29th April 2013: first line of code written (in private, before anyone knew about it, before it was even called Micro-Python)
- 17th Sept 2013: first code running on a microcontroller, on the very first prototype of the pyboard
- 2nd Oct 2013: register micropython.org
- 4th Oct 2013: first commit in what is now the main repository
- late Dec 2013: source code up on GitHub
- 21st June 2014: last of the Kickstarter rewards sent out (for the first Kickstarter)
The Early Days of MicroPython – YouTube.
April 29, 2019 is the sixth ‘birthday’ of MicroPython. At the April Melbourne Meetup, Damien George, creator of MicroPython, delves into his archives and shows the earliest code and notes about the goals of the language. The material pre-dates the first git commit! Listen in as Damien reveals how and why the language began and evolved. It’s a nice way to celebrate MicroPython’s sixth birthday!
From today’s newsletter…
Today is MicroPython‘s 8th Birthday! The 29th of April marks the date on which the first line of code was written, which is now 8 years ago!
It has also been exactly a year since the last newsletter… so here is an update on the main things that have happened since then.
In the past 12 months the main MicroPython code has seen:
- 817 commits (there are now 12183 commits in total)
- 93 contributors, thank you to all of you!
- and versions v1.13, v1.14 and v1.15 were released.
MicroPython also gained the following new features:
- a new uasyncio module that is now in widespread use
- improved Bluetooth support, including pairing/bonding and Bluetooth on the unix port
- a new port to the new Raspberry Pi RP2040 microcontroller
- assignment expressions, the “:=” operator
- native CMake support, now used by the esp32, rp2 and zephyr ports
- a new raw-paste mode for the REPL which includes flow control
- almost all the code is now formatted via uncrustify and Black
- many other things!
MicroPython was also part of Google’s Season of Docs 2020, where we had a technical writer add a lot of documentation about the internal of MicroPython. And we are very happy to again be part of Google’s Season of Docs in 2021. So look forward to further improvements and additions to the docs.
We also joined GitHub Sponsors, which makes it easy for anyone to sponsor their favourite projects with a monthly donation. MicroPython is currently receiving USD$1250/month through this program, which goes towards maintenance of the open source code. Please visit our sponsor page and consider contributing!
Moving forward, we plan to make regular releases of MicroPython every two months, to make sure features and bug fixes can be taken up by the community more rapidly and regularly. We are also considering an overhaul of the forum (to use Discourse) and the wiki (to use MediaWiki).
For now you can enjoy the latest release of MicroPython, v1.15, which was released about a week ago. Find it here and firmware download here.
From the MicroPython team.
In newsletter #8 from MicroPython, Damien published some never-before-seen details about the start of MicroPython.
Here is an excerpt from the initial notes. The title is “Python board” and the date is 29 April 2013:
Python board 29/4/2013
The smallest, cheapest python.
A piece of hardware that is small and cheap, runs python scripts, and has good low-level access to hardware. If we can do it with a single chip, that would keep it small and cheap. Need then something with a large amount of flash and a decent amount of RAM, that also is cheap enough. Atmel SAM’s have order 1MiB flash and 128KiB SRAM, for around $10 one-off.
Main features:
- Implements Python 3 core language.
- Flash presents as a flash drive with vfat filesystem.
- Put python scripts on flash and it runs them (maybe have a (multicolour?) led that flashes on error and writes a “core” dump to the flash). This led can also double as a user output led.
- Can run multiple scripts on once.
Our strength would be small, cheap, simple, easy to replicate.
Can have a range of boards with different features. But all must be basically compatible and capable of running the same scripts.
Happy Birthday MicroPython! Thank you Damien for creating something special and open!