在Linux下,如何知道USB设备消耗的实际电量

在Linux下,如何知道USB设备消耗的实际电量

我有一个 freecom 外置 USB 硬盘,它无法通过有源集线器运行,所以我想这和有源集线器没有提供足够的电力有关。但是,当我将其直接连接到 Linux 机器并发出命令时:

lsusb -v|egrep "^Bus|MaxPower"

我得到以下结果:

Bus 002 Device 003: ID 07ab:fc88 Freecom Technologies 
    MaxPower                2mA

(事实上​​ Windows 也报告了同样的事情)

也许这是内部集线器消耗的电量?我怎么知道实际消耗了多少电量?

答案1

看起来该设备在消耗多少电流方面欺骗了你。对于总线供电的外置硬盘来说,2mA 似乎低了几个数量级。MaxPower 值是直接从设备报告的,这不是设备制造商第一次偷工减料并报告不准确的值。

不幸的是,没有一种可靠的方法可以用软件测量 USB 设备的电流消耗,只能硬件 解决方案。如果你不关心测量实际电流消耗,而只是希望设备正常工作,我建议尝试USB Y 型电缆看看集线器上的 2 个 USB 端口是否可以提供足够的电力。

答案2

请注意,在 USB 2.0 规范中,maxPower 以 2mA 为单位表示,而在 USB 3.0 规范中,他们将其改为 8mA 单位。lsusb 出于某种原因(错误?)报告 USB 2.0 单位,而不管设备的实际 USB 级别如何。因此,如果您的设备将其 maxPower 报告为 1,并且这是 USB 3.0 设备,那么它实际上应该读取为 8mA 而不是 2mA。尽管正如其他人所说,即使是 8mA 也非常低。

相关内容