Ness Alarm

The ness_alarm integration 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.


A ness_alarm section must be present in the configuration.yaml file and contain the following options as required:

# Example configuration.yaml entry
  host: alarm.local
  port: 2401
    - 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

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


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.