Отговори на тема  [ 5 мнения ] 
Composite USB device with STM32: HID+MIDI 
Автор Съобщение
Ранг: Ориентиран
Ранг: Ориентиран

Регистриран на: Вто Фев 06, 2007 2:45 am
Мнения: 263
Мнение Composite USB device with STM32: HID+MIDI
Значи поотделно всеки клас си работи екстра, но при опит да заработят като композитен дивайс удрям греда. Виндовс (7) не може да подкара HID-a ("Device cannot start"), а и MIDI-то върви куцо някакси, но се вижда като "working properly".
HID-a e custom (един 64-байтов репорт, по примера на баба Jan), MIDI-то си е класическа имплементация по клас спецификацията. Всичко е базирано на примерите оттук: http://www.microchip.com/forums/m189607-p3-print.aspx , конкретно постовете на xiaofan и chinzei. Първо в дескриптора ми е MIDI-то, след това е HID-а. Има и IAD, както си трябва.
Първо ми се стори странно, че ST не дават примери с композитни дивайси, за разлика от Атмел, но още не съм сядал да ги гледам тях.
Съчинението ми лежи на STM32_USB-FS-Device_Lib_V3.3.0.
Възможно ли е проблема да е в драйвера? Евентуално къде другаде?


Чет Апр 05, 2012 2:52 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 6:52 pm
Мнения: 11266
Местоположение: Добрич
Мнение Re: Composite USB device with STM32: HID+MIDI
трудно е да се каже какво ти куца ;-)

Най-доброто решение е да трейснеш от страна на контролера какво се получава и страна на компютъра и да търсиш къде се разминавате...

За съжаление под WIndows аз така и не намериш читаво решение за снифване на USB. Пробвах какви ли не програми, кракове обаче или не тръгват или забиват или никаква работа не вършат.
Но ако имаш линукс машина слагаш Wireshark и си пускаш виртуалнa машина с Windows. Бачка супер, стига компютъра да е по-бърз ;-)


Чет Апр 05, 2012 3:25 pm
Профил
Ранг: Ориентиран
Ранг: Ориентиран

Регистриран на: Вто Фев 06, 2007 2:45 am
Мнения: 263
Мнение Re: Composite USB device with STM32: HID+MIDI
Да, без детайлно гледане няма да мине.
Всъщност въпроса трябваше да е по-общ: изобщо за всякакви композитни дивайси с STM32, тъй като MIDI идва много частен случай за форума :mrgreen:
Иначе ако междувременно го преборя говедото, ще пиша.


Чет Апр 05, 2012 7:36 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 6:52 pm
Мнения: 11266
Местоположение: Добрич
Мнение Re: Composite USB device with STM32: HID+MIDI
Не разбирам какво имаш предвид "общ въпрос"... Да не се опитваш да направиш универсален стек?

Според мен имаш съвсем конкретен бъг и съм сигурен че веднага ще хванеш след като видиш каква става. Затова ти препоръчвам Wireshark и жалко че под windows не може да подслушва USB.

Иначе проблемът при повечето стекове е, че са фиксирани за конкретна конфигурация и за да я промениш трябва да пипаш на много места. Съответно бъговете може да се навсякъде.
Може да имаш разминаване между това което пише в дескрипторите и това което правиш в софтуера. Примерно според дескрипторите имаш някакъв интерфейс и ендпоинти, обаче софтуера ти да ползва други ендпоинти. Аз затова при мен хоста като си избере конфигурация си сканирам дескрипторите и от тях си изграждам структури за текущите интерфейси и ендпоинти.
При теб вероятно е статично, но пак трябва да провярваш. В смисъл всеки request си има recipient, съответно трябва да проверяваш дали получателя е устройството, дали е конкретен интерфейс, съответно кой интерфейс - дали HID-а ти или Миди-то... Ако заявки към HID ги подадеш на MIDI и сам може да се сетиш, че ще стане боза ;-)
Така че това е единия клас проблеми с USB - да диспачнеш заяките към правилния клас/функция. Друг вид проблеми е да не обработваш правилно дадена заявка, но щом казваш че поотделно класовете работят, значи не е това. И накрая може да имаш обикновени бъгове дето нямат нищо общо с USB-то, но ти омазват комуникацията...


Чет Апр 05, 2012 10:05 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Съб Ное 12, 2011 9:21 pm
Мнения: 62
Мнение Re: Composite USB device with STM32: HID+MIDI
за windows7 на мен това:

http://blogs.msdn.com/b/usbcoreblog/arc ... stack.aspx

ми помогна да видя какво става; обаче поради някаква причина нещо не можах да видя bulk пакетите с данни, които пращам към устройството (на мен това ми трябваше), само идващите видях; вижда се и как вървят и разни контролни пакети; все пак може да е полезно, в статията накрая има продължение и човекът дава насоки как би могъл да се открие проблем в комуникацията


Чет Апр 05, 2012 11:30 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 5 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 6 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни