The Communication Device Class (CDC) supports a wide range of devices that can perform telecommunications and networking functions. Examples for communications equipment are:
- Telecommunications devices, such as analog phones and modems, ISDN terminal adapters, digital phones, as well as COM-port devices
- Networking devices, such as ADSL and cable modems, as well as Ethernet adapters and hubs
Detailed description about CDC is provided by USB Implementers Forum (USB-IF).
CDC Class Features and Limitations
A communications device has three basic tasks:
- Device management (controlling an configuring a specific device and notifying the USB Host of certain events)
- Call management (establishing and terminating telephone calls or other connections)
- Data transmission (sending and receiving application data)
The CDC implementation in the USB Component has the following features and limitations:
- Emulation of a Virtual COM-port using the ACM (Abstract Control Model) subclass of CDC.
- One interrupt IN endpoint for notifications to the USB Host
- One bulk IN and one bulk OUT endpoint for data transfer
- The USB Component supports the CDC Class (ACM) for USB Device and USB Host applications.
Control Transfers
The CDC Subclass for PSTN devices document describes the nine available request types for the Abstract Control Model. Other requests, specific to the CDC class are not supported.
Descriptor Requirements
The following descriptors are required in an USB CDC (ACM) Device:
- Standard device descriptor
- Standard configuration descriptor
- Standard interface descriptor for the CDC Class communication interface
- Standard endpoint descriptor for Interrupt IN endpoint
- Standard interface descriptor for the CDC Class data interface
- Standard endpoint descriptors for Bulk IN and Bulk OUT endpoints
The necessary descriptors are automatically generated by the USB Middleware Component. The page Device Descriptor provides more information on the topic.
- Note
- Further information on how to use CDC is given in the Reference section: