Alarm component for DMP alarm system

Hi all. I’ve been notified by @Apple2T4ch that apparently my skills might be of use here. I own two XR500 boards and have been busy working on the Remote Link TCP communication protocol.

@amattas mentioned the Crestron integration uses Entre - this is only sort of true. They actually have a module that communicates directly with the panel via the Remote Link TCP protocol. I’ve been using this in conjunction with some brute force testing to get a lot of preliminary info. I’ve been using this (http://data.jelimoore.xyz/Dropzone/python_rxdmp.py) script to just listen to events over the network. Keep in mind here, there are 2 main methods of network communication - monitoring/PC reports, and Remote Link. That script is for the monitoring - run that script, go into the programmer, set a new communication path of type “NET” and set the IP to whatever box you’re running it on and bam, you’ll get events. They look a bit like this (I have added plain english labels for ease of understanding):

bypass	b'\x0239D8   1002 Zx\\093\\t "BU\\z 001"TEST            \\u 32764"REMOTE USER     \\a 001"MAIN            \\c 01"NP\\\r\x00'
unbypass b'\x028819   1002 Zy\\093\\t "BU\\z 001"TEST            \\u 32764"REMOTE USER     \\a 001"MAIN            \\c 01"NP\\\r\x00'

arm	b'\x025D5F   1002 Zq\\076\\t "CL\\u 32764"REMOTE USER     \\a 001"MAIN            \\e "AC\\c 01"NP\\\r\x00'
bypass	b'\x0239D8   1002 Zx\\093\\t "BU\\z 001"TEST            \\u 32764"REMOTE USER     \\a 001"MAIN            \\c 01"NP\\\r\x00'
disarm	b'\x0283EC   1002 Zq\\070\\t "OP\\u 32764"REMOTE USER     \\a 001"MAIN            \\c 01"NP\\\r\x00'


checkin b'\x025885   1001 Zs\\014\\t 086\\\r\x00'

Remote Link is more of a configuration editor and the monitoring is just for receiving events. I do not actually posses the remote link app but I do have System Link which gets you most everything sans programming (change user codes, schedules, arm/disarm, etc). I’m still trying to delve a bit into the actual writing of data to the panel, it looks like they have some sort of checksum embedded in there. That’s not important to HASS anyways, so I’ll shelve it for later. I’ve been ensconced in other projects and just haven’t written the parser for the DMP network protocol.

Now, if all else fails, you can also use an inexpensive ATA and run alarmreceiver in Asterisk to parse the CID events. I actually have a small proof-of-concept app running in Python and Flask to receive the events and log them in a database + fire off a text message if SHTF. This is how my main panel currently communicates with me for alarms, bypasses, troubles, etc.

Any other questions feel free to pick my brain. Love to be of help.

Natalie

2 Likes