Cached PI helps filter out spurious errors in the received PI. It ensures the JSON output only shows PI codes that were confirmed by a repeat. Currently it has two problems:
In hex output, Block1 is cleared if it's not a confirmed PI code. This might not be the best for DX use where you would want to see even noisy data, and the chances of getting a repeat of anything are low.
Sometimes the JSON output can spuriously output the previously heard PI code even though the carrier was lost a long time ago. This may also create false hope for the DXer.
The first JSON group can sometimes erroneously show pi:"0x0000". Preferably, JSON should be suppressed until the reception of PI is confirmed.
It seems that a spurious corrupted PI code leads to the whole group being discarded - this needs to be fixed.
Cached PI helps filter out spurious errors in the received PI. It ensures the JSON output only shows PI codes that were confirmed by a repeat. Currently it has two problems:
pi:"0x0000"
. Preferably, JSON should be suppressed until the reception of PI is confirmed.