scudre / alarm-central-station-receiver

Python daemon for receiving events from a home alarm system via Contact ID protocol
Apache License 2.0
38 stars 10 forks source link

Not all GE concord contact ID codes there #54

Open kt8000 opened 4 years ago

kt8000 commented 4 years ago

Not all of the DSC contact ID codes map correctly in alarm-central-station-receiver. I found the GE Concord codes here.

http://alarmhow.net/manuals/UTC/Concord%20v4/Concord%20v4.0%20Contact%20ID%20Mapping.pdf

In dsc.py, I added a few more codes and might have renamed a few as well, so that most alarm signals can be decoded. There are slight differences in the way DSC and GE report the codes. eg: DSC uses 601000 for phone test, but concord uses 601UUU and UUU is not zero even if the phone test is done from the only user via the main keypad. I have added a diff and my new file for clarity.

diff dsc.py newdsc.py

8a9 > '101000': {'1': ('A', '24 Hr Emergency (non-medical)')}, 11c12,16 < '110000': {'1': ('A', '[F] Key Alarm')}, --- > '110000': {'1': ('A', 'Fire Key Alarm')}, > '111000': {'1': ('A', 'Fire Key Alarm')}, > '112000': {'1': ('A', 'Fire Key Alarm')}, > '113000': {'1': ('A', 'Fire Key Alarm')}, > '114000': {'1': ('A', 'Fire Key Alarm')}, 12a18,22 > '111ZZZ': {'1': ('A', '24 Hr Fire')}, > '112ZZZ': {'1': ('A', '24 Hr Fire')}, > '113ZZZ': {'1': ('A', '24 Hr Fire')}, > '114ZZZ': {'1': ('A', '24 Hr Fire')}, > '115ZZZ': {'1': ('A', '24 Hr Fire')}, 15a26,27 > '122000': {'1': ('A', 'Duress Alarm')}, > '122ZZZ': {'1': ('A', 'Duress Alarm')}, 16a29,33 > '131ZZZ': {'1': ('A', 'Zone Alarm Perimeter')}, > '132ZZZ': {'1': ('A', 'Zone Alarm Interior')}, > '134ZZZ': {'1': ('A', 'Zone Alarm Entry Exit')}, > '137000': {'1': ('T', 'General System Tamper (Case/Cover Tamper Alarm)')}, > '137ZZZ': {'1': ('T', 'General System Tamper (Case/Cover Tamper Alarm)')}, 27,28c44,46 < '301000': {'1': ('MA', 'AC Line Trouble')}, < '302000': {'1': ('MA', 'Battery Trouble')}, --- > '301000': {'1': ('MA', 'AC Power Failure')}, > '302000': {'1': ('MA', 'System Battery Trouble')}, > '308000': {'1': ('MA', 'System Back in Service')}, 29a48 > '320000': {'1': ('MA', 'Siren Fault')}, 30a50 > '330ZZZ': {'1': ('MA', 'Alternate Communicator Fault')}, 36a57 > '355000': {'1': ('MA', 'Loss Of Radio Supervision')}, 48a70 > '381ZZZ': {'1': ('MA', 'Loss of supervision')}, 66a89,90 > '451UUU': {'1': ('O', 'Early to Close')}, > '452UUU': {'1': ('O', 'Late to Close')}, 67a92 > '454000': {'1': ('O', 'Late to Close')}, 68a94 > '457ZZZ': {'1': ('E', 'Exit Fault')}, 73c99 < '601000': {'1': ('E', 'System Test')}, --- > '601UUU': {'1': ('E', 'System Test')},

newdsc.py.txt