Hi all,
Progress Update!
We're making headway! There's an interesting mix of expected "challenges" and delightful "surprises" .
Reading Interface Controls: Gen 4 controls that were present in Gen 3 (line/inst, air, and phantom power) are now visible in alsamixer and alsa-scarlett-gui. When adjustments are made from the front panel, they reflect as expected. This is working for Solo, 2i2, and 4i4 models.
Writing Interface Controls: For the 4i4 Gen 4, controls that were present in Gen 3 can now be manipulated directly from ALSA and the GUI. It's a significant step, affirming that what I'm trying to do is possible (whew!).
An Intriguing Discovery: I found a peculiar inconsistency... based on the routing diagram from my initial post, the expectation was 12×8 mixer-matrix gain controls. However, the values of the two right-most columns and two bottom-most rows seemed off:
- mixer-weird.png (187.95 KiB) Viewed 84955 times
This enigma took quite some unraveling, but after extensive testing and thinking, the revelation was that mixer inputs 11/12 are hardwired to mixer outputs G/H. So, it's actually 10×6 gain controls. Obvious in hindsight!
It turns out that the mixer inputs 11/12 are used to display the audio levels on the front panel. If you connect e.g. PCM 1/2 to mixer inputs 11/12 then the two input level meters turn into stereo playback meters. The auto-gain function also uses the volume seen at those mixer inputs to do its thing, so if you disconnect them then auto-gain sets the gain based on the wrong volume.
Safety First: One thing that makes this take longer is I'm trying to be careful and not inadvertently brick anything, since I've only got one of each device. I've found that if you change the routing in an incompatible way then you lose options in Focusrite Control 2, with no way to put it back from there (Focusrite Control for the Gen 2/3 would just put things back for you if you change them in Linux, and it had a factory-reset option as well). Fingers crossed as I poke more at the devices and experiment with the new controls.
Edit: don't need this now: If anyone has a Gen 4 Solo or a Gen 4 2i2, please let me know. That'd be really helpful in figuring out some things with less risk . [Thanks to help from Focusrite I can switch between firmware versions arbitrarily now so I can figure these things out myself]
Anyway, back to coding... there's lots to do still. Hope you're finding this interesting! Appreciate all your support.
Regards,
Geoffrey.