Моя Wi-Fi-карта Netgear (с помощью драйвера ath9k_htc) на моем Raspberry Pi периодически переходит в плохое состояние, что приводит к ошибкам чтения с USB в dmesg. Это состояние не может быть исправлено с помощью сброса системы, но требует полного цикла питания USB-устройства, либо отключив его от сети и снова подключив USB-накопитель, либо выключив и снова включив весь компьютер.
Я прочитал, что можно программно отключать питание USB-устройства с помощью USB-концентратора. Итак, я попробовал это с моим внутренним 4-портовым USB 2.0 Hub, основываясь на информации в этой публикации:
https://stackoverflow.com/questions/1163824/linux-usb-turning-the-power-on-and-off
Но индикаторы на USB-флешке остаются светящимися даже после выполнения команды, приведенной ниже, хотя это и приводит к исчезновению устройства wlan0. Я попробовал это на Belkin 4-Port Hub с такими же результатами. У кого-нибудь есть идеи?
echo '1-1.2.3' | tee /sys/bus/usb/drivers/usb/unbind
Детали моих подключений usb:
pi@fpi-16 ~ $ sudo lsusb -t
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc_otg/1p, 480M
|__ Port 1: Dev 2, If 0, Class=hub, Driver=hub/3p, 480M
|__ Port 1: Dev 3, If 0, Class=vend., Driver=smsc95xx, 480M
|__ Port 2: Dev 4, If 0, Class=hub, Driver=hub/4p, 480M
|__ Port 1: Dev 5, If 0, Class=vend., Driver=rt2800usb, 480M
|__ Port 3: Dev 6, If 0, Class=vend., Driver=ath9k_htc, 480M