Issue with nRF DFU App (v2.7.0) on Android 11 and 14: DFU Update Fails Due to Missing Location Permission?

Hi All

I am experiencing an issue with the nRF DFU app (v2.7.0) on devices running both Android 11 and Android 14. The issue occurs when I attempt to perform a DFU update via Bluetooth LE.

- Upon starting the BLE scan in nRF DFU, I see the message: "The app needs to scan and connect to Bluetooth LE devices." I grant the required permissions, and the scan begins successfully.
- However, when initiating the DFU update, the process starts but fails almost immediately without transferring the firmware.
- When I perform the same DFU update using nRF Connect, the process works correctly. In nRF Connect, the app explicitly requests Location permissions, and the DFU update completes successfully without any issues.
It seems that the nRF DFU app does not request the necessary Location permissions, which may be causing the BLE operations to fail during the DFU process.

I tried the following:
- Verified that the Nearby Devices permission is granted, but there is no option to enable Location permissions in the app settings for nRF DFU.

- Uninstalled and reinstalled the app, then restarted the phone, but the issue persists.

- Tested the app on both Android 11 and Android 14, with the same problematic result.

- Reverted to nRF DFU v2.4.0, which works correctly. The issue seems to have been introduced in later versions.

- The DFU update works correctly when performed via nRF Connect, indicating that the issue is specific to the nRF DFU app.

- In nRF Connect, the app requests Location permissions, which may be the key difference leading to the success of the DFU update.

Any hints to solve the issue?

Thanks in advance for your support.

Kind regards,

Cristian

Parents
  • Hello,

    The nRF DFU mobile app is not recommended to use in the nRF Connect SDK; this mobile application is only fit for updating the nRF5 SDK-based application, which uses secure bootloader.

    Are you working with the old SDK? If so, please let me know. If not, I recommend you use the nRF Connect mobile application or the nRF device manager app for doing a DFU.

    Kind Regards,

    Abhijith

  • Hi Abhijith

    Thank you for your response.


    The current project was developed on SDK 17.0.2. No problems with using the nRF Connect mobile application to perform a DFU.


    However, we have at some customers, some products developed on the outdated SDK 8, where there was no secure bootloader.

    Do you see any contraindications to having them use the latest version of the nRF Connect mobile application?

    Thanks and kind regards

    Cristian

  • Hello,

    Are there any error messages or logs indicating the issue? How did you conclude that location access is causing trouble with DFU? I'm not sure what might be causing the issue, I mostly need to ask this internally.

    cristian.anceschi said:
    Do you see any contraindications to having them use the latest version of the nRF Connect mobile application?

    AFAIK, using nRF connect mbile application should be fine, See here.

    Kind Regards,

    Abhijith

Reply
  • Hello,

    Are there any error messages or logs indicating the issue? How did you conclude that location access is causing trouble with DFU? I'm not sure what might be causing the issue, I mostly need to ask this internally.

    cristian.anceschi said:
    Do you see any contraindications to having them use the latest version of the nRF Connect mobile application?

    AFAIK, using nRF connect mbile application should be fine, See here.

    Kind Regards,

    Abhijith

Children
  • Hi

    In the nRF DFU app, rel. 2.07, there are no explicit error messages related to the lack of location access. Once the DFU process is started, the update procedure either gets stuck, causing the app to freeze, or it shows a generic error message and the device being updated resets.

    The conclusion, possibly incorrect, comes from a comparison between versions 2.07 and 2.04. During installation, version 2.04 requests permission to access the mobile device’s location. Once this permission is granted, the app functions normally, and the DFU operation completes successfully. However, if you go to the settings of the nRF DFU app and deny location access, version 2.04 exhibits the same faulty behavior as version 2.07, meaning the DFU process can no longer be completed.

    That said, there is no issue on our end with switching to the nRF Connect app instead of using the nRF DFU app.

    Thanks and kind regards

    Cristian

Related