Skip to main content
  • Products
  • Evaluate our Software
  • Downloads
  • Free Utilities
  • Purchase
  • Silicon Vendors
  • Support
  • About Us
  • Blog
  • Forum
  • Search
  • Jobs
  • Newsletter
  • Blog
  • Contact
  • Shop
  • emUSB-Host

    emUSB-Host
    USB peripherals with embedded devices

    emUSB-Host is a USB host software specifically designed for embedded systems that allows USB peripherals to simply work with embedded devices. It implements full USB host functionality, including external hub support and optionally provides device class drivers. emUSB-Host enables developers to easily add USB host functionality to embedded systems.

    Contact us
    Downloads
    Documentation
    SEGGER emUSB-Host
    1. 1.Key features
    2. 2.emPower-USB-Host
    3. 3.emUSB-Host components
      1. 3.1.Audio
      2. 3.2.CCID
      3. 3.3.CDC
      4. 3.4.CH34x
      5. 3.5.CP210X
      6. 3.6.FT232
      7. 3.7.HID
      8. 3.8.LAN
      9. 3.9.MIDI
      10. 3.10.MSD
      11. 3.11.MTP
      12. 3.12.Printer
      13. 3.13.Vendor
      14. 3.14.Video
    4. 4.Advantages of adding USB host to your hardware
    5. 5.emUSB-Host drivers
    6. 6.Licensing

    Overview

    The emUSB-Host software complies with the USB standard specifications as set by the USB Implementors Forum. It supports all transfer modes (control, bulk, interrupt, isochronous) at all speeds. USB pipe management and extended error recovery mechanisms required for reliable operation are implemented internally. Sophisticated test procedures ensure the reliability and quality of the USB host software.

    emUSB-Host's modular design enables applications to either access the USB host programming interface directly or to use APIs made available via by class drivers.

    emUSB-Host can handle multiple devices as well as hubs simultaneously and fully supports hot plugging of devices and hubs. The programming interface supports dynamic device enumeration and identification.

    Key features

    • Professional USB-Host software for embedded systems
    • Direct support from the product developers
    • Highly portable and uniform API for all supported controllers
    • High performance, small memory footprint in RAM and ROM
    • Simple to integrate into your embedded environment
    • emPower-USB-Host Dual USB platform available

    emPower-USB-Host

    emPower USB Host

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

    Accessing the board with a debug probe can be achieved by using the J-Link OB on the board.

    More information

    emUSB-Host components

    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.

    emUSB-Host consists of three layers. These layers are a driver for hardware access, the emUSB-Host core, and at least one USB protocol layer.

    SEGGER recommends to purchase emUSB-Host as a complete package by selecting the emUSB-Host PRO package. It includes support for the most common use cases, such as handling human interface devices for user interaction, handling USB sticks to export and import data, printer support and serial communication support. The following table shows, which modules are part of the PRO package and which are optionally available.

    emUSB Host components
    ComponentDescriptionemUSB-Host BASEemUSB-Host PRO
    USB protocol layer
    AudioemUSB-Host Audio component
    CCIDemUSB-Host CCID class component.
    CDCemUSB-Host Communication Device Class component.
    CH34xemUSB-Host WCH CH34x USB-to-UART bridge support.
    CP210xemUSB-Host CP210x UART support.
    FT232emUSB-Host FTDI UART component.
    HIDemUSB-Host Human Interface Device Class component.
    LANemUSB-Host LAN component.
    MIDIemUSB-Host MIDI class component.
    MSDemUSB-Host Mass Storage Device Class component.
    MTPemUSB-Host Media Transfer Protocol component.
    PrinteremUSB-Host Printer component.
    VendoremUSB-Host Vendor class component.
    VideoemUSB-Host Video component
    Core layer
    emUSB CoreThe emUSB-Host core is the intrinsic USB stack
    Hardware layer
    DriverUSB controller driver

    Included  One item included Optional

    Audio

    emusb audio

    USB Audio Host class

    The emUSB-Host-Audio class allows audio devices, such as microphones, speakers or musical players to communicate with a USB host target. The class allows to record or play audio through the host.

    Application samples for emUSB-Device Audio

    Microphone

    Microphone

    USB Speaking

    Speakers

    Bluetooth Speaker

    Sound bar

    emUSB device audio headset headphones

    Headset

    USB Soundcard

    USB sound card

    CCID

    emusb CCID bb ns chip on blue background

    CCID class

    SEGGER's emUSB-Host CCID Class provides an easy-to-use interface to handle smart card readers and communicate with smart cards.

    Peripherals compatible with emUSB-Host CCID Class

    card reader card

    Card reader

    card reader nfc 1

    NFC card reader

    cardreader nfc 2

    RFID card reader

    CDC

    emUSB cdc bb ns

    Communication Device Class

    The USB Communications Device Class (CDC) provides access to COM port devices via USB. This enables communication via modems for mobile networks such as GSM/3G/LTE or cable based network modems. Any device which uses CDC for configuration and data transmission, such as a point-of-sale terminal, can be accessed via the CDC class driver as well.

    Peripherals compatible with emUSB-Host CDC

    modem

    Modem

     

    black fax machine

    Fax

     

    pos terminal

    POS-Terminal

    Click here for sample project.

    CH34x

    emusb ft232 bb ns

    WCH CH34x Device Driver

    Many devices typically connected via UART are equipped with USB interfaces that use USB-to-UART converters (also known as USB-to-TTL converters) â€” devices such as the WCH CH34x UART bridge chips, for example. emUSB-Host is capable of easily addressing such devices.

    Peripherals compatible with emUSB-Host WCH CH34x

    USB to UART Converter

    USB to UART Converter

    USB to UART Converter

    CP210X

    emusb ft232 bb ns

    CP210X Device Driver

    Many devices formerly connected via UART have been equipped with USB interfaces using serial to UART converters such as the CP210x USB-to-UART Bridges from Silicon Labs. emUSB-Host is capable of easily addressing such devices.

    Peripherals compatible with emUSB-Host CP210X

    USB to TTL

    CP2102 USB to UART Bridge

    FT232

    emusb ft232 bb ns

    FTDI FT232 Device Driver

    Many devices formerly connected via UART have been equipped with USB interfaces using serial to UART converters such as the FTDI UART and FT-X devices from FTDI. emUSB-Host is capable of easily addressing such devices.

    Peripherals compatible with emUSB-Host FTDI UART

    rs232 adapter

    USB to RS232 Converter

    HID

    embUS hid bb ns

    Human Interface Device class.

    The Human Interface Device class (HID) supports the handling of devices which are used by humans to control the operation of computer systems. The class enables the use of input devices such as keyboards, mice, trackballs, touch-controllers, barcode scanners, joysticks, game controllers, RFID readers. And even devices which do not require direct human control such as digital thermometers, software protection dongles, uninterruptible power supplies.

    Peripherals compatible with emUSB-Host HID

    keyboard mouse

    Keyboard & Mouse

    barcode scanner

    Barcode Scanner

    Click here for sample project.

    touchscreen

    Touch Screen

    industrial joystick

    Joystick

    fingerprint sensor

    Fingerprint Sensor

    rfid reader

    RFID Reader

    3d tracker

    3D Mouse

    trackball

    Trackball

    USV

    Uninterruptible Power Supply

    weighing scale

    Weighing Scale

    LAN

    emusb ethernet bb ns

    Ethernet-over-USB adapter support

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

    Peripherals compatible with emUSB-Host LAN

    USB 2 Ethernet Adapter

    USB to Ethernet Adapter

    Click here for sample project.

    Surfstick

    Internet Stick

    Click here for sample project.

    smartphone

    USB Tethering

    MIDI

    MIDI Synthesizer Icon

    MIDI class

    The USB class protocol for MIDI is used to interact with music devices and studio equipment, such as MIDI controllers, sequencers, drum machines, samplers, effects units, synthesizers, instruments, lighting and recording equipment.

    MIDI devices and instruments compatible with emUSB-Host MIDI

    audio keyboard

    Synthesizer

    Click here for sample project.

    novation Launchpad

    Controller

    effectsunit

    Effects Unit

    MSD

    emusb msd bb ns

    Mass Storage Device Class

    The Mass Storage Device class (MSD) is used to get access to external storage media such as USB-sticks, external hard disk drives and memory card readers.

    Peripherals compatible with emUSB-Host MSD

    memory stick

    Memory Stick

    hard disk

    USB Hard Disk Drive

    card reader

    Cardreader

    MTP

    mtp bb ns

    Media Transfer Protocol

    The Media Transfer Protocol (MTP) can be used to transfer files to and from storage devices like digital cameras or smartphones.

    Peripherals compatible with emUSB-Host MTP

    smartphone

    Smartphone

    camera

    Camera

    Printer

    embUSB printer bb ns icon

    Printer class

    The USB class protocol for printers is used for the handling of output devices, like printers and plotters.

    Peripherals compatible with emUSB-Host Printer

    black printer with paper tray

    Printer

    Vendor

    emUSB bulk ns

    Vendor class

    SEGGER's emUSB-Host Vendor Class provides an easy-to-use interface to devices running custom or proprietary protocols.

    Peripherals compatible with emUSB-Host Vendor Class

    J-Link PLUS

    SEGGER Debug Probe J-Link

    thermostat

    Temperature Logger

    copy protectio dongle

    Software Protection Dongle

    gamepad

    Gamepad

    Video

    emusb video bb ns

    USB Video Host class

    The emUSB-Host-Video class allows video devices, such as webcams to communicate with a USB host target. The class allows to receive video from input devices.

    Peripherals compatible with emUSB-Host Video Class

    webcam

    Webcam

    Advantages of adding USB host to your hardware

    • Low cost: The USB connector and the corresponding components are normally cheaper than alternative communication interfaces.
    • Reliable: The USB protocol contains measures to ensure data integrity. Errors are detected by the sender and data can be retransmitted.
    • Versatile: USB host allows to connect with virtually any other technology. Using a USB host port network connectivity can be added by connecting an Ethernet-over-USB adapter. User input can be added by connecting an external USB display, USB keyboard and USB mouse. Storage capacity can be extended by connecting an MSD stick or hard drive.
    • Fast: Multiple speed modes are provided by the USB protocol to accommodate the application's needs.
    • Expandable: USB hubs can be used to connect multiple devices to a USB host.
    • Easy to use: The end user only has to connect a cable, a USB device is enumerated without the need for user configuration.

    emUSB-Host drivers

    emUSB-Host does not contain any hardware dependencies. These are encapsulated through a hardware abstraction layer, called a driver. In order to manage the number of required drivers, emUSB-Host has a flexible driver concept, that supports almost all host controllers in the market. For a complete list of currently supported controllers, press the button below. If a controller is not listed, please feel free to contact us about adding support.

    List of supported drivers

    Licensing

    emUSB-Host is available under various Embedded Software License models and delivered in source code packages. With a wide range of licensing options, emUSB-Host can fulfill commercial requirements as well as technical requirements. All licenses are one-time payments. emUSB-Host is royalty-free and not subscription-based. This makes the software a part of the equipment expenses, keeping the costs static.

    * Applies only to a second license and any additional license(s) purchased for the same product under the Single Product License and Single Developer License.

    • User manual
    • Online documentation
    • List of downloads
    • Update notification
    • Pricing
    • Support
    • Silicon vendor resources

    Headquarters

    SEGGER Microcontroller GmbH

    Ecolab-Allee 5
    40789 Monheim am Rhein, Germany
    info@segger.com
    Tel.: +49-2173-99312-0
    Fax: +49-2173-99312-28

    Locations

    USA: SEGGER Microcontroller Systems LLC

    Boston area
    101 Suffolk Lane
    Gardner, MA 01440, USA
    us-east@segger.com
    Tel.: +1-978-874-0299
    Fax: +1-978-874-0599

    Silicon Valley
    Milpitas, CA 95035, USA
    us-west@segger.com
    Tel.: +1-408-767-4068

    China: SEGGER Microcontroller China Co., Ltd.

    Room 218, Block A, Dahongqiaoguoji
    No. 133 Xiulian Road
    Minhang District, Shanghai 201199, China
    china@segger.com
    Tel.: +86-133-619-907-60

    ISO 9001 certified

    ISO 9001

    30+ years of experience

    First-class embedded software tools since 1992
    • Imprint
    • Disclaimer
    • Code of Conduct
    • Privacy Policy
    © 2025 SEGGER - All rights reserved.