Nov 26 update: See note at bottom, where I retract a bunch of stuff in this post.
I've been playing with the Smartthings smart home hub. After two nights of hacking, I can see the great possibilities, but it's got some rough edges.
The default state model provided is a poor fit. The system default provides three states: Home, Night, Away. I think what's really needed is four states, a 2x2 matrix of Home/Away and Day/Night. The lighting I want for Away at night is different than that for Away at day.
Out of the box, there is no automation for state changes. You have to open your phone and hit the, "I'm leaving my house now" button. That's really frustrating, because Smartthings right out of the box (no sensors added) knows your presence (via phone) and sunrise/sunset. It has the information it needs to drive the state changes, it just doesn't do anything with it.
It's a challenge setting up the Smartthings to run that automation. First, I had to manually create the four states of my 2x2 model. Then I needed to create a Routine (an action recipe) for each state. Finally, I needed to install the Routine Director smart app, and map the Routines to drive the state changes.
By the way, the Routine Director app implements the 2x2 four-state model I wanted, not the three-state model that Smartthings provides. I think that's pretty strong confirmation that Samsung got it wrong.
I'm also concerned about the sustainability of the device. It's a low maturity device and owners would expect significant software updates. Also, it's heavily dependent on support from the cloud. These are recurring costs to the company, and I don't see how a one-time $99 cost covers that. I don't know if Samsung is doing the "we're in a customer acquisition phase, we'll worry about revenue later" thing. If so, I'm worried. I don't feel comfortable gambling my home infrastructure on a Twitter-like business model.
My final disappointment -- maybe my biggest one -- is the dependency on the cloud. I created a service on my Smartthings hub that allows me to control lights from a web browser. That service, however, doesn't run on my hub. It runs on graph.api.smartthings.com. I'm not comfortable with the reliability and privacy implications of running my home automation through the cloud.
So, enough complaining.
In spite of the above, I'm really excited by the platform. Plus, their developer support was good enough for me to build a custom app to control my home lights through a web browser.
My eventual goal is control not by a web browser, but a Raspberry Pi running voice recognition software.
The next challenge, however, is figuring out a way to have a motion sensor that's triggered by a human but not a cat. Otherwise, my living room is going to look like a disco when Rufus T. Firefly goes on the prowl at night.
Nov 26 update: After playing with the device a couple days, I want to retract the entire discussion on mode settings. (I call them "states" in the note above.) The apps I'm using allow time limitations to be asserted on rules, e.g. "apply this rule only between sunset and sunrise." So, the 4-state model I discuss isn't necessary. I currently have three modes defined: I'm Home, I'm Away, and I'm Watching TV.
I don't have an alternate to propose at this time. I'm in the "now that I know more, I realize I know less" situation. I may need a scene type capability, and not sure how that will interact with the modes I define. I'll blog about it when I know more.
In the meantime, you can see some of the stuff I'm playing with here: https://github.com/chip-rosenthal/SmartThings