Columbia ISA
Audio – Video

– › Wiring Diagrams

» Cables » USB  

USB - Universal Serial Bus

Universal Serial Bus (USB) is an electronics industry standard that specifies the physical interfaces and protocols for connecting, data transferring and powering of personal computers, peripherals, keyboards and mobile devices.

USB was designed to standardize the connection of peripherals to computers, replacing various interfaces such as serial ports and parallel ports.

It has become commonplace on a wide range of devices, such as keyboards, mice, cameras, printers, scanners, flash drives, smartphones, game consoles, and power banks.

As of 2023, USB consists of four generations of specifications: USB 1.‘‘x’’, USB 2.0, USB 3.‘‘x’’, and USB 4.

Color designations for the different USB generations are as follows:

White - USB 1.0
Black - USB 2.0
Blue -  USB 3.0
Green - USB 3.1
Yellow - USB 3.1

With the USB 4 standard which uses USB-C connector, the color codes are not used.

USB Type-C


USB-C is a universal standard that enables charging, syncing data and playing audio and video. The Apple iPhone late models have a USB-C connector, which allows you to charge and connect to a variety of external storage devices and displays.

You can use the USB-C connector to listen to sound with wired headphones. You can connect your iPhone to an HDMI TV with a USB-C to HDMI adapter or cable. Adapters and cables that support HDMI 2.0 can output video from iPhone at 4K video resolution and 60 Hz. To use Lightning accessories, you can use the USB-C to Lightning adapter, which supports power, data and audio.

USB-C™, also known as USB Type-C™, is a connector developed by the USB Implementers’ Forum (USB-IF), a group of industry leaders within the consumer electronics community. USB-C™ will gradually replace previous USB types, including USB-A, USB-B and USB Mini-B. As future devices are equipped with the USB-C™ port, which is smaller than its predecessors, it’s likely that these devices will also be thinner, lighter, and more compact than ever before.


USB-C™ is very user friendly and it has a reversible connector. There’s no up or down orientation so it works regardless of which way you plug it in. Truly universal. Not just happy to work with smartphones, tablets, laptops, digital cameras, or anything that traditionally connects via USB, USB-C™ is also at home across different operating systems like iOS, Android, Windows, Google and more.

USB-C™ can transfer data at speeds up to 10Gbps (gigabits per second). That’s up to 20 times faster than USB 2.0. Not only is it fast, there’s so much more power. With up to 100 watts, or 3 amps of power, USB-C™ cables can power almost anything from laptops to large high-resolution monitors, even some printers. Also, USB-C™ cables can deliver Ultra-HD 4K video resolution to USB-C™ and HDMI displays.

When transitioning to USB-C™, it doesn’t mean you have to replace all your existing devices. Your new USB-C™ device (such as a laptop) will still be compatible with all your existing devices (smartphones, tablets, mouse, printer, etc.), you just need the correct USB-C™ cable or adapter.


USB Type-C is bi-directional, meaning that when plugged in, a device can receive and send data. USB-C is faster, meaning that large files such as movies, DSLR images, and high-end audio can be transferred in seconds. The USB-C™ connector is being widely adopted by manufacturers including Apple, Google and Microsoft. With such widespread support from these market-leading manufacturers, it’s only a matter of time before this standard becomes the norm.


Although USB-C™ and USB 3.1 were developed at the same time, they are not the same thing. USB 3.1 is an upgrade from the familiar USB 2.0, and more recent USB 3.0, offering significantly faster data transfer. USB-C™ is not backward compatible. USB 3.1 is the technology. The USB-C™ is a connector that enables the functionality to support the technology.


USB Power Delivery, or USB PD, is a charging protocol that uses high speed USB-C™ connecters and cables. Smartphones, tablets, and laptops that are Power Delivery-enabled allow safe, faster charging and more power for larger devices, without the need of a separate power supply. USB PD will charge your smartphone up to 70% faster than standard 5W charging. You can even share power between USB PD devices.

USB (Universal Serial Bus) is a data transfer interface between a computer (PC) and peripherals (like audio players, digital cameras and printers), which allows you to plug in a device without adding an adapter card in the computer. Universal Serial Bus (USB) is a connectivity specification developed by the USB Implementers Forum (IF). USB is aimed at peripherals connecting outside the computer in order to eliminate the problem of opening the computer case for installing cards needed for certain devices.

