A guide for designing and programming small, embedded systems that
access USB devices, this book includes topics such as how embedded USB
hosts differ from USB hosts in PCs, choosing a hardware and programming
platform for a project, understanding USB host programming in embedded
Linux systems, how host applications can access USB devices of all
types, and designing a system that can communicate with both USB hosts
and USB devices. Example code explains how to read and write to files on
drives, get user input from keyboards, communicate over virtual serial
ports and Ethernet bridges, record and play audio and video, print
documents, use a USB display monitor, and access vendor-defined devices
of any type. The example code runs on embedded Linux systems, including
the popular BeagleBoard-xM open development board. This book is a
companion to USB Complete.