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.

ADS1278 reads bad values once in a while

Other Parts Discussed in Thread: ADS1278, ADS1278-HT

Hi, 

I have 2 ADS1278 daisy chained with MODE0 and MODE1 pulled high to use Low-Speed Mode. A 2 V signal is fed to channel 1 of both ADCs. The ADC reads it correctly most of the times. Once in a while when the board is powered up the ADCs read incorrect values. In fact when this happens the values jump all over the place. I tried doing a SYNC operation in order to reset internal counters.

Any idea what could be causing this? 

Is there anything specific step for ADC that I may have missed during initialization in firmware? 

Pinakin 

 

  • Hi Pinakin,

    Could you share a screen capture of your SPI bus? MISO, MOSI, /CS, /DRDY-FSYNC?
    When the issue does occur, is it immediately following the device start-up or is it after collecting data for some time?

    Check to see if you any of your SPI timings fall out of spec when the issue occurs.

    Regards,
    Ryan
  • Hi Ryan,

    I will provide the SPI capture soon. Meanwhile I noticed in datasheet that the power should be applied in following sequence (Page 35 of datasheet):
    DVDD followed by IOVDD followed by AVDD. On my custom board, all occur at the same time. What effect would this have? Would this cause ADC to read incorrectly?

    Regards,
    Pinakin
  • ADC_SPI_Waveform.docx

    Ryan, 

    I have attached SPI output for ADC. The values jump all over the place. There is a 2 V input on channel 1 of both ADC chips. 

     

    Pinakin 

     

  • Ryan,

    Another update: I have 2 boards. Both had the same behavior. I swapped the ADC chips on one of the boards and now it works fine 10 out of 12 times. I wonder if it is the power-up sequence.

    Pinakin
  • Hello Pinakin,

    I'm not sure if improper power-up sequence would physically damage the device; for that, I would have to check with a designer. However, it could possibly place the device in an unknown state, which would explain why you are seeing garbage data.

    After the global device power-on reset is issued internally, the device waits 2^18 CLK cycles before converting. The first 129 conversions are suppressed to allow the data to fully settle. Once the device begins to output data, you could try asserting an extra /SYNC pulse to see if it puts the device back into a known good state.

    Have you tried this already?
  • Hi Ryan,

    In my test I capture ADC input for 10 seconds and then average out the value and output the counts. I tried putting a sync between every 10 seconds capture and that did not help.

    Also we plan to use this chip at high temperatures (around 175 C). Is there anything specific to the die which could be a problem at such high temperatures?
  • Ryan,

    Is there a way to reset the chip in the firmware?
  • Pinakin - you will need to use the high-temp version of the device: ADS1278-HT.

    My original question was whether your data was coming out correct initially or not. If it comes out initially correct, then I do not believe you are seeing a power-up sequence issue.

    Have you verified that, when the data is corrupted, you are still satisfying all SPI timing requirements?

    Regards,

  • Ryan,

    This problem shows up from the beginning (since power up). Here is the scenario I encounter:
    1. Power up#1 = ADCs read values correctly.
    2. Power Cycle Board - Power up #2 = ADCs read values correctly since power up.
    3. Power Cycle Board - Power up #3 = ADCs read garbage values since power up.
    4. Power Cycle Board - Power up #4 = ADCs read garbage values since power up.
    5. Power Cycle Board - Power up #5 = ADCs read garbage values since power up.

    Is there any restriction on SPI clock phase and polarity?
  • For reference on power-up sequence, I found an older post that seems to confirm my theory. Ideally we need AVDD to come up after the digital supplies, but you should not have caused the device any damage and an extra /SYNC pulse (after first data samples are output) should restore the device in a good state:

    e2e.ti.com/.../3059