Tapping into existing two-wire temperature sensor from pool heating system

Hello everyone, I'd appreciate some help and ideas please!

I have a pool heating system that for now I'd like to tap into and read the existing sensor values. The long term objective is to get rid of the existing controller (or wait until it dies) and control the pool heating via an esp controller/homeassistant/whatever. The sensors are working, in place and I don't really want to hack apart pipes, etc and replace them.

The pool heating system is this one:

The 'digital' temperature sensor/probe is this one:

Ideally I'd like to understand either:
a) The OEM probe manufacturer details based on someone's recognition so I can get hold of the schematic and then figure it all out
b) Receive wisdom from someone on how to approach the problem without a schematic without blowing up the WEMOS D1 I have.

My searching for an answer has only found this on the HomeAssistant forums which did not receive an answer: Reading another devices temp sensors - possible? - Hardware - Home Assistant Community

Since it seems to have only two wires, I guess it probably isn't digital, it is probably just a thermistor, and the limited range of temperature in a pool suggests that is all it need to be. If the supplier won't tell you, one thermistor is much the same as another, and it shouldn't be hard to work it out for yourself. Just unplug it and see if resistance varies sensibly with temperature.

That seems a rather nice little project box, perhaps going some way to explain the eye-watering price.

That might also be a PT100 or PT1000 sensor (which works similarly to a thermistor).

Nick_Pyner:
Since it seems to have only two wires, I guess it probably isn't digital, it is probably just a thermistor, and the limited range of temperature in a pool suggests that is all it need to be. If the supplier won't tell you, one thermistor is much the same as another, and it shouldn't be hard to work it out for yourself. Just unplug it and see if resistance varies sensibly with temperature.

Thanks for the comment, so essentially unplug it from the device, put a multi-meter on the contacts and then change the water temperature to see what happens on the multi-meter?

Any suggestions on multi-meter settings? It is a wet-system so I don't want to drain the pool in my efforts :slight_smile:

jremington:
That might also be a PT100 or PT1000 sensor (which works similarly to a thermistor).

So my process would be the same as above?

I will try and call the supplier today to see what they will tell me, it's not like am in competition with them at all, I am just trying to add logging.

Use your multimeter on the Ohms setting to measure resistance, while varying the probe temperature.

The PT sensor resistance varies linearly with temperature, but that of standard thermistor "NTC" material does not, so make a table of resistance versus temperature and post it.

jremington:
Use your multimeter on the Ohms setting to measure resistance, while varying the probe temperature.

The PT sensor resistance varies linearly with temperature, but that of standard thermistor "NTC" material does not, so make a table of resistance versus temperature and post it.

All temperature sensors are non-linear, its just how non-linear. The odds are its a "standard" 10k thermistor.

Platinum-resistance probe in a budget product is very unlikely - these are precision products for lab equipment!

Thermistor curves do vary, they are inherently low accuracy, but repeatable enough for most simple uses.

The probe will take a long time to equilibrate as its encased in plastic, allow 5 minutes between readings at different temperatures.

Platinum-resistance probe in a budget product is very unlikely

Quite common in pool and solar water heating installations, where I live.

MarkT:
Platinum-resistance probe in a budget product is very unlikely - these are precision products for lab equipment!

I have assumed this is a thermistor as I have never seen a PT this small, and a thermistor is indeed all that is needed, but this is not a budget item. The sensor costs $88, and the box is an eye-watering $500 or so.

The PT1000 sensors in my solar water heater installation look like the one pictured, but the sensor element is enclosed in a stainless steel jacket 1.5 cm long, 5 mm in diameter. I had to replace a sensor on a roof panel, and it was NOT cheap.

No professional pool or solar water heater installation with automatic controls would be described as a "budget project".

I tend to agree with the thinking above.. it is very unlikely to be a sophisticated setup - it doesn't need to be over-engineered, but I do understand them wanting to protect their business and make a profit.

Meanwhile I have some updates and I hope progress!!

I checked the resistance at the lowest level on the multimeter (200) and didn't get anything, so I watched a couple of youtube videos which educated me a little more and I recognise I have a long way to go... BUT this encouraged me to put the resistance measurement up to the 20k setting which gave the following:

Fortunately or unfortunately both roof and pool are currently being reported at 17 degrees celcius

The pool connector gave a 6.25 reading (the cable is 2.5m long I believe based on product specs)
The roof connector gave a 6.0 reading (the cable is 20m long I believe based on product specs)

Annoyingly the probe end of the sensor in the pool pipe is not screwed in so I was reluctant to just pull it out and then have to fix the seal which looks a little perished - it looks like this: https://www.epools.com.au/wp-content/uploads/2020/01/aquamate-705-pool-sensor.jpg

Is this enough information to get started?

