Wink


Wink is a home automation hub that can control a whole wide range of devices on the market. Or, as they say in their own words:

Wink offers one, quick and simple way to connect people with the products they rely on every day in their home.

Home Assistant integrates with the Wink API and automatically sets up any switches, lights, locks, fans, climate devices (thermostats, air conditioners, and water heaters), covers, sensors, alarms, and sirens.

There is currently support for the following device types within Home Assistant:

Authenticate using developer.wink.com

You need to set up a developer account with Wink. This process can take a few days to get approved.

Wink requests three pieces of information from the user when they sign up for a developer account.

  1. Name: This can be anything, for example, “Home Assistant”
  2. Website: The external address of your Home Assistant instance. If not externally accessible you can use your email address.
  3. Redirect URI: This should be http://192.168.1.5:8123/auth/wink/callback replacing the IP with the internal IP of your Home Assistant box.

No settings are required in the configuration.yaml other than wink:.

After adding wink: to your configuration.yaml and restarting Home Assistant you will see a persistent notification on the frontend with a CONFIGURE button that will guide you through the setup via the frontend configurator.

When using the configurator make sure the initial setup is performed on the same local network as the Home Assistant server, if not from the same box Home Assistant is running on. This will allow for authentication redirects to happen correctly.
wink:

Full oauth authentication (legacy)

This should be used for users that obtained their client_id and client_secret via email from Wink support prior to developer.wink.com’s existence.

wink:
  email: YOUR_WINK_EMAIL_ADDRESS
  password: YOUR_WINK_PASSWORD
  client_id: YOUR_WINK_CLIENT_ID
  client_secret: YOUR_WINK_CLIENT_SECRET

Please pay attention that the required entries are only needed for legacy OAuth access.

Configuration Variables

email

(string)(Required)

Your Wink login email address.

password

(string)(Required)

Your Wink login password.

client_id

(string)(Required)

Your provided Wink client_id.

client_secret

(string)(Required)

Your provided Wink client_secret.

local_control

(boolean)(Optional)

If set to true state changes for lights, locks and switches will be issued to the local hub.

Default value:

false

Local control:

  • Wink’s local control API isn’t officially documented and therefore could be broken by a hub update. For these reasons local_control defaults to false.
  • Using local control doesn’t appear to make commands any quicker, but does function in an internet/Wink outage.
  • Local control is also only available for the Wink hub v1 and v2, not the Wink relay.
  • Local control isn’t used during the start-up of Home Assistant; this means initial setup requires an active internet connection.
  • Local control requests are first sent to the controlling hub. If a request fails, that request will attempt to go online.

It is possible for the hub to get into a bad state where it stops accepting local control request. If this happens, you will notice requests taking significantly longer as they are redirected online. This doesn’t happen often, but when it does, it appears to be resolved by rebooting the hub.

The following error will be logged if the hub is rejecting local requests.

Error sending local control request. Sending request online

Service refresh_state_from_wink

The Wink integration only obtains the device states from the Wink API once, during startup. All updates after that are pushed via a third party called PubNub. On rare occasions where an update isn’t pushed device states can be out of sync.

You can use the service wink/refresh_state_from_wink to pull the most recent state from the Wink API for all devices. If local_control is set to true states will be pulled from the devices controlling hub, not the online API.

Service pull_newly_added_devices_from_wink

You can use the service wink/add_new_devices to pull any newly paired Wink devices to an already running instance of Home-Assistant. Any new devices will also be added if Home-Assistant is restarted.

Service delete_wink_device

You can use the service wink/delete_wink_device to remove/unpair a device from Wink.

Service data attribute Optional Description
entity_id no String that points at the entity_id of device to delete.

Service pair_new_device

You can use the service wink/pair_new_device to pair a new device to your Wink hub/relay

Service data attribute Optional Description
hub_name no The name of the hub to pair a new device to.
pairing_mode no One of the following [zigbee, zwave, zwave_exclusion, zwave_network_rediscovery, lutron, bluetooth, kidde]
kidde_radio_code conditional A string of 8 1s and 0s one for each dip switch on the kidde device left –> right = 1 –> 8 (Required if pairing_mode = kidde)
Calling service wink/pull_newly_added_wink_devices after a device is paired will add that new device to Home Assistant. The device will also show up on the next restart of Home Assistant.

Service rename_wink_device

