Bug 206055 - Roland R-26 audiointerface stucks
Summary: Roland R-26 audiointerface stucks
Status: NEW
Alias: None
Product: Drivers
Classification: Unclassified
Component: Sound(ALSA) (show other bugs)
Hardware: x86-64 Linux
: P1 normal
Assignee: Jaroslav Kysela
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-01-01 21:32 UTC by Ilya
Modified: 2020-05-04 21:13 UTC (History)
1 user (show)

See Also:
Kernel Version: 5.4.0
Subsystem:
Regression: No
Bisected commit-id:


Attachments
Output of alsa-info.sh (74.34 KB, text/plain)
2020-01-06 22:24 UTC, Ilya
Details
Output of lsusb -v (46.38 KB, text/plain)
2020-01-06 22:25 UTC, Ilya
Details
workaround, disable roland-specific implicit feedback stuff. (682 bytes, patch)
2020-04-16 17:11 UTC, Ilya
Details | Diff
test record (1.55 MB, audio/x-wav)
2020-04-16 17:13 UTC, Ilya
Details

Description Ilya 2020-01-01 21:32:57 UTC
System: Linux Mint based on Ubuntu 16.04.1, Thinkpad T470s,
kernel: 4.15.0-72-generic

1) Connect the sound recorder Roland R-26 to USB
2) on a recorder select A/F mode
3) interface is detected, but no controls in alsamixer, neither possibility to record/play something.

dmesg:

[172889.280331] usb 1-4: new high-speed USB device number 35 using xhci_hcd
[172889.431111] usb 1-4: New USB device found, idVendor=0582, idProduct=013e
[172889.431117] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[172889.431121] usb 1-4: Product: R-26(AUDIO)
[172889.431123] usb 1-4: Manufacturer: Roland
[172890.016751] usbcore: registered new interface driver snd-usb-audio
[172890.067439] usb 1-4: Unable to change format on ep #8e: already in use
[172890.067512] usb 1-4: Unable to change format on ep #8e: already in use
[172890.067572] usb 1-4: Unable to change format on ep #8e: already in use
[172890.067867] usb 1-4: Unable to change format on ep #8e: already in use
[172890.068205] usb 1-4: Unable to change format on ep #8e: already in use
Comment 1 Takashi Iwai 2020-01-02 10:17:23 UTC
The kernel is way too old, but I guess the problem should be still there.

The device might have no mixer control at all; this isn't unusual.  Please give alsa-info.sh output and the output of lsusb -v for checking that.

About the playback and the record: it looks like your device is with the implicit fb, and it has the restriction in hardware level.  When you operate in a full-duplex mode, you may need to set up the capture stream at first, then the playback stream with the very exact parameter.

Please check aplay and arecord without PulseAudio or jack and see whether it still doesn't work.

But, as already mentioned, you're using the very old kernel, so please update the kernel to the latest version (5.4.y or later) at first.
Comment 2 Ilya 2020-01-06 22:24:34 UTC
Created attachment 286657 [details]
Output of alsa-info.sh
Comment 3 Ilya 2020-01-06 22:25:22 UTC
Created attachment 286659 [details]
Output of lsusb -v
Comment 4 Ilya 2020-01-06 22:25:39 UTC
I would be happy with a non duplex mode. Anyway, this is what I get:

dikiy@rosh:~$ arecord --device=hw:1,0 -f S32_LE -r 44100 -c2 test.wav
Recording WAVE 'test.wav' : Signed 32 bit Little Endian, Rate 44100 Hz, Stereo
arecord: pcm_read:2032: read error: Input/output error
dikiy@rosh:~$ 

If I set other parameters, for example S16_LE I, get following:

Recording WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
arecord: set_params:1233: Sample format non available
Available formats:
- S32_LE
Comment 5 Ilya 2020-01-06 22:27:21 UTC
unfortunately I cannot test the newest kernel now. However, this problem exists since I own the device, it means, since 5-6 years.
Comment 6 Ilya 2020-01-09 12:30:37 UTC
Just tried to install a newer kernel on my Mint, seems to work. I will test  a device today with a kernel  v5.4 (219d54332a09e8d8741c1e1982f5eae56099de85)
Comment 7 Ilya 2020-03-27 19:29:34 UTC
So, sorry for a long delay. I had not access to a device. I tried it with a kernel above, and it results in a same problem.
Comment 8 Ilya 2020-03-27 19:30:48 UTC
I tried it with jack, to test test duplex mode -- the devece stucks. The same with arecord, o aplay (without duplex)
Comment 9 Ilya 2020-04-04 10:42:39 UTC
Hey guys! What can I do to bring this device to work as an audiointerface?
Any suggestions? Code disassebling, etc.?

