2 NOV, 2022

A masterclass in bad HCI

I got a new motherboard, and I decided to try running all my audio from the onboard controller. Previously I've used the audio output on my monitor for my speakers, the front panel for my headphones, and a USB interface for my microphone. Now I want to use the rear panel for my speakers, and the front panel for my headphones (with built-in mic).

The desire

I want it to automatically switch from speakers to headphones when I plug them in. Simple, right? Oh and the speakers should be at 100%, as they have their own volume control, but the headphones should be ~12% because I like my ears to continue to work.

The awfulness

The audio controller comes with a "Realtek Audio Console" application to configure behaviour and settings. Whilst more user-friendly than the Control Panel applets, it has glaring issues of its own.

The main page (and device settings) are... fine. They work, they're 'modern,' whatever. Let's look at the configuration bit though - "Device advanced settings." Oof, we're already off to a poor start, proper English would have that as "Advanced device settings."

The first thing to recognise is that all of these settings are arbitrarily interlinked, whilst they are still individually controllable. This is terrible usabilty already.

Obviously, the first thing I do is toggle the "Disable front panel popup dialog" because I don't want anything to popup when I use my stuff normally - it should know what I want, I use it every day, for goodness' sake! (Enable a toggle to disable a thing - ugh). Next up, I do want it to do things when I plug / unplug my headphones, so I'll enable the "Enable Jack detection when device is plugged in" toggle. Sensible so far, right?

We'll ignore the "Connector retasking", it's neat but not relevant to this simple setup.

Now for "Playback Device." If we choose to mute the rear panel when the front panel is plugged in (that's what the backwards terminology means), then everything should work just fine, right? Oh no. No, instead you'll get your ears blasted, then strain to hear, and end up playing with the volume all the time. Yes, it switches exactly as it should, but it presents to Windows as a single audio output, with a single volume. Instead, you do want it to be separate, as it then presents to Windows as two separate outputs, so that you can choose the front panel to be default with it's own volume, and it registers plug / unplug events and passes them on to Windows as connect / disconnect. All is well!

But what about the other toggles from the start?

Ah yes, turn them all off, they make it worse.

Firstly, enabling jack detection should be a part of the connector retasking section, as that's what it triggers. You'll get a notification asking what you've just plugged in, every time. Secondly, the toggle to disable the popup only applies when jack detection is on, as that's the only situation where it'll ask you stuff, so you can preset it once... or:

Leave them both off and get the same behaviour.

So one of them turns a feature on, and the other turns it off. Incredible.

And they're both in the wrong section, dependent on other things, and very poorly described.

The solution

TBD, I'll put up an image soon.