I am currently working on implementing DFU on my custom PCB using the XE216 device. My board has been successfully flashed with the firmware "app_usb_aud_xk_216_mc" via xTAG3, which allows it to be recognized by a host. I have closely followed the instructions provided in the USBDFU_AN02019_v1.0.0 document and used the xmosdfu/dfu-util loader for upgrading.
However, upon detaching the device from application mode, I face an issue where the host is unable to reclaim the interface and returns "LIBUSB_ERROR_NO_DEVICE" when calling the libusb_claim_interface(devh, XMOS_DFU_IF) function. Is there any suggestions or advice on how to resolve this issue so that the host can reclaim the interface properly.
Software configuration:
- sw_usb_audio-sw_9_0_0
- XMOS_XTC_15.3.1
Code: Select all
_mc/bin/1AMi16o16xxxxxx/app_usb_aud_xk_216_mc_1AMi16o16xxxxxx.bin
runtime vid 0x20b1, pid 0x000e. DFU vid 0x20b1, pid 0xd00e
Found Runtime: [20b1:000e] ver=0900
Opening DFU capable USB device, [20b1:000e], Runtime mode.
XMOS DFU application started - Interface 3 claimed
Detaching device from application mode.
Waiting for device to restart and enter DFU mode...
Found DFU: [20b1:000e] ver=0900
Error claiming interface 0
The device has been disconnected