
Re: Composite USB device with STM32: HID+MIDI
Не разбирам какво имаш предвид "общ въпрос"... Да не се опитваш да направиш универсален стек?
Според мен имаш съвсем конкретен бъг и съм сигурен че веднага ще хванеш след като видиш каква става. Затова ти препоръчвам Wireshark и жалко че под windows не може да подслушва USB.
Иначе проблемът при повечето стекове е, че са фиксирани за конкретна конфигурация и за да я промениш трябва да пипаш на много места. Съответно бъговете може да се навсякъде.
Може да имаш разминаване между това което пише в дескрипторите и това което правиш в софтуера. Примерно според дескрипторите имаш някакъв интерфейс и ендпоинти, обаче софтуера ти да ползва други ендпоинти. Аз затова при мен хоста като си избере конфигурация си сканирам дескрипторите и от тях си изграждам структури за текущите интерфейси и ендпоинти.
При теб вероятно е статично, но пак трябва да провярваш. В смисъл всеки request си има recipient, съответно трябва да проверяваш дали получателя е устройството, дали е конкретен интерфейс, съответно кой интерфейс - дали HID-а ти или Миди-то... Ако заявки към HID ги подадеш на MIDI и сам може да се сетиш, че ще стане боза

Така че това е единия клас проблеми с USB - да диспачнеш заяките към правилния клас/функция. Друг вид проблеми е да не обработваш правилно дадена заявка, но щом казваш че поотделно класовете работят, значи не е това. И накрая може да имаш обикновени бъгове дето нямат нищо общо с USB-то, но ти омазват комуникацията...