[alsa-devel] Altec Lansing FX5051 USB Speakers
Jeremy Nickurak
alsa-devel at atrus.rifetech.com
Sun Dec 16 05:41:49 CET 2007
Any suggestions at all? I love this system's sound in windows, and I
really don't want to have to try to sell it to a non-linux user.
On Mon, Nov 12, 2007 at 09:49:12PM -0700, Jeremy Nickurak wrote:
> Some number of months ago I posted a request here for any suggestions in
> getting a set of USB speakers from Altec Lansing, model# FX5051, working
> with ALSA. I wasn't able to follow up in detail at the time, so I'm
> hoping try again.
>
> They're a set of 5.1 speakers with a built in USB sound card. Sound does
> appear to work, but the mixer is locked at 100%. There is no analog
> manual mixer, and the digital control dial exhibits the same problem as
> alsamixer, so I have to find a way to adjust the usb device's mixer
> volume in order to make the speakers usable.
>
> The speakers work fine in Windows XP, without installing any drivers, so
> it would seem that this device is operating based on some standard.
>
> In windows, adjusting the mixer via the digital control dial, or via the
> windows mixer control both result in the LED display moving in sync to
> indicate the new volume setting.
>
> In alsa, adjusting the digital control dial doesn't appear to have any
> effect, other then waking the LED display from its low-light mode.
> Attempting to adjust volume from alsamixer likewise wakes the display
> from low-light mode, but also fails to significantly change the mixer
> setting. When I say significantly, I mean that the mixer flips between
> about 98% and 100%, when using the Up/Down keys (or PgUp or PgDown). End
> appears to drop the volume to 0%, but Home doesn't restore it.
>
> Pressing the device's 'Power' button also behaves strangely. I can turn
> the device off, but it is turned back on shortly afterward. No usb
> connect/disconnect events appear here, instead, the power button seems
> to function more like a mute.
>
> amixer -c 2 contents yields:
>
> atrus at kedri:~$ amixer -c 2 contents
> numid=3,iface=MIXER,name='Tone Control - Bass'
> ; type=INTEGER,access=rw------,values=1,min=0,max=10,step=0
> : values=1
> numid=4,iface=MIXER,name='Tone Control - Treble'
> ; type=INTEGER,access=rw------,values=1,min=0,max=10,step=0
> : values=3
> numid=1,iface=MIXER,name='PCM Playback Switch'
> ; type=BOOLEAN,access=rw------,values=1
> : values=on
> numid=2,iface=MIXER,name='PCM Playback Volume'
> ; type=INTEGER,access=rw---R--,values=2,min=0,max=49,step=0
> : values=48,48
> | dBscale-min=-49.00dB,step=1.00dB,mute=0
>
>
>
> I'm attaching the contents of 'lsusb -v'.
>
> Any suggestions would be appreciated, and any requests for further
> information about this device will be accomodated ASAP.
>
> Thanks in advance.
>
> --
> Jeremy Nickurak -= Email/Jabber: atrus at rifetech.com =-
> Bus 004 Device 002: ID 04d2:5051 Altec Lansing Technologies
> Device Descriptor:
> bLength 18
> bDescriptorType 1
> bcdUSB 1.00
> bDeviceClass 0 (Defined at Interface level)
> bDeviceSubClass 0
> bDeviceProtocol 0
> bMaxPacketSize0 16
> idVendor 0x04d2 Altec Lansing Technologies
> idProduct 0x5051
> bcdDevice 1.12
> iManufacturer 1 Altec Lansing Technologies, Inc.
> iProduct 2 Altec Lansing - FX5051
> iSerial 0
> bNumConfigurations 1
> Configuration Descriptor:
> bLength 9
> bDescriptorType 2
> wTotalLength 139
> bNumInterfaces 3
> bConfigurationValue 1
> iConfiguration 0
> bmAttributes 0x40
> (Missing must-be-set bit!)
> Self Powered
> 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 44
> 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 6
> wChannelConfig 0x003f
> Left Front (L)
> Right Front (R)
> Center Front (C)
> Low Freqency Enhancement (LFE)
> Left Surround (LS)
> Right Surround (RS)
> iChannelNames 0
> iTerminal 0
> AudioControl Interface Descriptor:
> bLength 14
> bDescriptorType 36
> bDescriptorSubtype 6 (FEATURE_UNIT)
> bUnitID 2
> bSourceID 1
> bControlSize 1
> bmaControls( 0) 0x15
> Mute
> Bass
> Treble
> bmaControls( 1) 0x02
> Volume
> bmaControls( 2) 0x02
> Volume
> bmaControls( 3) 0x00
> bmaControls( 4) 0x00
> bmaControls( 5) 0x00
> bmaControls( 6) 0x00
> iFeature 0
> AudioControl Interface Descriptor:
> bLength 9
> bDescriptorType 36
> bDescriptorSubtype 3 (OUTPUT_TERMINAL)
> bTerminalID 3
> wTerminalType 0x0301 Speaker
> bAssocTerminal 0
> bSourceID 2
> iTerminal 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 1 PCM
> AudioStreaming Interface Descriptor:
> bLength 11
> bDescriptorType 36
> bDescriptorSubtype 2 (FORMAT_TYPE)
> bFormatType 1 (FORMAT_TYPE_I)
> bNrChannels 6
> bSubframeSize 2
> bBitResolution 16
> bSamFreqType 1 Discrete
> tSamFreq[ 0] 48000
> Endpoint Descriptor:
> bLength 9
> 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
> bRefresh 0
> bSynchAddress 0
> AudioControl Endpoint Descriptor:
> bLength 7
> bDescriptorType 37
> bDescriptorSubtype 1 (EP_GENERAL)
> bmAttributes 0x01
> Sampling Frequency
> bLockDelayUnits 0 Undefined
> wLockDelay 0 Undefined
> Interface Descriptor:
> bLength 9
> bDescriptorType 4
> bInterfaceNumber 2
> bAlternateSetting 0
> bNumEndpoints 1
> bInterfaceClass 3 Human Interface Devices
> 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 172
> Report Descriptor: (length is 172)
> Item(Global): Usage Page, data= [ 0x0c ] 12
> Consumer
> Item(Local ): Usage, data= [ 0x01 ] 1
> Consumer Control
> Item(Main ): Collection, data= [ 0x01 ] 1
> Application
> Item(Global): Usage Page, data= [ 0x0c ] 12
> Consumer
> Item(Local ): Usage, data= [ 0xe2 ] 226
> Mute
> Item(Local ): Usage, data= [ 0xe9 ] 233
> Volume Increment
> Item(Local ): Usage, data= [ 0xea ] 234
> Volume Decrement
> Item(Local ): Usage, data= [ 0x52 0x01 ] 338
> Bass Increment
> Item(Local ): Usage, data= [ 0x53 0x01 ] 339
> Bass Decrement
> Item(Local ): Usage, data= [ 0x54 0x01 ] 340
> Treble Increment
> Item(Local ): Usage, data= [ 0x55 0x01 ] 341
> Treble Decrement
> Item(Local ): Usage, data= [ 0x00 ] 0
> Unassigned
> Item(Global): Logical Minimum, data= [ 0x00 ] 0
> Item(Global): Logical Maximum, data= [ 0x01 ] 1
> Item(Global): Report Size, data= [ 0x01 ] 1
> Item(Global): Report Count, data= [ 0x08 ] 8
> Item(Main ): Input, data= [ 0x82 ] 130
> Data Variable Absolute No_Wrap Linear
> Preferred_State No_Null_Position Volatile Bitfield
> Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> (null)
> Item(Local ): Usage, data= [ 0x01 ] 1
> (null)
> Item(Local ): Usage, data= [ 0x3a ] 58
> (null)
> Item(Local ): Usage, data= [ 0x2e ] 46
> (null)
> Item(Local ): Usage, data= [ 0x09 ] 9
> (null)
> Item(Local ): Usage, data= [ 0x0a ] 10
> (null)
> Item(Local ): Usage, data= [ 0x3d ] 61
> (null)
> Item(Local ): Usage, data= [ 0x3e ] 62
> (null)
> Item(Local ): Usage, data= [ 0xff ] 255
> (null)
> Item(Global): Logical Minimum, data= [ 0x00 ] 0
> Item(Global): Logical Maximum, data= [ 0x01 ] 1
> Item(Global): Report Size, data= [ 0x01 ] 1
> Item(Global): Report Count, data= [ 0x08 ] 8
> Item(Main ): Input, data= [ 0x82 ] 130
> Data Variable Absolute No_Wrap Linear
> Preferred_State No_Null_Position Volatile Bitfield
> Item(Global): Usage Page, data= [ 0x0c ] 12
> Consumer
> Item(Local ): Usage, data= [ 0xe2 ] 226
> Mute
> Item(Local ): Usage, data= [ 0xe9 ] 233
> Volume Increment
> Item(Local ): Usage, data= [ 0xea ] 234
> Volume Decrement
> Item(Local ): Usage, data= [ 0x52 0x01 ] 338
> Bass Increment
> Item(Local ): Usage, data= [ 0x53 0x01 ] 339
> Bass Decrement
> Item(Local ): Usage, data= [ 0x54 0x01 ] 340
> Treble Increment
> Item(Local ): Usage, data= [ 0x55 0x01 ] 341
> Treble Decrement
> Item(Local ): Usage, data= [ 0x00 ] 0
> Unassigned
> Item(Global): Logical Minimum, data= [ 0x00 ] 0
> Item(Global): Logical Maximum, data= [ 0x01 ] 1
> Item(Global): Report Size, data= [ 0x01 ] 1
> Item(Global): Report Count, data= [ 0x08 ] 8
> Item(Main ): Output, data= [ 0x82 ] 130
> Data Variable Absolute No_Wrap Linear
> Preferred_State No_Null_Position Volatile Bitfield
> Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> (null)
> Item(Local ): Usage, data= [ 0x01 ] 1
> (null)
> Item(Local ): Usage, data= [ 0x3a ] 58
> (null)
> Item(Local ): Usage, data= [ 0x09 ] 9
> (null)
> Item(Local ): Usage, data= [ 0x0a ] 10
> (null)
> Item(Local ): Usage, data= [ 0x3d ] 61
> (null)
> Item(Local ): Usage, data= [ 0x3e ] 62
> (null)
> Item(Local ): Usage, data= [ 0xfe ] 254
> (null)
> Item(Local ): Usage, data= [ 0x00 ] 0
> (null)
> Item(Global): Logical Minimum, data= [ 0x00 ] 0
> Item(Global): Logical Maximum, data= [ 0x01 ] 1
> Item(Global): Report Size, data= [ 0x01 ] 1
> Item(Global): Report Count, data= [ 0x08 ] 8
> Item(Main ): Output, data= [ 0x82 ] 130
> Data Variable Absolute No_Wrap Linear
> Preferred_State No_Null_Position Volatile Bitfield
> Item(Local ): Usage, data= [ 0xf0 ] 240
> (null)
> Item(Global): Logical Minimum, data= [ 0x00 ] 0
> Item(Global): Logical Maximum, data= [ 0xff 0xff ] 65535
> Item(Global): Report Size, data= [ 0x10 ] 16
> Item(Global): Report Count, data= [ 0x01 ] 1
> Item(Main ): Output, data= [ 0x82 ] 130
> Data Variable Absolute No_Wrap Linear
> Preferred_State No_Null_Position Volatile Bitfield
> Item(Local ): Usage, data= [ 0xf1 ] 241
> (null)
> Item(Global): Logical Minimum, data= [ 0x00 ] 0
> Item(Global): Logical Maximum, data= [ 0xff 0xff 0xff 0xff ] -1
> Item(Global): Report Size, data= [ 0x20 ] 32
> Item(Global): Report Count, data= [ 0x01 ] 1
> Item(Main ): Output, data= [ 0x82 ] 130
> Data Variable Absolute No_Wrap Linear
> Preferred_State No_Null_Position Volatile Bitfield
> Item(Local ): Usage, data= [ 0xf2 ] 242
> (null)
> Item(Global): Logical Minimum, data= [ 0x00 ] 0
> Item(Global): Logical Maximum, data= [ 0xff 0xff 0xff 0xff ] -1
> Item(Global): Report Size, data= [ 0x20 ] 32
> Item(Global): Report Count, data= [ 0x01 ] 1
> Item(Main ): Output, data= [ 0x82 ] 130
> Data Variable Absolute No_Wrap Linear
> Preferred_State No_Null_Position Volatile Bitfield
> Item(Main ): End Collection, data=none
> Endpoint Descriptor:
> bLength 7
> bDescriptorType 5
> bEndpointAddress 0x83 EP 3 IN
> bmAttributes 3
> Transfer Type Interrupt
> Synch Type None
> Usage Type Data
> wMaxPacketSize 0x0002 1x 2 bytes
> bInterval 1
> Device Status: 0x0001
> Self Powered
>
> Bus 004 Device 001: ID 0000:0000
> Device Descriptor:
> bLength 18
> bDescriptorType 1
> bcdUSB 1.10
> bDeviceClass 9 Hub
> bDeviceSubClass 0 Unused
> bDeviceProtocol 0 Full speed hub
> bMaxPacketSize0 64
> idVendor 0x0000
> idProduct 0x0000
> bcdDevice 2.06
> iManufacturer 3 Linux 2.6.22-14-generic uhci_hcd
> iProduct 2 UHCI Host Controller
> iSerial 1 0000:00:1d.3
> bNumConfigurations 1
> Configuration Descriptor:
> bLength 9
> bDescriptorType 2
> wTotalLength 25
> bNumInterfaces 1
> bConfigurationValue 1
> iConfiguration 0
> bmAttributes 0xe0
> Self Powered
> Remote Wakeup
> MaxPower 0mA
> Interface Descriptor:
> bLength 9
> bDescriptorType 4
> bInterfaceNumber 0
> bAlternateSetting 0
> bNumEndpoints 1
> bInterfaceClass 9 Hub
> bInterfaceSubClass 0 Unused
> bInterfaceProtocol 0 Full speed hub
> iInterface 0
> Endpoint Descriptor:
> bLength 7
> bDescriptorType 5
> bEndpointAddress 0x81 EP 1 IN
> bmAttributes 3
> Transfer Type Interrupt
> Synch Type None
> Usage Type Data
> wMaxPacketSize 0x0002 1x 2 bytes
> bInterval 255
> Hub Descriptor:
> bLength 9
> bDescriptorType 41
> nNbrPorts 2
> wHubCharacteristic 0x000a
> No power switching (usb 1.0)
> Per-port overcurrent protection
> bPwrOn2PwrGood 1 * 2 milli seconds
> bHubContrCurrent 0 milli Ampere
> DeviceRemovable 0x00
> PortPwrCtrlMask 0xff
> Hub Port Status:
> Port 1: 0000.0103 power enable connect
> Port 2: 0000.0100 power
> Device Status: 0x0003
> Self Powered
> Remote Wakeup Enabled
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
--
Jeremy Nickurak -= Email/Jabber: atrus at rifetech.com =-
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20071215/c46cf3e0/attachment-0001.sig
More information about the Alsa-devel
mailing list