Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

getDeviceList() always empty

I'm trying to use an Arduino Board along with my Odys Neo x8 tablet but it seems, that the UsbManager doesn't recognize the device alright. I connected the arduino to the tablet via an OTG-adapter so that the tablet will work in host mode, the Arduino is successfully receiving power from the device. I'm fetching the list of available USB-devices on the tablet as follows:

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");

And inside the class UsbController:

mUsbManager = (UsbManager) mApplicationContext
            .getSystemService(Context.USB_SERVICE);

But unfortunately, the list remains empty, even if i start filtering using the VID and the PID (the two zeros). Any suggestions on how to fix this?

like image 926
Tim Specht Avatar asked Nov 13 '22 18:11

Tim Specht


1 Answers

I have used the following code which works very fine with keyboard, mouse and Mass Storage device to connect with 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());
  }

This should work with Arduino too.

like image 57
Arpan Avatar answered Dec 28 '22 10:12

Arpan