Tell me who you are so I can see who controls my home! :)
Please enter your name
This website makes it possible for anyone to control my devices remotely. Instead of just directly presenting an overview of the devices, the controls are tied to the device's physical location in a complete 3D model of my apartment.
This was made possible by combining a set of technologies.
First, the apartment was modelled in Autodesk Revit and properties was assigned to every object. The devices that I wanted to control was given a property corresponding to which home automation system it was tied to and an unique ID obtained from that system's API. For instance, the ceiling lamp in my living room is a Philips Hue light bulb which has an ID of 4 on my network. So the property "hueID" was assigned to the object and given the value "4".
Now, in order to get the 3D model to the web, Autodesk Forge was used. Forge makes it possible to display complex 3D models and read their properties directly in the web browser. Here, I've also created a selection filter, so that only objects that can be controlled are selectable.
In order to tie everything together an express server was created using Node.js. Here, I created HTTP endpoints to send and retrieve data. For instance, when the user clicks or touches (yes, it works on mobile as well, you should give it a try!) my ceiling lamp in the living room, Forge reads the "hueID" property from the selected object, sends a GET request to my server which responds with the current state of that lamp and displays it to the user in a popup panel. If the user toggles the light, a POST request is sent to my server which updates the state of my lamp. Pretty cool, right?
The neat thing about doing it through 3D objects with parameters, is that if I get a new device all I need to do is to connect it to my network and assign the ID to a 3D object, and the backend takes care of the rest!
If you have any ideas about expanding the concept, I'd love to hear them! Also if you have a project that needs something like this, let's get in touch!
In short; you don't. I played with the idea of having live cameras that would trigger whenever a device was changed, but that could just as easily have been pre-recorded videos. Instead, I occasionally post videos on Instagram or Snapchat which shows how it looks like from my perspective.
Could you do this for my house/apartment as well?It is quite a lot of work to put something like this together, so unfortunately I won't have time to do personal projects.
How much did this cost?This is a non-commercial project that I've created with software I have access to through my job, and devices I've bought for my apartment. You can find the prices for the software and devices in the links provided further up on this page.