USB provides for ease of use, expandability, and speed for the end user. USB is easier to use than some of the traditional internal PC buses, such as PCI and ISA. The devices that use USB are hot-pluggable, eliminating the need to shut down the PC to add or remove a device. A USB bus also has automatic device detection; once you plug in your device, the operating system software should detect, install, and configure the device automatically.

USB symbol used on cables and ports indicating Universal Serial Bus.

Type A is used on desktop computers, Type B on printers, Type C on Android phones.

Adapter cables are used to connect one type to another.


8GB, 16GB, 32GB of data and more can be stored on these small flash drives which can be used on computers and HDTVs. Keep songs, videos, photos and files at hand, easily carried in a pocket. Connects with the built-in USB connector.

  USB Features
Easy to Use Simply plug it in - everything configures automatically. True Plug-and-Play! Connect and reconnect peripherals without rebooting your PC.
Expandable Plug as many as 127 peripherals into one computer using USB multi-port hubs.
Speed Hi-speed USB 2.0 runs at 480 Mbits/second, and full-speed at 12 Mbits/second. USB 3.0 superspeed can be as high as 4.8Gbit/s

Plugable USB 2.0 10 Port Hub (with Power Adapter)
There are 8 fixed ports on this hub and two ports that swivel out. There are 6 fixed ports on one side and 4 ports on the other. The side with 4 has the two swivel ports.

Initially the Universal Serial Bus (USB) was designed to connect peripheral devices, such as keyboards and mice, to PCs. However, USB has proven useful for many other applications. The USB 1.1 specification specified a maximum throughput of 12 megabits per second (Mb/s), but later USB developments increased the potential speed to 480 megabits per second and more.

USB’s main attraction is that it makes adding peripherals to your computer incredibly easy. It enables you to connect peripherals to the outside of the computer so you don't have to open your PC. Laptops benefit even more because generally the case cannot be opened. Laptops have many USB ports so multiple devices can be connected to the computer.

Introduced in 1995, the USB standard was developed by industry leaders including DEC™, IBM®, Intel®, Microsoft®, and Compaq®. Most PCs and peripherals available today feature at least one USB connection. Peripherals can include everything from modems to joysticks. Windows® 95 Rev. B, Windows 98, Windows 2000, Windows Me, Windows XP, Windows Vista,  Windows 7, Windows 8 and Mac® OS 8 and higher support USB.

A USB peripheral simply plugs into the port and works. You don’t need to install a card; you don’t even need to turn off your computer—USB devices are completely hot-swappable. Because USB also distributes power, many USB devices don’t require a separate power supply, although a bus-powered device must be attached upstream to either a host PC or a powered hub.

USB configuration happens automatically, so built-in USB means you don’t have to fiddle with drivers and software when adding most peripherals. USB host controllers automatically detect when peripherals are connected to or disconnected from a port. The controllers manage and control the driver software and bandwidth required by each peripheral. They even allocate the right electrical power to each peripheral.

USB uses a tiered star topology, meaning that USB devices called hubs can serve as connection ports for other USB devices. Only one device needs to be actually plugged into your PC. USB supports hubs that can be either standalone or embedded within some other device such as a keyboard or disk drive. A single USB port can support up to 127 devices.

USB 1.1, has two data rates: 12 Mbps for devices such as disk drives that need high-speed throughput and 1.5 Mbps for devices such as joysticks that need much lower bandwidth.

In 2002, a newer specification,
USB 2.0, Hi-Speed USB 2.0, gained wide acceptance in the industry. It increases the speed of the peripheral-to-PC connection from 12 Mbps to 480 Mbps, or 40 times faster than USB 1.1. This increase in bandwidth enhances the use of external peripherals, such as CD/DVD burners, scanners, digital cameras, video equipment, that require high throughput. USB 2.0 also supports demanding applications where multiple high-speed devices run simultaneously, such as Web publishing. A USB 2.0 host will work with both USB 2.0 and USB 1.1 peripherals. USB 2.0 also supports Windows® XP through a Windows update.

USB 3.0

