HassStartTimer built-in intent not working with Assist

Hi all,

I’ve set up my homeassistant on HA Yellow + Home Assistant Cloud.

Some Voice Assistant intents seem to work just fine; I can turn lights on and off and add items to my shopping list.

However, the HassStartTimer intent does not seem to work. I have exposed my timer entity to the voice assistant and am trying sentence structures described in the intent’s source file, with no success.

I have also tried not using voice and just typing the sentences into the Assist dialog – no luck here either.

Can someone help me figure out what I’m doing wrong?


I believe it happens because this needs area, and companion doesn’t have that:

I’m also pretty annoyed that new timers functionality broke my custom timers, and in the same time doesn’t work on ESP32-based satellites…

Support has been added in the latest release (esphome 2024.06). Now timers should work not only on wyoming satellite, but also on esphome based devices.

and yes, it is not possible to set a timer in the main dialog box, because there is no associated device for this task. Perhaps in the future they will expand the functionality.

Yeah, bad thing that documentation is lagging behind on ESPHome site, so I succeeded with timers on ESPHome satellites only today.
However, I find it useless on ESP32-S3-BOX, as there’s no media_player, so I can’t play beeps on speaker…

thx for the info yall. I made some progress – created a modified version of the internal intent with require_context section removed. Now when I try to trigger voice assistant with my phone or web gui, I get “Sorry, timers are not supported on this device.”

Surely it couldn’t be too difficult to make timers work from companion app if the only problem is not being able to designate an area?

modified timers.yaml file below:

language: "en"
      - sentences:
          - "<timer_duration> timer"
          - "timer for <timer_duration>"
          - "<timer_duration> timer for {timer_name:name}"
          - "timer for <timer_duration> (named|called) {timer_name:name}"
          - "<timer_set>[ a] <timer_duration> timer"
          - "<timer_set>[ a] timer for <timer_duration>"
          - "<timer_set>[ a] <timer_duration> timer (named|called|for) {timer_name:name}"
          - "<timer_set>[ a] timer (named|called) {timer_name:name} for <timer_duration>"
          - "<timer_set>[ a] timer for <timer_duration> (named|called) {timer_name:name}"
      - sentences:
          - "{timer_command:conversation_command} in <timer_duration>"
          - "in <timer_duration> {timer_command:conversation_command}"
        response: command


opened a github issue:

@formatBCE are you saying that this intent was working on the android & web clients before, but recent changes have broken it?

No, my custom intent was working. But since sentences are pointing to newly added default intent now, it doesn’t work.

oh dang… sorry to hear that… hopefully there’s a way to get those working again with some tinkering

Not really… But HA guys responded quickly, and fix is on the way.

1 Like

What I am also missing is the chance to start already existing timer objects of HA with their default duration “start/stop timer xyz”