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.

ADS1298 data corruption problems

Other Parts Discussed in Thread: ADS1298ECGFE-PDK, ADS1298

Dear All, I am acquiring test signal @ 4KHz using RDATAC mode but received test signal is getting some spikes.(for example: 20k samples have 10-12 curr ) The Received Signal data is plotted below: Give some solution or suggestions to rectify this problem. Regards, Bilal
  • **TI EDIT February 20th 2019; FOR GENERAL ADS129x ASSISTANCE, PLEASE SEE NEW BIOPOTENTIAL FAQ LOCATED HERE**

    Hi Bilal,

    Sorry for the delay here - what hardware are you running the ADS1298 on?  In an earlier post, you were having trouble with getting our code running on the ADS1298ECGFE-PDK, but the screen capture above seems like it is from something you've created.  Is the test signal displayed using the internal test signal from the ADS1298 or is this an external source?  How are you configuring the ADS1298?

  • Dear Tom,

    I am using ARM11 Board (OS:WinCE)  connected with ADS1298. I am using the ADS 1298 in test signal mode. The data in the screen capture is the internal test signal divided by 2^16. The Sampling Freq is 2KHz.  

    I was able to achieve signal of 2kHz with RDATAC. The problem i am facing is that when i acquire data in RDATAC mode some of the bits are corrupted as shown in the screen capture. For the same configuration the signal is perfect with RDATA.

    The CS pin is permanently held low and START pin is permanently held high.

    The ADS is configured exactly the same as in TI software default except the sampling freq which is 2kHz and signal source which is 'Test signal'. here are the register values:

     

     

    #define ADS_ID (0x92)

    #define ADS_CONFIG1 (0x03)

    #define ADS_CONFIG2 (0x10)

    #define ADS_CONFIG3 (0xDC)

    #define ADS_LOFF (0x03)

    #define ADS_CH1SET (0x05)

    #define ADS_CH2SET (0x05)

    #define ADS_CH3SET (0x05)

    #define ADS_CH4SET (0x05)

    #define ADS_CH5SET (0x05)

    #define ADS_CH6SET (0x05)

    #define ADS_CH7SET (0x05)

    #define ADS_CH8SET (0x05)

    #define ADS_RLD_SENSP (0x00)

    #define ADS_RLD_SENSN (0x00)

    #define ADS_LOFF_SENSP (0xFF)

    #define ADS_LOFF_SENSN (0x02)

    #define ADS_LOFF_FLIP (0x00)

    #define ADS_LOFF_STATP (0xFF)

    #define ADS_LOFF_STATN (0x06)

    #define ADS_GPIO (0x00)

    #define ADS_PACE (0x00)

    #define ADS_RESP (0x00)

    #define ADS_CONFIG4 (0x02)

    #define ADS_WCT1 (0x0A)

    #define ADS_WCT2 (0xE3)

     

     

  • Hi Bilal,

    When operating the ADS1298 in RDATAC mode, you have to ensure you get all data (the STATUS and all active channels) out of the device between DRDY pulses, otherwise you can get corrupted data.  If you can send along a screen shot of the SPI interface you are running that might be helpful to track down where you are having problems.  If the SPI transmission does get corrupted, you would need to toggle the /CS input to recover and reset the serial interface.