I am a Cellular RF Engineer and have been trying to get some specific WCDMA/3G/UMTSsignal measurement values out of Android SDK environment. Using the public class SignalStrength
I have been successful in getting meaningful GSM values (with the assistance of a Software Engineer) using getGsmSignalStrength()
, but only yield "-1" values for getCdmaDbm()
and getCdmaEcio()
respectively which are supposed to return relevant CDMA signal strength values. -1 is definitely not right!
My phone was definitely on a UMTS at the time and I can read UMTS parameters in the field test software (to get the field test software going was a hassle in itself).
I think it is quite likely that getCdmaDbm()
and getCdmaEcio()
methods are for CDMA networks, not WCDMA (CDMA and WCDMA are different technologies) which leaves me high and dry in terms of trying to get 3G measurements out of the phone. Alternatively, there is some other methods out there but I simply can't find them in the reference material on the web:
http://developer.android.com/reference/android/telephony/SignalStrength.html
Can someone please assist me? There must be a way (after all, field test s/w can get this information) but how? Someone wrote an app called Cellumap which gets UMTS, GSM and CDMA measurement information.
Have you tried getRSSI() method from NeighboringCellInfo class. It's description:
Returns received signal strength or UNKNOWN_RSSI if unknown For GSM, it is in "asu" ranging from 0 to 31 (dBm = -113 + 2*asu) 0 means "-113 dBm or less" and 31 means "-51 dBm or greater" For UMTS, it is the Level index of CPICH RSCP defined in TS 25.125
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With