cancel
Showing results for 
Search instead for 
Did you mean: 

USB interface association descriptor

doejohn667
Associate
Posted on February 18, 2014 at 09:39

Hello,

I have made a 'two-in-one' device using an USB interface association descriptor: a generic HID, and a streaming audio device. Everything is working as expected, but the device is unstable. When fetching data from both interfaces in a loop, after a while (sometimes seconds, sometimes minutes or hours) it will crash (hard fault).

I have already checked the obvious (NVIC interrupt priorities, disabling all but the essential interrupts). Are there any places where I should add additional mutexes because of the use of USB IAD?

USB firmware library is v3.3.0.

Thanks!
1 REPLY 1
chen
Associate II
Posted on February 18, 2014 at 10:12

Hi

There is a hard fault register in the ARM core. Please look in the ARM core 'Generic Users Guide' (available from ARM) for details of the register and the bit field meanings.

A common cause of Hard Faults is stack corruption eg stack too small. Some OS or debuggers have facilities to check stack high tides.