emWin upgrade     Trade-In program     Web shop



          Low memory usage

          Easy configuration



emUSB-Host, SEGGER’s USB host software stack, implements full USB host functionality, including external hub support, and optionally provides device class drivers. It enables developers to easily add USB host functionality to embedded systems. 
The software stack complies with the USB v1.1 and USB v2.0 specifications. It supports all transfer modes (control, bulk, interrupt, isochronous) at low, full and high speed. USB pipe management and extended error recovery mechanisms required for reliable operation are implemented internally. 
The modular design enables applications to either access the USB host programming interface directly, or to use APIs exposed by class drivers. At its upper edge a class driver typically attaches to an operating system module such as a file system. 
The stack can handle multiple devices and hubs simultaneously and fully supports hot plugging of devices and hubs. The programming interface supports dynamic device enumeration and identification.


  • ISO/ANSI C source code
  • High performance
  • Small memory footprint
  • No configuration required
  • Runs out-of-the-box
  • Control, bulk and interrupt and isochronous transfers
  • Very simple host controller driver structure
  • USB Mass Storage Device Class available
  • Works seamlessly with embOS and emFile (for MSD)
  • Support for class drivers
  • Support for external USB hub devices
  • Support for devices with alternate settings
  • Support for multi-interface devices
  • Support for multi-configuration devices
  • Royalty-free

emUSB-Host stack

SEGGER's USB host stack designed to work on any embedded system with a USB host controller. Bulk communication along with all other transfer modes is supported. All commonly used standard device classes are supported. USB trees with multiple hubs are supported as well.


Component Description
USB protocol layer

emUSB-Host Communication Device Class component

HID emUSB-Host Human Interface Device Class component

emUSB-Host Mass Storage Device Class component

Printer emUSB-Host Printer component
FT232 emUSB-Host FTDI UART component
Core layer
emUSB Core The emUSB-Host core is the intrinsic USB stack
Hardware layer
Driver USB controller driver