PyMicro

by Noah Vawter, of the Computing Culture Research Group at the MIT Media Laboratory, Cambridge, Massachusetts 2009.

The goal of PyMicro is to explore the possibilities of programming in python on a microcontroller.

Microcontrollers are ubiquitous, useful electrical prosethetics. Python is a popular langauge for new programmers, inheriting many nice features of C++ ("The Latin of programming languages"-John Maeda).

Unfortunately, at this time, microcontrollers tend to have limited resources compared to the desktops and servers on which most python software runs. Therefore, using python must be done gingerly. At this time, there is a small handful of possible solutions to run python on microcontrollers. The following web pages will research and evaluate them.

Techniques explored for running python on microcontrollers discussed in study: Py2cpp, BoostPython, ShedSkin, PyPy, PyMite, py2c, Pyrex, boo, Rpython, Psyco, CPython, and Python HDL.

Software

  • Py2cpp
  • BoostPython
  • ShedSkin
  • PyPy
  • PyMite
  • py2c
  • Pyrex
  • Boo
  • RPython
  • Psyco
  • CPython
  • Pyasta

    Hardware

  • Python-native VHDL microcontroller design
  • UBW32 - zippy breadboard microcontroller. Arduino killer.
  • Previous Version of UBW (PIC-based!)
  • CPUStick - with StickOS
  • Conclusion