Beagle_SDR_GPS
Beagle_SDR_GPS copied to clipboard
Feature Request: A/D Headroom Level
At the moment KiwiSDR station operators can get some sense of how close to overload their station is getting by connecting in via kiwirecorder and looking at the overload reports. However, by the time we get overload reports - it's too late! The receiver is already overloading, resulting in various form of distortion on the received signals. This also ties up a channel, making it difficult for an operator to monitor this over a long time period.
What would be extremely useful (and would complement the recent SNR additions), would be a report of the peak observed ADC level over some reasonable reporting period (say, the last 10 seconds). This could be reported as a raw A/D level, but preferably as a level in dBFS, and would be ideally available on the /status output.
This value has numerous uses.
- Monitoring the peak A/D level over time (which can be done externally by polling the status endpoint) helps the station owner understand how close to overload they are getting - and it will change throughout the day depending on propagation conditions (the VK5ARG station overloads during evening grey-line due to strong signals from shortwave broadcast stations).
- Having a good metric of A/D level also means it would be possible to build a coarse AGC system, inserting attenuation when the receiver is getting near overload, or perhaps even inserting gain to improve the system noise figure when there is sufficient headroom. This would allow the KiwiSDR to perform as best as possible! Stations in low-noise locations may benefit from a lower system noise figure, particularly on the higher bands.
I appreciate this is a more complex change than the recent SNR additions, as it will require FPGA code changes...
Just a note that something similar to this was recently implemented for the Red Pitaya FT8 skimmer software package: https://github.com/pavel-demin/red-pitaya-notes/issues/1008#issuecomment-864565134
It's proven quite useful to be see how close to overload the SDR has been getting (currently seen a max of -6 dBFS). While the Red Pitaya I'm using is connected to an output of the same distribution amp the KiwiSDRs are, the frontend of the Red Pitaya is a bit different to that of the KiwiSDR though, so I expect there will be a few dB of difference in the A/D level.