Community Hass.io Add-on: Paradox Alarm Interface

Hello !

I’ve just decided to buy a Paradox alarm, an EVO HD more specifically.
I’m trying to figure out which would be the best integration with Home Assistant and using which interface in order to get all individual sensor status updated in real-time in Home Assisstant without any latency.

Looks like I can use (at least) :

Which solution would you recommand me as the most reliable ? :slight_smile:
Thanks.

1 Like

EVOHD received yesterday.
It’s not very ‘user friendly’ for a non-professional trying to setup his first professional alarm (without any keyboard fro the moment), but that’s OK I got my ‘test-platform’ working, managed to connect a RTX3, 4 wireless devices, 2 remotes, 1 siren and also the IP150 module.
Using the IP150 on my local LAN I used BabyWare to set-up everything. All modules are avaialble.
Tonight I will install PAI and try to get status from Home Assistant

If everything is fine, I will order additionnal Paradox sensors.

I will give a feedback about PAI in a few days. :slight_smile:
Thanks for the work and sharing.

PAI installed, up and running smoothly in a few minutes.
My only problem was to figure out how to set up the ‘limitations’ in a correct YAML format.

Sensor status are updated almost instantly in Home Assistant.

I will play a little bit with it now.
Thank you again. Nice tool.

David

Everything has working great for months. Great job @yozik04! I thought maybe I’ll do some fine tuning and then I got stuck. It seems that I can’t use secrets.yaml file with PAI. Is there a way that I’m missing here?

For example:

CONNECTION_TYPE: IP
SERIAL_PORT: /dev/ttyS1
SERIAL_BAUD: 9600
IP_CONNECTION_HOST: '!secret pai_ip'
IP_CONNECTION_PORT: '!secret pai_port'
IP_CONNECTION_PASSWORD: '!secret pai_pw'

etc.

log:

paradox/interface/availability=offline
2020-09-12 12:26:18,962 - ERROR    - MainThread - PAI.paradox.connections.ip.connection - Connect failed (try 1/3): [Errno -2] Name does not resolve

Check your IP_CONNECTION_HOST. Make sure it resolves.

Thanks for your quick reply! Of course it resolves. I have been using it for months. When I change it to use secrets.yaml then it would not work any more. All other add-ons I’m using work fine with secrets. https://www.home-assistant.io/docs/configuration/secrets/

Should I open an issue on github?

PAI has nothing to do with secrets.yaml. The addon does not have access to it.

Sadly it seems that way yes. It would be nice, if it would work with secrets.yaml. It would make things a lot easier, you can make changes (usernames, passwords, ip-s, ports etc) in one file and if you share your file with others, you don’t need to change (hide) those things.

I think the problem is on the missing schema in the config.json, supervisor should replace the secret when dropping to /data path.

Hi there.
Quick question, I have set up a ‘switch’ to bypass a zone which works great, however when I switch the alarm off and the zone automatically clears the bypass it is not flipping my switch as well…
I know I am missing something important but I don’t know what…

  - platform: mqtt
    name: "Front Beam Bypass"
    command_topic: "paradox/control/zones/FRONT_BEAM"
    state_topic: "paradox/states/zones/FRONT_BEAM/bypassed"
    payload_on: "bypass"
    payload_off: "clear_bypass"

Hi everyone,

After countless trials and errors I finally managed to connect to my paradox IP150 using pai.

The MQTT part of pai.conf I have maintained to be as “stock” as possible so I didn’t change much. This looks like this:

