Android - cdma snr or ber

I would like to determine through the code whether the channel voice on Android will experience noise.

There is a list of functions http://developer.android.com/reference/android/telephony/SignalStrength.html

I see the getGsmBitErrorRate () function, and it will be useful when switching to GSM.

I see the getEvdoSnr () function, but I think this is only for the "data channel".

The only other function with CDMA is getCdmaEci0 (). How can I get SNR from Eci0 ()? Is there any other way to get this value?

Overview. I am looking for a function that returns something like Bit Error Rate or signal to noise ratio. I find one link that implies that ec / i0 is exactly the same as SNR. But other pages indicate that ec / i0 is the amount of signal available.

+4
source share
1 answer

Ec refers to pilot energy. Io refers to the energy of noise. Thus, Ec / Io is a β€œpilot noise ratio” instead of a signal to noise ratio (i.e., SNR). Although, strictly speaking, PNR does not match SNR, as a practical matter, you should be able to use PNR as a proxy for SNR. The entire point of the pilot signal is to provide the receiver with information about the signal and allow it to evaluate the effects of the channel.

This web page looks useful - Ec / Io .

Edit: I forgot that the network provider sets a parameter that indicates how much pilot power should be compared to the actual signal. For example, they can be of the same power, in which case Ec / Io will be equal to SNR, or the pilot can be half the signal power, in which case the SNR will always be 3 dB higher than Ec / Io, Pilot to signal ratio can be any of several different values ​​and, as mentioned earlier, is set by the network. I do not remember how this parameter is called.

+3
source

All Articles