ThingLayer: An open source real-time web interface for IoT

It has a similar look, but it also quite a bit different. I would guess this one requires a third party service as there are a number of things that would be difficult to implement with just a SmartApp (and realtime is impossible to the best of my knowledge).

One of the many joys of open source.

Yeah sadly, I already wish they would merge the two projects togetherā€”1 solution! :smile:

Thereā€™s this one too: Home Automation Dashboard (HAD)

They all try to solve different problems. The primary goal of ActiON is to be completely contained within a SmartApp.

Yeah, must admitā€”I love that one. Just not appropriate for me at the moment.

Iā€™d like to try it out as well.

I really like what @625alex alex has done, but as I understand, things like voice control and graphing are beyond the scope of what he is trying to do. I primarily want to control smart things with voice commands, others in my household like the dashboard concept, and I also want to be able to graph in real time the events happening in the house. There are just some things you cannot do within a smartapp at this point.

Cool stuff @jody.albritton. What did you build this with? You mentioned ā€œrealtimeā€ and I see your server is running on port 3000ā€¦ Any chance youā€™re using Meteor?

Itā€™s a ruby on rails app.

Mysql for long term data storage, firebase for real time event subscription. I have tested having my own mqtt server and various other solutions, but firebase just works.

No meteor, just jquery and javascript. I might use angular for some stuff down the line.

2 Likes

Wowā€¦I would pay for this interface. Looks awesome!
Scott

Updated video with audio.

5 Likes

video is private 321

Apologies. The video is published now.

This where I meant to ask that question. What is your setup to make this run? What is the interface youā€™re using? Etc, etc

A smart app creates all of the rest endpoints for the devices, this handles manual fetching and querying of the devices. The smart app also subscribes to the device events and logs them to a firebase instance. I have built a web app that runs on ruby on rails that is running on a small virtual server that handles authentication and the web interface seen in the demo videos. I created an api client on the rails server that can handle importing of devices into the webapp.

There is a javascript firebase client running on each page that subscribes to the firebase instance for the devices that need to be updated in real time.

The data from the firebase instance is moved into a local mysql server every three hours, at this point I am using the hacker version of firebase which is free.

The interface is based on bootstrap. Html, javascript, and jquery.

The webapp has been designed from the beginning with multiple users in mind. I plan on providing a hosted version and an open source version that anyone can download and run.

The way it works now is you create an account on my webapp, there are a number of available services that you can connect to and import devices from. The webapp provides an oauth flow that lets you select which devices you would like to allow and then imports them into a database. After you have some devices you can create locations and zones. You sort your devices into the zones and give them friendly names. After you have completed those steps, you get what you see in the videos.

Awesomely thanks for the response. I think itā€™s good for everyone to see just what is possible with smartthings. Great job!

Open is good, open is cool, open is powerful!

I am a large proponent of the Internet of Things. I think it is going to be a big deal. Still, some people donā€™t want to download and run servers in their own home, so I think there needs to be an easy on ramp for that group. Before I do that I want to make sure that I have an ssl cert and that my data partitioning is working the way it should. Most of the millions of events that are generated by connected devices are benign and you probably would not care if that data leaked out. Itā€™s those few events that are not so benign, like when you are away from home and your doors are unlocked, that data you want to keep secure.

You have done an amazing job! Solving some big problems that exist in the ST App as well as existing Dashboards. Great Job, it looks beautiful and is responsive! One thing I plan to do differently is move my HAD from Heroku to a local server to increase the loading speed, but Iā€™m waiting to do that until I reload my vmware machine.

Keep us updated with progress and in if you release your code.

It will probably be less responsive. My local vm is smoked by my digital ocean droplet. You might want to take a look at digital ocean I have been using them for two years, very cheap and very reliable. You will have full access to the box, so you can run whatever you want on it.

Thanks for the info, I have multiple nodes at vps.net similar to digital ocean. Iā€™ve thought about putting up a vps for my Home Automation, but i have plenty of resources locally to accomplish it too. Iā€™m in the process of fazing out some local servers that take too much power usage (about 400 watts between my main computer with dual screen and two older dell servers). Will have to see what I end up with when Iā€™m done with my upgrades. For now heroku is working, only reason its a problem is I refresh a lot when developing.

Would love to be able to try this out. How can I get involved?