Smallest/cheapest possible Python platform?

R

Roy Smith

What's the smallest/cheapest/lowest-power hardware platform I can run
Python on today? I'm looking for something to use as a hardware
controller in a battery-powered device and want to avoid writing in C
for this project.

Performance requirements are minimal. I need to monitor a few switches,
control a couple of LEDs and relays, and keep time over about a 30
minute period to 1/10th second accuracy. Nice-to-have (but not
essential) would be a speech synthesizer with a vocabulary of maybe 50
words.

The Rasberry Pi certainly looks attractive, but isn't quite available
today. Can you run Python on an Arduino? Things like
http://www.embeddedarm.com/products/board-detail.php?product=TS-7250 are
more than I need, and the $129 price probably busts my budget.
 
R

Ross Ridge

Roy Smith said:
What's the smallest/cheapest/lowest-power hardware platform I can run
Python on today?

Not counting the Rasberry Pi, then probably a wireless router or one of
those cheap media streaming boxes running custom firmware.
Performance requirements are minimal. I need to monitor a few switches,
control a couple of LEDs and relays, and keep time over about a 30
minute period to 1/10th second accuracy. Nice-to-have (but not
essential) would be a speech synthesizer with a vocabulary of maybe 50
words.

Unfortunately I don't think any of these devices would have the GPIO
pins you'd want for such a project.
The Rasberry Pi certainly looks attractive, but isn't quite available
today. Can you run Python on an Arduino? Things like
http://www.embeddedarm.com/products/board-detail.php?product=TS-7250 are
more than I need, and the $129 price probably busts my budget.

The Arduino uses an 8-bit micro-controller, so probably not. (The ARM
emulator based port of Linux probably doesn't meet your performance
requirements.)

I think you may need to either wait for the Rasberry Pi to become
generally available or increase your budget. You should also consider
whether any of these devices have Python bindings to interface with
their GPIO pins. If not you'll probably have to end up writing some C
code anyways.

Ross Ridge
 
T

tinnews

Roy Smith said:
What's the smallest/cheapest/lowest-power hardware platform I can run
Python on today? I'm looking for something to use as a hardware
controller in a battery-powered device and want to avoid writing in C
for this project.

Performance requirements are minimal. I need to monitor a few switches,
control a couple of LEDs and relays, and keep time over about a 30
minute period to 1/10th second accuracy. Nice-to-have (but not
essential) would be a speech synthesizer with a vocabulary of maybe 50
words.

The Rasberry Pi certainly looks attractive, but isn't quite available
today. Can you run Python on an Arduino? Things like
http://www.embeddedarm.com/products/board-detail.php?product=TS-7250 are
more than I need, and the $129 price probably busts my budget.

