XK-1A as USB AUDIO 2.0 device

Technical discussions related to any XMOS development kit or reference design. Eg XK-1A, sliceKIT, etc.
Post Reply
mhelin
Active Member
Posts: 52
Joined: Fri Dec 24, 2010 10:54 am

XK-1A as USB AUDIO 2.0 device

Post by mhelin »

I have some older XMOS stuff laying around unused so I though to use them for something. Now I've got a Startkit and the XA-SK-AUDIO slice but they cannot be made to USB sound card as the starkit tile 0 cannot be programmed expect than from PC (dynamic loading). So I was wondering if the XK-1A could be used to connect some USB33xx board (like Waveshare's USB3300) using ULPI, and it seems possible (following the USB Audio 2.0 Reference Design, XS1-L1 Edition wiring). However, it seems the SPI FLASH uses some pins (XD36 -> ) that USB Audio 2.0 Reference Design, XS1-L1 Edition documentation says cannot be used with ULPI. What does it mean, will XK-1A boot or not with ULPI connected? Is my plan feasible anyway?


User avatar
mon2
XCore Legend
Posts: 1913
Joined: Thu Jun 10, 2010 11:43 am
Contact:

Post by mon2 »

Hi. My 2 bits, stick to the known to be working XCORE-200 series CPU for the Audio projects. Believe the one to use is the XU208 series but review the related docs. Otherwise, too many pitfalls that will consume your valuable time for no reason. Also, you can then market the widget, if you wish with live and available CPUs. The Startkit is EOL.
mhelin
Active Member
Posts: 52
Joined: Fri Dec 24, 2010 10:54 am

Post by mhelin »

I'm not designing any new product, just trying to find some use for these kits I happen to already own.

Now, I guess the SPI flash pinout doesn't matter as the ULPI stack is enabled only after the firmware has been already loaded, got to experiment. Also it might be possible to use just the Startkit for both the USB (ULPI) and I2S/SPI to codec board. One possible application if the USB cannot be implemented is a PCM/I2S to ADAT bridge with internal monitor mixer (with MIDI support). The XA-SK-AUDIO board has two nice CS4270 24-bit codecs (same as on Behringer ADA8200 and some of their USB audio interfaces) meaning four audio channels in and out.

Yeah Startkit is EOL, too bad. It would be nice to have an inexpensive alternative using some XU208 part. There are many boards available in Ebay using that chip but they have usually just the I2S connection and nothing more, and the firmware is not public. Also they miss the XTAG header so only option to reprogram the is DFU which without XN files and documentation is difficult.
User avatar
akp
XCore Expert
Posts: 578
Joined: Thu Nov 26, 2015 11:47 pm

Post by akp »

Listen to @mon2 he knows what he's saying.

Having said that, with your kit you might be able to get it working. You will have to disable DFU but other than that I don't see any showstoppers at present. Unless the MCU twiddles the slave select on the SPI flash when ULPI is enabled but I'd be surprised. The built in bootloader should just load your flash image from the SPI and then reconfigure the associated ports to ULPI mode once your code is running from RAM.
mhelin
Active Member
Posts: 52
Joined: Fri Dec 24, 2010 10:54 am

Post by mhelin »

Disable DFU? Oh yes, if you re-use the SPI pins you obviously can't reprogram the thing. I'll keep that in mind if I can, just ordered the USB3300 boards from ebay. In the meantime playing with the Startkit and the audio slice.

BTW. If anyone is missing a nice DIY audio board with an XMOS chip (XE216-512-TQ128 used on both) on board please take a look at the FreeDSP Aurora and Infinitas projects:

http://freedsp.cc/

It shouldn't be difficult to take the INFINITAS DSP/FPGA board design files into KiCAD, strip extra parts like FPGA - though it seems the design uses it to convert the 16 I2S IN/OUT to 4xTDM IN/OUT for the XMOS, I guess the I2S to TDM conversion could be implemented on the XMOS part alone as well - and add a pair of extra headers there in addition to existing FreeDSP (I2S) headers.

You got to solder the boards yourself, that might be problem for some.
Post Reply