Skip to content
Nuno Santos edited this page Nov 10, 2023 · 17 revisions

We fully support Homebridge via mqttthing. Support was added in 1.1.0

Requirements

  • MQTT Broker (Mosquitto or other compatible)

PAI Configuration:

You need to have MQTT enabled.

Some alieases in MQTT_COMMAND_ALIAS are required for Homebridge to function correctly. Make sure you've kept them if you override MQTT_COMMAND_ALIAS default settings.

Homebridge configuration

In Homebridge config.json file, or the Homebridge Config Editor, add the following accessory:

{
            "accessory": "mqttthing",
            "type": "securitySystem",
            "name": "Pick a name",
            "url": "mqtt://<ip_address>",
            "username": "<username>",
            "password": "<password>",
            "topics": {
                "setTargetState": "paradox/control/partitions/YOUR_PARTITION",
                "getTargetState": "paradox/states/partitions/YOUR_PARTITION/target_state",
                "getCurrentState": "paradox/states/partitions/YOUR_PARTITION/current_state"
            },
            "currentStateValues": [
                "armed_home",
                "armed_away",
                "armed_night",
                "disarmed",
                "triggered"
            ],
            "targetStateValues": [
                "armed_home",
                "armed_away",
                "armed_night",
                "disarmed"
            ],
            "restrictTargetState": [ 1, 3 ]
}

If you need arm_stay (index 0) or arm_sleep (index 2), change the restrictTargetState array to include the respective indexes from the array of targetStateValues.

You can lookup escaped partition names like ../partitions/YOUR_PARTITION in MQTT Explorer. Unescaped ../partitions/YOUR PARTITION will not work.

EVO panels do not support armed_night. You can use:"restrictTargetState": [ 0, 1, 3 ]

Motion sensors:

{
"accessory": "mqttthing",
"type": "motionSensor",
"name": "NAME-OF-ZONE",
"url": "mqtt://<ip_address>",
"username": "<username>",
"password": "<password>",
"topics": {
    "getMotionDetected": "paradox/states/zones/NAME-OF-ZONE/open"
},
    "onValue": "True",
    "offValue": "False"
}

Finally, restart Homebridge.