Hello,
I have xCore-200 MC Audio board. I am doing a simple test where I loop back XMOS SDOUT to SDIN and view the data using Audio Precision APx software. For some reason the 8 channels coming back to PC are not phase aligned.
Firmware config:
- 2i8o8xxxxx_tdm8 build configuration from sw_usb_audio-[sw]_6.15.2rc1 - Unmodified
Hardware config:
- xCore-200 MC Audio board
- J7 pin 2 (xDAC SD1) fly-wired to J8 pin 2 (iADC SD1). This is how I loop back XMOS SDOUT to SDIN
- No other jumpers installed
Test setup:
- Use APx to output 8 channels via ASIO, 48kHz, 24 bit
- Use APx to read 8 channels via ASIO
The PC sends 8 channels, time aligned. But it comes back to the PC with the channels offset by 1 sample. There are 3 groups of channels
Channels 1,2: "Center"
Channels 3,4,5,6: advanced 1 sample
Channels 7,8: delayed 1 sample
Debug:
I have attached USB analyzer to view bus traffic. I see the channel misalignment in the USB data coming into the PC. So this is not a PC driver related issue. It comes from the XMOS misaligned.
Is this expected? How can I send 8 channels upstream to host that are phase-aligned?
Misaligned TDM channels xCORE-200 Topic is solved
-
- Member
- Posts: 8
- Joined: Thu Dec 06, 2018 12:07 am
Misaligned TDM channels xCORE-200
You do not have the required permissions to view the files attached to this post.
View Solution
-
- Member
- Posts: 8
- Joined: Thu Dec 06, 2018 12:07 am
For anyone interested, this is due to buffering in audio.xc deliver(). I was able to fix it in DoSampleTransfer() with delay and repackaging so the channels are phase aligned.
-
- Junior Member
- Posts: 4
- Joined: Mon Mar 25, 2019 8:42 pm
Hi,
I'm dealing with the same issue, just with the 2i16o16xxxxx_tdm8 build configuration instead, and I'm wondering if you could share some more details on how you fixed this. The pattern of misalignment is the same for the second set of 8 channels (i.e. channels 9-16).
Thanks!
I'm dealing with the same issue, just with the 2i16o16xxxxx_tdm8 build configuration instead, and I'm wondering if you could share some more details on how you fixed this. The pattern of misalignment is the same for the second set of 8 channels (i.e. channels 9-16).
Thanks!