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.

ADS1100: ADS1100 is noisy

Part Number: ADS1100

I have this issue in which several ADS1100 A/D chips have failed in our assembly.

We have a system that runs a test in which it is looking for a zero volt signal on a line. Typically, we get a reading of 0x0000 to 0x0010 from the data output of the chip. The chip is programmed for unity gain and the conversion rate is set for 8Hz. The reference is +5vdc.

I was monitoring the output because our system had detected that the line had gone over the threshold for the maximum reading (0x0100) for about a second then returned to zero. So, as I monitored the input with a scope, I used an  I2C analyzer to see what data was coming out.

As I monitored the input and output I saw that my voltage was close to zero volts (about 200uv) around 0x0006 to 0x0007 counts. What I was reading from the chip was 0x000A to 0x0002. The line seemed to be quiet with very few ripples. Once in while though, the ADS1100 would out put a value like 0x2843. I didn't see nor could  I capture anything that big (about 0.43 volts).

So, I replaced the chip. When I did, everything seemed to work and this noise went away. My reading also readings also stopped varying from 0x000A to 0x0002 (8 count variance) and varied from 0x0001 to 0x0002 ( a one count variance).

The issue propagated itself on several of our assemblies. Each time, we replaced the chip, it fixed it. The failure was very intermittent. Depending on the device, the failure would occur anywhere from a few minutes to several hours.

  • Glenn,


    I don't think I've seen this problem in the ADS1100. However, there are a few things I would check to debug this. Make sure that the solder connections are solid in the build. Cold solder joints can cause some unusual, intermittent readings. I'd also make sure that the boards are clean, with the flux removed. We've had some problems with un-cleaned boards causing some read issues, especially with changes in temperature. Replacing the chip can help with bad solder connections and re-distribution of flux. Do you have any inductors in the power supply going to the ADC? This might cause some voltage spiking with the digital currents going into the ADC. I've seen this cause errors in the data output.

    Other than that, what is the I2C data rate? Have you looked to see that the waveforms are clean and have enough rise and fall to be read by the microcontroller? Are there other devices on the bus that might cause contention? Do you verify that the device has given an ACK during the device read?

    One test to try would be to read the data with the configuration register together. If there is a problem in the communication, the configuration register data would also likely be in error as well. This would at least separate an ADC error from a communication error. Does your logic analyzer store the communication waveforms? It may help to have a view of the communication when this problem comes up. If you have something like a Saleae, you can record the I2C communication and have a voltage read out of both the input and the VDD to check against the actual voltages that the device sees.

    For the data, can you give a long series of output data with several errors? I'd like to see the raw data instead of the converted value in volts.

    Regardless, there might be several problems that might cause an issue like this. It'll require some debugging to try to catch the source.


    Joseph Wu
  • Glenn,


    I haven't heard from you for a week, so I thought I'd check in with you. Hopefully you've solved the with the noisy ADS1100. In the previous post, I mentioned checking for bad solder connections or excess flux on the boards as a possible solution.

    I'll close this thread for now, but if you continue to have problems, you can post back and we can look at this again.


    Joseph Wu
  • Sorry, I was out of office for  while. I am back now. I measured the temperature of the chip and it runs around 36 to 38 degrees C. The current chip I am testing fails once every 2 minutes. It is very noisy. I used a small heat gun to warm the part up to 70 degrees C. When I did, it failed every 5 seconds. I cooled it down with freeze spray and it stopped failing. The temperature was 32 degrees C after the freeze spray. When it finally got back to the 36 to 38 degree C range, it stopped failing. Though it was still noisy, it wasn't noisy enough to fail. I then reapplied the heat till the temperature was 40 to 45 degrees C and the readings started to fail again. When it cooled below 40C, it would stop failing.

    Our circuit is looking for a ground fault. It works very slowly. We have two calibration cycles and two read cycles. The system test is as below:

    1. Configure the circuit to measure the return line.

    2. Wait 250 ms.

    3. take one sample of the power supply return line.

    4. wait 5ms

    5. Configure the circuit to measure the power supply voltage (26vdc through a divider = 4.0vdc).

    6. Wait 250ms.

    7. take one sample of the power supply.

    8. wait 5ms

    9. configure for a high side ground fault test (should be 0vdc with no ground fault).

    10. wait 1 second.

    11. take a sample of the voltage (should be 0vdc).

    12. wait 5ms

    13. configure circuit for a low side ground fault test (should be 0vdc with no ground fault).

    14. wait 1 second.

    15. take a sample of the voltage (should be 0vdc). 

    16. wait 5ms.

    17. Goto step 1.

    This repeats over and over.

  • Glenn,


    The specified range of this device is -40°C to 85°C, however it should operate all the way out to 125°C. Having a problem that comes in about 40°C seems unlikely.

    First, I wanted to verify the chip temperature. You said that the device was running about 36° to 38° with a room temperature of about 32°C. Does this temperature rise come from the device itself? or are there other sources of heat on the board? The power dissipation on this device is so low, I would expect the temperature rise to be less than 0.1°C (estimating thermal resistance to be 170°C/W).

    For the error that you see what values are you getting out of the ADC? As the device goes into an error mode, can you record the ADC output data and get me a series of values? I'd also like to get the good or expected values for comparison.

    I would also like to see the I2C communication coming from the device. Use a scope to capture the reads with and without the error. There might be something else dragging down the I2C lines so that the SDA or SCL is significantly distorted.

    Lastly, can you supply a basic schematic? It would be good to see what other devices are connected to the I2C and verify that they aren't affecting communications.


    Joseph Wu
  • Glenn,


    I thought I'd check in again with you on the errors that you've been seeing with the ADS1100. In my last post, made some suggestions what sort of things that I'd want to look at to help in the debug for this problem.

    Again, I'll close the post for now, but if you are still having problems, you can post back with some of the information I asked for in my last post, and I'll try to help.


    Joseph Wu
  • This issue is being handled offline.



    Joseph Wu