Hi all — I've been building Wake Alarm, a Home Assistant integration for sunrise wake-ups: lights ramp from warm-and-dim to cool-and-bright in the run-up to your alarm time, then music fades in at alarm time. Multi-instance, multi-room, with a custom Lovelace card.
Alarm Card:
Setup Card:
Origin
I started with steku's parabolic_alarm blueprint — a great blueprint which I've been waking up to for a while. The light curve and the pairing a light ramp with audio replaced an old sunrise lamp I had. My setup outgrew what a single blueprint can comfortably do:
- Separate alarms for weekday vs weekend, in different rooms
- Multi-room Sonos playback rather than a single speaker
- A card on the dashboard to tweak time / days / volume without editing YAML
- Notification fallbacks for when a speaker is asleep and the music silently doesn't play (the "lights came on but I missed work" scenario, because the Sonos speaker dropped out)
- Persistent media picker — pick a Sonos favourite from the card rather than typing a
FV:2/3ID into a blueprint input
Each of those was awkward to bolt onto a blueprint, so I've rewritten (with a lot of help from Claude) the underlying logic from scratch as a proper custom integration + Lovelace card. The ramp math, Sonos UPnP quirks, and snooze/dismiss flows are all carried forward from the same intent.
What it does
- Lights ramp linearly from warm + dim to cool + bright over a configurable duration, ending at your alarm time. 20 steps/min by default;
- Never dims a light below its current brightness, so if you brighten the room mid-ramp it stays.
- Music fades in from 0 to a configured volume at alarm time, with a random 1–4 track-skip so each fire (and each snooze) starts on a different track from your favourite — not always track 1.
- Multi-room playback for speakers that advertise the GROUPING feature (Sonos tested, with all the unjoin / 3-second wait / volume-zero / join / shuffle / settle dance baked in).
- Mobile notifications with standard and urgent (critical) paths — distinct iOS interruption-levels and Android channels so you can give them different sounds.
- Standard gives a phone option to click snooze
- Critical bypasses Do Not Disturb if the speaker fails to play or no media has been picked yet.
- Optional presence guard: skip the alarm silently if a configured person isn't home (so my wife isn't irritated to be woken up when I'm away)
- Snooze, dismiss, cancel ramp — from the card, the mobile notification action buttons, or
wake_alarm.*services. - Custom Lovelace card with day-of-week toggles, time picker, and an in-card media browser. Single HACS install (Integration only) — the card ships inside the integration and auto-registers as a Lovelace resource.
Tested with (only)
- Philips Hue + Sonos
- HA OS, current build
- iOS Companion app
Not tested on Android, not tested with other light / media-player integrations. The integration uses standard HA service calls (light.turn_on, media_player.play_media, etc.) so it should work beyond my setup — reports either way are welcome.
Install (custom repo)
- HACS → ⋮ → Custom repositories → add this URL as Integration
- Download → restart HA
- Settings → Devices & Services → Add Integration → Wake Alarm
- Add
type: custom:wake-alarm-cardto a dashboard
This is 0.4.0-beta.1 — you'll need "Show beta versions" enabled in HACS to see it. Full instructions and a "How it works" walkthrough are in the README.
What I'd love feedback on
- Does it work - I'd recommend testing a few times before trying overnight
- The default ramp parameters
- Other light + speaker brands working (or not)
- Card UX — anything confusing on first use?
- Setup-wizard or read-me wording
Roadmap
Possible ideas:
- One-off override (alarm just once, then auto-disable)
- Skip-next-occurrence
- Voice Assist intents ("snooze ten minutes")
- TTS announcements (good morning, weather, calendar preview)
- Calendar-aware skip (bank holidays etc.)
- Weather-aware ramp adjustments
Where to ask things
- Bug reports / concrete feature requests → GitHub Issues (forms
with required fields) - How do I…, setup questions, sharing dashboards → here on the
forum thread - Discussion → here, please
Thanks again to steku for the blueprint. Looking forward to hearing how it goes for everyone.

