2.5.2.2 Abstract Control Model (ACM)

One of the basic supported models for communication by CDC is POTS (Plain Old Telephone Service). The POTS model is for devices that communicate via ordinary phone lines and generic COM port devices. The USB CDC specification refers to this basic model as PSTN (Public Switched Telephone Network).

Depending on the amount of data processing the device is responsible for POTS/PSTN is divided into several models. The processing of data can include modulation, demodulation, error correction and data compression.

Of the supported PSTN models, this CDC Function Driver implements ACM. In the ACM the device handles modulation, demodulation and handles V.25ter (AT) commands. This model (ACM) also supports requests and notifications to get and set RS-232 status, control, and asynchronous port part parameters. Virtual COM port devices use ACM.

The following sections describe the management requests and notifications supported by the CDC Function Driver ACM_layer.

Management Requests

The Host requests/sends some information in the form of management requests on the bidirectional Endpoint 0. The following table shows the CDC specification ACM sub class management requests and how these request are handled by the CDC Function Driver.

Request Code Required/Optional Comments
SEND_ENCAPSULATED_COMMAND Required Implemented by the CDC Function Driver ACM_layer. This request is stalled.
GET_ENCAPSULATED_RESPONSE Required Implemented by the CDC Function Driver ACM_layer. This request is stalled.
SET_COMM_FEATURE Optional Not Implemented.
GET_COMM_FEATURE Optional Not Implemented.
CLEAR_COMM_FEATURE Optional Not Implemented.
SET_LINE_CODING Optional Implemented by the CDC Function Driver ACM_layer. Requires application response.
GET_LINE_CODING Optional Implemented by the CDC Function Driver ACM_layer. Requires application response.
SET_CONTROL_LINE_STATE Optional Implemented by the CDC Function Driver ACM_layer. Requires application response.
SEND_BREAK Optional Implemented by the CDC Function Driver ACM_layer. Requires application response.