Home Assistant and Paradox Alarm Panels

Greetings! , i am try to setup home assistant with my paradox alarm system SP6000 , i have found and use this script

it use the IP150 module and MQTT to read the state from the panel and to control (arm & disarm your alarm) , everyhing is working perfect , i have setup in the same raspberry that i am running home assistant the mqtt mosquitto broker , and i read all the events from the alarm and control the alarm with success!.

now i am trying to embed this in the home assistant , i am using the MQTT Alarm Control Panel component , i have in my configuration.yaml the following:

alarm_control_panel:
platform: mqtt
state_topic: “Paradox/C/P1”
command_topic: “Paradox/C/P1”
name: “Paradox”
payload_disarm: “DISARM”
payload_arm_home: “ARM”
code: “5555”

in the front panel , i see the paradox and the state is DISARM , when i click the icon , i see No state history found. and unknown , i am sending manual from the terminal message to the mqtt and the alarm is set to arm (i heard my alarm is beeping) but the icon on HA is never change to arm , also one more thing it wont let me to write the code (the field is empty i cant click or write numbers or anything)

any thoughts?

Thanks!

george

1 Like

it seems nobody knows…

1 Like

Hi, did you get this working?

I am playing with similar setup (Paradox MG5000 -> IP150 -> MQTT via python script -> HA MQTT Alarm Control Panel). First problem is in your “state_topic” - by default, events are published under Paradox/Events topic. Paradox/C/P1 is just for control.
Second issue and the one I’m stuck at is that payload published by paradox is different from what alarm control panel is expecting. And while you can configure payload for command_topic, you cannot do the same for state_topic.
Has anyone idea how to change the payload that is expected by state_topic?

i have found a solution! if anyone has the same issue please send me a message!

thanks!

1 Like

Thanks, I would appreciate if you could share your solution

1 Like

Hi, I would be interested in the solution you found. My feeling is that a custom MQTT component need to be implemented to analyse the payload properly.

1 Like

sorry for a long time to answer

you need to edit the file: ParadoxMap.py in the line 199-201

and change it to:

controlAlarm = {"Header": "\xaa\x25\x00\x04\x08\x00\x00\x14\xee\xee\xee\xee\xee\xee\xee\xee",
                1: {"ARMED_HOME": "\x40\x00\x04\x00", "DISARMED": "\x40\x00\x05\x00", "SLEEP": "\x40\x00\x03\x00", "STAY": "\x40\x00\x01\x00"},
                2: {"ARMED_HOME": "\x40\x00\x04\x01", "DISARMED": "\x40\x00\x05\x01", "SLEEP": "\x40\x00\x03\x01", "STAY": "\x40\x00\x01\x01"}}

and here is the configuration.yaml

alarm_control_panel:
platform: mqtt
state_topic: “Paradox/#”
command_topic: “Paradox/C/P1”
name: “Paradox”
payload_disarm: “disarmed”
payload_arm_home: “armed_home”
code: “1234”

1 Like

Hi guys thanks for the information you guys have provide and work done on this project Im not sure if anyone can help me
i have setup as per instructions and have the ip150 talking to MQTT and also have the disarm logo in Home Assistant OK. now this is where I am having issue because I am using the ip150 on the Paradox EVO48 now I realize the code below will be different on my system.

`controlAlarm = {"Header": "\xaa\x25\x00\x04\x08\x00\x00\x14\xee\xee\xee\xee\xee\xee\xee\xee", 1: {"ARMED_HOME": "\x40\x00\x04\x00", "DISARMED": "\x40\x00\x05\x00", "SLEEP": "\x40\x00\x03\x00", "STAY": "\x40\x00\x01\x00"}, 2: {"ARMED_HOME": "\x40\x00\x04\x01", "DISARMED": "\x40\x00\x05\x01", "SLEEP": "\x40\x00\x03\x01", "STAY": "\x40\x00\x01\x01"}}`

as I can see the differance in the output when running the IP150-MQTTv2.py file and it trys to get lables and other information ill post the differance in code below.

