Thanks Remco: I installed the utils.
bcdADC is 1.00 in this case  From lsusb: I can see
bus 000 device 005 is these speakers and:
AudioControl Interface Descriptor:        bLength                 9
bDescriptorType        36        bDescriptorSubtype      1 (HEADER)
bcdADC               1.00        wTotalLength           40
bInCollection           1        baInterfaceNr( 0)
On a linux mailist I saw:
" I contacted somebody from technical support for KEF and the feedback I got
was that the KEF's DAC needs to have a USB asynchronous connection (and it
needs to be in control of that)"
That may be a hint on to how to manage the device on OpenBSD but I cannot see
how to apply it.
The full lsusb output for this device is below if there are any other hints in
lsusb:
Bus 000 Device 005: ID 27ac:1002  Device Descriptor:  bLength
18  bDescriptorType         1  bcdUSB               1.10  bDeviceClass
0 (Defined at Interface level)  bDeviceSubClass         0   bDeviceProtocol
0   bMaxPacketSize0        16  idVendor           0x27ac   idProduct
0x1002   bcdDevice            1.07  iManufacturer           1 KEF  iProduct
2 KEF X300A Speaker  iSerial                 0   bNumConfigurations      1
Configuration Descriptor:    bLength                 9    bDescriptorType
2    wTotalLength          220    bNumInterfaces          3
bConfigurationValue     1    iConfiguration          0     bmAttributes
0x80      (Bus Powered)    MaxPower              100mA    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           40
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             2
wTerminalType      0x0301 Speaker        bAssocTerminal          0
bSourceID               3        iTerminal               0       AudioControl
Interface Descriptor:        bLength                10        bDescriptorType
36        bDescriptorSubtype      6 (FEATURE_UNIT)        bUnitID
3        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
2      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                23        bDescriptorType        36
bDescriptorSubtype      2 (FORMAT_TYPE)        bFormatType             1
(FORMAT_TYPE_I)        bNrChannels             2        bSubframeSize
2        bBitResolution         16        bSamFreqType            5 Discrete
tSamFreq[ 0]        32000        tSamFreq[ 1]        44100        tSamFreq[ 2]
48000        tSamFreq[ 3]        88200        tSamFreq[ 4]        96000
Endpoint Descriptor:        bLength                 9        bDescriptorType
5        bEndpointAddress     0x01  EP 1 OUT        bmAttributes            5
Transfer Type            Isochronous          Synch Type
Asynchronous          Usage Type               Data        wMaxPacketSize
0x0184  1x 388 bytes        bInterval               1        bRefresh
0        bSynchAddress         129        AudioControl Endpoint Descriptor:
bLength                 7          bDescriptorType        37
bDescriptorSubtype      1 (EP_GENERAL)          bmAttributes         0x01
Sampling Frequency          bLockDelayUnits         0 Undefined
wLockDelay              0 Undefined      Endpoint Descriptor:        bLength
9        bDescriptorType         5        bEndpointAddress     0x81  EP 1 IN
bmAttributes           17          Transfer Type            Isochronous
Synch Type               None          Usage Type               Feedback
wMaxPacketSize     0x0003  1x 3 bytes        bInterval               1
bRefresh                5        bSynchAddress           0    Interface
Descriptor:      bLength                 9      bDescriptorType         4
bInterfaceNumber        1      bAlternateSetting       2      bNumEndpoints
2      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                23        bDescriptorType        36
bDescriptorSubtype      2 (FORMAT_TYPE)        bFormatType             1
(FORMAT_TYPE_I)        bNrChannels             2        bSubframeSize
3        bBitResolution         24        bSamFreqType            5 Discrete
tSamFreq[ 0]        32000        tSamFreq[ 1]        44100        tSamFreq[ 2]
48000        tSamFreq[ 3]        88200        tSamFreq[ 4]        96000
Endpoint Descriptor:        bLength                 9        bDescriptorType
5        bEndpointAddress     0x01  EP 1 OUT        bmAttributes            5
Transfer Type            Isochronous          Synch Type
Asynchronous          Usage Type               Data        wMaxPacketSize
0x0246  1x 582 bytes        bInterval               1        bRefresh
0        bSynchAddress         129        AudioControl Endpoint Descriptor:
bLength                 7          bDescriptorType        37
bDescriptorSubtype      1 (EP_GENERAL)          bmAttributes         0x01
Sampling Frequency          bLockDelayUnits         0 Undefined
wLockDelay              0 Undefined      Endpoint Descriptor:        bLength
9        bDescriptorType         5        bEndpointAddress     0x81  EP 1 IN
bmAttributes           17          Transfer Type            Isochronous
Synch Type               None          Usage Type               Feedback
wMaxPacketSize     0x0003  1x 3 bytes        bInterval               1
bRefresh                5        bSynchAddress           0    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      69
Report Descriptor: (length is 69)            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): Report ID, data= [ 0x01 ] 1
Item(Global): Logical Minimum, data= [ 0x00 ] 0            Item(Global):
Logical Maximum, data= [ 0x01 ] 1            Item(Local ): Usage, data= [ 0xe9
] 233                            Volume Increment            Item(Local ):
Usage, data= [ 0xea ] 234                            Volume Decrement
Item(Global): Report Size, data= [ 0x01 ] 1            Item(Global): Report
Count, data= [ 0x02 ] 2            Item(Main  ): Input, data= [ 0x42 ] 66
Data Variable Absolute No_Wrap Linear
Preferred_State Null_State Non_Volatile Bitfield            Item(Local ):
Usage, data= [ 0xe2 ] 226                            Mute
Item(Global): Report Count, data= [ 0x01 ] 1            Item(Main  ): Input,
data= [ 0x06 ] 6                            Data Variable Relative No_Wrap
Linear                            Preferred_State No_Null_Position
Non_Volatile Bitfield            Item(Global): Usage Page, data= [ 0xff 0x01 ]
511                            (null)            Item(Local ): Usage, data= [
0x01 ] 1                            (null)            Item(Global): Report
Count, data= [ 0x09 ] 9            Item(Main  ): Input, data= [ 0x06 ] 6
Data Variable Relative No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Bitfield
Item(Global): Usage Page, data= [ 0x0c ] 12
Consumer            Item(Local ): Usage, data= [ 0xcd ] 205
Play/Pause            Item(Local ): Usage, data= [ 0xb7 ] 183
Stop            Item(Local ): Usage, data= [ 0xb5 ] 181
Scan Next Track            Item(Local ): Usage, data= [ 0xb6 ] 182
Scan Previous Track            Item(Global): Report Count, data= [ 0x04 ] 4
Item(Main  ): Input, data= [ 0x06 ] 6                            Data Variable
Relative No_Wrap Linear                            Preferred_State
No_Null_Position Non_Volatile Bitfield            Item(Global): Usage Page,
data= [ 0xff 0x07 ] 2047                            (null)
Item(Local ): Usage, data= [ 0x01 ] 1                            (null)
Item(Global): Report Size, data= [ 0x08 ] 8            Item(Global): Report
Count, data= [ 0x0d ] 13            Item(Main  ): Input, data= [ 0x06 ] 6
Data Variable Relative No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Bitfield            Item(Local
): Usage, data= [ 0x00 ] 0                            (null)
Item(Global): Report Count, data= [ 0x0f ] 15            Item(Main  ): Output,
data= [ 0x02 ] 2                            Data Variable Absolute No_Wrap
Linear                            Preferred_State No_Null_Position
Non_Volatile Bitfield            Item(Main  ): End Collection, data=none
Endpoint Descriptor:        bLength                 7        bDescriptorType
5        bEndpointAddress     0x87  EP 7 IN        bmAttributes            3
Transfer Type            Interrupt          Synch Type               None
Usage Type               Data        wMaxPacketSize     0x0010  1x 16 bytes
bInterval               1Device Status:     0x0000  (Bus Powered)
Len Zaifman

