Skip to content
Switch branches/tags
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


This is the source code for the Switchboard Home Automation System, a smart home information kiosk built in PHP, CodeIgniter and jQuery. It was designed for the Raspberry Pi 1 Model B for a specific monitor in my home, so this is to be considered an alpha release; the code needs to be refactored and redesigned to be more responsive.


  • Outdoor weather -- currently taken from
    • Current temp, conditions, humidity, rainfall, wind/gusts and pressure
    • 3-hour forecasted temp and conditions
    • Hyperlocal -- uses nearby weather station instead of airport temperatures
  • Nest thermostat integration
    • Current temp, mode (including energy-saving mode), humidity and target temp + time
    • Uses unofficial thermostat API -- recent intermittent unexplained outages
  • News ticker -- currently taken from Reuters' U.S. news feed
  • Current date and time
  • Sunrise and sunset from PHP built-in functions
  • Moon phase -- currently taken from the Aeris weather API
  • Above served using AJAX
  • Updates at a randomly chosen interval between 4 and 6 minutes, to not flood APIs with requests at regular intervals and ensure relatively up-to-date data
  • Auto-recovery if an error happens when calling for data + offline indicator
  • Auto-dimming at night based on civil dawn/dusk

Short Term To-Do

  • Switch to official Nest API
    • May fix disappearing target temp time bug
  • The 3 R's -- Refactor, Refactor, Refactor
  • Make responsive -- less fixed design, more mobile support
  • Add upcoming TV episode schedule to ticker
  • Add daily forecast alongside 3-hour forecast
  • Redesign barometric pressure to place arrows to right of value
  • Redo offline/recovery indicator to be less obtrusive, show a retry countdown, and retain stale data for longer

Long Term To-Do

  • Add touch events to allow for control of Nest from kiosk
  • Nest Protect integration
  • Rudimentary admin controls for changing units, weather station, news feed etc.


This is the source code for the Switchboard Home Automation System.



No releases published


No packages published