Reading config.ini file... config.ini file read successfully Attempting connection to MQTT Broker: 10.0.0.59:1883 MQTT client subscribed to control messages on topic: Paradox/C/# Connected to MQTT broker with result code 0 Logging into alarm system... 32-> 0xaa 0x8 0x0 0x3 0x8 0xf0 0x0 0xa 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x4a 0x75 0x73 0x74 0x6a 0x33 0x33 0x70 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 48<- 0xaa 0x19 0x0 0x1 0x38 0xf0 0x0 0x0 0x3 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x0 0x44 0x34 0x37 0x37 0x36 0x35 0x41 0x36 0x43 0x32 0x42 0x39 0x31 0x32 0x34 0x30 0x0 0x20 0x1 0x34 0x71 0x0 0x78 0x52 0xee 0xee 0xee 0xee 0xee 0xee 0xee Login to alarm panel successful 16-> 0xaa 0x0 0x0 0x3 0x8 0xf2 0x0 0xa 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 32<- 0xaa 0x1 0x0 0x1 0x38 0xf2 0x0 0x0 0x3 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x0 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 16-> 0xaa 0x0 0x0 0x3 0x8 0xf3 0x0 0xa 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 48<- 0xaa 0x11 0x0 0x1 0x3a 0xf3 0x0 0x0 0x3 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x1 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0xa 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x72 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x72 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 53<- 0xaa 0x25 0x0 0x2 0x32 0x0 0x0 0x0 0x3 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x72 0xff 0x4 0x2 0x0 0x0 0xa1 0x59 0x1 0x2 0x50 0x3 0x3 0x2 0x9c 0x5c 0x0 0x10 0x1 0x0 0xe 0x29 0x9 0x20 0x10 0x30 0xff 0x57 0x45 0x56 0x4f 0x34 0x38 0x20 0x0 0x0 0x41 64-> 0xaa 0x26 0x0 0x3 0x8 0xf8 0x0 0xa 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x80 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xd0 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 32<- 0xaa 0x1 0x0 0x1 0x7a 0xf8 0x0 0x0 0x3 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x1 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0xa 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x5f 0x20 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x7f 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 53<- 0xaa 0x25 0x0 0x2 0x72 0x0 0x0 0x0 0x3 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x0 0x0 0x0 0x0 0x3 0x2 0x50 0x0 0x0 0x0 0x0 0x0 0x8 0x30 0x2 0x3 0x0 0x3 0x2 0x9c 0x5c 0x80 0x1 0x1 0x1a 0x40 0x80 0x38 0x1 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x24 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x0 0x0 0x0 0x0 0x3 0x2 0x50 0x0 0x0 0x0 0x0 0x0 0x19 0x0 0x0 0x3 0x0 0x3 0x2 0x9c 0x5c 0x80 0x1 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x2 0x0 0x0 0xf1 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 75<- 0xaa 0x6 0x0 0x2 0x72 0x0 0x0 0x0 0x3 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x12 0x6 0x0 0x0 0x0 0x18 0xaa 0x25 0x0 0x2 0x72 0x0 0x0 0x0 0x3 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xe2 0xff 0x1 0x9 0x14 0x11 0x6 0xc 0xb 0x15 0x2d 0x0 0x4 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x73 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x50 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0xe 0x52 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xb0 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee Updating all labels from alarm Reading from alarm: wirelessKeypadLabel Amount of numeric items in dictionary to read: 8 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x6 0x30 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x86 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x6 0x50 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xa6 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x6 0x70 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xc6 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x6 0x90 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xe6 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x6 0xb0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x6 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 53<- 0xaa 0x25 0x0 0x2 0x72 0x0 0x0 0x0 0x3 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xe0 0xff 0x1 0xa 0x14 0x11 0x6 0xc 0xb 0x16 0x2d 0x0 0x5 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x74 Labels detected for wirelessKeypadLabel: {1: '', 2: '', 3: '', 4: '', 5: '', 6: '', 7: '', 8: '\x14\x11\x06\x0c\x0b\x16-\x05'} Reading from alarm: wirelessSirenLabel Amount of numeric items in dictionary to read: 4 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x6 0xd0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x26 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x6 0xf0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x46 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee Labels detected for wirelessSirenLabel: {1: '', 2: '', 3: '', 4: ''} Reading from alarm: siteNameLabel Amount of numeric items in dictionary to read: 1 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x6 0xb0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x6 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee Labels detected for siteNameLabel: {1: ''} Reading from alarm: partitionLabel Amount of numeric items in dictionary to read: 2 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x3 0x10 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x63 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee Labels detected for partitionLabel: {1: '', 2: ''} Reading from alarm: wirelessRepeaterLabel Amount of numeric items in dictionary to read: 2 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x6 0x10 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x66 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x6 0x30 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x86 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee Labels detected for wirelessRepeaterLabel: {1: '', 2: ''} Reading from alarm: outputLabel Amount of numeric items in dictionary to read: 16 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x2 0x10 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x62 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x2 0x30 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x82 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x2 0x50 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xa2 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x2 0x70 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xc2 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x2 0x90 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xe2 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x2 0xb0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x2 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x2 0xd0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x22 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x2 0xf0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x42 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee Labels detected for outputLabel: {1: '', 2: '', 3: '', 4: '', 5: '', 6: '', 7: '', 8: '', 9: '', 10: '', 11: '', 12: '', 13: '', 14: '', 15: '', 16: ''} Reading from alarm: zoneLabel Amount of numeric items in dictionary to read: 32 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x0 0x10 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x60 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x0 0x30 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x80 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x0 0x50 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xa0 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x0 0x70 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xc0 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x0 0x90 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xe0 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x0 0xb0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x0 0xd0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x20 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x0 0xf0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x40 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x1 0x10 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x61 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x1 0x30 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x81 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x1 0x50 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xa1 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x1 0x70 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xc1 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x1 0x90 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xe1 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x1 0xb0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x1 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x1 0xd0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x21 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x1 0xf0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x41 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee Labels detected for zoneLabel: {1: '', 2: '', 3: '', 4: '', 5: '', 6: '', 7: '', 8: '', 9: '', 10: '', 11: '', 12: '', 13: '', 14: '', 15: '', 16: '', 17: '', 18: '', 19: '', 20: '', 21: '', 22: '', 23: '', 24: '', 25: '', 26: '', 27: '', 28: '', 29: '', 30: '', 31: '', 32: '', 99: 'Any zone'} Reading from alarm: userLabel Amount of numeric items in dictionary to read: 32 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x3 0x30 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x83 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x3 0x50 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xa3 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x3 0x70 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xc3 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x3 0x90 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xe3 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x3 0xb0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x3 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x3 0xd0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x23 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x3 0xf0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x43 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x4 0x10 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x64 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x4 0x30 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x84 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x4 0x50 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xa4 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x4 0x70 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xc4 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x4 0x90 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xe4 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x4 0xb0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x4 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x4 0xd0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x24 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x4 0xf0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x44 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x5 0x10 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x65 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee Labels detected for userLabel: {1: '', 2: '', 3: '', 4: '', 5: '', 6: '', 7: '', 8: '', 9: '', 10: '', 11: '', 12: '', 13: '', 14: '', 15: '', 16: '', 17: '', 18: '', 19: '', 20: '', 21: '', 22: '', 23: '', 24: '', 25: '', 26: '', 27: '', 28: '', 29: '', 30: '', 31: '', 32: ''} Reading from alarm: busModuleLabel Amount of numeric items in dictionary to read: 15 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x5 0x30 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x85 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x5 0x50 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xa5 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x5 0x70 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xc5 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x5 0x90 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0xe5 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x5 0xb0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x5 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x5 0xd0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x25 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x5 0xf0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x45 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 64-> 0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x50 0x0 0x6 0x10 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x66 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee Labels detected for busModuleLabel: {1: '', 2: '', 3: '', 4: '', 5: '', 6: '', 7: '', 8: '', 9: '', 10: '', 11: '', 12: '', 13: '', 14: '', 15: ''} Listening for events...
would anyone be able to help with changing the headers and other codes required for this to work
something like this below maybe. at a minimum I would like to get arm disarm working would love Pirs to activate lights later on in HA but i have another idea to make these work if thats not possible yet. any info much appreciated.

