Skip navigation

emUSB-Host Vendor Class

  • Communicate with any device
  • Ideal for custom protocols
  • Supports bulk, interrupt, control and isochronous transfers.
  • High performance, small overhead
  • Small memory footprint in RAM and ROM

The Vendor Class is primarily used to interface devices running a non-standard USB protocol.



About Vendor Class

The Vendor Class allows to enumerate and communicate with any USB device. Typically it is used to connect devices running a custom or proprietary protocol. For example our LAN component uses the Vendor Class API to connect with certain Ethernet-over-USB adapters which use a custom protocol.

Sample Applications emUSB-Host Vendor Class

SEGGER Debug Probe J-Link


Temperature Logger


Software Protection Dongle





Components required to use emUSB-Host Vendor Class:

  • emUSB-Host Vendor Class (included in emUSB-Host PRO package)
  • emUSB-Host core (included in emUSB-Host PRO package)
  • emUSB-Host target driver (One driver is included in emUSB-Host PRO package)
  • Real-time operating system (embOS or other)

Simple user API

  • Notification for newly enumerated devices
  • Read/Write routines for bulk, interrupt, control and isochronous endpoints.
  • Synchronous and asynchronous operations