George Beckstein

KL27 USB-FS Audio Sampling Rate

Discussion created by George Beckstein on Aug 16, 2017
Latest reply on Aug 17, 2017 by Mark Butcher



I've been working with the MCUXpresso SDK and USB middleware stack for a few days now.


My application requires the ability to stream 16-bit ADC readings from a microphone to a desktop program through USB audio.


The application's sample rate is 22.050kHz at 16-bits. I am using a KL27Z4 with 128kB Flash and 32kB RAM.

I have the "USB_Audio_Generator" example running on the KL27 right now, however the example application transfers only 8-bit audio at 8kHz. My understanding is that even at 22.050kHz and 16-bits, I would not be using anywhere near the theoretical maximum bandwidth of USB full-speed.


My question is this: what modifications would be necessary to the example in order to achieve 16-bit depth at 22.050kHz as opposed to the original 8-bit @ 8kHz?


I am somewhat familiar with the basics of USB (endpoints, transfer types, etc). I have tried modifying the device descriptor files and have successfully changed it to 22050Hz sampling rate and 16-bit depth, but no audio streams out of the device. I have also tried changing the maximum packet size for the isochronous transfer endpoint to 1023 (maximum allowed, as opposed to original 8)

The device enumerates correctly but I cannot record anything with it or hear anything when I pass through to my speakers.


Let me know your ideas!