cancel
Showing results for 
Search instead for 
Did you mean: 

DfuSe does not recognize my USB device when not in boot loader mode.

davem2
Associate II
Posted on July 16, 2009 at 19:48

DfuSe does not recognize my USB device when not in boot loader mode.

6 REPLIES 6
davem2
Associate II
Posted on May 17, 2011 at 13:17

Hi,

I'm using DfuSe application (v2.2.1) and sample firmware for my boot loader for an STM32. DfuSe recognizes my USB device when I force my firmware to stay in boot loader using VID=0x0483 and PID=0xDF11.

My problem is that I can't get DfuSe to recognize my USB device when it's running it's main application (i.e. no devices shows up in the listbox under ''Available DFU and compatible HID Devices'').

My main application uses a HID USB device type, and I've setup the HID reports according to Table 1 in UM0412, but DeFuse still won't recognize it until I give it the same VID and PID as the boot loader. Even then, the ''Enter DFU mode / HID Detatch'' button does not work (greyed out).

Please direct me to info on how to get the runtime application to work with DfuSe. I've got to get this working in two days before I can leave on vacation! 8-)

-Dave

PS: AN1577 (DFU implementation in ST7 USB devices) section 3.5 mentions a''DFU_desc.c''. Where do I get this?

[ This message was edited by: davem1 on 13-07-2009 17:39 ]

davem2
Associate II
Posted on May 17, 2011 at 13:17

aherson,

Thanks for your info. I have gotten DFuSe to work within the bootloader just fine, the problem is getting DfuSe's ''Enter DFU mode / HID Detach'' button to work -- it is grayed out -- even if I use the DFU mode VID/PID.

There must be documentation & code somewhere on how to get the runtime HID mode working with DfuSe.

''Help us ST-One-32e, you're our only hope!''

:-?

aherson
Associate II
Posted on May 17, 2011 at 13:17

It's my understanding that dfuse only works with VID=0x0483 and PID=0xDF11. I'm pretty sure I read that in the dfuse how to. I got as far as getting the CPU software to recognize my device, but no further. ST's GUI said I had ''Bad Firmware...'' something or other.

I, too, am confused about how this is supposed to work. Does the firmware just boot out of flash and do the upgrade or do you have to toggle the BOOT pins to get it to work correctly? Does the upgrade program run out of the bottom of flash and the normal program the top of flash? How do you switch between the two?

This was a very helpful posting: http://www.st.com/mcu/forums-cat-7783-23.html

[ This message was edited by: aherson on 14-07-2009 04:27 ]

[ This message was edited by: aherson on 14-07-2009 04:58 ]

aherson
Associate II
Posted on May 17, 2011 at 13:17

So, I've had a little progress. Using an example program I can build and install on my STM32 eval board. Then, when I boot up, I enter DFUSE mode and the application software by ST recognizes my device.

I cannot download (or upgrade) to the IC. Like others, I fail at 14% on the erase and hang forever. I think that maybe the sector that I am erasing is the sector that I am using. The mixed assembly appears that way based on the address space and, upon reboot, the PC does not recognize my device. In debug mode I detect a HW fault. Upon reflashing the FW, I can repeat this process again.

Has anyone completed the erase portion of the upgrade?

16-32micros
Associate III
Posted on May 17, 2011 at 13:17

Hi Friends,

Refer to my post here

http://www.st.com/mcu/forums-cat-8645-23.html

Hope this helps you.

Cheers,

STOne-32.

Posted on May 17, 2011 at 13:17

STOne-32, can you update that link?  Can't find the article....