Received signal strength is just an indicator and it depends on the hardware capabilities.
It can only be evaluated for the same hardware setup, different environmental conditions.
For example some radio modules can handle -80dB but others are unable to process this kind of weak signal because of the preamp capabilities of the radio module so it’s impossible to evaluate with just using this indicator.
Even when you use a different antenna for the same hardware, the RSSI will be totally different.
RSSI based localization is still in focus of acedemic researches.
Here is the source code how the autopilot handles with the RSSI data if provided by the radio modules.
I had previously read the article you cited - and many more over the years.
Some of the articles I’ve read give the impression that there is a “defined” meaning of RSSI. And some suggest that RSSI is what ever the radio wants it to be.
It appears that ArduPilot simply takes the values from the radio and saves it in the log - there’s no “normalization” of the data.
I’ve asked CubePilot to verify this - but it appears that the HereLink reports the absolute value of the dB signal strength. So instead of RSSI of 0 to about -130, it reports 0 to 130. Values closer to 0 indicate greater signal strength.
The RSSI recorded from my RFD900x SiK radio example shows RSSI values from about 140 to 240 - where higher values mean stronger signal. This is obviously very different than the values reported from HereLink.
I seem to recall reading that RSSI isn’t a linear representation of signal strength. But perhaps that’s only true for one “brand” of RSSI.
I recall reading some extensive discussion about this in BetaFlight regarding OSD display of RSSI. This and among other reasons is why companies like Team Black Sheep use other signal strength indication such as LQ - Link quality.
I may never have enough expertise to have my hands fully around all this - but now’s a good time to make some effort at it - and I appreciate your input.