Open-source USB interface: Audio Widget - Page 151 - 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 28th April 2012, 10:06 PM   #1501
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
Quote:
Originally Posted by borges View Post
Could you try to rerun the test cases which needed the _LINUX_QUIRK?
I just tried a few mixed-sample-rate playlists (which used to give some troubles with an older firmware) and it worked like a charm. :happy:

(I tried with "linux_quirk" enabled; have to try with it disabled too, just to cross-check).
__________________
Quote:
"We should no more let numbers define audio quality than we would let chemical analysis be the arbiter of fine wines." N.P.
  Reply With Quote
Old 30th April 2012, 08:44 AM   #1502
Mjjg is offline Mjjg  Sweden
diyAudio Member
 
Join Date: Jan 2007
Quote:
Originally Posted by alexlee188 View Post
Hi Mjjg,

The mystery thickens. I downloaded the latest dfu-programmer from the svn repo (without any hacking to work with sdr-widget) and also built the latest libusb-1.0.8 from source. And the same link error occurs.

Anyway if you are using x86_64 here is the binary for U11.10:

dfu-programmer - sdr-widget - hacked dfu-programmer binary for x86_64 - Audio and Control Interface for Amateur Radio SDR and Audiophile USB-DAC - Google Project Hosting


Alex
That worked like a charm. Thanks!
  Reply With Quote
Old 30th April 2012, 09:14 AM   #1503
borges is offline borges  Norway
diyAudio Member
 
Join Date: Dec 2003
Location: Oslo, Norway
Quote:
Originally Posted by UnixMan View Post
I just tried a few mixed-sample-rate playlists (which used to give some troubles with an older firmware) and it worked like a charm. :happy:

(I tried with "linux_quirk" enabled; have to try with it disabled too, just to cross-check).
Good! Please check. They are supposed to be different. I did check that the feature is visible by code, and I took out my test case before committing to the repository. I did not check the actual Linux Quirk functionality.


BÝrge
  Reply With Quote
Old 30th April 2012, 12:30 PM   #1504
borges is offline borges  Norway
diyAudio Member
 
Join Date: Dec 2003
Location: Oslo, Norway
Default New HW batch arrived

Here is the first picture of the AB-1.12/1.13 prototype boards and the next module!

I'm already playing music on this setup, but it looks like some debugging is needed. The boards look OK, and I hope to start shipping them out soon. I'll keep you posted.


BÝrge
Attached Images
File Type: jpg DSC_0490.JPG (93.5 KB, 396 views)
  Reply With Quote
Old 2nd May 2012, 01:52 PM   #1505
borges is offline borges  Norway
diyAudio Member
 
Join Date: Dec 2003
Location: Oslo, Norway
Hi guys,

I have received the AB-1.12 / 1.13 prototype boards and a batch of new USB-I2S modules. Follow the link in my signature to learn more.

Cheers,
BÝrge
  Reply With Quote
Old 5th May 2012, 12:17 PM   #1506
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
Some more testing done.

Fisrt of all, "linux_quirk" confirmed (Linux 3.2, ALSA 1.0.24).

Without it, switching from a 16/44.1 stream to a 24/96 one will mess up playback.

This happen even if the lo-s/r track playback is stopped (by pressing "stop") before starting the hi-s/r track playback. Only pressing "stop" and then "play" again after the hi-s/r track (messy) playback have been started fixes the problem.

Curiously, switching between 16/44.1 and 24/48 works just fine.

Perhaps the problem arose only when the s/r difference between the two streams is large?

Switching back to lower s/r (24/96 -> 16/44.1) seems to work without problems also without "linux_quirk".

(player used for these tests: "gogglesmm" version 0.12.3).

BTW: what happen if you forget to switch and leave "linux_quirk" enabled on MacOS/X or Windows?


Quote:
Originally Posted by borges View Post
Does it work OK on Linux in UAC1 mode?
there seems to be a few minor problems.

First of all, WidgetControl.py (version from git "audio-widget", 2012-04-27) does not recognize the widget in UAC1 mode. Error: "DG8SAQ/MOBO device not found".

I guess this may have to do with the changed IDs? maybe productid=0x03e9 should match with "vendorid1" (0x16c0) instead of vendorid2 (0xfffe) ?

Try this patch, seems to work here.
Code:
--- WidgetControl.py~   2012-05-05 10:35:41.951960360 +0200
+++ WidgetControl.py    2012-05-05 12:36:04.699761123 +0200
@@ -33,8 +33,8 @@
 vendorid2    = 0xfffe
 productid1   = 0x05dc
 productid2   = 0x03e8
-productid3   = 0x0007
-productid4   = 0x03e9
+productid3   = 0x03e9
+productid4   = 0x0007
 confignum   = 1
 interfacenum= 0
 timeout     = 1500
@@ -151,7 +151,7 @@
                     founddev = dev
                     foundbus = bus
                     break
-                if (dev.idVendor == vendorid2) & (dev.idProduct == productid3):
+                if (dev.idVendor == vendorid1) & (dev.idProduct == productid3):
                     founddev = dev
                     foundbus = bus
                     break
(patch more complex than strictly required, I have also re-ordered it for purely "esthetic" reasons).

