Non-linearity in linear taper pot

I’m testing an 11-detent 10k linear taper pot (TT Electronics P160KNP-2FD15B10K, 1/10W 20%) that I hope to use in a music sequencer/synthesizer. When I measured resistance at each position (see attached image), I noticed a severe non-linearity at the beginning and the end of the pot’s range - the change in resistance is a factor of 6 or 7 less than the other intervals.

I haven’t written code for this yet, but am concerned that in the first two and last two positions, it will be difficult to distinguish the position (besides the code being messy). Is there anything I can do about this?

That likely relates to the 20% in the spec for the pot.


The flattening at the ends is the wiper moving over the terminations at each end of the track.
A portion of the ends is used for connection area for the terminals.

If you look you have more than 10K total resistance.
As you have these pots, then do a Proof Of Concept to see if the end effects are going to produce a significant problem.

If you are just using it as a potential divider then actual total value does not have to be exaxctly 10K.

Tom… :slight_smile:

Is there anything I can do about this?

  1. Ignore (cut off) the wiper hop-on/off regions of the pot, by using the map() and/or constrain() functions.
  2. Use multimap() to straighten out every single pot.

11-detent 10k linear taper pot

If you want 11 discrete positions, perhaps you really want a digital solution such as a rotary encoder or rotary switch?

I'd second this - choose either a discrete control or an infinitely variable analog one - for the former
a rotary encoder or stepped attenuator would be appropriate, for the latter a detent-less pot.

Trying to make an analog control discrete isn't the logical approach these days. A while back
rotary encoders were rare, these days they are everywhere. There are a few absolute rotary
encoders available too if you need to retain values between power downs, although EEPROM can
do that.