Goal horn lights up the whole house with Home Assistant

Nov 06, 2026 Last reply: 58 seconds ago 3 Replies
Jump to replies (3)

The detail that got me is the timing problem itself: the goal alerts arrive before the goal even shows up on the stream being watched. The lights would spoil the moment, so the maker added a slider in Home Assistant that delays the celebration by 15 to 45 seconds. That a sports feed beats the live broadcast is the kind of quirk nobody thinks about until they build this, and solving it with a simple adjustable delay is elegant.



The setup covers the whole apartment. Philips Hue bulbs sit in hanging fixtures in the room and in the adjacent hallway, an LED strip runs along the back of the Samsung flat panel, and the wall behind the television glows strongly red during the broadcast. The audio system plays the arena goal horn and celebration music, with the equipment tucked on the shelves below the screen. When a goal lands, the lights pulse bright red in sync across fixtures and doorways while the horn blasts.



Under the hood, the maker wrote a custom web service that fires goal events, plus a component connecting Home Assistant to it. Home Assistant's built-in component then consumes the goal messages and triggers the event. Games come in through NHL GameCenter streams, and any reflected state can act as a condition, such as being home, time of day, Kodi running, or a Harmony activity. Running it needs a device for Home Assistant, like a Raspberry Pi or a spare PC.



The open trade-off is that streams vary, so the ideal delay differs between them. When timing drifts, the maker counts in their head and nudges the delay in the client, though adjustments are rarely needed now. More details live on the maker's blog.



Project by Craig Midwinter. Watch it on their YouTube channel:

formatting link


The delay slider is the smartest piece here in my view. Since the alerts beat the broadcast, a fixed offset would break every time the stream changed, but a 15 to 45 second range tuned per stream keeps the horn landing on the actual goal. The cost is a bit of manual tuning, yet the maker says adjustments are rarely needed now, so it seems like a good bargain.

How does the maker actually dial in the delay for a new stream? The counting-in-the-head method for correcting timing that is off makes sense, but I am curious what starting value gets used the first time a different stream is loaded, and whether the needed offset tends to sit at one end of that 15 to 45 second range more often.

A concrete improvement: lean on the reflected state conditions the setup already supports. Gating the celebration on being home, time of day, or a Harmony activity would keep the horn and the red pulse from firing at three in the morning during west coast games, or when nobody is in the apartment. Right now every goal triggers the full house, and a condition check would make the whole thing much more neighbour friendly.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required