emUSB-Host

The USB Host Stack for Embedded Systems

Supports all USB transfer types and speeds (control, bulk, interrupt, isochronous)

Manages multiple devices and hubs with full hot-plug support

Reliable and modular architecture with internal pipe management and error recovery

Key Features

reli

Reliability

emUSB-Host implements internal USB pipe- management and extended error-recovery mechanisms. These ensure reliable and consistent operation.

Furthermore, sophisticated test procedures ensure quality and dependability for any situation.

plug-play-setup

Plug-and-Play Setup

Setting up emUSB-Host is as easy as plug-and-play. New devices are automatically detected and enumerated, and respective target applications notified of their presence.

Device removal is just as simple, and emUSB-Host even ensures that all transfers are cancelled, before "cleaning up" afterwards. Integration is hassle free, as enumeration is handled in the application.

versatility

Versatility

emUSB-Host supports a wide range of USB classes and devices - even proprietary third-party classes. For proprietary USB vendor-class-specific implementations, the dedicated "USB vendor class component" can assist.

Connecting multi-interfaces devices is trouble free, as each interface has a dedicated class handler.

Use Cases

Apps can dynamically extend a host's capabilities or enable customization by manufacturers, OEMs, and end customers. Use cases include test apps, communications (web server, customization), automation, and many more.

Device Control Hub

emUSB-Host host can function as a device control hub by working together with other SEGGER products, such as Flasher Hub-4, Flasher Hub-12 and Flasher Compact.

device_control_hub

Point-of-Sale Peripherals

emUSB-Host is used in commercial and retail environments to enable connection to point-of-sale peripherals such as scanners, cash-register drawers, card readers, and more.

point_of_sales

PC and Multimedia Perpherals

emUSB-Host enables connection with a wide range of PC peripherals, including webcams, mice, keyboards, speakers, printers, modems, docking stations, and more.

computer

Components

SEGGER's USB Host stack works on any embedded system with a USB host controller. All transfer modes, commonly used standard device classes, and USB trees with multiple hubs are supported.

emUSB-Host consists of three layers : A driver for hardware access, the core, and at least one USB protocol layer. SEGGER recommends purchasing emUSB-Host as a complete bundle by selecting the emUSB-Host PRO package. This includes support for the most common use cases, such as human interface devices for user interaction, USB sticks for exporting and importing data, printer support, and serial-communication support.

Communication

CDC

These protocols provide access to COM port devices and allow device-to-device communication via USB. They also enable communication for mobile networks such as GSM, 3G, LTE, and cable-based network modems.

LAN

emUSB-Host LAN provides support for a multitude of ethernet-over-USB adapters, which enable network access for any embedded system with a USB host.

Multimedia

Audio

Audio protocol enables communication with any Audio

MIDI

MIDI protocol is for music devices using the MIDI interface via USB. Devices here include MIDI controllers, MIDI sequencers, drum computers, instruments, effect units, samplers, and synthesizers.

Peripheral

HID

Human Interface Device protocol enables use of (custom and vendor-specific) input devices, such as keyboards, mice, trackballs, and touch controllers.

Printer

Printer protocol covers handling of output devices, such as printers and plotters.

Smart Card

CCID

Chip Card Interface Device protocol allows enumeration and communication with any CCID compatible USB device, such as a smart-card reader.

Storage

MSD

Mass Storage Device protocol is used to obtain access to one or more storage mediums.

MTP

Media Transfer Protocol is used to transfer files to and from storage devices.

UART Converter

CH34X

CH34X protocol offers compatibility with a wide range of WCH CH34x devices.

CP210X

CP210X protocol offers compatibility with a wide range of CP201x devices.

FT232

FT232 protocol offers compatibility with a wide range of FT232 devices.

Vendor

Vendor / Custom

Vendor protocol enables detection and communication with any device, typically those running a custom or proprietary protocol.

Drivers and Supported Controllers

emUSB-Host has no hardware dependencies; these are encapsulated through a hardware abstraction layer called a driver. 

In order to manage the number of drivers required, emUSB-Host has a flexible driver concept that supports almost all host controllers on the market. A complete list of currently supported drivers is available below. If a controller is not listed, it can be added by contacting SEGGER customer support.

emPower-USB-Host+

emPower USB Host Board

emPower-USB-Host+ is a low-cost board for applications that require two USB-Host ports in a simple and streamlined design. SEGGER software such as emUSB-Host, emLoad and embOS is ready to run on the board.

The board is accessible via debug probe and use of J-Link OB on the board.

Performance

Performance metrics for read and write speeds, based on system configuration.

Licensing

The software is available under various embedded software license models and can be delivered as source code. All commercial licenses are based on a one-time payment, are royalty-free, and include six months of updates and support from SEGGER’s Embedded Experts.
There are no subscription fees, ensuring predictable and fixed costs over the entire product lifetime.
For non-commercial use, evaluation, and educational purposes, the software is provided under SEGGER’s Friendly License.