[G+] SmartThings – Week 1
I’ve had my #SmartThings hub for almost a week now and figured this was a good time to share some first impressions.
Overall it’s a fun system with lots of potential. Unfortunately it’s cumbersome and awkward in practice. It needs to be radically simplified if it’s ever going to be accessible to users without at least some technical knowhow and quite a bit of patience.
Setup is easy enough. Connect an ethernet cable to the hub and plug it in. Then launch the app on your phone or tablet, create an account, and enter the “welcome code” that came with your hub. The problem I ran into here is that when I did this the app became unresponsive for what seemed like close to a minute before I was presented with a screen telling me that my hub was updating and the process could take up to ten minutes. That’s all fair enough, but it seems like the messaging could be better and more timely. Offer me something to do like read a tutorial while the hub is updating instead of just a screen with a progress indicator.
The first device I added was an Aeon Labs Multi-sensor; motion, brightness, temperature, humidity. I plugged it in, pressed the big plus icon on the app’s main screen and it immediately discovered a new device. It presented me with a few options for what it thought this device was, I chose the specific one that I had, and it was added to my device list. That’s good, that’s how it should work.
The next thing I tried to add was a Cree Connected Dimmable LED light bulb. This did not go so well. It took several tries for SmartThings to find the new device and when it did it was labeled “Unknown”. This despite the Zigbee logo on the Cree package and the claim that it would work with Zigbee certified hubs. Luckily I had done my homework and I was not all that surprised. I knew ahead of time that I would have to get my hands dirty and add my own custom Device Type to my SmartThings account for this particular bulb. That involves setting up a developer account and copy/pasting some source code. That’s not a big deal for me, in fact that’s part of the fun I was looking forward to having with the system. But considering that this is a device that can be had for $15 at Home Depot and that has the Zigbee logo right on the box, it seems like a really bad thing that it doesn’t just work. Most people aren’t going to go through the hassle of becoming a developer just to get a light bulb to work. They’re going to return it as soon as they get as far as “Unknown”. That’s unfortunate because once you get it working, it’s a really nice light bulb.
The Android App
The Android app has been the weakest part of the SmartThings experience for me. It’s slow and awkwardly organized. The main screen displays a list of sections, but it’s not obvious how those sections are defined. “Home & Family” is simple enough, it’s a list of presence sensors associated with your account. “Things” is also self-explanatory, a list of all the devices linked to your hub, including all the presence sensors that are also listed under “Home & Family”. From there it starts to get confusing. “Lights & Switches” is devoted to an appropriate subset of the devices linked to your hub. That seems somewhat redundant since all those same things are listed under “Things”. I don’t understand the purpose of that section.
Then there are a series of sections that represent the different categories that your various SmartApps belong to. For me that’s “SmartThings Internal” for the IFTTT integration and “My Apps” for the stuff I’ve built myself. These sections also seem at least partly redundant since all the same apps exist in the UX alongside the devices they are linked to within the “Things” section. What’s even more confusing is that not all of the controls for your devices end up being listed under these sections. As far as I can tell, there are entities (I’m not sure what to call them) that can control devices, but are not SmartApps. For instance, if I navigate into “Things”, choose one of my light bulbs, and bring up the list of “SmartApps” that can control it I often see things in that list that don’t exist in any of the SmartApp sections available on my main screen. I think that’s because these things are some kind of default, built-in, basic control entities that aren’t considered SmartApps even though they appear in a list that is displayed after you tap a button labeled “SmartApps”. It could also be that the things listed in the “Lights & Switches” section on the main screen are actually SmartApps and not devices. Confusing either way.
The frustration caused by the awkward layout of the app is only made worse by the fact that it’s driven by what feels like a very clunky API. I have a pretty basic setup with 2 bulbs, 2 switches, and 1 multi-sensor. Despite that, it seems to take several seconds for the app to get the data for any given screen. And the service is just plain down quite frequently which results in the app displaying big red dialogs filled with error messages. I’ve had similar problems while working in the web based IDE that developers use to build their own SmartApps and Device Types. It’s aggravatingly sluggish at times.
I’m also not the biggest fan of the visual design. It’s not very Android-like in my opinion. It alludes to Material Design in some ways, but I think it should go a lot farther. Flatten the interface and get rid of large dead spaces like the big header image on the main screen.
And there’s no widget! I’m not a big user of Android home screen widgets, but if ever there was an app that needs one, this is it. It could be something as simple as a list of your switchable devices along with their current state, tap one to toggle it on/off. Or it could be much more cool and expose sensor data without the need to launch the app and drill down into an individual device. A home screen widget that showed me the temperature reading from one of my sensors (or the humidity level inside my humidor) at a glance would be super useful.
But enough negativity. One of the coolest thing about SmartThings, for me at least, is that you can get under the hood and build your own Device Types and SmartApps. As I mentioned earlier, this came in very handy when the system failed to recognize my Cree light bulbs, but you can get a lot more creative with it. For instance, in just a few hours I was able to build a Device Type that let me link my ancient Linksys IP security camera to my SmartThings system. In theory that will enable me to tell the system things like when motion is detected, send a snapshot to my phone, although I haven’t gotten so far as to actually try that yet. On an even more ambitious scale, I have it on my to do list to see if I can find a way to link some of the sensors in my old decommissioned Galaxy Nexus with SmartThings.
SmartApps are basically event handlers for your devices. At time A, turn off device B. When device X detects movement, turn on device Y. Those are simple examples, but SmartApps can be much more complex. There’s a good sized library of existing SmartApps, or you can build your own. I’ve opted to build all my own SmartApps because that exploration is part of the reason I got the system, even though I’m sure I’m replicating some existing ones.
The first thing I attempted was a smart dimmer for my Cree bulbs. The basic idea is to use the brightness sensor in the Aeon Multi to drive a calculation that outputs the appropriate value for the dimmer in the light bulbs. So the lights gradually get brighter each evening as it gets darker in the house.
Another idea I’m in the process of fleshing out is using multiple sensor readings to drive the decision making. When motion is detected, turn on the light, but only if it’s dark. Or at midnight, turn the lights off, but only if there hasn’t been any movement for 15 minutes.
Another very cool feature is that SmartThings has an IFTTT channel. I haven’t played around with it much yet, but I have managed to turn lights on and off from my #Moto360, which makes me excited to find out what else is possible.
One week in I’m very much enjoying SmartThings. Would I recommend it to my techno-geeky friends who like to tinker around with new toys? Definitely. Would I recommend it to friends or family who just want to quickly and easily automate some aspect of their home? No.
via [G+] http://ift.tt/1w7vEzb