PeekPanel by Nikhil André Luthra

Information you I need, when you I need it!

PeekPanel is a Raspberry Pi showing the information I usually need when leaving my home. It shows me information about public transportation, shipment trackings, weather and let's me control my lighting. Read on for further explanation!

Available information:

Hardware

This project mainly consists of a Raspberry Pi B+ and a 3.5" TFT touch screen (and of course: SD card, Wifi dongle, power adapter, Raspberry Pi casing etc.). There are a couple of different 3.5" screens available, but I have not seen any with a higher resolution than 480x320px.

Public transportation

The data is retreived from the Norwegian public transportation company Ruter. Ruter provides an open API with useful endpoints for both travel planning and real-time data. I am only interested in the latter since PeekPanel is supposed to show real-time information.

I regularly use public transportation to get to the city centre, so I will only pull real-time departures from my stop, Kværner, heading towards Oslo Central Station.

PeekPanel pulls updated information from Ruter every 20 seconds, from morning to night. When there are not any available departures, it will show phone numbers to the three main Taxi companies in the area.

I have previously created a public web application using Ruters API, why don't you have a look at TypoRuter!

Shipment tracking

Using Norwegian postal service and their Bring Developer API, PeekPanel is allowed to pull tracking information for shipments using their tracking number. Since tracking events can get really long, I only use the latest event for every shipment.

Adding shipments is done through a separate app, either by direct input or barcode scanning.

Weather forecast

Industry leader weather forecast service Yr.no provides their data in XML format. Taking advantage of this allows me to show the current weather, in celsius degrees and with an icon.

I use their service to show six periods of weather, each period consisting of maximum six hours.

Light control

My apartment is partially wired up with Nexa units which can be controlled through my Tellstick Duo by Telldus Technologies.

Tellstick Duo in connected to the internet and Telldus Live service. This allows me to control my lighting wirelessly from my computer, cellphone or web. Telldus also provides an API for creating your own controll service. Genious!

I will expand with more Nexa units later, but for now these three will suffice. The most important functionality is the "Turn on/off everything at once" button. Nifty when you are on the way in or out.

To access Telldus API and my Nexa units, I run Node-Telldus-Live locally on the Raspberry. The code is modified to modified and stripped to my needs only. Upon boot, the RaspberryPi will start the server so it can serve the panel.

Useful resources

  • http://joshondesign.com/2013/10/23/noderpi
  • http://elinux.org/RPi_Email_IP_On_Boot_Debian
  • http://ozzmaker.com/piscreen-driver-install-instructions-2/
  • http://www.lukebrowning.com/blog/touch-screen-chromium-kiosk-on-the-raspberry-pi/