Discussion:
[Alsa-user] Troubles with Sound Devices Usbpre setup: very bad audio
athos bacchiocchi
2011-11-17 17:13:26 UTC
Permalink
hello everyone,

I just got an old Sound Devices Usbpre (not the "2", the old one), and i
would like to use it with gnu-linux (ubuntu).

I couldn't make it work properly, neither using jack nor pulseaudio. Both
of them recognize it but jack won't start and selecting the device in
pulseaudio and playing a file with vlc only results in glitches and
scratches (you can hear that they somehow correnspond to the song being
played, but they're actually just weird noises).

I have a quite messy ubuntu 10.10 installation, with many tweakings to the
audio stack. So i switched to another pc with an ubuntu 11.04 fresh
install, and the problem is the same. I checked in alsa mixer, the device
is recognized and there is just one control for pcm volume. I tried playing
a wave file direcly using aplay, and i get the same very bad sound, even
though with the -vv option i can se the signal level bar following the
music signal.

The device has two inputs (with several connectors each) and two analog
outputs, two spdif outputs and two headphone outputs (apparently not
working), but only the volume control is shown in alsa mixer. Also, there
are some controls on the board (phantom, input selection, mono switch, plus
the various volume knobs) and a led meter, but none of them seems to
respond.

I couldn't find resources searching on the web, just some old occurences
referring to people trying to write a module for it, and lot of stuff about
usbpre 2.
Is there any hope i can use the device in linux?

If it might help, here is the result of ulils_alsa-info.sh on the 11.04
machine:
http://www.alsa-project.org/db/?f=7c22a99a7d024c0d8a54807b1065882d0e21c3cd

thanks in advance!
athos
Daniel Mack
2011-11-17 17:41:05 UTC
Permalink
Post by athos bacchiocchi
hello everyone,
I just got an old Sound Devices Usbpre (not the "2", the old one), and i
would like to use it with gnu-linux (ubuntu).
I'm surprised this works at all, as Sound Devices offers[*] drivers even
for Mac OS X, which normally handles class compliant audio devices quite
well. I had a look at the installer package and indeed, it contains a
driver that operates on device-level, which has precedence over the
generic, class-compliant driver.

This is usually a sign that the device is in fact incompatible to the
audio class, even though appearantly, it has class compliant headers.
Can you send the output of "lsusb -v"?

Daniel


[*] http://www.sounddevices.com/download/usbpre-drivers.htm
athos bacchiocchi
2011-11-17 18:09:04 UTC
Permalink
Post by Daniel Mack
This is usually a sign that the device is in fact incompatible to the
audio class, even though appearantly, it has class compliant headers.
Can you send the output of "lsusb -v"?
Thanks for the help. The result of lsusb -v is in the textfile attached.

athos
Daniel Mack
2011-11-17 18:26:38 UTC
Permalink
Post by Daniel Mack
This is usually a sign that the device is in fact incompatible to the
audio class, even though appearantly, it has class compliant headers.
Can you send the output of "lsusb -v"?
Thanks for the help. The result of lsusb -v is in the textfile attached.
As I suspected - wonderfully class compliant.

Do you have access to a Mac? Would be interesting to see if that device
would be handled well by the generic driver in OS X (that is, without
their proprietary driver). Any chance you can test this?


Daniel
athos bacchiocchi
2011-12-26 11:50:58 UTC
Permalink
Post by Daniel Mack
As I suspected - wonderfully class compliant.
Do you have access to a Mac? Would be interesting to see if that device
would be handled well by the generic driver in OS X (that is, without
their proprietary driver). Any chance you can test this?
Sorry for the delay, getting my hands on a mac took longer than i thought.
I tried to connect the usbpre to a macbook with snow leopard, and without
proprietary drivers the card is seen by the sistem, i can select it in the
audio options, but it doesn't emit any sound. And, like in ubuntu, the led
front panel on the device remains irresponsive.

athos
Daniel Mack
2011-12-27 14:20:36 UTC
Permalink
Post by Daniel Mack
As I suspected - wonderfully class compliant.
Do you have access to a Mac? Would be interesting to see if that device
would be handled well by the generic driver in OS X (that is, without
their proprietary driver). Any chance you can test this?
Sorry for the delay, getting my hands on a mac took longer than i
thought. I tried to connect the usbpre to a macbook with snow leopard,
and without proprietary drivers the card is seen by the sistem, i can
select it in the audio options, but it doesn't emit any sound. And, like
in ubuntu, the led front panel on the device remains irresponsive.
Ok, then this hardware is provably not class compliant, at least wrt to
streaming. Someone would need to reverse-egineer the protocol and
implement support in the snd-usb Linux driver. Or ask Sound Devices to
reveal some documentation about their protocol.


Daniel
alexander
2011-12-27 14:36:16 UTC
Permalink
athos bacchiocchi
2011-12-27 21:06:45 UTC
Permalink
Post by unknown
I'm guessing it's the usbpre1 ? I have the USBpre2 and it works very
well on linux, except not in usb2 mode, even tho it's class compliant
even in usb2 mode.
yes, it's the usbpre 1. I found this old post:
http://mailman.alsa-project.org/pipermail/alsa-devel/2007-June/001404.html

in which the OP stated he asked for specifications, but probably never
received them. I don't think I'm able to write a driver, so i guess i came
to a dead end.

Or maybe i should take this as sign i should start studying :)

