Modifications Required in UAC Example Project to Support Mono Channel - KBA218831

Version: **

 

Question:

What are the modifications required in the UAC example project to support mono channel? 

 

Answer:

By default, the UAC example project provided in the FX3 SDK (C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\firmware\uac_examples\cyfxuac) supports stereo channel. 

The following modifications are required in the cyfxuacdscr.c file of the UAC example project to support mono channel: 

  1. 'bNrChannels' field of the Input terminal descriptor should be changed from 0x02 to 0x01.
  2. 'wChannelConfig' field of the Input terminal descriptor should be changed from 0x03,0x00 to 0x00,0x00. 
  3. 'bNrChannels' field of the Type-I format descriptor should be changed from 0x02 to 0x01. 
  4. 'wMaxPacketSize' field of the ISO streaming EP should be changed from 0x60,0x00 to 0x30,0x00.

In the cyfxuac.c file, set the CY_FX3_ISO_XFER_LEN macro to ‘48’. 

Build the project after these modifications. If FX3 successfully enumerates as an audio device, but you are unable to stream mono channel audio, follow these steps: 

  1. Go to Control Panel > Sound.
  2. In the pop-up window, go to the Recording tab. FX3 will be shown as a microphone device. 
  3. Double-click on FX3 and go to the Advanced tab in the Microphone Properties pop-up window.
  4. Choose the '1 channel,16 bit,48000Hz (DVD Quality)' option.