This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

How to do BLE DFU without flow control(UART) using serialization application on host controller side. do you have any document or link where the procedure is explained ?

How to do BLE DFU without flow control(UART) using serialization application on host controller side. do you have any document or link where the procedure is explained ?

I have a host controller where the serialization application runs and the BLE module is flashed with the connectivity application and the soft device, NO boot loader for now. i can see some posts, when we flash the DFU boot loader on the BLE module it is possible to update the application, soft device without serialization concept (where the actual application runs on the same MCU as soft device ). how to achieve this on serialization concept is there any documentation or link.

unfortunately i dint have any pin connected in the hardware to push the module in to the boot mode. to add to it how will the BLE module indicate when a OTA is finished? please let me know the details.

Parents
  • Hi Hung,

    yes you are correct, to be on safe side my setup is explained below again.

    We are using the BEL (nRF52840) module in our project and it is connected to the host controller on UART.  we are using the nRf serialization application on the host side and using the connectivity application and softdevice S140 on the BEL (nRF52840) module. Now we want to upgrade the firmware on the BEL (nRF52840) both connectivity and soft device S140 over UART using our host controller. The host controller will get the firmware packets over the air using another protocol (each packet of 240 bytes data).

    While investigating I have found about Secure Serial DFU Bootloader Over Serial Link,

    I have gone through the below link.

    https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.3.0%2Fexamples_bootloader.html&cp=5_1_4_4

    As suggested by you, assume that we will implement a mechanism to switch in to the boot mode and implement a mechanism to indicate the finish of the OTA using the "secure_bootloader" application. I have some basic doubts, I have listed them please answer them so that we can achieve it fast.

    1. Now the basic intention is to send the firmware packets to the BEL (nRF52840) module over UART, what is the format that we must send, is there any packet format defined for the communication between the host and the BEL (nRF52840) module.
    2. I there any handshake required between the transfers or at the start of the transfer?
    3. Some where I read the init packet of the firmware package must be signed how to do that in the host controller?.
    4. It will be very useful if you could provide one host side code for the Firmware update over UART. is there any example?. The main idea is to replace the below steps defined in the above link
    5. Enter the following command to start the DFU process over the serial link, where package.zipis the name of the firmware package that you want to upload and COM_PORTis the COM port to which the device is connected:
      nrfutil dfu serial -pkg package.zip -p COM_PORT for UART transport

     

    Thanks,

    Harish

  • Hi Harish, 

    We have the documentation of the UART DFU protocol defined here: https://infocenter.nordicsemi.com/topic/sdk_nrf5_v16.0.0/lib_dfu_transport_serial.html?cp=6_1_3_5_2_3

    Please read about the bootloader and the DFU process (in the same page) as well. 

    Before you get started with implementing your own DFU master, I would suggest you to get familiar with the bootloader and have an overview on how it works. The documentation for it is here.

    I have made a blog here with step by step guide how to get started with the bootloader: https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/getting-started-with-nordics-secure-dfu-bootloader

    It's about the BLE bootloader but it's very similar process with the UART bootloader. 

    There is an example of the UART DFU master in the blog as well ( Appendix 5)

Reply Children
No Data
Related