





Timer Card — set any entity to any value after a one-shot timer, configured right from your dashboard
Hey everyone,
I got tired of writing one-off "auto-off" automations every time I wanted the bathroom fan to stop after 15 minutes or the kid's bedside lamp to dim after 20. So I built Timer Card — a Lovelace card + integration that lets you create a one-shot timer right from your dashboard. When the timer expires, the integration sets the entity you chose to the value you picked. That's the whole idea.
Quick example: "in 25 minutes, set light.bathroom to off." Three taps from the dashboard, no automation editor, no helper.
What it does
- Initial state on the card is just a
+ Add timerbutton. Tap → multi-step dialog: pick entity → pick target value → pick duration or absolute time. - Type-aware target picker. On/Off for switches, brightness slider for lights, temperature for climate, position for covers, percentage for fans, option dropdown for selects, lock/unlock for locks, etc. — currently 14 domains.
- Multiple parallel timers per card, each with its own countdown, progress bar, edit and delete buttons.
- Edit running timers with quick +1m / +5m / +10m / +30m / +1h buttons or absolute
HH:MM:SSentry. - Server-side execution — timers survive HA restarts. Anything that should've fired during downtime fires immediately at startup.
- Hookable: each expiring timer also fires a
timer_card_finishedevent for use in your own automations. - 24 bundled languages, auto-following
hass.locale.language.
Real-world use cases I have running at home
- Bathroom fan: off after 15 min
- Kid's bedside lamp: dim to 20% in 20 min, off in 30
- Cellar dehumidifier: run for 2 hours
- "Set thermostat back to 18° at 22:00"
- "Open blinds in 30 min"