Page 1 of 2

What is the specification of "XK-AUDIO-216-MC-AB"?

Posted: Wed Jul 24, 2019 8:58 am
by Shota.Sato
Hello,
I tring to record music using "Xcore-200 Multichannel Audio Platform(XK-AUDIO-216-MC-AB)".
I could to record music, but the recorded music has the following problems.
1. Volume is very low.(Volume of recorded music is less than half of source.)
2. Wavelength shift 0.2 milliseconds per 6 seconds.
3. Sound skipping at 60 nanoseconds occures about three times during 2 minutes.
I'm now investigating these causes.

Although there are many possible causes ,What is the above 2nd and 3rd in the product specification?
The recording environment is as follows.
1. Connection environment
DesktopPC(Input) -----> XK-AUDIO-216-MC-AB -----> Android Phone <----- Another PC
*DesktopPC and XK-AUDIO-216-MC-AB are connected by 3.5mm stereo jacks.(Cable length is 50 cm)
*XK-AUDIO-216-MC-AB and Android phone are connected by usb2.0. (Cable length is 15 cm)
*Android Phone and Another PC are connected by wifi.

2. Source file
Sampling Rate:48kHz
Quantization bit rate:16bit
Channel:2

Best regards

Re: What is the specification of "XK-AUDIO-216-MC-AB"?

Posted: Thu Jul 25, 2019 4:45 pm
by akp
Seems like a complicated setup. Why don't you test the MC audio board is working well with it connected to a PC (Windows / Linux / Mac) first and recording in Audacity? It works perfect for me in that scenario.

Re: What is the specification of "XK-AUDIO-216-MC-AB"?

Posted: Fri Jul 26, 2019 4:17 am
by Shota.Sato
Thank you for reply.

The recording environment is as follows.
PC_A(Input) -----> XK-AUDIO-216-MC-AB -----> PC_A(Audacity)
*PC_A and XK-AUDIO-216-MC-AB are connected by 3.5mm stereo jacks and usb2.0.
*Cable length is 50 cm.

Sound skipping was resolved thanks to your advice.
The recording environment was the cause for sound skipping.

Wavelength shift was not resolved.
Can you think of anything that might have caused it?

Re: What is the specification of "XK-AUDIO-216-MC-AB"?

Posted: Fri Jul 26, 2019 8:50 am
by akp
What do you mean by wavelength shift? Is it a discontinuity or is the recorded wavelength off from the transmitted wavelength by 200 microseconds per 6 seconds? That's only 33ppm so it's probably just the difference in clock frequencies between the PC sound card and the MC Audio board and that seems pretty normal.

Re: What is the specification of "XK-AUDIO-216-MC-AB"?

Posted: Fri Jul 26, 2019 9:45 am
by Shota.Sato
It is continuous.
So, if you record for 2 minutes, about 2~3msec recording will end early.

I understood that the cause of wavelength shift is clock frequencies.
By the way,i can't find the clock frequencies of the MC Audio board anywhere,what is the clock frequencies of the MC Audio board?

Re: What is the specification of "XK-AUDIO-216-MC-AB"?

Posted: Fri Jul 26, 2019 12:49 pm
by akp
Refer to https://www.xmos.com/download/xCORE-200 ... l(1.2).pdf page 10. The accuracy will be identical to the accuracy of the 24 MHz xtal on the board.

Re: What is the specification of "XK-AUDIO-216-MC-AB"?

Posted: Tue Jul 30, 2019 1:38 am
by Shota.Sato
I understood your explanation perfectly!
Thank you for your uncomplicated explanation.

Re: What is the specification of "XK-AUDIO-216-MC-AB"?

Posted: Tue Jul 30, 2019 10:08 pm
by RitchRock
It might be interesting to see if the phase shift changes with feedback endpoint set as implicit vs explicit. Add -DUAC_FORCE_FEEDBACK_EP=0 (implict) or -DUAC_FORCE_FEEDBACK_EP=1 (explicit) to your build in the makefile.

Re: What is the specification of "XK-AUDIO-216-MC-AB"?

Posted: Wed Jul 31, 2019 10:44 am
by Shota.Sato
Modified makefile as below,but didn't change the phase shift.

# Audio Class 2, Input, Output, no MIDI, no SPDIF
XCC_FLAGS_2i10o10xxxxxx = $(BUILD_FLAGS) -DMIDI=0 -DSPDIF_TX=0 -DNUM_USB_CHAN_OUT=2 -DNUM_USB_CHAN_IN=6 -DI2S_CHANS_ADC=6 -DI2S_CHANS_DAC=2 -DUAC_FORCE_FEEDBACK_EP=0 or 1
INCLUDE_ONLY_IN_2i10o10xxxxxx =

Re: What is the specification of "XK-AUDIO-216-MC-AB"?

Posted: Fri Aug 02, 2019 3:13 pm
by akp
Correct me if I'm wrong, but isn't the whole point of a feedback endpoint that an asynchronous DAC (sink) can run at the low jitter of the local MCLK but control the transfer rate from the USB host such that the host doesn't overrun or underrun the DAC? It shouldn't affect the audio clock rate on the DAC. Likewise that's why adaptive source (ADC) endpoints can put a variable number of samples in each usb frame, so the ADC can run at low jitter but the device buffer doesn't overrun / underrun.