假設我通過USB OTG適配器將USB供電的LED燈連接到運行Android 4.0.3的Toshiba Excite 10平板電腦,該平板電腦提供電源。Android USB OTG:以編程方式關閉端口電源
我想以編程方式打開和關閉USB OTG主機端口的電源引腳。 (理想情況下沒有根,但我會拿我能得到的)。有任何想法嗎?
假設我通過USB OTG適配器將USB供電的LED燈連接到運行Android 4.0.3的Toshiba Excite 10平板電腦,該平板電腦提供電源。Android USB OTG:以編程方式關閉端口電源
我想以編程方式打開和關閉USB OTG主機端口的電源引腳。 (理想情況下沒有根,但我會拿我能得到的)。有任何想法嗎?
您必須對/ sys目錄具有寫入權限。生根使得這個過程變得非常簡單。只要你的根設備,然後發出合適的echo命令來切換內核狀態位,如:
String[] command = { "/system/bin/sh", "-c", "echo xxx > /sys/bus/usb/devices/usb3/power/level", };
Runtime.getRuntime().exec(command);
另一種方法是使用libusb,挖庫,削減斷電功能。您可以使用android.hardware.usb.UsbManager來請求適當的libusb權限。
即使usb已插入,我想要觸發插入的usb(android平板電腦)。可能嗎?有什麼辦法可以告訴系統USB插入,所以它會被再次檢測? –
從這裏我知道https://askubuntu.com/questions/342061/power-on-off-usb-ports「所有以前的答案都提到USB暫停機制,即」邏輯關機「,他們絕不會從USB端口實際切斷VBUS + 5V。」
也許一個硬件解決方案是個壞主意,但我可以建議你在PCB上使用帶有可編程Atmega8U4芯片的MOSFET晶體管,它被編程爲切斷LED燈的電源。
不知道我的內核是否兼容,但它看起來像我可能只需要寫入'/ sys/bus/usb/devices/usb3/power/level'文件。我試過沒有root的,但寫入失敗,所以接下來我想我需要根我的平板電腦,然後再試一次。來源:http://stackoverflow.com/questions/4702216/controlling-a-usb-power-supply-on-off-with-linux – AlcubierreDrive