всем привет.

есть рабочий проект в Keil под NicheLite(USB хост, не мой), все работает.
сейчас есть потребность избавиться от OS. всю работу с USB переписываю с нуля.

инициализация хоста проходит нормально, девайс определяется, начинаю инициализировать его по приходу RHSC. но при посылке первого же пакета(SETUP) прилетает одновременно UE и WDH, при чем DoneHead = 0
HccaFrameNumber перестает обновляться, но сам HcFmNumber продолжает расти.

вообще в доке по OpenHCI по поводу UE написано "The Host Controller sets the UnrecoverableError bit when it detects a system error not related to USB or an error that cannot be reported in any other way."

совсем не понятно в каком случае это происходит. частота возникновения SOF 1мс, как и положено, структуры HCCA, EndpointDescriptor, TransferDescriptor выровнены как и положено.

что не так? уже сравнивал содержимое дескрипторов при работе своей и старой прошивки
буду благодарен за любую информацию!