alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
From: Niklas Aldervall <niklas@aldervall.se>
To: alsa-devel@alsa-project.org
Subject: Roland OCTA-CAPTURE (0582:0120) - White Noise/Static on Playback
Date: Sat, 29 Nov 2025 12:44:31 +0100	[thread overview]
Message-ID: <6b623cb6-3a9b-4fe4-a57c-9a165d261692@aldervall.se> (raw)

[-- 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 --]

             reply	other threads:[~2025-11-29 11:47 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-29 11:44 Niklas Aldervall [this message]
2025-11-29 18:07 ` Roland OCTA-CAPTURE (0582:0120) - White Noise/Static on Playback Lucas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6b623cb6-3a9b-4fe4-a57c-9a165d261692@aldervall.se \
    --to=niklas@aldervall.se \
    --cc=alsa-devel@alsa-project.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).