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. The integration is now shown on the integrations page under Settings > Devices & services. Its entities are listed on the integration card itself and on the Entities tab.

# 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

Actions

Action aux

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

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.

Action panic

Trigger a panic

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