Z-Wave


The Z-Wave integration for Open Peer Power allows you to observe and control connected Z-Wave devices. Please see the Z-Wave getting started section for in-depth documentation on how to use and setup the Z-Wave component.

There is currently support for the following device types within Open Peer Power:

Configuration

If you have setup the requirements, then add the following entry configuration.yaml file:

# Example configuration.yaml entry
zwave:

Climate

To get your Z-Wave thermostat or HVAC unit working with Open Peer Power, follow the instructions for the general Z-Wave component.

Thermostats with support for fan modes or different operating modes, will be handled like a HVAC device and will also be detected as one. If the thermostat supports different operating modes, you will get one thermostat entity for each mode. These can be hidden with settings using the customize setting in the `configuration.yaml` file.

To enable the climate integration for your Z-Wave network, add the following to your configuration.yaml file.

climate:
  - platform: zwave

Once enabled, any Z-Wave climate devices will be available to Open Peer Power. Multiple entities may be created. The following entities are created for a Remotec ZXT-120.

  • climate.remotec_zxt120_heating_1_id: Allows you to control the connected device. See below for examples.
  • sensor.remotec_zxt120_temperature_38: A sensor which returns the current temperature set on the attached device.

Automating Z-Wave Climate Devices

The following examples will instruct a Remotec ZXT-120 to turn the attached device mode to Heating, and set the temperature at 24 degrees after 8pm. Add it to automation.yaml.

automation:
  - alias: Turn on Heater at 8pm
    trigger:
      - platform: time
        at: "20:00:00"
    action:
      - service: climate.set_hvac_mode
        data:
          entity_id: climate.remotec_zxt120_heating_1_id
          hvac_mode: Heat
      - service: climate.set_temperature
        data:
          entity_id: climate.remotec_zxt120_heating_1_39
          temperature: 24

Generally, in Open Peer Power, you can use the openpeerpower/turn_off service to turn devices off. For the Remotec ZXT-120, you must instead make a service call like the following.

automation:
  - alias: Turn off Heater at 9pm
    trigger:
      - platform: time
        at: "21:00:00"
    action:
      - service: climate.set_hvac_mode
        data:
          entity_id: climate.remotec_zxt120_heating_1_id
          hvac_mode: 'Off'

Note: In the example above, the word Off is encased in single quotes to be valid YAML.

Test if it works

A simple way to test if your Z-Wave climate device is working is to use service developer tool icon Services from the Developer Tools. Choose the applicable Climate service from the list of Available services: and enter something like the sample below into the Service Data field and then press CALL SERVICE.

{
  "entity_id": "climate.remotec_zxt120_heating_1_id",
  "hvac_mode": "Heat"
}

Cover

Z-Wave garage doors, blinds, and roller shutters are supported as cover in Open Peer Power.

To get your Z-Wave covers working with Open Peer Power, follow the instructions for the general Z-Wave component.

If you discover that you need to invert the operation of open/close for a particular device, you may change this behavior in your Z-Wave section of your configuration.yaml file as follows, in addition you can also invert percent position:

zwave:
  device_config:
    cover.my_cover:
      invert_openclose_buttons: true
      invert_percent: true

Lock

To get your Z-Wave locks working with Open Peer Power, follow the instructions for the general Z-Wave component.

Z-Wave locks will expose three services under the lock domain to manage usercodes if the lock supports it:

Service Description
clear_usercode Clears a usercode at code_slot X. Valid code_slots are 1-254, but max is defined by the lock.
get_usercode Get a usercode from the lock at code_slot. Valid code_slots are 1-254, but max is defined by the lock.
set_usercode Sets usercode to X at code_slot Y. Valid usercodes are at least 4 digits, and max defined by the lock.