[Solved] Which software is best to run for probes.
Please can someone advise whether it's better to use UART or I2C, being used with Atlas Scientific probes PT-1000 Tepmerature, Conductivity & Ezo-Pump Kit.
Thanks in advance.
I2C allows multiple devices to be connected to the same bus, or communication wires, which is why I often use it for multisensor applications. If you're trying to transmit long distances, UART may work better, but you will need a TX/RX for each device, which if you're using a Pi version below 4, you'll need a UART expansion board, since those Pis only have one UART. The Pi 4 supposedly has 4 more UARTs (with one set of pins overlapping another, so really 4 UARTs. See https://www.raspberrypi.org/forums/viewtopic.php?t=244827 ). You can also use USB-to-serial boards to connect your device to a USB port, but these are expensive (relatively) considering you can switch the device to use I2C. There's an additional issue with USB device assignment that you'll have to set to a static device if you want to assure no conflicts arise between reboots ( https://github.com/kizniche/Mycodo/blob/master/mycodo-manual.rst#usb-device-persistence-across-reboots ).
Overall, I would recommend using I2C for the ease of use and simplification of wiring/connecting. If you experience issues with I2C, such as long wire length preventing communication, I'd then recommend you maybe try UART.
Thanks for the info, I'm using Rasp Pi 2, so sounds like I2C is the one.
@kylegabriel I am thinking of adding some more temperature sensors (adding a water chiller system for my fruiting room, so I was thinking about waterproof DS18B20 sensors for cost reasons.
Would you recommend 1Wire devices for a shared-bus system instead of i2c (or UART) for greater reliability? In my case I've got a Raspberry Pi 4, but I've not yet used any 1-Wire stuff on it yet.
I've used the DS18B20 extensively and it's a nice small, reliable sensor. Some of my applications involved encasing the sensor and end of the wire in plastic or epoxy to waterproof it, and it's worked great in wet applications. For just temperature sensing, I would recommend the DS18B20 over I2C devices because it will generally be smaller and easier to manage than an I2C device on a circuit board.