Legionella in hot water
EU 2020/2184 and the German 50/60/50 rule
The Legionella vertical targets hot-water systems in buildings where people sleep, bathe or are immune-compromised: hotels, spas, care homes, dormitories, hospitals.
Legionella is a bacterium that grows in stagnant warm water (20–45 °C is its optimum), and is inhaled as aerosols from showers, taps and cooling towers. Legionellosis (Legionnaires' disease) is fatal in ~10 % of cases when untreated. Buildings prevent it by keeping hot water hot enough and circulating.
The regulation
OpenSense defaults
When you create a site with vertical = legionella, the default channels
are not auto-created — Legionella sites have named channels that you
must map yourself. The template is:
| Channel name | Sensor location | Operating range | Grace |
|---|---|---|---|
storage_top | Top of hot-water cylinder | ≥ 60 °C | 60 min |
storage_bottom | Bottom of hot-water cylinder | ≥ 55 °C | 120 min |
flow_supply | Outlet of cylinder, ringline supply | ≥ 58 °C | 60 min |
flow_return | Ringline return, before re-entry | ≥ 50 °C | 60 min |
outlet_distant | Most distant tap (often roof) | ≥ 50 °C in 30 s | per draw |
cold_supply | Cold-water inlet | ≤ 25 °C | 60 min |
The reason for separate flow_supply and flow_return is that the
delta between them is the diagnostic: a high delta (e.g. supply
58 °C, return 38 °C) indicates that the recirculation pump is undersized
or has failed and stagnation is forming in the loop. The rule template
generates a derived channel flow_delta = supply − return and alarms
when it exceeds 15 °C (the DVGW W553 reference).
The "thermal disinfection" cycle
Many buildings keep storage at 60 °C most of the time and run a
nightly 70 °C cycle for one hour to thermally disinfect the system.
OpenSense treats this as a scheduled exception: the rule engine has a
window field on each rule, so the 70 °C window does not trigger
"overtemperature" on legacy thermostat-protected fixtures.
Example rule:
{
"channel": "chn_4f3c1a",
"kind": "temperature",
"ok_min": 58,
"ok_max": 75,
"windows": [
{ "rrule": "FREQ=DAILY;BYHOUR=3;BYMINUTE=0", "ok_min": 65, "ok_max": 75, "duration_min": 60 }
]
}
Probe placement
- Storage cylinder: two probes are non-negotiable for compliance — top and bottom. Buy a cylinder with two thermowells, or strap-on contact probes with thermal paste and insulation over them.
- Ringline supply / return: clamp-on contact probes (PT100) on the pipe, under the insulation. Without thermal contact and insulation the reading is air-temperature, not water-temperature, and is useless.
- Distant outlet: a thermowell or a stub probe past the last tap. If you cannot install a probe at the distant outlet, OpenSense can derive an estimate from the ringline return, with a calibration offset.
The annual sampling regime
The temperature regime above does not replace the periodic laboratory sampling that local water authorities require. OpenSense reduces the frequency of sampling by demonstrating temperature compliance, but a lab swab is still on the calendar. Common cadences:
- Continuous compliance with 50/60/50: sample annually.
- Any breach in the last 12 months: sample monthly until 12 consecutive clean months.
- After remedial flushing: sample at 24 h, 7 d, 30 d.
OpenSense generates a quarterly PDF with the temperature compliance log, which most local water authorities accept as evidence to reduce sampling frequency.