I am not using potentiometer like most video or print online. I am using bike grip/hall throttle, its range is 0.8V to 4.3V.

Instead of:

[0V = 000 ADC value] [5V = 255 ADC value]

I want:

[0.8V = 000 ADC value] [4.3V = 255 ADC value]

What ADC do I need ??? How do I wire???

NOTE: Before leaving comment...the video I reference below shows the author achieving 2V-3V (start video at 2:46). I want 0.8V to 4.3V. If you don't have people skills or can't answer my question...please don't leave comments... I am not as smart as some of you.

[ My research so far ]:

(1) How to use Differential Voltage Input ADC's

(2) What is a differential ADC?

  • Forum quote/Peter Gibson:

  • A differential ADC shifts the lower reference from 0V to some other value - either a user input - - - on a second analog input, or a internal reference. What is a differential ADC?

  • 5
    \$\begingroup\$ You are shouting. Why wouldn't you just use a 10 or 12 bit ADC and scale the reading digitally? \$\endgroup\$ Apr 8 '20 at 3:23
  • \$\begingroup\$ In a word, no. Because what you are asking for has nothing to do with a differential ADC, in concept or in hardware. I am quite sure you do not know what a differential ADC actually does. \$\endgroup\$
    – DKNguyen
    Apr 8 '20 at 3:29
  • \$\begingroup\$ Go with what Spehro Pefany said. Your signal is not differential. It sounds to me like some form of variable resistor. If your using a microcontroller with a builtin ADC, use that one with calibration. \$\endgroup\$
    – GB - AE7OO
    Apr 8 '20 at 4:09
  • 3
    \$\begingroup\$ STOP SHOUTING AT US. \$\endgroup\$
    – Solar Mike
    Apr 8 '20 at 4:15
  • 1
    \$\begingroup\$ @Huisman you can be excluded from whatever you want. \$\endgroup\$
    – Solar Mike
    Apr 8 '20 at 5:56

The easiest and most reasonable approach to reach the desired reading is to offset them by software.

On a 5V, 8-bit ADC, each value is 0.019V. So a reading of 0.8V would be "42". You can add this in software to subtract, for example if you are reading 0.8V, you would get 42 -42 = 0

A Single Ended ADC can measure a voltage on its input terminal between ground and Vref. For example: To measure a light sensors output, or a potentiometer output, a Single-Ended ADC is used.

A differential ADC is used to measure the difference between the terminals, for example: To measure current, usually a sense resistor is used and a differential ADC is connected to both resistor pins, to measure the voltage drop over the resistor.

For your application a standard single-ended OR Differential will work. If you use a differential one, just connect the negative input to ground.


If you were using an Arduino environment, the map() function would be very useful.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.