USB 3.0 "Superspeed" (2009) is the second major revision of the USB standard. USB 3.0 has transmission speeds of up to 5 Gbit/s, which is 10 times faster than USB 2.0 (480 Mbit/s). USB 3.0 adds new cable connectors partially for backwards compatibility of USB 2.0. The connectors have dual hookups. One for USB 2.0 and one for USB 3.0. USB 3.0 adds five wires for a total of nine wires in the connectors and cabling and utilizes a unicast dual-simplex data interface that allows data to flow in two directions at the same time; an improvement over USB 2.0’s unidirectional communication. USB 3.0 Standard-A receptacles are backward-compatible with USB 2.0 but add new pins for USB 3.0 signals. The new Standard-B and Micro-AB receptacles are also backward-compatible. 

The USB host automatically detects when a new device has been added, queries for device identification, and appropriately configures the drivers. Due to the bus topology, up to 127 devices can run concurrently on one port. Conversely, the classic serial port supports a single device on each port. By adding hubs, more ports can be added to a USB host, creating connections for more peripherals.

Manufactured PCs are currently equipped with USB ports; therefore it is not necessary to purchase a dedicated controller to interface to a USB-based device. USB-based devices are supported by Windows XP/2000/SP/Me/98. USB delivers an inexpensive, easy-to-use connection between devices and PCs. USB provides a step up from conventional serial port technology by featuring faster performance; hot-pluggable functionality; built-in operating system configuration; and multi-drop cabling, which allows you to connect multiple devices from the same port. 

USB consists of a host controller and (multiple) devices connected in a tree-like fashion using hub devices for more than one peripheral. Up to 127 devices may be connected to a single host controller, but the count must include the hub devices as well. A modern computer likely has several host controllers so the total useful number of connected devices is beyond what could reasonably be connected to a single computer. There is no need for a terminator on any USB bus. The design of USB aimed to remove the need for adding separate expansion cards into the PC's ISA or PCI bus, and improve plug-and-play capabilities by allowing devices to be hot swapped or added to the system without rebooting the computer. When the new device first plugs in, the host enumerates it and loads the device driver necessary to run it. 

USB can connect peripherals such as mice, keyboards, scanners, digital cameras, printers, hard disks, and networking components. For multimedia devices such as scanners and digital cameras, USB has become the standard connection method. For printers, USB has also grown in popularity and started displacing parallel ports because USB makes it simple to add more than one printer to a computer.

The speed makes it adequate for digital music and digital still image transfers. USB 1.1, the prior USB standard, supports a data transfer speed of 12 Mbps (megabits per second), significantly faster than a serial connection. Though USB 1.1 can't compete with Firewire - i.LINK (up to 400 Mbps), the USB 2.0 standard is faster, at 480 Mbps. Currently, the USB Specification, Revision 2.0, covers three speeds 480 Mbps, 12 Mbps, and 1.5 Mbps. The term "Hi-Speed USB" refers to just the 480 Mbps portion of the USB Specification. We now use the term "USB" to refer to the 12Mbps and 1.5Mbps speeds. 

Digital camera image transfer to computer using a USB cable. Once on the computer, you can edit the photo, print it or upload to the world-wide web to share with anyone in the world. The USB cable consists of a Type "A" connector at the computer end and a Type "mini-B" at the digital camera end.

USB cable Type "A" connector plugs in to the computer. USB cable Type "B" connector plugs in to the device.

USB supports three data rates. A Low Speed rate of 1.5 Mbit per second that is mostly used for Human Input Devices (HID) such as keyboards, mice, joysticks and often the buttons on higher speed devices such as printers or scanners.

USB has a Full Speed rate of 12 Mbit per second. Full Speed was the fastest rate before the USB 2.0 specification and many devices fall back to Full Speed. Full Speed devices divide the USB bandwidth between them in a first-come first-serve basis and it is not uncommon to run out of bandwidth with several isynchronous devices. All USB Hubs support Full Speed.

USB 2.0 added a Hi-Speed rate of 480 Mbit per second. Not all USB 2.0 devices are Hi-Speed. A USB device should specify the speed it will use by correct labeling on the box it came in or sometimes on the device itself. 

Hi-Speed devices should fall back to the slower data rate of Full Speed when plugged into a Full Speed hub. Hi-Speed hubs have a special function called the Transaction Translator that segregates Full Speed and Low Speed bus traffic from Hi-Speed traffic. The Transaction Translator in a Hi-Speed hub (or possibly each port depending on the electrical design) will function as a completely separate Full Speed bus to Full Speed and Low Speed devices attached to it. This segregation is for bandwidth only; bus rules about power and hub depth still apply.

