comparison pirelli/rssi @ 279:a7707c174510

pirelli/{rssi,txcal}: results of the Pirelli to CMU200 experiment
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 16 Feb 2019 18:30:11 +0000
parents
children
comparison
equal deleted inserted replaced
278:42575bc59702 279:a7707c174510
1 I have been wondering for a long time now how the RSSI bars displayed in end
2 user phone UIs correspond to actual Rx signal levels; Pirelli's RSSI icon on
3 the left side of the home screen can go up to 6 bars, but it was not clear at
4 all what these bars actually correspond to. I just did an experiment to shed
5 some light on this issue: I took a decased Pirelli motherboard and connected it
6 to our CMU200 instrument via the RF test port which Pirelli's mobo has like
7 most phones. Pirelli's RF test port is of the Murata SWD/SWF type, same as
8 Openmoko GTA0x and Motorola C139, and we have a test probe for these ports with
9 precisely known insertion loss numbers, thus combined with the properly
10 calibrated CMU200 instrument and our "main" SMA cable for which we also have
11 precisely known insertion loss numbers (it is the setup we use to calibrate our
12 FCDEV3B modem boards), it is a very trustworthy setup. I varied the downlink
13 signal level put out by the CMU200 and observed the bars displayed by Pirelli's
14 fw on the home screen, and this is what I got:
15
16 transition from 5 to 6 bars at -75 dBm
17 transition from 6 to 5 bars at -80 dBm
18
19 transition from 4 to 5 bars at -85 dBm
20 transition from 5 to 4 bars at -90 dBm
21
22 transition from 3 to 4 bars at -92 dBm
23 transition from 4 to 3 bars at -97 dBm
24
25 transition from 2 to 3 bars at -97 dBm
26 transition from 3 to 2 bars at -102 dBm
27
28 transition from 1 to 2 bars at -104 dBm
29 transition from 2 to 1 bars at -105 dBm
30
31 at -110 dBm it is marginal: sometimes 1 bar, sometimes 0 bars, sometimes no srvc
32
33 Looking at TI's reference firmware which Pirelli's fw must be based on, the Rx
34 signal strength is passed from L1 to the G23M PS in the form of RxLev numbers
35 that go into GSM 05.08 measurement reports (the standard [0,63] range with 0
36 corresponding to -110 dBm), ALR does no transformation, and RR passes these
37 RxLev numbers to the Rx driver in the Condat drivers layer, which then converts
38 them to the "bars" numbers for the UI. Pirelli's fw most likely retains this
39 architecture, and their modified version of the Rx driver appears to have the
40 following thresholds or somewhere around there:
41
42 RxLev >= 35: 6 bars
43 RxLev >= 25: 5 bars
44 RxLev >= 15: 4 bars
45 RxLev >= 10: 3 bars
46 RxLev >= 5 or maybe 6: 2 bars
47 RxLev abysmally low: 1 bar
48
49 The 5 dB hysteresis seen in my CMU200 experiment is probably caused by the
50 RSSI_MIN_DIFFERENCE logic seen in rr_csf.c in our TCS3-sourced version.