I'm working on a project, in which we are using PSoC 63 built-in BLE radio in a "BLE controller only (HCI over UART)" mode. Is there a way we could control chip TX output power in this mode?
When I try to use Cy_BLE_SetTxPowerLevel() function I get "undefined reference to `Cy_BLE_SetTxPowerLevel'" link error.
Solved! Go to Solution.
I have a set of follow-up questions.
What exactly 'channel ID' in this command refer to? Physical channel, L2CAP CID or LE physical channels (as in point 3.2.3 of BT Spec V5.0, Vol 1 Part A) ?
How channel ID relates to the connection handle field in the command? Do I have to use both arguments to set power level (my understanding is, that connection handle already identifies uniquely a particular connection)? What in the case of advertising channels/packets?
Is there a way to set 'default' power level to be used for all, current or future connections?
How sending of this command relates to the TX power adaptation procedure specified for the BT Link Manager layer?
- The channel ID refers to the channel group ID. It is 0x00 for ADV channel and 0x01 for connection channels.
- Connection handle is applicable if the channel ID is connection channel type. For Adv and DTM, it is ignored.
- We cannot set 'default' power level to be used for all, current or future connections.
- HCI_VENDOR_SET_TX_PWR is a vendor command. So, it is not related to the BT power control procedure.