Analog in with multiple references, multiple Aref pins

I'm trying to read in voltages from 4 different sensors but each sensor does not share a common ground. Is there a way to set other pins as an A ref pin or do I just have to compare each of the 2 wires from the sensor to a reference voltage and then subtract the difference. If this is the case what happens when my analog input is at a lower voltage than my Aref pin, will a negative number be displayed?

Changing Aref will change the upper limit of the analog inputs. They will all be referenced to analog ground which, on the Arduino, is connected to Arduino ground. For example, with a 3V Aref you will get values from 0 (Ground) to 1023 (+3V). With a 4.5V Aref you will get readings from 0 (Ground) to 1023 (4.5V). You will not get a negative number. The voltage being measured should be less than Aref.

I have no idea how you would measure analog voltages with respect to a non-Ground signal. I'm sure someone can help with a clever circuit if you provide details.

Is there specific reason why you can't connect all sensor to common ground?
If it voltage potential difference, is it DC or AC and what is magnitude?

I'm trying to read in voltages from 4 different sensors but each sensor does not share a common ground.

Is there a electrical reason the four sensors cannot have their common grounds wired to the Arduino ground? As the analog input pins on a arduino are single ended it is a requirement that any external analog signal also have it's common wired to a arduino ground pin.


While I don't understand the sensors not sharing common ground, I do understand that there is a deeper problem that could be addressed here: what if the various sensors have different degrees of sensitivity? For example, what if sensor A returns signals on the order of 0-5mV, while sensor B returns 0-5V? Could there be a way to use multiple reference voltages, or do you need to call AnalogReference() before each new reading? I imagine doing so will drastically slow down and complicate your program, since you'd have to deal with rejecting the first several readings once the new reference is assigned.

Are you implying that the sensor(s) is providing differential output signal?
An easier way will be using an external ADC with integrated PGA to allow different sensor output voltage range to be amplified accordingly to fit into the common input range and maximize the resolution span.

Dear all,

I have multiple input IOs like dip switch 8 and other used by sensors . i wanna use all configuration without using pullup resistor network. Any technique to using it .