Rasberry Pi is available, some have arrived, mine will arrive on
Monday or Tuesday (I'm talking about UK here).

I think getting python to run on an arduino device would be quite a
lot of effort even if it's possible. You might want to avoid C but
the 'sort of C' on the Arduino is very simple indeed, hardly more
difficult than Python.
 
P

Paul Rubin

Roy Smith said:
The Rasberry Pi certainly looks attractive, but isn't quite available
today. Can you run Python on an Arduino?

No. YOu want a 32-bit platform with an OS and perhaps 1 meg of memory.
And by the time you port Python to it unless it's there already, you may
as well have just written your application in C.

If you want something even cheaper than an Arduino, look at the TI
Launchpad. But you can't program that in Python either. There is
a standalone interactive Forth for it, if that's of any interest:
http://www.somersetweb.com/4E4th/EN.html

There are some fairly cheap ARM boards around that could run Python, but
they will be battery hungry compared to a Launchpad or Arduino, and
again, may not be worth the porting hassle if there's not an
already-done Python port.

Lua might be another scripting language of interest (www.lua.org). Sort
of the same idea as Python, not quite as nice, but smaller and easier to
embed. I think it wants around 50-100k of ram, still way out of the
Arduino range.
 
T

TheSeeker

What's the smallest/cheapest/lowest-power hardware platform I can run
Python on today? I'm looking for something to use as a hardware
controller in a battery-powered device and want to avoid writing in C
for this project.

Performance requirements are minimal. I need to monitor a few switches,
control a couple of LEDs and relays, and keep time over about a 30
minute period to 1/10th second accuracy. Nice-to-have (but not
essential) would be a speech synthesizer with a vocabulary of maybe 50
words.
You might take a look at the work being done by Dean Hall (with others) on the python-on-a-chip project:
http://code.google.com/p/python-on-a-chip/

Many platforms have been ported to, including Arduino Mega, RedBee EconoTAG, Teensy++ 2.0, Microchip PIC24/dsPIC, among others

This route may be more work than others, but considering budget may be attractive.

The Rasberry Pi certainly looks attractive, but isn't quite available
today. Can you run Python on an Arduino? Things like
http://www.embeddedarm.com/products/board-detail.php?product=TS-7250 are
more than I need, and the $129 price probably busts my budget.



What's the smallest/cheapest/lowest-power hardware platform I can run
Python on today? I'm looking for something to use as a hardware
controller in a battery-powered device and want to avoid writing in C
for this project.

Performance requirements are minimal. I need to monitor a few switches,
control a couple of LEDs and relays, and keep time over about a 30
minute period to 1/10th second accuracy. Nice-to-have (but not
essential) would be a speech synthesizer with a vocabulary of maybe 50
words.

The Rasberry Pi certainly looks attractive, but isn't quite available
today. Can you run Python on an Arduino? Things like
http://www.embeddedarm.com/products/board-detail.php?product=TS-7250 are
more than I need, and the $129 price probably busts my budget.



What's the smallest/cheapest/lowest-power hardware platform I can run
Python on today? I'm looking for something to use as a hardware
controller in a battery-powered device and want to avoid writing in C
for this project.

Performance requirements are minimal. I need to monitor a few switches,
control a couple of LEDs and relays, and keep time over about a 30
minute period to 1/10th second accuracy. Nice-to-have (but not
essential) would be a speech synthesizer with a vocabulary of maybe 50
words.

The Rasberry Pi certainly looks attractive, but isn't quite available
today. Can you run Python on an Arduino? Things like
http://www.embeddedarm.com/products/board-detail.php?product=TS-7250 are
more than I need, and the $129 price probably busts my budget.
 
N

Nobody

The Rasberry Pi certainly looks attractive, but isn't quite available
today. Can you run Python on an Arduino? Things like
http://www.embeddedarm.com/products/board-detail.php?product=TS-7250 are
more than I need, and the $129 price probably busts my budget.

You can't run Python on an Arduino. There are a number of boards
with ARM or PIC32 processors which can use Arduino daughter-boards
(shields), but all of the ones which I've seen have rather limited
RAM.
 
P

Paul Rubin

Rasberry Pi is available, some have arrived, mine will arrive on
Monday or Tuesday (I'm talking about UK here).

Early orders have been filled, more are being filled, but there is a
huge backlong and therefore a long wait if you waited til now to order.
If you want one right away, at least as of a week or so ago they were
going for $200-ish on ebay.

The Raspberry Pi is not really appropriate for a low powered portable
application anyway, because of relatively high power requirements
compared to an 8 bitter without all that media playback stuff.

The Beaglebone (www.beagleboard.org) is slightly higher end than the RPi
and runs Python nicely, though it faces the same issues.

I think a microcontroller (AVR, MSP430 etc) is a better fit for the OP's
application than anything big enough to run Python. If C is really
intolerable I know there are some micros that can be programmed in
BASIC.
 
R

Roy Smith

Paul Rubin said:
The Raspberry Pi is not really appropriate for a low powered portable
application anyway, because of relatively high power requirements
compared to an 8 bitter without all that media playback stuff.

It sounds like I can run one on 300mA @ 5V. For my application, I'll
have about 10 A-h available at 12V (motorcycle battery). Assuming
(mumble, cough, cough) 75% down-conversion efficiency, 120 W-h @ 12V
gets me 90 W-h @ 5V, which is 18 A-h, or 60 hours of operation. Of
course, I've got to run some other stuff too, but I don't think the
Raspberry Pi is going to blow my power budget.

In any case, the dirt-cheap price makes it really attractive. With what
I save on silicon, I can afford to buy more lead :)
 
P

Paul Rubin

Roy Smith said:
It sounds like I can run one on 300mA @ 5V. For my application, I'll
have about 10 A-h available at 12V (motorcycle battery).

OK, the RPi should be fine power-wise in that case, though I wouldn't
consider something with a 10AH motorcycle battery to be very portable.
which is 18 A-h, or 60 hours of operation.

The Launchpad can run 60+ hours on a watch battery, if the on-board
LED's are not lit. The LED's use much more power than the processor.
In any case, the dirt-cheap price makes it really attractive. With what
I save on silicon, I can afford to buy more lead :)

