int waitForUSBPermission() {
    UsbManager manager = (UsbManager) getSystemService(Context.USB_SERVICE);

    if (usbListener == null) return -1;
    while (!usbListener.permissionGranted()) {
      SystemClock.sleep(100);
    }

    UsbDevice depthCamera = usbListener.getDevice();
    UsbDeviceConnection con = manager.openDevice(depthCamera);
    return con.getFileDescriptor();
  }