У нас имеется устройство, питающееся от USB. Ток потребления (по паспорту) 300 мА. Подключили к порту хаба, имеющего внешнее питание(!), и комп стал ругаться, что ток потребления очень большой, устройство не может быть подключено. А когда подключили напрямую к порту компа, заработало без вопросов. Вопросов два:
1. В чем может быть проблема?
2. Вообще как компьютер ( хаб) контролирует ток, потребляемый по шине USB?
kovigor
Jun 28 2012, 08:28
Цитата(NikP @ Jun 28 2012, 09:15)

1. В чем может быть проблема?
2. Вообще как компьютер ( хаб) контролирует ток, потребляемый по шине USB?
А вы посмотрите дескриптор конфигурации вашего устройства с помощью того же USBVIEW. Там написано, сколько оно потребляет. И БП хаба на какой ток расссчитан ? Если на полампера, а у хаба четыре порта, то все ясно.
Контролировать ток ? Ну, например, измеряя падение напряжения на последовательно включенном в линию питания резисторе или между стоком и истоком MOSFET'а, коммутирующего питание на шине (вероятнее всего) ...
Вот, посмотрите Гука (стр. 242, 243). Хаб с внешним источником должен обеспечивать до 500 мА на своих портах:
http://ruknigi.net/books/8858-shinyi-pci-u...entsiklopediya/
Вообще, существуют ограничители тока USB. Т.е. микросхема включается последовательно между источником и девайсом. Если потребление больше какого-то уровня, она рубит питание и выставляет флаг о перегрузке. Ток она не меряет. (как правило). Так делают в большинстве устройств.
Возможна другая причина, недавно столкнулись. Могу ошибаться, но механизм примерно такой: в ядре ОС (или драйвере порта) может быть зашит максимальный ток. При подключении устройства может идти запрос о требуемом питании и, если требуемый ток больше, чем может выдать порт, устройство не подключается. Решается увеличением цифры максимального тока в ядре ОС. У нас стоял линукс под определенный процессорный модуль, в нем максимальный ток по USB при использовании собственного источника 100мА. Когда подключали флешку, проблем не было, при подключении веб-камеры он нас послал. Решили вышеуказанным способом, благо источник внешний на 0,5 А как положено.
Проблема как раз в том, что хаб фирмы MOXA имеет внешнее питание с возможностью подключения 7 устройств по 500 мА каждое (по паспорту на него). Когда наше устройство (ТВ камеру) подключаем прямо к ПК - всё работает, как только подключение ПК-хаб-устройство - ПК отказывается работать. Вроде ОС - одна и та же, хаб питается от внешнего источника, что ещё надо для нормальной работы?
Скорее всего что м/схема ограничителя тока Вашего хаба при подключении нагрузки реагирует неправильно и выдает на HOST (комппьютер) флаг превышения тока. Это может быть по нескольким причинам, например не стоит электролитический конденсатор (100-220uF) по цепи питания USB_DS.
Konst_777
Jun 28 2012, 17:37
Цитата(NikP @ Jun 28 2012, 09:15)

У нас имеется устройство, питающееся от USB. Ток потребления (по паспорту) 300 мА...
Устройство USB до завершения процесса нумерации (Enumeration) должно потреблять не более 100 мА (см. раздел "9.2.5.1 Power Budgeting" в "Universal Serial Bus Specification Revision 2.0" или раздел "16 Managing Power" в книге Jan Axelson "USB Complete: The Developer's Guide, Fourth Edition").
Цитата(NikP @ Jun 28 2012, 12:51)

Когда наше устройство (ТВ камеру) подключаем прямо к ПК - всё работает, как только подключение ПК-хаб-устройство - ПК отказывается работать.
Хаб USB хоста в ПЭВМ, как правило, не контролирует ток потребления по шине Vbus. А вот качественные внешние USB хабы обязательно контролируют ток потребления.
Цитата(Ariel @ Jun 28 2012, 18:25)

Скорее всего что м/схема ограничителя тока Вашего хаба при подключении нагрузки реагирует неправильно и выдает на HOST (комппьютер) флаг превышения тока. ...
Фигово. Представителю фирмы звонили - клянётся, что у них всё в порядке. Что делать - ума не приложу. Будем выкручиваться. За обсуждение всем спасибо.
Пока писал, пришло сообщение от Konst_777. Ситуация становится более ясной. Будем разбираться и искать выход (или обход).
kovigor
Jun 28 2012, 20:39
Цитата(NikP @ Jun 28 2012, 20:42)

Будем разбираться и искать выход (или обход).
Кстати, запросто может быть, что до завершения энумерации устройство потребляет не 100 мА, а гораздо больше, вот его и отключают. Десктопы обычно к этому нечувствительны, а вот ноутбуки - чувствительны, и даже очень. Как ноутбук на это устройство реагирует ? Ну и еще вариант - устройство в дескрипторе конфигурации сообщает машине явно заниженный ток (проверить это можно с помощью USBVIEW) ...
А какая в вашем устройстве стоит емкость по USB 5V?
Просто стандарт USB ограничивает не только постоянный ток потребления, но и начальный пик тока при подключении устройства.
Устройство (ТВ камера) и хаб - покупные . Так что даже если там наваяли не то, то с паяльником лезть не очень.... Хотя я не думаю, что ребята накосячили, фирмы работают не первый год, опыт то должен быть.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.