I ranted previously about the buggy SPI interface of the Analog Devices AD7793 delta-sigma ADC part. We wound up kluging a cap to ground on the SPI clock line, which seemed to fix the SPI hangups. We also reset the chip (by sending 32 1's) every measurement, to un-hang it if it does hang up.
Now we're seeing huge zero offsets. On the gain16 range, we're seeing hundreds of microvolts of offset, and the magnitude and even sign can change depending on what signals we mux into the differential input. Common-mode rejection is terrible too.
After a week of experimenting, we found that hacking a 33 nF cap directly across the diff input pins fixes the offset. There must be some weird charge injection thing going on.
We understand neither fix.
The part is terrible and the data sheet is terrible. ADI should fix both, but they probably won't.
In general, cmos chopper/zero-drift architectures seem inclined to charge injection errors that data sheets are careful to not mention.