DesignSpark Electrical Logo

Innovation for Every Engineer

  • Brought to you by
  • RS Components
  • Allied Electronics
Andrew Back

September 12, 2012 15:07

Ten essential Raspberry Pi projects

Ten projects for the Raspberry Pi that range from educational to fun via highly useful.

This is by no means an attempt at a definitive list and the term essential is somewhat subjective, but if you're stuck for something new to do with your Raspberry Pi there may be some ideas here!

1. Have fun with LEDs

LED Light Chaser

LED light chaser project (© SK Pang Electronics Ltd)

For many their first Raspberry Pi hardware project will involve blinking an LED, but how about controlling 8 or 16 LEDs via a port expander IC. This will provide a gentle introduction to expanding the Raspberry Pi via the I2C bus, and if you were to use a bar graph LED array it could come in handy for more complex projects where you need to indicate the level of something such as temperature or sound etc.

2. Drive a liquid crystal display

Driving an LCD

Directly attaching a liquid crystal display to a Raspberry Pi (© Mikey Sklar, CC BY-SA 3.0)

Given the low cost and small form factor of the Raspberry Pi and that it runs Linux, it is finding use as a tiny server in applications such as a PVR, music player and NAS. What better way to extend such a setup than with a compact display that indicates what TV show is currently being recorded, music is playing or some other useful information.

There are a number of different ways that a display can be interfaced with a Raspberry Pi, and a detailed example by Mikey Sklar shows how to directly drive a 16x2 LCD.

3. Build an energy monitoring server


Emoncms (© OpenEnergyMonitor, GFDL)

The OpenEnergyMonitor project are developing “a fully open-source energy monitoring and control system that is suitable for domestic and industrial application”. Providing designs for monitoring and display hardware along with accompanying firmware and a web application for processing, logging and visualising data.

The project provide instructions for setting up the Emoncms web application on a Raspberry Pi, which makes for an ideal energy-efficient web server.

4. Automate your home


Pi-Face (© University of Manchester)

Add-on hardware such as the Pi-Face allows you to control heavier loads such as lights and motors and can be used to enable the creation of a Raspberry Pi-based home automation system. With lights and appliances [see below] being controlled remotely, according to a schedule, when certain sensors are activated, or perhaps in response to energy consumption.

[EDIT] Michael Kellett suggests that the Pi-Face may not be suitable for directly switching mains, and you should always check the voltage and current rating of equipment before use and ensure that it is suitably enclosed, earthed where neccessary and fused etc. Alternatively, Pi-Face and similar expansion boards could be used to control additional switching hardware that is rated for mains, e.g. relay, contactor or triac-based.

5. Experiment with interesting sensors

TinkerKit Accelerometer

The TinkerKit Accelerometer Module

Once you've had your fill of experimenting with simple heat and light etc. sensors why not progress to interfacing a 3-axis accelerometer or ultrasonic rangefinder.


6. Join the Internet of Things

Cosm Graph

Cosm graph from a Raspberry Pi temperature logger (© Mikey Sklar, CC BY-SA 3.0)

Once you have interesting data collected from various sensors why not make your Pi part of the Internet of Things by sending it to a real-time web service such as Cosm, so that you can then view this data online and applications can consume, process and make use of it in other ways.


7. Hook up a joystick and play old arcade games

Joystick wired to GPIO

Raspberry Pi joystick wiring (© Chris Swan)

Take time out from more demanding projects and relive the early days of gaming by creating a Raspberry Pi Arcade and wiring up up a joystick to GPIO.

8. Hack a custom enclosure

Raspberry Pi fitted inside a Cherry keyboard

RaspCherry Pi keyboard/case mod (© Lasse Beyer)

The Raspberry Pi is supplied without a case and this is a virtue that encourages experimentation and helps to show those new to electronics that the inside of a computer is not so scary! It also means that you get to select, create or modify your own enclosure, such as the excellent RaspCherry Pi project which fitted a Raspberry Pi and USB hub inside a PC keyboard.

9. Add a clock

Radio clock wired to a Raspberry Pi

A radio clock connected up to a Raspberry Pi

One way that the Raspberry Pi keeps costs down is by omitting a real-time clock, and this is fine as long as the time can be set from NTP servers on the local network or the Internet, but there may be times when you don't have access to NTP servers and still require accurate timekeeping. Under such circumstances you can fit a real-time clock that is backed by a rechargeable battery or large capacitor, and another alternative is to interface a radio clock.

10. Learn to program in assembly

Figure from assembly course

Figure from Lesson 1 of Baking Pi: Operating Systems Development (© Alex Chadwick, CC BY-SA 3.0)

There's a certain cachet that goes with being able to program a computer in assembly language, but the prospect is pretty daunting if this is something you have no experience of. However, thanks to Alex Chadwick at the University of Cambridge now anyone can try their hand at programming in ARM assembly language by following a clearly written online course with plenty of examples.

Andrew Back

Andrew Back

Open source (hardware and software!) advocate, Treasurer and Director of the Free and Open Source Silicon Foundation, organiser of Wuthering Bytes technology festival and founder of the Open Source Hardware User Group.



November 7, 2015 19:29

Pretty neat post, Andrew.

There are many projects I didn't knew before, great that you mentioned them!

BTW, what do you think about my resource on raspberry pi projects ( ... rry-pi-b-2 )? I did my best to cover everything in-depth, and although I’m a little biased I think it’s a lot better than what’s currently out there on the web :)

I would love if I could get feedback on it from an expert like yourself. I’m doing my best to get this in front of people who could really benefit from it, in this case your readers :)



October 17, 2013 02:11

Nice line-up. In addition to the ones on the list, a Raspberry Pi project "Call Mom Button" is another good starter.

It's a Raspberry Pi that automatically calls your mom (or anyone else specified in advance) using Plivo APIs, (sort of like a speed dial that makes an outbound call to any number, when you click on the button for the input.)

You can learn more about the project


January 21, 2013 04:27

This is a great list! I'm 11 years old and I blog about my adventures with my new Raspberry Pi. I'm going to try some of these. Follow my projects at