Component to integrate with SIA, based on CheaterDev's version.
This component will set up the following platforms.
This integration may be unsecure. You can use it, but it's at your own risk. This integration was tested with Ajax Systems security hub only. Other SIA hubs may not work.
Platform | Description |
---|---|
binary_sensor |
A smoke or moisture sensor. |
alarm_control_panel |
Alarm panel with the state of the alarm. |
sensor |
Sensor with the last heartbeat message from your system. |
- Alarm tracking with a alarm_control_panel component
- Optional Fire/gas tracker
- Optional Water leak tracker
- AES-128 CBC encryption support
- Select "SIA Protocol".
- Enable "Connect on demand".
- Place Account Id - 3-16 ASCII hex characters. For example AAA.
- Insert Home Assistant IP adress. It must be visible to hub. There is no cloud connection to it.
- Insert Home Assistant listening port. This port must not be used with anything else.
- Select Preferred Network. Ethernet is preferred if hub and HA in same network. Multiple networks are not tested.
- Enable Periodic Reports. The interval with which the alarm systems reports to the monitoring station, default is 1 minute. This component adds 30 seconds before setting the alarm unavailable to deal with slights latencies between ajax and HA and the async nature of HA.
- Encryption is on your risk. There is no CPU or network hit, so it's preferred. Password is 16 ASCII characters.
- Click install.
- Add at least the minimum configuration to your HA configuration, see below.
This is the least amount of information that needs to be in your config. This will result in a sensor.hubname_last_heartbeat
being added after reboot. Dynamically any other sensors are added.
sia:
port: port
hubs:
- name: hubname
account: account
sia:
port: port
hubs:
- name: hubname
account: account
encryption_key: password
ping_interval: pinginterval
zones:
- zone: 1
name: zonename
sensors:
- alarm
- moisture
- smoke
Key | Type | Required | Description |
---|---|---|---|
port |
int |
True |
Port that SIA will listen on. |
hubs |
list |
True |
List of all hubs to connect to. |
name |
string |
True |
Used to generate sensor ids. |
account |
string |
True |
Hub account to track. 3-16 ASCII hex characters. Must be same, as in hub properties. |
encryption_key |
string |
False |
Encoding key. 16 ASCII characters. Must be same, as in hub properties. |
ping_interval |
int |
False |
Ping interval in minutes that the alarm system uses to send "Automatic communication test report" messages, the HA component adds 30 seconds before marking a device unavailable. Must be between 1 and 1440 minutes. |
zones |
list |
False |
Manual definition of all zones present, if unspecified, only the hub sensor is added, and new sensors are added based on messages coming in. |
zone |
int |
False |
ZoneID, must match the zone that the system sends, can be found in the log but also "discovered" |
name |
string |
False |
Zone name, is used for the friendly name of your sensors, when you have the same sensortypes in multiple zones and this is not set, a _1, _2, etc is added by HA automatically. |
sensors |
list |
False |
a list of sensors, must be of type: alarm , moisture (HA standard name for a leak sensor) or smoke |
ASCII characters are 0-9 and ABCDEF, so a account is something like 346EB
and the encryption key is the same but 16 characters.