Open-source USB interface: Audio Widget - Page 101 - diyAudio
Go Back   Home > Forums > Source & Line > Digital Source

Digital Source Digital Players and Recorders: CD , SACD , Tape, Memory Card, etc.

Please consider donating to help us continue to serve you.

Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving
Reply
 
Thread Tools Search this Thread
Old 27th January 2012, 06:27 AM   #1001
diyAudio Member
 
Join Date: Apr 2011
Hi Demian,

The code fragment I posted is from the Linux alsa driver. So some of your questions/comments should be directed to Daniel et al :-)

I'm looking at the mpd source code now and it appears that mpd decodes "chunks" of data continuously (even across song boundaries) and then passes the chunks to a player controller to play. It does check the audio_format (which includes the sampling rate) of the chunks to see whether it has changed half-way, but it DOES NOT seem to do anything about it (such as sending commands to the alsa output to change format etc.) A pause or stop, however, RESETS the audio_format to the new format of the chunks.

when I have studied mpd source code well enough to understand better, I may be able to just patch mpd to reset the audio_format when playing a new song for testing :-)

It is easier to patch mpd than to meddle with the alsa driver and Linux kernel :-)

Alex
  Reply With Quote
Old 27th January 2012, 11:03 AM   #1002
UnixMan is offline UnixMan  Europe
diyAudio Member
 
UnixMan's Avatar
 
Join Date: Apr 2005
Location: Perugia + L'Aquila, Italy
Send a message via ICQ to UnixMan
Of course the MPD rate change bug must be fixed.

Nevertheless, just for the sake of curiosity, I wonder: is the -25% to +50% limit required by the standard or some other very good reason? couldn't / shouldn't the driver just obey whatever rate feedback it receives?

And, from "our" side, would it be possible to change the widget firmware so that it never issue rate feedback changes larger than -25% or +50% at once?

Back to clock power supply and noise, another interesting discussion in the "Asynchronous I2S FIFO project, an ultimate weapon to fight the jitter" thread.
__________________
Quote:
"We should no more let numbers define audio quality than we would let chemical analysis be the arbiter of fine wines." N.P.

Last edited by UnixMan; 27th January 2012 at 11:07 AM.
  Reply With Quote
Old 27th January 2012, 11:16 AM   #1003
borges is offline borges  Norway
diyAudio Member
 
Join Date: Dec 2003
Location: Oslo, Norway
Demian and Oneoclock,

do you have updated PSU schematics? I can try to put a couple different varieties on the next board.

BÝrge
  Reply With Quote
Old 27th January 2012, 12:12 PM   #1004
diyAudio Member
 
Join Date: Apr 2011
Hi Demian, UnixMan et al,

After studying the alsa uac2 driver auto rate feedback format detection code again, I now have a workaround in the firmwware :-)

Please test:

audio-widget-nik-2012-01-27.elf - sdr-widget - Unified firmware for audio-widget. For Linux alsa uac2 driver and mpd playback only May not work properly under Win or OSX. - Audio and Control Interface for Amateur Radio SDR and Audiophile USB-DAC - Go

Note that this firmware specifically addresses the low-->high sampling rate change issue when using Linux uac2 driver (with mpd), and it may NOT work under Win or OSX.

So it looks like there is no need to fix mpd or the Linux uac2 driver for now :-)

In fact, the more I study mpd source code, I more I think it is NOT the problem. It does check all the chunks for the audio_format to make sure that the audio_format in the chunks are the same as the audio_format of the player control.

So I have to say sorry to mpd for saying bad things about it :-)

Alex
  Reply With Quote
Old 27th January 2012, 07:23 PM   #1005
1audio is online now 1audio  United States
diyAudio Member
 
Join Date: Mar 2004
Location: SF Bay Area
Blog Entries: 3
Alex:
It all works. I can't get it to fail no matter which combination of sequences of sample rate switching I use. Any combination of up-down just works.
There is only one very small thing I have noticed. When shifting up or down the beginning of a track seems to "glitch" slightly. If the track starts with silence you hear nothing. Zero cut tracks have a sort of pop and cut off part of the first syllable. I have noticed this on other DACs under other circumstances. Its just a reality of trying to figure out the new sample rate.

I'll try it on Windows UAC2 and see what I find.
__________________
Demian Martin
Product Design Services
  Reply With Quote
Old 27th January 2012, 07:37 PM   #1006
1audio is online now 1audio  United States
diyAudio Member
 
