Read negative or positive voltage from the same pin


I am new to Arduino without any experience in Electronics. I need to read analog data (voltage) from a specific device to the Arduino. The special device analog output is between -1.5v (neg) and +3.5v (pos). I don't have a clue how I can read this kind of analog data to the Arduino.

Maybe anyone can help me ?


You can not connect this directly to the arduino. You need to apply a DC voltage shift. The circuit do do this depends on the output impedance and nature of the signal you want to measure. So post a link to the data sheet of this device for more help.

The simplest approach is to use two resistors. Connect a resistor between the device output and the Arduino analog input (call this resistor R1), and another resistor between the analog input pin and +5V (call this R2). Then the voltage Va at the pin is related to the voltage Vo from the device like this:

(5 - Va)/R2 = (Va - Vo)/R1

which gives:

Va = (5*R1 + Vo*R2)/(R1 + R2)

If you choose e.g. R1 = 10K, R2 = 22K then you will find that this maps your -2V to +4V output to a voltage range that can be measured by the Arduino.

[EDIT: after I composed this, you edited your original post, changing the voltage range that you want to measure. So you may want to change R2 to better suit that voltage range.]