I already know C programming (and some audio-related electronics), do you
have references about driver development for linux and snd-usb? General,
"academic" resources would be great. It will probabily take years, but at
least i may learn something.

thanks,
athos
Daniel Mack
2011-12-28 11:05:32 UTC
Permalink
athos bacchiocchi
2011-12-28 21:00:05 UTC
Permalink
ok. any advice for the sniffer? i found this:
http://www.pcausa.com/Utilities/UsbSnoop/default.htm

athos
Post by unknown
My guess is that it only takes a different initialization mechanism, but
I might me wrong. Once you have any more insight or any trace dump, post
them here.
Daniel Mack
2011-12-31 02:08:17 UTC
Permalink
Post by athos bacchiocchi
http://www.pcausa.com/Utilities/UsbSnoop/default.htm
Yes, I'e heard that one does its job. But I can't really proof it, as
I've personally only worked with hardware analyzers.

Daniel
Simon Moushabeck
2015-10-13 04:46:56 UTC
Permalink
Hi all,
I see this is a pretty old thread, but I was wondering if any of you have
gotten this working. I just stumbled upon two of these, and would love to be
able to use them.

I have never written any drivers, but would love to learn/help/pick up where
it was left off.

Thanks,
Simon


------------------------------------------------------------------------------
unknown
1970-01-01 00:00:00 UTC
Permalink
Post by Daniel Mack
Post by Daniel Mack
As I suspected - wonderfully class compliant.
Do you have access to a Mac? Would be interesting to see if that device
would be handled well by the generic driver in OS X (that is, without
their proprietary driver). Any chance you can test this?
Sorry for the delay, getting my hands on a mac took longer than i
thought. I tried to connect the usbpre to a macbook with snow leopard,
and without proprietary drivers the card is seen by the sistem, i can
select it in the audio options, but it doesn't emit any sound. And, like
in ubuntu, the led front panel on the device remains irresponsive.
Ok, then this hardware is provably not class compliant, at least wrt to
streaming. Someone would need to reverse-egineer the protocol and
implement support in the snd-usb Linux driver. Or ask Sound Devices to
reveal some documentation about their protocol.
Daniel
I'm guessing it's the usbpre1 ? I have the USBpre2 and it works very
well on linux, except not in usb2 mode, even tho it's class compliant
even in usb2 mode.
unknown
1970-01-01 00:00:00 UTC
Permalink
Post by unknown
I'm guessing it's the usbpre1 ? I have the USBpre2 and it works very
well on linux, except not in usb2 mode, even tho it's class compliant
even in usb2 mode.
http://mailman.alsa-project.org/pipermail/alsa-devel/2007-June/001404.html
in which the OP stated he asked for specifications, but probably never
received them. I don't think I'm able to write a driver, so i guess i
came to a dead end.
Or maybe i should take this as sign i should start studying :)
I already know C programming (and some audio-related electronics), do
you have references about driver development for linux and snd-usb?
General, "academic" resources would be great. It will probabily take
years, but at least i may learn something.
Just give it a try. With access to the hardware, it's probably not as
hard as it might appear in the first place. A good start is to install
their Windows driver and an USB packet sniffer to trace the
communication between the host and the device. Then compare this to what
the USB audio standard requires, and find the differences.

My guess is that it only takes a different initialization mechanism, but
I might me wrong. Once you have any more insight or any trace dump, post
them here.


Daniel
Loading...