Join Date: Mar 2004
Location: SF Bay Area
Blog Entries: 3
On Windows the 88.2 and 96 did not work right. 44.1, 48.176 and 192 do not seem to be a problem in any sequence. This is with JRiver 17 ASIO, gapless, with no hardware pausing or other processing, I hope.

Its really close to ideal now.
__________________
Demian Martin
Product Design Services
  Reply With Quote
Old 28th January 2012, 01:26 AM   #1007
diyAudio Member
 
Join Date: Nov 2010
Location: Toronto
Default USB5102 now available

Hi,

I finally got around to assembling my USB5102 DAC card. Other than the usual missed solder joints it worked like a charm. It is currently running Alex's latest code and was tested with an antique 2.6.38 kernel. I also ran it on a Win7 netbook with no problems. I am only testing for electrical and not the quality of the firmware or drivers. I leave that rats nest to others.

I assembled the card using a temp controlled soldering iron with a 1/32" tip and a pair of quinquagenarian eyes. I built the card in stages: blinkyflashy, power supplies + clock and finally the DAC. If I can mount 0603 size parts anyone can

The USB5102 comes with a custom .3ps SI532 clock. There are ADP151 regulators for clock, Dvdd and Avdd. The board can be power from the USB port or any or all regulators my be bypassed.

Sound quality: sounds fine to me but I am biased.

I have inventory for 13 kits and they can be ordered from
Yoyodyne Consulting//Audio Hardware/USB5102
You can see a pic of the finished board and download the document archive located on the page for schematics and layout.

Happy listening
George Boudreau
Yoyodyne Consulting.
  Reply With Quote
Old 28th January 2012, 03:02 AM   #1008
diyAudio Member
 
Join Date: Apr 2011
Quote:
Originally Posted by borges View Post
Demian and Oneoclock,

do you have updated PSU schematics? I can try to put a couple different varieties on the next board.

BÝrge
Hi Borge,

In addition to the Demian PSU for the XO and the AVDD, please also see whether there is space for the opto for the divided MCLK to uC and the i2s lines to the DAC.

Alex
  Reply With Quote
Old 28th January 2012, 07:08 AM   #1009
1audio is online now 1audio  United States
diyAudio Member
 
Join Date: Mar 2004
Location: SF Bay Area
Blog Entries: 3
I suggest (strongly) that you use a transformer for the mclk. This might work: Digi-Key - 553-1655-ND (Manufacturer - CX2074NL) Optos for the others are fine, especially if they are latched synchronously with the clock. Opto's will have higher jitter, not that that should be an issue with this architecture.

I don't have any changes for the regulator circuit (except the protection diode, which ideally should be a Shottky or Germanium).
__________________
Demian Martin
Product Design Services
  Reply With Quote
Old 28th January 2012, 10:30 AM   #1010
borges is offline borges  Norway
diyAudio Member
 
Join Date: Dec 2003
Location: Oslo, Norway
OK guys,

regulator: Demain, could you please point to the latest schematic?

isolators: It is hard to make room for everything on the new AB-1.12 prototype board. Instead I have finished the design of a new module which uses both today's somewhat impractical 2.0mm pitch AND a 2.54mm/100mil pitch for its IO. That way it'll be easy to design any kind of go-between that inserts isolation (or what not) between module and Analog Board.

The revised module's 100mil IO and all analog board 100mil IO will be on the same grid.

The new module has slightly improved USB beads. It also has room for XOs. I know it's far from ideal to move those away from the DAC, but a lot of people wish to interface DAC boards without clocks.

Unfortunately, there is no room for I2S or SPDIF headers on the module. But those can be fit on a veroboard the new module will fit on.


BÝrge
  Reply With Quote

Reply


Hide this!Advertise here!
Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Async 192Khz USB - the SDR-Widget collaborative project SunRa PC Based 5 26th April 2011 06:38 PM
usb audio interface david12 Equipment & Tools 14 10th October 2010 02:58 AM
Cheap Audio Interface (USB?) to PC agm2003 Instruments and Amps 11 16th September 2007 07:48 AM
Open call for suggestions on Open Source DIY Audio Design gfergy Everything Else 1 15th April 2007 07:33 AM
USB Interface Perfect?- Computer Audio fmak Digital Source 3 4th December 2004 10:24 PM


New To Site? Need Help?

All times are GMT. The time now is 07:14 PM.


vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2014 DragonByte Technologies Ltd.
Copyright ©1999-2014 diyAudio

Content Relevant URLs by vBSEO 3.3.2