Decoding 0x16 cmd for 4/6-digit user codes, modules and keypad tampers
Thanks for creating and developing this project, I was amazed when first saw it year ago, but just now got time to get into the testing and write here. Im not new into electronic and microcontrollers, I had some programming experinces but never used github before and I'm pretty new when it comes to Arduino/IoT (this is my first time using/coding on arduino). 

I have some panels (PC5020, PC1565-2P, PC585) and modules (RF5132 v5, PC5104, few PC5108) available for testing and giving feedback if needed to help further development because as I see it has not been tested with PC5020 before and also wireless/hardwired expanders is a thing in development nowadays.

**As I use 6-digit code, using KeybusReader 0x16 cmd is showing unknown data, so I gave my shot at decoding protocol:**
```
21:22:35.004 ->   345.09: 00010110 0 00001110 00100011 11100101 00101100 [0x16] PC1555MX | Zone wiring: NC | *8 programming (pc585, 4digit)
21:11:10.080 ->   753.67: 00010110 0 00001110 00110010 11100101 00111011 [0x16] Unknown panel | Zone wiring: NC | *8 programming (pc5020, 4digit)
21:12:19.999 ->   823.58: 00010110 0 00001110 00110010 11101101 01000011 [0x16] Unknown panel | Zone wiring: NC | Unrecognized data (pc5020, 6digit)
21:21:12.830 ->   262.91: 00010110 0 00001110 00100011 11101101 00110100 [0x16] PC1555MX | Zone wiring: NC | Unrecognized data (pc585, 6digit)
```
_This is using master branch. If I use expander branch, PC5020 is identified as PC5005 panel._
**If I figured correctly, when byte 4,** _bit5_ **bit3 is true, system uses 6-digit codes**, _and true status scrambles byte 4 sum for "_switch (panelData[4] >> 2)_"_. Its probably easy to fix it, but I give look and as for now I dont have enough knowledge to do it by myself.

I wonder is anybody decoded left-right buttons from LCD keypads? If not, maybe I can get my hands on one and look at serial output. Blynk really lack possibility to scroll left/right on lcd to view troubles, alarm memory and so on.

Im planning to use this project with Blynk for remotely monitor and control of my DSC panel in holiday house, which have wired and wireless expansions and I would like to be able to monitor as much data as possible so Im willing to help in reporting/decoding protocol as much as I can.

I have to thanks @Dilbert66 for helping me about script-typo which caused zone tamper being misreported and for recent updates on decoding pc5108/pc5208/rf5132 modules aswell as decoding memory buffer and trouble statuses which would be really nice If possible to implement it so I could, for example, find out if my system report zone sensor low battery (which often does as in winter there is freezing temperatures) or view memory buffer somehow.

It would be great if all that new findings will be included in new build (I see that @taligentx plans soon to revisit code, merge some things and hopefully release new version main branch. I'm testing **PC5020** v3.2 and as for now, it works nicely so it **can be added** to list of **supported panels**.