Close or Esc Key

Arduino Projects   |   Raspberry Pi   |   Electronic Circuits   |   AVR   |   PIC   |   8051   |   Electronic Projects

USB (Universal Serial Bus): An Overview

Written By: 

Bijal Parikh




 Communication in USB



While Communication in USB we consider three parts-

a) Host which can be a Computer / PC/ laptops

b) USB cable and connector

c) Peripheral devices eg. Keyboards, mouse, audio player etc


USB systems consist of a personal computer (PC) known as host and multiple peripheral devices like mouse, keyboard, and audio system. The host itself contains two components, the host controller and the root hub. A host controller is a hardware component that is contained in a host computer. The Host controller converts the data in the language understandable to the OPERATING SYSTEM and also manages communication on the bus. The USB host controller has an embedded hub called the root hub. A hub is a common connection point that allows multiple devices to connect in the network. A hub contains multiple ports. The root hub connects the host controller(s) to the peripheral device and acts as the first interface layer to the USB in a system. The ports that are visible at the system's back panel are the ports of the root hub.  These ports are part of the root hub and in turn can be connected to external hub thereby increasing the number of USB devices which can be connected to host. An external hub can be used to extend the connections to the maximum of 127 devices.

Whenever a USB device is connected or disconnected it is first detected at the root hub which in turns passes information to the host controller. USB is a half duplex protocol where all data is passed via a two wire interface called D+ (D plus) and D- (D minus).


The host is responsible for the following tasks:

1.Detect attachment and removal of USB devices

2. Provide and manage power to attached devices

3. Monitor activity on the bus and initiate the process of enumeration

4Manage data flow between host and devices.



When we discuss data transfer across the USB we always use the vantage point of the host for reference. For example, if there is an IN transfer that means the host is going to receive the data. An OUT transfer means the host is going to transmit data.



Very Useful...

Very Informative.

Many thanks for sharing the information.. It's so valuable.

thanks alot, now i came to know how mouse and pendrive can be sensed and communicated.

give me a code about usb 2 wire interface communication