Thousands of devices have passed compliance testing, and they continue to be some of the best-selling products in many categories. Also, the USB installed base of USB-capable PCs grew from 6 million PC's in 1996 to over 700 million by 2003.

The current version of USB, revision 2.0, is a higher speed (480Mbs) version that is also fully compatible with USB 1.1. It provides up to 40 times the bandwidth of the old USB 1.1 and is completely backward compatible with older USB hosts. New hi-speed USB 2.0 hosts also support the older USB 1.1 devices in the same tree as the new hi-speed products.

Most new personal computers (both IBM-compatible PCs and Macs) and many peripheral devices such as printers are equipped with USB; for example, USB support is integrated into Windows® 98, 98SE, 2000, 2000SE, ME and Windows XP, as well as Mac OS 8.6 and up.

USB ports are expandable with the addition of hubs, which allow you to connect several peripherals simultaneously through a single USB port. Many PCs offer multiple USB ports, often placing one in the front for easy access. 

An even newer USB standard, USB On-The-Go (USB OTG) is also being developed. USB OTG enables devices other than a PC to act as a host. Use it to connect portable equipment, such as PDAs, cell phones, and digital cameras, to each other without using a PC host.

USB connectors: Type A, Type B, Mini B, Mini A, Micro-B.

USB 1.1 specifies the Type A and Type B. 

USB 2.0 specifies the Type A, Type B, and Mini B. The Mini A connector was developed as part of the USB OTG specification and is used for smaller peripherals, such as cell phones.

There are at least 7 main types of USB connectors commonly found on devices. (the new mini-AB is used on  USB On-The-Go devices.)

1) The USB Type A connector plugs into the USB Type "A" port on the computer. This is a rectangular four-pin connector. 

2) The USB Type B connector plugs into a USB Type "B" port on a peripheral device (such as a printer). 

3) Some smaller devices such as digital cameras, Minidisc recorders and USB audio adapters, use a smaller version of the USB Type B, known as Mini-B. These devices typically include a Type "A" to mini-B cable.

4) USB 2.0 Mini-A

5) USB 2.0 Micro-B The micro-B is flatter than the mini-B, and was designed to work better with smaller form-factor devices. 

6) USB 3.0 B-Type

7) USB 3.0 Micro-B

USB 3.0 micro-B connector

The USB 3.0 micro-B connector

Typical USB Cable - Type "A" connector and Type "B" connector

USB cable Type Mini-B and Type "A" male for connecting a device such as a digital camera to a computer. The Type "A" end plugs into the computer USB Type "A" port and the Mini-B end plugs into the device. Communication between the device and the computer can then take place. Data can then be transferred between the two.

USB pin assignments

4-pin USB female jack (Type A, Type B, Type mini-B)

4-pin USB male connector (Type A and Type B)

USB port (Type A)

USB connector (Type A)

USB port (Type Mini-B) 

USB connector (Type Mini-B)

USB port (Type B)

USB connector (Type B)

USB logo symbol found on cables and jacks designating USB interface.

Cable USB Type A to Type Mini-B   ( male/male )

Connects your computer to any USB device with Type Mini B female port. This cable allows you to connect peripherals such as digital cameras, MP3 players, and storage drives. It is USB 2.0 certified and supports USB speed up to 480Mbps. (Connectors: Type A Male to Mini B Male) 6 ft cable.

Cable USB Type A to Type B   ( male/male )
Connects your computer to any USB device with Type B female port. It allows you to connect peripherals such as printers, scanners, and storage drives. Supports USB speeds up to 480Mbps. (Connectors: Type A Male to B Male) 6 ft cable shown.

USB 2.0 Type-A and USB 2.0 Micro-B

USB 3.0 Type-A and USB 3.0 Type-B

USB 3.0 cables are bright blue and have SS for Superspeed with the logo. A USB 3.0 Type-B male cable connector cannot fit into a USB 2.0 device port. But the 3.0 Type-A male connector will fit into a USB 2.0 host port. So using a 3.0 device with a 2.0 host is possible if you use the 3.0 cable. Your speed will not be 3.0 however, just 2.0 speed because the 2.0 host has only a USB 2.0 controller. The host would need a USB 3.0 controller onboard also in order to get USB 3.0 speeds. 

  USB 2.0 Cables


