后台是DFU

Hello, my current project needs to use back-desktop DFU. I will query related resources and back-end DFU. Found only in the devzone.nordicsemi.com/.../background-dfu-application-source-code about the background DFU corresponds with my needs, But this backbench DFU example project is based on ses, my project SDK is developed in keil, now want to test SES DFU example is working, but when I test the example project nRF_SDK_15.3.0_background_dfu.zip, nrf52840 received the data from the serial port, but it failed to send. What is the reason?

Hello, my current project needs to use back-desktop DFU. I will query related resources and back-end DFU. Found only in the devzone.nordicsemi.com/.../background-dfu-application-source-code about the background DFU corresponds with my needs, But this backbench DFU example project is based on ses, my project SDK is developed in keil, now want to test SES DFU example is working, but when I test the example project nRF_SDK_15.3.0_background_dfu.zip, nrf52840 received the data from the serial port, but it failed to send. What is the reason?
Parents Reply Children
  • No, it is just that it has only been tested with HW flow control enabled. Since you keep getting UART com. errors even after lowering the baudrate and enabling packet receipt notification for every packet, I'm afraid you have to make larger changes to the UART transport to be achieve reliable reception. For instance, you may consider changing the implementation to using the Libuarte - advanced  UARTE driver. This will allow you to utilize larger DMA buffers.

  • Hello, Vidar Berg,thank you for taking the time to reply. I have been studying nrfutil recently and have changed the serial port channel to TCP because my ultimate goal is to be able to OTA (Over-The-Air) update 52840 products in different places in large batches through a remote server. The main purpose of the background DFU is not to modify the bootloader. Of course, I have been trying but failed. However, it is possible to use non-background DFU (after all, it works). Regarding your suggestion of changing uart to uarte, I will try to modify it to provide a larger buffer.

Related