Skip to main content
  • Products
  • Software evaluation
  • Downloads
  • Free utilities
  • Purchase
  • Silicon Vendors
  • Support
  • About us
  • Blog
  • Forum
  • Search
  • Jobs
  • Newsletter
  • Blog
  • Contact
  • Shop
  • emUSB-Device

    emUSB-Device

    High-performance USB-device software

    Contact us
    Downloads
    Documentation
    Icon for emUSB-Device the embedded USB stack by SEGGER
    1. 1.Overview
    2. 2.Key features
      1. 2.1.Compliance and compatibility
      2. 2.2.A small memory footprint
      3. 2.3.Support for any speed
    3. 3.Use cases
      1. 3.1.IP-over-USB
      2. 3.2.Vendor-specific devices
      3. 3.3.Human-interface devices
    4. 4.Components
      1. 4.1.Ethernet communication
      2. 4.2.Mass storage
      3. 4.3.Serial communication
      4. 4.4.Multimedia
      5. 4.5.Other
    5. 5.Drivers and supported controllers
    6. 6.Licensing

    Overview

    emUSB-Device is high-performance USB-device software that is specifically designed for embedded systems. It is written in ANSI C code and enables easy integration of USB functionality into an embedded system. Multiple standard device classes are provided, which allow a system to behave as though it were a standard USB device, as well as ensure that it can communicate with any host (Windows, Linux, and MacOS). 

    Some examples of supported standard USB devices include mass-storage devices, keyboards, mice, printers, speakers, modems, RS232 serial adapters, and network adapters. Furthermore, proprietary protocols may be implemented using emUSB-Device's Bulk class. Multiple classes can be combined as needed to form a composite device with multiple interfaces that can be used simultaneously.


    Key features

    Compliance and compatibility

    emUSB-Device is compliant with USB 1.1, USB 2.0, and USB 3.0, ensuring broad USB-device compatibility across a wide range of application scenarios. This ensures not only compatibility and interoperability, but also performance, flexibility, potential cost savings, a reduction in cases requiring technical support, and extended device product life. 

    A small memory footprint

    emUSB-Device uses very little memory, a major advantage for developers working with embedded systems. Its small USB stack size means processors can be smaller, and users benefit from more choices in MCUs, compatibility with legacy hardware, and reduced bill-of-materials costs.

    Support for any speed

    emUSB-Device supports all USB speeds, meaning full speed (12 Mb/s), high speed (480 Mb/s), and super speed (5 Gb/s). For developers, this means that one USB stack can be used across a range of products, seamless backward and forward compatibility, optimized performance for each application, hardware scalability, and optimized power efficiency for respective devices.


    Use cases

    IP-over-USB

    emUSB-Device enables device configuration, control, and communication for data retrieval without the need for host-driver installation on a PC. Standard IP protocols (HTTP, FTP, etc.) can run over a USB cable, enabling plug-and-play web-browser access.

     

     

    An illustration depicting a computer screen displaying data and a keyboard, connected to a printer. The printer is ready to produce printed documents, symbolizing the process of printing information from a digital source.
    An illustration features a computer with a line graph on the screen, connected by a cable to a multimeter. The multimeter has a dial and probes attached. The overall theme suggests a relationship between data analysis and measurement tools.

    Vendor-specific devices

    emUSB-Device is customizable for vendor-specific use cases. With features like high-speed data transfer, proprietary control software, and diagnostic tools for devices, it offers impressive levels of both performance and flexibility.

    Human-interface devices

    emUSB-Device can emulate USB devices, such as keyboards, control panels, mice, or custom human-interface devices (HID) devices. In most cases, no drivers are required, which simplifies setup and use.

    An illustration shows a computer connected to a digital scale. The computer displays a webpage with a gauge, while the scale features footprints and a similar gauge. This imagery suggests tracking health metrics or fitness data online.

    Components

    emUSB-Device consists of three layers: a driver for hardware access, the emUSB-Device core, and at least one USB class driver or a bulk-communication component. USB class drivers (MSD, CDC, HID, MTP, RNDIS, IP, and MIDI), a bulk-communication component, and a VirtualMSD component can be combined in any way to suit the requirements of any target USB device.

    USB class drivers and hardware drivers are separate tailorable packages that can be combined and ordered individually. SEGGER recommends purchasing emUSB-Device as a complete package by selecting the emUSB-Device PRO package. This package includes support for the most common use cases, such as HIDs for user interaction, file storage and transfer, and serial communication support. The following table shows which modules are part of the PRO package and which are optional. 

    Ethernet communication

    emUSB-Device IP

    Cross-platform IP-over-USB communication

    Read more

    emUSB-Device RNDIS

    Ethernet over USB communication via Remote Network Driver Interface Specification (RNDIS) protocol

    Read more

    emUSB-Device ECM

    Ethernet over USB communication via Communication Device Class (CDC)/Ethernet Control Module (ECM) protocol (CDC-ECM)

    Read more

    emUSB-Device NCM

    Ethernet over USB communication via Communication Device Class (CDC)/Network Control Module (NCM) protocol (CDC-NCM)

    A close-up image of a row of network switches with multiple colorful cables connected. Prominent orange cables stand out among other black and yellow wires, illustrating a high-tech networking setup. The background is slightly blurred, emphasizing the equipment in focus.

    Mass storage

    A person's hand inserts a 64GB memory card into the side slot of a digital camera. The camera has various buttons and a screen visible, indicating it is being prepared for use.
    emUSB-Device VirtualMSD

    Virtual Mass Storage Device (MSD); contains emUSB-MSD

    Read more

    emUSB-Device MSD

    Mass Storage Device (MSD) class

    Read more

    emUSB-Device MTP

    Mass storage via Media Transfer Protocol (MTP)

    Read more

    Serial communication

    emUSB-Device CDC

    Serial communication over USB via Communication Device Class (CDC)/Abstract Control Module protocol (CDC-ACM), typically with RS-232 emulation

    Read more

    emUSB-Device HID

    Human-Interface device (HID) class component (e.g., mouse, keyboard)

    Read more

    emUSB-Device printer

    Printer Protocol class

    Read more

    A person's hand is holding a white computer mouse while the other hand is typing on a sleek, white keyboard. The setup is on a gray desk surface, with a blurred background suggesting a bright, indoor environment.

    Multimedia

    Close-up image of a silver audio control panel featuring various buttons and a prominent volume knob. The knob is round and black, with a small indicator light. The background includes additional smaller knobs for bass and treble adjustments.
    emUSB-Device Audio

    Audio class

    Read more

    emUSB-Device Video

    USB Video class

    Read more

    emUSB-Device MIDI

    Musical Instrument Digital Interface (MIDI) class

    Read more

    Other

    emUSB-Device Bulk

    Bulk class

    Read more

    emUSB-Device DFU

    USB Device Firmware Upgrade (DFU) class

    Read more

    emUSB-Device CCID

    USB Chip Card Interface Device (CCID) class

    Read more

    A hand is holding a credit card above a small card reader on a table. The card reader has buttons and a display screen. The background features a succulent plant in a pot and a coffee cup.

    Drivers and supported controllers

    emUSB-Device supports an extensive range of MCUs with on-chip USB controllers. The driver interface has been designed so that it is possible to use the most common USB device controllers, as well as add drivers for USB controllers that have yet to be supported.

     

    List of drivers and controllers

    Licensing

    A digital graphic promoting a sale with a bold "25% off 2nd seat*" message at the top, and a prominent "FREE Professional Tools" note at the bottom, indicating availability for non-commercial use. The background features a pattern of binary code.

    emUSB-Device is available under various embedded software license models and delivered in object and source-code packages. With a wide range of licensing options, emUSB-Device can fulfill both commercial and technical requirements.

    All licenses are obtained through one-time payments. emUSB-Device is royalty free and is not subscription based, meaning that software is a part of equipment expenses, keeping costs static. emUSB-Device licenses include six months of updates and support from SEGGER's Embedded Experts.

    * 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.

    Friendly License

    emUSB-Device is also available under SEGGER's Friendly License, which allows free-of-charge use for non-commercial, evaluation, and educational purposes. With this license, the product is fully functional and there are no technical limitations. To download the license, please visit https://www.segger.com/downloads/emusb-device/.

     

    Get in touch with us

    Have questions or need assistance? Our Embedded Experts are here to help!

    Reach out to us for:

    • Licensing quotes
    • Technical inquiries
    • Project support

     

    Contact us

    • 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
    © 2026 SEGGER - All rights reserved.