Homebridge - ParadoxAlarmInterface/pai GitHub Wiki
We fully support Homebridge via MQTT-Thing for Apple HomeKit integration, since the release of 1.1.0.
- MQTT Broker (Mosquitto or other compatible)
In /etc/pai/pai.conf you'll need:
- MQTT enabled and configured (
MQTT_ENABLE = True) - Uncomment the
MQTT_COMMAND_ALIASsection.
MQTT_COMMAND_ALIAS = {
# For homebridge
'armed_home': 'arm_stay',
'armed_night': 'arm_sleep',
'armed_away': 'arm',
'disarmed': 'disarm'
}- Install MQTT-Thing.
- In Homebridge's
config.jsonfile, or through Homebridge's 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/PARTITION_NAME",
"getTargetState": "paradox/states/partitions/PARTITION_NAME/target_state",
"getCurrentState": "paradox/states/partitions/PARTITION_NAME/current_state"
},
"currentStateValues": [
"armed_home",
"armed_away",
"armed_night",
"disarmed",
"triggered"
],
"targetStateValues": [
"armed_home",
"armed_away",
"armed_night",
"disarmed"
],
"restrictTargetState": [ 1, 3 ]
}- Finally, restart Homebridge.
- If you need
arm_stay(index0) orarm_night(index2), change therestrictTargetStatearray to include the respective indexes from the array oftargetStateValues. - EVO panels do not support
armed_nightso remove index2:"restrictTargetState": [ 0, 1, 3 ] - You can lookup escaped partition names like
../partitions/PARTITION_NAMEin MQTT Explorer. Unescaped../partitions/PARTITION NAMEwill not work.
- In Homebridge's
config.jsonfile, or through Homebridge's Config Editor, add the following accessory:
{
"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.