USB Audio adaptive transfer rate.

We have implemented proprietary audio streaming on the nRF52. It reads Audio from a PDM mic and uses the timeslot feature of the BLE radio to send said audio to another BLE device. This allows BLE and our proprietary Audio stream to co exist.

Now we want to use audio from a USB host, such as the Windows PC or a Phone ( Android and iOS )

We have implemented the audio loop back per the USB audio class example and can pull the audio out and send it over our proprietary audio stream. We are running 16bit 16khz stereo audio over USB.

Unfortunately, the sample clock rates are slightly different causing buffer overrun or underrun depending on the device under test.

So the question:

What support does the SDK have for USB audio sample rate feedback?


SDK 15.0

nRF52840 dev kit


Segger Embedded Studio

Windows 10