Open-source USB interface: Audio Widget

Hi all,

Thanks to Nikolay, one of the several firmware developers of the audio-widget, we now have async out with rate feedback in uac1, which works under all OSes including Windows, without the need for any custom drivers. (We already have async out with rate feedback in uac2 for some time - however, this requires a custom driver under Windows.)

Latest firmware can be downloaded from:

Downloads - sdr-widget - Audio and Control Interface for Amateur Radio SDR and Audiophile USB-DAC - Google Project Hosting


Also, following the mod done by Wei adding Black Gate N caps to the audio-widget to improve the sound quality, I have also done a similar mod, using the far cheaper Sanyo OSCON caps, 25V 15uF, on the AB-1 board by Borge, and also on the USB9023 board by George.

With the OSCON caps, I can report significant improvement in the bass which is tighter, stronger and clearer. There is also some slight improvement in the vocal range, with voices sounding more natural.

Note that the above are using USB power to the widget.

Alex
 
Hi guys,

following Alex's and Wei's suggestions, I'll make changes to the AB-1.1 board to fit these capacitors.

Just one thing: should we care about the USB inrush current requirement? 10µF seems to be a common maximum load. But what about decoupling on the other side of LDOs?

Borge
 
a question

Hi guys,

While waiting for the USB9023 board from George and building courage to update my Linux kernel I want to pass this question by you...My music server is an Atom system running Ubuntu 10.10 with mpd as the player. My future dream system would do digital crossover and digital room correction (DRC) on the server, thus generating a total 6 streams (that must be somehow synchronized). Hopefully there are enough cycles in the processor to do all this real-time,
but if aren't I can always upgrade the motherboard. The question is, could I multiplex all 6 streams on a single USB, and of course de-multiplex at the USB-DAC end and get 6 channels of analog audio ?? From a bandwidth point of view it would seem possible, a 24/192 stream would need 600 KB/sec, so 6 streams would need 3.6 MB/sec way below what USB 2.0 can do comfortably (20-25 MB/sec). However I know nothing about how current USB multiplexes right and left channels to maintain sample synchronicity and if this could be somehow expanded to 6 channels.
What do you guys think, is this even remotely possible, or is it only a pipe dream ? Of course, I understand, it will require special drivers/code and I could write some...but is there anything inherently impossible about this ?

thanks a lot, Alex
 
Last edited:
We have started designing a multichannel version of the audio-widget. However, it will require a different architecture/microcontroller. We are considering a C-Media uac2 chip.

Curious - you're using ARM now aren't you? Does a multichannel solution exceed the capabilities of ARM microcontrollers?

Disclaimer - I'm a big fan of ARM so very curious to know what their limitations are in practical applications such as this one :)
 
Hi Abraxalito et al,

1. The current audio-widgets use the Atmel AT32UC3A3256 uC, which AFAIK is not arm based - so you can relax :)

2. For multichannel work, the limitation is not at the USB uac2 end, but at the i2s interface to the DACs end.

The AT32UC3A3 has only a single i2s port, which is just enough for stereo capture and playback. i2s data transfer occurs under direct memory access (PDCA) with little cpu overhead (just to service the interrupts to switch the ping pong buffer). All these are working nicely for stereo work.

For 7.1 channel work, you will need a better way to communicate with the DAC (or multiple DACs), either with multiple i2s, single/multiple channel TDM (Time Division Multiplex), or with a completely novel approach. Our present design thinking is that we could use an FPGA to connect to the DACs, and for the uC to access the FPGA as an external memory - ie direct memory mapping, which has tremendous bandwidth.

Alternatively, there are chips specifically designed for multichannel uac2. One of the chips we are studying is the C-Media chip. If it is feasible, it will form the basis of the next version of the audio-widgets.

Of course, we will continue to improve and support the AT32UC3A3 based audio-widgets for stereo work. The current stereo audio-widgets are proving to be an excellent performer, and are a joy to listen to music with. We hope to get the AB-1 and the USB9023 to the hands of more audiophiles for them to provide us with listening test feedback.

Alex
 
Hi Alex

