History: usbd_cd_audio

This page describes all changes made to the usbd_cd_audio package, USBD Audio Class Driver, since its release.


3.8 (2020-05-05, 18:30)

  • Added volume and mute control for microphone.

3.7 (2020-01-10, 12:20):

  • Compiler warnings eliminated.
  • Starting Microphone stream might not have called the user onoff notification callback.

3.6 (2019-02-18, 15:40):

  • Hosts running Android do not send volume control commands to USB speakers when changing volume during playback. They change the outgoing stream data instead, according to the volume set by the user. Android sets audio volume once, after detecting the connection of an audio device. Also it only sets audio volume for one channel, even if the device implements two channels.
  • USBD_AUDIO_VOLUME_INVALID introduced to inform the application whether a channel has received a valid volume control command or not (when it calls usbd_spk_get_volume_info()). The  application can decide how to interpret the described case. For example, if volume control information is available for the left channel but not for the right channel, it can decide to use the left channel's volume level on both channels, or to mute the right channel.

3.5 (2019-01-10, 15:45):

  • Some Audio commands (for example, Volume and Mute) addressed to the device were not processed.
  • Volume and mute callbacks registered by the user were not called.


  • usbd_audio_init() and usbd_audio_start() returned success even if it failed.


  • Audio synchronization channel implementation fixed.


  • Added usbd_mic_set_onoff_notify() function so can register an ON/OFF notification callback.
  • Microphone initialization could write a NULL pointer.


  • Warning removed from speaker.
  • Version files of different audio functionalities merged into one file.


  • API changed, volume and mute control introduced.


  • Initial release.