hi lefty,
the two are decoupled, so that you can control either one. the way the user talks to the vol-control engine (or subsystem) should be different from the actual way the analog signal is attenuated.
on the motor pot side, its a linear track. simple obvious voltage divider going into an arduino a/d pin. cap across signal and gnd to kill noise and settle some of the 'wander' that pot-driven inputs sometimes have. in this config, no audio goes thru or even near this pot, its simply a control device.
I considered, for a short while, using log-tape motor pots and de-logging them (lol) in software. I found the curves to not be very nice, in the real world, and so delogging would not be all that practical. perhaps a painstakenly done data point lookup table to map the current pot you have.
but then you run into other issues; at one end, its very 'wide' and at the other, very compressed. you can't get resolution to 'unlog' stuff like that with a cheap a/d that we have on the arduino. it becomes impractical to delog (grin) things unless you have a lot of bits of precision. so I gave up and just decided to limit the design to the assumption of a linear track motor pot. digikey/mouser has alps brand for $15 or so, so its realistic to spec for that kind of thing.
as for the engine itself, it has no taper. its 0db down to -127.5db in half db steps. or, if you prefer, you run our cheap-n-dirty CGI web gui and pick your own!
http://www.amb.org/audio/delta1/r2r.cgi
pick the top 3 parameters and it will compute the rest. order the parts, solder onto the blank boards and that takes care of the vol engine (2 channel attenuator).
if you are on a budget, don't use all 8 relays. for a while, I was doing proto builds with 7 bits and that would give me 0-127db but in 1db steps. saved me the cost of a $5 relay (lol) but it also is a little faster and less noisy (chattery) since only 7 relays (max) would have to change, and not 8.
there is no 'taper'. if you want a value, you send that value and the complement of it to the 2 adjacent PE chips and they pulse the relays to get the dB value you wanted. that's the scheme.