I have a circuit with a 10k linear potentiometer that's used with the wiper resting at the central position. This is for a controller, and provides movement is either direction.
The problem is the first bit of stick travel away from center is too sensitive. The last half of stick travel in either direction is not sensitive. In fact, 75% stick travel left or right seems to be near 100% reading by the controller. The circuit that processes the exponential curve can't be reprogrammed.
I'm trying to find out if adding resistors in series with the ends of the tracks, or on the center wiper pin, or decreasing the resistance to either end of the track with resistors to the center wiper pin, or this plus a resistor on the center wiper pin would be a possible way to reduce this sensitivity without reducing the max reading?
The problem is the first bit of stick travel away from center is too sensitive. The last half of stick travel in either direction is not sensitive. In fact, 75% stick travel left or right seems to be near 100% reading by the controller. The circuit that processes the exponential curve can't be reprogrammed.
I'm trying to find out if adding resistors in series with the ends of the tracks, or on the center wiper pin, or decreasing the resistance to either end of the track with resistors to the center wiper pin, or this plus a resistor on the center wiper pin would be a possible way to reduce this sensitivity without reducing the max reading?
Attachments
Last edited:
Post details of the actual potentiometer.
Post details of where it is used.
Measure the resistance values at different stick positions - your measurements may show that the pot resistance matches the effects.
Post details of where it is used.
Measure the resistance values at different stick positions - your measurements may show that the pot resistance matches the effects.
Wireless Xbox 360 controller with a Microsoft X810462-003 chipset.
The original Alps Alpine thumbstick sensor w/ 10k pots have no identification. Testing the pots revealed they were log or semi-log.
The replacement analog sensor on hand is the Polyshine FJP10K-S1, which uses 10k linear pots. This is a common replacement that is well constructed.
http://www.polyshine.cn/ProductDetail-217.html
I connected a 12k resistor to the common return (pin 1) to center (pin 2) and it behaved very smooth like the original log Alps pots. The problem was the ADC saw it as if the stick was off centered in that arrangement.
The original Alps Alpine thumbstick sensor w/ 10k pots have no identification. Testing the pots revealed they were log or semi-log.
The replacement analog sensor on hand is the Polyshine FJP10K-S1, which uses 10k linear pots. This is a common replacement that is well constructed.
http://www.polyshine.cn/ProductDetail-217.html
I connected a 12k resistor to the common return (pin 1) to center (pin 2) and it behaved very smooth like the original log Alps pots. The problem was the ADC saw it as if the stick was off centered in that arrangement.
Attachments
Yes, exactly.
The upper left configuration in your first post depicted resistors in series with each end of the pot. My rationale/guess-work is that the exiting resistors drop the voltage across the element. Shunting the the element would further reduce the voltage span across the pot. I should have asked--- what are the values of these resistors relative to the pot's 10K value?
The upper left configuration in your first post depicted resistors in series with each end of the pot. My rationale/guess-work is that the exiting resistors drop the voltage across the element. Shunting the the element would further reduce the voltage span across the pot. I should have asked--- what are the values of these resistors relative to the pot's 10K value?
^I haven't tried that one yet. The configurations in my first post were more or less just ideas without prescribed values. It's been trial and error for certain.
A lone resistor connected across pin 1 and 3 reduce the maximum range seen by the ADC. This does expand the center, but limited the max speed at full stick deflection.
I tried a w-curve using an 8k to 18k resistor from pin 1 to 2 and a second same resistor from pin 2 to 3. The lower the resistor value, the more pronounced the curve was. In any case, the feel of the stick movement was poor. So, it didn't give a smooth log feel.
If only there was a way to use a shunt resistor from pin 1 to 2 (to get a log curve) and at the same time make the circuit think it was still centered without sacrificing too much max range, that would be perfect.
A lone resistor connected across pin 1 and 3 reduce the maximum range seen by the ADC. This does expand the center, but limited the max speed at full stick deflection.
I tried a w-curve using an 8k to 18k resistor from pin 1 to 2 and a second same resistor from pin 2 to 3. The lower the resistor value, the more pronounced the curve was. In any case, the feel of the stick movement was poor. So, it didn't give a smooth log feel.
If only there was a way to use a shunt resistor from pin 1 to 2 (to get a log curve) and at the same time make the circuit think it was still centered without sacrificing too much max range, that would be perfect.
Last edited:
Again, I'm guessing at your overall circuit, but my guess is that pot is tied between ground and controller B+. If that is the case, it seems like your approach of attaching equal-value resistors between wiper to ground and wiper to B+ should give you that "log" feel, centered at mid-rotation. Of course you are limited by dissipation of the pot and supply loading, so be cautious about how much you reduce the load resistors.
Again assuming pot between ground and B+, note that pot has maximum source resistance of 2.5K at mid rotation, so that loading resistors have to become relatively small to exhibit the log loading you desire. If this approach seems promising, perhaps you need to get 100K pot, rather than 10K, to keep loading resistors reasonable.
Yeah, I'm using the term "logarithmic" quite loosely.
It's been difficult to alternatives. There's no model number on them and I'm not sure what they would be called other than trimmer or sensor pots. Polyshine states they make the modules in 20k as well as 10k, but I never found any. Alps discontinued them. The rectangular plastic body measures 11mm high, 9mm wide and 3mm deep. The shaft entry is 0.8 x 2mm.
I'm going to try a 1.5-1.7k series resistor on pin 1 to see if that centers the stick. I suspect it will limit the max speed a bit in one or both directions, it may even undo the curve, but we'll see.
It's been difficult to alternatives. There's no model number on them and I'm not sure what they would be called other than trimmer or sensor pots. Polyshine states they make the modules in 20k as well as 10k, but I never found any. Alps discontinued them. The rectangular plastic body measures 11mm high, 9mm wide and 3mm deep. The shaft entry is 0.8 x 2mm.
I'm going to try a 1.5-1.7k series resistor on pin 1 to see if that centers the stick. I suspect it will limit the max speed a bit in one or both directions, it may even undo the curve, but we'll see.
Attachments
You didn't indicate how the pot was connected, but I've guessed as below and have suggested 1K load resistors. Max wiper current would be 5mA, and rotational sensitivity would be reduced to about 1/6 re without the loading resistors. Not sure if guess of pot connection is correct or if this is what you're wanting...
Attachments
I tried that method and I just couldn't get it right. Your earlier diagram gave me the idea of using a resistor on pin 1 as in my last diagram, and using that centered it right up.
A small amount of speed at full stick travel is sacrificed, but the feel of the stick is predictable and approaching that of the original. I'll work towards getting it correct and post values when I'm done.
A small amount of speed at full stick travel is sacrificed, but the feel of the stick is predictable and approaching that of the original. I'll work towards getting it correct and post values when I'm done.
Do you have an original pot to measure at different stick positions?
If so, write the values in an excel column.
Then calculate different positions for a linear pot loaded with various resistors in various positions as per your experiments.
Entering as formulae allows you to easily try different values to home in on the optimum values.
If so, write the values in an excel column.
Then calculate different positions for a linear pot loaded with various resistors in various positions as per your experiments.
Entering as formulae allows you to easily try different values to home in on the optimum values.
I do. I was able to plot the resistance of one half turn using 5 degree increments. The left-hand side of the graph (0 degrees) is the thumbstick at dead center.
The original Alps was made for 30 degrees of travel, and the analog thumb stick modules were mechanically limited at this exact point. The first 5 and 10 degrees is more gradual.
The Polyshines and others have reached the end of their tracks before 25 degrees. This corresponds with the newer gaming consoles using sticks limited to 23 degrees. They appear to be truly linear.
The original Alps was made for 30 degrees of travel, and the analog thumb stick modules were mechanically limited at this exact point. The first 5 and 10 degrees is more gradual.
The Polyshines and others have reached the end of their tracks before 25 degrees. This corresponds with the newer gaming consoles using sticks limited to 23 degrees. They appear to be truly linear.

