Skip to main content
  • 产品
  • Evaluate our Software
  • 下载
  • Free Utilities
  • 购买
  • 支持
  • 关于我们
  • Search
    • Contact Us
    • Forum
    • Knowledge Base
    • Newsletter
    • RSS
  •   工作机会
  •   视频
  •   永续性
  • emUSB-Device
  • CDC-NCM Class
  • Technology
  • Add-Ons

CDC-NCM class

Contact us
Downloads
Documentation
SEGGER emUSB-Device
  1. 1.Overview
    1. 1.1.Typical Applications
    2. 1.2.Key features
  2. 2.Application Samples emUSB-Device CDC-NCM Class
  3. 3.Components

Overview

The most noteworthy application is a USB-based webserver. The USB webserver allows users to configure their device and to view data using a web browser. This saves development costs as there is no need to develop an application for every major operating system which would allow the user to interact with the USB device. The hardware costs can also be reduced as an Ethernet interface is not required.

ethernet 2 usb

Typical Applications

  • Router/gateway
  • USB to Ethernet adapter
  • Configuring a USB device using a web browser

Key features

  • Makes any TCP/IP application available using USB
  • No host driver needed for Linux, macOS or Windows 10 and higher

Application Samples emUSB-Device CDC-NCM Class

USB 2 Ethernet Adapter

USB to Ethernet Adapter

Router

Router/Gateway

Components

emUSB-Device CDC-NCM comes as a complete package and contains the following components:

  • CDC-NCM device class implementation
  • Network interface driver which uses emNet as a TCP/IP stack
  • A sample application demonstrating how to work with CDC-NCM

The CDC-NCM Class is a standard USB class protocol defined by the USB.org consortium.
A TCP/IP stack like emNet is required on the USB device side to handle the actual IP communication.
Any available IP protocol (UDP, TCP, FTP, HTTP, etc.) can be used to exchange data.

Linux kernel versions newer than 2.6.38 have full support for CDC-NCM.
macOS has full support for CDC-NCM.
Starting with Windows 10 since May 2019 (build 18362) no driver is needed, for old Windows versions a third party CDC-NCM driver is required.

One Bulk IN, one Bulk OUT and one Interrupt IN endpoint are required for emUSB-Device CDC-NCM.

emUSB-Device CDC-NCM can be used in combination with other interfaces (Bulk, CDC, MSD, MTP, HID) without any issues.

On a typical Cortex-M CPU running at 120MHz a transfer speed of about 5 MB/s can be achieved when using a high-speed USB connection.

Components required to use CDC-NCM:

  • emUSB CDC-NCM
  • emUSB-Device core
  • emUSB target driver
  • emNet (IP stack)

Resource usage of all components of emUSB-Device

emUSB Device cdc ncm class structure

全球总部

德国: SEGGER Microcontroller GmbH

地址: Ecolab-Allee 5
40789 Monheim am Rhein, Germany
电邮: info@segger.com
电话: +49-2173-99312-0
传真: +49-2173-99312-28

网点分布

中国:哲戈微系统科技(上海)有限公司

地址: 中国上海市闵行区秀涟路133号
大虹桥国际A 栋218室
邮编201199
电邮: china@segger.com
电话: +86-133-619-907-60

通过ISO 9001认证

ISO 9001

30多年的嵌入式行业经验

First-class embedded software tools since 1992
  • 版本说明
  • 免责声明
  • 隐私策略
  • 沪ICP备2022005181号
  • 沪公网安备 31011202014525号
© 2025 SEGGER - 版权所有.

您即将离开 segger.cn 而访问境外网站,是否继续?