Post Go back to editing

Half gain measured versus configured on signal

Category: Datasheet/Specs
Product Number: AD7190

Hi,

We are using the AD7190 in single-ended mode, bipolar, with AINCOM at 2.5V

We have an unexplained ratio of /2 (half) in our results after amplification.

Example of the issue

We have the AD7190 configured bipolar with a gain of 8


Measured voltage at AIN is 2.584V
With a common voltage AINCOM of 2.5V (so 0.084V AIN input voltage after common voltage removal)

Measured voltage by ADC after PGA gain is 2.839V

So very clearly a x4 gain applied on the 84mV input signal. (0.339V = 4 * 0.084)

What are we doing wrong ? Why would our gain be half of what we expect ?




Pins of the AD7190

REFin- = 0V
REFin+ = 5V
AVdd = 5V
Dvdd = 3.3V

AINCOM = 2.5V

We understood REFin+ and REFin- to be the full range of the ADC possible reading range, so that's why we put it at 5V

Here is our register configuration for a gain of 8, bipolar

// FullScale : 0x00553EF0
// Offset : 0x00800000
// GPOCON : 0x00000000
// ID : 0x00000084
// Data : 0x75943D95
// Configuration : 0x0000A013
// Mode : 0x0018A003
// Status : 0x00000095


Thank you for any possible explanation,

Edit Notes

added clarification about gain setting
[edited by: marcaon3d at 6:45 PM (GMT -4) on 24 Apr 2026]
  • Hi  ,

    After checking the register configuration, I noticed that the data/status register is for channel 5. Channel 5 is for AIN2-AINCOM, and channel 5 is enabled together with channel 7 (AIN4-AINCOM) based on the settings in Configuration register. Could you try isolating it by disabling channel 5 then confirm the value (data register) you are getting for channel 7 so that we can confirm as well the value you obtained, which is 2.839V?

    Thanks,
    Francis

  • Hi FMarasigan,

    Thank you for the reply.

    We actually alternate between reading channel 5 and channel 7 back and forth. I just ended up pulling the register when it was configured on channel 5, that is my bad.

    Here is the Status register when reading from channel 7 (AIN4) after disabling channel 5 : 0x00000097

    The input is still 2.584V
    Gain is configured as x8
    And ADC output is 2.84V

    Here is the DATA register
    Data          : 0x915B1617

    This value should convert into 2.856V according to my calculations

    Thanks

  • Hi  ,

    Apologies for the late response. After checking the value on your DATA register without the appended value for STATUS, which is 0x915B16, it is equivalent to the AIN voltage of 0.084V. Could you share how you got the ADC output of 2.84V? The formula as shown below for computing the output code for bipolar configuration is based on page 33 in the datasheet.

    Regards,
    Francis

  • Hi FMarasigan,

    Thank you for the reply.

    Considering the output code in bipolar, when I solve for the DATA output we got, I do not get an AIN of 0.084V

    0x915B16 = 2^23 * [(AIN * 8/2.5)+1]

    Solving for AIN will give AIN = 0.354V which matches with our initial problem.

    For reference, this is how we compute our result from ADC to Volts :

    OutputV = Vref * ((adc_value - adc_half) / adc_half + 1)

    For an ADC output of 0x915B16,
    we get 2.838V

    Please let me know if our conversion from ADC code to voltage makes sense.

    Thank you for your help !

  • Hi  ,

    Looking at the schematic you've provided, REFIN+ = AVDD, which is connected to +5V. In the computation, it looks like you are using 2.5V.

    Using the formula from the datasheet:

    (\frac{9526038}{2^{23}}-1)\cdot(\frac{5}{8})\text{ }=\text{ }0.084

    Even when using the formula you've provided without the +1 to compute for the equivalent voltage from the code:

    5\cdot(\frac{(9526038-8388607)}{8388607}\text{ }=\text{ }0.677

    adc_value = 9256038
    adc_half = 8388607

    From the 0.677 computed value, dividing it to a gain of 8 will result to 0.084V as well.

    Regards,
    Francis