I wanted to have a timer that I could easily read and adjust on the front end. I decided to use an input slider and adjust its value with automation based on time. I created a input slider from 0 to 100 and displayed it on the front end. This automation advances the input slider from 1 to 100 in 17 minutes. I use automation to reset the input slider or trigger the action I want as in the kitchen light motion sensor example.
automation timer_pos:
trigger:
platform: time
seconds: '/10'
condition:
condition: numeric_state
entity_id: input_slider.timer
above: 1
below: 100
action:
- service: input_slider.select_value
data_template:
entity_id: input_slider.timer
value: '{{states.input_slider.timer.state|float + 1}}'