I'm working on a project, and I seem to be running into some issues with my I2C sensors. I am using a raspberry pi to communicate with them, but I am getting some random I/O errors. After talking with a co-worker of mine he said I could be running into some signal integrity issues. I've been looking at a couple different options, and I think I've narrowed it down between the Rigol DS1054Z and the Saleae Logic 8. However, I'm not sure which would be better for the job. Would someone be able to direct me towards the best instrument (whether it's one of these or a different one)?
Definitely oscilloscope, preferably with I2C decode option is tool for the job - because you want to see signal waveform first. Most likely you know what you are sending over i2c, so decode is not that important actually.
IMHO logic analyzer is overhyped tool in amateur community. It's just *digital* 1's and 0's analyzer/decoder which you can use to analyze digital data w/o possibility to look at the electrical signal, its waveform. In case of bad signal integrity could be so that logic analyzer still shows everything OK while your device/sensor does not. Then what?
Only when you have complex bus like 12 I/O lines and you want to find some logic/timing glitch there - then you need logic analyzer. Obviously not Saleae Logic 8 with it's sorre 24MSPS. In short - better save money for the scope
Tell more about your i2c circuit. What are I2C pull-up resistors in your circuit? How long are i2c signal/ground traces/wires?