Есть такая ситуация: при подключении USB-клавиатуры через USB2.0 хаб к хост-контроллеру версии 1.1 клавиатура не работает (не проходит даже нумерация устройства); при прямом подключении клавиатуры к хост-контроллеру всё ОК. В книге "Universal Serial Bus System Architecture" прочитал, что при подключении USB2.0 хаба к 1.1 хост-контроллеру, хаб работает в full-speed mode (т.е. как 1.1 хаб): для передачи данных через хаб low-speed устройству (в моём случае это клавиатура) хост-контроллер должен перед каждым отправляемым пакетом выдавать преамбулу. Проверил это на логическом анализаторе - так оно и есть: преамбула -> token пакет -> преамбула -> пакет данных -> ожидание хэндшэйка от устройства. Но token пакет и пакет данных почему то через хаб не проходят (на upstream порте и преамбулы и пакеты есть, на downstream порте их уже нет

). Соответственно устройство ничего не отвечает и запрос SetAddress не проходит. В чём может быть причина?????
P.S. флэшка через тот же хаб и с тем же хост-контроллером работает нормально