OTA over UART on nRF54L15 - Upload completes but firmware doesn't boot

Dear Nordic Team,

I am working on implementing OTA (Over-The-Air) firmware updates over UART on the nRF54L15 platform. I have been following the "Exercise 1 - DFU over UART" tutorial from the Nordic Developer Academy:

Exercise 1 - DFU over UART - Nordic Developer Academy

I have configured my project according to the exercise. I have attached the following files for your review:

1. prj.conf   

/cfs-file/__key/communityserver-discussions-components-files/4/7713.prj.conf

2. sysbuild.conf

/cfs-file/__key/communityserver-discussions-components-files/4/4571.sysbuild.conf

3. sysbuild/mcuboot.conf

/cfs-file/__key/communityserver-discussions-components-files/4/3806.mcuboot.conf

4. sysbuild/mcuboot.overlay

/cfs-file/__key/communityserver-discussions-components-files/4/0410.mcuboot.overlay

5. ophelia4ev_nrf54l15_cpuapp.overlay

/cfs-file/__key/communityserver-discussions-components-files/4/ophelia4ev_5F00_nrf54l15_5F00_cpuapp.overlay

My Setup

  • Target device: nRF54L15_M33
  • UART used for DFU: UART30 (configured in the overlay file)
  • DFU tool: AuTerm
  • Image file: custom .signed.bin image

What I Observed

  1. I connected to the DFU UART (UART30) using AuTerm.
  2. I uploaded the generated .signed.bin image.
  3. The upload reaches 100% successfully.
  4. However, after the upload completes, AuTerm displays the following message:

       "Upload finished. Set image state failed. Command not supported (likely MCUboot serial recovery)".

  • After the upload reaches 100%, I close the COM port in AuTerm.
  • I then open the same UART in my terminal application.
  • Finally, I manually reset the board.

Expected Behavior

After resetting the board, I expect MCUboot to boot the newly uploaded application. The new application is configured to print debug messages over the same UART30 interface used for the DFU process, so I expect to see those debug messages on the terminal after the board resets.

Actual Behavior

After resetting the board, no debug messages are printed, and the application does not appear to start.

Request

Could you please review the attached configuration files and let me know if I have missed any required configuration for DFU over UART on the nRF54L15?

Also, could you help me understand why AuTerm reports:

Set image state failed.
Command not supported (likely MCUboot serial recovery).

Is this expected behavior for MCUboot serial recovery, or does it indicate that my DFU configuration is incorrect?

Regards,

Venkata Kishore P

Parents
  • Hi Amanda H,

    Thank you for your response and for providing the link to the official solution.

    1. NCS Version:
    I am using nRF Connect SDK v3.2.4.

    2. Build Issue with the Official Solution:
    I attempted to build the official solution (l9_e1_sol) from the GitHub link you provided for my nRF54L15 DK. However, the build fails with the following error:

    text
    region 'FLASH' overflowed by 2296 bytes

    Full Error Log:

    text
    FAILED: zephyr/zephyr_pre0.elf
    c:/ncs/toolchains/fd21892d0f/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe: zephyr\zephyr_pre0.elf section `rodata' will not fit in region `FLASH'
    c:/ncs/toolchains/fd21892d0f/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe: region `FLASH' overflowed by 2296 bytes
    collect2.exe: error: ld returned 1 exit status
    ninja: build stopped: subcommand failed.

    3. My Environment:

    Board :- nRF54L15 DK (nrf54l15dk/nrf54l15/cpuapp)
    NCS Version:- v3.2.4
    Toolchain:- Zephyr SDK 0.17.0

    Regards, 

    Venkata Kishore P

Reply
  • Hi Amanda H,

    Thank you for your response and for providing the link to the official solution.

    1. NCS Version:
    I am using nRF Connect SDK v3.2.4.

    2. Build Issue with the Official Solution:
    I attempted to build the official solution (l9_e1_sol) from the GitHub link you provided for my nRF54L15 DK. However, the build fails with the following error:

    text
    region 'FLASH' overflowed by 2296 bytes

    Full Error Log:

    text
    FAILED: zephyr/zephyr_pre0.elf
    c:/ncs/toolchains/fd21892d0f/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe: zephyr\zephyr_pre0.elf section `rodata' will not fit in region `FLASH'
    c:/ncs/toolchains/fd21892d0f/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe: region `FLASH' overflowed by 2296 bytes
    collect2.exe: error: ld returned 1 exit status
    ninja: build stopped: subcommand failed.

    3. My Environment:

    Board :- nRF54L15 DK (nrf54l15dk/nrf54l15/cpuapp)
    NCS Version:- v3.2.4
    Toolchain:- Zephyr SDK 0.17.0

    Regards, 

    Venkata Kishore P

Children
No Data
Related