Issue with nRF Connect and DFU service support for BT4 and BLE 5

Hello Nordic Semiconductor Support Team,

We are trying to update application using DFU. We use bootloader, BLE 5 long range coded phy. DFU is not successful, please find the details of the log message in the attachment. we are using nRF Connect version 4.27.1, Nordic SDK version 16, and soft device 140.

Could you please provide guidance on how to resolve this issue or if there are any updates or workarounds available for nRF Connect that support DFU service for BLE 5?

Thank you for your assistance.

Best regards,

Shreya

Parents
  • Hi Shreya, 

    What I can see in the log is that after nRF Connect app send the command to switch the device to bootloader mode, it's failed to reconnect or having trouble when sending write command after connected to the bootloader. 

    Do you have the issue if you do 1Mbps PHY in your application? 
    Did you modify the bootloader to use CODED PHY or the bootloader still do 1Mbps PHY ?
    Could you try to switch the application to bootloader manually (write 0x01 to the Buttonless characteristic after enable Indication). The bootloader will start advertising as DFUTarg and then you can connect to the bootloader from the phone and do DFU update. 

    Please try capture a sniffer trace when the bootloader is connected to the phone. 

  • Hi Hung Bui,

    Do you have the issue if you do 1Mbps PHY in your application? :
    Our application works ok for 1Mbps. Sorry didn't get your question, can you give more details about the question.

    Did you modify the bootloader to use CODED PHY or the bootloader still do 1Mbps PHY ?
    We have modified the bootloader to advertise in BLE 5 coded PHY

    try capture a sniffer trace when the bootloader is connected to the phone:
    I have used the USB where the debugger is connected, getting erorr -> nRF Sniffer extcap pipe gives error FIFO does not exist. I checked if the com port exists and it generates some data, and it does do something. I checked by using USB port near to reset button. but then nrfSniffer interface was not visible. 

    Could you please suggest how to proceed?!.

    Thank you

  • Hi,

    Please check sdk_config.h for

    NRF_SDH_BLE_SERVICE_CHANGED 1 

    PM_SERVICE_CHANGED_ENABLED 1

    checked, both are enabled in sdk_config.h. can you suggest what need be done?


    I have attached the sniffed trace. which contain data during advertising, connect, trying to DFU then disconnect.

    sniffed data during dfu initiation.pcapng

  • Hi Shreya, 

    I don't see any issue with the trace. 
    Most likely it's the app that doesn't support scanning in extended advertising CODED PHY when doing automatically reconnect. I will have to check with the team to see if this supported. 

    I would assume you can instruct the end customer to do 2 steps DFU , first is to switch to bootloader and second is to manually connect to the bootloader. 

    Do you plan to make your own app for DFU and for your application ? If it's the case, you can implement a 2 steps DFU so that it's transparent to the end customer. 

  • Hi Hung Bui,

    Actually it is taking time to do DFU from our app. it would be helpful if it is supported in nrf connect.

    Thank you,

    Shreya

  • Hi Shreya, 
    Have you tried the nRF DFU app, maybe it doesn't have the same problem ? 

    Could you show how you modified the bootloader to do CODED PHY advertising ? 
    Have you made sure you don't change the address of the bootloader ? There is a mechanism in the bootloader so that it will be either the same address as the application or increase the application address by 1. 
    Also another question is that wouldn't it be better with non-CODED PHY when doing DFU ? CODED PHY has much lower throughput compare to 1 or 2MBps and the end user quite often is close to the device when doing DFU. 

  • Hi Hung Bui,

    I have tried doing DFU with nRF DFU app, even it has same problem. I have attached screenshot for your reference. currently we are updating the firmware by entering into bootloader manually. but only some mobile phones support this feature. 

    Thanks for the support.
    Shreya

Reply Children
Related