Paradox Alarm MQTT Hassio addon

Once again Xssesiv, many thanks for your time. Unfortunately, my setup was almost exactly the same as yours, but I still couldn’t get my system to see the other ‘areas’ of my Paradox installation.

My entire system was slowing down on a Raspberry Pi installation so I reinstalled a snapshot of my setup in a Docker container on an Ubuntu laptop and now it can see the other Paradox areas! Maybe just a problem with limited resources.

I can now unset the system using alarm_control_panel and see all motion sensors, door sensors etc. The only problem is that I can’t set the alarm.

I have the following setup for my areas:

- platform: mqtt
  state_topic: 'paradox/alarm/state/1'
  command_topic: 'paradox/alarm/cmnd/1'
  name: alarm_house
  payload_disarm: 'DISARM'
  payload_arm_home: 'ARM_HOME'
  payload_arm_away: 'ARM_AWAY'
  qos: 1

- platform: mqtt
  state_topic: 'paradox/alarm/state/2'
  command_topic: 'paradox/alarm/cmnd/2'
  name: alarm_cottage
  payload_disarm: 'DISARM'
  payload_arm_home: 'ARM_HOME'
  payload_arm_away: 'ARM_AWAY'
  qos: 1

My Lovelace alarm panels are set up as follows:

  - entity: alarm_control_panel.alarm_house
    name: House
    states:
      - arm_home
      - arm_away
    type: alarm-panel
  - entity: alarm_control_panel.alarm_garage
    name: Garage
    states:
      - arm_home
      - arm_away
    type: alarm-panel

and lastly, my Paradox setup is as follows:

{
  "IP150_ADDRESS": "http://192.168.xxx.xxx:xxxx",
  "PANEL_CODE": "XXXX",
  "PANEL_PASSWORD": "xxxxxxxx",
  "MQTT_ADDRESS": "mqtt://core-mosquitto",
  "MQTT_USERNAME": "XXXXX",
  "MQTT_PASSWORD": "xxxxxxxxxxx",
  "ALARM_PUBLISH_TOPIC": "paradox/alarm/state",
  "ALARM_SUBSCRIBE_TOPIC": "paradox/alarm/cmnd",
  "ZONE_PUBLISH_TOPIC": "paradox/zone/state",
  "CTRL_PUBLISH_TOPIC": "paradox/ctrl/state",
  "CTRL_SUBSCRIBE_TOPIC": "paradox/ctrl/cmnd"
}

Can anyone see any reason why I can only disarm my alarm and not arm them?

Thanks in advance for your help.

Hi Claude,

I don’t know why you still can’t control more than one area, very strange! Maybe try to remove the single new line between the first and second areas under your alarm_control_panel: code?
For the arm/disarm though, maybe you’ve got too much information on the Lovelace alarm panel section?
Maybe just try having the entity and name lines, and remove the states/type because it may work without them?

The code I put up for my groups.yaml has displayed this for Lovelace. Circle highlighted are the sensors and then 1/2 are the 2 areas, which can be controlled separately, and can arm/disarm:
image
And in Pending state when Arm Away is selected:
image

Hope this helps you/anyone out further.

Hi, I just did my test and it works with IParadox app and HA connected to the IP150. I guess IParadox app doesn’t use web interface. If I try to connect through browser I get message “Only one connection at a time”.
So I was arming/disarming the panel with the app and the info in HA was changing real time.

Hey All,

I’m very glad you’re making progress in having the add-on work in more and more setups. I know this is just half-backed, and it especially lacks documentation; the community extra effort to help other new users out is awesome!

I’ll try to address a few items that arose recently:

@UbiMaiden Yes, the IP150 module (firmware V3) can be accessed in two ways: a web interface (say, port 80 via a web browser); a binary protocol (typically, port 1000, I guess with a proprietary software). Now, from my tests these two systems interconnect quite in a peculiar way:

  • If you’re logged on the binary protocol (and not on the web interface), then you can’t log into the web interface
  • If you’re logged on the web interface, then you can still log via the binary protocol

That’s exactly why I’ve implemented this add-on to access via the web interface, so that you still have the binary interface available, which some mobile apps (or, in my case, the remote monitoring system from the alarm installers) use. Crucially, this seems to differ from the other pieces of software, which prefer the binary interface, and hence end up also disabling access via the web interface.

@jpbarraca Thanks for sharing, what an awesome effort! I seem to understand the beta IP access you’ve recently added goes via the binary protocol and not the web interface (see above). If you’re interested, please feel free to embed/link the code I’ve developed to achieve that for firmware V3; the code should be modular enough to ease integration.

