Control smartthing from Pebble

That was some fun hacking! Although I’m not so sure about Pebble’s choice of C and Javascript for their development tools…

  • Loading switches via REST and JSON.
  • Using a simple PHP page to jumpstart the oauth process. Still need to figure out if there’s a way to simplify this part of the process… It should work in a similar way to appleTV authentication but I’m not sure smartthing supports this way of using oauth. If anyone knows of a way to get around this, please let me know!
  • The pebble app reads the list of devices and sends back updates over HTTP.

Currently I’m only supporting simple switches. I’ll probably add dimming at some point but my only dim-able lights are my LIFX bulbs and that’s a whole 'nother story. Here’s a couple of screenshots!

screen 1

screen 2

Images aren’t coming thru. :frowning:

For what it’s worth I rigged up something through tasker on my Android to be able to control various things with my Pebble and the Pebble Tasker app. What I did was setup three virtual on/off tiles and then I just have three tasker tasks that toggle those virtual on/off tiles.

Now what I can do is run a program that looks for that tile to turn on or off and execute whatever commands I want. For example, I have one app that will unlock my side door if this tile gets turned on. I have another that will ensure all my main floor and basements lights are off.

Hey @chrisb,

I had changed the URL of the server. I’ll attach the screenshots here again.

Tasker sounds like a powerful app. Unfortunately, nothing like this is possible on the iPhone and likely never will be :slight_smile:

What I wanted with this app is to have it dynamically update with whatever devices are available. I like it better than having to add links manually. BTW, it will also recognize those tiles you set up and allow you to control them (just like anything else with switch capacity). In fact, I use this to control my LIFX bulbs via Smartthings (pebble -> smartthings -> node.js -> LIFX, how’s that for roundabout?)

Hey @chrisb, long time no chat. Curious why you’re using the virtual tile in your setup, rather than just setting up Tasker to hit the endpoint for those devices (e.g., your door lock) directly? Is there some advantage I’m not seeing?

@csader,

Yeah, there are two advantages as I see it:

  1. Flexibility: Right now I have Virtual Tile 3 tied (using the Wireless 3-way app) to an outlet that have my spare laptop power adapter plugged into. But later I might decide I’d rather have it tied to the lights in the Kitchen. If I was pointing directly at my outlet, in order to change this I need would need to go back to the OAuth page, copy the link address, go to tasker, open the task and paste it in. Not impossible, but certainly more complex then what I have to do right now:

With the virtual tile I just open up the Wireless 3-way app, deselect the laptop outlet, and select the Kitchen light. Save updates and I’m done.

  1. Complexity: Right now at least you can’t tell a program to run via hitting endpoints, but if I’m firing at a virtual tile I can use that tile as a program trigger. For example, Tile two might be the trigger for a program that turns on or off a group of lights or maybe starts a ‘timer’ program that turns something on and then off 30 minutes later.

2a. Along with the ability to run programs this way I can add a security layer as well. In the case of unlocking my side door it made me a little nervous to think that there is a website out there… granted a very obscure one, but none-the-less, if someone hits that endpoint with just the right letter/number combination it would unlike my side door. Extremely unlikely, but (remotely) possible. So I wrote a program that looks for that tile to turn on… when it does it checks to see if my car is home. If my car is home, then it unlocks the door. If it isn’t, then it won’t.

@eran Is this Pebble app published to the app store? It looks awesome! Is there anyway to integrate Hello Home phrases?

Also, I noticed that, a while ago, you were working on a SmartThings/LIFX integration. Are you still working on that?

Thanks!

@jthurston422,

The pebble app is still unpublished. Still very brittle and lacking decent configuration. If you want to play with it, check out the github repo: https://github.com/limbo/smartthings-remote you can load it directly to CloudPebble.com and install it to your watch without even installing the pebble dev environment.

As for LIFX, I keep hitting snags with the project. Waiting to hear back from smartthings about why my basic device manager hangs during configuration… :confused:

Thanks Eran! I’ll check it out.

That LIFX issue doesn’t sound good, hopefully SmartThings will be able to help. I can’t believe LIFX hasn’t released IFTTT integration yet.

LIFX keeps saying cloud support is coming soon. I’m pretty sure you’ll see more integration options at that point (like they’re doing with Nest now).

I installed the SmartThings Remote to my pebble and it seems to be working. Does anyone know what the steps are to add/remove devices from the list available on the pebble? I’d like to just have access to my Hello Home phrases but can’t seem to figure out how to remove the devices I gave the app access to.

Hi @seannymurrs, try this URL and let me know if it works: https://graph.api.smartthings.com/oauth/authorize?response_type=code&client_id=56e91804-7694-41cd-9a17-5c65e447b438&r&scope=app