Turn your weather station into proactive smart home automations โ not just numbers on a dashboard.
ws_core takes the ordinary temperature, wind, and rain sensors you already have in Home Assistant and turns them into a local weather intelligence engine. It watches your own rain gauge to predict the exact minute rain begins, calculates true garden evapotranspiration (ETโ) to stop overwatering, protects awnings from wind gusts, and predicts storms offline โ running 100% locally on your machine with zero cloud dependencies.
Precipitation nowcasting uses your own gauge as ground truth to give you a live countdown before the first drop falls.
Most weather stations in Home Assistant just show raw numbers. ws_core transforms those readings into automatic protection for your home and garden:
| Your Weather Station Today | With Weather Station Core |
|---|---|
Displays 21ยฐC and 15 km/h wind on a card |
Auto-retracts awnings and blinds when dangerous wind gusts hit |
| Sprinklers run on a dumb timer regardless of weather | Skips watering using locally calculated evapotranspiration (ETโ) and rainfall |
| Cloud weather app says "40% chance of rain" | TTS voice alert: "๐ง๏ธ Rain starting in 7 minutes at your house โ close the skylight" |
| Internet drops = weather forecasts vanish | 100% offline Zambretti forecast predicts the next 12 hours from local pressure trends |
| Raw sensors without context | 50+ core derived insights: frost point, heat stress (UTCI/WBGT), fire risk, wet-bulb |
Know before the first drop hits. Enable Precipitation Nowcast to combine local radar models with your physical rain gauge.
- Live countdown:
sensor.ws_minutes_until_raingives you minutes to close skylights, pull in outdoor cushions, or walk the dog. - Pre-rain notifications: Alert your family via phone or smart speaker before rain starts.
- Rain dry-time:
sensor.ws_minutes_until_drylets you know when outdoor surfaces will dry after a shower.
Stop running sprinklers after a downpour. ws_core implements scientific evapotranspiration formulas so your irrigation knows what the soil actually needs.
- Reference ETโ (FAO-56 Penman-Monteith & Hargreaves-Samani): Calculates daily water loss based on solar radiation, temperature, humidity, and wind.
- Smart Irrigation bridge: Seamlessly feeds ETโ data into the popular
HAsmartirrigationintegration. - One-click rain skip: Automatically cancel tomorrow's watering if today's rainfall exceeded lawn requirements.
Safeguard your home against high winds, freezing temperatures, and dangerous heat:
- High-wind awning & blind protection: Instant alerts and automatic retraction commands when wind gusts exceed structural limits.
- Freeze & frost warnings: Accurate Buck (1981) frost-point derivation alerts you to protect sensitive plants and outdoor water pipes.
- Heat stress monitoring (UTCI & WBGT): Gold-standard comfort indices used by the WHO to warn when outdoor work or sports become hazardous.
- Fire weather indices: Complete implementations of Canadian FWI, Australian McArthur FFDI, and US Fosberg FFWI.
Your smart home shouldn't stop working when your internet connection goes down.
- Offline Zambretti forecasting: A mathematical barometric forecast calibrated to your hemisphere and climate region โ 100% local, no cloud, no API keys.
- Privacy by design: All 50+ core derived sensors are computed directly inside Home Assistant on your local hardware.
- Zero telemetry: No coordinates, sensor readings, or personal data ever leave your network unless you explicitly enable an optional external service.
If your weather station is already in Home Assistant, it works with ws_core.
| Station Brand | Supported Models / Integrations | What ws_core Uses |
|---|---|---|
| Ecowitt / Ambient Weather | GW-series, WS90, Wittboy, WH57 lightning, soil, and rain gauges | Outdoor temp, humidity, absolute pressure, wind, rain, lux/solar, lightning |
| WeatherFlow Tempest | Tempest Home Assistant integration & local UDP / MQTT | Air temp, station pressure, wind speed/gust, rain, UV, illuminance |
| Davis Instruments | WeatherLink IP, Vantage Pro2, Vantage Vue | Classic PWS measurements, rain year, bar absolute |
| Netatmo | Netatmo Smart Weather Station (Outdoor + Rain + Wind) | Outdoor module readings, rain gauge total, anemometer wind |
| Blitzortung (Free Fallback) | Blitzortung HA integration (crowdsourced network) | Auto-discovered fallback: strikes, distance, proximity (no hardware needed!) |
| Shelly / ESPHome / DIY | Any custom sensor entity with standard device classes | Temperature, humidity, pressure, wind, cumulative rain total |
๐ Need help mapping your entities? Check out our Hardware Mapping Guide.
Don't spend hours writing YAML. We provide ready-to-import blueprints with sensible defaults:
๐ Browse all 10 blueprints and configuration options in the Blueprint Documentation.
- Open HACS in your Home Assistant sidebar.
- Click Integrations โ โฎ (top right) โ Custom repositories.
- Paste
https://github.com/kmich/ha_ws_core, choose category Integration, and click Add. - Search for "Weather Station Core", download, and restart Home Assistant.
- In Home Assistant, go to Settings โ Devices & Services โ Add Integration.
- Search for "Weather Station Core".
- Auto-Discovery will automatically identify and suggest matching sensor entities from your station.
- Review the mapped entities, click Submit, and you're done!
50+ core sensors appear instantly. You can enable optional enrichments (air quality, nowcast, multi-network upload) at any time under Configure โ Features.
ws_core includes pre-built, responsive Lovelace dashboards tailored for your weather data:
| Mobile View | Desktop View |
|---|---|
![]() |
![]() |
In the dashboards/ directory, you'll find:
- Vanilla Dashboard: Works immediately with 100% native Home Assistant cards (zero custom card dependencies).
- Enhanced Dashboard: Uses popular cards (
mushroom,mini-graph-card) with custom severity color bands and gauges.
Behind the friendly sensors, ws_core runs rigorous, peer-reviewed meteorological algorithms and advanced power packs:
- ๐ง๏ธ Nowcast Ground-Truth Blending: Merges high-resolution NWP radar grids with your physical rain gauge (70% local / 30% forecast) for pinpoint start times.
- ๐ฟ Plant Health & Agricultural Spraying: Computes Delta-T spray window suitability (know the exact window to spray fertilizer without evaporation or drift), VPD (Vapor Pressure Deficit) for greenhouses, and Leaf Wetness to detect fungal risks.
- โก Energy & HVAC Load Optimization: Tracks Heating Degree Days (HDD) and Cooling Degree Days (CDD) to forecast heat pump and air conditioning demand and automate pre-cooling with solar energy.
- ๐ 10-Year Climate Normals (ERA5): Compares today's temperature and rain against a 10-year historical baseline for your exact coordinates (
sensor.ws_temp_anomaly_normal). - โ๏ธ Snow Accumulation & Phase: Uses wet-bulb temperature and precipitation rate to determine snow, sleet, or rain and estimate snow accumulation without requiring a heated snow gauge.
- ๐ฏ Native HA Event Entities: Fires instant sub-second event triggers (
event.ws_rain_event,event.ws_frost_event,event.ws_lightning_event) for lag-free automations without numeric polling. - ๐ก๏ธ Human Thermal Comfort (UTCI & WBGT): Full Brรถde (2012) polynomial modeling human heat balance across radiation, humidity, and wind.
- ๐ก 8-Network Simultaneous Uplink: Broadcasts your station observations simultaneously to WUnderground, Windy, Weathercloud, PWSWeather, WOW, AWEKAS, CWOP, and OpenWeatherMap.
- ๐ Full Translation Parity: Available in English, French, German, Spanish, Italian, Dutch, Polish, and Portuguese.
For complete equations, source citations, and mathematical references, see the Scientific Documentation.
ws_core is strictly local-first. All core sensors are derived locally. Optional third-party features are disabled by default and only contact external services when explicitly enabled:
| Feature | Destination | Data Sent | When Used |
|---|---|---|---|
| Core Derived Sensors | Local Machine | None (processed locally) | Always (Default) |
| Precipitation Nowcast & AQI | Open-Meteo API | Approximate Coordinates | Only if enabled |
| French Vigilance | Mรฉtรฉo-France Public API | Department Code | Only if enabled |
| PWS Network Uploads | Selected Network (e.g. WU, WOW) | Station Readings & User Credentials | Only if enabled |
| MQTT Discovery | Local MQTT Broker | Derived Sensor Values | Only if enabled |
Diagnostics exports automatically redact all credentials and coordinates before download.
Why not just write a few template sensors in YAML?
Template sensors are great for simple math (e.g., Fahrenheit to Celsius), but they cannot easily compute complex meteorological models like Penman-Monteith ETโ, Brรถde UTCI polynomials, or 90-day adaptive Brier scores. Template sensors also don't include blueprints, dashboards, diagnostics, or auto-discovery.Can I migrate from the Thermal Comfort integration?
Yes! `ws_core` provides a drop-in replacement with identical or higher-precision comfort indices. Follow our step-by-step Thermal Comfort Migration Guide to preserve entity history.Do I need any API keys?
No. The core integration and all 50+ base sensors require zero API keys and work completely offline. Optional extras like Open-Meteo precipitation nowcasting and air quality use free public APIs that also require no registration.What if some of my sensors are temporarily offline?
`ws_core` handles sensor degradation gracefully. If your wind sensor goes offline, wind-dependent metrics will reportunavailable, while independent metrics (like barometric pressure trends and temperature comfort) continue working seamlessly.
- ๐ฌ Discussions & Showcase: Share your dashboards and station setups in GitHub Discussions.
- ๐ Bug Reports & Feature Requests: Open an issue on GitHub Issues.
- ๐ Full Documentation: Visit the Weather Station Core Documentation.

