{ "title": "Heating MPC", "config": { "step": { "user": { "title": "Heating MPC — room inputs", "description": "Choose thermostat, read-only relay and room sensors. This integration NEVER commands the heater.", "data": { "climate_entity": "Existing Generic Thermostat", "heater_entity": "Physical heating switch (read-only)", "room_entities": "Individual room temperature sensors", "room_max_age_minutes": "Maximum room sensor report age (minutes)", "weather_max_age_minutes": "Maximum weather sensor report age (minutes)", "room_stale_use_last_value": "Keep using the last value of a room sensor that stopped reporting" }, "data_description": { "room_stale_use_last_value": "Off: a room sensor older than its report-age limit is left out and the other rooms are re-weighted. On: its last value is still used, for up to 24 hours without a report; for sensors that report only when the value changes. Unavailable or invalid room sensors are always left out. Nothing pauses unless no room is usable." } }, "weather": { "title": "Primary weather sources", "description": "Choose as many sensors per metric as needed and arrange them in priority order. If the preferred source is unavailable, the next one is used automatically. Outdoor temperature is mandatory; wind and cloud coverage are diagnostic-only in this version.", "data": { "outside_temperature_sources": "Outdoor temperature sources (ordered: preferred first)", "outside_wind_sources": "Wind speed sources (optional)", "outside_clouds_sources": "Cloud coverage sources (optional)" } }, "weather_extra": { "title": "Additional weather sources", "description": "Additional weather inputs are optional and used only for comparison/diagnostics in v0.2; they do not yet change MPC predictions.", "data": { "outside_humidity_sources": "Outdoor humidity sources (optional)", "outside_feelslike_sources": "Feels-like temperature sources (optional)", "outside_pressure_sources": "Atmospheric pressure sources (optional)", "outside_visibility_sources": "Visibility sources (optional)", "outside_rain_sources": "Rain sources (optional)", "outside_snow_sources": "Snow sources (optional)" } }, "weights": { "title": "Room priorities", "description": "Each room has a relative comfort weight between 0.1 and 10; sensor entity is shown by each field." } }, "error": { "invalid_rooms": "Select 1–12 distinct room sensors.", "invalid_weather": "Select at least one outdoor temperature sensor, distinct from room sensors." }, "abort": { "already_configured": "Heating MPC is already configured." } }, "options": { "step": { "init": { "title": "Heating MPC options", "description": "Change room sensors and controller settings. This integration remains shadow-only.", "data": { "climate_entity": "Existing Generic Thermostat", "heater_entity": "Physical heating switch (read-only)", "room_entities": "Individual room temperature sensors", "horizon_minutes": "Prediction horizon (minutes)", "minimum_on_minutes": "Minimum ON time (minutes)", "minimum_off_minutes": "Minimum OFF time (minutes)", "switching_cost": "Switching cost", "heating_cost": "Heating runtime cost", "comfort_band": "Comfort tolerance (°C)", "room_max_age_minutes": "Maximum room sensor report age (minutes)", "weather_max_age_minutes": "Maximum weather sensor report age (minutes)", "room_stale_use_last_value": "Keep using the last value of a room sensor that stopped reporting" }, "data_description": { "room_stale_use_last_value": "Off: a room sensor older than its report-age limit is left out and the other rooms are re-weighted. On: its last value is still used, for up to 24 hours without a report; for sensors that report only when the value changes. Unavailable or invalid room sensors are always left out. Nothing pauses unless no room is usable." } }, "weather": { "title": "Weather source priority", "description": "Choose as many sensors per metric as needed and arrange them in priority order. If the preferred source is unavailable, the next one is used automatically. Outdoor temperature is mandatory; wind and cloud coverage are diagnostic-only in this version.", "data": { "outside_temperature_sources": "Outdoor temperature sources (ordered: preferred first)", "outside_wind_sources": "Wind speed sources (optional)", "outside_clouds_sources": "Cloud coverage sources (optional)" } }, "weather_extra": { "title": "Additional weather sensors", "description": "Additional weather inputs are optional and used only for comparison/diagnostics in v0.2; they do not yet change MPC predictions.", "data": { "outside_humidity_sources": "Outdoor humidity sources (optional)", "outside_feelslike_sources": "Feels-like temperature sources (optional)", "outside_pressure_sources": "Atmospheric pressure sources (optional)", "outside_visibility_sources": "Visibility sources (optional)", "outside_rain_sources": "Rain sources (optional)", "outside_snow_sources": "Snow sources (optional)" } }, "weights": { "title": "Room priorities", "description": "Weights determine relative comfort importance, not physics coefficients." } }, "error": { "invalid_rooms": "Select 1–12 distinct room sensors.", "invalid_weather": "Select at least one outdoor temperature sensor, distinct from room sensors." } } }