USB CDC/ACM Class Driver for Windows 8, 7, Vista, XP

Features      Supported Platforms      Demo      Documentation      Prices      

USB CDC/ACM Class Driver for Windows

Thesycon’s USB CDC/ACM device driver provides a serial port emulation on Windows operating systems by implementing a serial link emulation protocol on USB. The driver exposes a Win32-compatible COM port and in addition provides some unique features such as a Plug&Play compliant device instance enumeration method. This avoids confusion about COM port numbers and improves usability.

 

The driver supports all Windows desktop operating versions. A similar driver is also available for Windows CE. See USB CDC/ACM Class Driver for Windows CE for more information.

 

The driver works with devices that are compliant to the Communication Device Class (CDC) specification, subclass Abstract Control Model (ACM). However, the driver supports three different USB protocol types, which are described in more detail below.


Thesycon also offers the Embedded USB Device Stack with CDC/ACM device class for implementing the firmware of a USB CDC/ACM device. With these development kits Thesycon provides the support for implementing the firmware and the device driver for USB CDC/ACM devices quickly and cost-effectively.

Supported USB Protocols

CDC/ACM Compliant Protocol

The device needs to implement the Abstract Control Model (ACM) subclass defined in the USB Communication Device Class (CDC) specification. This protocol requires two USB interfaces, a data interface which consists of two endpoints (bulk in + bulk out) and a control interface which consists of one interrupt in endpoint. Furthermore, on EP0 the device must implement the class-specific requests defined by the CDC specification. Because this USB protocol is compliant to the CDC/ACM standard on some operating systems (e.g. Linux, MacOS) the device can work with in-box drivers.

Reduced CDC/ACM Protocol

This mode uses the CDC data interface (bulk in + bulk out endpoint) only. No control interface (interrupt in endpoint) is required. The device needs to implement the CDC class-specific requests, so that is still possible to support baud rate settings and serial control/status lines. This mode is useful if the number of available endpoints is limited by hardware restrictions. However, as the protocol is proprietary, a specific device driver is required for every operating system platform to be supported by the device.

Bulk-only Protocol

The device implements only the data interface (bulk in + bulk out endpoint). The device does not provide an additional control interface and does not need to implement any class-specific requests on EP0. Because bulk transfer mode provides flow control, there is no need to support serial control/status lines. The advantage of the bulk-only protocol is that the implementation efforts on the device side are reduced to a minimum. However, because the protocol is proprietary, a specific device driver is required for every operating system platform to be supported by the device.

USB CDC/ACM Class Driver Features

Depending on the driver configuration, the CDC/ACM device driver exposes an emulated COM port or a modem. The standard Windows mechanism is used to assign a COM port number to each device instance. This COM port can be opened and used by standard programs such as HyperTerminal.

 

In addition to the COM port naming scheme, the driver supports a PnP compliant enumeration mechanism which is based on device interfaces. Custom applications can enumerate and open available device instances by using Windows API functions such as SetupDiGetClassDevs and SetupDiEnumDeviceInterfaces. So the user is not required to enter a COM port number. Applications can automatically locate, identify and open available device instances. By using the function RegisterDeviceNotification, applications can receive notification messages when devices are connected or disconnected. Thus, an application can implement full USB Plug&Play support.

Feature Summary

Supported Platforms x86 (32 bit) x64 (64 bit)
Windows 8
Windows 7
Windows Vista
Windows XP
Windows 2000
 yes
 yes
 yes
 yes
 yes
 yes
 yes
 yes
 yes
 no
Windows Embedded Standard 7 (WES7)
Windows Embedded Enterprise
Windows Embedded POSReady
Windows Embedded Server
Windows XP embedded
 yes
 yes
 yes
 yes
 yes
 yes
 yes
 no
 yes
 no
Windows Server 2012
Windows Home Server 2011
Windows Server 2008 R2
Windows Server 2008
Windows Server 2003
Windows Home Server
 no
 no
 no
 yes
 yes
 yes
 yes
 yes
 yes
 yes
 yes
 no

 

Thesycon also offers an ACM class driver for Windows CE and Windows Mobile.

Easy Installation

Using Thesycon’s PnP Driver Installer it is very easy to create a custom setup wizard that handles driver installation, un-installation and update in a comfortable and reliable way. For more information on PnP Driver Installer, check out http://www.thesycon.de/pnpinstaller.

Free Demo

The demo version is time-limited but has full functionality. After the device is connected the driver can be used for used for 4 hours before the driver disables itself and the computer must be rebooted in order to use the demo again. The demo package includes the driver and the documentation.

 

Current Version: 2.11

NOTE: The driver described on this page is *not for use by end users*. It will not help solve any problems you may experience with a consumer device such as a webcam, camcorder, card reader, external sound card, etc. Thesycon’s device drivers are software components intended to be used by hardware or software manufacturers to create end products.

Documentation

Licensing conditions & Prices

For prices in US dollars, please e-mail:

USB Vendor and Product ID

For each USB device model an official USB vendor ID (VID) is required. Vendor IDs must be unique and will be assigned by the USB Implementers Forum (www.usb.org). Registration fees will be charged.

 

Thesycon owns a USB vendor ID and offers a subset of product IDs (PID) to device vendors. For customers who have licensed USB software from Thesycon this service is free of charge.

Keep up to Date

If you would like to be kept informed of product updates, please subscribe to the Thesycon newsletter.

 

 

© 2013 THESYCON

Device Driver - Software Development - Consulting home to the german version