Mobile or CLI utility for performing BLE OTA DFU

Hi,

I have the unfortunate task of needing to update a significant amount of inventory (several thousand units) using BLE OTA.

The devices are using the nRF52805 with nRF5 SDK v17.1.0 . I've used the nRF Connect mobile app to perform DFU before, and that process is easy, but unfortunately would take me a long time to do one by one. I'd like to develop a utility, either a script or a simple mobile app, that could at least perform these updates in larger batches (will still have to be done serially, but at least maybe I won't have to tap through the app every time). 

I'm currently considering two options:

  1. If I go the desktop script route, I was looking at using an nRF52840 dongle & the pc-ble-driver-py library.
  2. If I go the mobile app route, I was looking at using the Flutter-nRF-Connect-Device-Manager plugin.

I'm looking for any advice on how to approach this, and wondering if there are any concerns or limitations with either approach. I also want to be sure there isn't a smarter alternative path to accomplish this goal. 

Thanks in advance!

Related