SPDIF problems on XK-AUDIO-316-MC-AB

Technical discussions related to any XMOS development kit or reference design. Eg XK-1A, sliceKIT, etc.
vlad_94
Junior Member
Posts: 4
Joined: Tue Oct 21, 2025 12:44 pm

SPDIF problems on XK-AUDIO-316-MC-AB

Post by vlad_94 »

Hello,

I'm relatively new to XMOS products and I want to try S/PDIF input; S/PDIF output on multichannel 316-MC board.
I download 7.3.1; 8.1.0 and 9.1.0 audio reference designs and for a pity I can not make it working.
What is working is USB input - but when S/PDIF is enabled (using 2AMi10o10xssxxx) or the one with 2 inputs and 2 outputs (here I enable S/PDIF output) - I have some signal which looks like S/PDIF, but it isn't - when I have 44.1kHz on USB input, I get around 1.5MHz on S/PDIF output. Analogue outputs are working well.
When I try to insert S/PDIF - using RX, and stop usb audio (because I don't know how to select desired input) - there is absolutely nothing on analogue outputs.

Can you help me - where I got this wrong - for now I'm using only pre-compiled xe files from different reference designs and all is the same - only usb input is working.

Many thanks in advance.
Vlad
Joe
Verified
XCore Addict
Posts: 135
Joined: Sun Dec 13, 2009 1:12 am

Post by Joe »

Hi, there may be some confusion. The sw_usb_audio software is primarily implementing a usb interface to i2s/spdif/adat etc. It will not implement spdif to i2s or vice versa etc. All of that is possible but would require different software.

USB host streaming audio data to spdif output will work however is this what you are trying? AT 44.1kHz, the spdif output will be at 2.822Mbps biphase mark encoded.

Cheers,
Joe
XMOS hardware grey beard.
vlad_94
Junior Member
Posts: 4
Joined: Tue Oct 21, 2025 12:44 pm

Post by vlad_94 »

Hello Joe,

Thank you for your answer.
I see - I think that when there are pre-compiled firmware, then one just have to upload it. Now I get it.
Thing is that on this newer reference designs, lets say 2AMi2o2xxxxxx , I have to enable S/PDIF output, then compile and then there must be valid S/PDIF output - but in my case there is no valid S/PDIF signal - like I wrote there is something similar to S/PDIF.
Years ago I tested old multichannel board and there S/PDIF output was working correctly after enabling it.

Thank again.
Vlad
User avatar
Ross
Verified
XCore Legend
Posts: 1305
Joined: Thu Dec 10, 2009 9:20 pm
Location: Bristol, UK

Post by Ross »

Can you provide your modifications, to enable S/PDIF tx in the 2AMi202xxxxxx config you must enable SPDIF Tx and ensure it's presenting the expected channels (also make sure its on your desired interface - coax/optical)
Technical Director @ XMOS. Opinions expressed are my own
vlad_94
Junior Member
Posts: 4
Joined: Tue Oct 21, 2025 12:44 pm

Post by vlad_94 »

Hello Ros,

Mu modifications are really simple - just like on old XMOS multichannel board and here are:
Used reference design 8.1.0.
First I tried 2AMi2o2xxxxxx - without any changes and of course there is nothing on S/PDIF output. I'm using multichannel XMOS board and I checked on xn file that Port Location="XS1_PORT_1A" Name="PORT_SPDIF_OUT" is corresponding to Coax output on my board.
Then on make file located in this folder \sw_usb_audio-_sw_v8_1_0\sw_usb_audio\app_usb_aud_xk_316_mc, I add only S/PDIF_EN

INCLUDE_ONLY_IN_2AMi2o2xxxxxx =
XCC_FLAGS_2AMi2o2xxxxxx = $(BUILD_FLAGS) -DI2S_CHANS_DAC=2 \
-DI2S_CHANS_ADC=2 \
-DXUA_SPDIF_TX_EN=1

Build it and after programming - there is a signal on Coax output, but it's not correct S/PDIF signal.
To be sure that I'm not missing something, I also changed xua_conf.h in folder sw_usb_audio-_sw_v8_1_0\sw_usb_audio\app_usb_aud_xk_316_mc\src\core to enable S/PDIF:

/* Enable/Disable S/PDIF output - Default is S/PDIF off */
#ifndef XUA_SPDIF_TX_EN
#define XUA_SPDIF_TX_EN (1)
#endif

Result was absolutely the same.
I made only this modifications.

Thank you in advance.
Vlad
User avatar
Ross
Verified
XCore Legend
Posts: 1305
Joined: Thu Dec 10, 2009 9:20 pm
Location: Bristol, UK

Post by Ross »

How are you inferring that the signal is not correct? Do a you have a scope screen shot you can post?
Technical Director @ XMOS. Opinions expressed are my own
vlad_94
Junior Member
Posts: 4
Joined: Tue Oct 21, 2025 12:44 pm

Post by vlad_94 »

First time, I just check with scope that there is signal on coax output and I directly connect coaxial receiver, which was not working, so I tested my coaxial receiver and all was good.
So I check again output from XMOS board with scope more carefully and there is a signal which is not S/PDIF.
I attached you some pics of working and not working coaxial output.
If additional scope shots will help, just let me know.

When it's around 1.78MHz - spdif is working (input sample rate 44.1kHz).
When it's 1.41MHz - spdif is not working, again sample rate is 44.1kHz
You do not have the required permissions to view the files attached to this post.