You can use the service wink/rename_wink_device to change the name of a device.

Service data attribute Optional Description
entity_id no String that points at the entity_id of device to rename.
name no The name to change it to.
Home Assistant entity_ids for Wink devices are based on the Wink device's name. Calling this service will not change the entity_id of the device until Home Assistant is restarted.
The Wink hub, by default, can only be accessed via the cloud. This means it requires an active internet connection and you will experience delays when controlling and updating devices (~3s).

Custom Wink devices and their services

  • GoControl siren and strobe
  • Dome siren/chime/strobe
  • Quirky Nimbus (Legacy device) These can no longer be officially added to your Wink account

Service set_siren_auto_shutoff

You can use the service wink/set_siren_auto_shutoff to set how long the siren will sound before shutting off.

Service data attribute Optional Description
auto_shutoff no Int. One of [None, -1, 30, 60, 120] (None and -1 are forever. Use None for gocontrol, and -1 for Dome)
entity_id yes String or list of strings that point at entity_ids of siren.

Example:

script:
  set_all_sirens_to_one_minute_auto_shutoff:
    sequence:
      - service: wink.set_siren_auto_shutoff
        data:
          auto_shutoff: 60
The following services only work with the Dome siren/chime.

Service set_chime_volume

You can use the service wink/set_chime_volume to set the volume for the chime on your Dome siren/chime.

Service data attribute Optional Description
volume no String. One of [“low”, “medium”, “high”]
entity_id yes String or list of strings that point at entity_ids of the siren/chime.

Example:

script:
  set_chime_volume_to_low_for_all_chimes
    sequence:
      - service: wink.set_chime_volume
        data:
          volume: "low"

Service set_siren_volume

You can use the service wink/set_chime_volume to set the volume for the chime on your Dome siren/chime.

Service data attribute Optional Description
volume no String. One of [“low”, “medium”, “high”]
entity_id yes String or list of strings that point at entity_ids of siren/chime.

Example:

script:
  set_siren_volume_to_low_for_all_sirens
    sequence:
      - service: wink.set_siren_volume
        data:
          volume: "low"

Service enable_chime

You can use the service wink/enable_chime to set the tone and enable the chime on your Dome siren/chime.

Service data attribute Optional Description
tone no String. One of [“doorbell”, “fur_elise”, “doorbell_extended”, “alert”, “william_tell”, “rondo_alla_turca”, “police_siren”, “evacuation”, “beep_beep”, “beep”, “inactive”]
entity_id yes String or list of strings that point at entity_ids of siren/chime.

Example:

script:
  execute_doorbell
    sequence:
      - service: wink.enable_chime
        data:
          tone: "doorbell"

Service set_siren_tone

You can use the service wink/set_siren_tone to set the tone on your Dome siren. This tone will be used the next time the siren is executed.

Service data attribute Optional Description
tone no String. One of [“doorbell”, “fur_elise”, “doorbell_extended”, “alert”, “william_tell”, “rondo_alla_turca”, “police_siren”, “evacuation”, “beep_beep”, “beep”]
entity_id yes String or list of strings that point at entity_ids of siren/chime.

Example:

script:
  set_siren_to_alert:
    sequence:
      - service: wink.set_siren_tone
        data:
          tone: "alert"

Service set_siren_strobe_enabled

You can use the service wink/set_siren_strobe_enabled to enable or disable the strobe when the siren is executed.

Service data attribute Optional Description
enabled no Boolean. True or False.
entity_id yes String or list of strings that point at entity_ids of siren/chime.

Example:

script:
  disable_siren_strobe:
    sequence:
      - service: wink.set_siren_strobe_enabled
        data:
          enabled: false

Service set_chime_strobe_enabled

You can use the service wink/set_chime_strobe_enabled to enable or disable the strobe when the chime is executed.

Service data attribute Optional Description
enabled no Boolean. True or False.
entity_id yes String or list of strings that point at entity_ids of chime/chime.

Example:

script:
  disable_chime_strobe:
    sequence:
      - service: wink.set_chime_strobe_enabled
        data:
          enabled: false

Service set_nimbus_dial_state

You can use the service wink/set_nimbus_dial_state to update an individual dial’s value/position and its labels

