USB Component  Version 6.16.0
MDK Middleware for USB Device and Host Communication
USB Network

The physical USB network is implemented as a tiered star network with one host (master) and several devices (slaves).

The USB Host provides one attachment port. If more peripherals are required, connect a hub to the root port to provide additional connection ports. The USB network can support up to 127 external nodes. Due to timing constraints for signal propagation, the maximum number of tiers allowed is seven:

  • One tier for the host (bus master).
  • Six tiers for hubs and devices.
Tier Network

USB devices are divided into device classes:

  • Hubs provide additional attachment points and simplify USB connectivity from the user perspective. Each hub converts a single attachment point into multiple attachment points referred to as ports.
  • Functions provide capabilities to the system for transmitting or receiving data and control information. Each function contains configuration information describing the device capabilities and resource requirements.
  • Compound Devices are physical packages that implement multiple functions and include an embedded hub. A compound device appears to the host as a hub with one or more non-removable USB devices.
  • Composite Devices support more than one class and thus, provide more than one function to the host.

Examples of functions:

  • A human interface device such as a mouse, keyboard, tablet, or game controller.
  • An imaging device such as a scanner, printer, or camera.
  • A mass storage device such as a CD-ROM drive, floppy drive, or DVD drive.

The logical USB network appears as a star network to the developer with the host at the centre. Hubs do not introduce any programming complexity and are transparent as far as the programmer is concerned. An USB device will work the same way whether connected directly to a root-hub or whether connected via intermediate hubs. All USB devices are available as addressable nodes in this master/slave network. Only the host can initiate a data transfer in the network.

Star Network
  • Only one host exists in any USB system.
  • Only functions can be enabled in tier seven.
  • Compound devices occupy two tiers.