Manchester Developer

Updating Raspberry Pi RGB LED Matrix using SimpleStatus

Published : 15/01/2015
Categories : Projects, Python, Raspberry Pi,

Raspberry Pi / RGB LED Matrix

I am a proud owner of a Raspberry Pi B+ and recently bought an 8x8 RGB LED Light Matrix to use with it (as well as the camera module but that's a different story).

The light matrix contains 8x8 (64) LEDs that can be individually set to different colours and I can set these pixels using Python code.

Adafruit RGB LED Matrix

A big shout out to Jason Barnett whom helped me get the LED Matrix working in the first place and his company that I bought the component from Cyntech

SimpleStatus.co / Web-API

Incidentally i've had the domain SimpleStatus.co for a while and progress on it has been slow but if I can use it in conjunction with my PI I'll be very happy.

SimpleStatus.co (when completed) will be a website that a user can log into and declare a number of variables and update these values via the web interface or via (the whole point of the project) a REST API.

It is a central place for values that can be set/retrieved via a REST API. Hence the name SimpleStatus.

Python program on Raspberry Pi

I have written a Python program that runs on the Raspberry Pi that every 5 seconds does an HTTP Get on the SimpleStatus.co REST API to retrieve specific values. A delimited list of RGB values for each LED on the light matrix. It then splits and iterates through the list and updates each LED with the appropriate colour.

Putting it all together

This means that I can write a Windows Phone or Windows 8 app that allows the user to choose a colour for any of the 64 LEDS, it will call the REST API to update the value at SimpleStatus.co and the next time the Raspberry Pi Python app calls the REST API to retrieve the values (every 5 seconds remember) it will do so and then update the LEDS with the appropriate colours.

Raspberry Pi Simple Status

Future developments

I can think of loads of applications of this including:

  • Display the status of projects on the build server
  • Display the current health of the FTSE 100 throughout the day
  • Display the weather forcast with some basic pixel art
  • Notify me of mentions on Twitter or change in StackOverflow score
  • Display progress towards 10,000 daily steps via Fitbit API

-- Lee

Lee Englestone

Is a 32 year old senior web & software developer using the entire Microsoft stack.

Softball and Poker player.

Lee Englestone

profile for Lee Englestone at Stack Overflow, Q&A for professional and enthusiast programmers