USB communications device class (or USB CDC class) is a composite Universal Serial Bus device class
The communications device class is used for computer network
ing devices akin to a network card
, providing an interface for transmitting Ethernet
frames onto some physical media. It is also used for modem
machines, and telephony
applications for performing regular voice calls.
versions prior to Windows Vista
do not work with the networking parts of the USB CDC, instead using Microsoft's own derivative named Microsoft RNDIS
, a serialized version of the Microsoft NDIS
(Network Driver Interface Specification). With a vendor-supplied INF file
, Windows Vista works with USB CDC and USB WMCDC devices.
[Support for the Wireless Mobile Communication Device Class]
This class can be used for industrial equipment such as CNC machinery to allow upgrading from older RS-232
serial controllers and robotics, since they can keep software compatibility. The device attaches to an RS-232 communications line and the operating system on the USB side makes the USB device appear as a traditional RS-232 port. Chip manufacturers such as Prolific Technology, FTDI
, and Atmel
provide facilities for developing USB RS-232 devices.
Devices of this class are also implemented in embedded system
s such as mobile phone
s so that a phone may be used as a modem, fax or network port. The data interfaces are generally used to perform bulk data transfer.
External linksUSB-IF's Approved Class Specification DocumentsClass definitions for Communication Devices 1.2
(.zip file format, size 3.43 MB)
Class definitions for Communication Devices 1.1a good guide (linux-oriented) about USB host-to-host, CDC 'ethernet' class and RNDISApp Note, ''Migrating from RS-232 to USB Bridge Specification''
Explains the use of USB CDC (Communications Device Class) ACM (Abstract Control Model) to emulate serial ports over USB.
Communications device class