I have implemented a program to read ADC values using the ADS124S08.
It operates in continuous conversion mode.
We are using three ADS124S08 chips, and they are selected sequentially.
For each chip, the MUX and IDAC settings are changed to read ADC values from three different sensor channels.
For a given sensor channel, after setting the MUX, the program waits for data conversion and reads the ADC values using the RDATA command when DRDY goes LOW.
However, if DRDY does not go LOW for more than 500 ms after MUX channel setting, the program make the corresponding ADC chip is reset, and moves on to the next chip's sensor channel.
The reset procedure is the same as the initial initialization: a WAKEUP command, followed by a RESET command, and the rewriting all registers.
SPI communication for register writes and commands appears to be working correctly, but there have been cases where DRDY does not go LOW for more than one hour.
During that time, it seems that reset attempts were continuously made.
After that one hour period, ADC values were observed to be read normally again.
Are there any points or possible causes that we should check or investigate further in this situation?