USB In A Nutshell | Craig Peacock

Craig Peacock; USB in a NutShell; 2010; pdf: hackervoice , cdn.
Teaser: Making sense of the USB standard

Mentions

  • The document was written
    • Before USB 3.0
    • Before USB 2.0 was ubiquitous in desktop gear.
  • udev
    • USB requires root privileges.
    • The device file may group writable.
    • In the file /lib/udev/rules.d/99-device.rules.
      SUBSYSTEM=="usb", ATTRS{idVendor}=="VENDOR_ID", ATTRS{idProduct}=="PRODUCT_ID", GROUP="GROUP_ID", MODE="0660"
  • lsusb
    See
    $ rpm -q -f /usr/bin/lsusb
    usbutils-007-1.fc19.x86_64
  • USB 2.0 Specification

    • Chapter 8 Protocol Layer.

Concepts

  • Versions
    • USB v1.1
    • USB v2.0
    • USB v3.0
  • Speeds
    • USB v1.1 defined
    • Low Speed => 1.5Mb/s
    • Full Speed => 12Mb/s
    • High Speed => 480 Mb/s
  • 4 wire bundle
    • +5V
    • GND
    • 2x differential signal
  • USB Host controls the scheduling and manages bandwidth.
  • 127 devices per USB bus (USB Host/Port/Controller)
  • Device identifiication
    • Vendor ID (VID)
    • Product ID (VID)
  • Signalling
    • Non-Return-to-Zero Invert (NRZI) encoding
    • sync field
  • Universal Serial bus (USB) Organization
    • Licensing & Logo program
    • Assigns the Vendor ID vendor
    • No reserved “test”, “hobbyist” or “local” vendor id.
  • Transfer Modes
    • Control
    • Interrupt
    • Bulk
    • Isochronous
  • Cpmmectprs
    • Type A faces upstream
    • Type B faces downstream
    • Yet with OTG, the nost side is negotiated
      • Mini-A Male
      • Mini-A Female
      • Mini-AB Female
    • USB v2.0 Errata
      • Mini-B Female

Connectors

USB Connectors Type A and Type B

Specifications

Promotions

  • Drive It Yourself: USB Car; Ben Everard; In Linux Voice; 2015-03-20.
    easer: Ever wondered how device drivers are reverse engineered? We’ll show you with a simple yet complete example

Via: backfill

Comments are closed.