Устройства, работающие на Linux, но не на Windows из-за питания

Устройства, работающие на Linux, но не на Windows из-за питания

Я купил новый ноутбук Medion и нашел первые 3 устройства в списке (Kobo Reader и Hotone Audio работают не полностью).

Также протестировано на Linux, и там они работают правильно. Затем я обнаружил, что на Windows энергопотребление устройств слишком низкое для их нормальной работы:

  • 2 мА для Kobo eReader (по сути, это запоминающее устройство большой емкости, которое не монтируется в Windows)
  • 64 мА для Hotone Ampero (внешняя звуковая карта, не распознаваемая собственным программным обеспечением)

Уже пробовал менять кабели и порты USB (2.0, 3.1 и тип C, а также использовать внешний концентратор).

Windows сообщает, что драйверы и система обновлены.

Как мне увеличить мощность, подаваемую на два устройства, хотя бы до 200 мА или 500 мА?

введите описание изображения здесь

решение1

Мощность, доступная для USB-устройств, зависит от возможностей порта, и есть много переменных. Порт на USB-хосте с питанием (например, компьютер) может быть 500 мА для порта USB 1.1 и 3000 мА для порта USB 3.x. Хост «без питания» (то есть работающий от батареи) может обеспечивать еще меньшую мощность и все равно соответствовать спецификации. Предполагается, что концентратор с питанием должен обеспечивать минимум 500 мА на порт, а концентратор без питания должен обеспечивать минимум 100 мА на порт.

Одна из проблем заключается в том, что не все концентраторы и не все устройства соответствуют спецификациям, и то же самое касается хостов, драйверов, кабелей и всего остального, что я мог упустить.

Мощность, разрешенная устройству, обеспечивается двумя способами: программным и аппаратным. В программном обеспечении драйверы и операционная система будут вести некую «учетную» информацию о том, сколько мощности потребляет каждое USB-устройство, и если какое-то новое устройство запрашивает больше мощности, чем доступно, то драйвер и ОС запрашивают, чтобы новое устройство не потребляло больше мощности. Некоторые драйверы, операционные системы, прошивки устройств и т. д. играют по всем правилам USB, а некоторые — нет. Когда они не играют по правилам, в игру вступают аппаратные средства защиты.

Аппаратная защита в USB-портах и ​​концентраторах часто представляет собой самовосстанавливающиеся предохранители. Они немного «небрежны» в отношении того, какой ток они пропускают перед отключением питания, поэтому предохранители не срабатывают точно, когда спецификация USB нарушается при 500 мА, 3 амперах или чем-то еще. Они пропускают некоторую мощность сверх спецификации перед отключением питания, чтобы избежать неприятных отключений. Многие производители USB-устройств полагаются на это, чтобы сэкономить на том, сколько энергии потребляется. Обычно устройства не запрашивают никакой мощности, они просто берут ее. Другая распространенная тактика — лгать ОС о том, сколько энергии потребляется, заявляя, что потребляют всего 100 мА, когда на самом деле потребляется гораздо больше. Часть этого принудительного контроля потребления энергии находится в драйвере и операционной системе, меняя ОС, вы используете другой «учет» того, как потребляется энергия.

Потребуется некоторое расследование, чтобы выяснить, кто правильно ведет этот "учет" и защищает ваши USB-устройства от повреждений. Если это работает в Linux, но не в Windows, то, возможно, Linux ведет учет правильно и позволяет каждому устройству безопасно получать питание. Возможно, Windows ведет учет правильно и запрещает питание устройствам, чтобы защититься от слишком большого потребления энергии. Возможно, ни один из них не ведет учет потребления энергии правильно.

Из скриншота в вашем вопросе следует, что у вас подключено много USB-устройств, и это может затруднить диагностику проблемы. Поможет отслеживание того, сколько энергии потребляет каждое USB-устройство и сколько энергии пропускает каждый порт США. Это как если бы вы увидели срабатывание автоматического выключателя на панели выключателей вашего дома, вы бы захотели посмотреть, сколько энергии потребляет каждое устройство и сколько энергии пропускает каждая цепочка розеток в доме.

Опять же, не каждое USB-устройство будет соответствовать спецификации USB. Те, которые соответствуют спецификации USB, будут иметь логотип торговой марки USB, наличие логотипа является частью соответствия спецификации. Если логотипа нет, то устройство, вероятно, нарушило какую-то другую часть спецификации, помимо отсутствия логотипа, например, потребляя больше энергии, чем должно.

Изучив энергопотребление устройств и выяснив, какие устройства не соответствуют спецификации USB, вы сможете организовать цепочку USB-устройств таким образом, чтобы она работала надежно.

Связанный контент