amixer volume control

IMO - if at 30% there is no sound, then the chain has bad gain structure. IMO in software it could be fixed by lower and upper limit mapping the UI values to real log values. E.g. 0%@UI = 20%@real, 100%@UI = 100%@real. Or the other way round if the gain is too high and end stage starts clipping at 50% volume. Certainly many other ways too 🙂
 
Here are my measurements on a regular Raspbian OS.

alsa-volume.jpg


It could be also a possible UI for Volume configuration. So that moving those edges you could select the working area for volume.