Service data attribute Optional Description
entity_id no String or list of strings that point at entity_ids of chime/chime.
value no A number, should be between the dials min and max value (See set_nimbus_dial_configuration below)
labels yes A list of strings the first being the value set on the dial’s face and the second being the value on the dial face when the Nimbus is pressed

Example:

script:
  set_dial_1_value:
    sequence:
      - service: wink.set_nimbus_dial_state
        data:
          entity_id: wink.nimbus_dial_1
          value: 150
          labels:
            - "Dial 1"
            - "150"

Service set_nimbus_dial_configuration

You can use the service wink/set_nimbus_dial_configuration to update an individual dial’s configuration.

Service data attribute Optional Description
entity_id no String or list of strings that point at entity_ids of chime/chime.
rotation yes One of “cw” or “ccw” the direction the dial hand should rotate.
ticks yes A positive number, the number of times the hand should move.
scale yes One of “linear” or “log” How the dial should move in response to higher values.
min_value yes A number, the minimum value that the dial can have.
max_value yes A number, the maximum value that the dial can have.
min_position yes A number generally [0-360], the minimum position for the dial’s hand.
max_value yes A number generally [0-360], the maximum position for the dial’s hand.

Example:

script:
  set_dial_1_value:
    sequence:
      - service: wink.set_nimbus_dial_state
        data:
          entity_id: wink.nimbus_dial_1
          rotation: 'ccw'

Alarm Control Panel

The Wink alarm platform allows you to control your Wink Canary all-in-one security camera.

The requirement is that you have setup Wink from above.

Supported devices

  • Canary all-in-one security camera
The above devices are confirmed to work, but others may work as well.

Binary Sensor

The Wink binary sensor platform allows you to get data from your Wink binary sensors.

The requirement is that you have setup Wink from above.

Supported Binary sensor devices

  • Smoke and CO detectors (No Wink hub required for Nest)
  • Window/Door sensors
  • Motion sensors
  • Ring Door bells (No hub required)
  • Liquid presence sensors
  • Z-wave lock key codes
  • Lutron connected bulb remote buttons
  • Wink Relay buttons and presence detection
  • Wink spotter loudness and vibration (No Wink hub required)
  • Wink hub devices connection status. This includes any paired hubs like Hue, Wink v1, Wink v2, Wink Relay…
  • Dropcam sensors
The above devices are confirmed to work, but others may work as well.

Climate

The Wink climate platform allows you to get data from your Wink thermostats and air conditioners.

The requirement is that you have setup Wink from above.

Supported climate devices

  • Nest (No Wink hub required)
  • Ecobee (No Wink hub required)
  • Sensi (No Wink hub required)
  • Carrier (Unconfirmed)
  • Honeywell (No Wink hub required)
  • Generic Z-Wave
  • Quirky Aros window AC unit
The above devices are confirmed to work, but others may work as well.

Cover

Wink Cover garage door functionality varies on the product. Home Assistant can open, close, and view state of GoControl/Linear openers. For Chamberlain MyQ-enabled openers, Home Assistant is limited to show current state (open or closed) only using this Wink cover. This restriction was imposed by Chamberlain for third party control. Wink suggests that MyQ customers should contact Chamberlain directly to inquire about expanding permissions.

The MyQ Cover does provide full functionality for opening and closing Chamberlain MyQ-enabled garage doors. If installed along with the Wink Component, a duplicate garage door entity may exist. In that case, the semi-functional Wink garage door entity can be hidden via customize.yaml.

The requirement is that you have setup Wink from above.

Supported cover devices

  • Bali window treatments
  • Lutron shades
  • Pella motorized blinds and shades
  • GoControl garage door opener
  • Chamberlain MyQ (Limited functionality) (No Wink hub required)
The above devices are confirmed to work, but others may work as well.

Fan

The Wink fan platform allows you to control your Wink fans.

The requirement is that you have setup Wink from above.

Supported fan devices

  • Home Decorator Wink-enabled Gardinier ceiling fan
  • Hampton Bay ceiling fan module
The above devices are confirmed to work, but others may work as well.

Light

The wink light platform allows you to use your Wink lights.

The requirement is that you have setup Wink from above.

Supported light devices

  • Z-wave switches with dimming
  • Hue
  • Lightify
  • GE link
  • Wink light groups (User created groups of lights)
The above devices are confirmed to work, but others may work as well.

Lock

The Wink lock platform allows you to control your Wink locks.

