Can't change XCore to I2S slave in DJ kit

Technical discussions related to any XMOS development kit or reference design. Eg XK-1A, sliceKIT, etc.
Post Reply
User avatar
jjlm98
Member++
Posts: 31
Joined: Tue Aug 26, 2014 11:00 pm

Can't change XCore to I2S slave in DJ kit

Post by jjlm98 »

Hi all - I've replicated the DJ 2.0 kit on another design and need to recompile the source with the XCore acting as an I2S slave. However, when I set CODEC_MASTER to 1 in customdefines.h, upon building the 2ioxx configuration, xmake reports that "p_i2s_adc" in audioports.xc is undefined. Stepping through the code, it's not clear why this would be the case so long as I2S_CHANS_ADC is nonzero, which it is (4). Any pointers?

Also - a couple other questions:

1) When building the 2ioxx application (in master mode, working around the above problem for now), the Xcore only appears as a playback device in Windows, not a record device. Does the 2ioxx application not enumerate both playback and record and paths?

2) What is the process for enabling more in/out channels? I imagine you must change the numerical defines in customdefines.h - but where else do changes need to be made (defining hardware pins, etc)?

Thanks in advance.


User avatar
jjlm98
Member++
Posts: 31
Joined: Tue Aug 26, 2014 11:00 pm

Post by jjlm98 »

Follow-up: it would appear the makefile erroneously includes the following flags for the 2ioxx configuration: -DNUM_USB_CHAN_IN=0 -DI2S_CHANS_ADC=0

Removing them solves the issue; last question remains. Thanks!
User avatar
jjlm98
Member++
Posts: 31
Joined: Tue Aug 26, 2014 11:00 pm

Post by jjlm98 »

I have some more questions related to expanding the number of channels, so I'll start a new, appropriately titled thread.
User avatar
larry
Respected Member
Posts: 275
Joined: Fri Mar 12, 2010 6:03 pm

Post by larry »

Modifying I2S_CHANS_DAC/ADC, NUM_USB_CHAN_IN/OUT and the I/O map in the XN file of your application should be all that's required to change the channel count.

The USB Audio Design Guide is a useful reference.
User avatar
Ross
XCore Expert
Posts: 962
Joined: Thu Dec 10, 2009 9:20 pm
Location: Bristol, UK

Post by Ross »

jjlm98 wrote:Follow-up: it would appear the makefile erroneously includes the following flags for the 2ioxx configuration: -DNUM_USB_CHAN_IN=0 -DI2S_CHANS_ADC=0

Removing them solves the issue; last question remains. Thanks!
Thanks, will get that fixed..

EDIT: Actually looks like it was already fixed in 6.6.1:

Code: Select all

6.6.1
-----
    - ADDED:      Documentation for DFU
    - ADDED:      XUD_PWR_CFG define
    - CHANGE:     DSD ports now only enabled once to avoid potential lock up on DSD->PCM mode change
                  due to un-driven line floating high. ConfigAudioPortsWrapper() also simplified.
    - RESOLVED:   Makefile issue for 2ioxx config in app_usb_aud_skc_su1
User avatar
jjlm98
Member++
Posts: 31
Joined: Tue Aug 26, 2014 11:00 pm

Post by jjlm98 »

Thanks Ross. I see that version 6.6.0 is still what's shown under "Reference Designs" in the "My XMOS" portal. Should I be looking elsewhere for the latest source code?
Post Reply