History: usbd_cd_audio_20

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


1.5 (2021-06-04, 17:30)

  • Increased feedback endpoint ring buffer item count to 2 as data can be lost if the USB driver still owns the ring buffer item when the SOF event is triggered to put new data into it.
  • Fixed compiler warnings.

1.4 (2021-05-13, 9:30)

  • Introduced requests handler module which is a common layer for the EP0 requests and service the supported audio requests. For example: Get/Set requests of volume/mute control feature unit.
  • Introduced clock source and volume/mute control handlers.
  • Replaced OAL_ error codes with module error codes.
  • Introduced usbd_audio_20_set_sr_notify() for registering a callback that is called when the sample rate is set by the host.
  • Introduced module-specific types for different callback types.
  • Moved unit ID definitions into the common API file from the config file.
  • Clean-up in speaker and microphone implementations.
  • Added C++ extern into header files where it was missing.
  • Files are beautified and updated with section comments.

1.3 (2021-04-15, 12:01)

  • Added support of Feature Unit volume and mute control for microphone and speaker.
  • Fixed ring buffer alignment because the size of the buffers were not aligned. This could cause incorrect transfers when used with DMA, only the first buffer in the ring buffer was aligned, the others could have been misaligned.

1.2 (2020-08-07, 13:55)

  • Audio feedback (synchronization of the sampling rate) was working incorrectly when connected to Windows hosts, resulting in an erroneous playback stream.

1.1 (2019-05-20, 19:00):
    - Initial release. Supported features:

  • 1 USB Streaming Input Terminal
  • 1 USB Streaming Output Terminal
  • 1 Microphone Input Terminal
  • 1 Speaker Output Terminal
  • 1 Clock Source Unit with a configurable number of discrete freqnecies.

   - Limitations:

  • Descriptor generator tool does not support  Audio 2.0 devices.
  • Basic Feature Unit controls (Volume Control, Mute Control etc.) are not supported