Continue to Site

Welcome to

Welcome to our site! is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

usb device detection by the host

Not open for further replies.

wild roze

Member level 2
Jul 8, 2011
Reaction score
Trophy points
Activity points
im learning the usb . but i couldn't understand one portion ie, the detection of the usb device .
when we connect a device to port , how the host recognizes that a device is connected .
i want know the hardware technic of that process .
anybody pls help me ....

As a first step, resistors connected to D+ and D- signal a low speed or full speed device. After that, communication through USB data lines is started. Review the USB specification (from or a tutorial. Many informations are available from this site **broken link removed**

but i didn't get the data that i hav expected from the link u hav given.
i need the device detection process , i mean what circuitry will recognize the device detection doing wat ?

It's all in the USB specification. See USB Spec 2.0 Clause 7.1.5 Device Speed identification

Here is good seminar video ..............
Free Fundamentals Course from Silicon Laboratories
Fundamentals of USB

A USB host detects the speed of a USB slave device by sensing the status of the two USB data lines.
The two data lines are commonly referred to as the D+ and D- lines. The USB master has very weak (15K) pull-downs on both the D+ and D- line. The slave device will have a relatively strong (1.5 K) pull-up on one of these two lines. If the slave pulls D+ high, it indicates the slave is a high-speed USB device (12 Mb/s). If, instead, the slave pulls D- high, then it indicates the slave can only sustain low speed USB data rates (1.5 Mb/s).
These data line pull-ups also serve another function. When the USB host detects that both data lines are low, it assumes nothing is attached. This is referred to as a "disconnect" condition in the USB specification. As soon as one of the data lines is pulled up, the host assumes that a new slave has been plugged in, and it goes out and tries to configure it. This will be recognized as a "connect" condition by the USB host or hub.

---------- Post added at 20:39 ---------- Previous post was at 20:36 ----------

**broken link removed**
USB in a NutShell - Chapter 2 - Hardware
**broken link removed**
the links both of you given was superb .. i got all those datas that i xpectd .
my problemo solvedddd

universal serial bus fundamentals

i would like to know how long does it take to study a usb except programming .
my boss told me to study that with in 6days . is it possible ?

Threads merged, no need to start a new thread for questions with similar content [alexan_e]

Re: universal serial bus fundamentals

Basically yes, depending on your reading skills. I think, you already got a lot of literature suggestions.

i guess for me it would definitely take 2 weeks . m going through the descriptors nw.
Last edited:

I agree, that there are different levels of understanding. To e.g. fully understand the USB enumeration process, you preferably want to observe it in a real hardware setup, having either a hardware USB monitor or a software monitor running on the PC. Descriptors have different complexity depending on the involved device type.

But is it a good idea to say it's all too much? I would rather say: I'll do it and focus on the basic things. If you say 2 weeks, you'll get the same problem on a higher level, I guess.
Not open for further replies.

Part and Inventory Search

Welcome to