We run Apple Nearby Interaction on DWM3001C (nRF52833 + DW3110, DW3_QM33_SDK 1.1.1, QANI, S113) with several phones connected at the same time. As reported in topic 25999, BLE advertising during a UWB session makes the FiRa session silently stop scheduling rounds. We have a working recovery (restart the MAC), but we are now choosing the hardware for our next board and would like to avoid the problem by design.
One idea is nRF5340 (certified module) + DWM3000 module: the BLE controller runs on the network core, so advertising and connection events should no longer preempt the application core where the UWB stack runs.
I found a few earlier posts here from people who got NI ranging working on nRF5340 (custom board + Zephyr in 2023, and nRF5340DK + DWM3000EVB with NCS v3.3.0 this year), so I know it is possible. My questions:
-
Has anyone run long NI / FiRa sessions on nRF5340 + DW3xxx with BLE advertising active? Did you ever see the session silently stop (no SESSION_STATUS_NTF, ranging count frozen)? Even āran for days, never saw itā would be very valuable.
-
For Qorvo: DW3_QM33_SDK 1.1.1 ships Cortex-M33 builds of uwbstack and libniq. Which platform are they intended for? Is nRF5340 (app core) a reasonable / tested target for them, or should we use the M4 builds as earlier posts did?
-
Practical effort: for those who ported to NCS / Zephyr - roughly how much of the OS abstraction (threads, timers, power management) did you have to write yourself? Is the BLE side (NI accessory protocol glue, like ble_niq.c) straightforward on the Zephyr Bluetooth host?
-
Timing on the app core: on nRF5340, is anything still able to delay the UWB stack at the wrong moment (IPC with the network core, flash operations, etc.)? Any recommended interrupt priority or thread priority setup?
-
Calibration: DWM3000 has no per-unit antenna delay in OTP (unlike DWM3001C, as far as I understand). Is that correct, and is a per-unit calibration required to get the same accuracy as DWM3001C?
We are deciding between staying on DWM3001C (with the recovery workaround) and moving to nRF5340 + DWM3000, so any experience is appreciated. Thanks!