Получить энергопотребление USB-устройства

29

Есть ли способ проверить, сколько энергии требуется устройству USB?

Зачем мне это нужно?

Мне нужно подключить флешку LTE USB к моей Raspberry Pi, и я не знаю, сколько ей нужно энергии. Мы получили это довольно легко в Windows, но не нашли способ сделать это в Linux.

TheMeaningfulEngineer
источник

Ответы:

27

Посмотрите на вопросы и ответы по SuperUser под названием: Как вы проверяете, сколько энергии может выдавать USB-порт? конкретно мой ответ .

lsusb -v

Вы можете получить максимальную мощность, используя lsusb -v, например:

$ lsusb -v|egrep "^Bus|MaxPower"
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    MaxPower                0mA
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    MaxPower                0mA
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    MaxPower                0mA
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    MaxPower                0mA
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    MaxPower                0mA
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    MaxPower                0mA
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    MaxPower                0mA
Bus 001 Device 003: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
    MaxPower              100mA
Bus 003 Device 002: ID 046d:c517 Logitech, Inc. LX710 Cordless Desktop Laser
    MaxPower               98mA
Bus 001 Device 004: ID 04a9:1069 Canon, Inc. S820
    MaxPower                2mA
Bus 001 Device 005: ID 05ac:120a Apple, Inc. iPod Nano
    MaxPower              500mA
    MaxPower              500mA
SLM
источник
5
Я не думаю, что это правильный ответ. Сообщается, что мой arduino использует 100 мА, даже когда я усыпляю его (тогда как другие измеряли потребляемую мощность около 56 мА). Если я сделаю свой Arduino активным, он также сообщается как 100 мА ...
Гюйгенс
Можете ли вы предложить аналогичную команду для Windows?
Suncatcher
17

Вы также можете взглянуть на usb-devices:

$ usb-devices | grep 'Product=\|MxPwr'
S:  Product=EHCI Host Controller
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
S:  Product=EHCI Host Controller
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
S:  Product=USB Keykoard
C:  #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=98mA
S:  Product=USB Receiver
C:  #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=98mA
S:  Product=DW375 Bluetooth Module
C:  #Ifs= 4 Cfg#= 1 Atr=e0 MxPwr=100mA
S:  Product=5880
C:  #Ifs= 2 Cfg#= 0 Atr=c0 MxPwr=100mA
Тердон
источник
6

В bMaxPowerпапке sysfs устройства есть файл. Но я не думаю, что это будет очень полезно. Вы сможете обнаружить, что устройство «запрашивает» 500 мА просто для соответствия стандарту, но не фактическому току.

Алекс П.
источник
3
$ watch -n1 'lsusb -v|egrep "^Bus|MaxPower"'

И обновлять каждую секунду

Cada 1,0s: lsusb -v|egrep "^Bus|MaxPower"                               Mecaro: Fri Dec  1 00:15:54 2017

Couldn't open device, some information will be missing
Couldn't open device, some information will be missing
Couldn't open device, some information will be missing
Couldn't open device, some information will be missing
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    MaxPower                0mA
Bus 002 Device 002: ID 046d:c31c Logitech, Inc. Keyboard K120
    MaxPower               90mA
Bus 002 Device 005: ID 04fc:0538 Sunplus Technology Co., Ltd Wireless Optical Mouse 2.4G [Bright]
    MaxPower              100mA
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    MaxPower                0mA
Маурисио Торрес
источник
0

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

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

Кроме того, наличие устройств, специально предназначенных для этого, является для меня последним намеком на то, что «простого» решения не существует.

Эрик
источник
5
«Веб-сайт производителя» малопригоден, когда вы создаете собственное USB-устройство ;-)
доктор. Сибрен