* Audinst HUD-mx2 covertly muting itself
@ 2013-10-31 10:11 Tobias Klausmann
2013-10-31 10:28 ` Tobias Klausmann
2013-10-31 15:53 ` Clemens Ladisch
0 siblings, 2 replies; 6+ messages in thread
From: Tobias Klausmann @ 2013-10-31 10:11 UTC (permalink / raw)
To: alsa-devel
Hey,
I have an Audinst HUD-mx2 external USB audio device:
Bus 007 Device 006: ID 040d:340f VIA Technologies, Inc.
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: HUDmx2 [Audinst HUD-mx2], device 0: USB Audio [USB Audio]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: HUDmx2 [Audinst HUD-mx2], device 1: USB Audio [USB Audio #1]
Subdevices: 1/1
Subdevice #0: subdevice #0
While the device works right in principle, every time an app
closes the device, it mutes itself (or crash, this may be a Hw
problem). There is no indication of the broken state in the mixer
displays of alsamixer or alsamixer-gui, and amixer output does
not indicate any change, either (see below).
I am a bit stumped as to what to do next. The vendor does not
officially support anything but Windows, so getting help from
them is very unlikely.
amixer output in working/not working/working again condition:
~ $ amixer -c0 contents # working
numid=1,iface=MIXER,name='PCM Playback Switch'
; type=BOOLEAN,access=rw------,values=1
: values=on
numid=2,iface=MIXER,name='PCM Playback Switch',index=1
; type=BOOLEAN,access=rw------,values=1
: values=on
numid=3,iface=MIXER,name='PCM Playback Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=45,step=0
: values=45,45
| dBminmax-min=42949627.96dB,max=0.00dB
~ $ amixer -c0 contents # not working
numid=1,iface=MIXER,name='PCM Playback Switch'
; type=BOOLEAN,access=rw------,values=1
: values=on
numid=2,iface=MIXER,name='PCM Playback Switch',index=1
; type=BOOLEAN,access=rw------,values=1
: values=on
numid=3,iface=MIXER,name='PCM Playback Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=45,step=0
: values=45,45
| dBminmax-min=42949627.96dB,max=0.00dB
~ $ amixer -c0 contents # working again
numid=1,iface=MIXER,name='PCM Playback Switch'
; type=BOOLEAN,access=rw------,values=1
: values=on
numid=2,iface=MIXER,name='PCM Playback Switch',index=1
; type=BOOLEAN,access=rw------,values=1
: values=on
numid=3,iface=MIXER,name='PCM Playback Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=45,step=0
: values=45,45
| dBminmax-min=42949627.96dB,max=0.00dB
Kernel version is 3.2.5 (Ubuntu).
$ cat /proc/asound/version
Advanced Linux Sound Architecture Driver Version 1.0.24.
$ cat /proc/asound/cards
0 [HUDmx2 ]: USB-Audio - Audinst HUD-mx2
VIA Technologies Inc. Audinst HUD-mx2 at usb-0000:00:1d.1-2, full speed
$ cat /proc/asound/modules
0 snd_usb_audio
$ cat /proc/asound/devices
1: : sequencer
2: [ 0- 1]: digital audio playback
3: [ 0- 0]: digital audio playback
4: [ 0] : control
33: : timer
$ lsusb -v
[...]
Bus 007 Device 006: ID 040d:340f VIA Technologies, Inc.
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x040d VIA Technologies, Inc.
idProduct 0x340f
bcdDevice 1.01
iManufacturer 1
iProduct 2
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 255
bNumInterfaces 3
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xe0
Self Powered
Remote Wakeup
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 1 Control Device
bInterfaceProtocol 0
iInterface 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 1 (HEADER)
bcdADC 1.00
wTotalLength 59
bInCollection 1
baInterfaceNr( 0) 1
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 1
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bNrChannels 2
wChannelConfig 0x0003
Left Front (L)
Right Front (R)
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 12
wTerminalType 0x0605 SPDIF interface
bAssocTerminal 0
bSourceID 11
iTerminal 0
AudioControl Interface Descriptor:
bLength 10
bDescriptorType 36
bDescriptorSubtype 6 (FEATURE_UNIT)
bUnitID 11
bSourceID 1
bControlSize 1
bmaControls( 0) 0x01
Mute Control
bmaControls( 1) 0x00
bmaControls( 2) 0x00
iFeature 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 3
wTerminalType 0x0301 Speaker
bAssocTerminal 0
bSourceID 5
iTerminal 0
AudioControl Interface Descriptor:
bLength 10
bDescriptorType 36
bDescriptorSubtype 6 (FEATURE_UNIT)
bUnitID 5
bSourceID 1
bControlSize 1
bmaControls( 0) 0x01
Mute Control
bmaControls( 1) 0x02
Volume Control
bmaControls( 2) 0x02
Volume Control
iFeature 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 1
bDelay 1 frames
wFormatTag 8193 IEC1937_AC-3
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 3 (FORMAT_TYPE_III)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 2 Discrete
tSamFreq[ 0] 44100
tSamFreq[ 1] 48000
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 9
Transfer Type Isochronous
Synch Type Adaptive
Usage Type Data
wMaxPacketSize 0x00c0 1x 192 bytes
bInterval 1
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 1 Milliseconds
wLockDelay 1 Milliseconds
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 2
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 1
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 20
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 4 Discrete
tSamFreq[ 0] 44100
tSamFreq[ 1] 48000
tSamFreq[ 2] 88200
tSamFreq[ 3] 96000
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 9
Transfer Type Isochronous
Synch Type Adaptive
Usage Type Data
wMaxPacketSize 0x0180 1x 384 bytes
bInterval 1
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 1 Milliseconds
wLockDelay 1 Milliseconds
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 3
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 1
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 20
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 4 Discrete
tSamFreq[ 0] 44100
tSamFreq[ 1] 48000
tSamFreq[ 2] 88200
tSamFreq[ 3] 96000
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 9
Transfer Type Isochronous
Synch Type Adaptive
Usage Type Data
wMaxPacketSize 0x0240 1x 576 bytes
bInterval 1
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 1 Milliseconds
wLockDelay 1 Milliseconds
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 0 None
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.00
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 61
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x8f EP 15 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 16
[...]
Any help is appreciated.
Regards,
Tobias
--
Aussen Stop-Bits, innen gepackt!
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: Audinst HUD-mx2 covertly muting itself
2013-10-31 10:11 Audinst HUD-mx2 covertly muting itself Tobias Klausmann
@ 2013-10-31 10:28 ` Tobias Klausmann
2013-10-31 15:53 ` Clemens Ladisch
1 sibling, 0 replies; 6+ messages in thread
From: Tobias Klausmann @ 2013-10-31 10:28 UTC (permalink / raw)
To: alsa-devel
Hi!
On Thu, 31 Oct 2013, Tobias Klausmann wrote:
> $ aplay -l
> **** List of PLAYBACK Hardware Devices ****
> card 0: HUDmx2 [Audinst HUD-mx2], device 0: USB Audio [USB Audio]
> Subdevices: 0/1
> Subdevice #0: subdevice #0
> card 0: HUDmx2 [Audinst HUD-mx2], device 1: USB Audio [USB Audio #1]
> Subdevices: 1/1
> Subdevice #0: subdevice #0
>
> While the device works right in principle, every time an app
> closes the device, it mutes itself (or crash, this may be a Hw
> problem). There is no indication of the broken state in the mixer
> displays of alsamixer or alsamixer-gui, and amixer output does
> not indicate any change, either (see below).
Oh, and to fix it, I can just mute-unmute ("cycle") the device
"PCM 1" (no levels, just a switch).
Regards,
Tobias
--
Aussen Stop-Bits, innen gepackt!
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: Audinst HUD-mx2 covertly muting itself
2013-10-31 10:11 Audinst HUD-mx2 covertly muting itself Tobias Klausmann
2013-10-31 10:28 ` Tobias Klausmann
@ 2013-10-31 15:53 ` Clemens Ladisch
2013-10-31 16:15 ` Tobias Klausmann
1 sibling, 1 reply; 6+ messages in thread
From: Clemens Ladisch @ 2013-10-31 15:53 UTC (permalink / raw)
To: Tobias Klausmann; +Cc: alsa-devel
Tobias Klausmann wrote:
> While the device works right in principle, every time an app
> closes the device, it mutes itself (or crash, this may be a Hw
> problem). There is no indication of the broken state in the mixer
> displays of alsamixer or alsamixer-gui, and amixer output does
> not indicate any change, either (see below).
The USB Audio Specification defines a mechanism with which a device
could notify the PC of changes in mixer controls. However, this device
does not have such a mechanism, so this looks like a firmware bug.
Does this happen for both the analog and digital outputs?
> The vendor does not officially support anything but Windows
Does it work correctly in Windows without any vendor-supplied driver?
Regards,
Clemens
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Audinst HUD-mx2 covertly muting itself
2013-10-31 15:53 ` Clemens Ladisch
@ 2013-10-31 16:15 ` Tobias Klausmann
2013-10-31 16:25 ` Clemens Ladisch
0 siblings, 1 reply; 6+ messages in thread
From: Tobias Klausmann @ 2013-10-31 16:15 UTC (permalink / raw)
To: alsa-devel
Hi!
On Thu, 31 Oct 2013, Clemens Ladisch wrote:
> Tobias Klausmann wrote:
> > While the device works right in principle, every time an app
> > closes the device, it mutes itself (or crash, this may be a Hw
> > problem). There is no indication of the broken state in the mixer
> > displays of alsamixer or alsamixer-gui, and amixer output does
> > not indicate any change, either (see below).
>
> The USB Audio Specification defines a mechanism with which a device
> could notify the PC of changes in mixer controls. However, this device
> does not have such a mechanism, so this looks like a firmware bug.
>
> Does this happen for both the analog and digital outputs?
The place the device is currently at doesn't have the Hw for me
to test digital output. I will test this (and the one below) as
after next week
> > The vendor does not officially support anything but Windows
>
> Does it work correctly in Windows without any vendor-supplied driver?
See above.
I have gotten a temporary workaround: use the secondary PCM
device (hw:0,1) instead of the primary (hw:0,0), like this:
$ cat .asoundrc
defaults.pcm.card 0
defaults.pcm.device 1
$
While this works, it's not eactly a discoverable way of doing it.
Obviously, this should go into the system-wide asoundrc so all
users benefit from it, but in this case, it works for me.
Maybe something along the lines of PCI device "quirks" would be
the right thing to do? I.e. swapping the two PCM devices from
ALSA's point of view.
Regards,
Tobias
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Audinst HUD-mx2 covertly muting itself
2013-10-31 16:15 ` Tobias Klausmann
@ 2013-10-31 16:25 ` Clemens Ladisch
2013-11-01 13:58 ` Tobias Klausmann
0 siblings, 1 reply; 6+ messages in thread
From: Clemens Ladisch @ 2013-10-31 16:25 UTC (permalink / raw)
To: alsa-devel
Tobias Klausmann wrote:
> I have gotten a temporary workaround: use the secondary PCM
> device (hw:0,1) instead of the primary (hw:0,0)
Oops, I didn't notice that there are two devices.
The first PCM device is only for Dolby-encoded data, so muting the
analog output would be correct.
> Maybe something along the lines of PCI device "quirks" would be
> the right thing to do? I.e. swapping the two PCM devices from
> ALSA's point of view.
The driver should never make the non-PCM device the first one.
Regards,
Clemens
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Audinst HUD-mx2 covertly muting itself
2013-10-31 16:25 ` Clemens Ladisch
@ 2013-11-01 13:58 ` Tobias Klausmann
0 siblings, 0 replies; 6+ messages in thread
From: Tobias Klausmann @ 2013-11-01 13:58 UTC (permalink / raw)
To: alsa-devel
Hi!
On Thu, 31 Oct 2013, Clemens Ladisch wrote:
> Tobias Klausmann wrote:
> > I have gotten a temporary workaround: use the secondary PCM
> > device (hw:0,1) instead of the primary (hw:0,0)
>
> Oops, I didn't notice that there are two devices.
>
> The first PCM device is only for Dolby-encoded data, so muting the
> analog output would be correct.
>
> > Maybe something along the lines of PCI device "quirks" would be
> > the right thing to do? I.e. swapping the two PCM devices from
> > ALSA's point of view.
>
> The driver should never make the non-PCM device the first one.
My concern is just that I have found at least 5 different forum,
blog and mailing list posts where people were unable to diagnose
this or fix it. There was exactly one thread that shed light:
http://comments.gmane.org/gmane.linux.alsa.devel/109855
The fix (using hw:0,1 as default) is not obvious to the average
person and sort-of forcing them to dig around the internet and
happen upon that thread strikes me as not exactly user friendly.
Don't get me wrong, I understand that the way things are has
mostly to do with the myriad of ways in which USB audio devices
are built. But making it easy/easier for user to get them working
properly "out of the box" seems worthwile.
Regards,
Tobias
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2013-11-01 13:58 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-10-31 10:11 Audinst HUD-mx2 covertly muting itself Tobias Klausmann
2013-10-31 10:28 ` Tobias Klausmann
2013-10-31 15:53 ` Clemens Ladisch
2013-10-31 16:15 ` Tobias Klausmann
2013-10-31 16:25 ` Clemens Ladisch
2013-11-01 13:58 ` Tobias Klausmann
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.