From{"Header": "\xaa\x25\x00\x04\x08\x00\x00\x14\xee\xee\xee\xee\xee\xee\xee\xee", TO: {"Header": "\xaa\x25\0x0\0x4\0x8\0x0\x14
Also I am happy to reprogram as much as necessary to get this working if I can get pointed in correct direction I wil upload and share all files and modification to code for others running the Paradox EVO48-192

Hi there I have the Paradox EVO48 working for arming and disarming perfictly I also can see all the MQTT messages coming through but I have no idea how to set up Home Assistant to subscribe to the topics for stat updates like for PIRs opens and closes.
I get this MQTT message for my Living Room PIR opening S:OPEN,P:1,N:“Living Room PIR” and S:CLOSED,P:1,N:"Living Room PIR"
how do i subscribe to this topic.

[CODE]

  • platform: mqtt
    name: Garage Door
    state_topic: “Paradox/ZS/Z3/State”
    Event_OK: “Zone OK”
    Event_open: “Zone open”
    qos: 0
    retain: true

    platform: mqtt
    name: Living Room PIR
    icon: mid:home
    state_topic: “Paradox/ZS/Z3”
    Event_OK: “Zone OK”
    Event_open: “Zone open”
    qos: 0
    retain: true

    platform: mqtt
    name: Hallway PIR
    state_topic: “Z3/Paradox/ZS”
    Event_OK: “Zone OK”
    Event_open: “Zone open”
    qos: 0
    retain: true

    platform: mqtt
    name: Theater PIR
    state_topic: “Paradox/ZS/Z3/States”
    Event_OK: “Zone OK”
    Event_open: “Zone open”
    qos: 0
    retain: true

    platform: mqtt
    name: Upstairs PIR
    state_topic: “ZS/Theater PIR”
    payload_on: “1”
    payload_off: “0”
    qos: 0
    retain: true

MQTT MESSAGES RECEIVED BELOW

[CODE]Unsure: (8)
Client mosqsub/2042-raspberryp received PINGRESP
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/ZS/Z1’, … (30 bytes))
S:OPEN,P:1,N:“Living Room PIR”
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/AS/P1’, … (11 bytes))
Unsure: (9)
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/ZS/Z1’, … (32 bytes))
S:CLOSED,P:1,N:“Living Room PIR”
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/AS/P1’, … (11 bytes))
Unsure: (8)
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/ZS/Z1’, … (30 bytes))
S:OPEN,P:1,N:“Living Room PIR”
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/AS/P1’, … (11 bytes))
Unsure: (9)
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/ZS/Z1’, … (32 bytes))
S:CLOSED,P:1,N:“Living Room PIR”
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/AS/P1’, … (11 bytes))
Unsure: (8)
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/ZS/Z1’, … (30 bytes))
S:OPEN,P:1,N:“Living Room PIR”
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/AS/P1’, … (11 bytes))
Unsure: (9)
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/ZS/Z1’, … (32 bytes))
S:CLOSED,P:1,N:“Living Room PIR”
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/AS/P1’, … (11 bytes))
Unsure: (8)
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘tele/sonoff/STATE’, … (150 bytes))
{“Time”:“2017-07-11T00:48:01”, “Uptime”:20, “Vcc”:3.155, “POWER”:“ON”, “Wifi”:{“AP”:1, “SSID”:“ParkwayDrive”, “RSSI”:90, “APMac”:“C4:EA:1D:6D:3D:BB”}}
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘tele/sonoff/SENSOR’, … (47 bytes))
{“Time”:“2017-07-11T00:48:01”, “Switch3”:“OFF”}
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/ZS/Z1’, … (30 bytes))
S:OPEN,P:1,N:“Living Room PIR”
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/AS/P1’, … (11 bytes))
Unsure: (9)
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/ZS/Z1’, … (32 bytes))
S:CLOSED,P:1,N:“Living Room PIR”
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/AS/P1’, … (11 bytes))
Unsure: (8)
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/ZS/Z1’, … (30 bytes))
S:OPEN,P:1,N:“Living Room PIR”
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/AS/P1’, … (11 bytes))
Unsure: (9)
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/ZS/Z1’, … (32 bytes))
S:CLOSED,P:1,N:“Living Room PIR”
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/AS/P1’, … (11 bytes))
Unsure: (8)
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/ZS/Z1’, … (30 bytes))
S:OPEN,P:1,N:“Living Room PIR”
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/AS/P1’, … (11 bytes))
Unsure: (9)
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/ZS/Z1’, … (32 bytes))
S:CLOSED,P:1,N:“Living Room PIR”
Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/AS/P1’, … (11 bytes))

