This is in continuation with the discussion thread id 70775 (RSSI calibration code).
Using the reference code from ADI, I initialize AD9364 and calculating the RSSI and printing the value. Below are the steps followed.
I provide a single tone at -60dBm power to the ADI and start the initialization. Using the below code after initialization to find the RSSI.
struct rf_rssi rssi;
rssi.ant = 0;
rssi.duration = 5; //Tried changing this to 10 and 100, but no difference observed
ad9361_get_rx_rssi(ad9361_phy, RX1, &rssi);
printf("rssi = %d.%02d dB\n", rssi.symbol / rssi.multiplier, rssi.symbol % rssi.multiplier);
With this code, value that is printed is approximately around 57dB. This is same if the input power provided is -60dBm or -80dBm.
After this if I change the Rx Gain, say to 10, then RSSI changes to about 69dB. The RSSI value is getting changed w.r.t the gain change, but ideally the value should become lesser as gain increases right?
Also, if I change the input power, there is no difference in RSSI observed.
Could you please help me understand the missing point here? Basically I need to find the RSSI that ADI calculates based on the input power it receives.
Kindly help me soon with your inputs.