Problem: Couldn't recognize CP2615 as output audio device in Mac OS when configured for 24-bit-only output.
Root cause: The failure to enumerate is due to the Mac OS not tolerating the Interface 3 Alt 1 zero-bandwidth descriptor that is sent by the CP2615 when configured for 24-bit-only operation. The presence of this zero-bandwidth descriptor is not prohibited by the USB standards and is tolerated by other operating systems (Windows, Linux, Android).
Workaround: The problem can be avoided by configuring the CP2615 Audio Out interface for 24/16 bit operation, instead of 24-bit-only. This just adds the 16-bit capability in addition to 24-bit, so there is no loss in the quality. 24-bit source material will still be sent over USB as 24 bits; the only difference is that 16-bit source material will get transmitted across USB as 16 bits, rather than being artificially padded to 24 bits as it would if the CP2615 was configured for 24-bit-only operation. (Padding 16-bit audio to 24-bit does not increase its actual resolution, it just wastes USB bandwidth.)
CP2114 supports record mute by USB host or GPIO pin. CP2114 mutes Record when the USB host sends an Audio Class-Specific request SET_CUR (0x01) to mute the Record audio. In addition, single-pressing the Record Mute button (GPIO.0 by default) will toggle between record mute and unmute states. The Record Mute LED (GPIO.4 by default) is turned on/off accordingly for both control methods.
For Windows machine, the CP2114 device record can be muted with following steps:
The Record Mute LED on CP2114 evaluation board will be toggled as well.
1. Record Mute controlled by Host PC is available for CP2114-B02 revision only. See CP2114 Errata for more information.
2. Record functionality must be enable. User can test with the index 0 of preprogrammed configuration by installing all jumpers of GPIO.5 ~ GPIO.8 on the CP2114 EVB.
Table 3.13 in the CP2615 Datasheet (captioned "Read CP2615 Firmware Revision") depicts an operation available in Configuration Mode to read the Firmware Version Number. How does the value obtained by this sequence map to a CP2615 firmware revision?
The CP2615-A02 firmware version number consists of an ASCII-encoded null-terminated string in the format 2615.x.y.z, where 'x', 'y', and 'z' comprise the firmware version number, and can be one or more characters each. The following table illustrates the data returned by reading 16 bytes from address 0xFFFB on a CP2615-A02 device:
The CP2615-A01 device does not have its firmware version encoded as described above. For the -A01 device, reading 16 bytes from address 0xFFFB returns the following data
For more information, including an alternative means to determine the revision of a CP2615 device (suitable for an end-user situation, e.g. where an app running on the phone or USB host would query the version number), see the KB article "Methods to determine CP2615 revision".