[\CODE]

This is my working ARM DISARM CONFIG in Home assistant below works but no state updates
eventually once states work ill make one switch to arm and disarm.

platform: mqtt
name: “Arm Alarm”
state_topic: “Paradox/AS”
command_topic: “Paradox/C/P1/Arm”
payload_on: “1”
payload_off: “0”
qos: 0
retain: true

platform: mqtt
name: “Disarm Alarm”
state_topic: “Paradox/AS”
command_topic: “Paradox/C/P1/Disarm”
payload_on: “1”
payload_off: “0”
qos: 0
retain: true

What am I missing in Home Assistant to get status updates
for zones and armed disarmed status once this is working Ill have a fully functional EVO Alarm in Home Assistant
figures crossed some one can help me

Please someone must have some ideas How to subscribe to the topics in this message bellow

Client mosqsub/2042-raspberryp received PUBLISH (d0, q0, r0, m0, ‘Paradox/ZS/Z1’, … (30 bytes))
S:OPEN,P:1,N:“Living Room PIR”

S = state P = Partition 1 OPEN or CLOSED is the output
Not sure what N is

Well I had my system working perfectly on my Evo48 but now Homeassistant has upgraded to HASSIO you can’t run python scripts and as rendered this whole project as broken.
I’m trying to now run the phyton script of Paradox v1 for now using the Command_Line switch option in Hassio but just get failed to runs errors hopefully I or someone will find away for this to work in HASSIO so disappointed in HASS not allowing root acces or python addons

