Skip to content

Commit febdee5

Browse files
committed
Add status msg for zones 33-64 bypass and fault/restore
Contributed by Alviunta (https://github.com/Alviunta) In taligentx#295
1 parent e60c462 commit febdee5

File tree

1 file changed

+45
-0
lines changed

1 file changed

+45
-0
lines changed

src/dscKeybusPrintData.cpp

+45
Original file line numberDiff line numberDiff line change
@@ -1027,6 +1027,9 @@ void dscKeybusInterface::printPanelStatus5(byte panelByte) {
10271027
void dscKeybusInterface::printPanelStatus14(byte panelByte) {
10281028
#if !defined(__AVR__) // Excludes Arduino/AVR to conserve storage space
10291029
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
10301033
// 0xA0 - 0xA3: PC5200 AC restore, slots 1-4
10311034
// 0xA4 - 0xA7: PC5200 AC trouble, slots 1-4
10321035
// 0xA8 - 0xAB: PC5200 Battery restore, slots 1-4
@@ -1039,6 +1042,48 @@ void dscKeybusInterface::printPanelStatus14(byte panelByte) {
10391042
case 0xC5: stream->print(F("TLink receiver restored")); return;
10401043
}
10411044

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+
10421087
/*
10431088
* PC5200 AC restore: 1-4
10441089
*/

0 commit comments

Comments
 (0)