@@ -1027,6 +1027,9 @@ void dscKeybusInterface::printPanelStatus5(byte panelByte) {
1027
1027
void dscKeybusInterface::printPanelStatus14 (byte panelByte) {
1028
1028
#if !defined(__AVR__) // Excludes Arduino/AVR to conserve storage space
1029
1029
switch (panelData[panelByte]) {
1030
+ // 0x40 - 0x5F: Zone fault restored, zones 33-64
1031
+ // 0x60 - 0x7F: Zone fault, zones 33-64
1032
+ // 0x80 - 0x9F: Zone bypassed, zones 33-64
1030
1033
// 0xA0 - 0xA3: PC5200 AC restore, slots 1-4
1031
1034
// 0xA4 - 0xA7: PC5200 AC trouble, slots 1-4
1032
1035
// 0xA8 - 0xAB: PC5200 Battery restore, slots 1-4
@@ -1039,6 +1042,48 @@ void dscKeybusInterface::printPanelStatus14(byte panelByte) {
1039
1042
case 0xC5 : stream->print (F (" TLink receiver restored" )); return ;
1040
1043
}
1041
1044
1045
+ /*
1046
+ * Zone fault restored, zones 33-64
1047
+ *
1048
+ * Command Partition YYY1YYY2 MMMMDD DDDHHHHH MMMMMM Status CRC
1049
+ * 11101011 0 00000000 00100001 00010110 11000000 00110100 00010100 01011111 11111111 10001000 [0xEB] 2021.05.22 00:13 | Zone fault restored: 64
1050
+ * 11101100 0 00000000 00100001 00010110 11000000 00110100 00010100 01011111 00001001 10010011 [0xEC] Event: 009 | 2021.05.22 00:13 | Zone fault restored: 64
1051
+ * Byte 0 1 2 3 4 5 6 7 8 9 10
1052
+ */
1053
+ if (panelData[panelByte] >= 0x40 && panelData[panelByte] <= 0x5F ) {
1054
+ stream->print (F (" Zone fault restored: " ));
1055
+ printNumberOffset (panelByte, -31 );
1056
+ return ;
1057
+ }
1058
+
1059
+ /*
1060
+ * Zone fault, zones 33-64
1061
+ *
1062
+ * Command Partition YYY1YYY2 MMMMDD DDDHHHHH MMMMMM Status CRC
1063
+ * 11101011 0 00000000 00100001 00010110 11000000 00100100 00010100 01111111 11111111 10011000 [0xEB] 2021.05.22 00:09 | Zone fault: 64
1064
+ * 11101100 0 00000000 00100001 00010110 11000000 00100100 00010100 01111111 00001011 10100101 [0xEC] Event: 011 | 2021.05.22 00:09 | Zone fault: 64
1065
+ * Byte 0 1 2 3 4 5 6 7 8 9 10
1066
+ */
1067
+ if (panelData[panelByte] >= 0x60 && panelData[panelByte] <= 0x7F ) {
1068
+ stream->print (F (" Zone fault: " ));
1069
+ printNumberOffset (panelByte, -63 );
1070
+ return ;
1071
+ }
1072
+
1073
+ /*
1074
+ * Zones bypassed, zones 33-64
1075
+ *
1076
+ * Command Partition YYY1YYY2 MMMMDD DDDHHHHH MMMMMM Status CRC
1077
+ * 11101011 0 00000001 00100001 00010110 11000000 00011000 00010100 10011111 00000000 10101110 [0xEB] 2021.05.22 00:06 | Partition 1 | Zone bypassed: 64
1078
+ * 11101100 0 00000001 00100001 00010110 11000000 00011000 00010100 10011111 00010011 11000010 [0xEC] Event: 019 | 2021.05.22 00:06 | Partition 1 | Zone bypassed: 64
1079
+ * Byte 0 1 2 3 4 5 6 7 8 9 10
1080
+ */
1081
+ if (panelData[panelByte] >= 0x80 && panelData[panelByte] <= 0x9F ) {
1082
+ stream->print (F (" Zone bypassed: " ));
1083
+ printNumberOffset (panelByte, -95 );
1084
+ return ;
1085
+ }
1086
+
1042
1087
/*
1043
1088
* PC5200 AC restore: 1-4
1044
1089
*/
0 commit comments