please help me, I have problems with the following:
I anstalled a tds sensor to an esp32 board analog pin and see, that the ppm value isn’t correct shown and see that the value of the sensor isn’t 0 if the sensor is not attached to the board. Can anyone help me to fix the issue?
i use wemos d1 mini lite, Wemos D1 mini include external voltage divider circuitry to scale down a 3.3V input signal to the chip-internal 1.0V so i have to add a multiply filter to get correct values
This code does not work for me. I am getting about 350ppm on esphome and 850ppm when comparing with an actual TDS meter. Looking at the voltage provided by running the code/math in Arduino my voltage is around 2.1 but only 1.04 on the Esp32. If I apply the multiply by 3.3 filter then I am in the 2300ppm range. Any ideas?
EDIT:
Looks like attenuation is needed. The TDS sensor uses a range of 0-2.3 but the ESP32 is only capable of 0-1.1V.
EDIT: I added “attenuation: 6db” to the “TDS 01 TCV” template’s paramaters and it seems to be reading pretty accurately across the scale. Yay!
Hi, Did you get this working? Mine works, but is reading way low. My TDS meter reads ~417 when my handheld reads ~935. Based on the water in my aeroponic tub I believe the handheld is probably pretty close to accurate.
Where do you add the attentuation parameters in the ESPHome code? I’m assuming you add “attenuation: 2.5db” (or 6 or 11db) to temperature compensated TDS, or maybe the TDS Raw reading?
I guess I’ll play around with it, but I’ve got plants going at the moment and some automations using the ESP32 I’m trying to make this work on, so I don’t want to be resetting it constantly if I can help it.
How is everyone getting on with this?
I’m using a AZ-Delivery esp32 board and although the sensor is changing when either in or out of the water it seems that too high
I’m using GPIO32 and connected to ground and 5v from the esp
Probe 01 27 °C
TDS-01 1,288 PPM (In Water)
Probe 01 27 °C
TDS-01 134 PPM (Out of the water)
This is my raw output when the Phobe is in the water
[08:01:47][D][sensor:125]: ‘TDS 01 TCV’: Sending state 2.54412 v with 3 decimals of accuracy
[08:01:48][D][sensor:125]: ‘TDS 01 Raw’: Sending state 2.57070 v with 3 decimals of accuracy
[08:01:57][D][sensor:125]: ‘TDS 01 TCV’: Sending state 2.48978 v with 3 decimals of accuracy
[08:01:58][D][sensor:125]: ‘TDS 01 Raw’: Sending state 2.54100 v with 3 decimals of accuracy
[08:02:07][D][sensor:125]: ‘TDS 01 TCV’: Sending state 2.46102 v with 3 decimals of accuracy
[08:02:08][D][sensor:125]: ‘TDS 01 Raw’: Sending state 2.54100 v with 3 decimals of accuracy
[08:02:13][D][sensor:125]: ‘TDS-01’: Sending state 1274.54382 PPM with 0 decimals of accuracy
[08:02:17][D][sensor:125]: ‘TDS 01 TCV’: Sending state 2.46102 v with 3 decimals of accuracy
[08:02:18][D][sensor:125]: ‘TDS 01 Raw’: Sending state 2.55090 v with 3 decimals of accuracy
[08:02:25][D][dallas.sensor:144]: ‘Probe 01’: Got Temperature=26.6°C
[08:02:25][D][sensor:125]: ‘Probe 01’: Sending state 26.62500 °C with 0 decimals of accuracy
[08:02:27][D][sensor:125]: ‘TDS 01 TCV’: Sending state 2.47061 v with 3 decimals of accuracy
[08:02:28][D][sensor:125]: ‘TDS 01 Raw’: Sending state 2.53110 v with 3 decimals of accuracy
[08:02:37][D][sensor:125]: ‘TDS 01 TCV’: Sending state 2.45143 v with 3 decimals of accuracy
[08:02:38][D][api:102]: Accepted ::FFFF:C0A8:F64
[08:02:38][D][api.connection:861]: Home Assistant 2022.8.3 (::FFFF:C0A8:F64): Connected successfully
[08:02:38][D][sensor:125]: ‘TDS 01 Raw’: Sending state 2.61360 v with 3 decimals of accuracy
[08:02:47][D][sensor:125]: ‘TDS 01 TCV’: Sending state 2.53133 v with 3 decimals of accuracy
[08:02:48][D][sensor:125]: ‘TDS 01 Raw’: Sending state 2.54100 v with 3 decimals of accuracy
[08:02:57][D][sensor:125]: ‘TDS 01 TCV’: Sending state 2.46102 v with 3 decimals of accuracy
That would be smashing, Thank you.
I think it’s almost there just seems that the reading are high, having a similar issue with a Gravity Analog Ph Sensor.
So with the sensor in or out of cup of water, I’m getting the follwoing
14:34:37][D][sensor:125]: ‘TDS TCV’: Sending state 0.07051 v with 3 decimals of accuracy
[14:34:42][D][sensor:125]: ‘TDS TCV’: Sending state 0.07051 v with 3 decimals of accuracy
[14:34:47][D][sensor:125]: ‘TDS TCV’: Sending state 0.07051 v with 3 decimals of accuracy
[14:34:52][D][sensor:125]: ‘TDS TCV’: Sending state 0.07051 v with 3 decimals of accuracy
[14:34:57][D][sensor:125]: ‘TDS TCV’: Sending state 0.07051 v with 3 decimals of accuracy
[14:35:02][D][sensor:125]: ‘TDS TCV’: Sending state 0.07051 v with 3 decimals of accuracy
[14:35:07][D][sensor:125]: ‘TDS TCV’: Sending state 0.07051 v with 3 decimals of accuracy
Do you have the PH sensor and TDS in the same system? If you do and aren’t using an isolator then your readings will definitely be skewed, at least on the PH side. This is an issue that I am dealing with now. Trying to figure out how to control transistors to turn the TDS sensor on and off.
Just a quick word of warning, I used one of those tds sensors from ali that output a linear voltage that can be correlated to tds. The issue was in the aquarium, after x amount of days I’d get 0 tds. Turns out that the biofilm was isolating the two prongs on the sensor. A quick scrub between my fingers and good to go.