emUSB-Web
SEGGER's software library to access web servers on embedded devices via USB bulk communication.

Overview
emUSB-Web is a specialized software library designed to provide web server access on embedded devices via USB bulk communication. This solution eliminates the need for traditional network stacks, making it ideal for systems that require secure and light-weight connectivity without relying on Ethernet or Wi-Fi connections.
Devices can be accessed easily from host PCs running Linux, macOS, or Windows, with no need for additional hardware like displays or keys.
Key features

Web server access via USB bulk without a network stack
emUSB-Web enables secure access to the embedded device's web server using USB bulk communication. This method avoids the need for a network stack, simplifying the system and reducing memory and processing requirements.

Compatibility with existing web pages
emUSB-Web allows the use of the same web pages that are typically used in Ethernet-based products. This means developers can integrate web pages with USB-connected devices without needing to redesign or customize the web interface.

Easy integration and minimal resource usage
emUSB-Web is designed for easy integration into existing embedded systems with minimal setup. It also uses minimal resources, which helps optimize system performance and allows it to run efficiently on devices with limited memory and processing capabilities.
Use cases

Direct connection via USB
Using emUB-Web, devices such as the Flasher Hub-4 can be connected to a laptop via USB, allowing users to access and configure the device through a web browser. This eliminates the need for Ethernet connectivity and provides a simple, secure, and cost-effective solution. With emUSB-Web, users can easily manage device settings and firmware updates with minimal system resources.

USB headsets
Modern noise-canceling Bluetooth headphones often feature a rechargeable lithium battery and a Micro-USB charging port. However, setup can be tricky due to limited controls and the lack of a display. Pairing and managing settings like volume limits can also be difficult.
With emUSB-Web, these settings can be easily adjusted via a web page, providing a simple, user-friendly experience without the need for a manual.

Printers
Web browsers provide an easy way to access important printer information, such as errors, page counts, and toner levels. They also make printer setup more convenient, allowing users to adjust settings like paper type, print quality, and color.
With emUSB-Web, all these configurations can be managed quickly and easily through a web page, offering a simple, intuitive experience without the need for additional software.
How emUSB-Web works
emUSB-Web enables communication between an embedded device and a host PC’s web browser through USB bulk communication. When the emUSB-Web PC application is launched and the embedded device is connected, the browser automatically opens and displays the web content provided by the device.
The emUSB-Web PC application acts as a crucial intermediary by providing the necessary socket interface for data transfer between the browser and the USB device. Since current operating systems (Windows, Linux, macOS) do not support this type of direct data transfer, the emUSB-Web tool is essential for facilitating communication and ensuring smooth operation.
By using USB bulk communication and bypassing the need for a network stack, emUSB-Web offers an efficient, low-resource solution for embedded systems with limited memory and processing capabilities.
Resource Usage
The ROM usage depends on the compiler options, the compiler version, and the CPU used. The memory requirements of the emUSB-Web add-on shown in the tables below have been measured on a Cortex-M7 system.
Add-on | ROM |
---|---|
emUSB-Web | Approximately 500 bytes |
Add-on | RAM |
---|---|
emUSB-Web | Approximately 100 bytes |
Additionally, the resource usage of the emUSB-Device Bulk component, the resource usage of emWeb, and the resource usage of the used real time operating system should be considered.
Requirements
Name | Purpose | Purchasing |
---|---|---|
emUSB-Web | The emUSB-Web application. | emUSB-Device pricing |
emUSB-Device BASE + driver | The emUSB-Device base package providing basic USB functionality. | |
emUSB-Device BULK | Bulk communication for the target and PC. | emUSB-Device pricing |
emWeb | Webserver software. | emWeb pricing |
Try it now
Download the PC application for Linux / macOS / Windows:
Download emUSB-Web PC application (Linux)
Download emUSB-Web PC application (macOS)
Download emUSB-Web PC application (Windows)
Download the emUSB-Web demo for the emPower board:
Download emPower emUSB-Web demo
- Start the emUSB-Web PC application.
- Program the emPower board with the default application using Embedded Studio.
- Connect the HS USB connector to your PC.
- The demo web page will automatically open in the default browser.
Other Eval Packages: emUSB-Web is also available for other boards. Take a look in our download section.
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