If I understand correctly, “not detected” is from an application, but lsusb does see the cameras. If this is the case, the first possible location of failure is if the USB hotplug event is not causing a driver to create the device special file associated with it. The second possible location of failure is if whatever uses the device special files fails to look for the second device.
What is the camera manager application, and how does it determine camera presence? For the camera which does work, do you know if a particular device special file exists, and if so, can you list any relevant device special files before and after unplug-replug?
I’ve seen many cases of requiring a powered port for proper behavior…and not necessarily on high current drain devices. Having the device ready to respond at all times…even when power is not applied to the Jetson…can make more complex devices more reliable. Simple items like keyboards do not have much of a boot-up time, whereas a camera may have internal circuitry which does not respond to USB query until a short delay. As short as that delay is, a freshly booted Jetson may send the USB reset and query out faster than the unpowered camera can reply.
I also have a distrust of bus-powered USB devices which operate near the upper limits of USB standards for maximum power draw even if the device is able to respond instantly with power on. Both providers and consumers of such power tend to not always behave precisely and their interaction becomes unreliable.
NOTE: The Jetson has a per port USB standard limit on how much power it can provide. The HUB ports would technically provide a certain amount of power per port…but since it is sometimes powered by the Jetson, that power for one port must be enough for every device on the unpowered HUB. A powered HUB gives you guarantees of enough power to match standards on each port. You can’t magically provide a given amount of current on every port of a HUB when the power source itself provides the power of only one port.
For use with data, there is no requirement that a port be labeled for charging so long as the charge is within the normal USB current limits. In that case both charge and data are simply available as a generic USB device power consumption (using a host to provide power has nothing to distinguish whether the power is being used by the device directly, or to the battery charge). Additional circuitry may be present for detection and charge versus data modes if the port is intended to switch between dedicated charger and normal USB use.
In your case where ports are advertised as “fast charging”, I can’t say whether these behave as normal data ports. The point about being unpowered versus powered is mainly that an unpowered HUB has limits based on a limited amount of power from the upstream port being split up among one or more downstream ports…if more than one device is attached to the HUB you have to worry about cumulative current draw of all ports when unpowered. When the HUB is powered, you no longer have to care about the host’s power being split among each port…in that case each port is rated to a higher current rating and all ports can draw their max at once. Having two cameras, where each might pull significant current automatically means you are better off with an externally powered HUB.
If the “fast charge” ports do not also work as regular data, then there is a problem. The fact that your HUB is externally powered is good, so long as those fast charge ports don’t eliminate normal USB function.
About “/dev” files. USB sees a new device and enumerates it, a hotplug event is generated and if a driver that sees the event can handle the device, then the driver creates the “/dev” file. USB hotplug and seeing the event of plug/unplug is independent of whether a driver answers for ownership. “dmesg” before and after plug and unplug should see the USB device unless the device is failing USB communications.
Did you find any way to make this thing work? I am facing the same Issue.
The problem I am facing is that both the cameras are unique even their serial numbers. So if you have got the solution for this issue, will you please share it?
My analysis was it totally depends on USB hub … your hub should be able to supply enough voltage and current to camera to get illuminated… so USB3.0 is recommended for high demanding current devices …