Saturday, March 17, 2012

Raspberry Pi, Linux boards and other embedded boards

The Raspberry Pi is a very cool board.

There are good alternatives with more I/O such as the (I one at work - along with several others) although those Linux-compatible boards are more expensive and less accessible, price-wise, than Raspberry Pi to kids, schools and even hobbyists for random jobs. At $35 (or £30 approx including tax+shipping) price for the Model-B (with Ethernet), they are ALMOST throw away and therefore can be put in places that you probably wouldn't put a £70/$90 beagle bone board. (There are a LOT of these Linux-compatible boards and I don't think any of them come anywhere close to the Raspberry Pi's price point)

The other thing about accessibility is the HDMI/DVI port plus keyboard/mouse support plus GUI Linux ... this means that rather than having the normal embedded to PC link that adds a layer of abstraction and hence puts a barrier up to getting things working (and double for learners). This applies to both other Linux-compatible embedded boards - but also to simpler embedded (non-Linux) boards like the cool Arduino and boards like the LPC boards made by people like Olimex (two of which I use LPC-ARM7 boards in my MouseRobot project).

Arduinos are roughly comparable in price to the Raspberry Pi ... although you can get a bottom end Arduino for about £14 (including Tax) ... hopefully the Model-A Raspberry Pi will be closer £20 ... and offers much more memory (Flash/RAM), processor speed and ease of use (but possibly less I/O without expansion and hence cost). Ethernet models cost more ... something like £44 and there are none with monitor/keyboard ports.

As I've said before there has been a revolution in embedded devices that has been happening slowly for years. Rather than small (usually 8-bit and 16-bit, but more recently 32-bit) very low-level embedded boards usually programmed in C and C++ (but occasionally Basic or Forth) with small memories - normally without even a small RTOS (real-time operating systems specifically for embedded systems) the future will bring more fully-featured operating systems (usually Linux) to the small to medium embedded space (large embedded sometimes used them anyway) ... with micros with a decent amount of flash and RAM memory so that programmers are no longer scratching around with tiny amounts of memory - optimising (saving) bytes.

Some people will see this negatively (code bloat, sloppy programming, etc.) but what it will bring is more complex applications, developed quicker and accessible to more people with access to easier programming languages and better development tools (which have always been poor in the embedded space).

I'm certainly going to get a Raspberry Pi (or three) at some point ... although I think I'm VERY late for the initial batch of 10,000: according the Raspberry Pi site, RS have 200,000 registrations of interest (includes me) with a growth of 10 per minute!

As for what I'm going to use these for ... I don't actually know for definite. There are several possibilities.

The display board is possible. As my mate Stu mentioned, the display board being Internet enabled would have been cool - and with the Raspberry Pi that would be easy. I'll likely keep the ByVac Forth board and just have the Raspberry Pi talk to that board, just for development speed. I'm sure the Raspberry Pi could have done the whole job - but it wasn't available at the time ... and the ByVac Forth board will provide display frame redraw and is already connected in circuit.

A Micromouse robot is another possibility - although it would probably be more effective for me to use a Linux-compatible board with a camera interface. (There is another alternative Micromouse idea I have ... more at a future date :-) )

And there are several other ideas I have ... the pretty normal ideas are things such as door bells, web cam servers, home control applications, TV-media server ...

Also some people I know might also get a Raspberry Pi for birthday presents later in the year :-)
Newer›  ‹Older