I would like to turn on mood lighting automatically when I’m taking a shower, what’s the best way to detect that?

  • I’ve considered humidity sensors, but that will take a while to kick in and not immediately when the shower starts.
  • I’ve also considered a water leak sensor but those are not meant to be trigger every day for a long time like 10-15 minutes. That would kill the battery, right?
  • Smart valves can kind of work, but it feels like overkill because I don’t care about the valve functionality.

I would prefer the solution to be battery powered (don’t want to be messing with too many cables around a shower), but I can’t seem to find one.

  • Honytawk@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    44
    ·
    2 months ago

    Multiple waterproof 4k cameras pointed at the inside of your shower from every angle and image recognition by some AI that detects when a naked person enters.

    Don’t forget to use Wifi and no firewall

  • omarthemediocre@lemmy.zip
    link
    fedilink
    English
    arrow-up
    6
    ·
    2 months ago

    I would just go with special button, the most straightforward simple solution you have direct control over. Also sometimes you might need to use the shower without mood lights and then system based on humidity or water flow will just be annoyance.

    If you use some tools when showering, like brush or spung, you can make a contact sensor into the hook/holder (more work, probably need a custom 3D print), but should also work and you don’t need to press anything

  • realitista@lemmus.org
    link
    fedilink
    English
    arrow-up
    6
    ·
    2 months ago

    I experimented with a humidity sensor in the shower and was surprised how quickly it spiked. It’s how I woud do it. Other option would be a leak sensor in the basin but getting it to turn off at the right time would be very hard. You have a lot more control over this with a humidity sensor.

    I’m using zwave for everything like this and wouldn’t be at all concerned about battery for either scenario. Both would last years, much like my door and window sensors do.

  • rumschlumpel@feddit.org
    link
    fedilink
    English
    arrow-up
    5
    ·
    2 months ago

    I bet you can rig up something microphone-based, there’s tons of software nowadays for analyzing audio, and you don’t need to run the analyzing software on the device with the microphone anyway. Though the analyzing would likely take a little bit longer that you’d want it to.

    • batshit@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      2 months ago

      Microphone is certainly an interesting choice I hadn’t thought of before at all. It’s something I can test easily, I’ll have to see how well it plays with music too. I’ll give it a shot

  • ikidd@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    2 months ago

    Flowmeter on the shower head or down in the supply lines to the tub/shower?

  • DecentM@lemmy.blahaj.zone
    link
    fedilink
    English
    arrow-up
    4
    ·
    2 months ago

    Couple ideas, depending on what you have:

    • When the warm water pipe heats up
    • when the water heater starts drawing more power
    • when the water meter detects warm water usage in the evening
    • when the sound volume goes up in the bathroom
    • when the weight sensors go off under the shower (or around it as you get in)
    • when a movement sensor detects movement in the shower
    • when a magnetic door sensor sees the shower curtains open
    • when you press a (waterproof) button in the shower
    • when a weight sensor under the shampoo holder detects less weight
    • batshit@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 months ago

      This is perfect, but I’m not in the US :( I’ll see if I can get it imported.

  • paraphrand@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    2 months ago

    This is a fun question.

    I have to assume the absolute ideal would be some sort of water flow detection right in line with the shower head. Likely hard wired. But like I said, that’s an ideal.

    I think the other suggestions in the thread are reasonable. The microphone one seems most appealing to me since that could theoretically just occupy an outlet anywhere in the room.

    • testaccount372920@piefed.zip
      link
      fedilink
      English
      arrow-up
      2
      ·
      2 months ago

      A waterflow sensor makes the most sense to me too, but it doesn’t have to be inside the pipes. A microphone glued to a pipe should be able to detect the vibrations due to waterflow and hardly anything else.

      Perhaps combine with a motion sensor to see if the lights should be on at all. Then the microphone only switches between modes.

      • paraphrand@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        2 months ago

        Oh, good point. Water flow can be loud when you are right up on the pipe. You could also keep it from picking up other noise with insulation. And the detection might not have to be that fancy then. Just amplitude.

  • BorgDrone@feddit.nl
    link
    fedilink
    English
    arrow-up
    3
    ·
    2 months ago

    I would use something like this to measure water usage in combination with an presence sensor in the shower stall. Water flowing + someone present in shower stall = someone taking a shower.

  • 4lan@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    2 months ago

    I’m using just humidity and its working great. I put the sensor away from my sink so it isn’t triggered by washing my hands.

    This will only consider you showering if humidity goes 9% above the 1hr average humidity:

    You need a ‘Statistics’ Helper, call it “Average Bathroom Humidity” and base it on whatever humidity sensor you have. Make it “average linear” then set Max Age to 1 hour. (leave other options default)

    Make this Template Binary Sensor called “Showering”:

    {{ (states('sensor.bathroom_sensor_humidity')|float - states('sensor.average_bathroom_humidity')|float) > 9 }}

  • lyralycan@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    3
    ·
    2 months ago

    I use a humidity sensor, motion sensor and a helper that shows the change over a period of time. If the humidity raises fast (+2%/5m) and goes over a certain amount (unique, depending on your room’s climate) the bathroom automation changes tracks to hold the light at 100%, turn the extractor fan on, and well, how you stop the automation depends on you. I let it stay on for 15 minutes before waiting for motion. Small tips: For me the humidity triggers the automation within 15s-1m of showering, which is okay for me. Motion sensors typically use IR to see movement. If the room is too steamy it might struggle to see you. Also, it cannot penetrate glass. It must have a line of sight to you.

    The best alt I think would be mmwave presence sensors, but they’re pricy and require a wired connection.

    • batshit@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      2 months ago

      I already have a presence sensor (Tuya) in my bathroom. Maybe I can use that + humidity sensor, everyone is saying it’s faster than you expect so I’ll give it a shot.

  • med@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    2
    ·
    2 months ago

    The right way is some sort of inline water flow sensor, so it’ll trigger within seconds of you turning on the shower to warm it up. With an esp32 and a sensor, and some clever use of the sleep function, it’d probably last a year or so on a couple of AA’s.

    Low effort and price tech is probably better in a wet environment though! If you just want the mood lighting, get a wireless button and stick it somewhere near. Tap it on, tap it off!

    If you want to feel that automatic magic, consider a cheap battery powered temperature sensor. If you fix the chassis to the shower head pipe it’d probably be accurate enough. Also, assuming you need to wait for your shower to heat up, you’d have a pretty good idea when your shower was hot too - when it triggers your automation for the lights!

    Just make sure the sensor polls often enough or can be made to report on a significant temperature difference in a timely fashion. Something like this might do it: https://sonoff.tech/products/sonoff-zigbee-temperature-and-humidity-sensor-snzb-02p

    Also avoid WiFi for buttons, connection and addressing takes ages and sicks for an instant response needed for something like lighting changes

  • Rudy Gnodde@fosstodon.org
    link
    fedilink
    arrow-up
    2
    ·
    2 months ago

    @batshit Don’t you notice getting wet? ;)

    Seriously though, couldn’t you use a water leak sensor for this? Just make sure if it has a speaker to disconnect that, unless you like a loud beeping found when you shower.

    • batshit@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 months ago

      Would it detect as soon as I start the shower or will it have a minute lag? Like I said, I want the automation to kick in as soon as I start.

      • Nicolas Hoizey@mamot.fr
        link
        fedilink
        arrow-up
        3
        ·
        edit-2
        2 months ago

        @batshit I don’t have any automation based on that, just a card in my dashboard, so I didn’t check how long it takes. But it’s not instantaneous, for sure.