Thanks for giving us such a comprehensive answer. I agree there's a big challenge about getting lots of I2S channels out of microcontrollers. But help might be just around the corner [dons ARM marketing hat quickly]. Have you downloaded data on the NXP LPC4300 series? Its not available yet but I've seen demos using the chip on YouTube so probably will be out by year-end. It has a new peripheral which NXP has designed called 'Serial GPIO'. It allows creating custom serial protocols, and there are I think 16 pins you can use to output. So an extra 8 channels of I2S should be possible in theory. There are FIFOs available to use on those ports too, so the CPU overhead should be manageable. To help further there's a second core on that device too which can offload I/O handling. All in all looks like a part sent from heaven for digital audio guys :D
 
Cool, I'll keep my eyes open for the multichannel stuff...If I could help please let me know, I can program in assembler and C (though I don't know how much time I could devote to this, and haven't written a line of assembler in over 25 years...;) ). I will sign with my login name "alexmi" so we avoid the confusion with alexlee.

thanks, alexmi
 
More hardware available soon

Hi guys,

a new batch of Audio Widget is being ordered these days. Schematics are at:
http://www.qnktc.com/mod_ab1/Ab-11_20110703_B_Sch.pdf
http://www.qnktc.com/mod_ab1/Usbmod_20110703_b_Sch.pdf

This piece of kit is quite similar to the first Audio Widget with a few changes:
- It now comes in a case, not just separate boards
- USB, audio and buttons are on the back
- The Analog Board is prepared for external power supplies/batteries/chargers
- The clock MUXing has been improved
- Critical components are sourced in Europe, not China.

Another important change is that place is reserved for Ø6.3/2.5mm pitch OS-CONs and Panasonic EEF-CD0J100R capacitors all over. I'm planning to populate quite a few of them, but would like some more feedback on your preferences.

The price is USD120 for a complete box, USD70 for just the USB-I2S module. There's a USD30 discount for each original AB-1 kit for those who want to upgrade.

Feel free to PM me to order order kits. But please don't transfer any money yet before working hardware arrives with me.

Cheers,
Børge
 
Hello Alex,


1. What hardware - sdr-widget or AB-1 or USB9023 I use AB1
2. What Windows - XP or Win7, 32 or 64 WIN XP 32
3. What firmware - unified firmware for sdr-widget? Or for audio-widget? unified firmware

When u plug the widget in for the first time, does windows ask u to install a driver? Yes


Zelter
 
Hi UnixMan,

It depends on what you want/need and how deep is your pocket :)

I am using my audio-widget AB-1 and USB9023 on a daily basis. I'm now travelling and with my laptop, USB9023 and Beyerdynamic DT-990 headphones, I'm having a great time listening to music (88.2, 96 and 192khz 24 bit), and watching movies. You can buy an AB-1 for about US$160 and the USB9023 for under US$100. It is USB powered and you can slip either one into the laptop case. You should listen to one first and you might be surprised at how good it already is.

If what you want/need is an 8-channel ES9018 based DAC, then help to design one :)

Our Atmel based USB-I2S module is limited to stereo. George is designing stereo USB-DAC boards using ES9012, PCM1794A and/or Wolfson DAC's. These will probably make it to the ALPHA stage in the near future, after the present run of 50 revised USB9023 kits.

A multi-channel USB interface is in the drawing board and it will involve either FPGA or chips specifically designed for multi-channel USB from C-Media and others. This will take longer to materialize.

The whole rationale of our project is to provide open source firmware and open source schematics, to enable other experimenters to improve and innovate :)

Alex
 
It depends on what you want/need and how deep is your pocket :)
unfortunately, there are rather conflicting issues about that. Were my pocket deep enough, likely I would have bought the Accuphase and lived happy. Unfortunately, my pocket can't afford that much. :(

(it cost "only" 1,115,000 Japanese Yen =~ $15,000 USD).

I am using my audio-widget AB-1 and USB9023 on a daily basis. I'm now travelling and with my laptop, USB9023 and Beyerdynamic DT-990 headphones,
I'm not interested at all in portable operation. And simply can't stand any ear/headphones, ever. Pretty different goals... :)

It is USB powered
that's the worst thing you can do about suond quality!

Of course it's a nice handy feature for a portable device (such as your nice small single board version, which is really great for that use), but it is absolutely a no-go for anything which has any ambition to be really "top quality" sound-wise.

Please have an in- depth look to the "ART - Legato". This nice product, connected to a TP Buffalo II (ES9018 used in two channel mode for best quality), does really makes wonders!