> From: re...@d-compu.dyndns.org
> To: leona...@sympatico.ca
> Subject: Re: Help with USB speakers
> Date: Fri, 13 Dec 2013 09:13:30 +0100
> CC: misc@openbsd.org
>
> leona...@sympatico.ca wrote:
>
> > I am running openbsd -current
> >  5.4 GENERIC.MP#171 amd64 on a lenovo X1C
> > I just received  some USB speakers with DAC and amplifier. The system can
> > see the speakers but I cannot get them to be used when playing music
> >
> > In messages I see:
> > Dec 12 17:09:16 genetraveller /bsd: uaudio0 at uhub3 port 3 configuration
> > 1 interface 0 "KEF KEF X300A Speaker" rev 1.10/1.07 addr 5Dec 12 17:09:16
> > genetraveller /bsd: uaudio0: sync ep address mismatchDec 12 17:09:16
> > genetraveller /bsd: uaudio0: sync ep address mismatchDec 12 17:09:16
> > genetraveller /bsd: uaudio0: no usable endpoint foundDec 12 17:09:16
> > genetraveller /bsd: uaudio0: audio descriptors make no sense, error=4Dec
> > 12 17:09:16 genetraveller /bsd: uhidev0 at uhub3 port 3 configuration 1
> > interface 2 "KEF KEF X300A Speaker" rev 1.10/1.07 addr 5Dec 12 17:09:16
> > genetraveller /bsd: uhidev0: iclass 3/0, 1 report idDec 12 17:09:16
> > genetraveller /bsd: uhid0 at uhidev0 reportid 1: input=15, output=15,
> > feature=0Dec 12 17:09:16 genetraveller /bsd: ugen0 at uhub3 port 3
> > configuration 1 "KEF KEF X300A Speaker" rev 1.10/1.07 addr 5
> >
> > Does anyone know how to debug this and get it working?
> > Thanks.
> > Len Zaifman
>
> If you use the lsusb command from the usbutils package on this device you
can
> check its USB descriptors.
> Look for:
>       AudioControl Interface Descriptor:
>         bLength                 9
>         bDescriptorType        36
>         bDescriptorSubtype      1 (HEADER)
>         bcdADC               1.00
>
> If bcdADC says something other than "1.00", I think you're out-of-luck.
> I suspect it reads "2.00". AFAICT "Universal Serial Bus Device Class
> Definition for Audio Devices Release 2.0" isn't supported by OpenBSD.
>
> Unless someone else has a better solution, quite likely the uaudio driver
will
> need somebody able to update it for your device to work.

Reply via email to