Pin Name Description
1 VCC +5 VDC
2 D- Data -
3 D+ Data +
4 GND Ground

USB signals are transmitted on a twisted pair of data cables, labeled D+ and D-. These collectively use half-duplex differential signaling to combat the effects of electromagnetic noise on longer lines. Contrary to popular belief, D+ and D- operate together; they are not separate simplex connections.

The USB connector provides a single 5 volt wire from which connected USB devices may power themselves. A given segment of the bus is specified to deliver up to 500 mA. This is often enough to power several devices, although this budget must be shared among all devices downstream of an un-powered hub. A bus-powered device may use as much of that power as allowed by the port it is plugged into. Bus-powered hubs can continue to distribute the bus provided power to connected devices but the USB specification only allows for a single level of bus-powered devices from a bus-powered hub. This disallows connection of a bus-powered hub to another bus-powered hub. Many hubs include external power supplies which will power devices connected through them without taking power from the bus. Devices that need more than 500 mA or higher than 5 volts must provide their own power. 

When USB devices (including hubs) are first connected they are interrogated by the host controller, which enquires of each their maximum power requirements. The host operating system typically keeps track of the power requirements of the USB network and may warn the computer's operator when a given segment requires more power than is available (and will generally shut down devices or hubs in order to keep power consumption within the available resource).

See over 100 audio video hookup diagrams

Audio Video Cable Types

VCR hookup to PC, VHS to DVD

Power usage:

Bus-powered hubs: Draw Max 100 mA at power up and 500 mA normally.
Self-powered hubs: Draw Max 100 mA, must supply 500 mA to each port.


  • Supplied voltage by a host or a powered hub ports is between 4.75 V and 5.25 V.
  • Maximum voltage drop for bus-powered hubs is 0.35 V from it"s host or hub to the hubs output port.
  • All hubs and functions must be able to send configuration data at 4.4 V, but only low-power functions need to be working at this voltage.
  • Normal operational voltage for functions is minimum 4.75 V.


Data: 28 AWG twisted
Power: 28 AWG - 20 AWG non-twisted

Data: 28 AWG non-twisted
Power: 28 AWG - 20 AWG non-twisted

Power Gauge Max length
28 0.81 m
26 1.31 m
24 2.08 m
22 3.33 m
20 5.00 m

Wire colors:

Pin Name Cable color Description
1 VCC Red +5 VDC
2 D- White Data -
3 D+ Green Data +
4 GND Black Ground

The USB 2.0 spec was developed by a team of seven industry-leading companies, collectively named the USB 2.0 Promoter Group. The group consists of Compaq, Hewlett Packard, Intel, Lucent, Microsoft, NEC, and Philips.

Since Hi-Speed USB 2.0 is now about the same speed as IEEE 1394a, don't they compete?
Hi-Speed USB 2.0 is expected to become ubiquitous on all PC platforms because it is more easily integrated into the core chipsets, at which time it will become the preferred connection for PC peripherals. 

IEEE 1394 (Firewire, i.Link) on the other hand, targets audio/video consumer electronic devices such as digital camcorders, digital VCRs, DVDs, and digital televisions (HDTV). Therefore, the two connections will differ primarily in application focus. USB 2.0 and IEEE 1394, while offering similar data rates, primarily differ in terms of application focus. The USB 2.0 Promoter group expects USB 2.0 to be the preferred connection for most PC peripherals, whereas IEEE 1394's primary target is audio/video consumer electronic devices. Both USB 2.0 and IEEE 1394 are expected to coexist on many consumer systems in the future.

USB 2.0 Specification
The USB 2.0 specification divides USB devices into three categories based on transfer rates:
  • Low-speed devices, such as keyboards and mice, operate at 1.5 Mb/s
  • Full-speed devices operate at 12 Mb/s
  • The new high-speed class of devices delivers throughput of 480 Mb/s - 40 times faster than the USB 1.1 standard

The primary differences between USB 1.1 and 2.0 specifications are the addition of lower-latency 480 Mb/s transfers and improved host software specifications. USB 1.1 compliant devices will not become obsolete because all USB 1.1 devices are compatible with the USB 2.0 standard (they are classified as full- or low-speed devices). 

