FreeCalypso > hg > fc-rfcal-tools
comparison doc/Tx-cal-theory @ 120:32bf19fb8a2a
doc/Tx-cal-theory: update for the new conservative rf3166 profile set
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Wed, 14 Feb 2018 03:46:34 +0000 |
parents | 7bcbbba94c41 |
children | 76faa4f52a4d |
comparison
equal
deleted
inserted
replaced
119:8054c1967c32 | 120:32bf19fb8a2a |
---|---|
23 first. I draw the reader's attention to section A.3.1 on page 43 of that | 23 first. I draw the reader's attention to section A.3.1 on page 43 of that |
24 document. The trick is as follows: the relation between the APC DAC value and | 24 document. The trick is as follows: the relation between the APC DAC value and |
25 the resulting Tx output power (or rather the equivalent in terms of voltage) is | 25 the resulting Tx output power (or rather the equivalent in terms of voltage) is |
26 modeled as a piecewise linear function, and this piecewise linear function is | 26 modeled as a piecewise linear function, and this piecewise linear function is |
27 constructed from a preliminary set of output power measurements with a fixed | 27 constructed from a preliminary set of output power measurements with a fixed |
28 set of APC DAC values. | 28 set of APC DAC values. Looking at the Vout/LSB slope in each segment of this |
29 constructed piecewise linear function, one can see that the relation stays | |
30 mostly linear throughout most of the RF PA's valid control range, and at least | |
31 in the case of GSM MS devices made by Openmoko, the factory-calibrated power | |
32 levels all fall into this "good" range in which the PA's response to the APC DAC | |
33 control value is mostly linear. | |
29 | 34 |
30 We also have a strong piece of evidence that the Tx power level calibration | 35 We also have a strong piece of evidence that the Tx power level calibration |
31 procedure performed by Openmoko at their factory was based on the same principle | 36 procedure performed by Openmoko at their factory was based on the same principle |
32 as the LoCosto document version. If you look at the /gsm/rf/tx/levels.900 table | 37 as the LoCosto document version. If you look at the /gsm/rf/tx/levels.900 table |
33 in Om-calibrated GTA02 units and compare it against the firmware's compiled-in | 38 in Om-calibrated GTA02 units and compare it against the firmware's compiled-in |
52 ========================== | 57 ========================== |
53 | 58 |
54 Ideally the power level numbers to be used as the targets for the calibration | 59 Ideally the power level numbers to be used as the targets for the calibration |
55 process would be the levels given in the GSM 05.05 spec: from 33 dBm down to | 60 process would be the levels given in the GSM 05.05 spec: from 33 dBm down to |
56 5 dBm for the EGSM and GSM850 bands or from 30 dBm down to 0 dBm for DCS and | 61 5 dBm for the EGSM and GSM850 bands or from 30 dBm down to 0 dBm for DCS and |
57 PCS, in 2 dBm steps in each case. However, the evidence from TI's calibration | 62 PCS, in 2 dB steps in each case. However, the evidence from TI's calibration |
58 documents (both Sara and LoCosto) is that some devices are not able to produce | 63 documents (both Sara and LoCosto) is that some devices are not able to produce |
59 the very highest and sometimes the very lowest power levels given in the spec, | 64 the very highest and sometimes the very lowest power levels given in the spec, |
60 and getting a successful calibration requires setting the calibration targets | 65 and getting a successful calibration requires setting the calibration targets |
61 to slightly shifted numbers, although still within the tolerances allowed by | 66 to slightly shifted numbers, although still within the tolerances allowed by |
62 the GSM 05.05 spec. The table in TI's Sara calibration document (page 26) has | 67 the GSM 05.05 spec. The table in TI's Sara calibration document (page 26) has |
73 for the lowest 4 (EGSM or GSM850) or 6 (DCS and PCS) power levels the decrement | 78 for the lowest 4 (EGSM or GSM850) or 6 (DCS and PCS) power levels the decrement |
74 between levels is 1.5 instead of 2, putting the lowest EGSM or GSM850 power | 79 between levels is 1.5 instead of 2, putting the lowest EGSM or GSM850 power |
75 level at 7 dBm instead of 5 dBm, and the lowest DCS and PCS power levels at | 80 level at 7 dBm instead of 5 dBm, and the lowest DCS and PCS power levels at |
76 3 dBm instead of 0 dBm. | 81 3 dBm instead of 0 dBm. |
77 | 82 |
78 It appears that OM/FIC were using some TI-provided calibration software without | 83 When it comes to the highest power levels, my (Mychaela's) first thought was |
79 taking the time and effort to tune its settings for their own hardware: when we | 84 that OM's calibration had them reduced to 31.8/28.8 dBm for no good reason other |
80 recalibrate these OM-made devices in our own lab, we are able to hit all of the | 85 than OM/FIC mindlessly using some TI-provided calibration software that had |
81 highest and lowest power levels given in the GSM 05.05 spec. On our own FCDEV3B | 86 those settings by default, as a leftover from some much older hw platform that |
82 hardware we are likewise able to get the full 30 dBm in the DCS and PCS bands, | 87 was poorer in this department than OM's GTA0x hardware. As a matter of fact, |
83 but we are not able to get the full 33 dBm in the low band. Following TI's | 88 it *is* possible to make an Openmoko-made GTA02 device put out the full 33 dBm |
84 practice with LoCosto, I set the highest power level target to 32.2 dBm for the | 89 in the EGSM band and the full 30 dBm in the DCS and PCS bands by setting the |
85 EGSM and GSM850 bands; for DCS and PCS the highest power level target is 30 dBm | 90 APC DAC to higher values than those used by OM's factory calibration. However, |
86 per the spec. On the low end the power level targets are the official ones | 91 a closer look reveals that those higher-than-OM's APC DAC values which produce |
87 from the GSM 05.05 spec. | 92 the full 33/30 dBm output put the PA outside of its linear range, i.e., the |
93 relation between the APC DAC control value and the resulting RF Vout no longer | |
94 has the same linearity as is maintained at the lower power levels. In our own | |
95 FreeCalypso calibration, we used to set the higher 32.2/29.2 or even the full | |
96 33/30 dBm targets for the highest power levels prior to the discovery of the | |
97 linearity issue, but our current rf3166 profile set (see below) uses the same | |
98 conversative upper-end targets as OM's original: 31.8/28.8 dBm for the highest | |
99 power level and 30.5/27.5 dBm for the next one down. | |
100 | |
101 When it comes to the lowest power levels, the empirical observation is that the | |
102 official spec bottom power levels of 5 dBm for the low bands and 0 dBm for the | |
103 high bands are perfectly attainable both on Openmoko-made units and on our own | |
104 FCDEV3B, with APC DAC values that are only a tiny bit lower than the lowest | |
105 values in OM's calibration. We currently use 70 as the lowest basis point in | |
106 the EGSM and GSM850 bands and 60 as the lowest basis point for DCS and PCS, | |
107 following the LoCosto document; we are consistently able to get 5 dBm for the | |
108 low bands or 0 dBm for the high bands within our basis range, and examination | |
109 of the piecewise Vout/LSB slopes shows that the PA appears to be happily linear | |
110 in this range. Therefore, we use the official spec numbers for the lowest | |
111 power level targets in our current rf3166 profile set, not the raised target | |
112 numbers from TI's older platforms. | |
88 | 113 |
89 Profiles for Tx levels calibration | 114 Profiles for Tx levels calibration |
90 ================================== | 115 ================================== |
91 | 116 |
92 Our fc-rfcal-txband program that performs the actual per-unit calibration of Tx | 117 Our fc-rfcal-txband program that performs the actual per-unit calibration of Tx |
93 power levels for each band requires a preconfigured txlevels calibration profile | 118 power levels for each band requires a preconfigured txlevels calibration profile |
94 for each band as one of its inputs; if you are performing calibration on | 119 for each band as one of its inputs; if you are performing calibration on |
95 individual units of a board design for which the correct profiles have already | 120 individual units of a board design for which the correct profiles have already |
96 been crafted, you simply use those given profiles (see the txlevels directory | 121 been crafted, you simply use those given profiles (rf3166 for Openmoko and |
97 in the source tree for our current offerings), but if you are doing Tx power | 122 OM-based FreeCalypso hardware), but if you are doing Tx power level calibration |
98 level calibration on a new board design for the first time, you first need to | 123 on a new board design for the first time, you first need to characterize the Tx |
99 characterize the Tx output level behaviour of your new board design and craft | 124 output level behaviour of your new board design and craft the appropriate set |
100 the appropriate set of profiles. | 125 of profiles. |
101 | 126 |
102 The profiles for txlevels calibration reside in /opt/freecalypso/rfcal/txlevels; | 127 The profiles for txlevels calibration reside in /opt/freecalypso/rfcal/txlevels; |
103 each per-band profile is sought in a file named profile_name-band_number, where | 128 each per-band profile is sought in a file named profile_name-band_number, where |
104 profile_name is the profile name argument given to fc-rfcal-txband and | 129 profile_name is the profile name argument given to fc-rfcal-txband and |
105 band_number is one of 850, 900, 1800 or 1900. For example, if you are using | 130 band_number is one of 850, 900, 1800 or 1900. For example, if you are using |
106 the rf3166-ideal profile set (appropriate for recalibrating Openmoko GTA02 | 131 the rf3166 profile set (appropriate for recalibrating Openmoko GTA02 devices |
107 devices), the individual profile config files are rf3166-ideal-900, | 132 and for factory production of new FreeCalypso devices with the same RF PA), the |
108 rf3166-ideal-1800 and rf3166-ideal-1900 for the tri900 band configuration. | 133 individual profile config files are rf3166-900, rf3166-1800 and rf3166-1900 for |
134 the tri900 band configuration. | |
109 | 135 |
110 Each profile provides two key pieces of data: the list of fixed APC DAC values | 136 Each profile provides two key pieces of data: the list of fixed APC DAC values |
111 to be used as the basis set for constructing the piecewise linear model, and | 137 to be used as the basis set for constructing the piecewise linear model, and |
112 the list of power levels in dBm that will be the targets for the calibration. | 138 the list of power levels in dBm that will be the targets for the calibration. |
113 | 139 |