This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

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?

Setup:

SDK 15.0

nRF52840 dev kit

pca10056

Segger Embedded Studio

Windows 10

Parents Reply
  • keith v said:
    Is it possible for us to add the feedback endpoint? or does that have to be done at a level we don't have access to?

     It is possible, but this is then something you need to develop and add the proper handling of this in the sources. Unfortunately, I do not have experience with adding such features, but I suppose you can start by look at the app_usbd_audio.c file and see what needs to be setup on a descriptor level first.

     

    Kind regards,

    Håkon

Children
Related