Existe-t-il un moyen de vérifier la puissance qu'un périphérique USB nécessite?
Pourquoi ai-je besoin de cela?
Je dois connecter un clé USB LTE à mon PI de framboise et je ne sais pas combien de puissance a besoin. Nous avons eu assez facilement sur Windows, mais nous n'avons pas trouvé de moyen de le faire sous Linux.
Vous pourriez aussi jeter un coup d'oeil à 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
Il y a un fichier bMaxPower
dans le dossier SYSFS de l'appareil. Mais je ne pense pas que cela va être très utile. Vous serez en mesure de constater que le périphérique "demandé" 500MA juste pour se conformer à la norme mais pas le drain actuel réel.
$ watch -n1 'lsusb -v|egrep "^Bus|MaxPower"'
Et rafraîchir chaque seconde
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
Vous avez probablement résolu votre problème ou déplacé à l'heure actuelle, mais ces informations sont disponibles sur le site Web du fabricant la plupart du temps. Il est également écrit sur chaque périphérique USB que j'ai utilisé.
La vraie réponse pour la mesure en direct est probablement qu'il n'est pas possible d'obtenir ces informations du système d'exploitation. Je suppose que tout cela est négocié au niveau du fil et en réalité contrôlé par des régulateurs/résistances de tension supplémentaires.
De plus, la disponibilité des dispositifs spécialement conçus pour cela est pour moi l'indice final qu'aucune solution "facile" n'existe.