USB Complete: Everything You Need to Develop Custom USB P... and over one million other books are available for Amazon Kindle. Learn more

Vous voulez voir cette page en français ? Cliquez ici.

Sign in to turn on 1-Click ordering.
Amazon Prime Free Trial required. Sign up when you check out. Learn More
More Buying Choices
Have one to sell? Sell yours here
Start reading USB Complete on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

USB Complete: The Developer's Guide [Paperback]

Jan Axelson
3.7 out of 5 stars  See all reviews (21 customer reviews)
List Price: CDN$ 60.95
Price: CDN$ 38.21 & FREE Shipping. Details
You Save: CDN$ 22.74 (37%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 3 left in stock (more on the way).
Ships from and sold by Gift-wrap available.
Want it delivered Wednesday, October 22? Choose One-Day Shipping at checkout.


Amazon Price New from Used from
Kindle Edition CDN $27.73  
Paperback CDN $38.21  
Join Amazon Student in Canada

Book Description

June 1 2009 1931448086 978-1931448086 Fourth Edition, Fourth edition

This updated edition of the best-selling developer's guide to the Universal Serial Bus (USB) interface covers all aspects of project development, including hardware design, device firmware, and host application software.

Topics include how to choose a device controller chip, how to write device firmware for USB communications, how to cut development time by using USB device classes, and how to write software to access devices that perform vendor-specific functions. Also discussed are hardware interfacing, using bus power, wireless technologies, and USB On-The-Go.

The book presents example code for accessing USB devices using Visual Basic .NET and Visual C# .NET. The example code shows how to detect device arrival and removal and how to transfer vendor-defined data using the human interface device class and Microsoft’s WinUSB driver. Also covered is how to write device firmware to communicate with the USB host.

The Fourth Edition covers USB 3.0 and SuperSpeed and has new information on controller chips, USB classes, power use, and Microsoft’s WinUSB driver.

The author’s website has program code, articles, and other information of interest to USB developers. (

Special Offers and Product Promotions

  • Join Amazon Student in Canada

Frequently Bought Together

USB Complete: The Developer's Guide + USB Embedded Hosts: The Developer's Guide + USB Mass Storage: Designing and Programming Devices and Embedded Hosts
Price For All Three: CDN$ 83.34

Customers Who Bought This Item Also Bought

Product Details

Product Description


"If you want to add the Universal Serial Bus to your repertoire, then this is the book for you." -- Nuts & Volts

An excellent and highly recommended "how to" guide and reference. -- Midwest Book Review --This text refers to an out of print or unavailable edition of this title.

From the Author

A few words about USB developing...

USB is very different from earlier PC interfaces such as the serial (COM) and parallel ports. On attaching to a PC, a device must respond to a series of requests that enable the PC to learn about the device. So every USB device must contain an intelligent controller that knows how to respond to the requests. You can't just connect generic I/O pins to the cable as you can with a parallel port. In the host PC, every device must have a device driver to manage communications between applications and the system’s USB drivers. Applications must communicate with the driver. They can't access a generic port as they can with serial and parallel ports.

For many devices, complying with the standard for the human interface device (HID) class can simplify development. All Windows editions from Windows 98 on support HID communications. This means that you don't have to provide (and ask users to install) a device driver for the PC. The HID class includes standard peripherals such as keyboards and mice, but HIDs are suitable for other uses as well, including instrumentation, robotics, motor control, and data acquisition.

The example HID device firmware in USB Complete is for the Cypress enCoRe series of USB controllers. If you prefer a different controller, my web site has additional examples that are compatible with the host software in the book.

I hope you find the book useful. I welcome any comments you may have.

Jan Axelson --This text refers to an out of print or unavailable edition of this title.

Inside This Book (Learn More)
Browse and search another edition of this book.
First Sentence
Computer hardware doesn't often get a chance to start fresh. Read the first page
Explore More
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index | Back Cover
Search inside this book:

What Other Items Do Customers Buy After Viewing This Item?

Customer Reviews

Most helpful customer reviews
2 of 2 people found the following review helpful
5.0 out of 5 stars Used correctly, a great resource March 10 2004
In order to really get the full value out of this book, you need to understand what it is. It's a conversational book with an easy-to-read style and clear examples. What it is intended to do is explain the hardest-to-understand parts of the USB Standard, fill in common problem areas such as host programming, and get you comfortable thinking about the USB structure. It does not contain every nuance of the USB Standard; in fact, the book would be very confusing if it did. This book is more of a companion or guide to the USB documentation. It's like having an experienced friend nearby to explain things to you in order to get over the rough spots, and recommend hardware and programming tactics that worked for them. Using this book, you can very quickly determine what your target application will require, and zero in on the structures you will have to design as well as the relevant portions of the USB Standard. It helps you to actually *understand* the structure of your application, instead of memorizing routines and not knowing how they really work. I used the first version of this book a while back, and the second version is just as good but with more of today's technology. Oh, and don't cheap out and get the electronic version...the book version is very well laid out and much easier on the eyes. Plus it looks more impressive on the bookshelf. ;-)
Was this review helpful to you?
1 of 1 people found the following review helpful
5.0 out of 5 stars Essential USB Resource July 28 2003
Jan's book, USB Complete, is an essential resource to study to gain an understanding of the Universal Serial Bus. The book covers the major topics of general USB operation, as well as the implementation of USB in a Personal Computer host, and the design of USB peripherals. The book should be used as a key development tool to implement a USB design.
Jan provides source code examples of interfacing to a USB device, using a slow step-by-step approach to make it easier to grasp the often obscure details of the Windows USB API. The examples are presented simultaneously in Microsoft Visual Basic and Visual C. The examples are not a rehashing of USB API documentation, but a clear presentation of code born from actual development efforts.
Frankly there is no single source of USB information presented in a way that is easier to read and comprehend.
Was this review helpful to you?
1 of 1 people found the following review helpful
4.0 out of 5 stars Not exactly complete, but good enough April 11 2002
When it comes to developing USB hardware, there aren't many off-the-shelf-how-to books. This is the only one I am aware of. As a result, it wins by default.
Axelson starts by covering the pros and cons of USB, and would be perfect for explaining to a non-technical manager. It covers the USB protocol, and even covers the Cypress USB development kit, which can be used to develop a USB peripheral.
Simply stated, this book won't make you a USB genius, but if you are charged with developing a USB device from scratch, it can compress the time required to ramp up. It can save you hours of frustration.
Unfortunately, reading this book won't make host (PC) programmers into USB geniuses, but it does explain USB reasonably well.
Was this review helpful to you?
1 of 1 people found the following review helpful
2.0 out of 5 stars USB Complete or is it? Nov. 27 2002
The author does a great job reviewing the details of USB. However, if your intentions are like mine to design some hardware and transfer data from the device to the PC, I think your pretty much out of luck.
I understand this is a very hard subject but the author does not include sample drivers that allow you to communicate with a generic part, let alone, helping you develop a driver for your application.
I think this book is only good to get a sense only for what USB is and how it works. Unfortunately, blocks diagrams do not solve anyones problem, and knowledge-hungry individuals such as myself find these books rather useless. Buy the book only if you have no clue what USB is, else do not waste your money.
Was this review helpful to you?
1 of 1 people found the following review helpful
5.0 out of 5 stars You need this book and the online examples Jan. 21 2002
Depending on what USB component you are using and what language you are writing your PC software with, this book may be the ultimate compilation of know-how.
The online samples are very efficient, but require you to use a Cypress USB controller which unfortunately comes a little short of a real µprocessor and only supports slow USB.
The samples get you up and running very fast, but only access the device through the HID, which may not be convenient for all the applications.
Bravo for this book. Let's hope that the next edition has good samples for bulk and isochronous transfers, as well as a guide on custom USB driver development.
Was this review helpful to you?
1 of 1 people found the following review helpful
If you don't know anything about USB and you would like learn it from ground up,this book can be one of your best choices.Even if you're familiar with USB,it can still be an indepth reference for you.
Beside the exact technical points,method of discussion which Jan uses,makes you aware to the way that you pass to understand each chapter.
I've some experiences about old interfaces like serial and parallel port during many projects,but after reading this book,I didn't hesitate to jump into USB world.I'm sure this book can be a reliable escort for me.
Was this review helpful to you?
1 of 1 people found the following review helpful
5.0 out of 5 stars Up and running thanks to this book! Oct. 9 2003
I had a device I needed to control via computer and just couldn't get the serial port to do the job. Bought this book and was up and running in no time with very little starting knowledge of using USB. This book was awesome and went all the way from the basics to the in depth info I needed to complete my project. Buy the hardcopy and save yourself the headache of trying to get an ebook to work.
Was this review helpful to you?
Want to see more reviews on this item?
Most recent customer reviews
4.0 out of 5 stars Note to previous reviewer - "he" is a "she"
This isn't the first time I've seen this assumption, but having been on mailing lists with Ms. Axelson, I can tell you Jan is a she, not a he, as the previous overly negative... Read more
Published on April 28 2004 by rwizard
1.0 out of 5 stars Sorry excuse for a book titled "complete"
This book (and his others) do not cover things from a "complete" standpoint. If you are looking for a book to help you design hardware from scratch THIS IS NOT IT. Read more
Published on March 26 2004
4.0 out of 5 stars Good overview
This book provides a good overview of USB and in fact it answered all my questions, even though it does not cover the chip I've decided to use. Read more
Published on March 8 2003 by Erik Kauppi
4.0 out of 5 stars I didn�t have any information about USB .
I didn't have any information about USB .So I have started my studies with this book and I have studied several chapter of it. Read more
Published on Feb. 19 2003 by Shahram Zarif
4.0 out of 5 stars I didn�t have any information about USB .
I didn't have any information about USB .So I have started my studies with this book and I have studied several chapter of it. Read more
Published on Feb. 19 2003 by Shahram Zarif
1.0 out of 5 stars What is USB
After reading this book, USB is still a mystery.
USB was not explained in detail and there did not seem any logical organization. Read more
Published on Dec 23 2002 by FERGUS DIXON
5.0 out of 5 stars Extremely Helpful.
We used USB Complete as our main source of USB information while developing our first USB-controlled audio product. Read more
Published on Oct. 28 2002 by G. Kapes
5.0 out of 5 stars Comprehensive
No where have I found a book that includes so much information on the subject. Really a great resource.
Published on Oct. 17 2002 by Tyler Durden
Search Customer Reviews
Only search this product's reviews

Look for similar items by category