Community Add-on: Paradox Alarm Interface

Tags: #<Tag:0x00007f739a8460d8> #<Tag:0x00007f739a845e30>


New users cannot put links in the post. So some addresses won’t be links in my post. Sorry for that.

I am one of core developers of
This is interface to Paradox alarm systems. We have deployed our package to pypi, have docker containers and now want to create Hass io addon to make it available to Hass io users.

I have created a repository
Addon can be installed from this repository.
Now I am facing some problems understanding how these addons should be configured. As I see best way is via a json config. Problem that our PAI does not work with json configuration yet. We have prebuilt docker image that works great if a user modifies our config py on a docker volume.

Which way users of our addon can change our config on the docker volume? via share? How to make it visible in the hass io share?

I do not have any device configured with hass io I am completely blind here. Some users of the project are ready to help and test.


Hi @yozik04

I added the repository and managed to install the add-on through the UI.
Seems like it’s running.

The problem of course is that the configuration settings does not work so the add-on does not actually work. Do you know how I can manually change the config through SSH?

My two cents: would it not just be simpler to read the config JSON from Hassio (that you enter in the UI interface) and simply merge it into the default config in if it’s detected?
Feels like that should be a fairly simple change to make to the code (and then you can use the config editor in the UI as intended)?


This is why I have created this topic. I do not know how to configure it via ssh and is it possible that way? In the project roadmap is to ditch and use hierarchial json or yaml as configuration. This is why I do not want to think out a json configuration for now.

Created a pull request to sort this out.

It’s easy enough, just a few lines of extra code and nothing else has to change!
Just have to change the add-on config.json file to include all the option properties…

I installed the add-on and everything seems to work great. Thanks for that. Installation wiki could be little bit better and I found one mistake. There are ‘IP’ but should be “IP” if IP150S is used.

One question, why there are so long delay between PIR sensor activation and event?

@stosoorok You can always contribute to the wiki yourself and help the project. It is hard to improve the wiki while we do not use ourselves.

Do not understand what about ‘IP’ vs “IP”?

Do you use local connection or go via cloud? What panel you have?
I use EVO192 via IP150 with local connection and reaction is almost instant.

@yozik04 I am not a coder/developer, just a noob with, so I think I can’t help you guys. :frowning:

What I found, the “connection type” should be in double quotes not single quotes. Like this:

  "SERIAL_PORT": "/dev/ttyS1",
  "SERIAL_BAUD": 9600,
  "IP_CONNECTION_PASSWORD": "your password",

Please change it here:

Second thing I found, Paradox PC Password can’t be “0000”, you have to change it with Babyware to get the add-on to work.

I use Paradox EVOHD and IP150S module with on Ubuntu Server LTS. I have like 3-4 sec delay. The pir sensor must be “red” for 3-4 seconds to get the trigger in I tried with Babyware and there is the same delay when testing pir sensors… Strange. So this must be EVOHD’s or IP150S’s fault not the add-on’s I presume.

A single quote or a double quote is dependent on what configuration type you have. In you use json for which single quote is invalid. For docker or as a simple service it is possible to use yaml or plain python config, there can be single quotes.

If you get same delay in Babyware then I can not help here. Config looks valid. I think delay is configurable in Babyware. Do not know exactly. Maybe sensors are are lagging as well.

PC Password 0000 problem is fixed in Development version. Will release the fix to stable branch in 1.6.0 eventually.

Delay problem is solved! I missed a checkbox from Babyware configuration.

System Options -> Communication -> “Transmit zone status on serial port” - “check” and now reports movement instantly.

edit: typo.

Nice find. Will add to the wiki.

@yozik04, my PAI add-on keeps changing EVOHD time to UTC. Hassio reports time correctly.
My Ubuntu LTS has NTP client and my time zone is correct. Could this be PAI issue or EVOHD setting?


System voltages are also very different than in Babyware

2020-01-31 17:34:06,719 - DEBUG    - MainThread - PAI.paradox.interfaces.mqtt.core - MQTT: paradox/states/system/date/time=2020-01-31 17:33:13
2020-01-31 17:34:06,721 - DEBUG    - MainThread - PAI.paradox.interfaces.mqtt.core - MQTT: paradox/states/system/power/vdc=11.8
2020-01-31 17:34:06,723 - DEBUG    - MainThread - PAI.paradox.interfaces.mqtt.core - MQTT: paradox/states/system/power/battery=20.9
2020-01-31 17:34:06,725 - DEBUG    - MainThread - PAI.paradox.interfaces.mqtt.core - MQTT: paradox/states/system/power/dc=21.9

about UTC. Try Development version of the plugin.

About voltages do not know, shows OK on my EVO192.

Thanks @yozik04, I switched to dev version, and now the time is correct! But the PAI sill reports wrong voltages to mqtt.

MQTT Explorer:

No idea how to fix voltages. No spec available unfortunately. :frowning_face:
Looks like it works for EVO192. But EVOHD probably has voltages at a different ram address.

…can I just say a big thank you to the team for the work you have put into the pai project. Im not too technical so have really appreciated the project and addon. Keep it up.

Side qu - where do I get info on what the log levels mean and how to reduce their frequency.

Hi guys,

I’ve installed PAI with docker compose and am using Discovery on HA 0.106.
Everything shows up and works great.

I just can’t figure out how to add a code to disarm on the panel.
According to the docs

HomeAssistant Keypad
If you want to enter a code to arm or disarm the alarm in HomeAssistant or HassKit.

Goto Configuration -> Customizations.
Find your alarm_control_panel partition.
Edit code to set a code and check code_arm_required and code_disarm_required.
Now you need to enter the code to disarm and arm.

but I don’t have any customization section in Home Assistant.
Am I missing something in my setup or was it moved since the wiki was written?

Im interested in this also, I did manage to get the line for the code to show up in the UI however I was still able to Arm and disarm without inputting the code…

Please play with settings and update wiki when you succeed. I do not know exactly myself.

Yeah, I figured I had to enable Advanced Settings in my user profile to get to Customizations.

I can get the panel code to show up as well and require a code, but I can type anything in it and it will arm and disarm.


I have just upgraded HA and PAI and have exacty the same problem. I can put in any code (or just leave it empty) it will arm/disarm the alarm.
This is the code in customize.yaml:

  code: 12345
  code_arm_required: true
  code_disarm_required: true
  code_format: number