Universal Serial Bus (USB)

One of the reasons that USB was implemented was to replace existing serial and parallel ports on computers. USB has several advantages for this application, which is why it has been included in most of the new PCs that have been shipped since Windows 98 was released in late June of 1998:

  • It uses a much higher data transfer rate than many common serial data formats.

  • It allows a large number of devices to be attached to a single host USB connector. Up to 127 devices can theoretically be used on a single USB port.

  • It simplifies the connection to external devices. USB supports "plug and play" -- the operator does not need to be heavily involved in the set-up process. When a device is connected to a host's USB bus, it is immediately recognized by the host, dynamically enumerated, and assigned an address by the host. Once the host knows what kind of device has been plugged into it, it interrogates the device to understand how to communicate with it. While a device driver needs to be loaded on the host PC, some operating systems have "generic" drivers embedded in them that will work for some common USB devices such as keyboards.

USB Implementers Forum, Inc. is a non-profit corporation formed by a group of companies that developed the initial USB specification. Among their activities is the development of a testing and certification program for compliance with the USB specification. Before a device can use the USB logo or icon, it must undergo rigorous testing and be certified as USB compliant.

While this compliance testing goes a long way toward ensuring device compatibility, there are no guarantees, however, that all USB certified devices will be able to work together compatibly over a particular USB bus. This is not only because of differences in interpreting and implementing the USB standard and failure by some manufacturers to adhere to the standards, but also because of the rapid development of technology itself. For example, because of the limited bandwidth of the USB 1.x standard, care must be exercised when combining devices compliant with that specification where data receipt is time-sensitive -- such as several devices on one bus that all transfer video simultaneously.

There are several different editions of the USB standard that have been released:

  • USB 1.0, the first edition, was released in January 1996. It supported 1.5 Mb/s (low speed) and 12 Mb/s (high speed) transfer rates. Note that this is Megabits per second and not MegaBytes per second. A percentage of this data rate is reserved for USB protocol overhead, so the actual data transfer is less than the indicated speed. How much less depends on the transfer type and the packet sizes.

  • USB 1.1 was released in September 1998. This edition fixed many of the problems in release 1.0.

  • USB 2.0 was released in early 2000 and has increased the maximum transfer speed by a factor of 14 up to 480 Mb/s. USB 2.0 is backwards compatible with USB 1.x. Although the USB 2.0 specification has been released, operating programs for personal computers did not have USB 2.0 support until about the beginning of 2002.

Windows 95 (and earlier versions of Windows) has no USB support, however a sub-release of Windows 95 (OEM Service Release 2) was issued to computer manufacturers and it added somewhat limited support for the USB protocol. Windows 98 added additional support and fixed some problems that were in the 95 OEM Service Release 2. Windows 98se (98 second edition) released in early June of 1999 had more robust support for USB. Both Windows 2000 and Windows Me released in early 2000 added additional features. Apple Computer's OS 9.0.4 was released late summer of 2000 and added much better support for USB for the Mac. Many problems associated with USB can be solved by using the latest version of the appropriate operating system.

In this article, the term USB includes all the above revisions as a general protocol. However, the operating details described below refer to USB 1.x (both USB 1.0 and 1.1) unless otherwise specified. Also, when a "device" is mentioned here, it is referring to a USB-compliant peripheral. With the release of Windows XP and the computers that can run it, USB is standard and devices can be connected and hot-plugged with automatic recognition by the Operating System.

How USB Works

USB uses a four-wire cable interface. Two of the wires are used in a differential mode for both transmitting and receiving data, and the remaining two wires are power and ground. The source of the power to a USB device can come from the host, a hub, or the device can be "self powered." There are two different connector types on each end of a USB cable. One of these connectors is for upstream communications, and the other for downstream. Each cable length is limited to about 5 meters.

USB has four types of communication transfer modes:
  • control,
  • interrupt,
  • bulk, and
  • isochronous.
Control mode is initiated by the host. In this mode, every data transfer must send data in both directions, but only in one direction at a time. The control mode is used mainly for initialization of devices, but it can also be used to transfer small amounts of data.

In interrupt mode, interrupts do not occur in the usual sense. As in control mode, the host has to initiate the transfer of data. Interrupt mode works by the host querying devices to see if they need to be serviced.

