Temperature of a hot water pipe

I’d like to measure the current water temperature of a hot water pipe.
Which sensor can I use for this? I want to mount this sensor on a water pipe to measure temperature fluctuations. I prefer a ZigBee sensor, but Wi-Fi is also an option.

In what time frame?

every second or faster

I guess what he meant was: you can only hope to measure the temperature of the pipe, not the water itself without mounting the sensor inside the pipe. Also sensor will sit between the pipe and the outside world. It will take time for the pipe to,come near the temperature of the water, and the sensor will also be influenced by the outside temperature. So unless hot water runs through the pipe a long time, and the fluctuations you are hoping to catch are over a substantial period, you won’t get any meaningful results, even with a lot of insulation around the sensor and the pipe.

If you’re a DIY kind of person you could tape a DS18B20 temperature sensor to the pipe, read it with a tasmotized ESP01 on a DHT11 board (with DHT 11 removed) powered by a 5V wall wart.
HA can provide an MQTT broker. The device is auto-discovered. All that is left to do is write your automation.

2 Likes

well, actually, with a metal housed temp sensor, attached firmly against the pipe and then insulating it really well, you can get pretty close.
I did that in my situation and the reading differs only 0.8 degree from my kettles internal sensor :wink:

1 Like

Why not with esphome?

2 Likes

Yes, but you should not expect the temperature to be accurate within seconds after you turn on the heat. And it will depend on the mass of the pipe in relation to the amount of water flowing through.

inside the pipe or outside? what pipe material?

correct, it all depends on the purpose of the measurement. In my situation the reaction time and the temperature difference are within my specific needs :wink:

Faster, than I first expected.

Assuming that you are interested in the temperature of the water (not the pipe itself), probably ntc thermistor attached to the pipe with thermally conductive adhesive and carefully insulated externally would give you best results. For copper pipe though, with plastic pipe it would be better to go inside.
If sub 1s can be stretched, DS18b20 could be good and easy option.

If you were looking for some battery powered ready made zigbee sensor, you are out of luck.

correct, it all depends on the purpose of the measurement. In my situation the reaction time and the temperature difference are within my specific needs

Which sensors did you use for this?
I want to demonstrate that I have temperature fluctuations in my thermostatic mixer tap

Temperature is just an average kinetic energy. Temp will be different at the top of a pipe compared to middle and bottom of pipe. It will differ along the lenght ot he the pipe. Interesting problem but hard perhaps to define what you want to measure. Even temp around the pipe will differ from cm to cm along it’s lenght. Is one decimal place enough?

I have a few of these, works perfectly.

As they are Zigbee, they do not report every second. For my hot water pipes this does not matter as the temperature only changes within minutes, and not seconds.

Thanks for your tip, but there should be almost continuous measurement

Qubino Flush with attached thermal sensor, which probably is just a DS18B20

But it is a Zwave device…

Here is it’s accuracy, more than enough for most use cases.

So can you give more details about your setup?

You can use DS18B20 with metal head and a esp32 son-off module, check you pipe size and bough, I have use it to monitor my dump boiler for many years.


The hardware would be the same. You’d have to program the ESP8266 with ESPHome and then add the sensor code. I use Tasmota because it’s easy to get up and running. Perhaps ESPHome is easier for you.

Others have mentioned the challenges of very rapid temperature fluctuation measurements. You have the thermal mass of the pipe, the packaging on the temperature sensor, and the responsiveness of the temperature sensor itself.

Some anecdotal information/experience… I have some DS18B20 temperature sensors on my HVAC system. I measure the temperature of the air inside the output and return air ducts by poking a hole in the duct, and pushing the DS18B20 sensor inside. This was just the bare sensor device in a TO-92 3-pin epoxy package, not inside some metal probe like you see on AliExpress or from other sellers.

I also have these sensors on the AC refrigerant lines, both the high and low pressure runs. In this case, I just put the flat side of the TO-92 package on the outside of the pipe, then wrapped it with “electrical” tape and a layer of insulation on top.

This works great. Or at least it does for a week or so… This is when I learned that the copper pipe on the low pressure side cools off very rapidly when the AC cooling cycle starts. Fast enough that the rapid temperature change caused enough thermal stress on the DS18B20 that it eventually fails in less than a week. And it wasn’t a fluke; I croaked two more of them to confirm. (Curiously, there is no spec on the DS18B20 data sheet on the slew rate of temperature change supported…)

So I think that if you have copper pipe that you can couple to, you should have a useful proxy for temperature of the water. However, there is still some thermal mass in all the various materials to deal with.

I think that for the fastest measurement that’s practical, you’d need to find a way to immerse a thermocouple directly into the water. Mechanically, I have no idea how you do that; probably there are industrial thermocouple sensors available for just this kind of application, but they probably are not cheap. You need to think hard about how responsive you want your measurements to be. And consider that copper is a very good thermal conductor, so measuring externally is pretty practical.