-
-
Notifications
You must be signed in to change notification settings - Fork 326
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Failed to bootstrap USB device 'Toshiba-Teli:BU505MG:...' #500
Comments
Hi Steven, Did you install an USB3Vision driver on your machine ? After a quick search, this issue may happen if a kernel driver has already claim the device. |
Thank you for the suggestion. No, I don't think so - Toshiba doesn't provide one for OSX which is why I'm interested in Aravis, and I don't think I've used pleora or similar here. To make sure I listed loaded modules (which I think is the way a driver would show up?):
There was previously one named something like
before then unplugging and replugging the camera but got the same behavior with Aravis. |
To be sure, I tried inserting the snippet you linked to: static void
arv_uv_device_constructed (GObject *object)
{
ArvUvDevice *uv_device = ARV_UV_DEVICE (object);
ArvUvDevicePrivate *priv = arv_uv_device_get_instance_private (uv_device);
GError *error = NULL;
arv_debug_device ("[UvDevice::new] Vendor = %s", priv->vendor);
arv_debug_device ("[UvDevice::new] Product = %s", priv->product);
arv_debug_device ("[UvDevice::new] S/N = %s", priv->serial_number);
libusb_init (&priv->usb);
priv->packet_id = 65300; /* Start near the end of the circular counter */
priv->timeout_ms = 32;
if (!_open_usb_device (uv_device, &error)) {
arv_device_take_init_error (ARV_DEVICE (uv_device), error);
error = NULL;
}
arv_debug_device("[UvDevice::new] Using control endpoint %d, interface %d",
priv->control_endpoint, priv->control_interface);
arv_debug_device("[UvDevice::new] Using data endpoint %d, interface %d",
priv->data_endpoint, priv->data_interface);
arv_debug_device("HERE0");
if (priv->usb_device != NULL) {
arv_debug_device("HERE1");
if(libusb_kernel_driver_active(priv->usb_device, 0) == 1)
{
arv_debug_device("Kernel Driver Active");
if(libusb_detach_kernel_driver(priv->usb_device, 0) == 0)
arv_debug_device("\nKernel Driver Detached!");
else
{
arv_debug_device("Couldn't detach kernel driver!\n");
// libusb_free_device_list(devs, 1);
libusb_close(priv->usb_device);
return;
}
}
}
if (priv->usb_device == NULL ||
libusb_claim_interface (priv->usb_device, priv->control_interface) < 0 ||
libusb_claim_interface (priv->usb_device, priv->data_interface) < 0) {
arv_device_take_init_error (ARV_DEVICE (uv_device), g_error_new (ARV_DEVICE_ERROR, ARV_DEVICE_ERROR_PROTOCOL_ERROR,
"Failed to claim USB interface to '%s:%s:%s'",
priv->vendor, priv->product, priv->serial_number));
return;
}
if ( !_bootstrap (uv_device)){
arv_device_take_init_error (ARV_DEVICE (uv_device), g_error_new (ARV_DEVICE_ERROR, ARV_DEVICE_ERROR_PROTOCOL_ERROR,
"Failed to bootstrap USB device '%s:%s:%s'",
priv->vendor, priv->product, priv->serial_number));
return;
}
... but it didn't make any difference and outputs
One deviation from your MacOS instructions is that I used macports to install the dependencies. I guess I could try Brew as you suggest incase there is a difference in libusb version or something. |
Describe the bug
arv-tool-0.8 is able to enumerate my U3V device, but fails when attempting to list features or genicam xml etc.
To Reproduce
[Unplug and replug camera, wait for flashing green ready light]
(base) computer:~/code/aravis/build/src ./arv-tool-0.8 --debug=all features
[21:02:12.615] ❷ interface> Found 1 USB3Vision device (among 13 USB devices)
[21:02:12.615] ❷ interface> [GvDiscoverSocket::new] Add interface 127.0.0.1
[21:02:12.616] ❷ interface> [GvDiscoverSocket::new] Add interface 192.168.0.123
[21:02:12.616] ❶ interface> [ArvGVInterface::send_discover_packet] Error: Error sending message: Can't assign requested address
Toshiba-Teli-0300102 (USB3)
[21:02:13.620] ❷ device> [UvDevice::new] Vendor = Toshiba-Teli
[21:02:13.620] ❷ device> [UvDevice::new] Product = BU505MG
[21:02:13.620] ❷ device> [UvDevice::new] S/N = [redacted]
[21:02:13.643] ❷ device> [UvDevice::new] Using control endpoint 1, interface 0
[21:02:13.643] ❷ device> [UvDevice::new] Using data endpoint 4, interface 2
[21:02:13.645] ❷ device> Get genicam
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[21:02:13.645] ❶ device> [UvDevice::read_memory] Ack reception error: LIBUSB_ERROR_NOT_FOUND
[... more of the same about 1000 times ...]
[21:02:13.814] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:13.814] ❶ device> [UvDevice::_bootstrap] Error during memory read
[21:02:13.815] ❷ interface> Found 1 USB3Vision device (among 13 USB devices)
[21:02:13.815] ❷ device> [UvDevice::new] Vendor = Toshiba-Teli
[21:02:13.815] ❷ device> [UvDevice::new] Product = BU505MG
[21:02:13.815] ❷ device> [UvDevice::new] S/N = [redacted]
[21:02:13.838] ❷ device> [UvDevice::new] Using control endpoint 1, interface 0
[21:02:13.838] ❷ device> [UvDevice::new] Using data endpoint 4, interface 2
[21:02:13.839] ❷ device> Get genicam
[21:02:13.874] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:13.908] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:13.944] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:13.977] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:14.011] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:14.011] ❶ device> [UvDevice::_bootstrap] Error during memory read
Failed to open device 'Toshiba-Teli-[redacted]': Failed to bootstrap USB device 'Toshiba-Teli:BU505MG:[redacted]'
[Running again without unplugging, we reach termination much sooner (as below)]
(base) Stevens-iMac-Pro:~/code/aravis/build/src ./arv-tool-0.8 --debug=all features
[21:02:15.468] ❷ interface> Found 1 USB3Vision device (among 13 USB devices)
[21:02:15.469] ❷ interface> [GvDiscoverSocket::new] Add interface 127.0.0.1
[21:02:15.469] ❷ interface> [GvDiscoverSocket::new] Add interface 192.168.0.123
[21:02:15.469] ❶ interface> [ArvGVInterface::send_discover_packet] Error: Error sending message: Can't assign requested address
Toshiba-Teli-0300102 (USB3)
[21:02:16.472] ❷ device> [UvDevice::new] Vendor = Toshiba-Teli
[21:02:16.472] ❷ device> [UvDevice::new] Product = BU505MG
[21:02:16.472] ❷ device> [UvDevice::new] S/N = [redacted]
[21:02:16.495] ❷ device> [UvDevice::new] Using control endpoint 1, interface 0
[21:02:16.495] ❷ device> [UvDevice::new] Using data endpoint 4, interface 2
[21:02:16.496] ❷ device> Get genicam
[21:02:16.530] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:16.565] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:16.600] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:16.635] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:16.671] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:16.671] ❶ device> [UvDevice::_bootstrap] Error during memory read
[21:02:16.672] ❷ interface> Found 1 USB3Vision device (among 13 USB devices)
[21:02:16.672] ❷ device> [UvDevice::new] Vendor = Toshiba-Teli
[21:02:16.672] ❷ device> [UvDevice::new] Product = BU505MG
[21:02:16.672] ❷ device> [UvDevice::new] S/N = [redacted]
[21:02:16.695] ❷ device> [UvDevice::new] Using control endpoint 1, interface 0
[21:02:16.695] ❷ device> [UvDevice::new] Using data endpoint 4, interface 2
[21:02:16.696] ❷ device> Get genicam
[21:02:16.729] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:16.765] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:16.800] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:16.836] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:16.872] ❶ device> [UvDevice::read_memory] Command sending error: LIBUSB_ERROR_TIMEOUT
[21:02:16.872] ❶ device> [UvDevice::_bootstrap] Error during memory read
Failed to open device 'Toshiba-Teli-[redacted]': Failed to bootstrap USB device 'Toshiba-Teli:BU505MG:[redacted]'
Camera description:
Platform description:
Do you have any tips on how to debug this or where the issue might light?
Thanks! Great project!
The text was updated successfully, but these errors were encountered: