FreeCalypso > hg > fc-rfcal-tools
annotate doc/Tx-cal-theory @ 119:8054c1967c32
txlevels: OM-like profile set named just rf3166
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Wed, 14 Feb 2018 02:18:20 +0000 |
parents | 7bcbbba94c41 |
children | 32bf19fb8a2a |
rev | line source |
---|---|
66
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 The Tx power levels put out by a GSM mobile station are subject to strict |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 specifications, and on the Calypso+Iota+Rita chipset they are produced by |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 writing different values into the APC DAC register. But what value should be |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 written into the APC DAC in order to produce a given Tx power level in dBm? |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 The answer varies from one produced device unit to the next, and even more from |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 one board design to the next, hence these APC values need to be calibrated. |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 The general procedure for calibrating Tx power levels is described in both Sara |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 and LoCosto calibration documents (see TI-docs), but the LoCosto document adds |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 one crucial detail which the Sara one fails to describe. The instructions given |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 in the Sara document appear to be perfectly intuitive at first: go through all |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 power levels in turn (PL numbers 5-19 for EGSM and GSM850 or 0-15 for DCS and |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 PCS), and for each power level command the DUT to transmit at that level, |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 measure the actual Tx output power with the CMU200 or other RF test equipment, |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 and adjust the APC DAC value up or down to make the output power match the spec. |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 The problem is with the very last part: the output power you get with the |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 compiled-in APC DAC value is one number, the spec-defined target power is a |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 different number, exactly how do you adjust the APC DAC value to hit the target |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 power level? |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 The LoCosto document gives the answer which was not at all obvious to me at |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 first. I draw the reader's attention to section A.3.1 on page 43 of that |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 document. The trick is as follows: the relation between the APC DAC value and |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 the resulting Tx output power (or rather the equivalent in terms of voltage) is |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 modeled as a piecewise linear function, and this piecewise linear function is |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 constructed from a preliminary set of output power measurements with a fixed |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 set of APC DAC values. |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 We also have a strong piece of evidence that the Tx power level calibration |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 procedure performed by Openmoko at their factory was based on the same principle |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 as the LoCosto document version. If you look at the /gsm/rf/tx/levels.900 table |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 in Om-calibrated GTA02 units and compare it against the firmware's compiled-in |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 version, you will see that the APC DAC values for power levels 5-19 have been |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 replaced with calibrated ones as expected, but there is also this oddity: the |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 APC DAC value for power level 0 (not a valid number for this band) has been |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 replaced with 600. Always 600, a perfect round number, on every unit. |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 Having understood the calibration method described in the LoCosto document, the |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 mystery of this fixed number 600 becomes clear: the calibration program |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 establishes the basis for the calibration by temporarily overwriting the APC DAC |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 value in the power level 0 slot with a series of fixed values, 600 being the |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 last of them. It constructs the piecewise linear model for the APC from power |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 measurements made with these fixed DAC values, and uses this model to compute |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 the DAC value for each target power level. The latter DAC values are then |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 written into Tx levels table slots 5-19 for EGSM and GSM850, or 0-15 for DCS |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 and PCS. In the case of DCS and PCS no visible artifacts remain from the |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 calibration basis run (because slot 0 is a valid power level for these bands), |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 but an artifact remains in the levels.900 table in the unused slot 0. |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 |
98
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
51 Target power level numbers |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
52 ========================== |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
53 |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
54 Ideally the power level numbers to be used as the targets for the calibration |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
55 process would be the levels given in the GSM 05.05 spec: from 33 dBm down to |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
56 5 dBm for the EGSM and GSM850 bands or from 30 dBm down to 0 dBm for DCS and |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
57 PCS, in 2 dBm steps in each case. However, the evidence from TI's calibration |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
58 documents (both Sara and LoCosto) is that some devices are not able to produce |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
59 the very highest and sometimes the very lowest power levels given in the spec, |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
60 and getting a successful calibration requires setting the calibration targets |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
61 to slightly shifted numbers, although still within the tolerances allowed by |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
62 the GSM 05.05 spec. The table in TI's Sara calibration document (page 26) has |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
63 the highest power level reduced by 1.2 relative to the spec, the next highest |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
64 by 0.5, whereas the lowest 4 (EGSM) or 6 (DCS) levels are raised and compacted |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
65 together. The table in the LoCosto document (page 44) has the highest power |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
66 level for each band reduced by 0.8, making it 32.2 dBm for EGSM and GSM850 and |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
67 29.2 dBm for DCS and PCS, while all other levels are set to the spec numbers. |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
68 |
111
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
69 The calibration that was performed by Openmoko's factory (FIC?) on their GTA02 |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
70 units is similar to what the old Sara document calls for: the highest power |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
71 level is set to 31.8 dBm for EGSM or GSM850 and to 28.8 dBm for DCS and PCS, |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
72 the next one down is 30.5/27.5 dBm instead of 05.05-spec-given 31/28 dBm, and |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
73 for the lowest 4 (EGSM or GSM850) or 6 (DCS and PCS) power levels the decrement |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
74 between levels is 1.5 instead of 2, putting the lowest EGSM or GSM850 power |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
75 level at 7 dBm instead of 5 dBm, and the lowest DCS and PCS power levels at |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
76 3 dBm instead of 0 dBm. |
98
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
77 |
111
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
78 It appears that OM/FIC were using some TI-provided calibration software without |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
79 taking the time and effort to tune its settings for their own hardware: when we |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
80 recalibrate these OM-made devices in our own lab, we are able to hit all of the |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
81 highest and lowest power levels given in the GSM 05.05 spec. On our own FCDEV3B |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
82 hardware we are likewise able to get the full 30 dBm in the DCS and PCS bands, |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
83 but we are not able to get the full 33 dBm in the low band. Following TI's |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
84 practice with LoCosto, I set the highest power level target to 32.2 dBm for the |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
85 EGSM and GSM850 bands; for DCS and PCS the highest power level target is 30 dBm |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
86 per the spec. On the low end the power level targets are the official ones |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
87 from the GSM 05.05 spec. |
103
16aab86384a7
doc/Tx-cal-theory: update regarding our current FCDEV3B calibration
Mychaela Falconia <falcon@freecalypso.org>
parents:
98
diff
changeset
|
88 |
98
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
89 Profiles for Tx levels calibration |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
90 ================================== |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
91 |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
92 Our fc-rfcal-txband program that performs the actual per-unit calibration of Tx |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
93 power levels for each band requires a preconfigured txlevels calibration profile |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
94 for each band as one of its inputs; if you are performing calibration on |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
95 individual units of a board design for which the correct profiles have already |
111
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
96 been crafted, you simply use those given profiles (see the txlevels directory |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
97 in the source tree for our current offerings), but if you are doing Tx power |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
98 level calibration on a new board design for the first time, you first need to |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
99 characterize the Tx output level behaviour of your new board design and craft |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
100 the appropriate set of profiles. |
66
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
101 |
98
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
102 The profiles for txlevels calibration reside in /opt/freecalypso/rfcal/txlevels; |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
103 each per-band profile is sought in a file named profile_name-band_number, where |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
104 profile_name is the profile name argument given to fc-rfcal-txband and |
111
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
105 band_number is one of 850, 900, 1800 or 1900. For example, if you are using |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
106 the rf3166-ideal profile set (appropriate for recalibrating Openmoko GTA02 |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
107 devices), the individual profile config files are rf3166-ideal-900, |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
108 rf3166-ideal-1800 and rf3166-ideal-1900 for the tri900 band configuration. |
98
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
109 |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
110 Each profile provides two key pieces of data: the list of fixed APC DAC values |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
111 to be used as the basis set for constructing the piecewise linear model, and |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
112 the list of power levels in dBm that will be the targets for the calibration. |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
113 |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
114 Crafting the txlevels calibration profiles for a new board design |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
115 ================================================================= |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
116 |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
117 If you are working with a new (or new-to-you) board design with no previous Tx |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
118 levels calibration experience, you need to begin by characterizing its Tx |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
119 output level behaviour so you can determine what APC values are appropriate for |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
120 the basis set, whether or not you need to shift the highest and/or lowest |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
121 target levels from their nominal spec values, and if some target shifting is |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
122 needed, which levels need to be shifted and by how much. |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
123 |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
124 The tool you will need for this investigation is fc-rfcal-txbasis. It requires |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
125 fc-cmu200d and rvinterf to be running, talking to the CMU200 and to the DUT, |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
126 respectively, and it takes the band number (850/900/1800/1900) and a set of |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
127 APC DAC values on the command line; no pre-existing txlevels profile is needed. |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
128 It commands the DUT to transmit at each of the specified APC DAC values in turn |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
129 and reports the power output levels measured by the CMU200. |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
130 |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
131 VERY IMPORTANT: You need to be very sure that your CMU200 or other measuring |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
132 instrument is itself in good calibration standing, i.e., that the measurements |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
133 it reports are trustworthy, and that the insertion loss in your cabling setup |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
134 (all the way from the actual DUT's antenna connector or RF test port to your |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
135 CMU200) really matches the numbers you have put in your cable configuration file |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
136 (see Cable-config-howto). If you fail to ensure these prerequisites, your |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
137 fc-rfcal-txbasis observations will be meaningless, as the cable insertion losses |
111
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
138 and instrument errors are typically of the same order of magnitude as the |
7bcbbba94c41
doc/Tx-cal-theory: update with properly calibrated CMU200 and cabling setup
Mychaela Falconia <falcon@freecalypso.org>
parents:
103
diff
changeset
|
139 transmitter differences you are trying to determine. |
98
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
140 |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
141 You will need to run fc-rfcal-txbasis with a guesstimated set of APC DAC values, |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
142 to be revised iteratively, and get a feel for what your DUT is putting out. |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
143 Are you able to hit the lowest spec power level consistently while the APC DAC |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
144 value remains well above zero? Are you able to hit the highest spec power level |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
145 as well, or does the measured power output fall short of this target no matter |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
146 how high you crank the APC DAC? These observations will tell you whether or not |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
147 you need to shift the highest and/or lowest target power levels in your new |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
148 txlevels calibration profile. |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
149 |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
150 Regular calibration runs |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
151 ======================== |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
152 |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
153 Once you have a good set of profiles for the type of Calypso GSM device you are |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
154 calibrating, just run fc-rfcal-txband with the band number and the name of your |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
155 profile. |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
156 |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
157 Checking existing calibration |
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
158 ============================= |
66
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
159 |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
160 fc-rfcal-txcheck is a completely non-invasive program (does not make any writes |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
161 to any L1 RF tables or to FFS) that steps through all power levels for the |
8e675142cca7
doc/Tx-cal-theory written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
162 specified band (5-19 for EGSM or GSM850, or 0-15 for DCS or PCS), performs a |
98
615df2fb1ec3
doc/Tx-cal-theory: update with both theory and practice
Mychaela Falconia <falcon@freecalypso.org>
parents:
66
diff
changeset
|
163 power measurement at each level, and displays the measured result. |