Thank you very much for your reply.
Let’s discuss the feature of multi-sessions in the Qorvo SDK in more detail.
After the first iPhone establishes a BLE connection with 52833, the iPhone will send two BLE commands to the device sequentially: an init command and a configure_and_start command, as shown below.
Upon receiving the configure_and_start command, the SDK will execute the niq_configure_and_start_uwb() function as shown below.
However, there is no source code in this function.
Based on this, after the first session started with the first iPhone, another iPhone can establish BLE connection with this 52833. The second iPhone will also send these two BLE commands and upon receiving the second ble command, sdk will execute niq_configure_and_start_uwb() again, then problem occurs.
Based on my actual testing, after 52833 establishes a BLE connection with the second iPhone, it receives two BLE commands from the second iPhone, and then executes niq_configure_and_start_uwb(), after which the distance measurement freezes.
Therefore, based on current testing, the SDK does not support multiple sessions running concurrently.
Let’s look at another part.
After the SDK receives the two BLE commands from iPhone, it executes niq_configure_and_start_uwb() function, since I can’t see the source code, I’m guessing that it should further execute fira_start_niq() function as shown below:
This function has three parts: app_process_init(), uwbmac_start() and start_session(), and based on this code, it’s reasonable to guess that the SDK doesn’t support multiple sessions running concurrently, because uwbmac_start() obviously shouldn’t be executed every time a new session is started.
These are my tests and questions. In summary, the current SDK v1.1.1 QANI project likely doesn’t support multiple sessions running concurrently for three reasons:
- None of the SDK’s documentation mentions support for multiple sessions running concurrently.
- The current code structure doesn’t seem to support multiple sessions running concurrently.
- In actual testing, one DWM3001CDK (nRF52833) cannot measure distances with two iPhones concurrently.
So, please confirm this. Thank you very much.