I have been experiencing a very difficult to solve ground loop problem with my pH measuring system. My basic setup is a standard pH electrode running through an op-amp to an ADC which communicates through I2C to a Raspberry Pi.

Calibration of the probe proceeds as expected and testing various liquids in glasses works perfectly. The purpose of the pH meter is to measure the pH of a fish tank. When placed in the process fluid I get very strange reading (sometimes ph of < 1 or > 14). The calibration of the probe also quickly becomes altered. If I have the probe suspended in the process fluid and scoop the probe out with a cup the reading returns to the expected value as soon as the cup breaks the water.

I assume this is a ground loop issue. I have shut off and removed all heaters and pumps however this does not fix the issue. I have noted that plugging and unplugging a monitor into the HDMI port of the Raspberry Pi changes my reading significantly, although it is still wrong either way. The Pi is being powered from a standard cell phone charger.

Do I need to attempt to fully isolate my signal or are there other potential suspects causing the ground loop?

I am using a Ti LMC6001 Op-amp. My circuit is taken from the datasheet http://www.ti.com/lit/ds/symlink/lmc6001.pdf The only changes are some resistor value changes to change the scaling of the voltage.

Update: Instead of using the raspberry pi I hooked the ADC (communicating over i2c) up to an arduino I had laying around. The problem I described has disappeared. Any ideas on why?

Update2: The problem seems to be at least partially solved. I mocked up a quick power supply with an old wall wart and a 5v linear regulator. Using that to power the raspberry pi directly to the 5v bus gives me very stable readings for in and out of process fluid. Use of the HDMI port reintroduces the problem but it is not needed.

  • \$\begingroup\$ Sounds like you need to pull out an oscilloscope to figure out what's going wrong, and where. Any other process is like shooting in the dark. \$\endgroup\$ Apr 21, 2014 at 16:00
  • \$\begingroup\$ 1) Just for curiosities sake, when you plug in the HDMI, how do you know the probe readings are wrong? How are you measuring the pH otherwise? Strips, battery operated probe? 2) How is the Arduino powered vs the Pi? \$\endgroup\$
    – dext0rb
    Apr 21, 2014 at 17:50
  • \$\begingroup\$ Could you please post a complete schematic?. \$\endgroup\$
    – bardulia
    Nov 19, 2023 at 17:41

3 Answers 3


This sounds like a combination of problems, probably including grounding. The main issue sounds like common mode pickup is turning into differential mode signal. The strategy for dealing with small differential and high impedance signals superimposed on large common mode noise needs to be thought out carefully and considered at every step of the design. This is not something you add on later to fix the problem.

It would help to see a diagram of your system and proper specs for the pH probe, including the expected signal level and its impedance.

In general, you probably want to treat the probe as producing a balanced differential signal, then have something with very good common mode rejection receive that. Minimizing common mode pickup, like by using shielded cable, will also be important. However, shielding without proper balanced signals could do more harm than good.


This is probably related to the power supplies you are using for the Raspberry Pi vs. the Arduino. Try connecting the "earth" to the ground on your circuit.

You may also be able to get it to work by swapping around the two-pin power supply.

The reason is that (on switching power supplies) there's usually a 'Y' capacitor from one of the power pins to the minus output terminal on the power supply (to conduct all the hash from the switching back into the power source). If you have the "hot" terminal connected through a capacitor to the minus output, it will float at mains potential relative to earth. Flipping the input power pins, and/or earthing the minus output terminal fixes that.

pH probes are relatively high level (hundreds of mV), but very high impedance, so a bit of current due to capacitive reactance can wreak havoc.

If my answer is correct, this is not a "ground loop" (two or more grounds), but rather a lack of grounding.


The water becomes an antenna to radiated common mode electric fields. This requires shielding , or guarding and CM choke around twisted pair sensor leads or shielded twisted pair. Grounding the CPU also helps. Try the ground 1st. If sensor also has ground connection, this may reduce interference from SMPS and stray 60/50Hz.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.