Grill Buddy - your grilling companion

I figured it out. have to use my probe sensor as the source:
image

wanted to see how are you using these in automations or Lovelace dashboard?

Looking for ideas?

Great… not that anyone told you that before…

I have just tested it in boiling water so far.
I have thought about just adding the attributes as a markdown card.
The attributes has all the things I want so there is no real need to make it more complex as I see it.
But perhaps I’ll change my mind later when I have actually used it.

I probably will create an automation with Time to target (s) < 2 minutes, for 10 seconds as trigger.
It was moving around a bit when I just tested it, could be that it’s more stable in real later.

1 Like

please let me know how you’d suggest to improve the readme on this point (or better, make a PR). Happy to take any help to make sure others aren’t confused!

I only use one probe for my meats and it’s triggering all my automations at once. So nothing gets announced. Anybody has a way around it with only using one probe?

alias: Grilling Time
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.grill_buddy_chicken
    attribute: Status
    from: goal_not_reached
    to: goal_reached
    id: Chicken Done
    alias: Chicken Done
  - platform: state
    entity_id:
      - sensor.grill_buddy_pork_chops
    attribute: Status
    from: goal_not_reached
    to: goal_reached
    id: Pork Chops Done
    alias: Pork Chops Done
  - platform: numeric_state
    entity_id:
      - sensor.grill_buddy_chicken
    below: 60
    attribute: Time to target (s)
    id: Chicken Almost Done
    alias: Chicken Almost Done
  - platform: numeric_state
    entity_id:
      - sensor.grill_buddy_pork_chops
    below: 60
    attribute: Time to target (s)
    id: Pork  Chops Almost Done
    alias: Pork  Chops Almost Done