Bulk mode and isochronous mode complement each other in a sense. Bulk mode is used when data accuracy is of prime importance, but the rate of data transfer is not guaranteed. An example of this would be disk drive storage. Isochronous mode sacrifices data accuracy in favor of guaranteed timing of data delivery. An example of this would be USB audio speakers.

The PC host typically has connections for two external USB ports. Each of these two connectors on the PC is actually a connection to a separate root hub inside the PC. If either of the two root hubs needs to have more than one device connected to it, a downstream USB hub is required to expand connections. Hubs are used to add to the number of devices that can be connected to one USB port. They can be considered to be a repeater of sorts and also a controller. When a device is connected downstream of a hub, the hub does the connect detection of the new device and notifies the host.

Hubs can be inside the device itself -- for example, in a keyboard that may have an additional two downstream USB connectors for additional devices. A hub can have a combination of high and low speed devices connected to it, up to a maximum of four additional hubs downstream from itself. A hub's upstream port to the PC must be high speed. The hub acts as a traffic cop, handling communication to downstream devices as either high or low speed. A hub can ignore a downstream device that is not behaving properly. Hubs can be either self-powered or receive power from the USB bus. USB 1.x hubs support both low and high-speed data transfers.

There are several hardware requirements for devices that are placed on the USB bus. Five volts is the nominal supply voltage on the bus. A device that requires 100mA or less can be powered from the host or any hub, provided that the total available power hasn't already been exhausted by other devices. A device on the bus can draw up to 500mA from it. However, not all USB hosts (especially a battery powered PC) or bus-powered hubs will allow a device to draw more than 100mA from the bus. For this reason, a USB device that draws more than 100mA should, in most cases, be self-powered .

A device tells the host how much current is required for its operation. Self-powered devices usually get their power from a separate power supply or batteries. A battery-powered device plugged into the bus can get its power from the bus if it meets the tests above, and it can then switch back over to battery power when it is disconnected from the bus or when the host is shut down. When a device is in suspend mode, it cannot draw any more than 500uA from the bus if it is bus-powered. Also, if a device has not seen any activity on its bus in 3 mS, it needs to go into suspend mode. A host can initiate a resume command to a device that is in suspend mode. A device can also issue a remote wakeup to an inactive host to make it active.

All devices have endpoints, which are memory buffers. An endpoint can be as simple as an addressable single register, or it can be a block of memory that is used to store incoming and/or outgoing data. There may be multiple endpoints inside a device. Each device has at least one endpoint -- "endpoint 0"-- which is used as a control endpoint. It must be able to both send and receive data, but can only communicate in one direction at a time. Typically, when a device receives data such as an Out or Setup command from the host, this data is stored in the endpoint and the device's microprocessor is interrupted and works on this data. When a device receives an In command that is addressed to it from the host, data for the host that is stored in the endpoint is sent to the host.

The host is considered to be the master in most all cases. One exception is when a device issues a remote wakeup to the host as discussed above. There are time limits for both the host and device to respond to each other. For example, if the host requests data from a device using an In command, the device must send the data back to the host within 500mS, in some cases. Depending on the transaction type, the host and/or the device may respond to data received with an acknowledgement. Data transfer involves quite a bit of error-checking and handshaking. The different types of data packets sent and received use different ways to verify correct data transfer.

A logical connection link needs to be set up between the host and a device before a transaction can occur. This connection is referred to as a Pipe. It is set up as soon as possible after a host has recognized a device as being connected. When the host responds to a connect signal from the device, one of the parameters that is sent to the host is the device's required data transfer type and speed. The host can refuse to establish a Pipe if the host does not have enough bandwidth to support the device's request or if its power requirements cannot be met. The device at its discretion can lower its requested data rate and try again until the host accepts it and initiates a Pipe.

When a device is connected, it also sends to the host descriptor information on the types of endpoints in the device, the type of data transfer it uses, size of data packets, endpoint addresses within the device, and if used, the time required between data transfers.

