Python for embedded systems?

Joachim Strömbergson Joachim at Strombergson.com
Thu Feb 24 08:57:56 CET 2011


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Aloha!

On 2011:02:24 08:04 , Rafe Kettler wrote:
> It's not a matter of language maturity, Python is very mature, it's a
> matter of design. Python is a high-level, garbage-collected,
> interpreted language, and that's not the ideal type of language for
> embedded systems.

Ideal, no. But usable and good to get a solution quckly, yes.

I've developed and deployed a camera control system based on PC/104
running GNU/Linux and the application written in Python. The PC/104 fit
the bill (money, size and power consumption) and the application
performance in Python was more than required. Writing it in Python using
modern tools talking to std devices in Linux made the development a
snap. And the code is portable and easy to change.

For really small embedded systems (8/16-bit MCUs) and hard
RT-constraints Python is not a very good approach for the final system.

But if you can fit a (possibly stripped down) standard OS such as Linux
including Python, you get a very nice environment for a lot of embedded
applications. Embedded is all about cost and hard constraints. But today
you get quite a lot of compute resources for little money and in small
form factors.

Running applications on the bare metal, applications written in C is not
always the optimal way to meet cost, technical and market requirements.

Also, Python is a very nice language to model and explore the
application and the design to be implemented. I use Python to build
models of IP cores to be integrated into ASICs and FPGAs. Not using
MyHDL for the actual core generation (yet) though.

- -- 
Med vänlig hälsning, Yours

Joachim Strömbergson - Alltid i harmonisk svängning.
========================================================================
Kryptoblog - IT-säkerhet på svenska
http://www.strombergson.com/kryptoblog
========================================================================
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk1mD4QACgkQZoPr8HT30QFgGwCg6fl4sTlUTF6ICSdC0nGy25hY
NBgAnRjY+sZTFO3mjVsS0lsIjCz57qoK
=FPHr
-----END PGP SIGNATURE-----



More information about the Python-list mailing list