@rogercrespo I’m not too familiar with the PGM in the Paradox alarm. I’d say that if you can control them via the web interface, then my add-on can likely be extended to support them. However, I’m not sure I fully understand their purpose, and don’t use any in my setup; so I’d like to set expectations that developing, testing and releasing them may not happen so soon. I’m however very open to contribution, in case someone wants to jot down the required extension to the code.

@J-P, you said:

that sounds interesting! Out of curiosity, does it work on the lines: “If someone leaves home and alarm is not triggered, send out a reminder notification”? And this assumes you have other means to detect presence?

Finally, I still haven’t found a way to trigger the alarm from the web interface, neither in “panic” mode (no siren) nor regular trigger. If anyone finds a way please just let me know, and we can add the relevant support in the add-on so that you can define a switch to trigger the alarm. This would allow, for instance, to define automations to use your own window sensors or cameras with motion detection to trigger the alarm when it’s armed.

Thanks all, and enjoy!

Hi Alfredo,
PGMs are relays that you could use to activate different utilities (open garage doors, turn on heat…). The only way to activate alarm is, if the zone changes state when armed. To do that through web interface you would need to use IP150 I/O with relay that opens zone when armed. Google for the document IP150_EI02.pdf input/output. I used to turn on my home PC through IParadox app and PGM.
The other way to turn on alarm, would be to use Sonoff basic with relay, that does the same job as IP 150 I/O.

Just came across some information that may be useful for people that want to downgrade their firmware!
As always, use at your own risk
https://github.com/Tertiush/ParadoxIP150v2/issues/22#issuecomment-397906467

Hi @UbiMaiden,

Thanks for the hint. From the documentation, it seems it should be possible to trigger output PGM by home assistant, via the web interface; since the documentation doesn’t say whether the input PGM status can be inspected from the web interface, it’s not sure you could use those as sensors in home assistant. At this stage, I don’t plan implementing this feature, since as you say a Sonoff could probably do the same and would be way easier to integrate.

Re: triggering the alarm, an input PGM may work, but I find it a bit convoluted: you’d need a remotely controlled relay to alter the PGM status. I’d have preferred a button to click on the web interface, which would have worked much like arming and disarming.

In fact, my alarm can be triggered in two ways: 1) by opening a zone, which triggers the siren after a delay; 2) in “panic” mode via a remote control, where the siren doesn’t trigger, and there’s no delay. But unfortunately none of them seems to be available via the web interface.

Cheers,
Alfredo

Hi alfredo

Yes here is the automation I am currently using, having some issues with the new person: feature and playing with armed vs pending states for notifications. I only do this during the day as our phones go into coma mode and are marked away at night.

- alias: Detect if Alarm should be set
  hide_entity: false
  trigger:
    - platform: state
      entity_id: person.jean_pierre, person.anja, device_tracker.getrekt
      to: 'not_home'
  condition:
      - condition: state
        entity_id: sensor.alarm_state
        state: 'disarmed'
      - condition: state
        entity_id: sensor.hassio_connected
        state: 'Connected'   
      - condition: sun
        before: sunset
      - condition: sun
        after: sunrise
  action:
    service: notify.pushbullet
    data: 
     title: Alarm not set 
     message: The alarm is not set and no one is home.
1 Like

Hi all,
Has anyone gotten a recent version of hass.io to recognize this addon? Has anything changed? I followed the instructions below on v.90.2 (supervisor 152) and it refuses to recognize any addons after many refreshes…

cd /addons
git clone https://github.com/alfredopironti/Paradox_IP150.git paradox_ip150_mqtt

It downloaded the folder and the folder called ip150_mqtt is sitting in the addons folder with a bunch of stuff in it, and one time I got a log message in the supervisor logs about it missing some files, but since then I’ve been trying to add and remove it and refresh a bunch of times, but it never shows up in the hass.io addons page… Any way I could add it from a repository instead?

So I put it instead into the “local” folder under “addons” and hit the refresh button. Then it gives me this error:

19-04-03 21:55:56 WARNING (MainThread) [hassio.addons.data] Can't read /data/addons/local/paradox_ip150_mqtt/config.json: required key not provided @ data['arch']. Got None

So I had to add the arch option to config.json like so and then it showed up…

