How to change USB Audio Class mode on the fly?

Sub forums for various specialist XMOS applications. e.g. USB audio, motor control and robotics.
MaximLiadov
Active Member
Posts: 45
Joined: Mon Apr 16, 2018 9:14 am

How to change USB Audio Class mode on the fly?

Post by MaximLiadov »

In 2012 XMOS made excellence demonstration
https://youtu.be/q40ewSr05-w
Very impressive!

Have you (XMOS guys) any source code (or any documentation, any link) how to do the same trick with a modern XMOS xCore 200?

As for now, we just able to choose UAC mode in project file, before compiling firmware. So firmware could be either UAC1 or UAC2. In your video you did so on the fly. Do anyone have any information on this topic?

P.S. We have made XUF216 based prototype with the best in the world performance: 122 dBA SNR and 0.0001% THD. We use our own firmware with OLED screen connected (fw is based on XE216 multichannel KIT code example).

Image


MaximLiadov
Active Member
Posts: 45
Joined: Mon Apr 16, 2018 9:14 am

Post by MaximLiadov »

So, you basically said: look how cool it works! Yes, cool. So how is it possible??? Multiple firmware in RAM and some special trick to select it and reboot or? How exactly does it work? What was the role of hw switcher on the board?
User avatar
mon2
XCore Legend
Posts: 1913
Joined: Thu Jun 10, 2010 11:43 am

Post by mon2 »

The video shows off assorted Apple products so assuming this will require you to be Apple MFI approved. You should create a support ticket through xmos.com and supply your Apple MFI details to move forward. That is a common procedure with all such vendors when dealing with Apple products.

To apply for the Apple MFI programs, go here:

https://developer.apple.com/programs/mfi/
MaximLiadov
Active Member
Posts: 45
Joined: Mon Apr 16, 2018 9:14 am

Post by MaximLiadov »

Thank you, sir. I do not need in any Apple propietary connector. I need to select UAC mode on the fly.

2:25 "simply by changing a firmware that we are using we can change the operation of the device"

My question is: How to change a firmware by hw switch? Any clue?
User avatar
akp
XCore Expert
Posts: 566
Joined: Thu Nov 26, 2015 11:47 pm

Post by akp »

It looks to me like the image is selected at boot time per this app note: https://www.xmos.com/download/private/A ... rc1%29.pdf
I haven't tried it but I suspect you could make a loader.xc would work on xCORE-200 chips. I don't know if that's changing the UAC version on the fly enough for you or not.
MaximLiadov
Active Member
Posts: 45
Joined: Mon Apr 16, 2018 9:14 am

Post by MaximLiadov »

Thank you, good man! That's exactly what I was looking for. I will definitely try this recipe.