The Raspberry Pi, a credit card-sized PC, is drawing a lot of attention – and justifiably so. It is cheap. Very cheap. From its main distributors it is available for around £32. This makes the device so cheap that it is useful in a great variety of use cases. Originally intended as an educational platform, as described in this insightful speech by the project’s founder, the Raspberry Pi now competes with typical embedded system platforms for tinkering, like Arduino. In this blog post I want to list a few of the properties of this device.
The hardware on the Pi’s board is well documented. It executes one of many Linux distributions on an ARM11 CPU. This provides an excellent foundation for a variety of programming languages. Java is an interesting case, as it requires special support for the ARM architecture, which is provided by a couple of JVMs. If Linux and Java are not good enough for you, detailed information is available on how to write your own operating system for the Raspberry Pi ;-). The free community driven MagPi magazine lets you discover more of the Raspberry Pi’s ecosystem every month.
In comparison to other embedded platforms, the Raspberry Pi features less general purpose IO ports but far more graphics and multimedia power. It is well suited to operate attached to a HDMI display and can use this high resolution for 3D and video applications. Access to the hardware accelerated 3D capabilities is provided by OpenGL ES 2.0. This interface is even accessible in Java by means of jogl (see here for a positive report about jogl on the Raspberry Pi). I’m curious about how the story of Java (and maybe OSGi) on this embedded system will unfold.
To interface with the real world, you have three options:
- Network (USB WLAN dongle and built-in ethernet)
- GPIO (one of the prototyping boards or the Adafruit Pi Cobbler Breakout Kit might help here)
If you spontaneously develop ideas about how a problem could be solved by a small embedded system, you should put the Raspberry Pi at the top of your list for tools. Thanks to the low barrier to entry (cost and documentation), the enormous number of potential users on exactly the the same hardware should lead to a very well-documented platform. Looking at the project’s wiki today, they are well on their way. I am looking forward to seeing all the great projects that will evolve around the Raspberry Pi.