alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
* Roland OCTA-CAPTURE (0582:0120) - White Noise/Static on Playback
@ 2025-11-29 11:44 Niklas Aldervall
  2025-11-29 18:07 ` Lucas
  0 siblings, 1 reply; 2+ messages in thread
From: Niklas Aldervall @ 2025-11-29 11:44 UTC (permalink / raw)
  To: alsa-devel

[-- Attachment #1: Type: text/plain, Size: 4819 bytes --]

# ALSA Bug Report: Roland OCTA-CAPTURE (0582:0120) - White Noise/Static 
on Playback

## Summary
Roland OCTA-CAPTURE USB audio interface produces white noise/static 
instead of clean audio on Linux, despite being detected and initialized 
by snd_usb_audio driver.

## Device Information
- **Model**: Roland OCTA-CAPTURE (UA-1010)
- **USB ID**: 0582:0120
- **Manufacturer**: Roland Corporation
- **Device Class**: Vendor Specific (0xFF) - NOT USB Audio Class compliant
- **Serial**: ISRL4B236F81

## System Information
- **Kernel**: 6.17.9-2-cachyos
- **Distribution**: Arch Linux (CachyOS)
- **Audio Server**: PipeWire 1.2.7
- **ALSA Driver**: snd_usb_audio (built as module)

## Symptoms
1. Device is correctly detected and recognized by ALSA
2. ALSA shows proper capabilities: S32_LE, 10ch playback, 12ch capture, 
44100Hz
3. Audio streams can be sent to device without errors
4. **OUTPUT**: Only white noise/static is produced instead of clean audio
5. Issue occurs with both direct ALSA (speaker-test) and PipeWire
6. Issue persists across all available profiles (multichannel, pro-audio)

## Device Detection (lsusb)
```
Bus 001 Device 008: ID 0582:0120 Roland Corp. OCTA-CAPTURE
   bDeviceClass          255 Vendor Specific Class
   bDeviceSubClass         0
   bDeviceProtocol       255
   idVendor           0x0582 Roland Corp.
   idProduct          0x0120 OCTA-CAPTURE
```

## ALSA Stream Configuration
```
Roland OCTA-CAPTURE at usb-0000:00:14.0-3, high speed : USB Audio

Playback:
   Status: Stop
   Interface 0
     Altset 1
     Format: S32_LE
     Channels: 10
     Endpoint: 0x05 (5 OUT) (ASYNC)
     Rates: 44100
     Data packet interval: 125 us
     Bits: 0
     Sync Endpoint: 0x85 (5 IN)
     Sync EP Interface: 1
     Sync EP Altset: 1
     Implicit Feedback Mode: Yes

Capture:
   Status: Stop
   Interface 1
     Altset 1
     Format: S32_LE
     Channels: 12
     Endpoint: 0x85 (5 IN) (ASYNC)
     Rates: 44100
     Data packet interval: 125 us
     Bits: 0
     Sync Endpoint: 0x05 (5 OUT)
     Sync EP Interface: 0
     Sync EP Altset: 1
     Implicit Feedback Mode: Yes
```

## Hardware Configuration
- **Digital Input**: OFF (changed from AUTO - no effect)
- **Sample Rate**: 44.1kHz (hardware configured)
- **Output**: Connected to OUT 1/2 (analog)
- **Routing**: Factory reset performed - no effect

## Workarounds Attempted (All Failed)
1. **PipeWire profiles**: Tried pro-audio, multichannel-duplex
2. **Module parameters** (all individually and in combination):
    - `lowlatency=0` - Disable low-latency mode
    - `autoclock=0` - Force manual clock
    - `implicit_fb=0` - Disable implicit feedback
    - `device_setup=0,1` - Different device modes
    - `quirk_flags=0x8,0x20` - Various quirk flags
3. **Hardware configuration**:
    - DIGITAL = OFF (vs AUTO)
    - Factory reset via hardware buttons
4. **Different audio paths**:
    - Direct ALSA (hw:1,0)
    - PipeWire
    - All produce same static

## Test Command Used
```bash
speaker-test -D hw:1,0 -c 10 -t sine -f 440 -r 44100 -F S32_LE -l 3
```
**Result**: White noise/static instead of clean 440Hz tone

## Kernel Support Status
- Device added to implicit feedback skip list in kernel 5.11.9 (March 2021)
- Patch: `IMPLICIT_FB_SKIP_DEV(0x0582, 0x0120)`
- No additional patches found for kernels 6.x

## Related Devices
- Roland Quad-Capture (0582:0118) - Similar architecture, better Linux 
support
- Roland U-8 (older device) - Has third-party Linux tools (u8ctl)

## Known Issues from Community
- LinuxMusicians forum: "loud white noise sounds generated along with audio"
- Multiple users report same symptom since 2013
- No documented solution exists

## Hypothesis
The OCTA-CAPTURE uses Roland's proprietary USB protocol (vendor-specific 
class 0xFF).
The device likely requires:
1. Proprietary initialization sequence not performed by generic 
snd_usb_audio
2. SysEx MIDI configuration for internal DSP/routing/clock
3. Vendor-specific control messages for proper operation

Without Roland's cooperation or reverse engineering of Windows driver, 
proper support may be impossible.

## Request
1. Is there additional debugging we can enable to trace USB communication?
2. Could vendor-specific initialization be missing?
3. Would Roland device reverse engineering resources help?
4. Should this device be blacklisted if it cannot work properly?

## Additional Resources
- Device manual: 
https://static.roland.com/assets/media/pdf/OCTA-CAPTURE_v1.6_OM.pdf
- Kernel patch (2021): 
https://patchwork.kernel.org/project/alsa-devel/patch/CAOsVg8psuOkQRoccDs7AZzUO=4ffOm=XfXoY_G0iTqRXHtqu4A@mail.gmail.com/
- LinuxMusicians thread: https://linuxmusicians.com/viewtopic.php?t=17423

## Contact

Best Regards
Niklas Aldervall

[-- Attachment #2: octa-capture-debug-data.tar.gz --]
[-- Type: application/gzip, Size: 3918 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-11-29 18:08 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-11-29 11:44 Roland OCTA-CAPTURE (0582:0120) - White Noise/Static on Playback Niklas Aldervall
2025-11-29 18:07 ` Lucas

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).