### MQTT Topics
MQTT_BASE_TOPIC = 'paradox'             # Root of all topics
MQTT_ZONE_TOPIC = 'zones'               # Base for zone states
MQTT_PARTITION_TOPIC = 'partitions'     # Base for partition states
MQTT_BUS_TOPIC = 'buses'                # Base for buses states
MQTT_MODULE_TOPIC = 'bus-module'        # Base for bus module states
MQTT_SYSTEM_TOPIC = 'system'            # Base for panel states
MQTT_REPEATER_TOPIC = 'repeaters'       # Base for repeater states
MQTT_USER_TOPIC = 'users'               # Base for user states
MQTT_EVENTS_TOPIC = 'events'            # Base for events
MQTT_CONTROL_TOPIC = 'control'          # Base for control of other elements (ROOT/CONTROL/TYPE)
MQTT_DEFINITIONS_TOPIC = 'control'      # Base for definitions
MQTT_HOMEASSISTANT_DISCOVERY_PREFIX = 'homeassistant'
MQTT_OUTPUT_TOPIC = 'outputs'
MQTT_DOOR_TOPIC = 'doors'
MQTT_KEYPAD_TOPIC = 'keypads'
MQTT_STATES_TOPIC = 'states'
MQTT_RAW_TOPIC = 'raw'
#
MQTT_NOTIFICATIONS_TOPIC = 'notifications'
MQTT_SEND_PANIC_TOPIC = 'panic'
MQTT_PUBLISH_RAW_EVENTS = True
MQTT_INTERFACE_TOPIC = 'interface'
MQTT_TOGGLE_CODES = {}
MQTT_USE_NUMERIC_STATES = False         # use 0 and 1 instead of True and False
#
MQTT_PUBLISH_COMMAND_STATUS = False  # Publish command statuses to MQTT
MQTT_COMMAND_STATUS_TOPIC = "command_status"
#
### MQTT Home Assistant Auto Discovery
MQTT_HOMEASSISTANT_AUTODISCOVERY_ENABLE = True

and on configuration.yaml, I have the following as a test to see if the zones are being picked up but it is not.

  - platform: mqtt    
    state_topic: "paradox/zones/Garage_RS/state/1"
    name: "Garage"
    qos: 1
    payload_on: "on"
    payload_off: "off"
    availability_topic: "paradox/control/state"
    payload_available: "Connected"
    payload_not_available: "Disconnected"
    device_class: motion

I am wondering what I need to fix in order to pick up a zone?

Thanks

p.s. I forgot to add that home assistant can pick up all the zones onto the lovelace card, such as PIR sensors, etc. However, the sensors do nothing even when the actual physical sensor is detecting movement. So I know it is my mqtt setup but i don’t know what is wrong.

Check PAI log if it can connect to MQTT. You do not need anything in your configuration.yaml when you turned on autodiscovery. Use MQTT Explorer to verify as well.

Check out the MQTT Explorer.

Thanks. I am running pai in a docker container. Portainer’s log shows this:

2020-09-23 07:09:07,492 - INFO     - PAI.paradox.paradox - Initiating panel connection
2020-09-23 07:09:07,600 - INFO     - PAI.paradox.hardware.spectra_magellan.panel - Installer login
2020-09-23 07:09:07,701 - INFO     - PAI.paradox.hardware.spectra_magellan.panel - Authentication Success
2020-09-23 07:09:07,702 - INFO     - PAI.paradox.paradox - Connection OK
2020-09-23 07:09:07,703 - INFO     - PAI.paradox.paradox - Loading data from panel memory
2020-09-23 07:09:07,704 - INFO     - PAI.paradox.hardware.panel - Loading definitions
2020-09-23 07:09:07,704 - INFO     - PAI.paradox.hardware.panel - Updating Definitions from Panel
2020-09-23 07:09:08,202 - INFO     - PAI.paradox.interfaces.mqtt.core - MQTT Broker Connected
2020-09-23 07:09:08,411 - INFO     - PAI.paradox.hardware.panel - Zone definitions loaded (0.71s)
2020-09-23 07:09:08,421 - INFO     - PAI.paradox.hardware.panel - Loading labels
2020-09-23 07:09:08,422 - INFO     - PAI.paradox.hardware.panel - Updating Labels from Panel
2020-09-23 07:09:08,893 - INFO     - PAI.paradox.hardware.panel - Zone labels loaded (0.47s): Garage_RS, Garage_PIR, Front_Door_PIR, Lounge_PIR, Living_Room_PIR, Corridor_PIR, Laundry_PIR, Tamper, Front_Door_RS, Shopper Door
2020-09-23 07:09:09,646 - INFO     - PAI.paradox.hardware.panel - Pgm labels loaded (0.75s): External Strobe, Internal Siren, PGM3, PGM4, PGM5, Output 06, Output 07, Output 08, Output 09, Output 10, Output 11, Output 12, RTX3 PGM1, RTX3 PGM2, RTX3 PGM3, RTX3 PGM3
2020-09-23 07:09:09,740 - INFO     - PAI.paradox.hardware.panel - Partition labels loaded (0.09s): Garage, House
2020-09-23 07:09:11,275 - INFO     - PAI.paradox.hardware.panel - User labels loaded (1.54s): System Master, , , Joseph, Norah, User 06, User 07, User 08, User 09, User 10, User 11, User 12, User 13, User 14, User 15, User 16, User 17, User 18, User 19, User 20, User 21, User 22, User 23, User 24, User 25, User 26, User 27, User 28, User 29, User 30, User 31, User 32
2020-09-23 07:09:12,062 - INFO     - PAI.paradox.hardware.panel - Module labels loaded (0.79s): Bus Module 01, Bus Module 02, Bus Module 03, Bus Module 04, Bus Module 05, Bus Module 06, Bus Module 07, Bus Module 08, Bus Module 09, Bus Module 10, Bus Module 11, Bus Module 12, Bus Module 13, Bus Module 14, Bus Module 15
2020-09-23 07:09:12,155 - INFO     - PAI.paradox.hardware.panel - Repeater labels loaded (0.09s): Repeater 1, Repeater 2
2020-09-23 07:09:12,532 - INFO     - PAI.paradox.hardware.panel - Keypad labels loaded (0.38s): Wireless Keyp 1, Wireless Keyp 2, Wireless Keyp 3, Wireless Keyp 4, Wireless Keyp 5, Wireless Keyp 6, Wireless Keyp 7, Wireless Keyp 8
2020-09-23 07:09:12,626 - INFO     - PAI.paradox.hardware.panel - Site labels loaded (0.09s): Your Alarm Site
2020-09-23 07:09:12,814 - INFO     - PAI.paradox.hardware.panel - Siren labels loaded (0.19s): Wireless Siren 1, Wireless Siren 2, Wireless Siren 3
2020-09-23 07:09:12,815 - INFO     - PAI.paradox.paradox - Running

I gather that this means PAI is running?
But the paradox.log in /var/log shows this:

2020-09-23 07:11:55,227 - ERROR    - PAI.paradox.connections.protocols - Connection was closed: None
2020-09-23 07:11:55,227 - ERROR    - PAI.paradox.connections.connection - Connection was lost

Something is not right.

What should I change please?

edit: after I restart pai, the MQTT seem to be a problem.

