Ticket #323 (closed defect: fixed)
Please don't convert RXLEV to percentage
|Reported by:||Sascha||Owned by:||mickey|
Here is what the GSM Specification (GSM 05.08 version 8.5.0 Release 1999) says about RXLEV:
8.1.4 Range of parameter
The measured signal level shall be mapped to an RXLEV value between 0 and 63, as follows:
RXLEV 0 = less than -110 dBm + SCALE. RXLEV 1 = -110 dBm + SCALE to -109 dBm + SCALE. RXLEV 2 = -109 dBm + SCALE to -108 dBm + SCALE. : : RXLEV 62 = -49 dBm + SCALE to -48 dBm + SCALE. RXLEV 63 = greater than -48 dBm + SCALE.
where the 'SCALE' parameter is an offset with the default value 0 dB.
6 bits are required to define RXLEV for each carrier measured.
While using ENHANCED MEASUREMENT REPORT message, the MS shall scale the mapping between measured signal level and RXLEV values with a fixed offset having the value 0 dB or +10 dB, as indicated by the parameter SCALE_ORD in MEASUREMENT INFORMATION (see GSM 04.18 and 04.60).
If automatic scaling mode is indicated by the network (see 04.18), the MS shall choose the lowest offset that is sufficient for reporting the strongest signal level within each ENHANCED MEASUREMENT REPORT message.
The MS shall indicate in each individual ENHANCED MEASUREMENT REPORT message which offset applies for the reported results (see GSM 04.18).
Atm ogsmd converts the RXLEV value to percentage:
const.signalQualityToPercentage( int(value)/2+2 )
The two disadvantages here are:
- The name "rxlev" suggests a value as specified above, not percentage.
- It is not possible to revers this calculation.
So please revert the RXLEV conversion introduced in commit 2492089e161d8ff17d311b6b147e7d2678b38ba6.