Skip to content

About

Python interface for the Alarm Decoder (AD2) family of alarm devices. (AD2USB, AD2SERIAL and AD2PI)

Resources

Stars

68 stars

Watchers

18 watching

Forks

Repository files navigation

AlarmDecoder

https://img.shields.io/pypi/v/alarmdecoder https://img.shields.io/github/actions/workflow/status/nutechsoftware/alarmdecoder/merge.yaml?label=tests

Summary

This Python library aims to provide a consistent interface for the AlarmDecoder product line. (AD2USB, AD2SERIAL and AD2PI). This also includes devices that have been exposed via ser2sock, which supports encryption via SSL/TLS.

Installation

AlarmDecoder can be installed through pip:

pip install alarmdecoder

or from source:

python setup.py install
  • Note: python-setuptools is required for installation.

Requirements

Required:

Optional:

Documentation

API documentation can be found at readthedocs.

Examples

A basic example is included below. Please see the examples directory for more.:

import time
from alarmdecoder import AlarmDecoder
from alarmdecoder.devices import SerialDevice

def main():
    """
    Example application that prints messages from the panel to the terminal.
    """
    try:
        # Retrieve the first USB device
        device = AlarmDecoder(SerialDevice(interface='/dev/ttyUSB0'))

        # Set up an event handler and open the device
        device.on_message += handle_message
        with device.open(baudrate=115200):
            while True:
                time.sleep(1)

    except Exception as ex:
        print ('Exception:', ex)

def handle_message(sender, message):
    """
    Handles message events from the AlarmDecoder.
    """
    print sender, message.raw

if __name__ == '__main__':
    main()

About

Python interface for the Alarm Decoder (AD2) family of alarm devices. (AD2USB, AD2SERIAL and AD2PI)

Resources

Stars

68 stars

Watchers

18 watching

Forks

Releases

Packages

Used by

Contributors

Languages