mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-15 13:26:54 +00:00
Update AlarmDecoder docs for Config Flow Changes (#14048)
Co-authored-by: Franck Nijhof <git@frenck.dev>
This commit is contained in:
parent
3cca0f1920
commit
9c37f9699a
@ -9,7 +9,7 @@ ha_release: 0.43
|
||||
ha_iot_class: Local Push
|
||||
ha_domain: alarmdecoder
|
||||
ha_codeowners:
|
||||
- '@ajschmidt8'
|
||||
- "@ajschmidt8"
|
||||
---
|
||||
|
||||
The `alarmdecoder` integration will allow Home Assistant users who own either a DSC or Honeywell alarm panel to leverage their alarm system and its sensors to provide Home Assistant with rich information about their homes. Connectivity between Home Assistant and the alarm panel is accomplished through a device produced by Nu Tech Software Solutions, known as the AlarmDecoder. The AlarmDecoder devices provide a serial, TCP/IP socket or USB interface to the alarm panel, where it emulates an alarm keypad.
|
||||
@ -18,111 +18,67 @@ Please visit the [AlarmDecoder website](https://www.alarmdecoder.com/) for furth
|
||||
|
||||
There is currently support for the following device types within Home Assistant:
|
||||
|
||||
- Binary Sensor: Reports on zone status
|
||||
- Sensor: Emulates a keypad display
|
||||
- [Alarm Control Panel](#alarm-control-panel): Reports on alarm status, and can be used to arm/disarm the system
|
||||
- Sensor: Emulates a keypad display
|
||||
- Binary Sensor: Reports on zone status
|
||||
|
||||
This is a fully event-based component. Any event sent by the AlarmDecoder device will be immediately reflected within Home Assistant.
|
||||
|
||||
## Configuration
|
||||
|
||||
An `alarmdecoder` section must be present in the `configuration.yaml` file and contain the following options as required:
|
||||
AlarmDecoder can be set up via the **Integrations** section of the **Configuration** page. Click the `+` sign and select _AlarmDecoder_ from the list.
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
alarmdecoder:
|
||||
device:
|
||||
type: socket
|
||||
host: 192.168.1.20
|
||||
port: 10000
|
||||
panel_display: false
|
||||
zones:
|
||||
01:
|
||||
name: 'Smoke Detector'
|
||||
type: 'smoke'
|
||||
rfid: '0123456'
|
||||
02:
|
||||
name: 'Front Door'
|
||||
type: 'opening'
|
||||
```
|
||||
You will be prompted to select a protocol (i.e. `socket` or `serial`). Depending on your selection, you will be asked for the following connection information:
|
||||
|
||||
{% configuration %}
|
||||
device:
|
||||
description: List of variables for the AlarmDecoder device.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
type:
|
||||
description: "The type of AlarmDecoder device: socket, serial or USB."
|
||||
required: true
|
||||
default: socket
|
||||
type: string
|
||||
host:
|
||||
description: The IP address of the AlarmDecoder device on your home network, if using socket type.
|
||||
required: false
|
||||
default: localhost
|
||||
type: string
|
||||
port:
|
||||
description: The IP address of the AlarmDecoder device on your home network, if using socket type.
|
||||
required: false
|
||||
default: 10000
|
||||
type: integer
|
||||
path:
|
||||
description: The path of the AlarmDecoder device, if using serial type.
|
||||
required: false
|
||||
default: "/dev/ttyUSB0"
|
||||
type: string
|
||||
baudrate:
|
||||
description: The baud rate of the AlarmDecoder device, if using serial type.
|
||||
required: false
|
||||
default: 115200
|
||||
type: string
|
||||
panel_display:
|
||||
description: Create a sensor called `sensor.alarm_display` to match the Alarm Keypad display.
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
autobypass:
|
||||
description: "**Honeywell only.** Set to `true`, to automatically bypass all open zones (sending `6#`) when arming. This will require a code to be entered even if `code_arm_required` is set to `false`."
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
code_arm_required:
|
||||
description: "Set to `false` to enable arming without having to enter a code."
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
zones:
|
||||
description: "AlarmDecoder has no way to tell us which zones are actually in use, so each zone must be configured in Home Assistant. For each zone, at least a name must be given. For more information on the available zone types, take a look at the [Binary Sensor](/integrations/alarmdecoder) documentation. *Note: If no zones are specified, Home Assistant will not load any binary_sensor integrations.*"
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
name:
|
||||
description: A name for the zone.
|
||||
required: true
|
||||
type: string
|
||||
type:
|
||||
description: "A type for the zone. Here you can find a list of [Device Classes](/integrations/binary_sensor/#device-class)."
|
||||
required: false
|
||||
default: opening
|
||||
type: string
|
||||
rfid:
|
||||
description: The RF serial-number associated with RF zones. Providing this field allows Home Assistant to associate raw sensor data to a given zone, allowing direct monitoring of the state, battery, and supervision status.
|
||||
required: false
|
||||
type: string
|
||||
loop:
|
||||
description: The loop number associated with RF zones (1, 2, 3, or 4). Providing this field allows Home Assistant to read open/closed status from the raw sensor data in addition to from the panel display, meaning it can correctly show a bypassed RF zone as open or closed when the alarm is armed. (This is an alternative to relayaddr/relaychan below for RF zones.)
|
||||
required: false
|
||||
type: integer
|
||||
relayaddr:
|
||||
description: "Address of the relay or zone expander board to associate with the zone. (ex: 12, 13, 14, or 15). Typically used in cases where a panel will not send bypassed zones such as motion during an armed home state, the Vista 20P is an example of this. AlarmDecoder can emulate a zone expander board and the panel can be programmed to push zone events to this virtual expander. This allows the bypassed zone binary sensors to be utilized. One example is using bypassed motion sensors at night for motion-based automated lights while the system is armed with the motion sensor bypassed."
|
||||
required: inclusive
|
||||
type: integer
|
||||
relaychan:
|
||||
description: "Channel of the relay or zone expander board to associate with the zone. (ex: 1, 2, 3, or 4 for relay expander boards, 1 - 8 for zone expander boards)"
|
||||
required: inclusive
|
||||
type: integer
|
||||
{% endconfiguration %}
|
||||
- **socket**:
|
||||
- **host** - the hostname or IP address of the machine connected to the AlarmDecoder device
|
||||
- **port** - the port that AlarmDecoder is accessible on (i.e. `10000`)
|
||||
- **serial**:
|
||||
- **path** - the path to the AlarmDecoder device (i.e. `/dev/ttyUSB0`)
|
||||
- **baud rate** - the baud rate of the AlarmDecoder device (i.e. `115200`)
|
||||
|
||||
## Configuration
|
||||
|
||||
Once AlarmDecoder has been set up according to the instructions above, the arming settings and zones can be configured by selecting _Options_ on the _AlarmDecoder_ card on the **Configuration -> Integrations** page.
|
||||
|
||||
### Arming Settings
|
||||
|
||||
There are currently 3 arming settings for AlarmDecoder (shown below).
|
||||
|
||||
- **Alternative Night Mode** - For Honeywell systems, set to `true` to enable _Night-Stay_ mode instead of _Instant_ mode for night arming. For DSC systems, set to `true` to enable _No-Entry_ mode instead of _Stay_ mode for night arming. For both systems, whenever this option is set to `true`, a code will be required for night arming **regardless of the _Code Required for Arming_ setting.** See [Arming Key Sequences](#arming-key-sequences) section below for more information.
|
||||
- **Auto Bypass on Arm** - (Honeywell only) Set to `true` to automatically bypass all open zones by sending `code` + `6#` before arming. This setting requires a code only if there are faulted zones when arming.
|
||||
- **Code Required for Arming** - Set to `false` to enable arming without a code. See [Arming Key Sequences](#arming-key-sequences) section below for more information.
|
||||
|
||||
### Zones
|
||||
|
||||
Zones can be added, edited, and removed through the option forms.
|
||||
|
||||
Each zone that's added to AlarmDecoder will have its own [binary sensor](https://www.home-assistant.io/integrations/binary_sensor/) created.
|
||||
|
||||
#### Adding a New Zone
|
||||
|
||||
When prompted, enter the number of the zone you'd like to add. Press _Submit_ to move to the next screen where you'll be prompted for the [zone settings](#zone-settings). Press _Submit_ again to save.
|
||||
|
||||
**Note:** The zone number that was entered will appear as an attribute on the binary sensor entity that's created in order to easily edit the zone settings at a later time.
|
||||
|
||||
#### Editing an Existing Zone
|
||||
|
||||
When prompted, enter the number of the zone you'd like to edit. Press _Submit_ to move to the next screen where the existing zone settings will be pre-filled. Edit the zone settings and press _Submit_ to save the changes.
|
||||
|
||||
#### Removing an Existing Zone
|
||||
|
||||
When prompted, enter the number of the zone you'd like to remove. Press _Submit_ to move to the next screen where the existing zone settings will be pre-filled. Clear the _Zone Name_ field and press _Submit_.
|
||||
|
||||
#### Zone Settings
|
||||
|
||||
The settings for zones are described below:
|
||||
|
||||
- **Zone Name** - a name for the zone
|
||||
- **Zone Type** - the type of sensor (see [Device Classes](https://www.home-assistant.io/integrations/binary_sensor/#device-class))
|
||||
- **RF Serial** - (optional) The RF serial-number associated with wireless RF zones. Providing this field allows Home Assistant to associate raw sensor data to a given zone, allowing direct monitoring of the state, battery, and supervision status.
|
||||
- **RF Loop** - (optional) The loop number associated with RF zones (1, 2, 3, or 4). Providing this field allows Home Assistant to read open/closed status from the raw sensor data in addition to from the panel display, meaning it can correctly show a bypassed RF zone as open or closed when the alarm is armed. (This is an alternative to relayaddr/relaychan below for RF zones.)
|
||||
- **Relay Address** - (optional) Address of the relay or zone expander board to associate with the zone. (ex: 12, 13, 14, or 15). Typically used in cases where a panel will not send bypassed zones such as motion during an armed home state, the Vista 20P is an example of this. AlarmDecoder can emulate a zone expander board and the panel can be programmed to push zone events to this virtual expander. This allows the bypassed zone binary sensors to be utilized. One example is using bypassed motion sensors at night for motion-based automated lights while the system is armed with the motion sensor bypassed.
|
||||
- **Relay Channel** - (optional) Channel of the relay or zone expander board to associate with the zone. (ex: 1, 2, 3, or 4 for relay expander boards, 1 - 8 for zone expander boards)
|
||||
|
||||
## Alarm Control Panel
|
||||
|
||||
@ -138,7 +94,7 @@ There are several attributes available on the alarm panel to give you more infor
|
||||
- `programming_mode`: Set to `true` if your system is in programming mode.
|
||||
- `ready`: Set to `true` if your system is ready to be armed. Any faults, including motions sensors, will make this value `false`.
|
||||
- `zone_bypassed`: Set to `true` if your system is currently bypassing a zone.
|
||||
- `code_arm_required`: Set to the value specified in your configuration.
|
||||
- `code_arm_required`: Set to the value specified in your AlarmDecoder options.
|
||||
|
||||
## Services
|
||||
|
||||
@ -146,7 +102,7 @@ The Alarm Decoder integration gives you access to several services for you to co
|
||||
|
||||
- `alarm_arm_away`: Arms the alarm in away mode; all faults will trigger the alarm.
|
||||
- `alarm_arm_home`: Arms the alarm in stay mode; faults to the doors or windows will trigger the alarm.
|
||||
- `alarm_arm_night`: Arms the alarm in instant mode; all faults will trigger the alarm. Additionally, the entry delay is turned off on the doors.
|
||||
- `alarm_arm_night`: Arms the alarm according to the `Alternative Night Mode` option.
|
||||
- `alarm_disarm`: Disarms the alarm from any state.
|
||||
- `alarmdecoder.alarm_keypress`: Sends a string of characters to the alarm, as if you had touched those keys on a keypad.
|
||||
- `alarmdecoder.alarm_toggle_chime`: Toggles the alarm's chime state.
|
||||
@ -164,6 +120,7 @@ Using a combination of the available services and attributes, you can create swi
|
||||
### Chime Status and Control
|
||||
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
- platform: template
|
||||
switches:
|
||||
@ -179,12 +136,13 @@ Using a combination of the available services and attributes, you can create swi
|
||||
data:
|
||||
code: !secret alarm_code
|
||||
icon_template: >-
|
||||
{% if is_state_attr('alarm_control_panel.alarm_panel', 'chime', true) %}
|
||||
mdi:bell-ring
|
||||
{% else %}
|
||||
mdi:bell-off
|
||||
{% endif %}
|
||||
{% if is_state_attr('alarm_control_panel.alarm_panel', 'chime', true) %}
|
||||
mdi:bell-ring
|
||||
{% else %}
|
||||
mdi:bell-off
|
||||
{% endif %}
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
||||
## Arming Key Sequences
|
||||
@ -195,29 +153,32 @@ The tables below show the key press sequences used for arming for the different
|
||||
|
||||
#### code_arm_required = true (default)
|
||||
|
||||
| Mode | Key Sequence |
|
||||
| ------------------------------------------------------- | --------------------------- |
|
||||
| `alarm_arm_home` | `code` + `3` |
|
||||
| `alarm_arm_away` | `code` + `2` |
|
||||
| `alarm_arm_night` | `code` + `7` |
|
||||
| Mode | Key Sequence |
|
||||
| ------------------------------------------------------- | ------------- |
|
||||
| `alarm_arm_home` | `code` + `3` |
|
||||
| `alarm_arm_away` | `code` + `2` |
|
||||
| `alarm_arm_night` (`alt_night_mode` = `false`, default) | `code` + `7` |
|
||||
| `alarm_arm_night` (`alt_night_mode` = `true`) | `code` + `33` |
|
||||
|
||||
#### code_arm_required = false
|
||||
|
||||
| Mode | Key Sequence |
|
||||
| ------------------------------------------------------- | --------------------------- |
|
||||
| `alarm_arm_home` | `#3` |
|
||||
| `alarm_arm_away` | `#2` |
|
||||
| `alarm_arm_night` | `#7` |
|
||||
| Mode | Key Sequence |
|
||||
| ------------------------------------------------------- | ------------- |
|
||||
| `alarm_arm_home` | `#3` |
|
||||
| `alarm_arm_away` | `#2` |
|
||||
| `alarm_arm_night` (`alt_night_mode` = `false`, default) | `#7` |
|
||||
| `alarm_arm_night` (`alt_night_mode` = `true`) | `code` + `33` |
|
||||
|
||||
### DSC
|
||||
|
||||
#### code_arm_required = true (default)
|
||||
|
||||
| Mode | Key Sequence |
|
||||
| ------------------------------------------------------- | --------------------------- |
|
||||
| `alarm_arm_home` | `code` |
|
||||
| `alarm_arm_away` | `code` |
|
||||
| `alarm_arm_night` | `code` |
|
||||
| Mode | Key Sequence |
|
||||
| ------------------------------------------------------- | ------------- |
|
||||
| `alarm_arm_home` | `code` |
|
||||
| `alarm_arm_away` | `code` |
|
||||
| `alarm_arm_night` (`alt_night_mode` = `false`, default) | `code` |
|
||||
| `alarm_arm_night` (`alt_night_mode` = `true`) | `*9` + `code` |
|
||||
|
||||
#### code_arm_required = false
|
||||
|
||||
@ -227,8 +188,11 @@ The `chr(4)` and `chr(5)` sequences below are equivalent to pressing the <em>Sta
|
||||
|
||||
</div>
|
||||
|
||||
| Mode | Key Sequence |
|
||||
| ------------------------------------------------------- | ------------------------------- |
|
||||
| `alarm_arm_home` | `chr(4)` + `chr(4)` + `chr(4)` |
|
||||
| `alarm_arm_away` | `chr(5)` + `chr(5)` + `chr(5)` |
|
||||
| `alarm_arm_night` | `chr(4)` + `chr(4)` + `chr(4)` |
|
||||
|
||||
| Mode | Key Sequence |
|
||||
| ------------------------------------------------------- | ------------------------------ |
|
||||
| `alarm_arm_home` | `chr(4)` + `chr(4)` + `chr(4)` |
|
||||
| `alarm_arm_away` | `chr(5)` + `chr(5)` + `chr(5)` |
|
||||
| `alarm_arm_night` (`alt_night_mode` = `false`, default) | `chr(4)` + `chr(4)` + `chr(4)` |
|
||||
| `alarm_arm_night` (`alt_night_mode` = `true`) | `*9` + `code` |
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user