Is USB ACM serial DFU possible with ncs v2.6.1?

I am building a BLE audio product that is based on the nRF5340. The application is largely based on the nrf5340_audio ncs example application, but I am modifying the the application so it can be re-configured at run-time instead of using the KConfig #defines.

I started the development of this application using ncs v1.9.x and with each ncs release I have been merging the changes to the ncs nrf5340_audio example into my application so I can keep up with bug fixes and general improvements in the build system.

For this product I have disabled DFU over Bluetooth and enabled DFU over USB serial (ACM com port).  I used to be able to enable the DFU mode by providing the "-m internal" flag to the python buildprog.py script, but in ncs v2.6.1 it looks like that is no longer an option because the new system has switched to using the softdevice Bluetooth controller.

To work around this, I added "CONFIG_AUDIO_DFU=1" to my proj.conf file.  When I compile the system with this option enabled I now get the build error shown in the attached .zip file.  For some reason if I insert the console output into this support ticket, the system will not allow me to post the message.

At first I thought this was because I have added code to my application and it would no longer fit into flash, but after looking into this some more, I now think that the image that does not fit in flash is the "new" softdevice BT controller.  Is this correct?

Is there a way to use the new softdevice controller and enable USB serial DFU in ncs v2.6.1?

Best Regards,
Kristopher

ConsoleOutputErrorMessage.zip

  • Hi Kristopher,

    Is there a way to use the new softdevice controller and enable USB serial DFU in ncs v2.6.1?

    Yes, you can use both BLE for audio and FOTA and Serial DFU simultaneous that version of NCS, and they should be simple prj.config additions to get into your project, but I will have to look some closer into the buildprog script to see how that works w.r.t enablign this.

    Could you share your relevant prj.conf, child_image/mcuboot.conf and similar?

    Kind regards,
    Andreas

Related