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

Extremely slow DFU over UART

We try to implement DFU over UART. The Mesh DFU example has been taken as a reference.
DFU is successful, but it takes about 1 hour (sic!) to transfer DFU ZIP package of size 123 KB.
Why is it so slow? How to make it normal speed?

[Mesh SDK 2.1.1, Nrf SDK 15.0, S140 6.1; 115200 bps, HWFC]

Parents Reply
  • Hi Igor, 

    The device connected to the pc will start forwarding the image to rest of the mesh network from the first packet received over the serial interface. It does not receive the entire image and then starts to forward the image piece by piece.

    So as I understand, the serial interface will work with very low values, but the mesh network will get saturated and many devices on the network will miss DFU packets if the --i value is set to low.

    The recommendation of 200 ms is from the point of view of the network and not the single device. DFU is slow because it uses a trickle algorithm to ensure that everyone gets the packet. 

    Best regards

    Bjørn

Children
Related