AD5933 readout drift

I have tried to read out the same value at the same setting 511 times. If I plot the real and imaginary values on "the complex plane" i get the following plot:

I have tried to put 0.1 uF and 10 uF caps accros the VDD and GND pins (all VDD pins are tied together and the same for all GND pins). This did not make this effect disappear. Has anybody seen this effect before or have any idear on what to do about it?

SETUP: I have tied REF and VIN together to make sure that his effect is contained to the AD5933 chip.

  • The signal seems like it is fluctuating randomly in time.

  • Tech support is likely to tell you that this effect is not too bad. If you calculate the amplitude of complex data on your chart, the average is about 23000 and peak-to-peak deviation from it is like only 4 counts, which is about 0.02% - reasonably precise for an inexpensive device like the AD5933. Perhaps the performance could be even further improved by fully decoupling the analog and digital grounds and power pins of the chip, but it is hard to predict if the result is going to be worth the effort as there seems to be no information on how or whether it has ever been done.

    If you consider standard deviation instead of peak-to-peak deviation as your measure of performance – it will look even better as it is much lower. There are only 66 points on your plot presumably resulting from 511 measurements (unless you plotted only some selected points), which implies that roughly 7-8 measurements per point repeated themselves.

    If you still want to try reducing the scatter - there is remote possibility that the AD5933 input OPAMP is not fully stable at unity gain or picking up some high frequency noise as the bandwidth is at maximum at unity gain. You may try shorting VIN and RFB with a resistor of like 100K - if stability is the issue it might improve the situation. The OPAMP is still going to act as the unity gain follower.

    Another relatively easy thing to try is to change the number of settling cycles (should not be zero) to see if there is any improvement (unlikely).