USB Audio v9.0.0 released

Discussions about USB Audio on XMOS devices
danielp
Member++
Posts: 26
Joined: Tue Jul 16, 2024 9:52 am
Location: Bristol, UK

USB Audio v9.0.0 released

Post by danielp »

The latest version v9.0.0 of the USB Audio reference design software (sw_usb_audio) has been released.

There are bugfixes and new/improved features in this release. Here are some of the highlights:
  • DFU 1.1 compatible implementation
  • A major update to lib_mic_array which reduces the resource requirements when taking an input from PDM microphones with xcore.ai
  • The XCommon CMake build system is now recommended as the default, so XTC 15.3.0 is required for this; the legacy Makefiles are still included for users who aren't able to change over yet
There are updates to all of the dependent libraries that form this reference design, so please check the full changelog here: https://github.com/xmos/sw_usb_audio/re ... tag/v9.0.0
XMOS, Senior Software Engineer
ycui7
Member
Posts: 9
Joined: Wed Sep 25, 2024 5:46 am

Post by ycui7 »

the 8.1 version comes with all the dependencies in the same zip file. it was easy to build.

this one does not come with any.
the lib-xua simply says file does not exist on xmos website.

so I spend the effort to download all the dependencies manually from GitHub, where am I supposed to place them? I did the same as v8.1, the compiler simply complained about missing modules.

any instructions for dummies would be really appreciated.

C:\Projects\xmos2\sw_usb_audio-9.0.0\app_usb_aud_xk_evk_xu316>xmake
Building configuration 1AMi2o2xxxxxx
Checking build modules
xta: error: java version could not be determined
C:/Program Files/XMOS/XTC/15.3.0/build/xcommon/module_xcommon/build/../build/Makefile.common1:565: *** Missing build modules. Cannot continue. Stop.
xmake[1]: *** [check_module_deps] Error 2
xmake: *** [1AMi2o2xxxxxx.all] Error 2


below is how my folder looks like

Directory of C:\Projects\xmos2

12/17/2024 09:36 PM <DIR> .
12/17/2024 09:36 PM <DIR> ..
12/17/2024 09:34 PM <DIR> lib_adat
12/17/2024 09:34 PM <DIR> lib_i2c
12/17/2024 09:34 PM <DIR> lib_i2s
12/17/2024 09:34 PM <DIR> lib_locks
12/17/2024 09:34 PM <DIR> lib_logging
12/17/2024 09:34 PM <DIR> lib_mic_array
12/17/2024 09:34 PM <DIR> lib_spdif
12/17/2024 09:34 PM <DIR> lib_sw_pll
12/17/2024 09:34 PM <DIR> lib_xassert
12/17/2024 09:34 PM <DIR> lib_xcore_math
12/17/2024 09:34 PM <DIR> lib_xua
12/17/2024 09:34 PM <DIR> lib_xud
12/17/2024 09:34 PM <DIR> sw_usb_audio-9.0.0
1 File(s) 0 bytes
15 Dir(s) 674,721,435,648 bytes free
ycui7
Member
Posts: 9
Joined: Wed Sep 25, 2024 5:46 am

Post by ycui7 »

I don't know what is missing. But I have the latest 15.3.0 XTC tools. When I followed the manual, I got this.

C:\Projects\xmos2\sw_usb_audio-9.0.0\app_usb_aud_xk_evk_xu316>cmake -G "Unix Makefiles" -B build
'cmake' is not recognized as an internal or external command,
operable program or batch file.


I am just a person trying to get my small business started, I am not a software engineer who wants to spend time to set up toolchains manually just to get build going. How come the release simply does not compile?

Is cmake part of XTC tools or not ?
ycui7
Member
Posts: 9
Joined: Wed Sep 25, 2024 5:46 am

Post by ycui7 »

ycui7 wrote: Wed Dec 18, 2024 6:48 am I don't know what is missing. But I have the latest 15.3.0 XTC tools. When I followed the manual, I got this.

C:\Projects\xmos2\sw_usb_audio-9.0.0\app_usb_aud_xk_evk_xu316>cmake -G "Unix Makefiles" -B build
'cmake' is not recognized as an internal or external command,
operable program or batch file.


I am just a person trying to get my small business started, I am not a software engineer who wants to spend time to set up toolchains manually just to get build going. How come the release simply does not compile?

Is cmake part of XTC tools or not ?

Looks like CMake must be installed manually, together with git. The online manual says 15.3 does not require this step, but it does.
danielp
Member++
Posts: 26
Joined: Tue Jul 16, 2024 9:52 am
Location: Bristol, UK

Post by danielp »

To get started more quickly, you can download the zip from here - this includes all the library dependencies and contains prebuilt XE binaries that you can run immediately if you wish.

CMake and git are not part of the XTC Tools so you will need to install them yourself; note that if you download the zip archive with all the dependencies, git is not required, so you'll only need to install CMake.
XMOS, Senior Software Engineer
User avatar
fabriceo
XCore Addict
Posts: 244
Joined: Mon Jan 08, 2018 4:14 pm

Post by fabriceo »

Hi Guys
I m still running on Mac OSX ventura (because this is the last version compatible with XTime Composer 14.4.1 on Mac) and then I ve just tested the SW USB 9 package. just wanted to share a positive experience:

go in your home directory with the Terminal
create a Sandbox folder eg SW_USB_9
in this folder unzip the sourcecode.zip from github release 9. Then move to one of the application folder:
cd ~/SW_USB_9/sw_usb_audio-9.0.0/app_usb_aud_xk_evk_xu316
and start by launching a cmake command which will automatically download the dependent libraries from xmos github.
cmake -G "Unix Makefiles" -B build
the lib_xxx files will be downloaded and stored in the sandbox folder (eg SW_USB_9 here)
then build the 2 predefined config with
xmake -C build
if you have an error about java class file 55, just install a java VM >= v11 and restart your shell.
all works well, you get the 2 xe files in the bin folder;
as of now you can also use the former "xcommon" build system and type instead
xmake CONFIG=2AMi2o2xxxxxx

from there, it is possible to use XTC 14.4.1 by creating "new projects" in the workspace, pointing on each of the folders of the sandbox,
and to build and work seemlessly in this enviroenement, as far as I can say (may be some limitations not seen yet :) )
Capture d’écran 2024-12-26 à 11.33.39.png
After installing XTC14.4.1 and XTC15.3.0 together, to launch XTC14.4.1 with the XTC15.3.0 tools,
one can create a "command" file with a line calling the setup of the XTC15.3.0 environment, like this:
Capture d’écran 2024-12-26 à 11.38.35.png
EDIT January 3rd : XTAG4 not runing from XTC14.4.1 with XTC15.3.0. But this works perfect with XTC15.2.1 so I revert back to 15.2.1 ... this might be due to the huge changes in xgdb mentioned in the release note which are no more compatible with XTC14.4.1 front end...
best regards
Fabriceo
You do not have the required permissions to view the files attached to this post.
User avatar
Ross
Verified
XCore Legend
Posts: 1154
Joined: Thu Dec 10, 2009 9:20 pm
Location: Bristol, UK

Post by Ross »

The missing zip file is now uploaded alongside GitHub release. So you can now access it from either xmos.com or GitHub.com, just like the previous releases.
Technical Director @ XMOS. Opinions expressed are my own