The requirement is that you have setup Wink from above.

Supported lock devices

  • Kwikset
  • Schlage
  • August (No Wink hub required) (August Connect required)
  • Generic Z-wave
The following services have only been confirmed on Schlage locks.

Service wink_set_lock_alarm_mode

You can use the service wink/wink_set_lock_alarm_mode to set the alarm mode of your lock.

Service data attribute Optional Description
mode no String one of tamper, activity, or forced_entry
entity_id yes String or list of strings that point at entity_ids of locks.

Example:

script:
  set_locks_to_tamper:
    sequence:
      - service: wink.wink_set_lock_alarm_mode
        data:
          mode: "tamper"

Service wink_set_lock_alarm_sensitivity

You can use the service wink/wink_set_lock_alarm_sensitivity to set the alarm sensitivity of your lock.

Service data attribute Optional Description
sensitivity no String one of low, medium_low, medium, medium_high, high.
entity_id yes String or list of strings that point at entity_ids of locks.

Example:

script:
  set_locks_to_high_sensitivity:
    sequence:
      - service: wink.wink_set_lock_alarm_sensitivity
        data:
          sensitivity: "high"

Service wink_set_lock_alarm_state

You can use the service wink/wink_set_lock_alarm_state to set the alarm state of your lock.

Service data attribute Optional Description
enabled no Boolean enabled or disabled, true or false
entity_id yes String or list of strings that point at entity_ids of locks.

Example:

script:
  disable_all_locks_alarm:
    sequence:
      - service: wink.wink_set_lock_alarm_state
        data:
          enabled: false

Service wink_set_lock_beeper_state

You can use the service wink/wink_set_lock_beeper_state to set the beeper state of your lock.

Service data attribute Optional Description
enabled no Boolean enabled or disabled, true or false
entity_id yes String or list of strings that point at entity_ids of locks.

Example:

script:
  disable_all_locks_beepers:
    sequence:
      - service: wink.wink_set_lock_beeper_state
        data:
          enabled: false

Service wink_set_lock_vacation_mode

You can use the service wink/wink_set_lock_vacation_mode to set the vacation mode of your lock.

Service data attribute Optional Description
enabled no Boolean enabled or disabled, true or false
entity_id yes String or list of strings that point at entity_ids of locks.

Example:

script:
  enabled_vacation_mode_on_all_locks:
    sequence:
      - service: wink.wink_set_lock_vacation_mode
        data:
          enabled: false

Service wink_add_new_lock_key_code

You can use the service wink/wink_add_new_lock_key_code to add a new user code to your Wink lock.

Service data attribute Optional Description
entity_id no String or list of strings that point at entity_ids of locks.
name no the name of the new key code
code no The new code. Must match length of existing codes.
Calling service wink/pull_newly_added_wink_devices will add the new key code to Home Assistant. The device will also show up on the next restart of Home Assistant.
If supported by your lock, a binary sensor will be created for each user key code you have defined. These key codes will turn on when the code is entered and automatically turn off after a few seconds.

Sensor

The Wink sensor platform allows you to get data from your Wink sensors.

The requirement is that you have setup Wink from above.

Supported sensor devices

  • Wink Relay temperature, proximity, and humidity
  • Wink Spotter temperature, humidity, and brightness (No Wink hub required)
  • Wink Porkfolio balance (No Wink hub required)
  • Wink eggminder (No Wink hub required)
  • Nest protect Smoke and CO severity (No confirmation that this is actually reported) (No Wink hub required)
  • Motion sensor temperature
  • Quirky refuel propane tank monitor (No Wink hub required)
The above devices are confirmed to work, but others may work as well.

Switch

The Wink switch platform allows you to control your Wink switches.

The requirement is that you have set up Wink from above.

Supported switch devices

  • Wink Pivot power genius (No Wink hub required)
  • non-dimming Z-wave in-wall switches (dimming switches show up as lights)
  • Wink Relay load controlling switches
  • Rachio sprinkler controller (No Wink hub required)
  • iHome smart plug (No Wink hub required)
  • Wink switch groups (User created groups of switches)

Water heater

The Wink water heater platform allows you to get data from your Wink Water Heaters.

The requirement is that you have set up Wink from above.

Supported water heaters

  • Rheem Econet water heaters (No Wink hub required)

Wink water heaters use to live under the climate platform prior to release 0.81.