The RPi is an awesome value for such a powerful board, but the Launchpad
(while much less powerful) is far cheaper:

http://e2e.ti.com/group/msp430launchpad/w/default.aspx
 
T

Tomasz Rola

What's the smallest/cheapest/lowest-power hardware platform I can run
Python on today? I'm looking for something to use as a hardware
controller in a battery-powered device and want to avoid writing in C
for this project.

Performance requirements are minimal. I need to monitor a few switches,
control a couple of LEDs and relays, and keep time over about a 30
minute period to 1/10th second accuracy. Nice-to-have (but not
essential) would be a speech synthesizer with a vocabulary of maybe 50
words.

The Rasberry Pi certainly looks attractive, but isn't quite available
today. Can you run Python on an Arduino? Things like
http://www.embeddedarm.com/products/board-detail.php?product=TS-7250 are
more than I need, and the $129 price probably busts my budget.

If you are on tight budget and depend so much on Python, I'm afraid you
should either:

a. grow your budget

b. try another language

For what I know, I wouldn't touch Arduino unless I really had to. The
reason for this, I have been spoiled by machines, of which the smallest I
wanted to touch had 3mb of ram. Arduinos, with their ram in kilobytes at
best, don't qualify as interesting from my point of view.

Also, I don't think they are so much attractive price-wise. I would rather
buy myself a Beagle Bone, like this one:

http://www.adafruit.com/products/513

http://beagleboard.org/bone

However, if all that you want is flip some leds, this is huge overkill.

For led flipping, Arduino sounds ok, just not with Python-as-we-like-it.
Maybe some pseudoPython can be had on it. Myself, I would rather go with
one of Arduino's supported languages or assembly. Or Forth. If you land
among embedded systems, it's better to speak embeddish or you will feel
uncomfortable.

Regards,
Tomasz Rola

--
** A C programmer asked whether computer had Buddha's nature. **
** As the answer, master did "rm -rif" on the programmer's home **
** directory. And then the C programmer became enlightened... **
** **
** Tomasz Rola mailto:[email protected] **
 
C

Colin J. Williams

No. YOu want a 32-bit platform with an OS and perhaps 1 meg of memory.
And by the time you port Python to it unless it's there already, you may
as well have just written your application in C.

Python is available and included with the Debian distribution for the
RPi. 32 bit and smaller operations are provided. Floating point is by
software. A FPU is available for the AIM processor, but not provided
with the BRCM 2835 board.

Colin W.

[snip]
 
G

garabik-news-2005-05

Tomasz Rola said:
If you are on tight budget and depend so much on Python, I'm afraid you
should either:

a. grow your budget

b. try another language

such as PyMite...
 

Members online

Forum statistics

Threads
473,968
Messages
2,570,150
Members
46,697
Latest member
AugustNabo

Latest Threads

Top