Hello fellow bit jugglers!
We are developing an application for a nRF52805 on a nRF52-DK board, using NCS.
NCS version: 1.7.1
Zephyr version: 2.6.99-ncs1-1 (commit 18e072b03270436fcd58312217fa8f362abb5ccd)
BLE controller: Zephyr
IDE: SEGGER studio
OS: Windows 8
The problem we face is that we can't get dynamic TX power (TX power in dBm selectable during runtime) running under the following conditions:
- use the Zepyhr controller, not the standard Nordic controller (we need to use the Zepyhr controller due to RAM shortage)
- use extended advertising (also a given for our application)
We noted this behaviour in our application, but to demonstrate it with a minimal reproducable example, I modified the sample bluetooth/hci_pwr_ctrl.
The only changes we made to the example were:
- use the Zepyhr controller
- use extended advertising
The exact changes are attached. (Final files + git patch)
The problem we face is that the extended message appears in the nRF connect app, but the RSSI value does not change significantly (around -46 dBm).
When I change the controller back to Nordic controller (by removing CONFIG_BT_LL_SW_SPLIT=y), the RSSI value steadily decreases, as expected.
I guess the problem must be somewhere inside the Zepyhr controller, but I was not able to trace the calls through the various layers there (Ticker, Mayfly, lll, ...)
Any idea?
Cheers
Pat