"""Configuration constants for Heating MPC.""" DOMAIN = "heating_mpc" CONF_CLIMATE = "climate_entity" CONF_HEATER = "heater_entity" CONF_OUTSIDE = "outside_entity" # v0.1 legacy single temperature source CONF_ROOMS = "room_entities" CONF_WEIGHTS = "weights" CONF_HORIZON = "horizon_minutes" CONF_MIN_ON = "minimum_on_minutes" CONF_MIN_OFF = "minimum_off_minutes" CONF_SWITCH_COST = "switching_cost" CONF_HEAT_COST = "heating_cost" CONF_BAND = "comfort_band" # Each source list is ordered: first valid sensor wins; remaining are fallbacks. WEATHER_SOURCES = { "temperature": "outside_temperature_sources", "wind": "outside_wind_sources", "clouds": "outside_clouds_sources", "humidity": "outside_humidity_sources", "feels_like": "outside_feelslike_sources", "pressure": "outside_pressure_sources", "visibility": "outside_visibility_sources", "rain": "outside_rain_sources", "snow": "outside_snow_sources", } WEATHER_MAIN = ("temperature", "wind", "clouds") WEATHER_EXTRA = ("humidity", "feels_like", "pressure", "visibility", "rain", "snow") DEFAULTS = { CONF_HORIZON: 120, CONF_MIN_ON: 15, CONF_MIN_OFF: 10, CONF_SWITCH_COST: 0.15, CONF_HEAT_COST: 0.025, CONF_BAND: 0.15, } SAMPLE_MINUTES = 5 BLOCK_MINUTES = 15