I am the lead developer and copyright holder of a great little piece of software that I've built over many years called PyMite.
PyMite is a flyweight Python interpreter written from scratch to execute on microcontrollers with resources as limited as 64 KB of program memory (flash) and 4 KB of RAM. PyMite supports a subset of the Python 2.5 syntax and can execute a subset of the Python 2.5 bytecodes. PyMite can also be compiled, tested and executed on a desktop computer.
I offer PyMite under two licenses: the GNU Public License version 2 (GPLv2) and a commerical license. Please contact me directly if you are interested in a commercial license.
In 2002, my day job was at Motorola, Inc. working on the team that ported Sun's Java 2 Micro Edition (J2ME) to Motorola's mobile handsets. I wanted to learn more about how languages and virtual machines worked and I always preferred the Python language to Java, so I spent my personal time at home creating a Python VM that was smaller than J2ME. I am also a hobby roboticist and microcontroller afficionado; so I decided to try and fit this new tiny Python VM on my Atmel ATmega103 based robot control board.
In 2003, I presented the first release of PyMite at the Python language conference, PyCon in Washington D.C. I didn't get much feedback then because PyMite was still in such alpha condition. PyMite's development continued in a stop-and-go fashion over the years A couple contributors helped and a handful of individuals offered feedback and bug reports.
2009 was a turning point. With release 07, the code reached a usable and useful state. I presented PyMite in a lightning talk at Pycon 2009 in March and got a significant response. A couple dozen people attended an Open Space meeting I held on PyMite and we decided to form a community to push PyMite further along.
The python-on-a-chip project was created with the registration of the domain www.pythononachip.org, the formation of a mailing list at Google Groups and the creation of the python-on-a-chip project at Google Code. This project intends to use the PyMite VM and add to it device drivers and higher-level libraries to realize the vision of running Python on a microcontroller.