Connecting multiple USB 3.0 Cameras to a TX1/TX2

I am currently working on a project where I am powering the TX2 over ethernet and trying to get multiple USB 3.0 cameras to run off the board. I am currently using the developer module to do this equipped with a cheap 4-port USB 3.0 “Data Hub”. With a voltmeter I have been looking at the current being delivered to the TX2 as I plug in the 3 x USB cameras. Each camera seems to add 2.3W. The issue arrives when I plug the third USB camera in. The current hops around and it seems that there is an issue with the USB hub delivering enough power to the cameras.

Is there a carrier board with multiple USB 3.0 ports so that I wouldn’t have to plug everything into a cheap USB hub?

If not, is there a better way of going about this?

What is the best way of getting a microphone hooked up to the TX2?

Thanks

Is it a powered USB HUB? This would be recommended. There is a maximum allowed current under any given USB standard. If the Jetson applies this, and if there is an unpowered HUB, then the limit is for the sum of everything connected to the HUB. If you have a powered HUB, then I’d expect each individual port could go up to that limit.

A powered HUB would be far cheaper than a new carrier board…I’m not sure what is available for carriers with multiple USB3 ports using individual root_hubs (an unpowered HUB follows the same rules regardless of whether it is integrated into the carrier board or if the HUB is external…you’d have to look closely at any carrier board design to see if individual ports have their own power delivery versus whether they share a single rail…each root_hub would have its own power limits if individual root_hubs are used versus a single root_hub with a secondary HUB for port expansion).

USB microphones seem to work well.

Hello,

We are running 3 USB cameras on a powered hub and we are getting “no space left on device” when we try to use opencv to display the image.

2 cameras works great, 3 cameras fail. any ideas?

Are temporary files being used? No space left on device makes me wonder about which device, but in case it is the root partition, what do you get from “df -H /”?

Is it possible that its a USB Bandwidth issue? The cameras are HD 1080p 30fps.

Lack of sufficient throughput is a real possibility, but this would not manifest itself as a power-down or system failure. I’m not saying that a driver somewhere would not necessarily have a bug causing system failure if data is corrupted with buffer underruns or overflows, but it is very unlikely. It would be very useful to know what is causing the no space left on device error. Try running this and watching space as you add cameras (see if some device “Used” goes up and at the same time “Avail” goes to zero):

watch -n 1 df -H

Lack of bandwidth may very well return in a “no space left” error message – the USB bandwidth allocator may decide it cannot reserve the bandwidth, and denies the device.

Try adding a separate PCI-Express USB-3 card in the PCI-Express 4x slot on the main carrier board.

Assuming you can source enough current for the board (you’re using PoE ?) then that should work.

There is only one USB3.0 port on default carrier board. Please check if you can find carrier boards from other vendors better for your case https://developer.nvidia.com/embedded/community/ecosystem

“powering the TX2 over ethernet”

How are you doing this?