Books USB: The Universal Serial Bus Books Benjamin David Lunt Buy Available here, Amazon, Kindle version, or your favorite online book source Buy Volume Eight of a series of books on Operating System Design New Item I have a blog about this and other similar items New Item Feedback Please leave feedback about this book Feedback Comments See below for customer comments Comments Facebook Visit my FaceBook page Facebook Errata View the Errata Errata
Please have a look at this page to see if you can help with the next edition. Have a look at my Figure Eight page that shows how to create your own USB Device. Have a look at my ATTiny2313 device that doesn't "hard code" the LED's to the board. You can attach it to a bread board and use it as you please. Please go to the bottom of this page and write a review. Thank you. USB: The Universal Serial BusThis book is for those who are building an operating system, writing embedded code, or just want to learn how to communicate with the USB hardware and attached devices directly through hardware programming. This book will show you how to find and initialize each of the four major USB Host Controllers, set up USB stacks, and communicate with attached devices. It has detailed information and examples of each step required to accomplish this. Detailed information for the UHCI, OHCI, EHCI, and the new Super Speed xHCI controller is easy to follow and understand.

Information Information in the book or on the CDROM may include Information
• quirks of different controllers • quirks of different devices • specific errors and "gotchas" to watch for • step by step instructions to get a device's descriptor(s) • Details and/or C Source code to: • Find a USB controller on the PCI(e) bus using only the PCI hardware. • Find information about the USB controller • Find a device attached • Retrieve the attached device's Device Descriptor • Read from a USB Mass Storage Devices • Read from a USB external Floppy Drive • Parse the HID device descriptor • Retrieve Mouse movement • Retrieve Keypress information • Print to a USB printer • Set up and use an External Hub Suggested information you will need prior to reading this book are readily available and may be included on the available companion CDROM, may include: • Specification documents for the UHCI, OHCI, EHCI, and xHCI Host Controllers • USB specification documents versions 1.1, 2.0, and 3.0 • USB HID specification • Knowledge of system programming on an Intel 80x386 based system • Knowledge of the C Language and an available C Compiler • along with other system related knowledge It is not required that you have extensive knowledge of USB or the PCI(e) bridge it resides on. This book explains in detail how to get started, even if you have little or no knowledge of this technology. Amazon now has a "Look Inside" of the first few pages of the book including the Contents showing in a bit more detail what is referenced in the book.
CD Included The Companion CDROM CD Included
The companion CDROM will not be available with the purchase of the book via book outlets and online shopping. However, with any form of proof of purchase[1], the CDROM can be sent to you as an .ISO image via email, or sent as a CDROM via USPS. (A small postage fee may be applied). I can be contacted at fys [at] fysnet [dot] net. [1] A proof of purchase would consist of, but not limited to: - Confirmation email from seller, copied/pasted to a request email to the address above - Image of a register receipt sent as an attachment to the address above - Randomly chosen chapter/page/paragraph/sentence-within-that-paragraph combination (chosen by you) I am just trying "to keep the honest honest". You know, once you have the book, I will send you the ISO. I don't question whether you have it or not. :-) 12 May 2014 I have a small update to the gd_ehci.exe source files. Send me an email asking for the new files using the email address you originally used to request the CD-ROM image or if using a new email address, include the address you originally used within the body of the new email. This way, I will verify the address and no proof of purchase will be needed.
Table of Contents Table of Contents Table of Contents
Introduction Part 1 1. Overview of the USB 2. The PCI Hardware 3. The UHCI Hardware 4. The UHCI Stack 5. The OHCI Hardware 6. The OHCI Stack 7. The EHCI Hardware 8. The EHCI Stack 9. The xHCI Hardware 10. The xHCI Stack Part 2 11. Device Enumeration with the UHCI Stack Frame 12. Device Enumeration with the OHCI Stack Frame 13. Device Enumeration with the EHCI Stack Frame 14. Device Enumeration with the xHCI Part 3 15. Using the USB Mouse 16. Using the USB Keyboard 17. Using the USB Mass Storage Device 18. Using the USB Floppy Storage Device 19. Using the USB External Hub 20. Using a USB Printer Device 21. Using a USB HUB on the xHCI Root Hub 22. Using a USB 3.0 Mass Storage Device Part 4 23. Using a USB Protocol Analyzer 24. The Human Interface Device Appendix A - Disc Contents Appendix B - Included Utilities/Source Code Appendix C - Tables and Figures Appendix D - Notes for all Controller Types/Devices Appendix E - Request Sense Return Data Appendix F - Brief History of USB Appendix G - xHCI TRB Types and Completion Codes Appendix H - USB OTG (On The Go) Appendix I - USB Class Codes Appendix Q - Building a Simple USB Device Appendix X - For More Information Bibliography A more detailed Table of Contents (pdf), stripped directly out of the book.
User Comments User Comments User Comments