condition: []
action:
  - choose:
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - Chicken Done
              - condition: state
                entity_id: input_boolean.chicken
                state: "on"
        sequence:
          - sequence:
              - service: media_player.volume_set
                data_template:
                  entity_id:
                    - media_player.echo_show
                    - media_player.animeking_echo_dot
                  volume_level: "{{ states('input_number.announcement_volume') }}"
              - alias: LG TV
                if:
                  - condition: device
                    device_id: 0e090a830153998b929358adce429f51
                    domain: media_player
                    entity_id: eea1aec8ce33cd9b6e37b01af7882f1b
                    type: is_on
                then:
                  - sequence:
                      - service: media_player.volume_mute
                        data:
                          is_volume_muted: true
                        target:
                          device_id:
                            - 0e090a830153998b929358adce429f51
                      - service: switch.turn_off
                        data: {}
                        target:
                          entity_id: switch.surround_sound
              - alias: Samsung TV
                if:
                  - condition: device
                    type: is_on
                    device_id: 822d94eb378a45a2f36718ae874b2c86
                    entity_id: 5361953b47e6fa8e1ae6896a7cb8f0ca
                    domain: remote
                then:
                  - service: media_player.volume_mute
                    data:
                      is_volume_muted: true
                    target:
                      entity_id: media_player.samsungking_tv
              - service: notify.alexa_media
                data:
                  message: >-
                    The Chicken may be done. It is at {{
                    states('sensor.ibbq_943c_temperature_probe_1') }} degrees
                    right now
                  target:
                    - media_player.echo_show
                    - media_player.animeking_echo_dot
              - delay:
                  hours: 0
                  minutes: 0
                  seconds: 10
                  milliseconds: 0
              - alias: LG TV
                if:
                  - condition: device
                    device_id: 0e090a830153998b929358adce429f51
                    domain: media_player
                    entity_id: eea1aec8ce33cd9b6e37b01af7882f1b
                    type: is_on
                then:
                  - sequence:
                      - service: media_player.volume_mute
                        data:
                          is_volume_muted: false
                        target:
                          device_id: 0e090a830153998b929358adce429f51
                      - service: switch.turn_off
                        data: {}
                        target:
                          entity_id:
                            - switch.surround_sound
              - alias: Samsung TV
                if:
                  - condition: device
                    type: is_on
                    device_id: 822d94eb378a45a2f36718ae874b2c86
                    entity_id: 5361953b47e6fa8e1ae6896a7cb8f0ca
                    domain: remote
                then:
                  - service: media_player.volume_mute
                    data:
                      is_volume_muted: false
                    target:
                      entity_id: media_player.samsungking_tv
              - service: media_player.volume_set
                data_template:
                  entity_id:
                    - media_player.echo_show
                    - media_player.animeking_echo_dot
                  volume_level: "{{ states('input_number.normal_volume') }}"
              - service: input_boolean.turn_off
                metadata: {}
                data: {}
                target:
                  entity_id: input_boolean.chicken
        alias: Chicken Done
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - Pork Chops Done
              - condition: state
                entity_id: input_boolean.pork_chops
                state: "on"
        sequence:
          - sequence:
              - service: media_player.volume_set
                data_template:
                  entity_id:
                    - media_player.echo_show
                    - media_player.animeking_echo_dot
                  volume_level: "{{ states('input_number.announcement_volume') }}"
              - alias: LG TV
                if:
                  - condition: device
                    device_id: 0e090a830153998b929358adce429f51
                    domain: media_player
                    entity_id: eea1aec8ce33cd9b6e37b01af7882f1b
                    type: is_on
                then:
                  - sequence:
                      - service: media_player.volume_mute
                        data:
                          is_volume_muted: true
                        target:
                          device_id:
                            - 0e090a830153998b929358adce429f51
                      - service: switch.turn_off
                        data: {}
                        target:
                          entity_id: switch.surround_sound
              - alias: Samsung TV
                if:
                  - condition: device
                    type: is_on
                    device_id: 822d94eb378a45a2f36718ae874b2c86
                    entity_id: 5361953b47e6fa8e1ae6896a7cb8f0ca
                    domain: remote
                then:
                  - service: media_player.volume_mute
                    data:
                      is_volume_muted: true
                    target:
                      entity_id: media_player.samsungking_tv
              - service: notify.alexa_media
                data:
                  message: >-
                    The Pork Chops may be done. It is at {{
                    states('sensor.ibbq_943c_temperature_probe_1') }} degrees
                    right now
                  target:
                    - media_player.echo_show
                    - media_player.animeking_echo_dot
              - delay:
                  hours: 0
                  minutes: 0
                  seconds: 10
                  milliseconds: 0
              - alias: LG TV
                if:
                  - condition: device
                    device_id: 0e090a830153998b929358adce429f51
                    domain: media_player
                    entity_id: eea1aec8ce33cd9b6e37b01af7882f1b
                    type: is_on
                then:
                  - sequence:
                      - service: media_player.volume_mute
                        data:
                          is_volume_muted: false
                        target:
                          device_id: 0e090a830153998b929358adce429f51
                      - service: switch.turn_off
                        data: {}
                        target:
                          entity_id:
                            - switch.surround_sound
              - alias: Samsung TV
                if:
                  - condition: device
                    type: is_on
                    device_id: 822d94eb378a45a2f36718ae874b2c86
                    entity_id: 5361953b47e6fa8e1ae6896a7cb8f0ca
                    domain: remote
                then:
                  - service: media_player.volume_mute
                    data:
                      is_volume_muted: false
                    target:
                      entity_id: media_player.samsungking_tv
              - service: media_player.volume_set
                data_template:
                  entity_id:
                    - media_player.echo_show
                    - media_player.animeking_echo_dot
                  volume_level: "{{ states('input_number.normal_volume') }}"
              - service: input_boolean.turn_off
                metadata: {}
                data: {}
                target:
                  entity_id: input_boolean.pork_chops
        alias: Pork Chops Done
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - Chicken Almost Done
              - condition: state
                entity_id: input_boolean.chicken
                state: "on"
        sequence:
          - sequence:
              - service: media_player.volume_set
                data_template:
                  entity_id:
                    - media_player.echo_show
                    - media_player.animeking_echo_dot
                  volume_level: "{{ states('input_number.announcement_volume') }}"
              - alias: LG TV
                if:
                  - condition: device
                    device_id: 0e090a830153998b929358adce429f51
                    domain: media_player
                    entity_id: eea1aec8ce33cd9b6e37b01af7882f1b
                    type: is_on
                then:
                  - sequence:
                      - service: media_player.volume_mute
                        data:
                          is_volume_muted: true
                        target:
                          device_id:
                            - 0e090a830153998b929358adce429f51
                      - service: switch.turn_off
                        data: {}
                        target:
                          entity_id: switch.surround_sound
              - alias: Samsung TV
                if:
                  - condition: device
                    type: is_on
                    device_id: 822d94eb378a45a2f36718ae874b2c86
                    entity_id: 5361953b47e6fa8e1ae6896a7cb8f0ca
                    domain: remote
                then:
                  - service: media_player.volume_mute
                    data:
                      is_volume_muted: true
                    target:
                      entity_id: media_player.samsungking_tv
              - service: notify.alexa_media
                data:
                  message: The Chicken are almost done
                  target:
                    - media_player.echo_show
                    - media_player.animeking_echo_dot
              - delay:
                  hours: 0
                  minutes: 0
                  seconds: 10
                  milliseconds: 0
              - alias: LG TV
                if:
                  - condition: device
                    device_id: 0e090a830153998b929358adce429f51
                    domain: media_player
                    entity_id: eea1aec8ce33cd9b6e37b01af7882f1b
                    type: is_on
                then:
                  - sequence:
                      - service: media_player.volume_mute
                        data:
                          is_volume_muted: false
                        target:
                          device_id: 0e090a830153998b929358adce429f51
                      - service: switch.turn_off
                        data: {}
                        target:
                          entity_id:
                            - switch.surround_sound
              - alias: Samsung TV
                if:
                  - condition: device
                    type: is_on
                    device_id: 822d94eb378a45a2f36718ae874b2c86
                    entity_id: 5361953b47e6fa8e1ae6896a7cb8f0ca
                    domain: remote
                then:
                  - service: media_player.volume_mute
                    data:
                      is_volume_muted: false
                    target:
                      entity_id: media_player.samsungking_tv
              - service: media_player.volume_set
                data_template:
                  entity_id:
                    - media_player.echo_show
                    - media_player.animeking_echo_dot
                  volume_level: "{{ states('input_number.normal_volume') }}"
        alias: Chicken Almost Done
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - Chicken Almost Done
              - condition: state
                entity_id: input_boolean.chicken
                state: "on"
        sequence:
          - sequence:
              - service: media_player.volume_set
                data_template:
                  entity_id:
                    - media_player.echo_show
                    - media_player.animeking_echo_dot
                  volume_level: "{{ states('input_number.announcement_volume') }}"
              - alias: LG TV
                if:
                  - condition: device
                    device_id: 0e090a830153998b929358adce429f51
                    domain: media_player
                    entity_id: eea1aec8ce33cd9b6e37b01af7882f1b
                    type: is_on
                then:
                  - sequence:
                      - service: media_player.volume_mute
                        data:
                          is_volume_muted: true
                        target:
                          device_id:
                            - 0e090a830153998b929358adce429f51
                      - service: switch.turn_off
                        data: {}
                        target:
                          entity_id: switch.surround_sound
              - alias: Samsung TV
                if:
                  - condition: device
                    type: is_on
                    device_id: 822d94eb378a45a2f36718ae874b2c86
                    entity_id: 5361953b47e6fa8e1ae6896a7cb8f0ca
                    domain: remote
                then:
                  - service: media_player.volume_mute
                    data:
                      is_volume_muted: true
                    target:
                      entity_id: media_player.samsungking_tv
              - service: notify.alexa_media
                data:
                  message: The Pork  Chops are almost done.
                  target:
                    - media_player.echo_show
                    - media_player.animeking_echo_dot
              - delay:
                  hours: 0
                  minutes: 0
                  seconds: 10
                  milliseconds: 0
              - alias: LG TV
                if:
                  - condition: device
                    device_id: 0e090a830153998b929358adce429f51
                    domain: media_player
                    entity_id: eea1aec8ce33cd9b6e37b01af7882f1b
                    type: is_on
                then:
                  - sequence:
                      - service: media_player.volume_mute
                        data:
                          is_volume_muted: false
                        target:
                          device_id: 0e090a830153998b929358adce429f51
                      - service: switch.turn_off
                        data: {}
                        target:
                          entity_id:
                            - switch.surround_sound
              - alias: Samsung TV
                if:
                  - condition: device
                    type: is_on
                    device_id: 822d94eb378a45a2f36718ae874b2c86
                    entity_id: 5361953b47e6fa8e1ae6896a7cb8f0ca
                    domain: remote
                then:
                  - service: media_player.volume_mute
                    data:
                      is_volume_muted: false
                    target:
                      entity_id: media_player.samsungking_tv
              - service: media_player.volume_set
                data_template:
                  entity_id:
                    - media_player.echo_show
                    - media_player.animeking_echo_dot
                  volume_level: "{{ states('input_number.normal_volume') }}"
        alias: Pork Chops Almost Done
mode: single

not sure what is causing this - doesn’t look like an issue with the integration but more with your elaborate automation

Any update as to when this will show up in HACS?

In about 2 years. And I am not even kidding. They have a huge backlog and don’t seem to care about figuring out another way of doing things.

WoW! That’s uneal. But thanks for letting us know. Gonna go the manual route now.

1 Like

You can add it as a custom repository in HACS and it will work that way in HACS.

Hello,
thank you so much for this!
I tried using HA to monitor my grilling with complicated automations, until I found this.
Maybe I am missing something, I am quite new to this, so please bear with me.
Is there a possibility to use an input number helper as target temperature? Or maybe expose the target temperatures as own entities to make them accessible from outside grill buddy?

EDIT
The same applies to the temperature ranges as well.
/EDIT

Thanks for any insight.

Peter

1 Like

In the setup page on the sidebar you can select ā€œinput number entityā€ and type it in
Screenshot 2025-09-19 3.42.00 PM

2 Likes

Awesome, just found your reply. Thank you!