[alsa-devel] Scarlett 18i8 hardware out of sync with AlsaMixer

Robin Gareus robin at gareus.org
Sun Jun 14 01:03:42 CEST 2015


On 06/10/2015 06:24 AM, Adam Goode wrote:
[..]
> My guess is that the ALSA mixer settings are cached too soon, before
> the device itself internally overwrites the settings from NVRAM. We
> are either missing some invalidation event from the device itself, or
> we don't do the right thing during initialization.

I didn't follow the whole discussion, so please excuse me if this was
mentioned before:

I'm pretty sure that the NVRAM is restored on the Scarlet before the
device shows up on USB: Save a config with Hi-Z on but configuring it as
off in software. When connecting & re-powering the device, the indicator
LED will blink on and then go off.


It is not possible to read the full state from the device itself.
Trying to read the value from the device results in garbage for the most
part. The values must be set by ALSA and ALSA must remember the state.
That worked in the original alsa mixer even across suspend/resume for
the 18i6. Either something was changed or has been lost since.

This is also how the OSX and Windows drivers work for the Scarlett
series. As soon as the device is [re]connected, software pushes the last
known state (on that given machine) to the device. (At least it was that
way ~2 years ago when I reverse engineered it).

BTW the prop. driver saves state to the NVRAM quite often. I don't know
if this is a marketing trick (intentionally wear it out quickly) or if
it's OK to do that.


best,
robin


More information about the Alsa-devel mailing list