* USB Quirks for Boss JS-8
@ 2011-03-18 17:56 Keith A. Milner
2011-03-21 7:54 ` Daniel Mack
0 siblings, 1 reply; 10+ messages in thread
From: Keith A. Milner @ 2011-03-18 17:56 UTC (permalink / raw)
To: alsa-devel
Hi,
I'm looking at developing a quirk for the Boss JS-8. The lsusb is as follows:
Bus 001 Device 003: ID 0582:0109 Roland Corp.
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 255 Vendor Specific Class
bDeviceSubClass 0
bDeviceProtocol 255
bMaxPacketSize0 64
idVendor 0x0582 Roland Corp.
idProduct 0x0109
bcdDevice 0.01
iManufacturer 1 BOSS
iProduct 2 JS-8
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 167
bNumInterfaces 3
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xc0
Self Powered
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 2
bInterfaceProtocol 2
iInterface 0
** UNRECOGNIZED: 06 24 f1 01 00 00
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 2
bInterfaceProtocol 2
iInterface 0
** UNRECOGNIZED: 07 24 01 01 00 01 00
** UNRECOGNIZED: 0b 24 02 01 02 04 18 01 44 ac 00
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x05 EP 5 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0070 1x 112 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 2
bInterfaceProtocol 1
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 2
bInterfaceProtocol 1
iInterface 0
** UNRECOGNIZED: 07 24 01 07 00 01 00
** UNRECOGNIZED: 0b 24 02 01 02 04 18 01 44 ac 00
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 37
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Implicit feedback Data
wMaxPacketSize 0x0070 1x 112 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 3
bInterfaceProtocol 0
iInterface 0
** UNRECOGNIZED: 06 24 f1 02 02 02
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 1
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 3
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 1
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 8 Mass Storage
bDeviceSubClass 6 SCSI
bDeviceProtocol 80 Bulk (Zip)
bMaxPacketSize0 64
bNumConfigurations 0
Device Status: 0x0001
Self Powered
I wasn't entirely sure about the quirk syntax as the two interfaces are at EP
4 and EP5. Does this mean I need to ignore the (non-existant) lower
interfaces? Here's what I came up with:
{
/* Boss JS-8 Jam Station */
USB_DEVICE(0x0582, 0x0109),
.driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
/* .vendor_name = "BOSS", */
/* .product_name = "JS-8", */
.ifnum = QUIRK_ANY_INTERFACE,
.type = QUIRK_COMPOSITE,
.data = (const struct snd_usb_audio_quirk[]) {
{
.ifnum = 0,
.type = QUIRK_IGNORE_INTERFACE
},
{
.ifnum = 1,
.type = QUIRK_IGNORE_INTERFACE
},
{
.ifnum = 2,
.type = QUIRK_IGNORE_INTERFACE
},
{
.ifnum = 3,
.type = QUIRK_IGNORE_INTERFACE
},
{
.ifnum = 4,
.type = QUIRK_AUDIO_STANDARD_INTERFACE
},
{
.ifnum = 5,
.type = QUIRK_AUDIO_STANDARD_INTERFACE
},
{
.ifnum = -1
}
}
}
},
regards,
--
Keith A. Milner
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: USB Quirks for Boss JS-8
2011-03-18 17:56 USB Quirks for Boss JS-8 Keith A. Milner
@ 2011-03-21 7:54 ` Daniel Mack
2011-03-21 12:50 ` Keith A. Milner
2011-03-21 13:32 ` Clemens Ladisch
0 siblings, 2 replies; 10+ messages in thread
From: Daniel Mack @ 2011-03-21 7:54 UTC (permalink / raw)
To: Keith A. Milner; +Cc: alsa-devel
On Fri, Mar 18, 2011 at 6:56 PM, Keith A. Milner
<maillist@superlative.org> wrote:
> Hi,
> I'm looking at developing a quirk for the Boss JS-8. The lsusb is as follows:
>
[...]
>
> I wasn't entirely sure about the quirk syntax as the two interfaces are at EP
> 4 and EP5. Does this mean I need to ignore the (non-existant) lower
> interfaces? Here's what I came up with:
>
> {
> /* Boss JS-8 Jam Station */
> USB_DEVICE(0x0582, 0x0109),
Does this quirk help anything? I'm just asking because looking at the
descriptors,it's not clear whether this device does comply to any
standard interfaces at all. Could be the vendor just hides the
compliancy, but they might have implemented a proprietary protocol as
well.
Daniel
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: USB Quirks for Boss JS-8
2011-03-21 7:54 ` Daniel Mack
@ 2011-03-21 12:50 ` Keith A. Milner
2011-03-21 13:32 ` Clemens Ladisch
1 sibling, 0 replies; 10+ messages in thread
From: Keith A. Milner @ 2011-03-21 12:50 UTC (permalink / raw)
To: alsa-devel
On Monday 21 Mar 2011 07:54:13 Daniel Mack wrote:
> On Fri, Mar 18, 2011 at 6:56 PM, Keith A. Milner
> >
> > {
> > /* Boss JS-8 Jam Station */
> > USB_DEVICE(0x0582, 0x0109),
>
> Does this quirk help anything? I'm just asking because looking at the
> descriptors,it's not clear whether this device does comply to any
> standard interfaces at all. Could be the vendor just hides the
> compliancy, but they might have implemented a proprietary protocol as
> well.
It's supposed to be a 2-in/2-out audio interface. At least that's what it
shows up with on Windows. The Windows driver README contains the following:
"Of the total audio input/output channels provided by the JS-8, there are 2
INs and 2 OUTs
[WAVE OUT Devices]
OUT (JS-8)
[WAVE IN Devices]
IN (JS-8)
[ASIO device]
When using the JS-8 with an ASIO-compatible application such as Cubase, select
"JS-8" as the ASIO setting for your application.
* To prevent an audio feedback loop or double monitoring, make settings on
your application to turn monitoring off or use ASIO Direct Monitoring.
* The JS-8 does not actually support ASIO Direct Monitoring. For greater
ease of use, support is simulated.
* When using the JS-8 with ASIO, we recommend that you set your application
so that it does not use the Microsoft GS Wavetable SW Synth. (In order to
decrease the load, and for convenience when changing Audio Buffer Size of the
driver.)"
It could well be proprietary, but it's a Roland device and my understanding is
it's not uncommon for Roland to hide standard usb-audio interfaces behind non-
standard identifiers.
I have USB Device Monitoring Studio on my Windows laptop so I can dig further,
although I'm not entirely sure what I should be looking for.
Cheers,
--
Keith A. Milner
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: USB Quirks for Boss JS-8
2011-03-21 7:54 ` Daniel Mack
2011-03-21 12:50 ` Keith A. Milner
@ 2011-03-21 13:32 ` Clemens Ladisch
2011-03-21 14:10 ` Keith A. Milner
2011-03-21 14:45 ` Keith A. Milner
1 sibling, 2 replies; 10+ messages in thread
From: Clemens Ladisch @ 2011-03-21 13:32 UTC (permalink / raw)
To: Daniel Mack; +Cc: alsa-devel, Keith A. Milner
Daniel Mack wrote:
> On Fri, Mar 18, 2011 at 6:56 PM, Keith A. Milner
> <maillist@superlative.org> wrote:
> > Hi,
> > I'm looking at developing a quirk for the Boss JS-8. The lsusb is as follows:
>
> [...]
>
> > I wasn't entirely sure about the quirk syntax as the two interfaces are at EP
> > 4 and EP5. Does this mean I need to ignore the (non-existant) lower
> > interfaces? Here's what I came up with:
>
> Does this quirk help anything?
Certainly not; endpoint numbers are not interface numbers. Try with
audio interfaces 0 and 1 and MIDI interface 2.
> I'm just asking because looking at the descriptors,it's not clear
> whether this device does comply to any standard interfaces at all.
Many Roland devices work this way. (And I'd expect any USB audio
developer to instantly recognize descriptors like "0b 24 02 01 02 04 18
01 44 ac 00". ;-)
Regards,
Clemens
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: USB Quirks for Boss JS-8
2011-03-21 13:32 ` Clemens Ladisch
@ 2011-03-21 14:10 ` Keith A. Milner
2011-03-21 14:45 ` Keith A. Milner
1 sibling, 0 replies; 10+ messages in thread
From: Keith A. Milner @ 2011-03-21 14:10 UTC (permalink / raw)
To: Clemens Ladisch; +Cc: alsa-devel
On Monday 21 Mar 2011 13:32:50 Clemens Ladisch wrote:
> Daniel Mack wrote:
> > On Fri, Mar 18, 2011 at 6:56 PM, Keith A. Milner
> > > I wasn't entirely sure about the quirk syntax as the two interfaces are
> > > at EP 4 and EP5. Does this mean I need to ignore the (non-existant)
> > > lower
> >
> > > interfaces? Here's what I came up with:
> > Does this quirk help anything?
>
> Certainly not; endpoint numbers are not interface numbers. Try with
> audio interfaces 0 and 1 and MIDI interface 2.
Excellent. I will give this a try and see how it goes. I wasn't actually aware
it had MIDI. I guess this may be used for some sort of control function, or
maybe it's in the hardware but not supported in the devices firmware.
>
> > I'm just asking because looking at the descriptors,it's not clear
> > whether this device does comply to any standard interfaces at all.
>
> Many Roland devices work this way. (And I'd expect any USB audio
> developer to instantly recognize descriptors like "0b 24 02 01 02 04 18
> 01 44 ac 00". ;-)
I have to profess my ignorance here.
Thanks for you help. I will report back on how I get on.
--
Keith A. Milner
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: USB Quirks for Boss JS-8
2011-03-21 13:32 ` Clemens Ladisch
2011-03-21 14:10 ` Keith A. Milner
@ 2011-03-21 14:45 ` Keith A. Milner
2012-10-14 19:43 ` Adolfo
1 sibling, 1 reply; 10+ messages in thread
From: Keith A. Milner @ 2011-03-21 14:45 UTC (permalink / raw)
To: alsa-devel; +Cc: Clemens Ladisch, Daniel Mack
On Monday 21 Mar 2011 13:32:50 Clemens Ladisch wrote:
Try with
> audio interfaces 0 and 1 and MIDI interface 2.
Well, that was remarkably easy! I tried with these settings and it seems to
work very well.
At first try (using Ardour with Jack) both input and output work. Many thanks
for your help on this.
I'll test it a bit more and then work out out to submit as a patch.
Cheers,
--
Keith A. Milner
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: USB Quirks for Boss JS-8
2011-03-21 14:45 ` Keith A. Milner
@ 2012-10-14 19:43 ` Adolfo
2012-10-16 7:47 ` Daniel Mack
0 siblings, 1 reply; 10+ messages in thread
From: Adolfo @ 2012-10-14 19:43 UTC (permalink / raw)
To: alsa-devel
Hi,
I am not able to hear any sounds in my JS-8 connected to my Fedora 17,
The device is recognised by the system, but no sound can be played,
I've tried with jack too, but no luck,
Can you please tell me if jackd needs any special parameters in order to run
with JS-8?
Best regards,
Adolfo
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: USB Quirks for Boss JS-8
2012-10-14 19:43 ` Adolfo
@ 2012-10-16 7:47 ` Daniel Mack
2012-10-16 8:04 ` Adolfo Ranea
2013-04-14 23:00 ` Keith A. Milner
0 siblings, 2 replies; 10+ messages in thread
From: Daniel Mack @ 2012-10-16 7:47 UTC (permalink / raw)
To: Adolfo; +Cc: alsa-devel
On 14.10.2012 21:43, Adolfo wrote:
> I am not able to hear any sounds in my JS-8 connected to my Fedora 17,
>
> The device is recognised by the system, but no sound can be played,
> I've tried with jack too, but no luck,
> Can you please tell me if jackd needs any special parameters in order to run
> with JS-8?
You might have hit a bug here that I introduced during a refactoring of
the driver. Unfortunately, I can't reproduce that with any of the
multiple USB audio devices I have at hand, but someone from the
alsa-user ML offered me to send over his device that also show this
problem, so I can have a look. Stay tuned please, and my apologies for
the trouble.
Meanwhile, you could check whether any of the kernels between 2.6.39 ->
3.4 works for you - they all have the quirk for the JS-8.
Thanks,
Daniel
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: USB Quirks for Boss JS-8
2012-10-16 7:47 ` Daniel Mack
@ 2012-10-16 8:04 ` Adolfo Ranea
2013-04-14 23:00 ` Keith A. Milner
1 sibling, 0 replies; 10+ messages in thread
From: Adolfo Ranea @ 2012-10-16 8:04 UTC (permalink / raw)
To: Daniel Mack; +Cc: alsa-devel
Thanks for your response,
If I can help you in testing the fix please let me know
Regards,
Adolfo
2012/10/16 Daniel Mack <zonque@gmail.com>
> On 14.10.2012 21:43, Adolfo wrote:
> > I am not able to hear any sounds in my JS-8 connected to my Fedora 17,
> >
> > The device is recognised by the system, but no sound can be played,
> > I've tried with jack too, but no luck,
> > Can you please tell me if jackd needs any special parameters in order to
> run
> > with JS-8?
>
> You might have hit a bug here that I introduced during a refactoring of
> the driver. Unfortunately, I can't reproduce that with any of the
> multiple USB audio devices I have at hand, but someone from the
> alsa-user ML offered me to send over his device that also show this
> problem, so I can have a look. Stay tuned please, and my apologies for
> the trouble.
>
> Meanwhile, you could check whether any of the kernels between 2.6.39 ->
> 3.4 works for you - they all have the quirk for the JS-8.
>
>
> Thanks,
> Daniel
>
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: USB Quirks for Boss JS-8
2012-10-16 7:47 ` Daniel Mack
2012-10-16 8:04 ` Adolfo Ranea
@ 2013-04-14 23:00 ` Keith A. Milner
1 sibling, 0 replies; 10+ messages in thread
From: Keith A. Milner @ 2013-04-14 23:00 UTC (permalink / raw)
To: alsa-devel
On Tuesday 16 Oct 2012 09:47:28 Daniel Mack wrote:
> On 14.10.2012 21:43, Adolfo wrote:
> > I am not able to hear any sounds in my JS-8 connected to my Fedora 17,
> >
> > The device is recognised by the system, but no sound can be played,
> > I've tried with jack too, but no luck,
> > Can you please tell me if jackd needs any special parameters in order to
> > run with JS-8?
>
> You might have hit a bug here that I introduced during a refactoring of
> the driver. Unfortunately, I can't reproduce that with any of the
> multiple USB audio devices I have at hand, but someone from the
> alsa-user ML offered me to send over his device that also show this
> problem, so I can have a look. Stay tuned please, and my apologies for
> the trouble.
>
> Meanwhile, you could check whether any of the kernels between 2.6.39 ->
> 3.4 works for you - they all have the quirk for the JS-8.
If it's any help, I'm running Linux Mint 13 with a 3.2.0-34 kernel and it's
working for me. I do get the following in dmesg:
[47696.764621] usb 1-6.2: new high-speed USB device number 12 using ehci_hcd
[47696.858892] MIDIStreaming interface descriptor not found
[47696.859099] init_device failed: MIDI 4-0: seq-midi
This is due to an error in the original quirk I submitted which was brought to
light when some changes were made to the USB driver. I will try to tidy it up
sometime.
Cheers,
Keith
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2013-04-14 23:00 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-03-18 17:56 USB Quirks for Boss JS-8 Keith A. Milner
2011-03-21 7:54 ` Daniel Mack
2011-03-21 12:50 ` Keith A. Milner
2011-03-21 13:32 ` Clemens Ladisch
2011-03-21 14:10 ` Keith A. Milner
2011-03-21 14:45 ` Keith A. Milner
2012-10-14 19:43 ` Adolfo
2012-10-16 7:47 ` Daniel Mack
2012-10-16 8:04 ` Adolfo Ranea
2013-04-14 23:00 ` Keith A. Milner
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).