AutomationDataset/schellekensonline/description-ready.json

1319 lines
64 KiB
JSON

[
{
"id": "dhw_e_price_negative_auto",
"automation": "- id: dhw_e_price_negative_auto\n alias: DHW e-price negative auto\n description: Set DHW booster on when E-price is negative\n mode: single\n triggers:\n - trigger: state\n entity_id: sensor.nord_pool_nl_current_prices_including_tax\n conditions:\n - condition: template\n value_template: '{{ (states(''sensor.nord_pool_nl_current_prices_including_tax'')\n | float(0) ) < 0 }}'\n actions:\n - action: switch.turn_on\n entity_id: switch.dhw_booster_2_switch",
"config": [
{
"name": "Nord Pool NL current prices including tax sensor",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_current_prices_including_tax",
"device_id": null
}
},
{
"name": "DHW booster 2 switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.dhw_booster_2_switch",
"device_id": null
}
},
{
"name": "Nord Pool NL current price",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_current_price",
"device_id": null
}
}
]
},
{
"id": "dhw_e_price_positive_auto",
"automation": "- id: dhw_e_price_positive_auto\n alias: DHW e-price negative auto\n description: Set DHW booster on when E-price is negative\n mode: single\n triggers:\n - trigger: time_pattern\n minutes: /5\n - trigger: state\n entity_id: sensor.nord_pool_nl_current_prices_including_tax\n conditions:\n - condition: template\n value_template: '{{ (states(''sensor.nord_pool_nl_current_prices_including_tax'')\n | float(0) ) >= 0 }}'\n actions:\n - action: switch.turn_off\n entity_id: switch.dhw_booster_2_switch",
"config": [
{
"name": "Nord Pool NL current prices including tax sensor",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_current_prices_including_tax",
"device_id": null
}
},
{
"name": "DHW booster 2 switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.dhw_booster_2_switch",
"device_id": null
}
},
{
"name": "Nord Pool NL current price",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_current_price",
"device_id": null
}
}
]
},
{
"id": "dhw_circulation_on_auto",
"automation": "- id: dhw_circulation_on_auto\n alias: DHW circulation on auto\n description: Set the DHW circulation state to on\n mode: restart\n triggers:\n - trigger: state\n entity_id: binary_sensor.therma_v_dhw_heating_state\n to: 'on'\n for:\n minutes: 10\n - trigger: state\n entity_id: binary_sensor.therma_v_dhw_booster_state\n to: 'on'\n for:\n minutes: 20\n - trigger: state\n entity_id: binary_sensor.therma_v_dhw_booster_2_state_s1\n to: 'on'\n for:\n minutes: 20\n conditions:\n and:\n - condition: state\n entity_id: binary_sensor.therma_v_defrost_state\n state: 'off'\n - or:\n - condition: state\n entity_id: binary_sensor.therma_v_dhw_heating_state\n state: 'on'\n - condition: state\n entity_id: binary_sensor.therma_v_dhw_booster_state\n state: 'on'\n - condition: state\n entity_id: binary_sensor.therma_v_dhw_booster_2_state_s1\n state: 'on'\n actions:\n - action: switch.turn_on\n target:\n entity_id: switch.dhw_circulation_switch",
"config": [
{
"name": "Therma V DHW heating state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_dhw_heating_state",
"device_id": null
}
},
{
"name": "Therma V DHW booster state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_dhw_booster_state",
"device_id": null
}
},
{
"name": "Therma V DHW booster 2 state S1",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_dhw_booster_2_state_s1",
"device_id": null
}
},
{
"name": "Therma V defrost state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_defrost_state",
"device_id": null
}
},
{
"name": "DHW circulation switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.dhw_circulation_switch",
"device_id": null
}
}
]
},
{
"id": "dhw_circulation_off_auto",
"automation": "- id: dhw_circulation_off_auto\n alias: dhw_circulation_off_auto\n description: Set the DHW circulation state to off\n mode: restart\n triggers:\n - trigger: time_pattern\n minutes: /5\n - trigger: state\n entity_id: binary_sensor.therma_v_dhw_heating_state\n - trigger: state\n entity_id: binary_sensor.therma_v_dhw_booster_state\n - trigger: state\n entity_id: binary_sensor.therma_v_dhw_booster_2_state_s1\n conditions:\n - condition: state\n entity_id: binary_sensor.therma_v_dhw_booster_state\n state: 'off'\n - condition: state\n entity_id: binary_sensor.therma_v_dhw_heating_state\n state: 'off'\n - condition: state\n entity_id: binary_sensor.therma_v_dhw_booster_2_state_s1\n state: 'off'\n actions:\n - action: switch.turn_off\n target:\n entity_id: switch.dhw_circulation_switch",
"config": [
{
"name": "Therma V DHW heating state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_dhw_heating_state",
"device_id": null
}
},
{
"name": "Therma V DHW booster state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_dhw_booster_state",
"device_id": null
}
},
{
"name": "Therma V DHW booster 2 state S1",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_dhw_booster_2_state_s1",
"device_id": null
}
},
{
"name": "DHW circulation switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.dhw_circulation_switch",
"device_id": null
}
}
]
},
{
"id": "goodwe_e_price_negative_auto",
"automation": "- id: goodwe_e_price_negative_auto\n alias: Goodwe e-price negative auto\n description: Set inverter grid_limit to 0% when E-price is negative, E-price from\n ENTSO-e corrected to incl tax\n mode: single\n max_exceeded: silent\n triggers:\n - trigger: time_pattern\n seconds: /21\n conditions:\n - condition: state\n entity_id: sun.sun\n state: above_horizon\n - condition: template\n value_template: '{{ has_value(''sensor.goodwe_export_power_limit'') }}'\n - condition: template\n value_template: '{{ not is_state(''input_select.goodwe_export_strategy_select'',\n state_attr(''input_select.goodwe_export_strategy_select'', ''options'')[ 0 ]\n ) }}'\n actions:\n - variables:\n rated_power: 8000\n update_ratio: 0.8\n zero_on_meter: '{{ max(min( (states(''input_number.goodwe_grid_export_limit'')\n | float(0)) + update_ratio*100/rated_power*(states(''sensor.p1_meter_active_power_filtered'')\n | float(0)) ,100),0) }}'\n balanced_max: '{{ max(min( 100.0 - 100.0*(states(''sensor.nord_pool_nl_current_price'')\n | float(0) | abs) / ((states(''sensor.nord_pool_nl_current_prices_including_tax'')\n | float(0) | abs) + (states(''sensor.nord_pool_nl_current_price'') | float(0)\n | abs)) ,100),0) }}'\n - choose:\n - conditions:\n - condition: numeric_state\n entity_id: sensor.nord_pool_nl_current_prices_including_tax\n below: -0.001\n sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.goodwe_grid_export_limit\n data:\n value: 0.0\n - conditions:\n - condition: template\n value_template: '{{ is_state(''input_select.goodwe_export_strategy_select'',\n state_attr(''input_select.goodwe_export_strategy_select'', ''options'')[\n 1 ] ) }}'\n - condition: numeric_state\n entity_id: sensor.nord_pool_nl_current_price\n below: -0.001\n sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.goodwe_grid_export_limit\n data:\n value: 100\n - conditions:\n - condition: template\n value_template: '{{ is_state(''input_select.goodwe_export_strategy_select'',\n state_attr(''input_select.goodwe_export_strategy_select'', ''options'')[\n 2 ] ) }}'\n - condition: numeric_state\n entity_id: sensor.nord_pool_nl_current_price\n below: -0.001\n sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.goodwe_grid_export_limit\n data:\n value: '{{ max(balanced_max,zero_on_meter) | round(1) }}'\n - conditions:\n - condition: or\n conditions:\n - condition: and\n conditions:\n - condition: template\n value_template: '{{ is_state(''input_select.goodwe_export_strategy_select'',\n state_attr(''input_select.goodwe_export_strategy_select'', ''options'')[\n 3 ] ) }}'\n - condition: numeric_state\n entity_id: sensor.nord_pool_nl_current_price\n below: -0.001\n - condition: template\n value_template: '{{ is_state(''input_select.goodwe_export_strategy_select'',\n state_attr(''input_select.goodwe_export_strategy_select'', ''options'')[\n 4 ] ) }}'\n sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.goodwe_grid_export_limit\n data:\n value: '{{ zero_on_meter | round(1) }}'\n default:\n - action: input_number.set_value\n target:\n entity_id: input_number.goodwe_grid_export_limit\n data:\n value: 100",
"config": [
{
"name": "Nord Pool NL current prices including tax sensor",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_current_prices_including_tax",
"device_id": null
}
},
{
"name": "Sun sun",
"room": "outside",
"type": "sun",
"id": {
"entity_id": "sun.sun",
"device_id": null
}
},
{
"name": "Goodwe export power limit",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.goodwe_export_power_limit",
"device_id": null
}
},
{
"name": "Goodwe export strategy select",
"room": "utility",
"type": "input_select",
"id": {
"entity_id": "input_select.goodwe_export_strategy_select",
"device_id": null
}
},
{
"name": "Nord Pool NL current price",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_current_price",
"device_id": null
}
},
{
"name": "Goodwe grid export limit",
"room": "utility",
"type": "input_number",
"id": {
"entity_id": "input_number.goodwe_grid_export_limit",
"device_id": null
}
},
{
"name": "P1 meter active power filtered",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.p1_meter_active_power_filtered",
"device_id": null
}
}
]
},
{
"id": "goodwe_update_grid_export_limit_auto",
"automation": "- id: goodwe_update_grid_export_limit_auto\n alias: Goodwe update grid export limit auto\n description: Synchronizes the Goodwe grid export limit input number and modbus state\n mode: single\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id:\n - input_number.goodwe_grid_export_limit\n id: grid_export_limit_number_trig\n - trigger: template\n value_template: '{{ (states(''sensor.goodwe_export_power_limit'') | float(0) -\n states(''input_number.goodwe_grid_export_limit'') | float(0)) | abs > 1 }}'\n for: 00:15:00\n id: grid_export_limit_catch_trig\n conditions:\n - condition: state\n entity_id: sun.sun\n state: above_horizon\n - condition: template\n value_template: '{{ has_value(''sensor.goodwe_export_power_limit'') }}'\n actions:\n - variables:\n input_value: '{{ states(\"input_number.goodwe_grid_export_limit\") | round(0)\n }}'\n - action: modbus.write_register\n data_template:\n address: 292\n slave: 1\n hub: modbus_gateway_goodwe\n value: '{{ [ min(max( input_value | round(0) ,0),100) ] }}'",
"config": [
{
"name": "Sun sun",
"room": "outside",
"type": "sun",
"id": {
"entity_id": "sun.sun",
"device_id": null
}
},
{
"name": "Goodwe export power limit",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.goodwe_export_power_limit",
"device_id": null
}
},
{
"name": "Goodwe grid export limit",
"room": "utility",
"type": "input_number",
"id": {
"entity_id": "input_number.goodwe_grid_export_limit",
"device_id": null
}
}
]
},
{
"id": "goodwe_scan_modbus_auto",
"automation": "- id: goodwe_scan_modbus_auto\n alias: Goodwe scan modbus auto\n description: Polls all sensor entities for modbus_gateway_goodwe\n mode: single\n max_exceeded: silent\n triggers:\n - trigger: time_pattern\n seconds: /20\n - trigger: homeassistant\n event: start\n conditions:\n - condition: state\n entity_id: sun.sun\n state: above_horizon\n actions:\n - variables:\n goodwe_list: '{{ states.sensor | selectattr(''entity_id'', ''search'', ''sensor.goodwe_'')\n | list | map(attribute=''entity_id'') | list }}'\n other_list:\n - sensor.today_s_pv_generation\n - sensor.total_pv_generation\n - action: homeassistant.update_entity\n target:\n entity_id: '{{goodwe_list+other_list}}'",
"config": [
{
"name": "Sun sun",
"room": "outside",
"type": "sun",
"id": {
"entity_id": "sun.sun",
"device_id": null
}
},
{
"name": "Today's PV generation",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.today_s_pv_generation",
"device_id": null
}
},
{
"name": "Total PV generation",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.total_pv_generation",
"device_id": null
}
}
]
},
{
"id": "heatmeisters_on_at_startup_auto",
"automation": "- id: heatmeisters_on_at_startup_auto\n alias: Heatmeisters ON at Startup auto\n description: Turns on the heatmeisters for some minutes after start-up\n mode: restart\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: binary_sensor.therma_v_compressor_state\n from: 'off'\n to: 'on'\n - trigger: state\n entity_id: binary_sensor.therma_v_defrost_state\n from: 'on'\n to: 'off'\n conditions:\n - condition: state\n entity_id: switch.therma_v_heating_cooling_on_off\n state: 'on'\n - condition: state\n entity_id: binary_sensor.therma_v_defrost_state\n state: 'off'\n - condition: state\n entity_id: binary_sensor.therma_v_dhw_heating_state\n state: 'off'\n actions:\n - sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.heatmeisters_master_fan_state\n data:\n value: '{{ states(''input_number.heatbooster_master_bedroom_fan_speed'') }}'\n - action: input_number.set_value\n target:\n entity_id: input_number.heatmeisters_chris_fan_state\n data:\n value: '{{ states(''input_number.heatbooster_chris_bedroom_fan_speed'') }}'\n - action: input_number.set_value\n target:\n entity_id: input_number.heatmeisters_julia_fan_state\n data:\n value: '{{ states(''input_number.heatbooster_julia_bedroom_fan_speed'') }}'\n - action: input_number.set_value\n target:\n entity_id: input_number.heatmeisters_computer_fan_state\n data:\n value: '{{ states(''input_number.heatbooster_computer_room_fan_speed'') }}'\n - conditions:\n - condition: numeric_state\n entity_id: input_number.heatbooster_master_bedroom_fan_speed\n below: input_number.heatmeisters_start_up_fan_speed\n sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_master_bedroom_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_start_up_fan_speed'') }}'\n - conditions:\n - condition: numeric_state\n entity_id: input_number.heatbooster_chris_bedroom_fan_speed\n below: input_number.heatmeisters_start_up_fan_speed\n sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_chris_bedroom_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_start_up_fan_speed'') }}'\n - conditions:\n - condition: numeric_state\n entity_id: input_number.heatbooster_julia_bedroom_fan_speed\n below: input_number.heatmeisters_start_up_fan_speed\n sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_julia_bedroom_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_start_up_fan_speed'') }}'\n - conditions:\n - condition: numeric_state\n entity_id: input_number.heatbooster_computer_room_fan_speed\n below: input_number.heatmeisters_start_up_fan_speed\n sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_computer_room_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_start_up_fan_speed'') }}'\n - delay:\n minutes: 15\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_master_bedroom_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_master_fan_state'') }}'\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_chris_bedroom_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_chris_fan_state'') }}'\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_julia_bedroom_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_julia_fan_state'') }}'\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_computer_room_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_computer_fan_state'') }}'",
"config": [
{
"name": "Therma V DHW heating state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_dhw_heating_state",
"device_id": null
}
},
{
"name": "Therma V defrost state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_defrost_state",
"device_id": null
}
},
{
"name": "Therma V compressor state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_compressor_state",
"device_id": null
}
},
{
"name": "Therma V heating cooling on off switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.therma_v_heating_cooling_on_off",
"device_id": null
}
},
{
"name": "Heatmeisters master fan state",
"room": "master_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_master_fan_state",
"device_id": null
}
},
{
"name": "Heatbooster master bedroom fan speed",
"room": "master_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatbooster_master_bedroom_fan_speed",
"device_id": null
}
},
{
"name": "Heatmeisters Chris fan state",
"room": "chris_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_chris_fan_state",
"device_id": null
}
},
{
"name": "Heatbooster Chris bedroom fan speed",
"room": "chris_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatbooster_chris_bedroom_fan_speed",
"device_id": null
}
},
{
"name": "Heatmeisters Julia fan state",
"room": "julia_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_julia_fan_state",
"device_id": null
}
},
{
"name": "Heatbooster Julia bedroom fan speed",
"room": "julia_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatbooster_julia_bedroom_fan_speed",
"device_id": null
}
},
{
"name": "Heatmeisters computer fan state",
"room": "computer_room",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_computer_fan_state",
"device_id": null
}
},
{
"name": "Heatbooster computer room fan speed",
"room": "computer_room",
"type": "input_number",
"id": {
"entity_id": "input_number.heatbooster_computer_room_fan_speed",
"device_id": null
}
},
{
"name": "Heatmeisters start up fan speed",
"room": "utility",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_start_up_fan_speed",
"device_id": null
}
}
]
},
{
"id": "heatmeisters_on_when_cooling_auto",
"automation": "- id: heatmeisters_on_when_cooling_auto\n alias: Heatmeisters ON when cooling auto\n description: Turns ON the heatmeisters when cooling\n mode: restart\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: binary_sensor.therma_v_compressor_state\n from: 'off'\n to: 'on'\n - trigger: state\n entity_id: binary_sensor.therma_v_defrost_state\n from: 'on'\n to: 'off'\n - trigger: numeric_state\n entity_id: automation.heatmeisters_on_at_startup_auto\n attribute: current\n below: 1\n conditions:\n - condition: state\n entity_id: switch.therma_v_heating_cooling_on_off\n state: 'on'\n - condition: state\n entity_id: binary_sensor.therma_v_defrost_state\n state: 'off'\n - condition: state\n entity_id: binary_sensor.therma_v_dhw_heating_state\n state: 'off'\n - condition: template\n value_template: '{{ is_state_attr(''climate.therma_v_heating_cooling'', ''hvac_modes'',\n ''cool'') }}'\n - condition: numeric_state\n entity_id: automation.heatmeisters_on_at_startup_auto\n attribute: current\n below: 1\n actions:\n - sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.heatmeisters_master_fan_state\n data:\n value: '{{ states(''input_number.heatbooster_master_bedroom_fan_speed'') }}'\n - action: input_number.set_value\n target:\n entity_id: input_number.heatmeisters_chris_fan_state\n data:\n value: '{{ states(''input_number.heatbooster_chris_bedroom_fan_speed'') }}'\n - action: input_number.set_value\n target:\n entity_id: input_number.heatmeisters_julia_fan_state\n data:\n value: '{{ states(''input_number.heatbooster_julia_bedroom_fan_speed'') }}'\n - action: input_number.set_value\n target:\n entity_id: input_number.heatmeisters_computer_fan_state\n data:\n value: '{{ states(''input_number.heatbooster_computer_room_fan_speed'') }}'\n - conditions:\n - condition: numeric_state\n entity_id: input_number.heatbooster_master_bedroom_fan_speed\n below: input_number.heatmeisters_cooling_fan_speed\n sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_master_bedroom_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_cooling_fan_speed'') }}'\n - conditions:\n - condition: numeric_state\n entity_id: input_number.heatbooster_chris_bedroom_fan_speed\n below: input_number.heatmeisters_cooling_fan_speed\n sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_chris_bedroom_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_cooling_fan_speed'') }}'\n - conditions:\n - condition: numeric_state\n entity_id: input_number.heatbooster_julia_bedroom_fan_speed\n below: input_number.heatmeisters_cooling_fan_speed\n sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_julia_bedroom_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_cooling_fan_speed'') }}'\n - conditions:\n - condition: numeric_state\n entity_id: input_number.heatbooster_computer_room_fan_speed\n below: input_number.heatmeisters_cooling_fan_speed\n sequence:\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_computer_room_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_cooling_fan_speed'') }}'",
"config": [
{
"name": "Therma V DHW heating state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_dhw_heating_state",
"device_id": null
}
},
{
"name": "Therma V defrost state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_defrost_state",
"device_id": null
}
},
{
"name": "Therma V compressor state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_compressor_state",
"device_id": null
}
},
{
"name": "Therma V heating cooling on off switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.therma_v_heating_cooling_on_off",
"device_id": null
}
},
{
"name": "Heatmeisters master fan state",
"room": "master_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_master_fan_state",
"device_id": null
}
},
{
"name": "Heatbooster master bedroom fan speed",
"room": "master_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatbooster_master_bedroom_fan_speed",
"device_id": null
}
},
{
"name": "Heatmeisters Chris fan state",
"room": "chris_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_chris_fan_state",
"device_id": null
}
},
{
"name": "Heatbooster Chris bedroom fan speed",
"room": "chris_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatbooster_chris_bedroom_fan_speed",
"device_id": null
}
},
{
"name": "Heatmeisters Julia fan state",
"room": "julia_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_julia_fan_state",
"device_id": null
}
},
{
"name": "Heatbooster Julia bedroom fan speed",
"room": "julia_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatbooster_julia_bedroom_fan_speed",
"device_id": null
}
},
{
"name": "Heatmeisters computer fan state",
"room": "computer_room",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_computer_fan_state",
"device_id": null
}
},
{
"name": "Heatbooster computer room fan speed",
"room": "computer_room",
"type": "input_number",
"id": {
"entity_id": "input_number.heatbooster_computer_room_fan_speed",
"device_id": null
}
},
{
"name": "Heatmeisters cooling fan speed",
"room": "utility",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_cooling_fan_speed",
"device_id": null
}
},
{
"name": "Therma V heating cooling climate",
"room": "utility",
"type": "climate",
"id": {
"entity_id": "climate.therma_v_heating_cooling",
"device_id": null
}
},
{
"name": "Heatmeisters on at startup automation",
"room": "utility",
"type": "automation",
"id": {
"entity_id": "automation.heatmeisters_on_at_startup_auto",
"device_id": null
}
}
]
},
{
"id": "heatmeisters_off_when_cooling_stops_auto",
"automation": "- id: heatmeisters_off_when_cooling_stops_auto\n alias: Heatmeisters OFF when cooling stops auto\n description: Turns OFF the heatmeisters when cooling stops\n mode: restart\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: binary_sensor.therma_v_compressor_state\n from: 'on'\n to: 'off'\n conditions:\n - condition: state\n entity_id: switch.therma_v_heating_cooling_on_off\n state: 'on'\n - condition: state\n entity_id: binary_sensor.therma_v_defrost_state\n state: 'off'\n - condition: state\n entity_id: binary_sensor.therma_v_dhw_heating_state\n state: 'off'\n - condition: template\n value_template: '{{ is_state_attr(''climate.therma_v_heating_cooling'', ''hvac_modes'',\n ''cool'') }}'\n actions:\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_master_bedroom_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_master_fan_state'') }}'\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_chris_bedroom_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_chris_fan_state'') }}'\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_julia_bedroom_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_julia_fan_state'') }}'\n - action: input_number.set_value\n target:\n entity_id: input_number.heatbooster_computer_room_fan_speed\n data:\n value: '{{ states(''input_number.heatmeisters_computer_fan_state'') }}'",
"config": [
{
"name": "Therma V DHW heating state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_dhw_heating_state",
"device_id": null
}
},
{
"name": "Therma V defrost state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_defrost_state",
"device_id": null
}
},
{
"name": "Therma V compressor state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_compressor_state",
"device_id": null
}
},
{
"name": "Therma V heating cooling on off switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.therma_v_heating_cooling_on_off",
"device_id": null
}
},
{
"name": "Heatmeisters master fan state",
"room": "master_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_master_fan_state",
"device_id": null
}
},
{
"name": "Heatbooster master bedroom fan speed",
"room": "master_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatbooster_master_bedroom_fan_speed",
"device_id": null
}
},
{
"name": "Heatmeisters Chris fan state",
"room": "chris_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_chris_fan_state",
"device_id": null
}
},
{
"name": "Heatbooster Chris bedroom fan speed",
"room": "chris_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatbooster_chris_bedroom_fan_speed",
"device_id": null
}
},
{
"name": "Heatmeisters Julia fan state",
"room": "julia_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_julia_fan_state",
"device_id": null
}
},
{
"name": "Heatbooster Julia bedroom fan speed",
"room": "julia_bedroom",
"type": "input_number",
"id": {
"entity_id": "input_number.heatbooster_julia_bedroom_fan_speed",
"device_id": null
}
},
{
"name": "Heatmeisters computer fan state",
"room": "computer_room",
"type": "input_number",
"id": {
"entity_id": "input_number.heatmeisters_computer_fan_state",
"device_id": null
}
},
{
"name": "Heatbooster computer room fan speed",
"room": "computer_room",
"type": "input_number",
"id": {
"entity_id": "input_number.heatbooster_computer_room_fan_speed",
"device_id": null
}
},
{
"name": "Therma V heating cooling climate",
"room": "utility",
"type": "climate",
"id": {
"entity_id": "climate.therma_v_heating_cooling",
"device_id": null
}
}
]
},
{
"id": "holiday_mode_lights_on_auto",
"automation": "- id: holiday_mode_lights_on_auto\n alias: Holiday mode lights on auto\n description: Turns on the lights automatically when on holiday\n mode: single\n max_exceeded: silent\n triggers:\n - trigger: time\n at: input_datetime.lights_on_time\n conditions:\n - condition: state\n entity_id: input_boolean.holiday_mode_on\n state: 'on'\n actions:\n - action: light.turn_on\n target:\n entity_id: light.ikea_of_sweden_tradfri_bulb_e27_ww_g95_cl_470lm_light\n data:\n brightness: 254",
"config": [
{
"name": "Lights on time",
"room": "living_room",
"type": "input_datetime",
"id": {
"entity_id": "input_datetime.lights_on_time",
"device_id": null
}
},
{
"name": "Holiday mode on",
"room": "living_room",
"type": "input_boolean",
"id": {
"entity_id": "input_boolean.holiday_mode_on",
"device_id": null
}
},
{
"name": "IKEA TRÅDFRI bulb light",
"room": "living_room",
"type": "light",
"id": {
"entity_id": "light.ikea_of_sweden_tradfri_bulb_e27_ww_g95_cl_470lm_light",
"device_id": null
}
}
]
},
{
"id": "holiday_mode_lights_off_auto",
"automation": "- id: holiday_mode_lights_off_auto\n alias: Holiday mode lights off auto\n description: Turns off the lights automatically when on holiday\n mode: single\n max_exceeded: silent\n triggers:\n - trigger: time\n at: input_datetime.lights_off_time\n conditions:\n - condition: state\n entity_id: input_boolean.holiday_mode_on\n state: 'on'\n actions:\n - action: light.turn_off\n target:\n entity_id: light.ikea_of_sweden_tradfri_bulb_e27_ww_g95_cl_470lm_light",
"config": [
{
"name": "Holiday mode on",
"room": "living_room",
"type": "input_boolean",
"id": {
"entity_id": "input_boolean.holiday_mode_on",
"device_id": null
}
},
{
"name": "IKEA TRÅDFRI bulb light",
"room": "living_room",
"type": "light",
"id": {
"entity_id": "light.ikea_of_sweden_tradfri_bulb_e27_ww_g95_cl_470lm_light",
"device_id": null
}
},
{
"name": "Lights off time",
"room": "living_room",
"type": "input_datetime",
"id": {
"entity_id": "input_datetime.lights_off_time",
"device_id": null
}
}
]
},
{
"id": "cooling_off_based_on_dewpoint_auto",
"automation": "- id: cooling_off_based_on_dewpoint_auto\n alias: Cooling off based on dewpoint auto\n description: Switch off cooling if livingroom dewpoint is above return temperatures\n mode: restart\n triggers:\n - trigger: state\n entity_id:\n - sensor.shelly_plus_ht1_dewpoint\n - trigger: state\n entity_id:\n - sensor.openweathermap_dewpoint\n conditions:\n - condition: state\n entity_id: climate.therma_v_heating_cooling\n state: cool\n - condition: template\n value_template: '{{ ( states(''sensor.shelly_plus_ht1_dewpoint'') | float(0) )\n > (states(''sensor.therma_v_buffer_temperatures_return_from_heating_t3'') |\n float(0) ) }}'\n - condition: template\n value_template: '{{ ( states(''sensor.shelly_plus_ht1_dewpoint'') | float(0) )\n > (states(''sensor.therma_v_buffer_temperatures_return_to_heatpump_t4'') | float(0)\n ) }}'\n actions:\n - action: switch.turn_off\n entity_id: switch.therma_v_silent_mode\n - action: switch.turn_off\n entity_id: switch.therma_v_heating_cooling_on_off",
"config": [
{
"name": "Therma V heating cooling on off switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.therma_v_heating_cooling_on_off",
"device_id": null
}
},
{
"name": "Therma V heating cooling climate",
"room": "utility",
"type": "climate",
"id": {
"entity_id": "climate.therma_v_heating_cooling",
"device_id": null
}
},
{
"name": "Shelly Plus HT1 dewpoint",
"room": "living_room",
"type": "sensor",
"id": {
"entity_id": "sensor.shelly_plus_ht1_dewpoint",
"device_id": null
}
},
{
"name": "OpenWeatherMap dewpoint",
"room": "outside",
"type": "sensor",
"id": {
"entity_id": "sensor.openweathermap_dewpoint",
"device_id": null
}
},
{
"name": "Therma V buffer temperatures return from heating T3",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.therma_v_buffer_temperatures_return_from_heating_t3",
"device_id": null
}
},
{
"name": "Therma V buffer temperatures return to heatpump T4",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.therma_v_buffer_temperatures_return_to_heatpump_t4",
"device_id": null
}
},
{
"name": "Therma V silent mode switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.therma_v_silent_mode",
"device_id": null
}
}
]
},
{
"id": "ess_based_on_e_price_negative_auto",
"automation": "- id: ess_based_on_e_price_negative_auto\n alias: ESS based on e-price negative auto\n description: Set the ESS state of the Therma V based on negative e-price\n mode: restart\n triggers:\n - trigger: time_pattern\n minutes: /30\n - trigger: state\n entity_id: sensor.nord_pool_nl_current_prices_including_tax\n conditions:\n - condition: template\n value_template: '{{ (states(''sensor.nord_pool_nl_current_prices_including_tax'')\n | float(0) ) <= 0 }}'\n actions:\n - delay:\n hours: 0\n minutes: 5\n seconds: 0\n - action: switch.turn_on\n target:\n entity_id: switch.therma_v_heating_cooling_on_off\n - action: switch.turn_on\n target:\n entity_id: switch.therma_v_dhw_on_off\n - action: input_boolean.turn_on\n target:\n entity_id: input_boolean.silent_mode_startup\n - choose:\n - conditions:\n - condition: numeric_state\n entity_id: sensor.current_percentage_of_energy_price\n below: 5\n - condition: template\n value_template: '{{ (states(''sensor.nord_pool_nl_next_price'') | float(0)\n ) >= (states(''sensor.nord_pool_nl_current_price'') | float(0) ) }}'\n sequence:\n - action: input_select.select_option\n target:\n entity_id: input_select.therma_v_ess_select\n data:\n option: '{{ state_attr(\"input_select.therma_v_ess_select\", \"options\")[ 5\n ] }}'\n default:\n - action: input_select.select_option\n target:\n entity_id: input_select.therma_v_ess_select\n data:\n option: '{{ state_attr(\"input_select.therma_v_ess_select\", \"options\")[ 6 ]\n }}'",
"config": [
{
"name": "Nord Pool NL current prices including tax sensor",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_current_prices_including_tax",
"device_id": null
}
},
{
"name": "Nord Pool NL current price",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_current_price",
"device_id": null
}
},
{
"name": "Therma V heating cooling on off switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.therma_v_heating_cooling_on_off",
"device_id": null
}
},
{
"name": "Therma V DHW on off switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.therma_v_dhw_on_off",
"device_id": null
}
},
{
"name": "Silent mode startup",
"room": "utility",
"type": "input_boolean",
"id": {
"entity_id": "input_boolean.silent_mode_startup",
"device_id": null
}
},
{
"name": "Current percentage of energy price",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.current_percentage_of_energy_price",
"device_id": null
}
},
{
"name": "Nord Pool NL next price",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_next_price",
"device_id": null
}
},
{
"name": "Therma V ESS select",
"room": "utility",
"type": "input_select",
"id": {
"entity_id": "input_select.therma_v_ess_select",
"device_id": null
}
}
]
},
{
"id": "ess_based_on_e_price_positive_normal_auto",
"automation": "- id: ess_based_on_e_price_positive_normal_auto\n alias: ESS based on e-price positive normal auto\n description: Set the ESS state of the Therma V based on positive e-price low price\n difference\n mode: restart\n triggers:\n - trigger: time_pattern\n minutes: /30\n - trigger: state\n entity_id: sensor.nord_pool_nl_current_prices_including_tax\n - trigger: state\n entity_id: binary_sensor.therma_v_dhw_heating_state\n conditions:\n - condition: template\n value_template: '{{ (states(''sensor.nord_pool_nl_current_prices_including_tax'')\n | float(0) ) > 0 }}'\n - condition: template\n value_template: '{{ (states(''sensor.difference_in_electricity_price_today'')\n | float(0) ) < (states(''input_number.therma_v_ess_high_price_difference'')\n | float(0)) }}'\n actions:\n - delay:\n hours: 0\n minutes: 5\n seconds: 0\n - choose:\n - conditions:\n - or:\n - condition: numeric_state\n entity_id: sensor.current_percentage_of_energy_price\n below: 50\n - condition: state\n entity_id: binary_sensor.therma_v_dhw_heating_state\n state: 'on'\n sequence:\n - action: input_select.select_option\n target:\n entity_id: input_select.therma_v_ess_select\n data:\n option: '{{ state_attr(\"input_select.therma_v_ess_select\", \"options\")[ 2\n ] }}'\n default:\n sequence:\n - action: input_select.select_option\n target:\n entity_id: input_select.therma_v_ess_select\n data:\n option: '{{ state_attr(\"input_select.therma_v_ess_select\", \"options\")[ 7\n ] }}'",
"config": [
{
"name": "Nord Pool NL current prices including tax sensor",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_current_prices_including_tax",
"device_id": null
}
},
{
"name": "Therma V DHW heating state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_dhw_heating_state",
"device_id": null
}
},
{
"name": "Nord Pool NL current price",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_current_price",
"device_id": null
}
},
{
"name": "Current percentage of energy price",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.current_percentage_of_energy_price",
"device_id": null
}
},
{
"name": "Therma V ESS select",
"room": "utility",
"type": "input_select",
"id": {
"entity_id": "input_select.therma_v_ess_select",
"device_id": null
}
},
{
"name": "Difference in electricity price today",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.difference_in_electricity_price_today",
"device_id": null
}
},
{
"name": "Therma V ESS high price difference",
"room": "utility",
"type": "input_number",
"id": {
"entity_id": "input_number.therma_v_ess_high_price_difference",
"device_id": null
}
}
]
},
{
"id": "ess_based_on_e_price_positive_high_auto",
"automation": "- id: ess_based_on_e_price_positive_high_auto\n alias: ESS based on e-price positive high auto\n description: Set the ESS state of the Therma V based on positive e-price high price\n difference\n mode: restart\n triggers:\n - trigger: time_pattern\n minutes: /30\n - trigger: state\n entity_id: sensor.nord_pool_nl_current_prices_including_tax\n - trigger: state\n entity_id: binary_sensor.therma_v_dhw_heating_state\n conditions:\n - condition: template\n value_template: '{{ (states(''sensor.nord_pool_nl_current_prices_including_tax'')\n | float(0) ) > 0 }}'\n - condition: template\n value_template: '{{ (states(''sensor.difference_in_electricity_price_today'')\n | float(0) ) >= (states(''input_number.therma_v_ess_high_price_difference'')\n | float(0)) }}'\n actions:\n - delay:\n hours: 0\n minutes: 5\n seconds: 0\n - choose:\n - conditions:\n - condition: numeric_state\n entity_id: sensor.current_percentage_of_energy_price\n below: 5\n - condition: template\n value_template: '{{ (states(''sensor.nord_pool_nl_next_price'') | float(0)\n ) >= (states(''sensor.nord_pool_nl_current_price'') | float(0) ) }}'\n sequence:\n - action: input_select.select_option\n target:\n entity_id: input_select.therma_v_ess_select\n data:\n option: '{{ state_attr(\"input_select.therma_v_ess_select\", \"options\")[ 6\n ] }}'\n - conditions:\n - condition: state\n entity_id: binary_sensor.therma_v_dhw_heating_state\n state: 'on'\n sequence:\n - action: input_select.select_option\n target:\n entity_id: input_select.therma_v_ess_select\n data:\n option: '{{ state_attr(\"input_select.therma_v_ess_select\", \"options\")[ 2\n ] }}'\n - conditions:\n - condition: numeric_state\n entity_id: sensor.current_percentage_of_energy_price\n above: 50\n sequence:\n - action: input_select.select_option\n target:\n entity_id: input_select.therma_v_ess_select\n data:\n option: '{{ state_attr(\"input_select.therma_v_ess_select\", \"options\")[ 8\n ] }}'\n default:\n - action: input_select.select_option\n target:\n entity_id: input_select.therma_v_ess_select\n data:\n option: '{{ state_attr(\"input_select.therma_v_ess_select\", \"options\")[ 7 ]\n }}'",
"config": [
{
"name": "Nord Pool NL current prices including tax sensor",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_current_prices_including_tax",
"device_id": null
}
},
{
"name": "Therma V DHW heating state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_dhw_heating_state",
"device_id": null
}
},
{
"name": "Nord Pool NL current price",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_current_price",
"device_id": null
}
},
{
"name": "Current percentage of energy price",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.current_percentage_of_energy_price",
"device_id": null
}
},
{
"name": "Nord Pool NL next price",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.nord_pool_nl_next_price",
"device_id": null
}
},
{
"name": "Therma V ESS select",
"room": "utility",
"type": "input_select",
"id": {
"entity_id": "input_select.therma_v_ess_select",
"device_id": null
}
},
{
"name": "Difference in electricity price today",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.difference_in_electricity_price_today",
"device_id": null
}
},
{
"name": "Therma V ESS high price difference",
"room": "utility",
"type": "input_number",
"id": {
"entity_id": "input_number.therma_v_ess_high_price_difference",
"device_id": null
}
}
]
},
{
"id": "therma_v_update_energy_saving_state_auto",
"automation": "- id: therma_v_update_energy_saving_state_auto\n alias: Therma V Update Energy Saving State auto\n description: Synchronizes the Therma V ESS input select and modbus state\n mode: single\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id:\n - sensor.therma_v_energy_state\n id: ess_modbus_trig\n - trigger: state\n entity_id:\n - input_select.therma_v_ess_select\n id: ess_select_trig\n - trigger: homeassistant\n event: start\n id: ess_ha_start_trig\n conditions: []\n actions:\n - choose:\n - conditions:\n - condition: trigger\n id: ess_modbus_trig\n sequence:\n - variables:\n index: '{{ trigger.to_state.state | int(0) }}'\n - action: input_select.select_option\n target:\n entity_id: input_select.therma_v_ess_select\n data:\n option: '{{ state_attr(\"input_select.therma_v_ess_select\", \"options\")[ index\n ] }}'\n - conditions:\n - condition: trigger\n id: ess_select_trig\n sequence:\n - action: modbus.write_register\n data_template:\n address: 9\n slave: 1\n hub: modbus_gateway_therma_v\n value: '{{ trigger.to_state.state[0] | int(0) }}'\n default:\n - variables:\n index: '{{ states(\"sensor.therma_v_energy_state\") | int(0) }}'\n - action: input_select.select_option\n target:\n entity_id: input_select.therma_v_ess_select\n data:\n option: '{{ state_attr(\"input_select.therma_v_ess_select\", \"options\")[ index\n ] }}'",
"config": [
{
"name": "Therma V ESS select",
"room": "utility",
"type": "input_select",
"id": {
"entity_id": "input_select.therma_v_ess_select",
"device_id": null
}
},
{
"name": "Therma V energy state",
"room": "utility",
"type": "sensor",
"id": {
"entity_id": "sensor.therma_v_energy_state",
"device_id": null
}
}
]
},
{
"id": "therma_v_silent_on_based_on_temp_time_auto",
"automation": "- id: therma_v_silent_on_based_on_temp_time_auto\n alias: Therma V Silent ON based on temperature and time auto\n description: Turns on silent mode at set time and when the temperature is high enough\n mode: single\n max_exceeded: silent\n triggers:\n - trigger: time\n at: input_datetime.silent_start_time\n - trigger: state\n entity_id: sensor.therma_v_outside_temperature\n conditions:\n - and:\n - condition: state\n entity_id: switch.therma_v_heating_cooling_on_off\n state: 'on'\n - or:\n - condition: time\n after: input_datetime.silent_start_time\n before: input_datetime.silent_stop_time\n - condition: numeric_state\n entity_id: sensor.therma_v_outside_temperature\n above: 8\n actions:\n - action: switch.turn_on\n target:\n entity_id: switch.silent_mode_state",
"config": [
{
"name": "Therma V heating cooling on off switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.therma_v_heating_cooling_on_off",
"device_id": null
}
},
{
"name": "Therma V outside temperature",
"room": "outside",
"type": "sensor",
"id": {
"entity_id": "sensor.therma_v_outside_temperature",
"device_id": null
}
},
{
"name": "Silent start time",
"room": "utility",
"type": "input_datetime",
"id": {
"entity_id": "input_datetime.silent_start_time",
"device_id": null
}
},
{
"name": "Silent stop time",
"room": "utility",
"type": "input_datetime",
"id": {
"entity_id": "input_datetime.silent_stop_time",
"device_id": null
}
},
{
"name": "Silent mode state switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.silent_mode_state",
"device_id": null
}
}
]
},
{
"id": "therma_v_silent_off_based_on_temp_time_auto",
"automation": "- id: therma_v_silent_off_based_on_temp_time_auto\n alias: Therma V Silent OFF based on temperature and time auto\n description: Turns off silent mode when outside temp is too low respecting silent\n time window\n mode: single\n max_exceeded: silent\n triggers:\n - trigger: time\n at: input_datetime.silent_stop_time\n - trigger: state\n entity_id: sensor.therma_v_outside_temperature\n conditions:\n - and:\n - condition: numeric_state\n entity_id: automation.therma_v_silent_on_at_startup\n attribute: current\n below: 1\n - condition: numeric_state\n entity_id: sensor.therma_v_outside_temperature\n below: 6\n - condition: time\n after: input_datetime.silent_stop_time\n before: input_datetime.silent_start_time\n actions:\n - action: switch.turn_off\n target:\n entity_id: switch.silent_mode_state",
"config": [
{
"name": "Therma V outside temperature",
"room": "outside",
"type": "sensor",
"id": {
"entity_id": "sensor.therma_v_outside_temperature",
"device_id": null
}
},
{
"name": "Silent start time",
"room": "utility",
"type": "input_datetime",
"id": {
"entity_id": "input_datetime.silent_start_time",
"device_id": null
}
},
{
"name": "Silent stop time",
"room": "utility",
"type": "input_datetime",
"id": {
"entity_id": "input_datetime.silent_stop_time",
"device_id": null
}
},
{
"name": "Silent mode state switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.silent_mode_state",
"device_id": null
}
},
{
"name": "Therma V silent on at startup automation",
"room": "utility",
"type": "automation",
"id": {
"entity_id": "automation.therma_v_silent_on_at_startup",
"device_id": null
}
}
]
},
{
"id": "therma_v_silent_on_at_startup_auto",
"automation": "- id: therma_v_silent_on_at_startup_auto\n alias: Therma V Silent ON at startup auto\n description: Turns on silent mode for some minutes after start-up\n mode: restart\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: binary_sensor.therma_v_compressor_state\n from: 'off'\n to: 'on'\n - trigger: state\n entity_id: binary_sensor.therma_v_defrost_state\n from: 'on'\n to: 'off'\n conditions:\n - condition: state\n entity_id: switch.therma_v_heating_cooling_on_off\n state: 'on'\n - condition: state\n entity_id: binary_sensor.therma_v_defrost_state\n state: 'off'\n - condition: state\n entity_id: input_boolean.silent_mode_startup\n state: 'on'\n actions:\n - action: switch.turn_on\n target:\n entity_id: switch.therma_v_silent_mode\n - delay:\n minutes: 15\n - choose:\n - conditions:\n - condition: state\n entity_id: switch.silent_mode_state\n state: 'on'\n sequence:\n - action: switch.turn_on\n target:\n entity_id: switch.therma_v_silent_mode\n default:\n - action: switch.turn_off\n target:\n entity_id: switch.therma_v_silent_mode",
"config": [
{
"name": "Therma V defrost state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_defrost_state",
"device_id": null
}
},
{
"name": "Therma V compressor state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_compressor_state",
"device_id": null
}
},
{
"name": "Therma V heating cooling on off switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.therma_v_heating_cooling_on_off",
"device_id": null
}
},
{
"name": "Therma V silent mode switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.therma_v_silent_mode",
"device_id": null
}
},
{
"name": "Silent mode startup",
"room": "utility",
"type": "input_boolean",
"id": {
"entity_id": "input_boolean.silent_mode_startup",
"device_id": null
}
},
{
"name": "Silent mode state switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.silent_mode_state",
"device_id": null
}
}
]
},
{
"id": "therma_v_silent_mode_off_auto",
"automation": "- id: therma_v_silent_mode_off_auto\n alias: Therma V Silent Mode OFF auto\n description: Turns off silent mode when heating/cooling is switched off\n mode: single\n triggers:\n - trigger: state\n entity_id: switch.therma_v_heating_cooling_on_off\n from: 'on'\n to: 'off'\n - trigger: time_pattern\n minutes: /30\n conditions:\n - condition: state\n entity_id: switch.therma_v_heating_cooling_on_off\n state: 'off'\n actions:\n - action: switch.turn_off\n target:\n entity_id: switch.silent_mode_state\n - action: input_boolean.turn_off\n target:\n entity_id: input_boolean.silent_mode_startup",
"config": [
{
"name": "Therma V heating cooling on off switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.therma_v_heating_cooling_on_off",
"device_id": null
}
},
{
"name": "Silent mode startup",
"room": "utility",
"type": "input_boolean",
"id": {
"entity_id": "input_boolean.silent_mode_startup",
"device_id": null
}
},
{
"name": "Silent mode state switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.silent_mode_state",
"device_id": null
}
}
]
},
{
"id": "therma_v_silent_mode_on_auto",
"automation": "- id: therma_v_silent_mode_on_auto\n alias: Therma V Silent Mode ON auto\n description: Turns on silent mode when heating/cooling is switched on\n mode: single\n triggers:\n - trigger: state\n entity_id: switch.therma_v_heating_cooling_on_off\n from: 'off'\n to: 'on'\n conditions: []\n actions:\n - action: switch.turn_on\n target:\n entity_id: switch.silent_mode_state\n - action: input_boolean.turn_on\n target:\n entity_id: input_boolean.silent_mode_startup",
"config": [
{
"name": "Therma V heating cooling on off switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.therma_v_heating_cooling_on_off",
"device_id": null
}
},
{
"name": "Silent mode startup",
"room": "utility",
"type": "input_boolean",
"id": {
"entity_id": "input_boolean.silent_mode_startup",
"device_id": null
}
},
{
"name": "Silent mode state switch",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.silent_mode_state",
"device_id": null
}
}
]
},
{
"id": "therma_v_switch_on_ufh_pump_auto",
"automation": "- id: therma_v_switch_on_ufh_pump_auto\n alias: Therma V switch on ufh pump auto\n description: Switch on underfloof heating pump when therma V external pump is active\n mode: single\n triggers:\n - trigger: time_pattern\n seconds: /10\n conditions: []\n actions:\n - choose:\n - conditions:\n - condition: state\n entity_id: binary_sensor.therma_v_external_water_pump_state\n state: 'on'\n sequence:\n - action: switch.turn_on\n entity_id: switch.shelly_plug_s2\n - conditions:\n - condition: state\n entity_id: binary_sensor.therma_v_external_water_pump_state\n state: 'off'\n sequence:\n - action: switch.turn_off\n entity_id: switch.shelly_plug_s2",
"config": [
{
"name": "Therma V external water pump state",
"room": "utility",
"type": "binary_sensor",
"id": {
"entity_id": "binary_sensor.therma_v_external_water_pump_state",
"device_id": null
}
},
{
"name": "Shelly Plug S2",
"room": "utility",
"type": "switch",
"id": {
"entity_id": "switch.shelly_plug_s2",
"device_id": null
}
}
]
}
]