* [alsa-devel] Tascam US-122L - Corrupt USB descriptor
@ 2016-04-13 6:38 Simon Wood
2016-04-13 9:01 ` Clemens Ladisch
` (2 more replies)
0 siblings, 3 replies; 12+ messages in thread
From: Simon Wood @ 2016-04-13 6:38 UTC (permalink / raw)
To: alsa-devel; +Cc: alsa-devel
[-- Attachment #1: Type: text/plain, Size: 925 bytes --]
Hi all,
I have been struggling for the past few days to get a Tascam US-122L (USB
sound-card/midi interface) working, despite reading numerous forum
postings I have only been able to get the midi portion working.
I note that the USB descriptor seems to be corrupt. It declares 2
interfaces, but then describes 3 separate with the same interface number
for the last 2... could it be that this is confusing the Linux USB stack?
I have attached a copy of the descriptor and an annotated 'lsusb -vv'.
>From my experience with the HID subsystem, they have a mechanism for
patching HID descriptors, is the same possible for the base USB
descriptor? Trolling through 'drivers/usb' I didn't see anything... any
suggestions?
If this is possible I can try to increase the interface count and renumber
the last one.
Cheers,
Simon.
PS. For reference the device is:
Model No: US-122L
Serial: (21)0120xxx
Other barcode: 043774021628
[-- Attachment #2: us-122l-descriptors.txt --]
[-- Type: text/plain, Size: 5494 bytes --]
00000000 12 01 00 02 00 00 00 40 44 06 0e 80 00 01 01 02 |.......@D.......|
00000010 03 01 09 02 48 00 02 01 00 80 f0 09 04 00 00 00 |....H...........|
00000020 ff 00 00 00 09 04 01 00 00 ff 00 00 00 09 04 01 |................|
00000030 01 04 ff 00 00 00 09 05 81 05 4e 00 01 00 00 09 |..........N.....|
00000040 05 02 05 4e 00 01 00 00 09 05 83 02 09 00 04 00 |...N............|
00000050 00 09 05 04 02 00 02 04 00 00 |..........|
0000005a
Bus 001 Device 042: ID 0644:800e TEAC Corp. TASCAM US-122L
--
00000000 12 01 00 02 00 00 00 40 44 06 0e 80 00 01 01 02 |.......@D.......|
00000010 03 01 __________________________________________ |....H...........|
--
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0644 TEAC Corp.
idProduct 0x800e TASCAM US-122L
bcdDevice 1.00
iManufacturer 1 (error) <------ Here be Errors!
iProduct 2 (error)
iSerial 3 (error)
bNumConfigurations 1
Configuration Descriptor:
--
00000010 _____ 09 02 48 00 02 01 00 80 f0 ______________ |....H...........|
--
bLength 9
bDescriptorType 2
wTotalLength 72
bNumInterfaces 2 <------- 2 interfaces
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 480mA
Interface Descriptor: <------ that's 1
--
00000010 _________________________________ 09 04 00 00 00 |....H...........|
00000020 ff 00 00 00 ____________________________________ |................|
--
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Interface Descriptor: <------ that's 2
--
00000020 ___________ 09 04 01 00 00 ff 00 00 00 ________ |................|
--
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Interface Descriptor: <------ that's 3, err wait...
--
00000020 _______________________________________ 09 04 01 |................|
00000030 01 04 ff 00 00 00 ______________________________ |..........N.....|
--
bLength 9
bDescriptorType 4
bInterfaceNumber 1 <------ interface duplicate!!
bAlternateSetting 1
bNumEndpoints 4
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
--
00000030 _________________ 09 05 81 05 4e 00 01 00 00 __ |..........N.....|
--
bLength 9
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x004e 1x 78 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
Endpoint Descriptor:
--
00000030 _____________________________________________ 09 |..........N.....|
00000040 05 02 05 4e 00 01 00 00 _______________________ |...N............|
--
bLength 9
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x004e 1x 78 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
Endpoint Descriptor:
--
00000040 _______________________ 09 05 83 02 09 00 04 00 |...N............|
00000050 00 ___________________________ |..........|
--
bLength 9
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0009 1x 9 bytes
bInterval 4
bRefresh 0
bSynchAddress 0
Endpoint Descriptor:
--
00000050 __ 09 05 04 02 00 02 04 00 00 |..........|
--
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 4
bRefresh 0
bSynchAddress 0
Device Status: 0x0001
Self Powered
[-- Attachment #3: Type: text/plain, Size: 160 bytes --]
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [alsa-devel] Tascam US-122L - Corrupt USB descriptor 2016-04-13 6:38 [alsa-devel] Tascam US-122L - Corrupt USB descriptor Simon Wood @ 2016-04-13 9:01 ` Clemens Ladisch 2016-04-13 14:08 ` Simon Wood 2016-04-13 14:08 ` [alsa-devel] " Simon Wood 2016-04-13 9:01 ` Clemens Ladisch 2016-04-13 9:02 ` Ricard Wanderlof 2 siblings, 2 replies; 12+ messages in thread From: Clemens Ladisch @ 2016-04-13 9:01 UTC (permalink / raw) To: alsa-devel; +Cc: alsa-devel Simon Wood wrote: > I have been struggling for the past few days to get a Tascam US-122L (USB > sound-card/midi interface) working, despite reading numerous forum > postings I have only been able to get the midi portion working. Does it show up with "aplay -l"? > I note that the USB descriptor seems to be corrupt. It declares 2 > interfaces, but then describes 3 separate with the same interface number > for the last 2. The descriptors describe two alternate settings for the same interface. This is a feature, which is required for audio devices. > iManufacturer 1 (error) <------ Here be Errors! > iProduct 2 (error) > iSerial 3 (error) It's possible that lsusb does not have the permissions needed to send the messages to ask for the strings. Try running it as root. Regards, Clemens -- To unsubscribe from this list: send the line "unsubscribe alsa-devel" in _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Tascam US-122L - Corrupt USB descriptor 2016-04-13 9:01 ` Clemens Ladisch @ 2016-04-13 14:08 ` Simon Wood 2016-04-13 14:08 ` [alsa-devel] " Simon Wood 1 sibling, 0 replies; 12+ messages in thread From: Simon Wood @ 2016-04-13 14:08 UTC (permalink / raw) To: alsa-devel; +Cc: Simon Wood, linux-usb, alsa-devel [-- Attachment #1: Type: text/plain, Size: 1445 bytes --] On Wed, April 13, 2016 3:01 am, Clemens Ladisch wrote: > Simon Wood wrote: > >> I have been struggling for the past few days to get a Tascam US-122L >> (USB >> sound-card/midi interface) working, despite reading numerous forum >> postings I have only been able to get the midi portion working. > > Does it show up with "aplay -l"? The card shows up under '/proc/asound/cards', but only as Midi. See attached for full listing. >> I note that the USB descriptor seems to be corrupt. It declares 2 >> interfaces, but then describes 3 separate with the same interface number >> for the last 2. > > The descriptors describe two alternate settings for the same interface. > This is a feature, which is required for audio devices. > > >> iManufacturer 1 (error) <------ Here be Errors! iProduct >> 2 (error) >> iSerial 3 (error) > > It's possible that lsusb does not have the permissions needed to send > the messages to ask for the strings. Try running it as root. Was running as root (on Xubuntu, 2 different machines, different installs). I note that sometimes this is OK, ie when I do '# echo 0 > /sys/bus/usb/devices/1-2/bConfigurationValue', but then I have no interfaces at all (no midi, no listing). Can anyone confirm they have a US-122L working on a new kernel. Is the USB descriptor the same as what I'm seeing, perhaps hardware changed at some point. Cheers, Simon [-- Attachment #2: aplay_l.txt --] [-- Type: text/plain, Size: 2684 bytes --] # cat /proc/asound/cards > aplay_l.txt 0 [Audigy2 ]: Audigy2 - SB Audigy 2 ZS [SB0350] SB Audigy 2 ZS [SB0350] (rev.4, serial:0x20021102) at 0xccc0, irq 27 1 [US122L ]: USB US-122L - TASCAM US-122L TASCAM US-122L (644:800e if 0 at 001/005) # aplaymidi -l >> aplay_l.txt Port Client name Port name 14:0 Midi Through Midi Through Port-0 16:0 SB Audigy 2 ZS [SB0350] Audigy MPU-401 (UART) 16:32 SB Audigy 2 ZS [SB0350] Audigy MPU-401 #2 17:0 Emu10k1 WaveTable Emu10k1 Port 0 17:1 Emu10k1 WaveTable Emu10k1 Port 1 17:2 Emu10k1 WaveTable Emu10k1 Port 2 17:3 Emu10k1 WaveTable Emu10k1 Port 3 20:0 TASCAM US-122L TASCAM US-122L MIDI 1 # aplay -l >> aplay_l.txt **** List of PLAYBACK Hardware Devices **** card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 0: emu10k1 [ADC Capture/Standard PCM Playback] Subdevices: 32/32 Subdevice #0: subdevice #0 Subdevice #1: subdevice #1 Subdevice #2: subdevice #2 Subdevice #3: subdevice #3 Subdevice #4: subdevice #4 Subdevice #5: subdevice #5 Subdevice #6: subdevice #6 Subdevice #7: subdevice #7 Subdevice #8: subdevice #8 Subdevice #9: subdevice #9 Subdevice #10: subdevice #10 Subdevice #11: subdevice #11 Subdevice #12: subdevice #12 Subdevice #13: subdevice #13 Subdevice #14: subdevice #14 Subdevice #15: subdevice #15 Subdevice #16: subdevice #16 Subdevice #17: subdevice #17 Subdevice #18: subdevice #18 Subdevice #19: subdevice #19 Subdevice #20: subdevice #20 Subdevice #21: subdevice #21 Subdevice #22: subdevice #22 Subdevice #23: subdevice #23 Subdevice #24: subdevice #24 Subdevice #25: subdevice #25 Subdevice #26: subdevice #26 Subdevice #27: subdevice #27 Subdevice #28: subdevice #28 Subdevice #29: subdevice #29 Subdevice #30: subdevice #30 Subdevice #31: subdevice #31 card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 2: emu10k1 efx [Multichannel Capture/PT Playback] Subdevices: 8/8 Subdevice #0: subdevice #0 Subdevice #1: subdevice #1 Subdevice #2: subdevice #2 Subdevice #3: subdevice #3 Subdevice #4: subdevice #4 Subdevice #5: subdevice #5 Subdevice #6: subdevice #6 Subdevice #7: subdevice #7 card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 3: emu10k1 [Multichannel Playback] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 4: p16v [p16v] Subdevices: 1/1 Subdevice #0: subdevice #0 [-- Attachment #3: Type: text/plain, Size: 0 bytes --] ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [alsa-devel] Tascam US-122L - Corrupt USB descriptor 2016-04-13 9:01 ` Clemens Ladisch 2016-04-13 14:08 ` Simon Wood @ 2016-04-13 14:08 ` Simon Wood 2016-04-14 7:35 ` Clemens Ladisch 2016-04-14 7:35 ` [alsa-devel] " Clemens Ladisch 1 sibling, 2 replies; 12+ messages in thread From: Simon Wood @ 2016-04-13 14:08 UTC (permalink / raw) To: alsa-devel; +Cc: Simon Wood, linux-usb, alsa-devel [-- Attachment #1: Type: text/plain, Size: 1406 bytes --] On Wed, April 13, 2016 3:01 am, Clemens Ladisch wrote: > Simon Wood wrote: > >> I have been struggling for the past few days to get a Tascam US-122L >> (USB >> sound-card/midi interface) working, despite reading numerous forum >> postings I have only been able to get the midi portion working. > > Does it show up with "aplay -l"? The card shows up under '/proc/asound/cards', but only as Midi. See attached for full listing. >> I note that the USB descriptor seems to be corrupt. It declares 2 >> interfaces, but then describes 3 separate with the same interface number >> for the last 2. > > The descriptors describe two alternate settings for the same interface. > This is a feature, which is required for audio devices. > > >> iManufacturer 1 (error) <------ Here be Errors! iProduct >> 2 (error) >> iSerial 3 (error) > > It's possible that lsusb does not have the permissions needed to send > the messages to ask for the strings. Try running it as root. Was running as root (on Xubuntu, 2 different machines, different installs). I note that sometimes this is OK, ie when I do '# echo 0 > /sys/bus/usb/devices/1-2/bConfigurationValue', but then I have no interfaces at all (no midi, no listing). Can anyone confirm they have a US-122L working on a new kernel. Is the USB descriptor the same as what I'm seeing, perhaps hardware changed at some point. Cheers, Simon [-- Attachment #2: aplay_l.txt --] [-- Type: text/plain, Size: 2616 bytes --] # cat /proc/asound/cards > aplay_l.txt 0 [Audigy2 ]: Audigy2 - SB Audigy 2 ZS [SB0350] SB Audigy 2 ZS [SB0350] (rev.4, serial:0x20021102) at 0xccc0, irq 27 1 [US122L ]: USB US-122L - TASCAM US-122L TASCAM US-122L (644:800e if 0 at 001/005) # aplaymidi -l >> aplay_l.txt Port Client name Port name 14:0 Midi Through Midi Through Port-0 16:0 SB Audigy 2 ZS [SB0350] Audigy MPU-401 (UART) 16:32 SB Audigy 2 ZS [SB0350] Audigy MPU-401 #2 17:0 Emu10k1 WaveTable Emu10k1 Port 0 17:1 Emu10k1 WaveTable Emu10k1 Port 1 17:2 Emu10k1 WaveTable Emu10k1 Port 2 17:3 Emu10k1 WaveTable Emu10k1 Port 3 20:0 TASCAM US-122L TASCAM US-122L MIDI 1 # aplay -l >> aplay_l.txt **** List of PLAYBACK Hardware Devices **** card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 0: emu10k1 [ADC Capture/Standard PCM Playback] Subdevices: 32/32 Subdevice #0: subdevice #0 Subdevice #1: subdevice #1 Subdevice #2: subdevice #2 Subdevice #3: subdevice #3 Subdevice #4: subdevice #4 Subdevice #5: subdevice #5 Subdevice #6: subdevice #6 Subdevice #7: subdevice #7 Subdevice #8: subdevice #8 Subdevice #9: subdevice #9 Subdevice #10: subdevice #10 Subdevice #11: subdevice #11 Subdevice #12: subdevice #12 Subdevice #13: subdevice #13 Subdevice #14: subdevice #14 Subdevice #15: subdevice #15 Subdevice #16: subdevice #16 Subdevice #17: subdevice #17 Subdevice #18: subdevice #18 Subdevice #19: subdevice #19 Subdevice #20: subdevice #20 Subdevice #21: subdevice #21 Subdevice #22: subdevice #22 Subdevice #23: subdevice #23 Subdevice #24: subdevice #24 Subdevice #25: subdevice #25 Subdevice #26: subdevice #26 Subdevice #27: subdevice #27 Subdevice #28: subdevice #28 Subdevice #29: subdevice #29 Subdevice #30: subdevice #30 Subdevice #31: subdevice #31 card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 2: emu10k1 efx [Multichannel Capture/PT Playback] Subdevices: 8/8 Subdevice #0: subdevice #0 Subdevice #1: subdevice #1 Subdevice #2: subdevice #2 Subdevice #3: subdevice #3 Subdevice #4: subdevice #4 Subdevice #5: subdevice #5 Subdevice #6: subdevice #6 Subdevice #7: subdevice #7 card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 3: emu10k1 [Multichannel Playback] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 4: p16v [p16v] Subdevices: 1/1 Subdevice #0: subdevice #0 [-- Attachment #3: Type: text/plain, Size: 160 bytes --] _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Tascam US-122L - Corrupt USB descriptor 2016-04-13 14:08 ` [alsa-devel] " Simon Wood @ 2016-04-14 7:35 ` Clemens Ladisch 2016-04-14 7:35 ` [alsa-devel] " Clemens Ladisch 1 sibling, 0 replies; 12+ messages in thread From: Clemens Ladisch @ 2016-04-14 7:35 UTC (permalink / raw) To: alsa-devel; +Cc: linux-usb, alsa-devel Simon Wood wrote: > The card shows up under '/proc/asound/cards', but only as Midi. Apparently, there is no PCM device. This driver creates a special hardware-dependent device which is intended to be used with the Jack driver "usb_stream". It might be possible to use the ALSA "usb_stream" plugin: <http://www.alsa-project.org/main/index.php/Matrix:Module-usb-us122l> Regards, Clemens -- To unsubscribe from this list: send the line "unsubscribe alsa-devel" in ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [alsa-devel] Tascam US-122L - Corrupt USB descriptor 2016-04-13 14:08 ` [alsa-devel] " Simon Wood 2016-04-14 7:35 ` Clemens Ladisch @ 2016-04-14 7:35 ` Clemens Ladisch 2016-04-14 16:20 ` Simon Wood 2016-04-14 16:20 ` [alsa-devel] " Simon Wood 1 sibling, 2 replies; 12+ messages in thread From: Clemens Ladisch @ 2016-04-14 7:35 UTC (permalink / raw) To: alsa-devel; +Cc: linux-usb, alsa-devel Simon Wood wrote: > The card shows up under '/proc/asound/cards', but only as Midi. Apparently, there is no PCM device. This driver creates a special hardware-dependent device which is intended to be used with the Jack driver "usb_stream". It might be possible to use the ALSA "usb_stream" plugin: <http://www.alsa-project.org/main/index.php/Matrix:Module-usb-us122l> Regards, Clemens -- To unsubscribe from this list: send the line "unsubscribe alsa-devel" in _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Tascam US-122L - Corrupt USB descriptor 2016-04-14 7:35 ` [alsa-devel] " Clemens Ladisch @ 2016-04-14 16:20 ` Simon Wood 2016-04-14 16:20 ` [alsa-devel] " Simon Wood 1 sibling, 0 replies; 12+ messages in thread From: Simon Wood @ 2016-04-14 16:20 UTC (permalink / raw) To: alsa-devel; +Cc: linux-usb, alsa-devel On Thu, April 14, 2016 1:35 am, Clemens Ladisch wrote: > Simon Wood wrote: > >> The card shows up under '/proc/asound/cards', but only as Midi. >> > > Apparently, there is no PCM device. This driver creates a special > hardware-dependent device which is intended to be used with the Jack driver > "usb_stream". > > > It might be possible to use the ALSA "usb_stream" plugin: > <http://www.alsa-project.org/main/index.php/Matrix:Module-usb-us122l> I have this '.asoundrc' file (made before previous postings), but that does not seem to make a usable card. I'm expecting that a PCM device should /just/ appear under 'aplay -l', but that is not happening. Perhaps there is a step I am missing, or I am just confused about what qualifies a 'working' US-122L. Do I need to be using a specific version of (userland) Alsa? It would be nice to get a 'nod' from a person who has the US-122L workin on their system. But I do appreciate Clemens' help and guidance, Simon. -- To unsubscribe from this list: send the line "unsubscribe alsa-devel" in ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [alsa-devel] Tascam US-122L - Corrupt USB descriptor 2016-04-14 7:35 ` [alsa-devel] " Clemens Ladisch 2016-04-14 16:20 ` Simon Wood @ 2016-04-14 16:20 ` Simon Wood 2016-04-14 17:10 ` Clemens Ladisch 2016-04-14 17:10 ` [alsa-devel] " Clemens Ladisch 1 sibling, 2 replies; 12+ messages in thread From: Simon Wood @ 2016-04-14 16:20 UTC (permalink / raw) To: alsa-devel; +Cc: linux-usb, alsa-devel On Thu, April 14, 2016 1:35 am, Clemens Ladisch wrote: > Simon Wood wrote: > >> The card shows up under '/proc/asound/cards', but only as Midi. >> > > Apparently, there is no PCM device. This driver creates a special > hardware-dependent device which is intended to be used with the Jack driver > "usb_stream". > > > It might be possible to use the ALSA "usb_stream" plugin: > <http://www.alsa-project.org/main/index.php/Matrix:Module-usb-us122l> I have this '.asoundrc' file (made before previous postings), but that does not seem to make a usable card. I'm expecting that a PCM device should /just/ appear under 'aplay -l', but that is not happening. Perhaps there is a step I am missing, or I am just confused about what qualifies a 'working' US-122L. Do I need to be using a specific version of (userland) Alsa? It would be nice to get a 'nod' from a person who has the US-122L workin on their system. But I do appreciate Clemens' help and guidance, Simon. -- To unsubscribe from this list: send the line "unsubscribe alsa-devel" in _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Tascam US-122L - Corrupt USB descriptor 2016-04-14 16:20 ` [alsa-devel] " Simon Wood @ 2016-04-14 17:10 ` Clemens Ladisch 2016-04-14 17:10 ` [alsa-devel] " Clemens Ladisch 1 sibling, 0 replies; 12+ messages in thread From: Clemens Ladisch @ 2016-04-14 17:10 UTC (permalink / raw) To: alsa-devel; +Cc: linux-usb, alsa-devel Simon Wood wrote: > On Thu, April 14, 2016 1:35 am, Clemens Ladisch wrote: >> Simon Wood wrote: >>> The card shows up under '/proc/asound/cards', but only as Midi. >> >> Apparently, there is no PCM device. This driver creates a special >> hardware-dependent device which is intended to be used with the Jack driver >> "usb_stream". >> >> It might be possible to use the ALSA "usb_stream" plugin: >> <http://www.alsa-project.org/main/index.php/Matrix:Module-usb-us122l> > > I have this '.asoundrc' file (made before previous postings), but that > does not seem to make a usable card. What error message do you get when you try to use aplay with that device? > I'm expecting that a PCM device should /just/ appear under 'aplay -l' The driver does not implement such a PCM device. Regards, Clemens -- To unsubscribe from this list: send the line "unsubscribe alsa-devel" in ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [alsa-devel] Tascam US-122L - Corrupt USB descriptor 2016-04-14 16:20 ` [alsa-devel] " Simon Wood 2016-04-14 17:10 ` Clemens Ladisch @ 2016-04-14 17:10 ` Clemens Ladisch 1 sibling, 0 replies; 12+ messages in thread From: Clemens Ladisch @ 2016-04-14 17:10 UTC (permalink / raw) To: alsa-devel; +Cc: linux-usb, alsa-devel Simon Wood wrote: > On Thu, April 14, 2016 1:35 am, Clemens Ladisch wrote: >> Simon Wood wrote: >>> The card shows up under '/proc/asound/cards', but only as Midi. >> >> Apparently, there is no PCM device. This driver creates a special >> hardware-dependent device which is intended to be used with the Jack driver >> "usb_stream". >> >> It might be possible to use the ALSA "usb_stream" plugin: >> <http://www.alsa-project.org/main/index.php/Matrix:Module-usb-us122l> > > I have this '.asoundrc' file (made before previous postings), but that > does not seem to make a usable card. What error message do you get when you try to use aplay with that device? > I'm expecting that a PCM device should /just/ appear under 'aplay -l' The driver does not implement such a PCM device. Regards, Clemens -- To unsubscribe from this list: send the line "unsubscribe alsa-devel" in _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Tascam US-122L - Corrupt USB descriptor 2016-04-13 6:38 [alsa-devel] Tascam US-122L - Corrupt USB descriptor Simon Wood 2016-04-13 9:01 ` Clemens Ladisch @ 2016-04-13 9:01 ` Clemens Ladisch 2016-04-13 9:02 ` Ricard Wanderlof 2 siblings, 0 replies; 12+ messages in thread From: Clemens Ladisch @ 2016-04-13 9:01 UTC (permalink / raw) To: alsa-devel; +Cc: alsa-devel Simon Wood wrote: > I have been struggling for the past few days to get a Tascam US-122L (USB > sound-card/midi interface) working, despite reading numerous forum > postings I have only been able to get the midi portion working. Does it show up with "aplay -l"? > I note that the USB descriptor seems to be corrupt. It declares 2 > interfaces, but then describes 3 separate with the same interface number > for the last 2. The descriptors describe two alternate settings for the same interface. This is a feature, which is required for audio devices. > iManufacturer 1 (error) <------ Here be Errors! > iProduct 2 (error) > iSerial 3 (error) It's possible that lsusb does not have the permissions needed to send the messages to ask for the strings. Try running it as root. Regards, Clemens -- To unsubscribe from this list: send the line "unsubscribe alsa-devel" in ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Tascam US-122L - Corrupt USB descriptor 2016-04-13 6:38 [alsa-devel] Tascam US-122L - Corrupt USB descriptor Simon Wood 2016-04-13 9:01 ` Clemens Ladisch 2016-04-13 9:01 ` Clemens Ladisch @ 2016-04-13 9:02 ` Ricard Wanderlof 2 siblings, 0 replies; 12+ messages in thread From: Ricard Wanderlof @ 2016-04-13 9:02 UTC (permalink / raw) To: Simon Wood; +Cc: alsa-devel, alsa-devel On Wed, 13 Apr 2016, Simon Wood wrote: > Hi all, > I have been struggling for the past few days to get a Tascam US-122L (USB > sound-card/midi interface) working, despite reading numerous forum > postings I have only been able to get the midi portion working. > > I note that the USB descriptor seems to be corrupt. It declares 2 > interfaces, but then describes 3 separate with the same interface number > for the last 2... could it be that this is confusing the Linux USB stack? > > I have attached a copy of the descriptor and an annotated 'lsusb -vv'. > ... My experience of lsusb is that it can get confused and report errors when there in fact aren't any, especially with vendor specific classes which it really can only guess at. > > Configuration Descriptor: > -- > 00000010 _____ 09 02 48 00 02 01 00 80 f0 ______________ |....H...........| > -- > bLength 9 > bDescriptorType 2 > wTotalLength 72 > bNumInterfaces 2 <------- 2 interfaces > bConfigurationValue 1 > iConfiguration 0 > bmAttributes 0x80 > (Bus Powered) > MaxPower 480mA > > > Interface Descriptor: <------ that's 1 > -- > 00000010 _________________________________ 09 04 00 00 00 |....H...........| > 00000020 ff 00 00 00 ____________________________________ |................| > -- > bLength 9 > bDescriptorType 4 > bInterfaceNumber 0 > bAlternateSetting 0 > bNumEndpoints 0 > bInterfaceClass 255 Vendor Specific Class > bInterfaceSubClass 0 > bInterfaceProtocol 0 > iInterface 0 > > Interface Descriptor: <------ that's 2 > -- > 00000020 ___________ 09 04 01 00 00 ff 00 00 00 ________ |................| > -- > bLength 9 > bDescriptorType 4 > bInterfaceNumber 1 > bAlternateSetting 0 > bNumEndpoints 0 > bInterfaceClass 255 Vendor Specific Class > bInterfaceSubClass 0 > bInterfaceProtocol 0 > iInterface 0 > > Interface Descriptor: <------ that's 3, err wait... > -- > 00000020 _______________________________________ 09 04 01 |................| > 00000030 01 04 ff 00 00 00 ______________________________ |..........N.....| > -- > bLength 9 > bDescriptorType 4 > bInterfaceNumber 1 <------ interface duplicate!! > bAlternateSetting 1 > bNumEndpoints 4 My knowledge of USB is sketchy since I rarely work with it on this level (I was working on some quirks for the Zoom R16 a while ago), but I note that bAlternateSetting is 1, which I think means that the device offers two specific ways of implementing interface no. 1. Actually, IIRC, alternate setting 0 normally means an interface which essentially is disabled, and it would certainly seem so here as the two first interface descriptors have 0 endpoints, whereas the one here has 4. My wild guess is that this interface 1 / altsetting 1 represents the actual device in normal operation, as has 4 endpoints ... > bInterfaceClass 255 Vendor Specific Class > bInterfaceSubClass 0 > bInterfaceProtocol 0 > iInterface 0 > > Endpoint Descriptor: > ... > bLength 9 > bDescriptorType 5 > bEndpointAddress 0x81 EP 1 IN > bmAttributes 5 > Transfer Type Isochronous > Synch Type Asynchronous > Usage Type Data > wMaxPacketSize 0x004e 1x 78 bytes > ... > Endpoint Descriptor: > ... > bDescriptorType 5 > bEndpointAddress 0x02 EP 2 OUT > bmAttributes 5 > Transfer Type Isochronous > Synch Type Asynchronous > Usage Type Data > wMaxPacketSize 0x004e 1x 78 bytes > ... > Endpoint Descriptor: > ... > bDescriptorType 5 > bEndpointAddress 0x83 EP 3 IN > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0009 1x 9 bytes > ... > Endpoint Descriptor: > ... > bDescriptorType 5 > bEndpointAddress 0x04 EP 4 OUT > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0200 1x 512 bytes > bInterval 4 > bRefresh 0 > bSynchAddress 0 ... the two first of which are the audio interface (which uses isochronous data transfers), and the other two are MIDI (bulk). I think (but could be wrong so don't take my word for it) it's a bit unusual that both MIDI and audio are represented by a single interface, but it certainly seems to be the case here. /Ricard -- Ricard Wolf Wanderlöf ricardw(at)axis.com Axis Communications AB, Lund, Sweden www.axis.com Phone +46 46 272 2016 Fax +46 46 13 61 30 ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2016-04-14 17:10 UTC | newest] Thread overview: 12+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-04-13 6:38 [alsa-devel] Tascam US-122L - Corrupt USB descriptor Simon Wood 2016-04-13 9:01 ` Clemens Ladisch 2016-04-13 14:08 ` Simon Wood 2016-04-13 14:08 ` [alsa-devel] " Simon Wood 2016-04-14 7:35 ` Clemens Ladisch 2016-04-14 7:35 ` [alsa-devel] " Clemens Ladisch 2016-04-14 16:20 ` Simon Wood 2016-04-14 16:20 ` [alsa-devel] " Simon Wood 2016-04-14 17:10 ` Clemens Ladisch 2016-04-14 17:10 ` [alsa-devel] " Clemens Ladisch 2016-04-13 9:01 ` Clemens Ladisch 2016-04-13 9:02 ` Ricard Wanderlof
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.