There are three values that can be controlled on B/G PHYs:

  1. Baseband Attenuation
  2. Radio Attenuation
  3. TXCTL (only present on 2050 radios)

Implicitly, these values control the transmission power. They attenuate the power output from the chip. See RecalculateTransmissionPower.

Baseband Attenuation

This value can be in the range [0,11] and on Revision 0 PHYs is found in the lower 4 bits of MMIO offset 0x3E6, on Revision 1 PHYs in bits 3-6 of PHYRegister 0x60 and on other PHYs in bits 2-5 of PHY Register 0x60. If this is a 2050 Radio with a Radio Revision less than 6, the default Baseband Attenuation value is 0, otherwise it's 2.

Radio Attenuation

Can be in the range [0,9] for radios with revision < 6, and in range [0,31] for revisions >= 6 and is in RadioRegister 0x43 and SHM offset 0x64. Default value depends on the model, see DefaultRadioAttenuation for details.


Is only used in 2050 Radios. It is in the range of [0,7] and is located in RadioRegister 0x52, in bits 4-6. The default value is 3 for Radio Revision 1, 2 for Radio Revisions < 6, 1 for Radio Revision 8 and 0 for all others.

[Note: for people reading this who know the wl tool, txctl1 is actually shifted up by 4 in that tool]


It is in the range of [0,15] and is located in bits 0-3 of RadioRegister 0x52.

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