Home Automation with vRealize Orchestrator and Wink

You might read the title and think to yourself ‘Why would I want to use vRO with Wink?”  Well there are a number of reasons.  I created this because being an automation specialist I thought it would be cool to automate my home.  When I started down this path I got a wink hub, a smartthing hub, a philips hue hub, Chamberlain MyQ Garage Door Openers, Kwickset locks, Leviton & GE switches, Light Bulbs, a Smappee Energy, Water, & Gas Monitor, Nest Thermostat, Nest Protect, EcoBee, Ring doorbell, Canary, Harmony Hub, and a number of other hubs, devices, and sensors.  As I started my project I realized on their own non of these products do a great job at automation.  Sure you can control things via na app, but I want more than that.   I don’t just want automation either, I want intelligent automation.

A simple example:  I want my door locks to be locked after a defined period of time being unlocked.  Well sure I can create a rule or robot that say lock door after x time, but that’s lacking intelligence.  Maybe I want to lock the door only if it is closed.  Non of these systems can do that.  However with vRO I can create a workflow that locks the door and checks the door sensor to determine if it is opened or closed and if it’s closed, lock the door, if not check again in x period of time until it can be locked.

Another example:  I park my vehicle in the garage.  I like to remote start my vehicle in the winter to warm it up.  I would sometimes forget to open my garage door then start my vehicle.  With vRO I can mount a Nest Protect on my garage door right behind my exhaust and set a rule that if CO is detected, open the garage door.  Alternatively I can use a OBDLink hooked up to my vehicle computer and through Dash determine if my vehicle is running and trigger garage door to open.  You get the idea.

Being able to build actual intelligence is key to having a truly smart home.  Understanding who is home and use logic to make decisions that are customized to those individual.    An example of this is my wife and I work opposite schedules.  Our schedules are on calendars and I can make home automation decisions based on the person as well as the schedule, if my wife is at work I like to set our room temperature differently, I also don’t like to have the ceiling fan on when I sleep, however my wife likes it colder and the ceiling fan on.  Well when I get up my wife is just getting home and going to sleep so I don;t want to adjust the temperature in our run wrong for her and she wants the fan on, but when she gets up I want the fan to go off and the temperature to change.

These things are not possible or easily done with the solutions on the market, but are possible with vRO orchestrating my home.  I have shared the basic Wink integration I have built as an alpha.  I will be continually updating this and adding more features.  Also look for vRO integrations into other home automation products coming soon as well as sample automation intelligence workflows that I have built.  Until then I hope you enjoy this package.

You can download the package on git at https://github.com/dailyhypervisor/wink-home-automation

wink_workflows

Example showing how I could check for the door to be closed to lock:

lock_doors

 

Example of all doors unlocking and garage doors opening when smoke is detected

unlock_on_smoke

 

Example of turning HVAC off if a window is open for more than 5 minutes

HVAC_off_window_open

 

 

Workflow Installation

  1. Import package into vRealize Orchestrator.
  2. Create HTTP-Rest Endpoint and Operations. (See Rest Operations Info) below for settings.
  3. Map HTTP-Rest operations in “Wink REST Operation Elements” Configuration Element.
  4. Set client_id, client_secret, username, & password in the “Wink REST Operation Elements”. (You must request api access from wink to obtain a client_id and secret)

Rest Operations Info

Operation Name Operation Template URL Method ContentType Config Element Attrib Name
Generate Rest Token /oauth2/token POST application/json generateRestToken_restOperation
Get Wink Device /users/me/{deviceType} GET application/json getDevice_restOperation
Activate Wink Object /{deviceType}/{deviceId}/activate POST application/json activateDevice_restOperation
Create Wink Object /users/me/{deviceType} POST application/json createDevice_restOperation
Delete Wink Object /{deviceType}/{deviceId} DELETE application/json deleteDevice_restOperation
Update Wink Device /{deviceType}/{deviceId} PUT application/json updateDevice_restOperation

Supported devices

  • Light Bulbs
  • Switches
  • Outlets
  • Thermostats
  • Door Locks
  • Garage Door

Current Features

  • Lock/Unlock Door Locks
  • Turn On/Off Light Bulbs
  • Turn On/Off Switches
  • Turn On/Off Outlets
  • Activate Wink Scenes (Shortcuts)
  • Open/Close Garage Doors (Except Chamberlain MyQ)
  • Get Smoke Dector Info
  • Get Sensor Info
  • Get Thermostat Info
  • Get Robot Info

To Do

  • Add ability to modify thermostat
  • Add ability to Open/Close Chamberlain Garage Doors
  • Add Support for Quirky Power Strip
  • Create Robots
  • Create Wink Scenes
  • Add Users and assign permissions
  • Create Installer
  • Add Event Subscription Support

Comments

  1. I really hope you are not actually using a Nest protect to open the grage door if it detects CO2. Its not detecting CO2, it is detecting if CO2 exceeds the max parts per million deemed safe. Also, if this rule failed for some reason, it would fail badly and could cause a trip to the hospital if your lucky.

    • Sid Smith says:

      I tried this method a few months ago and switches to using a OBDX module. In either event it worked really well, it opened the door within seconds of the vehicle turning on. It is in place as a fail safe so if the garage door failed to open, or I forgot to open it, that it would open the door. This is much better than the alternative of the door remaining closed and the garage filling with CO2.

Leave a comment

%d bloggers like this: