The
Abstract Control Model (ACM) protocol defined in the CDC specification can be used to implement a general-purpose serial
UART. For example, an adapter cable which is USB on one end and
RS-232 on the other may present the USB end to the operating system as a CDC-ACM device which uses the operating system's standard CDC-ACM driver. Such an adapter provides a way to upgrade industrial equipment that uses RS-232 such as
CNC machinery without changing the equipment's hardware or software. Most USB serial adapters do not use USB's CDC-ACM protocol but rather their own vendor-defined drivers and protocols which support more features, but there are a few adapters such as the Prolific PL2503 that do use standard CDC-ACM. Furthermore, CDC-ACM is commonly implemented in software on
microcontrollers such as the
ESP32 to provide a
serial console for configuring and debugging
embedded systems. ==See also==