Help build binding for Paradox Alarm Panel with IP150

I think ip150 firmware 4 and up.

Not sure if I’d do a binding, I’m pretty happy with the mqtt solution, I just want it to work…I can’t control my unit, but if register 911 (something like that) is supposed to be 0000 mine isn’t.

I’m either a sp6000 or sp7000 and while all zones etc work well (and work better than my windows sdk based solution), I can’t arm or disarm or use my PGM

Oh I just noticed, you’re on ParadoxIP150, rather than ParadoxIP150V2, the port 10000 only based one.

yeah… I couldn’t get the Zone descriptions to work when using the v2 :frowning: so I stayed with v1

I’m not fussed by those, as I’m sure I added the code that decoded them from the event packet, (and converted to zone based mqtt topics.

1 Like

Latest news for those, who stuck on Paradox IP150 module with v4.xx firmware. I managed to downgrade it back to v3.01! I again can use direct BabyWare connection to configure my panel!!! :slight_smile:

I will wait few weeks, until more people, who have same problem, will see this message ant then will share all the tools and instructions how to do downgrade. Until this time I’m recommending disconnect IP150 modules from internet. IP150 firmware from V4.xx updates itself on every IP150 module power cycle, so Paradox can fix their bugs and release update, which can remove possibility of downgrade.

My final conclusion about Paradox - DO NOT TRUST THIS COMPANY AND DO NOT BUY THEIR PRODUCTS ANYMORE!

I pointed them with finger to their security holes and they even didn’t fixed them all in two weeks time. They even didn’t said “Thank you” to me… because swear words are not allowed, i don’t have what to say anymore about this company.

1 Like

Anyone interested in an updated script for SP based devices, obviously I can’t test other devices since I only own an SP7000.

It’s a fork of @Tertius_Hyman’s original…and so if wanted, or can possibly be merged back in…if it’s compatible with EVO and other devices.

If you’re already running it, maybe take a backup, updates are coming thick an fast as I make changes, and some of them are breaking as I test on one machine then run on another - and I see faults as they come up.

Hi !

I will try it today and let you know how it goes :slight_smile: Thanx!

Should I modify the Alarm_Registry_Map = ParadoxMG5050 in the config.ini to something else to be able to read my SP7000 Zone Labels?

I tried it: it works but I can’t read the Zone Labels (not a big deal anyway)

btw: which are the “enhancements” of v2 versus v1 ? :slight_smile:

No I use the ParadoxMG5050 map.

Did you add the pin code to the config.ini? In winload/babyware, it’s the PC Password.

And if working you should get the Paradox/Status/0 message coming out as a json with the voltages…that’s how I know it’s accepted the code.

Yeah, but I still don’t see the Zone labels (and nothing is published onParadox/Labels/#)

edit

update: I changed some options in config.ini and I got mqtt messages under Paradox/Labels/# but still no Labels:

[IP150]
Pincode: ####                           ;PC Password (from Winload/Babyware)
Password: passwd
IP: 172.16.13.198
IP_Software_Port: 10000

[MQTT Broker]
IP: 127.0.0.1
Port: 1883
Mqtt_Username = paradox                      ;MQTT username, without qoutes
Mqtt_Password = passwd                      ;MQTT password, without qoutes

[Alarm]
Alarm_Model = ParadoxMG5050             ;Currently not used
Alarm_Registry_Map = ParadoxMG5050      ;This is used to map to the correct dictionary class within the ParadoxMap.py package. The word "Registers" is appended before loadi
ng.
Alarm_Event_Map = ParadoxMG5050         ;This is used to map to the correct dictionary class within the ParadoxMap.py package. The word "EventMap" is appended before loadin
g.
Zone_Amount = 32

[MQTT Topics]
Topic_Publish_Events = Paradox/Events   ;The main topic used to publish all events
Events_Payload_Numeric = 0             ;1=Events are reported using numeric value [not replaced by the dictionary]. 0=Events are translated to more meaningful text from the
 dictionary, if your alarm is supported.
Topic_Subscribe_Control=Paradox/C/      ;All controls are given through this high-level topic
Startup_Publish_All_Info = True         ;Upon startup publish all labels from the alarm (configured names of things), only application when reading (updating) labels
Topic_Publish_Labels = Paradox/Labels   ;The topic used to publish labels
Topic_Publish_AppState = Paradox/State  ;Publishes the scripts internal states, useful to check if connection is alive
Topic_Publish_ZoneState = Paradox/Zone  ;Publishes the zone status' with the zone name as the next topic group (1 for open, 0 for closed)
Topic_Publish_ArmState = Paradox/Partition  ; Publishes the partition status 1 for armed, 0 for disarmed.
Topic_Publish_Heartbeat = Paradox/Heartbeat ; Publishes a periodic message, and it a last will and teastament of the mqtt connection
Topic_Publish_Status    = Paradox/Status    ; publishes specific parts of the 6 zone status messages (0 - 5)
Publish_Static_Topic = 1		;Publish events emulated as topics, E.g. Paradox/Events/0/20

[Application]
Debug_Mode = 0                         ;0=Minimal, 1=Basic, 2=Verbose
Startup_Update_All_Labels = True       ;Upon startup collect all labels from the alarm (configured names of things). Required for config item: Topic_Publish_Labels. If you 
see the script stuck at trying to update the labels, then disable this option
Log_File = /var/log/paradox/paradox.log
Auto_Logoff = True				;When detecting another 3rd party connection to the IP module, logoff for the Logoff_Delay duration (3rd party connection ma
y need to re-attempt their connections
Logoff_Delay = 120   			;Delay before reconnection after a 3rd party connection attempt
edit

That on the heart beat status 0 reply, means it’s hasn’t accepted the PC Password.

It’s an error…it will still report all the zones (it get those names also from the live events, ie zone open/close). But it cant report their status periodically.

If it accepted the password it’d be a 0x50 or 0x52.

Can you post, or message me, the message and reply in the log from the Command 0x00 : Initialize communication line

It should look like this:

2018-06-06 08:05:39,871 DEBUG 64->   0xaa 0x25 0x0 0x4 0x8 0x0 0x0 0x14 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0x0 0x0 0x0 0x0 0x16 0x6 0x10 0x2 0x27 0x29 0x92 0x72 0x19 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x2 0x0 0x0 0x9d 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee 0xee
2018-06-06 08:05:40,171 DEBUG 53<-   0xaa 0x25 0x0 0x2 0x72 0x0 0x0 0x0 0x0 0xee 0xee 0xee 0xee 0xee 0xee 0xee 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 0x0 0x0 0x0 0x10
2018-06-06 10:48:43,487 INFO Command 0x00 : Initialize communication
edit

grrrrrrrrrrrrrrrrrrrr

my bad… wrong password used (damn it)

I got it working now :stuck_out_tongue: (sorry)

Lols, I just replied with some details in message (rather than in public).

So now you’re getting the voltages etc off the panel, and panel date time? Plus all the label ids? have a look in the logs (they’re quite noisy) you’ll see almost every 6 seconds your zone statuses and partition statuses.

1 Like

Yup ! all is good !
I send you a reply :slight_smile:

There’s two config items one for update/read all the zone labels and one for publish them. Make sure they’re both on. TBH I never played with the labels topics, so can’t actually confirm if they work…I prefer to list them all in the Paradox/Zones/ topic.

Startup_Publish_All_Info = False
Startup_Update_All_Labels = False

In the config.master.ini you have them both to False, so I left it like that… I will switch it to True

Yeah that’ll do it…I think the Startup_Update_All_Labels is what reads them all.

I used to use a Contact item in OH2 (Open/Closed) for each Zone, so I will use the labels

Topic Paradox/Zones/zone label Sets a status for on of off for each zone.
Allows Openhab?Home Assistant to easily configure an item for each zone

I guess I need to transition to a Switch Item now (On/Off). not a problem.

Is there another way to define Items to collect the state of the Zones?