{
  "name": "Paradox IP150 MQTT Adapter",
  "version": "0.5",
  "slug": "paradox_ip150_mqtt",
  "description": "Expose an MQTT interface for the Paradox IP150 web interface",
  "arch": ["amd64"],
  "url": "https://github.com/alfredopironti/Paradox_IP150",
  "startup": "services",
  "boot": "auto",

Will open a case and pull request about it.

EDIT: Sorry, I hadn’t read the post above mine… it seems like someone had already figured it out. Thanks scstraus :slight_smile:

Hi guys!

Thanks for keeping this module alive! It serves me well for my IP150! :slight_smile:

Just to keep everyone in the loop, I’ve reinstalled my Home Assistant installation from scratch and while trying to do the installation of this addon, I couldn’t get it working. The addon would never get recognized by Home Assistant (0.91.4). I would get this error in the logs while trying to refresh the addons:
WARNING (MainThread) [hassio.addons.data] Can't read /data/addons/local/paradox_ip150_mqtt/config.json: required key not provided @ data['arch']. Got None

I fixed it by editing my config.json and inserting a new arch mandatory tag :
"arch": ["amd64"],

I was able to see the addon after this modification. Perhaps someone with a bit of time could update the config file on github? :slight_smile:

Thanks and have a great day!

I already made a pull request, but it hasn’t been accepted yet… I also wouldn’t mind to make a little howto for the github page, but first we need @alfredo to come back and pay us a visit so he can update the github repository…

Thanks for doign the pull request scstraus. :+1: As for the howto, I am sure it will benefit others since this addon requires a bit of tech knowledge to get it working.

Hi all,

Sorry for the delayed reply, as I found some spare time to look into this. I’ve now released v0.6 of the add-on, with the arch issue fixed. I take it was a (not-so-well documented?) breaking change in hassio at some point, that made that configuration parameter mandatory.

Thanks @scstraus for proactively proposing a pull request. Much appreciated!

I totally welcome a decent readme for the github repository, it’s very much needed. If anyone has time and willingness to help, please go ahead and I’ll try to review in a decently short lapse of time! Thanks all for the support!

Cool, I’ve only just gotten the addon working myself as I tried to order the IP150S 1.40 from Megateh as recommended here but they sent me the IP150 with 4.40 firmware instead (despite my having specifically ordered the other one) . They don’t have any 1.40 IP150S’s left. So don’t order from them…

I sent it back and got a real IP150S with 1.40 from eBay… @digieurope still has his, and these guys claim to still have 5 left (I emailed them to confirm), if anyone else is looking for one.

So, I just got the addon finally working a couple days ago… So far I’ve only played with the sensors (which are working perfectly). I haven’t played with arming it or getting the alarm panel working in lovelace yet… Once I get it all going, I will try to put together a comprehensive readme for the github repo and open a pull request against it.

Can somebody suggest a way to troubleshoot this addon?
I’m trying to follow other people’s posts as closely as possible, but I see no messages in any log - Paradox add-on, Mosquitto, home-assistant.log - no error nowhere - yet all defined entities are in unknown state.
I tried setting SSL on and off on the IP150s, at one point I got a flood of warnings that the certificated can’t be verified but then this also stopped.
The only way to tell that the addon is connected to the IP150s module is when I get the ‘userX already logged in’ message.
For completeness:
IP150s fw 1.40.00
Hardware 020
Panel SP65
FW 5.18
Hassio 0.91.4/RPi3B

In my experience, if there’s no log than the addon is working correctly. A couple things to try:

  1. Can you correctly see all your zones and alarm state when you log directly into your IP150S?

  2. Using this addon, use the webUI to subscribe to the topics you have defined and see if there’s any activity. If there is, then you defined your sensors wrong… If there’s not then you have a problem with the addon.

Thanks for the suggestions.
Connecting to the web interface of IP150s (provided that I stop the add-on) works correctly.
I’m using the Chrome extension MQTTLens to connect to Mosquitto and I’ve subscribed to all defined topics:
“ALARM_PUBLISH_TOPIC”: “paradox/alarm/state”,
“ALARM_SUBSCRIBE_TOPIC”: “paradox/alarm/cmnd”,
“ZONE_PUBLISH_TOPIC”: “paradox/zone/state”,
“CTRL_PUBLISH_TOPIC”: “paradox/ctrl/state”,
“CTRL_SUBSCRIBE_TOPIC”: “paradox/ctrl/cmnd”
however I can only see one message in total for them - “Connected” on paradox/ctrl/state.

Did you put a # after the topics to ensure it grabs the subtopics?

1 Like

Hi @scstraus,

Thanks for your involvement. It indeed seems time is coming for this add-on to finally get a README. I recently received a contribution on github for a base README, which is now live. Please feel free to propose further edits as you experiment with setting up the add-on.