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

Queries on DFU over UART flow control

Hello,

 

I am using nRF52840, SDK_16.0.0, S140 SoftDevice and Segger 4.16 for flashing the image.

 

1) While upgrading over serial interface using DFU, whether UART needs all 4 wires (Tx, Rx, RTS, CTS) with flow control or even without flow control whether we can do DFU over serial interface.

https://infocenter.nordicsemi.com/index.jsp?topic=%2Fsdk_nrf5_v16.0.0%2Fsdk_app_serial_dfu_bootloader.html&cp=6_1_4_4_4

Whether can I disable flow control ?

2) To enter into bootloader mode do we need to always press button and the reset. Similar to Buttonless DFU for Bluetooth, even if UART whether we can enter into UART without any button.

Thanks & Regards

Vishnu Beema

  • Hi Vishnu

    1. It should be possible to modify the serial bootloader to run without flow control with the modifications described in this answer. You should only have to apply the changes in the secure serial bootloader project and not modify the nrfutil code since you can set baud rate/flow control in newer versions of nrfutil.

    2. Can you explain a bit more about how you want to enter the bootloader? Are you going to have a Bluetooth connection where the connected device can tell you to go into the bootloader, like in the buttonless example, or did you have something else in mind?

    Best regards,

    Simon

  • Hi Simon,

    Thank you for your inputs.

    1) Is there a possibility to send a packet from other device to nRF over UART so that device will enter into boot mode.

    a) Though we load BLE applications, but DFU should be over serial interface as user don't want to connect device via BLE and do DFU. So, if above is not possible, then whether button press is only option to enter into DFU mode over serial interface ?

    2) Assume for non-connectable Beacons (Keep transmitting Non-Connectable Advertisement packets), in that case even with BLE button less service will not help as connection cannot be established. In this case also whether only button press will make device enter into DFU mode ?

    Thanks & Regards

    Vishnu Beema

  • Hi

    1. We don't have a buttonless example using UART DFU, but you should be able to modify it to signal the bootloader to enter DFU mode by using a UART command. You can check out this thread where my colleague explains various ways to enter bootloader mode. You can make a UART command that tells your device to do this in order to enter the bootloader.

    2. With a non-connectable device, I still think you should be able to enter DFU mode using UART for example, as UART doesn't require devices to be connected over BLE to communicate. But you will not be able to enter DFU mode over BLE like in the buttonless example if you can't connect to the device.

    Best regards,

    Simon

  • Hi Simon,

    Still do I need to disable below macro in pca10056.h. But I could not fine any usage of this macro.

    #define HWFC           true

    Thanks & Regards

    Vishnu Beema

Related