Hi,
I was trying to change the transmit power of the CC2541 by the HCI_EXT_SetMaxDTMTxPower command to the possible values of 0dBm, -6dBm and -23dBm but could not see any difference on the spectrum analyser. The chip always transmitted with 0dBm. I am using the hostTestRelease project of BleStack V1.2 together with a msp430.
As I read on the forum there is also a problem with the SetTxPower command I haven't tested yet. So these two bugs might be connected.
Any progress with this topic? Is there a workaround known beside using SmartRfStudio?
Kind regards,
Matthias Jauss
Hi Matthias,
Could you tell me more about you test setup in terms of hardware platforms and software?
The SetTxPower bug (using HCI_EXT_SetTxPowerCmd) you are referring to was fixed in BLE1.1b.
We have posted a wiki page on how to use DTM/PTM, found at http://processors.wiki.ti.com/index.php/PTM where you could find more information.
Br
Matthias,
Make sure that you send the correct Command from the MSP,
Ex. for -23dBm: 01 11 FC 01 00
Then make sure that you get correct Event back
Ex. for -23dBm: 04 FF 05 11 04 00 11 FC
Hi Nick,
we use the CC2541F256 on our testboard, not the EVM in this test. I flashed this hex file "CC2541_SmartRF_HostTestRelease_All.hex" and communicate with the CC2541 over the uart interface by HCI commands. Our test is very simple, we send the command HCI_EXT_ModemTestTxCmd and after we get the success event from the stack we send the HCI_EXT_SetMaxDTMTxPowerCmd to change the tx power. This command is acknowlegded by the stack successfully but shows no effect. When we measure the tx power on the spectrum analyser it is always 0dBm.
Is it possible to use the HCI_EXT_SetTxPowerCmd instead? In my opinion this won't affect the tx power in DTM mode, or am I wrong?
Are we sending the commands in the wrong order?
Kind regards
I just checked the communication with a logic analyser. I send the same command and receive the same event after about 18 ms, but still no difference in the tx power.
Do you experience the same thing with HCI_EXT_SetTxPowerCmd?
I made some tests and got the following results.
Started advertising and reduced the tx power by the HCI_EXT_SetTxPower to -6dBm reduced the RSSI level in the sniffer by 6dBm. So this is working!
Started a modem tx test by HCI_EXT_ModemTestTx and got the full 0dBm tx power. Then I tried to reduce the tx power with the HCI_EXT_SetTxPower command to -6dBm and could see a reduction of the tx power. Unfortunatelly I have no access to the spectrum analyser to measure the correct tx power. But the test shows it is possible to reduce the tx power in DTM mode.
So only the SetMaxDTMTxPower is not working.
It's good that it works for you.
Matthias JaussSo only the SetMaxDTMTxPower is not working.
I did some digging and it I found out that the SetMaxDTMTxPower command only applies to the DTM command HCI_LE_TransmitterTestCmd. Further, the Core spec states that when using SetMaxDTMTxPower, the controller should set the Tx power to maximum level. The problem is that the meaning of “maximum level” is debatable- e.g. the CC2540 chip max Tx power level is +4dBm, but a customer’s application may only ever go up to 0dBm. By having the SetMaxDTMTxPower you can set the DTM maximum Tx power level to be less than the chip max power level.
thank you for clearing up the behaviour of SetMAXDTMTxPower. So I missunderstood its behaviour and used the wrong command together with the ModemTestTx command. Could this fact be mentioned in the TI BLE HCI Vendor Specific HCI Guide to prevent further complications?
Best regards,