This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADS1258 - unexplained offset

Other Parts Discussed in Thread: ADS1258, OPA2277, OPA2228, OPA2340, OPA228

Hi,

The issue I’m seeing is an offset in the readings produced by the ADS1258.  I’m using it to cycle through several channels, some differential and some single-ended.  The first two readings are differential signals from two thermocouples.  AIN0 and AIN1 are for one thermocouple and AIN2 and AIN3 are for the second.  All four of these inputs were filtered with a low-pass filter and buffered by an OPA2277UA op amp.  I’ve used this pre-amp on other circuits in the past, but never with the ADS1258.  I noticed that the ADC readings were coming in low.  The first thermocouple was lower than the second, even though the circuits were identical.  I wanted to determine if the offset error was from the pre-amp or the ADS1258 itself, so I removed the op amps and connected all four inputs AIN0, AIN1, AIN2 and AIN3 to my on-card 2.5 VDC reference.  So, without the pre-amp, the ADS1258 produced a reading of about -350 counts on the first reading (AIN0 – AIN1) and -150 counts on the second reading (AIN2 – AIN3).  We tried turning on and off the buffer on and off and that does not seem to make any difference.  We’ve also tried to slow down the measurements and still it does not help.  Also this offset seems pretty consistent between several cards of the same design.

 

Here are some thoughts.

  • I had to remove these parts and re-solder them back onto the cards.  Maybe that process affected some sort of factory calibration.
  • Do I need to utilize the MUXOUTP, MUXOUTN, ADCINP and ADCINN pins?  Right now I’ve tied MUXOUTP to ADCINP and MUXOUTN to ADCINN.
  • Is there a calibration process the device requires to eliminate this error?

Any suggestions/help appreciated.

Thanks

Madhu

  • Hi Madhu,

    Sorry for the delayed response.Would you be able to share a schematic?

    The OPA2277 is a little slow for use as a data converter drivers and it contributes some offset of it's own. Usually, we recommend op amps with 10-20 MHz bandwidth. Both of these factors may be contributing to the offset you are seeing. It might be worthwhile ordering some free samples of a faster op amp (such as the OPA2340 or OPA2228) in the same package (depending on which package you're using and other factors such as supply voltage, etc) and trying them in place of the OPA2277.

    Without calibrating your system, the OPA2277 contributes a MAX offset of 25uV, or roughly +/-75 counts (for a 2.5V reference). The ADS1258 can contribute around 20uV of offset, so it is believable (albeit a little unlikely) that both offsets are adding to give you the -150 count offset you observe on AIN0 - AIN1.

    Your test described above is essentially an offset test. I would expect the offsets to vary slightly per channel (mainly from the part-to-part offset variation of each OPA2277), but not double as you observe. I would look at variations in layout to see if the channels layouts are different...the schematic may be the same on each channel, but the layout greatly affects the circuit. Some other things to consider:

    • How many samples of each channel do you take? (Are you indeed seeing the average offset, or could you be observing noise by only measuring each input once?)
    • Do you buffer the common input on the single-ended measurements? (The common signal could be noisy).
    • What is the noise level observed on each input channel?

    I suggest taking 10-seconds of data and averaging it to find the RMS noise. If it is much higher than what is shown in the ADS1258 datasheet, there may be a layout issue. Some noise will come from the op amp driver and the rest will be from either the power-supply or layout (return currents flowing through a common ground impedance are the most common noise coupling mechanism).

    Regarding your other questions / thoughts:

    Madhu Vatte said:
    I had to remove these parts and re-solder them back onto the cards.  Maybe that process affected some sort of factory calibration.

    It is possible for parts to be damaged while soldering, but I don't see that being a common issue. I think soldering damage would usually show up as a bigger problem.

    Madhu Vatte said:
    Do I need to utilize the MUXOUTP, MUXOUTN, ADCINP and ADCINN pins?  Right now I’ve tied MUXOUTP to ADCINP and MUXOUTN to ADCINN.

    Since you buffer your signal before the MUX, you do not need to insert a buffer between the MUX outputs and the ADC inputs.

    Madhu Vatte said:
    Is there a calibration process the device requires to eliminate this error?

    The ADS1258 does not have any built-in calibration functions, like some of our other delta-sigma ADCs. You would calibrate it manually by:

    1. OFFSET CALIBRATION: Shorting the system inputs (to a proper CM voltage) and measuring the offsets (as you described above). Save the conversion result and subtract it from all proceeding measurements. This removes the systematic offset errors from your measurements.

    2. GAIN CALIBRATION: Input an accurate full-scale signal and measure the result. Take the ratio of the ideal full-scale code (0x7FFFFF) to your result and multiply all proceeding conversions by this ratio to remove the systematic gain errors from your measurements.


    Best Regards,
    Chris

    OPA228

  • Thanks Chris!  Can you please inbox me you email id.

    Thanks

    Madhu Vatte

  • Hi Madhu,

    Here's the email address: pa_deltasigma_apps@ti.com

    Best Regards,
    Chris

  • Hi Madhu,

    I'm just following up on this issue. I don't think I received an email from you.

    Have you been able to resolve the problem?

    Best Regards,
    Chris