Last edited:
Notice the 0 degree point of each pot was higher than pot's total value. The wiper contact points contribute quite a bit.
There's a couple degrees of "dead zone" programmed into the controller to allow it to ignore mechanical/electrical imperfections that would otherwise register as unwanted movement. The ADC doesn't have feedback to calibrate for a radical change in resistance. 9k-10k are within range and result in a barely noticeable dead zone, but the shunt resistors will reduce the overall resistance and expand the dead zone and end points. A Log/expo curve also expands the dead zone.
That complicates things slightly. The resistor arrangement will have to take into account the dead zone, a smooth semi-log curve for aiming, and take into account the pot's end point. Graphing it out is going to make it easier.
There's a couple degrees of "dead zone" programmed into the controller to allow it to ignore mechanical/electrical imperfections that would otherwise register as unwanted movement. The ADC doesn't have feedback to calibrate for a radical change in resistance. 9k-10k are within range and result in a barely noticeable dead zone, but the shunt resistors will reduce the overall resistance and expand the dead zone and end points. A Log/expo curve also expands the dead zone.
That complicates things slightly. The resistor arrangement will have to take into account the dead zone, a smooth semi-log curve for aiming, and take into account the pot's end point. Graphing it out is going to make it easier.
Looks virtually linear to me.
If circuit is putting 0V at one end, 5V at t'other end & reading an analogue voltage from the wiper then end to end resistance is irrelevant.
Fit a longer knob to increase movement.
Fit a 470Ohm resistor to each end to increase resistance at full travel to closer to the Alps value.
If circuit is putting 0V at one end, 5V at t'other end & reading an analogue voltage from the wiper then end to end resistance is irrelevant.
Fit a longer knob to increase movement.
Fit a 470Ohm resistor to each end to increase resistance at full travel to closer to the Alps value.
It does. If I could increase the precision of my graphing technique it would show a small but important flattening from 0 to about 5 deg. I put the original pots in the wireless Xbox 360 controller and they do feel different for precise aiming.
With the replacement pots, I tried as in Post #12 to create a virtual log pot, and 12k-13.5k was about right, but the expo was off center. Moving the stick in one direction resulted in good expo, but moving it in the other direction had noticeably more linear behavior.
A different method was tried and seemed to work better. I had to use the arrangement pictured here, with 3x3mm mini pots used as variable resistors. The 50k pots on pins 1-2 and 2-3 set the expo as an S-curve like before and fine tuned the center position. The high values facilitate finding a suitable range, which wasn't easy, as the S-curve was different than the C-shaped expo curve of a single resistor. 27-30k Ohms each was a good compromise. The 2k mini pot on the center pin, pin 2 leading to the circuit board, set the sensitivity without noticeably expanding the deadzone at center, and seemed to be what was needed.
With the replacement pots, I tried as in Post #12 to create a virtual log pot, and 12k-13.5k was about right, but the expo was off center. Moving the stick in one direction resulted in good expo, but moving it in the other direction had noticeably more linear behavior.
A different method was tried and seemed to work better. I had to use the arrangement pictured here, with 3x3mm mini pots used as variable resistors. The 50k pots on pins 1-2 and 2-3 set the expo as an S-curve like before and fine tuned the center position. The high values facilitate finding a suitable range, which wasn't easy, as the S-curve was different than the C-shaped expo curve of a single resistor. 27-30k Ohms each was a good compromise. The 2k mini pot on the center pin, pin 2 leading to the circuit board, set the sensitivity without noticeably expanding the deadzone at center, and seemed to be what was needed.
Attachments
I recently came up with expo for a linear pot, I simulated in the free LTSpice to see what different values would give.
All info here, including the LTSpice file you can try for yourself.
https://hackaday.io/project/201699-add-expo-or-arcpoint-to-linear-rc-car-steering-pot
All info here, including the LTSpice file you can try for yourself.
https://hackaday.io/project/201699-add-expo-or-arcpoint-to-linear-rc-car-steering-pot
- Home
- Design & Build
- Parts
- Decreasing Sensitivity of Potentiometer-Based Sensor