Mapping Ademco Express to Contact ID

Steve Nutt, the owner of IP Alarms started a new discussion on how to map Ademco Express to Contact ID


I am working with a PERS device that uses the Ademco Express format (AAAA27EEC) and is only capable of sending 15 different events.... 11 - emergency, 21 - aux 1, 31 - low temp, 32 - high temp, 61 - power loss, 62 - power restore, 71 - inactivity, 72 - no transmitter loaded in console, 81 - console low battery, 82 - pendant low battery, 83 - aux 1 low battery, 84 - PIR low battery, 89 - check-in 1 hour after primary reset, 91 - standard periodic check-in, 92 - manual reset/transmitter test


It's basically 4+2 format, which is a bit before my time. I need to output the events to automation software using Surgard emulation, but I don't see anywhere in my MLR2 manual to output to a computer in 4+2 format. Anyone know if this is possible?


My other option is to map all of the above events to Contact ID but it's a bit tricky and I'm wondering if any of you guys have already done it?


A Systems Support Specialist advised:

check out option 9F this will change the output of Ademco High Speed to 4x2. Option 99 does the same for Ademco Express. The computer output depending on some other settings usually looks like: RRLLssssssAssZZ RR=receiver number LL=line number s=space A = Event Code; "typically "A" for alarm but can be "A - F" ZZ= zone numbe2 digit "0 - F"


Steve checked up and came back with:

I see the Basic Protocol computer output, but as it only has a single digit event code and Ademco Express uses two digits, it threw me. Sounds like you are saying that the basic protocol event code should always be 'A' and the Express event code should be output as a Zone Number.


As an example, if I receive 1234 27 11 - I should output as RRLLssssssAss11 That leads me to ask if '11' would be interpreted as an Emergency signal in most automation software systems? Same question applies for the other Ademco Express event codes sent by this PERS.




The Systems Support Specialist warned: OK here comes the history stuff.

A true 4x2 transmission is just that a 4 digit account followed by a 2 digits. Different manufacturers handled the meaning of the 2 digits differently. Some would let any code mean any anthing so zone 1 on a panel would send 01 and zone 2 would send 02 .... Other mfgs used a "standard" based upon the old 3x1 format where 1 meant fire, 2 holdup, 3 Burg etc. So 10 - 19 were fire zones, 20 -29 were holdup, and 30 - 39 burg .... Then some panel companies realized that they could send hex so the standard was exteded to B0 - BF was opening user 0 - 15, C0 - CF closing users 0 - 15, D# = cancel by user #, E# was Restoral zone #, and F# was Trouble zone#. Remmber these were pulsed formats so there was no hex "A" which was used as "0". Then along came some mfgs like Radionics and Morse with bigger panels needing to send more zones, The Recevier makers took there signals where were not 4x2 but FSK & BFSK and made a cobined output to maintain compatibility with early automation systems. These Panels added in the event code which became the hex characters "A -F" . For panels sending true 4x2 the receiver would insert the "A" event code, The new panels could actually send 255 zones/points/users from "00 - FF" once again with an event code of A = Alarm, B = Opening, C = Closing, D = Cancel, E = Restoral, F = Trouble. Most automation systems allow the free formating of any signal, many have templates for particular commicators. Your A 11 by the standard would normally be considered a Fire zone 1 if following the standardized codes.


I can do a class on DW ring back codes and McCulloch signals, maybe a little mini-modularm thown in. I could also mention a Keman relay with a desk lock and a few #6 batteries. I would imagine 90 percent of the readers out there have no idea.


A manufacturer of alarm receivers provided the answer to the original question:

SG automation Output Protocol, Revision 153, June 2006, Page 16, Section 4.5 Internal Messages. We are using this in out SG emulation It is the same format we use for pulse 4 + 2. It goes like: 1RRLssssss0000sXssYY[DC4] 1: protocol number RR: receiver number L: line number s: space 0000: account number X: event code YY: internal event number [DC4]: terminator (14 hex) We usually leave the X event code blank (i.e. output a space) as the internal event number is long enough... So for example if we get the event on line 1 of receiver 05: 98762783C (I did not calculate the checksum...) The output would be: "1051 9876 83[DC4]"