Smart bathroom ideas

Apologies if something like this has been done and this is in the wrong place.

I’ve been meddling with hassio and smart home stuff for the last year just recently bought my own place and so expanding my goals/ambitions for what I can create. I’m always massively impressed and surprised at the various ideas solutions the community comes up with.

So thought I’d start this thread for inspiration from the community.

In my bathroom I have,
1 xiaomi motion sensor
1 xiaomi temp/humidity sensor
2 sonoff basic one for lights one for the fan

And creating a few basic automations to tie them all together with node red.
Motion sensor activates lights, humidity activates ventilation fan, illuminance sensor dictates if lights need to be on. All 3 together for if someone has a shower, as the motion sensor doesn’t see through the glass shower doors.

So what other things are people doing ? I’ve seen toilet seat sensors, auto flushers, air freshener tie ins etc. The wacky and the simple (light bulb, why didn’t I think of that moment) type things ??

You lost me at node red…

However the humidity thing needs some thinking. Base or background humidity will vary with the seasons and the weather. Setting an “absolute” value to turn the fan on and off is not much use. Instead I suggest using the trend sensor, or the generic hygrostat custom component:

The humidity control is only for when having a shower, has worked nicely so far. Turns on shortly after jumping in the shower and stays on for 30 mins or so after , meets the WAF as it helps keep the shower stall shiny and streak free.

Node red is A flow diagram way of creating automations, no real coding. I’ve only just started using it but enjoying it and finding it easier to work with once I get my head onto the right place.

Node-red - I know what it is, and it is great I know. I am just trying to avoid having to use it, and introducing another thing to break!

I found a water flow sensor much better for the shower than a humidity sensor. Humidity sensors can be temperamental

Can you elaborate on which flow sensor and where you placed it?
Most are huge and ugly (and expensive) and not something that fit in the shower - and access to pipes usually not easy…|pcrid|224682545492|kword||match||plid||slid||product|SN36477|pgrid|47130025876|ptaid|pla-371786579238|&CMP=KNC-GUK-CPC-SHOPPING&gclid=CjwKCAjw1f_pBRAEEiwApp0JKNRf7089NAH9QbmDoBTsZTzCCfU-P0nuJWQQ7g0LrBnS3Ukn7AFJsBoC6LwQAvD_BwE

I have it on the cold pipe feeding my shower mixer under the bath.

I do something similar. I store the current humidity every 5 minutes. If the trend sensor fires, the fan kicks on and turns off after the previous 5 minutes humidity level is restored or the fan has been on for 30+ minutes. Once the fan is on, I suspend storing new humidity levels until it is turned off again.

We have a glass enclosed shower with a transom. The humidity level never triggers the trend sensor until the door or transom is opened, which releases a blast of humidity into the air. Once the fan restores the last known “good” humidity level (stored every 5 minutes), the process repeats itself waiting for a jump in the trend sensor while storing new humidity “reset points”.

It’s been working well for months, and I almost never touch the fan switch now. No need for node red.

Cold water doesn’t really effect humidity levels. And I’ve built an extremely accurate sensor with ESPHOME and a cheap BME280 sensor. ESPHOME is fantastic and something every smart home enthusiast should consider adding to their network.

1 Like

Is does when it’s going into a shower along with hot :rofl:

1 Like

My bad nick, keep it simple and working with little maintenance type thing ? .

I like that flow sensor but prob a step to far for me.

I’m in the UK and I have a shower pull cord with a timer fan and hue lights, currently cord is giving power to switched live and I have to control the fan manually via external wall switch. I’m experimenting with this in my shower room: I would like to replace the external control switch for this fan to something smart.

For humidity, the xiaomi sensor works fine for me, I use the attribute change of the statistics platform.
Usually when the change goes higher than 5 it means someone is showering.

- platform: statistics
  name: 'Shower Humidity Stats'
  entity_id: sensor.humidity_xxxxxxxxxxxx
  sampling_size: 15

- platform: template
      friendly_name: "Shower Humidity Rising"
      icon_template: mdi:water-percent
      unit_of_measurement: '%'
      value_template: >-
        {{ float(states.sensor.shower_humidity_stats_mean.attributes.change) }}
1 Like

Then why didn’t you put the flow sensor on the hot pipe instead? It really makes no sense whatsoever to monitor the cold pipe. What does make sense though, is to measure the actual humidity and not guess at it.

Because hot water never enters the shower unless cold does, heat effects magnets so a magnetic sensor will enjoy longer service life on the cold pipe.

And if you’re rinsing the shower you’re going to get a false positive for humidity. By measuring the actual humidity you will be able to remove it until it reaches the desired level.

Rinsing the shower creates humidity

It’s not going to raise it 5 points, which is about the level one would turn on a fan for comfort or to reduce mold opportunities.

I use a ds18b20 connected to a wemos d1 mini running easyESP. The temp sensor is taped to the hot water line which feeds the shower. There is a Z-Wave switch for the bathroom fan. The bathroom fan has a humidity sensor built in which works fine in the summer but runs too much in the winter. If you turn the fan on it will be in auto humidity mode. If you turn it on, off, and on again the fan will be turned on in manual running mode. The automation based on the water pipe temperature turns on the fan when the temperature is above 92 F and a six minute delay. The delay of the temperature crossing 92 F and the six minutes added delay avoids the drafts from the fan which my wife does not like.

Fan time slider automation which does the turn off:

- id: bathroomfantemp
  alias: "Bathroom Fan Water Temperature"
    platform: numeric_state
    entity_id: sensor.master_shower_temp
    above: '92'
  - delay: '00:06:00'  
  - service: switch.turn_on
    entity_id: switch.ds_bath_fan

There is a dash button in the bathroom in case the fan is needed for non shower reasons. This turns off the fan to get it in a known state to then do the on-off-on to get it in full manual on mode.

- id: heftyDashButton
  alias: "Hefty DashTurn on ds bath fan"
    platform: event
    event_type: dash_hefty

  - service: switch.turn_off
    entity_id: switch.ds_bath_fan

  - delay: '00:00:10'
  - service: switch.turn_on
    entity_id: switch.ds_bath_fan

  - delay: '00:00:03'
  - service: switch.turn_off
    entity_id: switch.ds_bath_fan

  - delay: '00:00:03'
  - service: switch.turn_on
    entity_id: switch.ds_bath_fan

Slider script:

  alias: "Master Bath Fan Timer"
    - delay: '00:{{ states.input_number.dsbathfan_run_time.state | int }}:00'
    - service: homeassistant.turn_off
        entity_id: switch.ds_bath_fan



Like most of you I have a humidity sensor, which manages the vent. I do use Node RED. I love it! I also have my bathroom lighting controlled by HA.

Then I have an RF window sensor. Signal is received by a Sonoff RF hub running Tasmota. At the radiator I have a controlled radiator thermostat. When the window opens, the radiator switches off.

New plans:

I already happen to have a heated mirror in my bathroom. Currently, when switched on manually, the mirror gets very hot and will not become steamy. However, it actually gets too hot and consumes a lot of electricity.

My aim is to have the mirror heater controlled by HA + NodeRED. From the temperature and humidity we can calculate the dew point and heat up the mirror just to reach that temperature. Minimize power usage, optimize comfort. :slight_smile: