Skip to content

Repository files navigation

Outdoor Environment

Outdoor Environment

HACS Default HA ≥ 2024.1 CC BY 4.0 cloud_polling Validate MIT License

A Home Assistant custom integration that exposes 80+ outdoor environment sensors using two free, no-key Open-Meteo APIs.

Zero API key · Zero registration · Zero cost · Global coverage

Open in HACS Add integration


Sensor groups

Group Sensors Default
A — Air Quality AQI EU + US, PM2.5, PM10, NO₂, O₃, SO₂, CO, CO₂, dust, AOD, NH₃, CH₄
A-sub — EU sub-AQI EU sub-AQI per pollutant (PM2.5, PM10, NO₂, O₃, SO₂)
A-sub-us — US sub-AQI US sub-AQI per pollutant (PM2.5, PM10, NO₂, CO, O₃, SO₂)
A-extra — Advanced Formaldehyde, glyoxal, NO, PAN, sea salt aerosol
B — Pollen Grass, birch, alder, olive, ragweed, mugwort 🌍
C — UV UV Index, UV Index Clear Sky
D — Weather Temperature, humidity, apparent temp, dew point, precipitation, wind, cloud cover, visibility, pressure, weather code
D-agro — Agro Evapotranspiration (ET0), VPD, CAPE, wet bulb temperature
E — Solar GHI, direct, diffuse, DNI, terrestrial radiation, GTI (optional)
F — Derived Comfort index, heat index, wind chill, dominant pollutant, pollen risk, ventilation score, solar production factor, irrigation needed, frost risk, lightning risk ⚙️

✅ enabled by default · ⬜ available, disabled by default · 🌍 enabled by default only for locations inside Europe, where Open-Meteo publishes pollen data · ⚙️ derived from the groups above: each sensor exists when the group it reads from is enabled, and a few are disabled by default because they are niche.

Everything is available regardless — a disabled group is one switch away in Configure.


Installation

Via HACS (recommended)

Outdoor Environment is part of the HACS default store — no custom repository needed.

  1. Open HACS in Home Assistant
  2. Search for Outdoor Environment
  3. Download, then restart Home Assistant
  4. Go to Settings → Devices & Services → Add Integration → Outdoor Environment

Open in HACS

Manual (only if you don't run HACS)

Copy custom_components/outdoor_environment/ to your HA custom_components/ directory and restart.


Configuration

Go to Settings → Devices & Services → Add Integration → Outdoor Environment.

Step 1 (required): Choose location and which sensor groups to enable.

Step 2 (optional): Set solar panel tilt and azimuth to unlock the GTI sensor (great for PV owners).

All settings are adjustable later via Configure (options flow), including update intervals, irrigation threshold, and advanced sensor groups.


Automation examples

Close blinds when grass pollen is high

automation:
  trigger:
    - platform: numeric_state
      entity_id: sensor.outdoor_pollen_grass
      above: 30
  action:
    - service: cover.close_cover
      target:
        entity_id: cover.living_room_blinds

Open windows when air quality and wind are good

automation:
  trigger:
    - platform: numeric_state
      entity_id: sensor.outdoor_ventilation_score
      above: 60
  condition:
    - condition: template
      value_template: >
        {{ state_attr('sensor.outdoor_ventilation_score', 'recommendation') == 'ventilate' }}
  action:
    - service: fan.turn_on
      target:
        entity_id: fan.hrv_unit

Trigger irrigation when ET0 deficit exceeds threshold

automation:
  trigger:
    - platform: state
      entity_id: sensor.outdoor_irrigation_needed
      to: "True"
  action:
    - service: switch.turn_on
      target:
        entity_id: switch.garden_irrigation

Notify when UV protection is needed

automation:
  trigger:
    - platform: template
      value_template: >
        {{ state_attr('sensor.outdoor_uv_index', 'protection_required') == true }}
  action:
    - service: notify.mobile_app
      data:
        message: "UV index {{ states('sensor.outdoor_uv_index') }} — apply sunscreen!"

Data sources

API Endpoint Update interval
Open-Meteo Air Quality air-quality-api.open-meteo.com 60 min (configurable 30–360)
Open-Meteo Forecast api.open-meteo.com 15 min (configurable 10–60)

Data licensed under CC BY 4.0 — attribution: Data provided by Open-Meteo.


Development

python -m venv .venv && source .venv/bin/activate
pip install -r requirements_test.txt
pytest --cov=custom_components/outdoor_environment

Outdoor Environment icon
Made with ☀️ for the Home Assistant community

About

Home Assistant custom integration — 80+ outdoor environment sensors via Open-Meteo. Air quality, UV, weather, pollen, solar radiation, agro metrics. No API key required.

Topics

Resources

Stars

13 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages