Open-source USB interface: Audio Widget

Hi Audiodesign,

The various Windows versions seem to treat USB audio as USB1.1==USB Audio Class 1. There is little distinction in which specification belongs where.

In the Audio Widget project, the UAC1 code was recently set to always enumerate as USB1.1, something which improved Windows functionality.

What this means is that you can squeze in 24 bits stereo at 96ksps. But the Atmel chip we're using doesn't allow that. So _driverless_ Windows is, for us, upwards limited to 24/48. (With UAC2 there's a different story with 24/192 stereo being our limit on Linux and MAC.)

For Windows >24/48 we have four options:
- Wait for Microsoft to realize no native UAC2 means they're in the slow lane in consumer audio
- Use a different chip (which will not be open source but have NDAs all over)
- Use somebody's existing driver (which will probably cost $$$)
- Write an open-source Windows UAC2 driver (which will take time but really disrupt the market)

Cheers,
Børge

192KHz 24 bit are supported on Windows systems like XP and Seven ?
 
Hi all,

For detailed technical discussions of UAC2 implementation, it might be better to post in the audio-widget group.

The reasons for UAC1 limitation are several. The key issue is that the Windows uac1 driver can only send/receive audio data every 1 millisecond. This is a legacy from USB1 specifications. With UAC2, audio data can be transferred every 125 microsecond (as per USB2 specs), and there are exotic multiple transfers (up to 3) per 125 microsecond options (only possible with some hardware) etc.

The limitation is entirely a limitation of the Windows native (UAC1) driver. With UAC2 as implemented in Linux and OSX, 192/24 async audio with rate feedback is NATIVELY supported.

As Borge pointed out, there are commercially available Windows UAC2 drivers. So technically it is possible to use these drivers for the audio-widget. However, you have to pay $$$$ to use them legally.

Currently Linux and OSX users are the "minority" so M$ has no incentive to come up with native UAC2 driver. But I predict that this will change soon.

Android is based on the Linux kernel. Hopefully in the near future a newer Android will be based on the latest ( > 2.6.38) LInux kernel, and then UAC2 will be natively supported by Android.

So we will be able to play 192/24 music with any new Android devices, including tablets and mobile phones (that have USB ports).

I'm sure any serious music listener will be able to afford and switch to an Android device :)

Alex
 
Would you pay for a Windows 24/192 driver?

Hi guys,

here is a question: would you pay +- €15 / USD21 for a Windows driver that gives you 24/192 stereo playback?

The driver cost could be an extra cost to a kit you already bought, or it could be an optional extra cost bringing the AB-1.1 from USD120 to USD141, or stand-alone USB-I2S module from USD70 to USD91.

We are looking at some licensing options, but the license must be bought in bulk for several users.


Cheers,
Børge
 
Member
Joined 2004
Paid Member
The Wavelength driver won't work since its focused on Gordon's products and he is paying the approx $20 ea for that driver.

The Centrance driver doesn't see it either, again they wrote it to support their devices.

I for one would support getting a custom driver (ideally one that could support all UAC2 dacs if possible) for $21.
 
We'd have to go to the driver vendors that Wavelength and Centrance are using.

The $21 price tag is the bare minimum of what each hardware buyer would have to pay me or George so that we could pool that money and get a driver. But such a driver would only work on hardware from one vendor. We could probably make the SDR-Widget and Audio-Widget projects appear as one vendor. Also, the driver isn't a one-time buy. It costs €1000 for every 6 months you distribute it.

Demian's ideal driver which supports all UAC2 DACs would probably not cost anything :) The reason being that it would have to come from Microsoft or from an open source project. I'll happily voluntare to organize and test in a project like that, but unfortunately I have no experience as a driver coder.

The existing driver programmers sell one license per chip manufacturer or one license per end-equipment manufacturer.

I have asked Atmel if they would consider strapping an UAC2 driver onto our efforts, but it's been very very quiet from that front. I don't think they bother about non-iPhone music playback.

Børge

The Wavelength driver won't work since its focused on Gordon's products and he is paying the approx $20 ea for that driver.

The Centrance driver doesn't see it either, again they wrote it to support their devices.

I for one would support getting a custom driver (ideally one that could support all UAC2 dacs if possible) for $21.
 
windows licence

Although I only use Linux, I would be happy to contribute to a group purchase to help make this more universal in application (I may also want to lend it to someone suing Windows to try)

Ian

edit: I meant 'using' not 'suing' (Is this freudian?)


Hi guys,

here is a question: would you pay +- €15 / USD21 for a Windows driver that gives you 24/192 stereo playback?

The driver cost could be an extra cost to a kit you already bought, or it could be an optional extra cost bringing the AB-1.1 from USD120 to USD141, or stand-alone USB-I2S module from USD70 to USD91.

We are looking at some licensing options, but the license must be bought in bulk for several users.


Cheers,
Børge
 
Last edited:
This is a very interesting project! I have been looking at USB DAC solutions that operate at 24/44 with native windows drivers as a companion to an upcoming desktop version of the existing O2 Headphone Amplifier.

The ideal would be a single low cost daughter board with a USB jack and the power and line level audio connections via a pin header (getting its power from the headphone amp). The headphone amp's low noise power supply could be adapted to the DAC and analog circuitry's needs. It could use the ES9022 or another DAC. I'm thinking something like a lower cost version of this ($175 US + shipping) Tenor based board:

Violectric USB 24/96 Dac Board

The daughter board could be designed to be as "generic" as possible so it could be incorporated into other designs besides the upcoming desktop amp I'm working on (likely to be called the "ODA"--Objective Desktop Amp).

I'm curious if there's much interest in adapting this design to such a daughter board?
 
Last edited:
Tenor 7022L + ES9023 MiniDAC

I don't think either the AB-1.1 or my USB9023 would be a low cost fit to your hpa design. However, I was bored a few weeks ago and turned out quick board, 5cm x 5cm, using the Tenor 7022L and the ES9023 DAC. (I have attached a rendering of the pcb) I expect the circuit boards to arrive this week and will see this layout sounds.

The layout is standalone but there would be no problem adapting the design to take the supply from your HPA and feed the audio back to you.

Regards
George Boudreau
-----------
Yoyodyne Consulting
 

Attachments

  • MiniAudio-300dpi.jpg
    MiniAudio-300dpi.jpg
    65.1 KB · Views: 504