Other problem is that playing a 44.1/16 stream on the ALSA raw device "hw:n,0" fails with error:
Code:
play FAIL formats: can't open output file `hw:2,0': select_format error: Operation not permitted
using plughw:2,0 instead works fine.

Same stream in UAC2 mode works fine with both "hw:n,0" and "plughw:n,0" devices.

I guess in UAC2 mode it also accepts 16 bit streams directly while in UAC1 it only accept 32bit ones? Or perhaps it's a matter of what capabilities are known/announced to ALSA? Or is it some intrinsic difference between UAC1 & UAC2?

checking /proc/asound/DG8SAQI2C/stream0 I get the following for UAC1:

Code:
www.obdev.at DG8SAQ-I2C at usb-0000:00:1a.1-2, full speed : USB Audio

Playback:
  Status: Stop
  Interface 3
    Altset 1
    Format: S24_3LE
    Channels: 2
    Endpoint: 4 OUT (ASYNC)
    Rates: 44100, 48000
and for UAC2:
Code:
www.obdev.at DG8SAQ-I2C at usb-0000:00:1a.7-4, high speed : USB Audio

Playback:
  Status: Stop
  Interface 2
    Altset 1
    Format: S32_LE
    Channels: 2
    Endpoint: 2 OUT (ASYNC)
    Rates: 44100, 88200, 132300, 176400, 48000, 96000, 144000, 192000
    Data packet interval: 250 us
I guess that it is the S24_3LE vs S32_LE that makes the difference. Would it be possibile to use S32_LE also in UAC1? or are they standard-mandated formats?
__________________
Quote:
"We should no more let numbers define audio quality than we would let chemical analysis be the arbiter of fine wines." N.P.
  Reply With Quote
Old 5th May 2012, 04:33 PM   #1507
palmito is offline palmito  United States
diyAudio Member
 
palmito's Avatar
 
Join Date: Dec 2010
Location: Florida,US
Default BOM for the AB-1.12/1.13?

Is there a BOM for the AB-1.12/1.13 boards? Thanks.
  Reply With Quote
Old 5th May 2012, 04:40 PM   #1508
Gluca is offline Gluca  Italy
diyAudio Member
 
Gluca's Avatar
 
Join Date: Nov 2004
Location: Back to Italy
Borges

what size/package are the XOs on the USB-I2S board? Any suggestion for brands/types?

thanks!
  Reply With Quote
Old 6th May 2012, 02:22 PM   #1509
diyAudio Member
 
Join Date: Apr 2011
Quote:
Originally Posted by UnixMan View Post
there seems to be a few minor problems.

First of all, WidgetControl.py (version from git "audio-widget", 2012-04-27) does not recognize the widget in UAC1 mode. Error: "DG8SAQ/MOBO device not found".

I guess this may have to do with the changed IDs? maybe productid=0x03e9 should match with "vendorid1" (0x16c0) instead of vendorid2 (0xfffe) ?

Try this patch, seems to work here.
Code:
--- WidgetControl.py~   2012-05-05 10:35:41.951960360 +0200
+++ WidgetControl.py    2012-05-05 12:36:04.699761123 +0200
@@ -33,8 +33,8 @@
 vendorid2    = 0xfffe
 productid1   = 0x05dc
 productid2   = 0x03e8
-productid3   = 0x0007
-productid4   = 0x03e9
+productid3   = 0x03e9
+productid4   = 0x0007
 confignum   = 1
 interfacenum= 0
 timeout     = 1500
@@ -151,7 +151,7 @@
                     founddev = dev
                     foundbus = bus
                     break
-                if (dev.idVendor == vendorid2) & (dev.idProduct == productid3):
+                if (dev.idVendor == vendorid1) & (dev.idProduct == productid3):
                     founddev = dev
                     foundbus = bus
                     break


I guess that it is the S24_3LE vs S32_LE that makes the difference. Would it be possibile to use S32_LE also in UAC1? or are they standard-mandated formats?
[/QUOTE]

Hi UnixMan,

I have applied your patch and updated to branch audio-widget.

As for uac1 at 24 bits and uac2 at 32 bits, my suggestion is that if you are running Linux, just use uac2 all the time (with linux quirk applied). uac1 is more for Windows users.

Alex
  Reply With Quote
Old 6th May 2012, 03:15 PM   #1510
diyAudio Member
 
Join Date: Apr 2011
Linux Quirk is for LInux only. If you set Linux Quirk under Win or OSX your 88.2/96khz playback will be awful :-)

We are waiting for more evidence/datapoints to be gathered for OTHER uac2 devices such as those based on CMedia and Tenor chips before we can conclusively prove that the problem is with the Linux uac2 driver and not with the AW firmware. The XMOS firmware seems to have figured out a way for Linux compatibility but it is NDA.

Alex
  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 07:38 PM
usb audio interface david12 Equipment & Tools 14 10th October 2010 03:58 AM
Cheap Audio Interface (USB?) to PC agm2003 Instruments and Amps 11 16th September 2007 08:48 AM
Open call for suggestions on Open Source DIY Audio Design gfergy Everything Else 1 15th April 2007 08:33 AM
USB Interface Perfect?- Computer Audio fmak Digital Source 3 4th December 2004 11:24 PM


New To Site? Need Help?

All times are GMT. The time now is 09:03 AM.


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