7 things to check when
troubleshooting USB problems

Written by Joe Janson,
Project lead at Omega Unfold Inc
September 2014



What happens when a webcam fails to connect?

Connecting webcams on a PC can sometimes fail for many reasons. When a connection
fails, the following can occur:

  • The software may give a connection error for the webcam: Cable error, driver error, USB overload error
  • The software may connect correctly to the webcam, but no images will stream: Usually an overload error
  • If connecting many cameras, the first cameras will work fine, but the last camera(s) may fail to connect: Usually a bandwidth error.

Bandwidth:
A measurement of the ability of an electronic communications device or system to send and receive information; especially: a quantity of information that can be transferred over a connection.
In example: Graphics use more bandwidth than text does.


1. Webcams need more bandwidth than most USB devices.

Unlike keyboards and mice, webcams need to stream non-stop big chunks of data. Connecting a single webcam on a computer is usually not a problem, but the data transfer amount really starts adding up when connecting a few webcams. There is a limit to the amount of bandwidth a connection can support (see point #3 for details)


2. Image resolution and framerate matters

When connecting a webcam, some software automatically connect to a default resolution (Zone Trigger software gives this s an option). This can be ok, but it is preferable to choose a reasonable resolution for your needs. If you want to take pictures or record video, you might want to use a high resolution. If you need to do some motion detection and do not care about beautiful images, you should choose a lower resolution.

You might need to compromise between image quality and performance.

If you double the resolution of an image, you actually multiply by 4 the amount of pixels.

webcam-issue-resolution

Regarding framerate, doubling the framerate *approximately* doubles the bandwidth. Why not exactly? Because the most webcams use compression when transferring data, and compression spreads across multiple frames.



3. There are many USB controllers on a computer.

USB controllers are chips in the computer. Each controller has a limit on the amount of data that it can process (bandwidth limit). And each controller is connected to one (or many) USB port on the computer.

USB controller overload and issues

So if you connect too many data-hungry devices on the same controller, it will cause an overload, and some devices will fail to connect properly.

A USB controller will usually not overload when a single Webcam is being used, or even 2 webcams in low resolution. It is likely to overload if a software tries to connect to 3 or more webcams.

Solution #1:
Try connecting the webcams in different USB ports so to spread the bandwidth over multiple controllers.
Bad news: the ports are not identified as being interfaced with controller #1 or #2... so you'll have no choice but to experiment.

Solution #2:
Add some USB controllers. This is not really an option for most laptops, but desktop computers are upgradable with cheap USB expansion cards.
USB expansion card


4. Webcam have micropohones

Webcams actually contain 2 devices: a video capture and an audio capture device, and both a considered separate. It is possible to connect only the video, or only the audio. Some software allow this choice (Zone Trigger software does).

Sound capture does not require a lot of bandwidth, it is usually a thin stream. However, when troubleshooting, it might be an option to try connecting only the video to see if it will tip the scale.


5. USB2 and USB3 are not the same

There are many types of USB interfaces; as technology gets better, better and faster interfaces hit the market. USB 3 is much faster than USB 2. Many computers have 2 different types of interfaces. You can tell the difference between USB 2 and USB3 by the connection's color. As a general rule, USB2 is black and USB3 is blue.
USB 2 or 3 differences
Why have both types on one computer? Because some devices work better on their native interface. Usually, we can swap connections without an issue, but every now and then a device will snob the connection. Some USB3 devices will ONLY work on USB3 (ie: Microsoft Kinect V2).  There also is a cost to backward compatibility; connecting a USB2 device on a USB3 port can add some overhead to the bandwidth.


6. The webcam's software driver matters

Different webcams set at the same resolution and framerate can require different amount of bandwidth. The webcam's driver plays a role in this: communication between the webcam and the driver is usually compressed, some manufacturers compress the stream more than others. A compressed stream is a good thing for transmission speed and bandwidth, but can lead to a lower quality image. This is the compromise manufacturers need to make.

Obviously, if the stream if more compressed, it will be possible to have more webcams on the same USB controller. Sadly, this is not really something that the user has any control over.


7. USB cable and hubs may fail beyond 10 feet

USB cable will often loose its signal if too long extension is used, which is actually not so long. USB devices usually don't have a cable length above 6 feet, and a 6 feet extension is *usually* stable, but anything longer is playing with fire. Any source of magnetism in proximity can reduce the reliability of communication.

In order to have a reliable connection when using extensions, you should use an amplified extension, also called Active USB cable. The cable looks like a normal cable, but it uses power from the USB cable to amplify the USB signal.

Same goes for USB hubs. In theory, each USB connection on the PC could support up to 128 devices chained on hubs (hubs count as devices). In practice, not so much. Each device requires a bit of power and bandwidth. Some hubs are amplified, requiring a power source, this helps but it only pushes the limit a bit.



References

http://www.zonetrigger.com - Motion Detection software

Download a free copy of the Webcam Zone Trigger software.

If you have questions about the Zone Trigger products or if you require consultation and advice on your computer vision projects, please contact Omega Unfold's technical support: support@zonetrigger.com






More articles...
Articles
Introduction to motion detection and video capture

How to setup a home HTTP server

3 things to check for better motion detection

Interactive Digital Signage How-To

Troubleshooting Webcams


Using Zone Trigger software with the microsoft Kinect


USB bandwidth and connection issues


High-framerate webcams (60-120fps+)




Support | Site Map  | Privacy Policy  |  Omega Unfold, 2014