Ness Alarm


The ness_alarm integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] will allow Home Assistant users who own a Ness D8x/D16x alarm system 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 IP232 module that must be connected to the alarm.

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

  • Binary sensor: Reports on zone statuses
  • Alarm control panel: Reports on alarm status, and can be used to arm/disarm the system

The module communicates via the Ness D8x/D16x ASCII protocol.

Configuration

A ness_alarm section must be present in the configuration.yamlThe configuration.yaml file is the main configuration file for Home Assistant. It lists the integrations to be loaded and their specific configurations. In some cases, the configuration needs to be edited manually directly in the configuration.yaml file. Most integrations can be configured in the UI.[Learn more] file and contain the following options as required: After changing the configuration.yamlThe configuration.yaml file is the main configuration file for Home Assistant. It lists the integrations to be loaded and their specific configurations. In some cases, the configuration needs to be edited manually directly in the configuration.yaml file. Most integrations can be configured in the UI.[Learn more] file, restart Home Assistant to apply the changes. To view the changes, go to Settings > Devices & services > Entities.

# Example configuration.yaml entry
ness_alarm:
  host: alarm.local
  port: 2401
  zones:
    - name: Garage
      id: 1
    - name: Storeroom
      id: 2
    - name: Kitchen
      id: 3
    - name: Front Entrance
      id: 4
    - name: Front Door
      id: 5
      type: door

Configuration Variables

host string Required

The hostname of the IP232 module on your home network.

port integer Required

The port on which the IP232 module listens for clients.

scan_interval time (Optional, default: 00:01:00)

Time interval between updates. Supported formats: scan_interval: 'HH:MM:SS', scan_interval: 'HH:MM' and Time period dictionary (see example below).

infer_arming_state boolean (Optional, default: false)

Infer the disarmed arming state only via system status events. This works around a bug with some panels (<v5.8) which emit update.status = [] when they are armed.

zones list (Optional)

List of zones to add

zone_id integer Required

ID of the zone on the alarm system (i.e Zone 1 -> Zone 16).

name string Required

Name of the zone.

type string (Optional, default: motion)

The zone type. Can be any binary_sensor device class.

Time period dictionary example

scan_interval:
  # At least one of these must be specified:
  days: 0
  hours: 0
  minutes: 0
  seconds: 10
  milliseconds: 0

Services

Service aux

Trigger an aux output. This requires PCB version 7.8 or higher.

Service data attribute Optional Description
output_id No The aux output you wish to change. A number from 1-4.
state Yes The On/Off State, represented as true/false. Default is true. If P14xE 8E is enabled then a value of true will pulse output x for the time specified in P14(x+4)E.

Service panic

Trigger a panic

Service data attribute Optional Description
code No The user code to use to trigger the panic.