0
votes

I have two Logitech webcams, when I plug them in any of the usb ports of my Intel NUC they always end up on bus 002. This is a problem because bus 002 does not have enough bandwidth to support two webcams at high frame rates.

Is there a way to force one of the webcams onto a different bus?

When I plug in other usb devices they end up on bus 001. This indicates that the bus selection is not defined by the usb port but by the driver or some magic inside the usb controller? Is there a way to influence this behavior?

1
Are you sure that you plug other devices into the same USB port and they end up on a different bus? That seems unlikely, but maybe it's because those other devices operate at a different speed or something, so the host considers it to be a different bus because they will never see the packets destined for your webcams. - David Grayson
The busses are used for different usb speeds. Super speed devices always end up on bus 002 while everything else ends up on bus 001. That seems to be a "feature" of the intel usb controller. I do not need the super speed bandwidth so a way to move one of the cameras to the other bus would solve my problem. Also there seems to be a problem with the uvc driver somewhere. With a reduced resolution of 320x240 it does not work either :/ - Arne Böckmann
So your camera is super speed? You can try putting a mere high speed hub between the camera and the computer to force it to use a lower speed. - David Grayson
Yes! that solved it. Its an ugly workaround though. Also on high speed the camera driver seems to behave a lot better, I can put both cameras on the high speed hub and it still works... - Arne Böckmann

1 Answers

1
votes

Ok I found a solution. The busses are used for different usb speeds. Super speed devices always end up on bus 002 while everything else ends up on bus 001. So to force an usb3.0 device on bus 001 I have to turn it into a usb2.0 device. This is done by connecting a usb2.0 hub inbetween the usb3.0 device and the usb port :-) Hacky but works.