Re: snd-firewire-ctl-services: Digidesign Digi-002R - missing control for 'Optical mode'

Takashi Sakamoto <[email protected]>
Newsgroups org.alsa-project.alsa-devel
Message-ID <[email protected]>
Hi,

On Tue, May 12, 2026 at 03:08:18PM -0400, [email protected] wrote:
> On 2026-05-11 22:19, Takashi Sakamoto wrote:
> 
> > Yes. The service program provides no ALSA control element set
> > for this purpose, because Digi 002 differs from Digi 003 in how it
> > selects the source of S/PDIF signals for audio data in IEEE 1394
> > isochronous packets sent to the host system.
> > 
> 
> I experimented some more, and was able to muddle through the Rust code to
> 'move' the control (from 003 protocol) to act on the 002. This showed that
> the 002R does actually support this function.
> 
> I found a couple of things:
> 1). Parameter is not saved unless the Jack server is stopped before making
> the change. I think that this is expected.
> --
> simon@EliteBook:~/snd-firewire-ctl-services.github$ amixer -c 2 cset numid=8
> 'S/PDIF'
> numid=8,iface=MIXER,name='optical-interface'
>   ; type=ENUMERATED,access=rw------,values=1,items=2
>   ; Item #0 'ADAT'
>   ; Item #1 'S/PDIF'
>   : values=1
> simon@EliteBook:~/snd-firewire-ctl-services.github$ amixer -c 2 cget numid=8
> numid=8,iface=MIXER,name='optical-interface'
>   ; type=ENUMERATED,access=rw------,values=1,items=2
>   ; Item #0 'ADAT'
>   ; Item #1 'S/PDIF'
>   : values=1
> --

It is likely that the mode change is just activated when the host system
stops packet streaming. Then these devices shift to 'standby mode', and
you can see the transition in the status indicator if using any console
models.

> 2). With 'loop backs' on the RCA and Optical ports I got all channels in
> 'normal/ADAT' mode, but in the 'S/PDIF' mode the path was re-assigned. I got
> nothing through channels 11..18 (normally ADAT/optical), instead only
> channels 9..10 passed audio - HOWEVER these are going over the optical fibre
> (not co-ax cable), unplug the fibre and this loop-back stops.
> 
> So in summary I think the existing code can be re-jigged to cover both 002
> and 003.
> Simon.

I filed A MR for the required changes. Please test with it:

digi00x: support optical interface mode operation for digi 002 as well as digi 003#214
https://github.com/alsa-project/snd-firewire-ctl-services/pull/214


Thanks

Takashi Sakamoto
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.