0

I am writing an application for LPC4330 microcontroller, that will allow the user to update the firmware using USB DFU class. I wrote all of the code and I wanted to test it using dfu-util software. But when I try to do it few errors appear:

  1. When I list the USB devices, two elements with the same parameters (vendor id, device id, configuration and interface) appear. The situation changes when I make a breakpoint in the application, in place where interrupt process function is called. Then only one device appears on the list.

  2. I cannot detach the device because I get error "No USB device is DFU capable". Even when only one device is listed by dfu-util.

  3. When only one device is listed I can start performing upload/download operation, but the application sends me an error, that interface cannot be claimed.

What could be a reason of these problems? Could it be connected with LPC4330 feature allowing user to flash the programme to the memory using dfu?

Thank you in advance for your answer!

Oxide
  • 11
  • 1
  • 4

1 Answers1

0

You write your own DFU that is fine. Can I get to know from which mode you are trying to do firmware upgrade? Like downstream or upstream.

And if you are trying from any one of the mode please make sure that you are creating the device for particular mode only.

Detach will work, only when your DFU should have in run time mode. So please make sure that you are in run time mode or DFU mode. And before Detach try to reset your device by using software command