我正在尝试将Arduino开发板与我的Odys Neo x8平板电脑一起使用,但似乎UsbManager无法识别该设备。我通过OTG适配器将arduino连接到平板电脑,以便平板电脑可以在主机模式下工作,Arduino已成功从设备获得电源。
我在平板电脑上获取可用USB设备的列表,如下所示:
sUsbController = new UsbController(this, mConnectionHandler, 0, 0);
HashMap<String, UsbDevice> devlist = sUsbController.mUsbManager.getDeviceList();
TextView t = ((TextView)findViewById(R.id.textView));
t.setText("Found " + Integer.toString(devlist.size()) + " devices");
在类UsbController中:
mUsbManager = (UsbManager) mApplicationContext
.getSystemService(Context.USB_SERVICE);
但不幸的是,即使我开始使用VID和PID(两个零)进行过滤,列表也仍然为空。
对于如何解决这个问题,有任何的建议吗?
最佳答案
我使用了以下代码,该代码在键盘,鼠标和大容量存储设备上可以很好地与Pandaboard连接,
UsbManager usbManager = (UsbManager) getSystemService(USB_SERVICE);
HashMap<String, UsbDevice> devicelist = usbManager.getDeviceList();
Iterator<UsbDevice> deviceIterator = devicelist.values().iterator();
while(deviceIterator.hasNext()) {
UsbDevice usbDevice = deviceIterator.next();
Log.i(Log_Tag, "Model : " +usbDevice.getDeviceName());
Log.i(Log_Tag, "Id : " +usbDevice.getDeviceId());
}
这也应该与Arduino一起使用。