The following describes a typical data flow for a device when it is initially plugged into a host's bus while the host is active. Remember that the host has an internal USB hub, and additional hubs may be connected downstream from the host's hub.

  1. The host recognizes that a device has been attached to one of its USB hubs.

  2. The host sends a Get_Port_Status request to the hub to find out more about what has been plugged in. 

  3. After receiving a response from the hub, the host issues a Set_Port_Feature command in which the hub issues a reset over the data pair but only to the newly connected device on the USB bus.

  4. The host then checks to see if the device has come out of the reset state by issuing a Get_Port_Status command to the hub. 
  5. The hub now detects the device's speed by using the resistive dividers that are attached to the USB bus. The hub sends the speed of this device back to the host.

  6. The host then sends a Get_Descriptor command to the hub in which the hub gets the packet size needed from this particular device and sends the result back to the host.

  7. The host now issues a Set_Address command to the hub which sends this information to the device. The device in turn acknowledges the command back through the hub to the host and sets up this address internally.

  8. To learn more about this device, the host sends a Get_Descriptor command to the address that the device has been given. The information that is returned to the host consists of various details of the device that the host needs to know for its operation. These queries by the host continue two more times to retrieve all the information needed.

  9. Based on the information received from the device, the host determines the best device driver to use for communications with it.

  10. The device driver in the host now takes over by requesting a Set_Configuration command. There can be several configurations for one device, and the device driver determines which to use based on information received from the device in response to the Get_Descriptor command.

  11. The device is now ready for use.

USB On-The-Go

USB On-The-Go icon

USB On-The-Go (OTG) allows two USB devices to talk to each other without requiring the services of a personal computer. USB OTG retains the standard USB host/peripheral model, where a single host talks to USB peripherals. OTG introduces the dual-role device (DRD), capable of functioning as either host or peripheral. Part of the magic of OTG is that a host and peripheral can exchange roles if necessary. To add OTG dual-role capability, the transceiver must be augmented to allow the OTG device to function as either host or peripheral. 

Before OTG, the concept of an embedded host was already established in the USB world. Instead of duplicating the full UHCI/OHCI USB controllers and drivers built into personal computers, most embedded host chips provide limited hosting capabilities. This makes them better suited to the embedded environment than to the PC with its huge resources and infinite capacity for drivers and application software.

In addition to requiring a dual role peripheral/host USB controller, OTG requires additional circuitry to support two new protocols, called HNP and SRP. In OTG nomenclature, the initial host is called the A-Device, and the initial peripheral is called the B-Device. The word initial is important. Once connected, OTG dual-role devices can exchange roles, host and peripheral, using the new Host Negotiation Protocol (HNP). The cable orientation determines the initial roles. Dual-role devices use a new receptacle called the mini-AB. The mini-A plug, the mini-B plug and the mini-AB receptacle add a fifth pin (ID) to give different electrical identities to the cable ends. This ID pin is connected to ground inside the mini-A plug and left floating in the mini-B plug. The OTG device receiving the grounded ID pin is the default A-device (host), and the device with the floating ID pin is the default B-Device (peripheral).

To understand the need for HNP and host/peripheral role reversal, the Figure 3 example shows two dual-role devices, a PDA and a printer. The PDA has a printer driver inside. The two devices are connected with the new OTG cable as shown, making the printer the default host (A-Device) and the PDA the default peripheral (B-Device). But this is backwards. The PDA, which has the printer driver, needs to act as USB host to the printer, which contains no driver. Rather than bothering the user by asking for the cable to be reversed, HNP allows the roles to be reversed automatically and silently.

Wireless USB

Wireless USB is the new wireless extension to USB that combines the speed and security of wired technology with the ease-of-use of wireless technology. Wireless connectivity has enabled a mobile lifestyle filled with conveniences for mobile computing users. Wireless USB will support robust high-speed wireless connectivity by utilizing the common WiMedia MB-OFDM Ultra-wideband (UWB) radio platform as developed by the WiMedia Alliance.

UWB technology offers a solution for high bandwidth, low cost, low power consumption, and physical size requirements of next-generation consumer electronic devices.

  • Wireless USB is the first high-speed wireless personal interconnect technology to meet the needs of multimedia consumer electronics, PC peripherals, and mobile devices.
  • Wireless USB will preserve the functionality of wired USB while also unwiring the cable connection and providing enhanced support for streaming media CE devices and peripherals.
  • Wireless USB performance is targeted at 480Mbps at 3 meters and 110Mbps at 10 meters.

Columbia ISA Audio Video
Empowering consumers through information