nrf5340 net core Konfig
CONFIG_BT_EXT_ADV=y CONFIG_BT_PER_ADV=y CONFIG_BT_PER_ADV_RSP=y CONFIG_BT_PER_ADV_SYNC=y CONFIG_BT_PER_ADV_SYNC_RSP=y #CONFIG_BT_CTLR_ADV_EXT=y CONFIG_BT_PER_ADV_SYNC_BUF_SIZE=247 CONFIG_BT_PER_ADV_SYNC_TRANSFER_SENDER=y CONFIG_BT_PER_ADV_SYNC_TRANSFER_RECEIVER=y CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL=y CONFIG_BT_CTLR_TX_PWR_ANTENNA=3
nrf5340 main.c code below, I changed options
static const struct bt_le_per_adv_param per_adv_params = {
.interval_min = 0x0190,
.interval_max = 0x0190,
// .options = 0,
.options = BT_LE_ADV_OPT_EXT_ADV | BT_LE_ADV_OPT_USE_TX_POWER,
.num_subevents = NUM_SUBEVENTS,
.subevent_interval = 0x30,
.response_slot_delay = 0x05,
.response_slot_spacing = 0x05,
.num_response_slots = NUM_RSP_SLOTS,
};
nrf54l15 main.c is below
static void recv_cb(struct bt_le_per_adv_sync *sync,
const struct bt_le_per_adv_sync_recv_info *info, struct net_buf_simple *buf)
{
int err;
/* info->tx_power = AP(dBm) */
printk("recv_cb -> PAwR rx: rssi=%d dBm, ap_tx=%d dBm\n", info->rssi, info->tx_power);
.
.
.
.
.
.
}
I add the tx power print in PAwR recv_cb function.
Below is 54l15 RTT comments, ap_tx is always print 127dBm
00> Indication: subevent 1, responding in slot 0 00> LED blue is now OFF 00> 0xFF: 59000012 00> recv_cb -> PAwR rx: rssi=-39 dBm, ap_tx=127 dBm 00> Indication: subevent 1, responding in slot 0 00> LED blue is now OFF 00> 0xFF: 59000014 00> recv_cb -> PAwR rx: rssi=-38 dBm, ap_tx=127 dBm 00> Indication: subevent 1, responding in slot 0 00> LED blue is now OFF 00> 0xFF: 59000016 00> recv_cb -> PAwR rx: rssi=-38 dBm, ap_tx=127 dBm 00> Indication: subevent 1, responding in slot 0 00> LED blue is now OFF 00> 0xFF: 59000018 00> recv_cb -> PAwR rx: rssi=-40 dBm, ap_tx=127 dBm 00> Indication: subevent 1, responding in slot 0 00> LED blue is now OFF 00> 0xFF: 5900001A 00> recv_cb -> PAwR rx: rssi=-40 dBm, ap_tx=127 dBm 00> Indication: subevent 1, responding in slot 0
So, my questions are
1. How to adjust TX power of PAwR on AP end? I hope it can be dynamically adjusted based on rssi value
2. Why can't nrf54l15 read the tx power value during PAwR process? How?
Besides, I am using NCS 3.1 and PAwR samples copy from SDK