LocalOscillator Functionality

The LocalOscillator (LO) seems to be used to calibrate the TX Power output of the card. More information here would be useful. :)

LocalOscillator Hardware

The LocalOscillator is controlled by two signed 8 bit values (called a LO Pair) in the range [-16,16]. The LO Pair is written to the LO Control Register (PHYRegister 0x810 for GPHYs or 0x2F for BPHYs) as a 16 bit value as shown below.





1st LO Pair Value

2nd LO Pair Value

To find the valid LO Pairs, all of the possible combinations of AttenuationControl values are tested and the valid LO Pairs are saved. The table in which the validity of each LO Pair is saved is called the TX Power LO Control array. There are 32 * 9 possible combinations, but not all are valid.

TX Power LO Control Array

The 32 * 9 possible combinations are identified using the values from the RF Attenuation List and the Baseband Attenuation List.


RF Attenuation

Baseband Attenuation

0 - 0xF

0 - 0xF

0 - 8

0x10 - 0x1F

0 - 0xF (With Flag Set)

0 - 8

These values are all initialized to 0.

Additionally, keep track of which entries in the TX Power LO Control Array are used (actually, which combinations of RF Attenuation and Baseband Attenuation are used), since unused elements can be ignored later.

Working with the LocalOscillator

Measuring the Local Oscillator

Adjusting the LocalOscillator

Exported/Archived from the wiki to HTML on 2016-10-27