leshqo / satel_integra_ext-ha

Apache License 2.0
12 stars 1 forks source link

hacs_badge

Satel Integra Extended

The integration is based on build in Home Assistant Satel Integra integration. It provides the following additional features comparing to the mainstream integration:

The satel_integra_ext integration will allow Home Assistant users who own a Satel Integra alarm panel to leverage their alarm system and its sensors to provide Home Assistant with information about their homes. Connectivity between Home Assistant and the alarm is accomplished through a ETHM extension module that must be installed in the alarm. Compatible with ETHM-1 Plus module with firmware version > 2.00 (version 2.04 confirmed).

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

The module communicates via Satel's open TCP protocol published on their website. It subscribes for new events coming from alarm system and reacts to them immediately.

Setup

Please note that ETHM-1 module is currently not supported: it does not provide functionality used by this extension. At the moment only ETHM-1 Plus module is supported. That might change in the future, but no promises are given.

A list of all partition, zone and output IDs can be acquired by running DloadX program and connecting to your alarm.

For the Binary Sensor check the type/class list for a possible visualization of your zones. Note: If no zones or outputs are specified, Home Assistant will not load any binary_sensor components.

Manual installation

Installation with HACS

Removal

Uninstall in HACS or manually remove satel_integra_ext folder from custom_components. After this, restart Home Assistant.

Configuration

The configuration is compatible with the original Satel Integra. And the only change needed to use this integration is to change satel_integra to satel_integra_ext

A satel_integra_ext section must be present in the configuration.yaml file:

# Example configuration.yaml entry
satel_integra_ext:
  host: IP_ADDRESS

Configuration Variables

host

The IP address of the Satel Integra ETHM module on your home network, if using socket type.

port

The port on which the ETHM module listens for clients using integration protocol.

code

User password, it's needed for making use of the switchable_outputs. It's recommended not to use admin password.

integration_key

Integration key for encrypted communication. If not specified then communication will not be encrypted. Set the same value as configured in Satel Integra system (check manual for more information)

partitions

List of the partitions to operate on.

    name

    Name of the partition.

    arm_home_mode

    The mode in which the partition is armed when 'arm home' is used. Possible options are 1,2 or 3.

    For more information on what the differences are between them, please refer to Satel Integra manual.

zones

This parameter lists the zones (or inputs) that will be visible by Home Assistant. For each zone, a proper ID must be given as well as its name. The name is arbitrary and does not need to match the one specified in Satel Integra alarm configuration.

    name

    Name of the zone.

    type

    The zone type.

outputs

Very similar to zones, but with outputs. Satel Integra uses outputs to inform external systems about different events. For example power failure, or that alarm started counting for exit or some other user-defined condition. They may be used for simple alarm-based automation. For more information please refer to Satel homepage and forums.

    name

    Name of the output.

    type

    The type of the device - just for presentation.

switchable_outputs

Switchable outputs. These will show up as switches within Home Assistant.

    name

    Name of the output.

temperature_sensors

Temperature sensors. These will show up as sensors within Home Assistant.

    name

    Name of the output.

Full examples

# Example configuration.yaml entry
satel_integra_ext:
  host: 192.168.1.100
  port: 7094
  partitions:
    01:
      name: "House"
      arm_home_mode: 2
    02:
      name: "Garage"
  zones:
    01:
      name: "Bedroom"
      type: "motion"
    02:
      name: "Hall"
      type: "motion"
    30:
      name: "Kitchen - smoke"
      type: "smoke"
    113:
      name: "Entry door"
      type: "opening"
  outputs:
    05:
      name: "Garden lights trigger"
      type: "light"
    09:
      name: "Gate opening trigger"
      type: "opening"
    30:
      name: "Alarm triggered"
      type: "safety"
    32:
      name: "Alarm power problem"
      type: "safety"
  switchable_outputs:
    05:
      name: "Gate open"
    06:
      name: "Gate close"
    14:
      name: "Garden light"
  temperature_sensors:
    21:
      name: "Kitchen temperature"
    22:
      name: "Living room temperature"

Having configured the zones and the outputs, you can use them for automation, such as to react on the movement in your bedroom. For example:

  alias: "Flick the input switch when movement in bedroom detected"
  trigger:
      platform: state
      entity_id: "binary_sensor.bedroom"
      to: "on"
  action:
      service: input_boolean.turn_on
      target:
        entity_id: input_boolean.movement_detected