> 2020-09-23 07:16:12,898 - WARNING  - PAI.paradox.interfaces.mqtt.core - Connection failed, retrying: Address in use(98)
> 2020-09-23 07:16:13,009 - INFO     - PAI.paradox.hardware.panel - Zone definitions loaded (0.66s)
> 2020-09-23 07:16:13,016 - INFO     - PAI.paradox.hardware.panel - Loading labels
> 2020-09-23 07:16:13,017 - INFO     - PAI.paradox.hardware.panel - Updating Labels from Panel
> 2020-09-23 07:16:13,517 - INFO     - PAI.paradox.hardware.panel - Zone labels loaded (0.5s): Garage_RS, Garage_PIR, Front_Door_PIR, Lounge_PIR, Living_Room_PIR, Corridor_PIR, Laundry_PIR, Tamper, Front_Door_RS, Shopper Door
> 2020-09-23 07:16:14,269 - INFO     - PAI.paradox.hardware.panel - Pgm labels loaded (0.75s): External Strobe, Internal Siren, PGM3, PGM4, PGM5, Output 06, Output 07, Output 08, Output 09, Output 10, Output 11, Output 12, RTX3 PGM1, RTX3 PGM2, RTX3 PGM3, RTX3 PGM3
> 2020-09-23 07:16:14,365 - INFO     - PAI.paradox.hardware.panel - Partition labels loaded (0.1s): Garage, House
> 2020-09-23 07:16:14,900 - WARNING  - PAI.paradox.interfaces.mqtt.core - Connection failed, retrying: Address in use(98)
> 2020-09-23 07:16:15,902 - INFO     - PAI.paradox.hardware.panel - User labels loaded (1.54s): System Master, , , Joseph, Norah, User 06, User 07, User 08, User 09, User 10, User 11, User 12, User 13, User 14, User 15, User 16, User 17, User 18, User 19, User 20, User 21, User 22, User 23, User 24, User 25, User 26, User 27, User 28, User 29, User 30, User 31, User 32
> 2020-09-23 07:16:16,655 - INFO     - PAI.paradox.hardware.panel - Module labels loaded (0.75s): Bus Module 01, Bus Module 02, Bus Module 03, Bus Module 04, Bus Module 05, Bus Module 06, Bus Module 07, Bus Module 08, Bus Module 09, Bus Module 10, Bus Module 11, Bus Module 12, Bus Module 13, Bus Module 14, Bus Module 15
> 2020-09-23 07:16:16,749 - INFO     - PAI.paradox.hardware.panel - Repeater labels loaded (0.09s): Repeater 1, Repeater 2
> 2020-09-23 07:16:17,124 - INFO     - PAI.paradox.hardware.panel - Keypad labels loaded (0.38s): Wireless Keyp 1, Wireless Keyp 2, Wireless Keyp 3, Wireless Keyp 4, Wireless Keyp 5, Wireless Keyp 6, Wireless Keyp 7, Wireless Keyp 8
> 2020-09-23 07:16:17,220 - INFO     - PAI.paradox.hardware.panel - Site labels loaded (0.1s): Your Alarm Site
> 2020-09-23 07:16:17,440 - INFO     - PAI.paradox.hardware.panel - Siren labels loaded (0.22s): Wireless Siren 1, Wireless Siren 2, Wireless Siren 3
> 2020-09-23 07:16:17,441 - INFO     - PAI.paradox.paradox - Running
> 2020-09-23 07:16:18,901 - WARNING  - PAI.paradox.interfaces.mqtt.core - Connection failed, retrying: Address in use(98)
> 2020-09-23 07:16:26,903 - WARNING  - PAI.paradox.interfaces.mqtt.core - Connection failed, retrying: Address in use(98)
> 2020-09-23 07:16:42,905 - WARNING  - PAI.paradox.interfaces.mqtt.core - Connection failed, retrying: Address in use(98)
> 2020-09-23 07:17:14,908 - INFO     - PAI.paradox.interfaces.mqtt.core - MQTT Broker Connected

Thanks I have tried MQTT explorer. It seems to find the 2 partitions i have on my Paradox. I will post what I see from MQTT explorer when i am back home later.

Is PAI the only thing connecting to your panel or do you have Babyware or Insite connected at the same time?

I have babyware but it is not connected at the same time as PAI.

What are you connecting thru? Serial, IP150?

Sorry about that. I should have clarified in my original post. I am connecting via the IP150.

Do you use Lovelace front end or is your Home Assistant all .yaml driven?
My PAI addon configuration is as follows for the IP150

LOGGING_FILE: null
LOGGING_LEVEL_CONSOLE: 20
LOGGING_LEVEL_FILE: 40
LOGGING_DUMP_PACKETS: false
LOGGING_DUMP_MESSAGES: false
LOGGING_DUMP_STATUS: false
LOGGING_DUMP_EVENTS: false
CONNECTION_TYPE: IP
SERIAL_PORT: /dev/ttyUSB0
SERIAL_BAUD: 9600
IP_CONNECTION_HOST: 192.168.0.60 #static ip of my IP150
IP_CONNECTION_PORT: 10000
IP_CONNECTION_PASSWORD: paradox
IP_CONNECTION_SITEID: null
IP_CONNECTION_EMAIL: null
IP_CONNECTION_PANEL_SERIAL: null
IP_CONNECTION_BARE: false
LIMITS: {}
SYNC_TIME: true
PASSWORD: 'PC password to access panel from babyware'
MQTT_ENABLE: true
MQTT_HOST: core-mosquitto
MQTT_PORT: 1883
MQTT_USERNAME: pai
MQTT_PASSWORD: xxxxxxxx
MQTT_RETAIN: true
MQTT_BIND_ADDRESS: 192.168.0.50
MQTT_BIND_PORT: 0
MQTT_HOMEASSISTANT_AUTODISCOVERY_ENABLE: true