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

Some problems about DFU via UART

Hello,

A problem occurs when i run the DFU over UART on my board.My bootloader project references to nRF51_SDK_9.0.0_2e23562\examples\dfu\bootloader\pca10028\dual_bank_serial_s110

Here is my steps:

1、Configure TX、RX pins;Modify the UART mode to FLOW_CONTROL_DISABLED;Now I can send and receive datas;

2、Erase my board ,then download the SOFTDEVICE from nRF51_SDK_9.0.0_2e23562\components\softdevice\s110\hex;

3、Compile my bootloader project then download.

4、Download the app hex file;

when I download the app hex file,here comes the problem.

image description

Then I try to catch the data ,and found I can sent the ack of the start packet,but the ack of the first block of Application image is missing,and it turns into another invalid ack :0XFC.

image description

Now I do not know how to solve this problem.Can anyone help me?

Regards, DW.

Parents
  • There are some timing considerations that must be taken in to account on the host side when using the serial bootloader. I suggest that you take a look at this python script from pc-nrfutil, which is used to perform serial DFU. Around line 60 you'll see several the definitions of several delays, e.g. how long you should wait before sending more data over the UART after you have sent the start packet.

    Best regards

    Bjørn

Reply
  • There are some timing considerations that must be taken in to account on the host side when using the serial bootloader. I suggest that you take a look at this python script from pc-nrfutil, which is used to perform serial DFU. Around line 60 you'll see several the definitions of several delays, e.g. how long you should wait before sending more data over the UART after you have sent the start packet.

    Best regards

    Bjørn

Children
Related