Logitech USB Headset H330 Not Working
Hans Petter Selasky
hselasky at c2i.net
Wed Jun 9 15:58:40 UTC 2010
On Wednesday 09 June 2010 13:07:09 Antun Matanović wrote:
> uname -a:
> FreeBSD FreeBSD.desktop.pc 8.1-BETA1 FreeBSD 8.1-BETA1 #0: Thu May 27
> 15:31:50 UTC 2010
> root at almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC
> i386
>
> cat /dev/sndstat:
> FreeBSD Audio Driver (newpcm: 32bit 2009061500/i386)
> Installed devices:
> pcm0: <USB audio> (mixer only)
>
> dmesg:
> ugen5.2: <Logitech> at usbus5
> uaudio0: <Logitech Logitech USB Headset, class 0/0, rev 1.10/1.30, addr 2>
> on usbus5
> uaudio0: No playback!
> uaudio0: No recording!
> uaudio0: No midi sequencer
> pcm0: <USB audio> on uaudio0
>
> dmesg (sysctl hw.usb.uaudio.debug=15):
> uaudio_mixer_bsd2value: type=0x002 val=-3072 min=-7680 max=0 val=-3072
> uaudio_mixer_bsd2value: type=0x002 val=-3072 min=-7680 max=0 val=-3072
> uaudio_mixer_write_cfg_callback:
> uaudio_mixer_bsd2value: type=0x002 val=-2771 min=-7680 max=0 val=-2771
> uaudio_mixer_bsd2value: type=0x002 val=-2771 min=-7680 max=0 val=-2771
> uaudio_mixer_bsd2value: type=0x002 val=8192 min=0 max=10240 val=8192
> uaudio_mixer_write_cfg_callback:
> uaudio_mixer_write_cfg_callback:
> uaudio_mixer_write_cfg_callback:
> uaudio_mixer_write_cfg_callback:
> uaudio_mixer_bsd2value: type=0x002 val=-2771 min=-7680 max=0 val=-2771
> uaudio_mixer_bsd2value: type=0x002 val=-2771 min=-7680 max=0 val=-2771
> uaudio_mixer_write_cfg_callback:
> uaudio_mixer_bsd2value: type=0x002 val=-2771 min=-7680 max=0 val=-2771
> uaudio_mixer_bsd2value: type=0x002 val=-2771 min=-7680 max=0 val=-2771
> uaudio_mixer_bsd2value: type=0x002 val=8192 min=0 max=10240 val=8192
> uaudio_mixer_write_cfg_callback:
> uaudio_mixer_write_cfg_callback:
> uaudio_mixer_write_cfg_callback:
> uaudio_mixer_write_cfg_callback:
>
> usbconfig -u 5 -a 2 dump_curr_config_desc:
> ugen5.2: <Logitech USB Headset Logitech> at usbus5, cfg=0 md=HOST spd=FULL
> (12Mbps) pwr=ON
>
>
> Configuration index 0
>
> bLength = 0x0009
> bDescriptorType = 0x0002
> wTotalLength = 0x00d0
> bNumInterfaces = 0x0003
> bConfigurationValue = 0x0001
> iConfiguration = 0x0000 <no string>
> bmAttributes = 0x0080
> bMaxPower = 0x0032
>
> Interface 0
> bLength = 0x0009
> bDescriptorType = 0x0004
> bInterfaceNumber = 0x0000
> bAlternateSetting = 0x0000
> bNumEndpoints = 0x0000
> bInterfaceClass = 0x0001
> bInterfaceSubClass = 0x0001
> bInterfaceProtocol = 0x0000
> iInterface = 0x0000 <no string>
>
> Additional Descriptor
>
> bLength = 0x0a
> bDescriptorType = 0x24
> bDescriptorSubType = 0x01
> RAW dump:
> 0x00 | 0x0a, 0x24, 0x01, 0x00, 0x01, 0x54, 0x00, 0x02,
> 0x08 | 0x01, 0x02
>
>
> Additional Descriptor
>
> bLength = 0x0c
> bDescriptorType = 0x24
> bDescriptorSubType = 0x02
> RAW dump:
> 0x00 | 0x0c, 0x24, 0x02, 0x01, 0x01, 0x01, 0x00, 0x02,
> 0x08 | 0x03, 0x00, 0x00, 0x00
>
>
> Additional Descriptor
>
> bLength = 0x0c
> bDescriptorType = 0x24
> bDescriptorSubType = 0x02
> RAW dump:
> 0x00 | 0x0c, 0x24, 0x02, 0x03, 0x01, 0x02, 0x00, 0x02,
> 0x08 | 0x03, 0x00, 0x00, 0x00
>
>
> Additional Descriptor
>
> bLength = 0x09
> bDescriptorType = 0x24
> bDescriptorSubType = 0x03
> RAW dump:
> 0x00 | 0x09, 0x24, 0x03, 0x02, 0x01, 0x03, 0x00, 0x05,
> 0x08 | 0x00
>
> Additional Descriptor
>
> bLength = 0x09
> bDescriptorType = 0x24
> bDescriptorSubType = 0x03
> RAW dump:
> 0x00 | 0x09, 0x24, 0x03, 0x04, 0x01, 0x01, 0x00, 0x07,
> 0x08 | 0x00
>
> Additional Descriptor
>
> bLength = 0x0a
> bDescriptorType = 0x24
> bDescriptorSubType = 0x06
> RAW dump:
> 0x00 | 0x0a, 0x24, 0x06, 0x05, 0x01, 0x01, 0x01, 0x02,
> 0x08 | 0x02, 0x00
>
>
> Additional Descriptor
>
> bLength = 0x0a
> bDescriptorType = 0x24
> bDescriptorSubType = 0x06
> RAW dump:
> 0x00 | 0x0a, 0x24, 0x06, 0x06, 0x03, 0x01, 0x03, 0x00,
> 0x08 | 0x00, 0x00
>
>
> Additional Descriptor
>
> bLength = 0x0c
> bDescriptorType = 0x24
> bDescriptorSubType = 0x04
> RAW dump:
> 0x00 | 0x0c, 0x24, 0x04, 0x07, 0x01, 0x06, 0x02, 0x03,
> 0x08 | 0x00, 0x00, 0x00, 0x00
>
>
>
> Interface 1
> bLength = 0x0009
> bDescriptorType = 0x0004
> bInterfaceNumber = 0x0001
> bAlternateSetting = 0x0000
> bNumEndpoints = 0x0000
> bInterfaceClass = 0x0001
> bInterfaceSubClass = 0x0002
> bInterfaceProtocol = 0x0000
> iInterface = 0x0000 <no string>
>
>
> Interface 1 Alt 1
> bLength = 0x0009
> bDescriptorType = 0x0004
> bInterfaceNumber = 0x0001
> bAlternateSetting = 0x0001
> bNumEndpoints = 0x0001
> bInterfaceClass = 0x0001
> bInterfaceSubClass = 0x0002
> bInterfaceProtocol = 0x0000
> iInterface = 0x0000 <no string>
>
> Additional Descriptor
>
> bLength = 0x07
> bDescriptorType = 0x24
> bDescriptorSubType = 0x01
> RAW dump:
> 0x00 | 0x07, 0x24, 0x01, 0x01, 0x01, 0x01, 0x00
>
>
> Additional Descriptor
>
> bLength = 0x0e
> bDescriptorType = 0x24
> bDescriptorSubType = 0x02
> RAW dump:
> 0x00 | 0x0e, 0x24, 0x02, 0x01, 0x02, 0x02, 0x10, 0x02,
> 0x08 | 0x00, 0x7d, 0x00, 0x80, 0x3e, 0x00
>
>
> Endpoint 0
> bLength = 0x0007
> bDescriptorType = 0x0005
> bEndpointAddress = 0x0001 <OUT>
> bmAttributes = 0x0009 <ADAPT-ISOCHRONOUS>
> wMaxPacketSize = 0x00c0
> bInterval = 0x0001
> bRefresh = 0x0000
> bSynchAddress = 0x0000
>
> Additional Descriptor
>
> bLength = 0x07
> bDescriptorType = 0x25
> bDescriptorSubType = 0x01
> RAW dump:
> 0x00 | 0x07, 0x25, 0x01, 0x01, 0x01, 0x01, 0x00
>
>
>
> Interface 2
> bLength = 0x0009
> bDescriptorType = 0x0004
> bInterfaceNumber = 0x0002
> bAlternateSetting = 0x0000
> bNumEndpoints = 0x0000
> bInterfaceClass = 0x0001
> bInterfaceSubClass = 0x0002
> bInterfaceProtocol = 0x0000
> iInterface = 0x0000 <no string>
>
>
> Interface 2 Alt 1
> bLength = 0x0009
> bDescriptorType = 0x0004
> bInterfaceNumber = 0x0002
> bAlternateSetting = 0x0001
> bNumEndpoints = 0x0001
> bInterfaceClass = 0x0001
> bInterfaceSubClass = 0x0002
> bInterfaceProtocol = 0x0000
> iInterface = 0x0000 <no string>
>
> Additional Descriptor
>
> bLength = 0x07
> bDescriptorType = 0x24
> bDescriptorSubType = 0x01
> RAW dump:
> 0x00 | 0x07, 0x24, 0x01, 0x04, 0x01, 0x01, 0x00
>
>
> Additional Descriptor
>
> bLength = 0x0e
> bDescriptorType = 0x24
> bDescriptorSubType = 0x02
> RAW dump:
> 0x00 | 0x0e, 0x24, 0x02, 0x01, 0x02, 0x02, 0x10, 0x02,
> 0x08 | 0x00, 0x7d, 0x00, 0x80, 0x3e, 0x00
>
>
> Endpoint 0
> bLength = 0x0007
> bDescriptorType = 0x0005
> bEndpointAddress = 0x0082 <IN>
> bmAttributes = 0x0005 <ASYNC-ISOCHRONOUS>
> wMaxPacketSize = 0x00c8
> bInterval = 0x0001
> bRefresh = 0x0000
> bSynchAddress = 0x0000
>
> Additional Descriptor
>
> bLength = 0x07
> bDescriptorType = 0x25
> bDescriptorSubType = 0x01
> RAW dump:
> 0x00 | 0x07, 0x25, 0x01, 0x01, 0x01, 0x01, 0x00
>
> usbconfig -u 5 -a 2 dump_device_desc:
> ugen5.2: <Logitech USB Headset Logitech> at usbus5, cfg=0 md=HOST spd=FULL
> (12Mbps) pwr=ON
>
> bLength = 0x0012
> bDescriptorType = 0x0001
> bcdUSB = 0x0110
> bDeviceClass = 0x0000
> bDeviceSubClass = 0x0000
> bDeviceProtocol = 0x0000
> bMaxPacketSize0 = 0x0040
> idVendor = 0x046d
> idProduct = 0x0a14
> bcdDevice = 0x0130
> iManufacturer = 0x0001 <Logitech>
> iProduct = 0x0002 <Logitech USB Headset>
> iSerialNumber = 0x0000 <no string>
> bNumConfigurations = 0x0001
Hi,
It looks like the audio part of your headset lack some descriptors associated
with the endpoint descriptors to be detected like a valid audio device? Does
it work under Linux?
--HPS
More information about the freebsd-usb
mailing list