









I built a 24/7 local weather channel in Home Assistant, complete with radar, alerts, cameras and YouTube streaming
I've been working on this for the last couple weeks after and finally have my Home Assistant-based local weather channel to a point where I'm pretty happy with it with a few tweaks and optimization trials still in the works. Nobody I know seems to find it interesting but I'm here in the hopes it can get some love.
It runs continuously on a small Linux mini-PC and cycles through dashboard views for current conditions, a 7-day forecast, local and Southeast radar, two weather cameras, NWS alerts, and a sun/moon/rainfall almanac. I've developed an optimized system that uses a combination of NWS/METAR data along with home data captured through an Ecowitt WS90 which feeds the appropriate fields.
A few of the more interesting pieces:
- Dynamic backgrounds change with the actual weather, time of day, and locally observed sky conditions.
- I use the live weather Wyze camera (coupled with rotating AI-powered condition estimation) to help distinguish things like clear, partly cloudy and cloudy conditions, while higher-priority observations such as nearby lightning/thunderstorms can share space or take priority as needed.
- NWS watches and warnings are pulled into the display with orange framing for watches and red framing for warnings along with notices in the footer.
- Radar is animated and automatically refreshed.
- The whole dashboard is rendered at 1080p, encoded to HLS with FFmpeg, and that same local stream feeds both a 24/7 YouTube stream and Plex Live TV through Threadfin. The unlisted YT stream is automatically fed into an unlisted playlist so I can easily find it.
- I created a watchdog around the renderer and publisher so it can monitor the stream's condition and recover on its own when something hangs or the outbound stream drops. It can isolate the failure mode and proceeds through targeted recovery methods.
- I also created an appropriate music playlist that runs in the background... for that authentic "Weather Channel" experience.
The dashboard YAML alone is approaching 9,000 lines and the entire project takes up around 2GB on the mini-PC.
NOTE: Some of the screenshots use simulated conditions so I could test/display things like snow, flash flooding and tornado warnings without having to wait for Georgia weather to provide them. That's why some of the associated figures and short term forecast don't fit the conditions indicated. Eventually I'll look to replace the generative backgrounds with curated real images, but these work for now.
Still tinkering with it, but it's become a fun experience learning about Home Assistant. Can't wait to eventually move everything away from Amazon/Google for actual automations at home and beyond!