DFU method of nrf5340

Hi,

In our custom board, currently we using SWD with segger J-link for DFU

Is there any another option except segger/dev-kit ?

Can we do DFU through USB/UART ?

  • Hello,

    Yes, you can DFU the nRF5340 via UART or USB. However, before doing so, you need to flash the bootloader that supports DFU via UART or USB. Please refer to the bootloader and DFU section in the Developer Academy course. This tutorial explains how to update the application to support UART/USB DFU.

    Kind Regards,

    Abhijith

  • On our previous conversations regarding the Device Firmware Update (DFU), as per courses we have able to do DFU over WIFi but still unclear about the partition and image size.

    Our partition as in DTS is given below

                    flash0: flash@0 {
                        compatible = "soc-nv-flash";
                        erase-block-size = < 0x1000 >;
                        write-block-size = < 0x4 >;
                        reg = < 0x0 0x100000 >;
                        partitions {
                            compatible = "fixed-partitions";
                            #address-cells = < 0x1 >;
                            #size-cells = < 0x1 >;
                            boot_partition: partition@0 {
                                label = "mcuboot";
                                reg = < 0x0 0x10000 >;
                            };
                            slot0_partition: partition@10000 {
                                label = "image-0";
                                reg = < 0x10000 0x40000 >;
                            };
                            slot0_ns_partition: partition@50000 {
                                label = "image-0-nonsecure";
                                reg = < 0x50000 0x30000 >;
                            };
                            slot1_partition: partition@80000 {
                                label = "image-1";
                                reg = < 0x80000 0x40000 >;
                            };
                            slot1_ns_partition: partition@c0000 {
                                label = "image-1-nonsecure";
                                reg = < 0xc0000 0x30000 >;
                            };
                            scratch_partition: partition@f0000 {
                                label = "image-scratch";
                                reg = < 0xf0000 0xa000 >;
                            };
                            storage_partition: partition@fa000 {
                                label = "storage";
                                reg = < 0xfa000 0x6000 >;
                            };
                        };
                    };
                };

    But While compiling we can able to see 3 memory region 
    2 zephyr.elf and 1 tfm_s.axf 
    Our flash partition is less than 250kb but the DFU memory region is very large in size. It shows 784kb. Attach log for you reference.

    Please clarify.
      


Related