Smart Home Dashboard

We have use various reporting tools and web-based visualisations over the years with our smart home but decided it was time to improve the tools we use to allow better real-time visualisation of the context and data our smart home produces.

Note: This is a tool to help with diagnostics and to speed up our smart home development. It is not something we expect typical smart home users to use.

Our smart home is designed to capture all context and information and store it securely and safely within our home, so to gain access to this data in real-time we have had to add another service to enable real-time query via a secure interface. This service accepts encrypted requests and generates encrypted responses in JSON. This service is used in addition to the extensive logs that our smart home generates.

Design & Implementation

This dashboard provides a window into the core of our Home Control System (HCS) and each view allows us to see a a real-time snapshot of what's happening. This works because our HCS 'sees' everything and is the single point for storing all information and context in our smart home. We took this approach, so that it can always makes the best (most informed) decisions.

To enable this snapshot view we have developed a new service and secure interface that accepts a request for a view and returns the required data in JSON format. We are currently using a web-based dashboard, which renders this data in HTML using AJAX and Javascript. Adding another view, simply means adding a little bit more code to the DashboardService Java class and typically takes just 5 minutes coding to do.

Views

The set of views/visualisations available is extensible and growing as we implement more ideas. This is the latest list (in alphabetical order).

Note: We are experimenting with the CSS behind these web views, to provide the best users experience. The graphics below may be inconsistent in appearance whilst we optimise this aspect of the service.

Batteries

We have tried to avoid using batteries in our smart home but it is not always possible to run cables, so we do have a number of battery powered sensors in our home.

The graph icon (not shown here) can be clicked to view a graph for each sensor over a 24-hour period, week or month.

Doors

This is a simple view of all the connected doors in our home (which is pretty much all of them!), whether they are open or closed, when they were last opened and closed and the number of daily events for each one. We currently have 20 connected doors in our smart home but this includes outside gates, teh shed and the garage.

Environment

This is a view of the environmental data our smart home acquires from online data sources and 3rd party IoT sensors that publish useful information.

The graph icons (not shown here) can be clicked to view a graph for each data source over a 24-hour period.

Humidity

This is a view of all the humidity sensors in our smart home. Over the years we have added new ones for various applications and now there are 9 in our home.

The graph icon can be clicked to view a graph for each sensor over a 24-hour period, week or month.

Monitor

Our Home Control System (HCS) has a 'Monitor' class which is used to collect many performance metrics such as the number of events received each day and counts for various types of events. It also monitors the duration of each thread used to process each event and the average thread time.

This view provides a view of the many metrics monitored and captured.

Networked Devices

This is a summary view of all the networked devices in our home (currently over 100), their status, owner, and how long they have been on/off the network.

People

This is a view of all the known people modelled in our smart home and the 'Unknown' person that drives occupancy but not presence.

This visualisation is being updated to include location data for family members, collected from services running on their mobile devices.

PIRs

This is a simple but useful view of all the PIR sensors in our home. It shows when they were last triggered and how many events they have produced so far today. This provides a very simple view to check they are working.

The graph icon can be clicked to view a graph for each sensor over a 24-hour period, week or month.

Safety

This is a view of the binary (on/off) safety devices in our smart home, their current status and when the were last on and off. It is being updated to also include sensors that report a numeric value, e.g. CO sensors.

Slaves

We have about slave devices in our smart home, each being delegated with responsibility for a function/feature or tasked with collecting data from a number of sensors. Some also control appliances, lighting, etc. We monitor the satte of each slave and they all send 'heartbeats' to our Home Control System (HCS), to show they are still up and running and connected to the network.

This dashboard view provides a list of all the slaves and clearly shows their connection/availability status. It also shows how long ago they were last seen and how long they have been up and connected. This is a really useful tool for quickly checking everything is connected and working as expected. The data behind this view drives the notifications (currently via SMS) that we get if slaves do go missing.

Temperature

This is a view of all the temperature sensors in our home (currently 32), current value, maximum and miniumum today, last update time and the number of updates so far today.

The graph icon can be clicked to view a graph for each sensor over a 24-hour period, week or month.

Voltages

We have a number of slave devices in our smart home and many of these monitor their supply voltage. We also monitor the 12V UPS voltage. Voltages are an object type we ../../../plans/hcs/model.php" class="xref">model in our smart home.

This is a view of all the objects of type 'voltage' and allows us to clearly see if there any issues. Every voltage object modelled in our smart home also has lower and upper limits defined that will result in an alert being sent (typically via SMS) if the limts are crossed.

Weather

This is a view of weather sensors and data sources our smart home has access to.

Zones

This is perhaps the most useful visualisation of our smart home. It provides a view of the nested zone structure supported by our home and a view of occupancy, presence and proximity for each zone. It clearly shows how many people are in our home, who they are and in which zones/rooms.

This view is very useful when testing all of the things in our home that provide presence, occupancy and proximity data from light switches, to PIR sensors, connected doors and networked devices.

Cameras

Cameras have their own section. This covers all the IP cameras, the still images and video captured.

Logs

Logs have their own section. These are basically views (and summaries) of the daily system logs our smart home captures.

Security

Security has its own section. This is basically things about the integral alarm system in our smart home.

Summary

This is an on-going project and we are still adding new views and improving the current visualisations, as new test cases arise or we think of new things we would like to see.

Share ...
We are on ...
Facebook Twitter
YouTube Flickr Follow us on Pinterest