What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
An Arduino can monitor water temperature, log energy use, run schedules, and request heating—but a hobby relay board should not be connected directly to a residential 120/240 V water heater. The practical design depends on the heater: start with monitoring only, use appropriately rated low-voltage switching for a 12/24 V RV or solar system, and have a qualified electrician install any residential mains switching. Keep the heater’s original thermostat and independent safety devices in service.
What an Arduino smart water heater can do
“Smart water heater” can mean temperature monitoring, scheduled heating, remote status, energy measurement, solar-surplus control, or automatic permission to heat. These are different levels of intervention. Monitoring does not switch the heater; supervisory control allows heating only when conditions are met; replacing a factory thermostat is a much more consequential change and is generally not the right hobby-project goal.
A sensible architecture keeps safety-critical control local and independent of Wi-Fi:
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchPC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Temperature sensor → Arduino → local logic and status
↓
properly rated interface
↓
heater circuit, with factory thermostat and high-limit retained
Storage, instantaneous, and heat-pump water heaters have different electrical and thermal characteristics, as the U.S. Department of Energy’s water-heater overview explains. Gas, tankless, and heat-pump appliances may depend on proprietary controls, ignition systems, airflow, or communications. Do not treat them as generic relay loads.
#1 Best Overall
- Used to detect the presence of water, water leakage
- Used to measure the water level
- Supply voltage: 3.3 - 5V DC. Current consumption: less than 20mA
- Water sensor for Arduino, ESP32, ESP8266, Raspberry Pi, or any 5V or 3.3V microcontroller.
- Tutorials for Arduino, ESP32, ESP8266 and Raspberry Pi are provided => search for: DIYables Water Sensor
Choose the right project for your heater
| Project | What it does | Best fit | Main boundary |
|---|---|---|---|
| Temperature monitor | Displays or logs temperature and optionally energy use | Beginners and owners of conventional storage heaters | Does not control heating; sensor placement affects what the reading means |
| Low-voltage controller | Schedules or permits heating on a 12/24 V system | RV, caravan, motorhome, and off-grid projects | Requires correctly rated DC switching, fusing, and dry-fire protection where relevant |
| Residential supervisory controller | Requests heating through a suitable contactor or approved interface | Projects involving a conventional electric storage heater | Mains installation and hardware selection belong with a qualified electrician |
| Energy monitor and scheduler | Tracks current, power, energy, runtime, or tariff periods | Readers seeking usage data or load management | A current sensor alone may not measure real power accurately |
Best first build: monitoring only
Monitoring lets you learn how the tank warms, how readings change with sensor location, and how much heating time your schedule uses without asking an Arduino to switch a high-energy appliance. It is useful even if you never add automatic control.
Low-voltage RV or solar build
This is the most straightforward complete-control project when the heater itself is designed for 12/24 V operation. Arduino’s published motorhome hot-water project uses a Nano 33 IoT, a 24 V heater, temperature monitoring, and a relay. Treat it as an example of project architecture, not as universal residential installation guidance.
Residential electric storage heater
Use the Arduino for schedules, monitoring, and a low-voltage control signal to an appropriately rated contactor or approved interface. The existing thermostat and high-limit cutoff should remain in control of the heater’s ordinary cycling and independent over-temperature protection. A relay module marked “30 A” is not, by itself, evidence that it is suitable for a particular two-pole mains circuit, enclosure, load, or local code.
Recommended Free Tools
Rank #2
- Build a 37-Module Sensor Lab: Add motion, distance, light, sound, temperature, touch, display and control functions to compatible UNO, MEGA, Nano, ESP-32 or STM32 projects for prototyping, classroom experiments and maker builds
- Explore Input Sensors and Motion: Experiment with GY-521 motion sensing, PIR detection, ultrasonic ranging, temperature and humidity, DS18B20, flame, Hall, touch, light, sound, tilt, tracking and obstacle-avoidance modules
- Add Displays, Timing and Control: Use the LCD1602, DS1307 real-time clock, joystick, rotary encoder, relay, buzzers, RGB LEDs and infrared modules to build clocks, alarms, counters, status displays and automated projects
- Follow Guided Projects Materials: Use digital tutorial materials, datasheets, wiring diagrams and example code for compatible UNO R3, MEGA 2560 and Nano boards, then adjust thresholds, timing and logic to create custom experiments
- Module-Only Expansion Kit: Controller board, USB cable, breadboard and jumper wires are not included; use 6.5–9 V DC only with the included power module, verify pin requirements before wiring and keep the laser emitter away from eyes
Safety comes before parts selection
Electrical and thermal protection
- Mains wiring is not a beginner Arduino exercise. Have a qualified electrician determine the switching arrangement, poles, conductors, disconnect, overcurrent protection, enclosure, grounding and bonding, and code requirements for a residential installation.
- Keep low-voltage electronics isolated from mains and out of damp or exposed locations. Use appropriate enclosures, strain relief, cable glands, terminals, and wiring methods.
- Do not bypass the heater’s mechanical thermostat, high-limit cutoff, pressure-relief valve, grounding, or manufacturer-required safety devices. Software is not a substitute for independent hardware protection.
- For immersion elements, prevent operation out of water. The CPSC’s 2026 warning about immersion heaters operated partially or fully out of water underscores the fire risk. Use suitable physical protection and water-level or water-presence safeguards where applicable.
- Consider a leak detector and a locally enforced shutdown response. Do not modify the tank shell, pressure-relief system, or plumbing safety devices.
Scald risk and temperature settings
Tank storage temperature, the temperature measured by your probe, the factory thermostat setting, and the temperature delivered at a faucet are not interchangeable. A mixing or tempering valve can reduce outlet temperature while allowing a different storage strategy. For most U.S. residential applications, DOE guidance identifies 120°F as the usual setting; institutional systems that store water at 140°F or higher to address Legionella risk need anti-scald measures such as a tempering valve. See the agency’s residential water-heater guidance. The CPSC also recommends 120°F to reduce tap-water scald risk, but that does not eliminate burns or replace appropriate plumbing protections (CPSC safety alerts; tap-water scald guidance). Choose settings based on the appliance instructions, plumbing, occupants, and applicable local guidance rather than adopting one software threshold for every home.
Plan the hardware around the heater
Controller and user interface
A Nano 33 IoT or MKR WiFi 1010 can suit a connected monitoring prototype; the UNO R4 WiFi may be convenient for a familiar UNO-form-factor project. Check current board and library compatibility before choosing parts. For a DIN-rail, PLC-style design, Arduino describes the Opta WiFi as a micro-PLC with Wi-Fi, Ethernet, RS485, and four relay outputs rated by Arduino up to 2.3 kW each. That specification is not blanket approval for switching any water heater: the full circuit, protection, enclosure, duty, and local requirements still determine suitability.
Useful interface items include current temperature, heater state, schedule, manual override, sensor status, fault indication, energy consumed, and last-update time. Show the commanded state separately from any measured or confirmed state so a lost connection or failed switching device is not mistaken for successful shutdown.
Rank #3
- Contact Water/Liquid Level Sensor, This is a photoelectric water liquid level sensor that is operates using optical principles. Open collector output mode, suitable for connecting various circuits and product applications.
- The sensor has no mechanical parts, requires no additional adjustment, and has high sensitivity, low power consumption, corrosion resistance, high pressure resistance, high temperature resistance and chemical stability.
- This sensor probe is small in size and has a structure that can be placed up, down, laterally, and diagonally in multiple orientations to detect solution spillage, dryness and horizontal level. Can be used as a reminder and alarm function.
- The sensor has a DIP switch. The DIP switch controls the output voltage (high level) of the signal terminal (green line). When the DIP switch is dialed to 5V, the high level is 5V. When the DIP switch is dialed At 3V, the high level is 3.3V.
- Compatible with Arduino motherboard and Raspberry Pi motherboard. for Automatic Irrigation Systems, Aquariums, Plants, in The Garden, in Agriculture etc.
Temperature sensing
Use a sealed or waterproof probe with a suitable temperature range and a mounting method that does not compromise the tank. A DS18B20-style probe is one common maker option, but the system must detect disconnection or implausible readings. An external probe taped to a jacket or pipe may report surface or pipe temperature rather than tank or outlet temperature. One probe also cannot necessarily reveal stratification across the tank.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Validate sensor placement and readings against an independent thermometer before using the data for decisions. Treat missing, stale, or implausible values as a fault—not as permission to heat.
Switching, fusing, and energy measurement
For a low-voltage heater, select a DC-rated relay, MOSFET, or contactor for the heater’s voltage and continuous current; include a fuse close to the source and account for wiring, heat dissipation, and any inductive coil suppression. For residential mains, the electrician should select and install the contactor or approved switching device. Arduino’s Oplà IoT Kit documentation describes a carrier with temperature sensing and two 24 V relays; that is useful for low-voltage demonstrations, not evidence that it can directly switch a residential mains heater.
Rank #4
- Easy to Use: This Turbidity Sensor is compatible with Arduino, ESP32, STM32, and Raspberry Pi (ADC Required).
- Dual Signal Output: Supports both Analog (0-4.5V) and Digital (High/Low) modes for flexible integration.
- Fast Detection: Detects turbidity levels from 0-4000NTU with a fast response time of <500ms, suitable for various applications including rivers, streams, wastewater and effluent measurements, sediment transport research, and laboratory measurements.
- Detailed Tutorials: Find comprehensive tutorials for using this Turbidity Sensor on the DFRobot Official website.
- Usage Note: Avoid fully submerging the sensor in water. Place the small round head of the split parts into the water for measurement. Please be aware that the top of the probe is not waterproof.
For energy data, an isolated current sensor or certified energy meter is preferable to an unisolated mains-voltage measurement circuit. Current alone does not necessarily yield accurate real power for every load. A current transformer, certified meter output, or documented isolated interface should be chosen for the installation and calibrated against a trusted meter. Mains measurement itself is hazardous.
Build and validate in stages
- Document the heater. Record its type, AC or DC voltage, rated current or power, elements, tank capacity, thermostat and high-limit arrangement, manufacturer restrictions, and installation environment. Do this before selecting a switching component.
- Build a monitoring prototype with the heater disconnected. Wire the probe according to its documentation, add an appropriate pull-up if required, and verify units, stable readings, sensor-disconnect behavior, local display, logging interval, and recovery after power loss.
- Test the logic using a harmless simulated load. Use an LED or suitably rated low-voltage test load to verify schedules, hysteresis, manual-off priority, fault handling, and restart behavior before controlling any heater.
- Add low-voltage heater control only if the heater is designed for it. Confirm the current and switching-device rating, install the fuse near the power source, provide suitable wiring and physical thermal protection, and implement water-presence protection when required. Test first with heating disabled, then under controlled, short-duration operation while checking connections and switching-device temperature.
- For residential mains control, provide the electrician with the control requirements—not a novice wiring recipe. The electrician determines the contactor, pole arrangement, conductors, disconnect, protection, enclosure, grounding, compatibility, and code compliance. The Arduino should provide only the agreed low-voltage supervisory signal.
- Exercise faults before commissioning. Test sensor disconnection and implausible values, reboot, Wi-Fi and cloud loss, maximum-runtime timeout, manual override expiry, leak or water-level fault, over-temperature lockout, schedule or clock loss, power restoration, and disagreement between a command and contactor feedback.
Use fail-safe local control logic
Use separate concepts for the normal target, a hard high limit, outlet-water temperature, and the point at which heating may resume. Hysteresis prevents rapid switching around a target: the controller turns permission on below a lower threshold and off when the target is reached. The exact values depend on the heater and plumbing and should not be treated as universal safety settings.
Illustrative pseudocode for a supervisory permission signal is:
Best Value
- Accurately measure water level and detect rainwater drops with this high-quality Water Level Sensor, designed for easy integration with development boards.
- Simple to use and cost-effective, this Water Level Sensor features a parallel wire trace design to accurately measure water quantity, providing analog output for easy integration with development boards.
- With a working voltage of DC3-5V and low power consumption of less than 20mA, this Water Level Sensor is an efficient and reliable choice for water level detection and alarm systems.
- The sensor's FR4 double-sided tin-spraying and electronic component manufacturing process ensures durability and reliability, making it suitable for a wide range of applications and environments.
- This Water Level Sensor operates in temperatures ranging from 10°C to 30°C and with a humidity range of 10% to 90% without condensation, providing accurate and consistent water level detection.
if (!sensorValid || overTemperature || runtimeExceeded) {
heaterPermit = false;
setFault();
} else if (manualOff) {
heaterPermit = false;
} else if (scheduleAllowsHeating &&
waterTemperature <= targetTemperature - hysteresis &&
waterLevelSafe && noFault) {
heaterPermit = true;
} else if (waterTemperature >= targetTemperature) {
heaterPermit = false;
}
This example is not a certified safety system. At startup, keep the output off until sensors are validated. A watchdog reset, invalid sensor, leak, or over-temperature condition should remove the heating request. Add a maximum runtime and make manual override expire. Remote commands should be requests subject to local checks; cloud availability must not be required for a safe local state.
Add scheduling, logging, and remote status carefully
A schedule can shift heating to a preferred time, and solar or tariff-aware logic can use energy data to decide when heating is permitted. Whether this saves money depends on the tariff, usage, tank losses, heater efficiency, climate, and required recovery; automation does not guarantee savings. Track temperature alongside energy and heating duration to understand actual behavior.
Arduino IoT Cloud supports device, Thing, property, and time-series management; its IoT API reference documents token-based authentication and rate-limiting information. Protect credentials, avoid unauthenticated control endpoints, keep firmware and libraries current, and use network separation where practical. Log state changes and authentication failures. Design cloud outage and delayed-command behavior explicitly, and require local safety conditions even when a remote user requests heat.
Troubleshoot by failure mode
| Symptom or failure | Possible cause | Safer response |
|---|---|---|
| Temperature is implausible, frozen, or missing | Probe location, broken cable, water ingress, failed sensor, or tank stratification | Remove heating permission; verify probe mounting and compare with an independent thermometer |
| Heater remains on after an off command | Welded contacts, incorrect switching arrangement, failed output, or command not confirmed | Do not rely on software status; use proper contactor feedback and independent protection, and have mains hardware inspected |
| Controller resets when switching | Supply sag or switching-coil interference | Check power design and appropriate coil suppression; keep control and load wiring properly separated |
| Schedule runs at the wrong time | Clock loss, time-zone or daylight-saving issue, or corrupted schedule | Use a defined local fallback schedule and ensure loss of time cannot create an unsafe heating request |
| Remote status disagrees with actual heater behavior | Network delay, stale telemetry, failed contactor, or unacknowledged command | Display command and measured state separately, timestamp updates, and require acknowledgement where feedback exists |
| Water or leak fault occurs | Dry operation, tank or plumbing leak, or failed level detection | Remove heating permission locally and inspect the water system and physical protection before restarting |
When another solution is a better fit
- Purpose-built smart water heater: Best when supported appliance controls, warranty, and certified integration matter more than customization.
- Rated energy-management device: A better fit when the goal is scheduling or monitoring rather than experimenting with temperature control; it must be suitable for the heater and installed according to its instructions.
- Home Assistant: Useful for local dashboards and broader home automation, but it adds a host and configuration burden. Keep safety cutoffs local and hardware-based. See Home Assistant.
- Industrial-style controller: Appropriate for more robust, repeated control applications; PLC positioning does not remove the need for correct electrical design and code compliance.
- Monitoring only: The strongest beginner recommendation when the heater is a residential mains appliance.
Project references and buying notes
Arduino’s hardware catalog is the place to confirm current board documentation. Its MKR WiFi 1010 is a connected-prototype option, while the Oplà kit is an educational route for thermostat and IoT concepts. Availability, plans, and prices can change, so verify current store details before buying. Neither board nor kit is a finished residential water-heater installation.
An older Arduino forum discussion illustrates common questions about current sensing, schedules, and relays; treat it as discussion, not verified installation guidance or a source of current prices. For regulatory context on U.S. water-heater test procedures, consult the current 10 CFR Part 430, Subpart B.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

