USB Audio TDM Implementation Issue - No Audio

Discussions about USB Audio on XMOS devices
alwalker
Experienced Member
Posts: 100
Joined: Sun Apr 08, 2018 11:19 pm

USB Audio TDM Implementation Issue - No Audio

Post by alwalker »

I used sw_usb_audio v9.0.0 to build the 2ASi8o8xxxxxx_tdm8 configuration and am running it on an Explorer Kit board.
 
  • USB Audio Class 2
    Asynchronous Slave
    8 Input Channels
    8 Output Channels
    TDM Operation
I have the following inputs to the Explorer Kit as shown on the PicoScope logic analyser:

D0: MCLK IN (24.576 MHz) on X0D13 (1F0)
D1: BCLK IN (12.288 MHz) on X0D23 (1H0)
D2 FSYNC IN (48 kHz with Sync Length of 32 bits) on X0D22 (1G0)
D3 TDM IN (Data in slots 0 & 1 on X0D24 (1I0)

PicoScope TDM.png

The XMOS device appears ok in the audio devices list in Apple Logic Pro, and I can select from the eight input channels as I would expect.
Logic Pro Audio Devices.png
Logic Pro Input Channels.png

The only problem is that I’m not getting any audio into Logic Pro, any ideas please?

Kind regards,

Al
You do not have the required permissions to view the files attached to this post.
alwalker
Experienced Member
Posts: 100
Joined: Sun Apr 08, 2018 11:19 pm

Post by alwalker »

As there is no board support for the Explorer Kit in sw_usb_audio, I used hardware connections from the XK_Audio_216_MC_AB board (no longer available, so I can’t use one for my development work targeting XC-200), so in theory at least the software implementation for 2ASi8o8xxxxxx_tdm8 should work on an Explorer Kit as the clocks are generated externally:

Tile 0

Explorer Kit
MCLK IN X0D13
FSYNC IN X0D22
BCLK IN X0D23
TDM IN X0D24
TDM OUT X0D36

XK_Audio_216_MC_AB
MCLK_XCORE X0D13
LRCLK X0D22
SCLK X0D23
xSDIO1 X0D24
xDAC_SD1 X0D36


Tile 1

Explorer Kit
MCLK_XCORE1 X1D35

XK_Audio_216_MC_AB
MCLK X1D35

So I think this is all I need for the 2ASi8o8xxxxxx_tdm8 to work, but obviously I'm missing something...

And the ability to insert tabs would be nice :o)
alwalker
Experienced Member
Posts: 100
Joined: Sun Apr 08, 2018 11:19 pm

Post by alwalker »

I haven't had any response from XMOS engineers to this post, hopefully this isn't a policy of only answering queries on xmos.ai/XU316. If this is the case then it's rather disappointing, but I would be happy for my concerns to be proven unjustified.

I'd also like to suggest that as the XK_Audio_216_MC_AB board is no longer available, that lib_board_support is updated to include a board support package for Explorer Kit with a reference design for an external CS2100 circuit to provide solutions for XC-200 USB audio. I would be very happy to test such a solution for XMOS as this is exactly what I'm trying to do.

What is the expectation for what the 2ASi8o8xxxxxx_tdm8 build requires in terms of clock and data connections please?
alwalker
Experienced Member
Posts: 100
Joined: Sun Apr 08, 2018 11:19 pm

Post by alwalker »

Whilst Adobe Audition can see the XMOS USB interface and I can set it as the clock source, when I hit record the time counter greys out and recording does not start. After I stop Record the option to have the XMOS USB audio interface is reported as not working and the facility to have it as the clock source is no longer available. Recording is ok if I use another input source such as the internal microphone.


250613 Adobe Audition Before Record.png
250613 Adobe Audition After Record.png
You do not have the required permissions to view the files attached to this post.
User avatar
Ross
Verified
XCore Legend
Posts: 1183
Joined: Thu Dec 10, 2009 9:20 pm
Location: Bristol, UK

Post by Ross »

You're driving in TDM data from an external source?

Have you checked there's nothing contending on the ports you've chosen?

Have you has simple I2S with the on board codec working on this board before jumping to TDM?
Technical Director @ XMOS. Opinions expressed are my own
User avatar
Ross
Verified
XCore Legend
Posts: 1183
Joined: Thu Dec 10, 2009 9:20 pm
Location: Bristol, UK

Post by Ross »

Use

Code: Select all

	for tabs etc
Technical Director @ XMOS. Opinions expressed are my own