@0raid Is this works with IP100 as well and digiplex Evo 192 as well ? - ok I can change IP module to IP150 when with that works ?! - but I know the new IP150 modules coming with firmware 4. something and for that is some new app and all config is tone ower that app - ( I don’t remember the app name)
Anyway can I get my Digiplex EVO 192 work with your service ?

Hey there I am unsure on the Evo192 but most things work well with version 1 of the code so use that just edit the config.ini file to suit your system fairly basic to get working .
I had version 2 of the code working but had a major hard drive failure and lost my config so im just using v1 because it works for Arming Disarming and all input changes work pgms are hit and miss.
Ill try help where i can I’m also in the process of rebuilding my system again.
also yes I use the IP150 I think all FW versions before 4.0 should work the 4.0 version is for swan connection and they charge you monthly subscriptions

1 Like

I got the version 1 python script working with hasbian, and it works well! Has anyone captured what is published on the SirenStatus mqtt topic when the alarm is triggered?!

So I went about this a little differently, and I’m getting great results (hassbian). I did have to modify the code a little in the IP150 python side, because HA’s MQTT alarm needs specific arm/disarm stuff. I’m using a Paradox SP6000.

  1. Modify ParadoxMap.py

Go to “_nonReportableEvents” and change 3 and 4 to ‘armed_away’, ‘armed_home’ (may be different depending on your alarm config, but use the correct keywords from the MQTT Alarm Panel component. I don’t use full arming on my system)

Go to “_partitionStatus” and change 4 to ‘triggered’ and 11 to ‘disarmed’

  1. Modify IP150-MQTTv2.py

Add a global variable: HomeAssistant_States = [‘disarmed’, ‘armed_home’, ‘armed_away’, ‘pending’, ‘triggered’]

Replace line 515 with the following:

if subevent in HomeAssistant_States:
reply = subevent
else:
reply = “Event:” + event + “;SubEvent:” + subevent

This fixes the publishing to the topic to be recognised by HA’s component.

  1. Add your alarm control in configuration.yaml or additional !include (change your payloads accordingly, I’ve changed my ‘arm’ to ‘stay’ on the SP6000 and trigger events remotely on conditions)

alarm_control_panel:

  • platform: mqtt
    state_topic: “Paradox/Events”
    command_topic: “Paradox/C/P1”
    payload_disarm: “Disarm”
    payload_arm_home: “Sleep”
    payload_arm_away: “Stay”
    code: !secret alarm_code
  1. Add sensors from the correct states (use the Paradox/Zone topic, the suffix on the topic is the name of your zone from the Paradox label)
  • platform: mqtt
    state_topic: “Paradox/Zone/Lounge”
    name: “Lounge PIR”
  1. For a the last event thrown by the system (good for curiosity I guess), add another binary sensor:
  • platform: mqtt
    state_topic: “Paradox/Events”
    name: “Last Event”

Now when you click on the sensor in HA, you’ll have a history, plus a code and arm/disarm buttons.

Hope this helps someone!

1 Like

Thank you! I’ve struggled with it previously, and didnt get it working. Im going to try this. Will update if Im successful.

It’s not without a caveat, the if statement in the .py still churns out other events which HA doesn’t expect, so there’s a bunch of logs that keep coming through as warnings in HA. Going to try set it to null, but that will break my “last event” sensor that I’ve got running.

1 Like

I’m on the very same boat. I would love to know this too. @0raid please could you comment on this? thanks

Hey guys, i have IP150 firmware version 4.1 and it seems that with that fw version there is no way to connect to my Spectra 65. Is there a way to dowgrade to lower version of my IP150 or to find IP100?
I really need to connect my alarm system with my hassio but sofare it is impossible.
I will appriciate any help on this