16-feb-2011 AUI Keypad Message Format
Contents |
Messages Received
System Response Packet
LL 0 A 00000000 T S M..M
There are two basic packet types received from the system: A response to a previous request,
and asynchronous broadcast packet. Most message data (M..M) typically begin with one or more
“fe” bytes. The presence of “fd” or “fc” indicates an error return, sometimes followed by a hex
encoded ASCII error number. Spaces above are inserted for ease of reading.
Field | Description | ||||||
---|---|---|---|---|---|---|---|
LL | Inclusive packet length. | ||||||
0 | Unknown. | ||||||
A | Destination address bitmask.
One or both bits may be set (for a broadcast message). AD2USB may not filter out messages sent to other addresses, which is only a concern in environments with multiple AUI’s. The examples used herein specify address 1. | ||||||
00000000 | Unknown. | ||||||
T | Message type (binary data).
| ||||||
S | Message sequence ID based either on the message sent, or a sequence number
used by the controller (binary data). |
System Asynchronous Response Packet
The asynchronous messages are sent on various events, such as a zone fault, arming, disarming, etc. The two known types of asynchronous packets do not appear to contain any zone-specific information, nor are there differences between messages received from faulting or restoring a zone. Typical messages received on a zone fault, again with spacing inserted:
120600000000 60 6c0245 6c f5ec0101010000 160600000000 60 630245 43f531fb45 6c f5ec01010101
The messages are likely partition-specific. That is, broadcast to all keypads set to a specific
partition. The second message contains bits below that indicate a state change. The bits are for
the most part only set for a specific instance of a message. Each non-zero nibble after the “ec” is
represented below:
Notify Type | State |
---|---|
0001 0001 0001 0001 | disarmed |
0011 0001 0001 0001 | chime mode on |
0010 0001 0001 0010 | armed stay, counting down |
0010 0010 0001 0010 | armed away, counting down |
0010 0001 0010 0010 | armed instant, counting down |
0010 0001 0001 0001 | armed stay/away |
0010 0001 0010 0001 | armed instant |
0010 0001 0001 0100 | armed, alarming |
0101 | in programming mode |
Messages Sent
Single byte messages representing key presses on the keypad are accepted by the controller. These use the same values as the alpha keypad: 00 - 09 for the numbers, 0a = *, 0b = #, and F1 - F4 = 1c - 1f.
Request header
Messages otherwise follow the basic format:
006 S TT tt M..M
Field | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
006 | Unknown. | ||||||||||
S | Optional sequence count which generates a related return sequence count in the response message. The AUI keypads rotate through the sequence 8 - f. Setting this to zero returns a zero in the corresponding response, and seems to have no other effect. | ||||||||||
TT | The type of packet, of which there are typically multiple sub-types. | ||||||||||
tt | The sub-type of packet, of which there are at times multiple parameters that differentiate sub-types. | ||||||||||
M..M | The message parameters. These parameters are typically separated by very similar-looking bytes, and almost always terminated by one of two bytes. The exact purpose and meaning of these different separators is not currently known. A 43 starts many parameters, and a 45 terminates many of those same parameters.
|
Information, Arm/Disarm, Chime
Various known and unknown message sub-types all using the 62 message group:
006 S 62 tt M..M
Field | Description | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
02 | Queried many times while in programming mode by an AUI.
Example: 0060 620245 43f531fb 43 6c Returns data very similar to the asynchronous notification: 0e020000000050 fefe ec 01010101 Asynchronous comparison: 160600000000 60 630245 43f531fb 45 6c f5ec01010101 The ASCII 1 parameter has no known purpose and does not appear to be related to the partition. When sent during Programming Mode the message returns a different status: 0b040000000050 fefe ec 05 | ||||||||||||||||||||||
03 | Secure commands
This sub-type requires a password. These commands do not function outside of an AUI scenario. There is likely some initialization sequence which is not being correctly followed (single character messages can be substituted). The first parameter contains a hex encoded ASCII password (1234), and the second parameter specifies the operation, in this example ARM STAY. 00606203 88 ec 31323334 fb 456c f5 ec 010201010101 Returns an apparent status: 0d020000000050 fefe ec 010001 Arm Message Format: 00606203 88 ec P..P fb 456c f5 ec 010A0W010I01
Disarm Message Format: 00606203 88 ec P..P fb 456c f5 ec 010101
Chime Mode Message: 00606203 88 ec p..p fb 456c f5 ec 010C0F01
|
Information, Enumeration
Various known and unknown message sub-types all using the 6b message group:
006 S 6b tt M..M
Field | Description | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
02 | Various Unknown
Unknown messages sent by an AUI. 00606b02 4343 Returns: 0e020000000050 fe ec 0201010000(Programming Mode) 0e020000000050 fe ec 0101010000(Immediately after booting) 0e020000000050 fe ec 01017f0000(Normal return) | ||||||||||||||||||||||||||||||||||
09 | Logs
Used to query log entries. 00606b09 4549 f5 A..A fb454a f5 B..B fb 4361
0d020000000050 fefefe 313030 Returns the number of entries in the log as a hex encoded ASCII value, in this example 100. Other parameters return different numbers. Using 1 or 2 for the first value appear to be valid, and using up to 14 - 24 appear to be valid for the second value. Reading logs does not function outside of an AUI device, likely due to incorrect initialization. Using the ASCII keypad method to retrieve entries after querying the total count does function. Query Log Entry 00606b09 4549 f5 A..A fb 454a f5 B..B fb 4543f5 N..N fb 436c
26020000000050 fefefefe ec 50302030312f30312030323a3330414d2045333032205a303030 Returns the hex encoded ASCII log entry, “P0 01/01 02:30AM E302 Z000” in this example. Note that querying log entries does not currently work. | ||||||||||||||||||||||||||||||||||
0a | Password, Various Unknown
A collection of password-oriented message types (T) all using the 0a message sub-type: 006 S 6b 0a T M..M User Information (80) 00600a 80 ec P..P f5ec U..U
Installer Code (81) 00606b 0a 81Returns: 0d040000000050 feec P..P
Unknown 1 (8e) 00606b 0a 8eReturns: 09040000000050 fe 30 Unknown 2 (8f) 00606b 0a 8fReturns: 09040000000050 fe 31 | ||||||||||||||||||||||||||||||||||
0b | System Information, Various Unknown
A collection of system information message types (T) all using the 0b message sub-type: 006 S 6b 0b T M..M Unknown 1 00606b0b 456c 32Returns: 09020000000050 fd 32 Appears to be complaining about the extraneous trailing 32. System Description (31) 00606b0b 4543 f5 31 fb 436cReturns: 13020000000050 fefeec 56495354412d323050 Returns “Vista-20P” in this example. Firmware Version (32) 00606b0b 4543 f5 32 fb 436cReturns: 15020000000050 fefeec 30372e30302030342e3031 Returns “07.00 04.01” in this example. Unknown 2 (33) 00606b0b 4543 f5 33 fb 436cReturns: 0a020000000050 fefe 31 Unknown 3 (34) 00606b0b 4543 f5 34 fb 436cReturns: 0b020000000050 fefeec 1f Unknown 4 (35) 00606b0b 4543 f5 35 fb 436cReturns: 0d020000000050 fefeec 300031 Unknown 5 (36) 00606b0b 4543 f5 36 fb 436cReturns: 0e020000000050 fefeec 33003439 Unknown 6 (37) 00606b0b 4543 f5 37 fb 436cReturns: 0e020000000050 fefeec 39003634 | ||||||||||||||||||||||||||||||||||
0c | Partition Information
A collection of partition information messages, distinguished by parameters, all using the 0c message sub-type: 006 S 6b 0c M..M Partition Count 00606b0c 4361Returns: 09020000000050 fe C..C
Partition Identifier 00606b0c 4543 f5 E..E fb 436c
Partition Entries 00606b0c 4549 f5 P..P fb 4361
Partition Entry 00606b0c 4549 f5 P..P fb 4543 f5 E..E fb 436c
| ||||||||||||||||||||||||||||||||||
0d | Unknown
Sent as the sixth message during AUI boot. Always returns hex encoded ASCII one. Example:0060 6b0d4343Returns: 09020000000050 fe 31 | ||||||||||||||||||||||||||||||||||
0e | Set Current Partition
Sent as the seventh message during AUI boot defaulting a keypad to the first partition entry. Used to set the AUI keypad to a particular partition entry (as opposed to partition ID, as the message is sent before the partition IDs are enumerated). Example:0060 6b0e4543f5 P..P
| ||||||||||||||||||||||||||||||||||
0f | Device Enumeration
A collection of what appear to be device enumeration messages, distinguished by parameters, all using the 0f message sub-type: 006 S 6b 0f M..M Device Count
Device Entry
|