ESPHome Shower Valve Configuration
Find a file
2026-02-21 15:24:59 -05:00
.gitignore feat: better secrets handling 2026-02-12 10:53:28 -05:00
AGENTS.md docs: get logs 2026-02-21 15:24:59 -05:00
LICENSE Initial commit 2026-02-12 10:41:34 -05:00
README.md feat: IP address config 2026-02-12 11:47:23 -05:00
shower-valve.yaml Add WiFi AP fallback for captive portal 2026-02-12 19:37:10 -05:00

shower-valves

ESPHome Shower Valve Configuration

These are simple ESP32 devices hooked up to 12V water valves on GPIO pin 32, plumbed into the hot water lines for showers.

The ESPHome configuration is in shower-valve.yaml.

Configuration

Each device needs the following substitutions set in its copy of shower-valve.yaml:

Substitution Description Example
name Device hostname (lowercase, hyphenated) boys-shower
friendly_name Display name shown in Home Assistant Boys' Shower
ip_address Static IP assigned by the router (for OTA/logs) 192.168.1.50

WiFi credentials are stored separately in secrets.yaml (not tracked in git):

wifi_ssid: "YourSSID"
wifi_password: "YourPassword"

The ip_address substitution sets use_address so the ESPHome dashboard can reach the device by IP instead of mDNS.

Deployment

  1. Set the substitutions and WiFi credentials as described above.

  2. Flash the device via USB for the first time using the ESPHome web UI with Factory format.

  3. Subsequent updates can be applied over-the-air using OTA format from the ESPHome web UI.

Daily Reboot

The devices are configured to automatically reboot at 3:00 AM daily to mitigate occasional connectivity drops. The valve is turned off before restarting as a safety measure.