There must be a swag of posts on using thermistors around here, and you ought to go trawling. I assume the 6.25 means you have read the the sensor at 6.25k on a 0-20 multimeter, which seems a bit low but not necessarily anything to worry about. A commonest thermistor is 10k at 25C, and gets higher as it is colder. I believe there are several sorts. The temperature range you need would be more or less linear.

There can't be any pressure about a fitting as crude as that, and the grommet should be easily replaceable so, if you can sum up the courage, now might be a good time to do that and remove the sensor, thereby making tests more convenient. A quality Brannans 0-50 mercury thermometer can be had from medical equipment suppliers for about $2-50.

A word of caution - swimming pools and electricity are a dangerous combination . There are Design considerations / regulations etc that have to be met ; depending where you are maybe approvals.

Using something “ home made” in this context you need to be able to prove you know what you are doing .

Since the probe is advertised to be digital it may well contain something like a DS18B20 sensor, operating on "parasitic power", which requires only two wires: (power/signal and ground). The ~6K resistance you determined is consistent with that possibility. To be sure, connect an oscilloscope across the two leads when the controller is in action, and you will see the bits.

If so, you need a microprocessor like an Arduino Uno to read it out, and it can't be used in parallel with the original controller. Lots of material on line if you google "arduino ds18b20".

To the poster above worrying about me electrocuting myself, I assure you I am appropriately fearful of 240v systems and don't do anything which would have risk of harm to me or anyone else.

jremington:
Since the probe is advertised to be digital it may well contain something like a DS18B20 sensor, operating on "parasitic power", which requires only two wires: (power/signal and ground). The ~6K resistance you determined is consistent with that possibility. To be sure, connect an oscilloscope across the two leads when the controller is in action, and you will see the bits.

If so, you need a microprocessor like an Arduino Uno to read it out, and it can't be used in parallel with the original controller. Lots of material on line if you google "arduino ds18b20".

First up thanks for your help, thoughts and comments so far, it really is appreciated! I don't think I can get my hands on an oscilloscope but I will cast the net amongst friends.

My current platform is a Wemos D1 mini (ESP8266) which is working well for me as it has a reasonably mature ecosystem of configurations, codebases, etc

The possibility that it is a DS18B20 sensor is something that I was looking into but hadn't figured out the 3 wire -vs- 2 wire thing so it is interesting that you have suggested that it could be one running parasitic power. This is quite helpful as it gives me another avenue to explore and attempt to understand.

To streamline trial and error a bit more, I wired in some jumper leads so they are parallel to the existing connector so I can leave it in it's original configuration as possible.

I did some more tinkering this morning and:

  • checked to see if there was any voltage coming from the sensor socket on the pool controller and it showed .07v with the multimeter set to 20v, I'm not sure what this means but it is more info I guess.

  • I flashed the tasmota-sensor firmware and plugged the sensor/thermistor (tba) into the wemos d1 mini gnd and gpio14 but couldn't get it to work in a variety of configurations. There is mixed info as to whether a pull-up is needed, but regardless I couldn't get a reading out of it after 20-30 minutes of trying.
    Save the Earth One Resistor at a Time – External pull-up resistor no longer needed for DS18B20 temp sensor | josh.com

In regards to 'can't be used in parallel' that is good info, I didn't think of that. Once I know if it is a ds18b20 or not I will know my next steps. I guess if it is, my options are to install another sensor or consider putting it in a serial configuration - which could be too ambitious...

I'm off to the over-priced electronics store this afternoon to get a 'real' ds18b20 sensor and a breadboard. They unfortunately only have 3 wire version of the sensor and it is not for water but will help me get closer to having a valid-working configuration to help work through the unknown configuration.

The "three-wire" DS18B20 can be used in parasitic power mode, with only two wires and two of the pins. Data sheet.

On second thought, if it is a standard "one-wire bus" sensor, it is possible to capture (sniff) the communications between the controller and the sensor. There are a couple of projects on the web that claim to do that with Arduino.

I'm hoping for some other ideas if possible.

I bought a standalone DS18B20 temperature sensor and put that into working configurations for normal and 1 wire(parasitic) mode. After learning the basics (thanks youtube) I had it working and reporting temperature.

I then took that knowledge out to the 'pool shed' and spent about an hour trying all sorts of methods to get it working but nothing would give me a reading - this was all on the assumption that it is/was a 2 wire (parasitic) DS18B20 temperature sensor. I think it is not a DS18B20 based on my experimentation so far.

I'd welcome any other suggestions as to which "digital temperature sensor" it could be and how to connect it if there are any?

Avoid parasite power, and then get serious about the DS18B20. There are fake items in TO72(?) package about, and there are plenty of posts about round here. I am not aware of any fakes in the waterproof package. I guess there is no point in doing that.

At this point, your options are to get an oscilloscope and figure out the data transmission protocol used by the commercial sensor, or use your own temperature sensor.

How expensive is a replacement thermometer? It might be worth getting one and breaking the package apart to see what it contains. If you get really lucky there might be a part number.