Ok, I'm not a pro, but could try something, if I knowed where to start...
Comment 10 Ilya 2020-04-04 11:34:29 UTC
I tried something, and got something new: setting recording like

arecord --device=hw:1,0 -f S32_LE -r 44100 -c2 test.wav

and then in other terminal window

aplay --device=hw:1,0 -f S32_LE -c2 -r44100 /dev/urandom

O got following:

Playing raw data '/dev/urandom' : Signed 32 bit Little Endian, Rate 44100 Hz, Stereo
aplay: set_params:1297: Unable to install hw params:
ACCESS:  RW_INTERLEAVED
FORMAT:  S32_LE
SUBFORMAT:  STD
SAMPLE_BITS: 32
FRAME_BITS: 64
CHANNELS: 2
RATE: 44100
PERIOD_TIME: (125011 125012)
PERIOD_SIZE: 5513
PERIOD_BYTES: 44104
PERIODS: (3 4)
BUFFER_TIME: 500000
BUFFER_SIZE: 22050
BUFFER_BYTES: 176400
TICK_TIME: 0
Comment 11 Ilya 2020-04-04 16:51:57 UTC
the EP seems to be detected properly 0x8e. But in the systemlog I got following

usb 1-2: Unable to change format on ep #8e: already in use
Comment 12 Ilya 2020-04-14 16:57:11 UTC
Are there some possibility to make it work? Or its better to get other device?
Comment 13 Ilya 2020-04-16 17:10:51 UTC
Temporary workaround found (thanks to L29Ah on linux@c.j.r), see submitted patch.

The problems still appears:

1) only jackd works good. arecord alone stucks, btw aplay still working.
2) the rate set by a recording program must be exactly as the rate set on the device (I tried with 96000). If the rates are different, 0 bytes appears in a recording (see test.wav)
Comment 14 Ilya 2020-04-16 17:11:48 UTC
Created attachment 288525 [details]
workaround, disable roland-specific implicit feedback stuff.
Comment 15 Ilya 2020-04-16 17:13:54 UTC
Created attachment 288527 [details]
test record

record, when the rate on device set to 96000, but the rate of recording is 44100
Comment 16 Ilya 2020-04-27 21:25:36 UTC
Anybody?....
Comment 17 Takashi Iwai 2020-04-28 07:11:12 UTC
It's a generic problem of implicit fb, and the workaround can't be taken as it's obviously no right solution, unfortunately.  You can try a test patch below, too:
  https://bugzilla.kernel.org/show_bug.cgi?id=207023#c9
Comment 18 Ilya 2020-04-28 14:04:56 UTC
Thanks! I will try it now!
Comment 19 Ilya 2020-04-28 14:11:14 UTC
And how I need to test it? With jackd? Or it is supposed to work with arecord too?
Comment 20 Ilya 2020-04-28 14:37:56 UTC
(In reply to Takashi Iwai from comment #17)
> It's a generic problem of implicit fb, and the workaround can't be taken as
> it's obviously no right solution, unfortunately.  You can try a test patch
> below, too:
>   https://bugzilla.kernel.org/show_bug.cgi?id=207023#c9

Just tested the proposed patch. It didn't help. The interface stucks anyway. With jackd, or with arecord/aplay.
Comment 21 Ilya 2020-05-04 21:13:41 UTC
(In reply to Takashi Iwai from comment #17)
> It's a generic problem of implicit fb, and the workaround can't be taken as
> it's obviously no right solution, unfortunately.  You can try a test patch
> below, too:
>   https://bugzilla.kernel.org/show_bug.cgi?id=207023#c9

But at least it works. Many people out there have this device and would be glad to get it work, even if not perfectly... Its better then nothing

Note You need to log in before you can comment on or make changes to this bug.