USB CDC (ECM, NCM, ACM, OBEX) - USBware Components

USB CDC / USBnet   (ECM, NCM, ACM, OBEX, RNDIS)

» A part of USBware: Embedded USB Software solution
Jungo offers USB CDC-ACM (Abstract Control Model), CDC-ECM (Ethernet Networking Control Model), CDC-NCM (Network Control Model), OBEX (Object Exchange) and WCM-Device Management USB class and function drivers, which provide a complete embedded solution for network connectivity between USB hosts and USB peripherals.

The CDC specification has been developed to answer the need of telecommunication services (devices that have traditionally terminated an analog or digital telephone line), and medium speed networking services ("Always Connected" LAN/WAN media types) and is ideal for devices such as, Mobile Phones, Analog/ADSL/Cable Modems, analog/digital telephones Wireless Terminals, Ethernet Adaptors as well as Legacy and other network devices.

The CDC USB Driver support the following subclasses: ECM, NCM, ACM, OBEX, Device Management.

The CDC USB Class Driver supports the host-side communication with CDC USB peripherals, while the CDC USB Function Driver provides the required device-side USB CDC implementation for such peripherals.

Background
The Universal Serial Bus (USB) provides an expandable, hot-pluggable Plug and Play serial interface that ensures a standard, low-cost connection for peripheral devices such as storage devices, keyboards, joysticks, printers, scanners, modems, and digital cameras.

A USB Class Driver is a Logical Device Driver (LDD), which controls USB devices that provide common functionality and are implemented in compliance with a specific device class.

A USB Function Driver is a driver implemented within a device in order to handle the device-specific functionality of a standard or custom USB device function. This driver provides the counterpart of the USB Class Driver.

A CDC USB (USBnet) Class/Function Driver is a USB class/function driver that supports the USB Class Definition for Communication Devices as well as the CDC Subclass for Wireless Mobile Communication Devices.

Jungo's USB CDC Class Driver and USB CDC Function Driver are fully functional USB communication class/device drivers (respectively). The CDC Class Driver is part of Jungo's USB Host Stack, which offers a complete solution for USB host communication for embedded systems that do not natively support USB. The CDC Function Driver is part of Jungo's USB Device Stack, which enables software and device manufacturers to incorporate standard USB device/function connectivity into their embedded devices.

CDC-ACM (Abstract Control Model) allows any communication device to provide a serial communication interface (e.g modem devices that send and receive AT commands).

CDC-ECM (Ethernet Networking Control Model) offers device manufacturers to interface as a standard NIC (Network Interface Card) device. This interface is usually adopted by high speed LAN networking devices allowing high speed Ethernet data transfer over USB.

CDC-NCM (Network Control Model).

OBEX (Object Exchange) is compliant with the Wireless Mobile Communication OBEX function model, supporting OBEX applications over USB.

WMC-Device Management is compliant with the Device Management function model, supporting a minimal AT command based control model.

RNDIS - provides CDC like communication capabilities on Windows PCs supporting the Microsoft RNDIS protocol. Please refer to the RNDIS webpage for more info.

