FEI register returns 0? SOLVED - requires header enabled


Is there any example code that demonstrates the frequency error indicator registers working on the sx1280 while running a lora data stream? I’ve tried reading the registers after successful packet transfer, during the preamble (using the preamble detect interrupt) and roughly in the middle of the packet (based on known packet timing) but in all cases the low 20 bits of the registers are zero. The read register command is confirmed working by reading the version bits, and testing has been done on several different sx1280 chips which are otherwise working well.

Anyone had any better luck?

Kudos to CapnBry, legend of the ExpressLRS development team. He discovered that FEI springs into life when the packets have an explicit header. We had been doing all of our prior testing with headers disabled.