Common Topics

Recent Articles

Feature There was an article a while back, in Scientific American I think, that posed the question: given a super-powerful computer, with infinite computing power shoe-horned into a coke can, what would you do with it?*

The arrival of the Raspberry Pi (RPi) prompted a similar sort of question: given an (almost) disposable PC with late-1990s power, what would you do with it? Other than, of course, to use it as a cheap media centre.

Yes, yes, we all know it supposed purpose is to teach kids to code, but I mean, come on, where's the fun in that? If the target audience are anything like my two iPod junkies, then just learning to writing code is only going to interest the tiniest minority. Thankfully, it turns out that there's quite a lot you can do with your RPi. Which is important, because your average Linux head isn't going to persuade ten year olds to start pootling around with Scratch. But if a £29 PC is merely the gateway to doing other more exciting STUFF, then they may have to learn some coding to get it all to work.

In their defence, the average(?) Linux head is inured in a culture of solving common problems, talking about them in forums, and posting fairly detailed workthroughs. What's more interesting is seeing the crossover between Linux heads, open source electronicistas and a wide range of niche hobbyists. RPi is seeing action with groups from Apiarists (do you know the current state of your hive?) to Xenophiles (SETI, anyone?). Yachtsmen and Zumba DJs take note.

There's a large amount of overlap between the elements within projects, so starting with a web server will get you on the road to a weather station and so on. But let's not give the game away just yet. Here then, is a collection of useful and perhaps fun RPi projects which range in difficulty from plugging in some wire and downloading a bit of code, to firing up a soldering iron and whipping out the carpentry set.

Well, what are you waiting for?

Coffee table arcade game

Nostalgia alert! When I was 12, my best friend's grandfather owned a pub. In those pre-Sunday Licensing days, we could sneak in early, he would stick some free credits on for us, and three of us would have a quick Space Invaders tournament. How technology has moved on.

Approach
Mount an LCD screen into an old table, hook it up to your RPi. Get hold of an off-the-shelf arcade joystick and some arcade buttons, and with the judicious use some resistors as voltage dividers to tie them to the GPIO inputs on the RPi. Install (or compile) a copy of advanced MAME, and some choice games.

Take it further
Hook up two sets of controls for two-player games, add some sound with an amp and some speakers.

Online Help
This is a popular meme, so there are lots of workthroughs and examples out there, including some IKEAmodders. If you're not sure you want all the fuss, these chaps have some more expensive options available.

LAMP server

Yup, you can easily build a web server on an RPi. Why would you want to? As a first project, it's good practice, and novices will learn a heap of stuff: downloading and compiling source, Linux command line tools, configuration etc. For the rest, well, for a headless web-app server, an RPi may be all you need. Or use it as a test server, or for hosting a blog. It's also forms the basis for some other types of projects (see below), where having a web page that can display data from the RPi's GPIO inputs is half the battle.

Approach
There are precompiled SD card images out there for various flavours of RPi Linux, but half the fun will be getting it running from scratch.

Take it further
See some of the other projects below. But how about adding wireless and solar-power?

Online HelpOh, yes. Oodles. But a novice's best bet is probably to stick to the forums initially.

* The best answer, IMHO, was the one which pointed out that those pesky laws of thermodynamics implied what you really had was a very large bomb... [See Pickover, C. (1991) An informal survey on the scientific and social impact of a soda can-sized super-super computer. Computers in Physics, May/June 5(3) 290-301]