Thanks again, jonpcar. Seems that we think the same about all this stuff.
About the power source, I have experienced things you would not believe...
As you probably know, raspberry pi is usually supplied by a micro-usb PSU (usually a tipical mobile charger, with about 2A is more than enough). But this is not for making precise analog meassurements. Ok, simply changing one PSU for another change the pH measurement from 3-4 up to 9-10!!!. Even with one PSU gives pH=14. With same PSU, simply changing the USB cable can make change the pH in 0.5!!!. Pluging the same PSU with same cable at different plug (another phase) make change the pH levels too!!! Incredible. Changing the raspberry pi make changes in pH levels. When reading with USB-serial, changing the USB port make more than relevant changes on pH levels!!!
Now some explanations and recomendations:
PSU can be rated to 5.0V, 5.1V even 5.2V. Some of them, rated at 5.0V can be really has 4.9V, 5.05V or even fluctuanting voltage depending on power consummig (Amperage). All of this depend on quality of PSU. Some of them introduces huge noise that finally is traslated to the chip that takes the pH meassure, if no
I think I can explain the pH=14. My pH chip can automatically work at 3.3V or 5V. One of a PSU is a very good quality ASUS 1.5A PSU, with no noise, but rated at 5.2V. 5.2V makes 3.4V at gpio feed, what make the chip think it is on a 5V level, so the mV reading at probe input is absolutely low, referenced to a supposed 5V level, so it output 14 pH (means minimum no H+ presence).
Recomendation 1. Ensure a good quality 5.00V rated, stable (always 5.0V at all amperage demands) and noiseless PSU.
The noise inside the RPI voltage can be induced for PSU, but too for ground reference on the ethernet. The explanation of diferent pH levels in diferent plugs are explained because of presence of PLC. If I remove the PLC both plugs result in same readings.
Recomendation 2. Please avoid use of PLC near the raspberry pi feed.
Ethernet introduce noise too. Standar desviation on pH reading is 0.08 with ethernet conencted, and 0.01 without. Depending on quality of switch, more noise can be introduced on your meassurements.
Recomendation 3. Please avoid use of ethernet comunications. Use wifi (so minimum RPI3 / zero wifi is recommended).
USB port is another source of noise. My old RPI2 has polyfuses wasted, so the Voltage at USB port is even more. Polyfuses are cheap resistance protections for the rpi. There are two polifuse (for each pair of USB ports) and one for main usb power. If some of the polyfuse blows... it could recover their state after 1-2 days without use it, but resistance can not be the same, and voltage can down to 4.5V or even more.... Another explanation: due of this polyfuse diferent resistance, pH measurements in one USB can be different from other. In my examples. I have found that internal GPIO UART is more precise (low noise) than USB-SERIAL device.
Recomendation 4. Try to avoid use of analog meassures with USB conections. If you can, use GPIO instead.
Anf finally, one more recomendation:
Recomendation 5. If you change PSU, or PSU usb cable, or raspberry pi, or USB port, or even connect another USB devices... pH/ORP/temp readings can be diferent... so RECALIBRATION is needed.