I found a similar thread, but it did not solve the problem.
When CDC-ACM is enabled in Device Tree, the dfu-util application cannot find the USB port.
The Bootloader started directly in nRF SDK5, is there same way to solve this in NCS?
I found a similar thread, but it did not solve the problem.
When CDC-ACM is enabled in Device Tree, the dfu-util application cannot find the USB port.
The Bootloader started directly in nRF SDK5, is there same way to solve this in NCS?
Hello,
It is not completely clear to me what you are actually trying to do. dfu-util is a 3rd party tool that is not written, maintained, nor supported by us. Is this the tool you intend to use? Or did you mean "nrfutil"?
If you are using NCS, then perhaps you want to look into the tool "mcumgr", which is the dedicated tool to communicate with the bootloader, either via USB or UART.
Best regards,
Edvin
Hello,
The readme.rst in the USB DFU sample project has a description of DFU using dfu-util. However, does this mean that Nordic does not recommend it?
Also I am learning about MCUMGR.
Hello Yoshihiro,
Am I right that you are refering to this sample: https://docs.nordicsemi.com/bundle/ncs-2.6.1/page/zephyr/samples/subsys/usb/dfu/README.html.
If so, then perhaps we have misunderstood you.
Looking at the sample documentation, it seems that sample demonstrates the USB DFU class.
The dfu-util tool mentioned there is likely a correct tool to use with this solution then.
The mcumgr tool that Edvin linked would not work with the USB DFU class. That tool is intended to communicate with the device's Zephyr's management subsystem (also referred to as MCUmgr) over the SMP protocol.
However, it is this MCUmgr and SMP solution that we primarily recommend. As mentioned by Edvin, the solution works over multiple popular transports, such as UART, BLE, and USB.
If you think the MCUmgr solution is suitable for your project, you can refer to our online lesson here: https://academy.nordicsemi.com/courses/nrf-connect-sdk-intermediate/lessons/lesson-8-bootloaders-and-dfu-fota/.
Hieu