Changing the TX power of the AT86RF215

Hi,

I am currently using a board with a AT86RF215 transceiver. I am trying to change the transmit power of the transceiver. According to the datasheet, the possible transmit power for the 2.4 GHz band appears to be between 11 dBm and 15.5 dBm [1, p. 191].

When I tried to set the transmit power to 15.5, the following happened:

2019-02-16 07:14:31,297 - INFO # > ifconfig 7 set power 15.5
2019-02-16 07:14:31,304 - INFO # success: set TX power [in dBm] on interface 7 to 15
ifconfig
2019-02-16 07:14:33,064 - INFO # > ifconfig
2019-02-16 07:14:33,073 - INFO # Iface  7  HWaddr: 01:66  Channel: 26  Page: 0  NID: 0x23  PHY: O-QPSK 
2019-02-16 07:14:33,075 - INFO #           
2019-02-16 07:14:33,080 - INFO #           Long HWaddr: 4E:49:6F:54:4F:76:01:66 
2019-02-16 07:14:33,088 - INFO #            TX-Power: 3dBm  State: IDLE  max. Retrans.: 3  CSMA Retries: 4 

A transmit power of 3 dBm is printed. It appears that the power can be set either to 0 (default), 1, 2 or 3 dBm. Now I am a little bit confused, because I don’t understand how this is related to the transmit power range listed in the datasheet. Maybe I am reading the datasheet totally wrong. Could someone help me understand this? Thank you!

[1] https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-42415-WIRELESS-AT86RF215_Datasheet.pdf

Yes the displayed transmit power is wrong, it basically just shows -31 dBm + the register value of TXPWR (as each incement is supposed to represent 1 dBm, but reality is more fuzzy).

You can go 3 steps further by disabling the power amplifier current reduction, this is basically just setting the PACUR register value (since each increment there is also supposed to boost the signal by 1 dBm).

There is no proper mapping to the ‘real’ output power in place.