(I was about to write literally "miracles": what it can do is simply unbelievable if you don't listen to it yourself through an adequately high-quality system!)

Even with CD standard source material (which is the only thing it does support) it sounds WAY better than any other s/pdif source we've ever tried.

Compared e.g. with the popular " http://www.m2tech.biz/hiface.html " (which use a non-standard USB2 asynchronous connection) there is simply no game. The "Legato" is on a league on its own. It sounds way better than the hiFace not only when playing the same (44/16) source material, but even when using HD source material! (which had to be downsampled with sox to be used with the Legato)

Modifiying the hiFace by removing it's internal switching PSU and providing external (linear and clean) supplies does improve it, yet even with such (hard) modifications it still does not even approach the sound quality of the Legato.

So, what I'd like to see from the "audio-widget" project would be something which have the quality of the Legato but using UAC2, thus supporting also HD material. "Directly" connected to a DAC of the highest possible sound quality.

A truly "hi-end" product, that can be built at a reasonable price.

Of course, the concept of what a "reasonable price" is may be pretty different among people. ;) To me (and I guess for most other audiophiles, too), for a "top-quality" USB DAC complete with PSUs and box a part cost which is an order of magnitude higher than that of the current audio-widgets (that is around 1-2K US$) would be more than reasonable... it would be even cheap! :cannotbe:

(after all, that's still more than an order of magnitude less than a good Accuphase ;) ).


If what you want/need is an 8-channel ES9018 based DAC, then help to design one :)
uh? no-no-no-no! Perhaps you misunderstood my point. :)

I do not need (nor want) multi-channel! I want stereo! Only 2 channels. But top quality.

The commercial product I was talkin' about in the previous post is NOT a multichannel thingy. It's just an hi-end, high quality stereo DAC, (only 2 channels). Which uses two ES9018 chips per channel, that is 16 DAC modules for one channel!

(in other words, it uses a total of four ES9018 just for "simple" stereo output!)

The whole rationale of our project is to provide open source firmware and open source schematics, to enable other experimenters to improve and innovate :)
sure. And that's the great thing about it!
 
Last edited:
Hi UnixMan,

In that case you are talking about an AB-2 :)

Well we are hoping that someone from this forum will take our USB-I2S module and design an AB-2 for it, having seen (and preferably heard) the AB-1 or AB-1.1.

Our team of designers (speaking more for myself, specifically) are not experts in top end analog designs. So we welcome designers to come up with kits to mate with the USB-I2S module, with top end features:

1. PSU with independent, isolated, low noise, low impedence etc.
2. DAC with dual-mono, quad-mono, or more extreme designs
3. super duper IV stage, eg extremist-DAC circuitry
4. buffer/line-driver/headphone driver stage, maybe tube based.

There is a tradeoff between feature/quality and cost. Maybe the right balance will appeal to more audiophiles and if your can sell 50-100 units, the cost of design and parts will be lower.

Our present focus is to get AB1.1 and USB9023 (both are available for order now) to the hands of more audiophile experimenters for their reviews and comments. I have also mentioned that George is designing single board USBDAC's similar to USB9023, using ES9012, PCM1794A or Wolson DAC's. Thus we are targeting the under $200 diyaudio segment.

We will leave the > $1000 segment to more capable hands :)

Alex
 
In that case you are talking about an AB-2 :)
yes. But not only. :)

Also the digital board may need some improvements. That's why I mentioned the Legato (which is just an USB to s/pdif UAC1 async interface, see here: http://www.audiofaidate.org/forum/viewtopic.php?t=8408 ).

Before hearing that one, I was (naively...) thinking that with an async connection and a good local clock one could basically forget about the digital domain and all of its problems. As I discovered the hard way, it's definitely not that simple. Even with an async link, there is still a long way to go. Have a look at the interesting measurements made by my friend and colleague George "Joseph K":

DIYHiFi.org • View topic - Some jitter analysis - and beating of a dead horse..

To obtain such amazing results, the Legato uses a lot of care in power supplies, clock, signal routing, layout, etc. Most (if not all) of the tricks used there have been previously documented by Joko (the Legato designer) on either this or that other forum, and perhaps similar strategies and care may/should be applied to the audio widget as well.

1. PSU with independent, isolated, low noise, low impedence etc.
I definitely second your points. :)

BTW: for what regards PSUs, have a look at "Salas shunt reg." and/or Joko designs on this forum. ;)