Specification
  • Products description:
    • USB CDC Class Driver
    • USB CDC Function Driver
  • Supports all the following USB CDC (USBnet) Subclasses specification:
    • ACM - Abstract Communication Model
    • ECM - Ethernet Control Module
    • NCM - Network Control Model
    • OBEX - Object Exchange Function Model
    • WMC - Device management Function Model
  • Implementation includes support for all required and optional ACM/ECM requests and events
  • Operating systems:
    • Supported embedded operating systems: Linux, Android, Symbian, Windows Phone, Windows Mobile, uC/OS-II, VelOSity/Integrity, pSOS, ThreadX, eCos/eCosPro, QNX, MQX, Nucleus, OS20/OS21, uITRON, embOS, VDK, REX, INtime, MeOS, DSP/BIOS, MS-DOS, PowerTV, XP, Vista & more
    • 16/32bit Proprietary OS/no-OS/pre-boot environments
    • Modular Architecture: OS wrappers for easy porting to any operating system
  • USB host controllers:
    • Industry standard OHCI, UHCI, EHCI, and xHCI
    • Leading USB host controller & IP Core vendors including: NXP (ISP 116x, 1362, 1562, 176x), Chipidea/TDI/ARC (CI13010, CI13610, VUSBHS, TD243, TD242LP), Mentor (MUSBMHDRC), Synopsys (DWC USB 2.0 HS High Speed, EHCI/OHCI), Cypress and Epson
    • Leading microprocessors with native USB support: NXP LPC (2458, 246x), TI OMAP (850,1030, 2430), TI DaVinCi, Atmel (RM9200, SAM926x), Samsung (S3C2412, S3C2413), ADI Blackfin (54x, 52x), Renesas (SH7770, SH7727), Freescale (ARM i.MX31/i.MX27, Coldfire MCF52211, PowerQUICC II), Cypress & more
    • Professional services to support proprietary controllers
  • USB Device controllers:
    • Leading USB device controller & IP Core vendors including: NXP (ISP 118x, 1582), Chipidea/TDI/ARC (CI13010, CI13610, VUSBHS, TD243, TD242LP), Mentor (MUSBMHDRC), Synopsys (DWC USB 2.0 UDC20) , Cypress and Epson
    • Leading Microprocessors with native USB support: NXP LPC (236x, 2378, 2387), TI OMAP (850,1030,2430), TI DaVinCi, Atmel (ATSAM7x, RM9200, SAM926x), Samsung (S3C2412, S3C2413), ADI Blackfin (54x, 52x), Freescale (ARM i.MX31/i.MX27, Coldfire MCF52211, PowerQUICC II), ST (STR91xF, STR91xFA) & more
    • Professional services to support proprietary controllers
  • CPU architectures: ARM, MIPS, x86, RISC, PowerPC, Freescale Coldfire, Intel Xscale, TI DSPs and OMAP, Renesas SuperH and others
  • USB 1.1 and USB 2.0 transfer rates:
    High-speed (480 Mb/s), full-speed (12 Mb/s) and low-speed (1.5 Mb/s), SuperSpeed (5 Gb/s)
  • Control, Bulk, Interrupt and Isochronous data transfer support
  • Programming language: ANSI C
  • Compilers: Any 32-bit C compiler


What's Next?


Request further information
Target Devices
  • Mobile Phones
  • Set-Top-Boxes (STBs)
  • Wireless Terminals
  • Analog/ADSL Modems
  • Legacy Modems
  • Residential Gateways
  • Digital/Analog Telephones
  • Ethernet Adaptors/Hubs
  • Other Communication Devices
Benefits
  • High quality USB CDC class and function drivers
  • Modular and scalable CDC class/function driver
  • Device Stack Support for composite USB devices, to allow several USB CDC subclass functions on the same embedded device (e.g. OBEX + 2 CDC-ECM, etc.), as well as, support for general composite devices (e.g CDC-ACM + CDC-ECM + Mass Storage).
  • Host Stack support for Composite devices - USB host stack drivers can be used simultaneously to support different USB devices (e.g. the CDC ACM Class Driver can be used simultaneously with the CDC ECM Class Driver, etc.).
  • Small footprint
  • Turnkey solution: eliminates substantial development time and costs
  • Hardware/software-independent solution
  • Intuitive API, in C code
  • Source code available
  • Easy portability of applications that utilize the driver between supported operating systems
  • Extensive documentation
  • Comprehensive technical support, provided by the engineers who developed the stack
  • Part of a comprehensive embedded USB software solution from Jungo, which includes USB Host, USB Device and USB On-The-Go (OTG) stacks
Class Drivers for PCs and Windows CE hosts? Jungo Connectivity also offers class drivers for PCs and Windows CE hosts. To learn more, check out the DriverCore product page.