Detect when bread machine is done

Hello community,

I’m trying to figure out how to know my bread machine is done.
I already have a wifi plug with energy monitoring, so I have the power, energy etc. in HA already.

So, I googled it, but I didn’t found anything useful, do you know if there is already something existing ?

Then I thought about creating some kind of algorithm to check when to power goes to 0, but there are multiple “power waves” (and not always the same number). See:

I also thought about having some kind of timer (because the bread machine has some fixed time programs), but we are not always using the same program (we use multiple programs: big bread, small bread, black bread, etc). So it means I have to enter manually what kind of bread we do and the point is to have it fully automated.

The global idea is to have a binary_sensor going on when the machine is starting and off when it’s done, so I can trigger a notification.

So questions are: is there something already existing ? How would you do it ?

(For the story, the bread machine is in the technical/laundry room, because it does some noise and we can’t hear the machine ringing when bread is done.)

Thanks,

Thomas

read this topic, it is very similar and works fine:

How do you know when the bread machine is done?

Maybe there is something simple around that.

I already tried that (and I actually have pretty much the same thing for my dryer), but the problem here are the “waves”. If you check the history between 15:00 and 15:08, there is 0 watt for about 8 minutes, so it means the automation will trigger, while the bread is not yet done :confused:

You just have to bake your bread several times and watch the pattern, it makes every time. It should look very similar.
From that you can make your logic.
If it needs to be set to 9 minutes, then you have no other choice…

Let me elaborate. Maybe there is an LED on the front, or an LCD or a light goes off inside, a ding, a bell, or something similar. Can you monitor that?

What is your bread machine’s make and model?

This is how I do it with my washing machine and dishwasher (with code adapted to ‘bread machine’):

# configuration.yaml
binary_sensor:
  #...
  #* Bread machine - tune the power value in the template & delays for your device
  - platform: template  # see: https://www.home-assistant.io/integrations/template
    sensors:
      baking_bread:
        friendly_name: "Bread machine"
        value_template: >-
          {{ states('sensor.breadmachine_power')|float(0) > 5 }}
        delay_on: 60 # secs
        delay_off: "00:08:00"

Changes in the binary sensor then trigger an automation:

# automations.yaml
#...
#* Bread baked
- alias: "Bread baked"
  trigger:
    - platform: state
      entity_id: binary_sensor.baking_bread
      to: "off"
  condition:
    - condition: state
      entity_id: binary_sensor.dnd
      state: "off"
  action:
    - service: tts.google_translate_say
      entity_id: media_player.kitchen_speaker
      data:
        message: "Your bread is baked now. Time for a fresh slice."
    - service: input_boolean.turn_on
      entity_id: input_boolean.bread_baked

The breadmaking will complete after the baking process, and that is easy to detect, because during keading, rising before the temperature is kept at much lower so there are only shorter power spikes of the heating element, while baking requires high temperature with long heatings. After baking the “keep warm” process is with low temperature again, which is easy to detect.

So you have to look at the power graph of the whole process, decide a rule how to identify the baking, create an input_select that stores stages like “kneading/rising”, “baking”, “done”, create short automation scripts to control the change between these stages: should switch into “done” stage only if in “bake” and the power is low for x minutes.