1289 lines
38 KiB
YAML
1289 lines
38 KiB
YAML
- id: '1680707528756'
|
|
alias: InverterConfig Update Times
|
|
description: Automation fetches TimeOfUse values and updates HA/Inverter
|
|
triggers:
|
|
- trigger: state
|
|
entity_id:
|
|
- number.deyeinvertermaster_timezone1_time
|
|
- number.deyeinvertermaster_timezone2_time
|
|
- number.deyeinvertermaster_timezone3_time
|
|
- number.deyeinvertermaster_timezone4_time
|
|
- number.deyeinvertermaster_timezone5_time
|
|
- number.deyeinvertermaster_timezone6_time
|
|
id: sendUpdatetoHATimeObjects
|
|
- trigger: state
|
|
entity_id:
|
|
- input_datetime.timezone1_time
|
|
- input_datetime.timezone2_time
|
|
- input_datetime.timezone3_time
|
|
- input_datetime.timezone4_time
|
|
- input_datetime.timezone5_time
|
|
- input_datetime.timezone6_time
|
|
id: SendUpdateToInverter
|
|
condition:
|
|
- condition: template
|
|
value_template: '{{ trigger.to_state.state != ''unavailable'' }}'
|
|
actions:
|
|
- delay:
|
|
hours: 0
|
|
minutes: 0
|
|
seconds: 2
|
|
milliseconds: 0
|
|
- choose:
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- SendUpdateToInverter
|
|
sequence:
|
|
- action: number.set_value
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone1_time
|
|
data:
|
|
value: '{{state_attr(''input_datetime.timezone1_time'', ''timestamp'') |
|
|
timestamp_custom("%H%M", false) | float}}'
|
|
- action: number.set_value
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone2_time
|
|
data:
|
|
value: '{{state_attr(''input_datetime.timezone2_time'', ''timestamp'') |
|
|
timestamp_custom("%H%M", false) | float}}'
|
|
- action: number.set_value
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone3_time
|
|
data:
|
|
value: '{{state_attr(''input_datetime.timezone3_time'', ''timestamp'') |
|
|
timestamp_custom("%H%M", false) | float}}'
|
|
- action: number.set_value
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone4_time
|
|
data:
|
|
value: '{{state_attr(''input_datetime.timezone4_time'', ''timestamp'') |
|
|
timestamp_custom("%H%M", false) | float}}'
|
|
- action: number.set_value
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone5_time
|
|
data:
|
|
value: '{{state_attr(''input_datetime.timezone5_time'', ''timestamp'') |
|
|
timestamp_custom("%H%M", false) | float}}'
|
|
- action: number.set_value
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone6_time
|
|
data:
|
|
value: '{{state_attr(''input_datetime.timezone6_time'', ''timestamp'') |
|
|
timestamp_custom("%H%M", false) | float}}'
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- sendUpdatetoHATimeObjects
|
|
sequence:
|
|
- action: input_datetime.set_datetime
|
|
target:
|
|
entity_id: input_datetime.timezone1_time
|
|
data:
|
|
time: '{% set min = ((states(''number.deyeinvertermaster_timezone1_time'')
|
|
| int) % 100) %} {% set hour = ((states(''number.deyeinvertermaster_timezone1_time'')
|
|
| int) // 100) %} {{''%02d'' % hour}}:{{''%02d'' % min}}:00'
|
|
- action: input_datetime.set_datetime
|
|
target:
|
|
entity_id: input_datetime.timezone2_time
|
|
data:
|
|
time: '{% set min = ((states(''number.deyeinvertermaster_timezone2_time'')
|
|
| int) % 100) %} {% set hour = ((states(''number.deyeinvertermaster_timezone2_time'')
|
|
| int) // 100) %} {{''%02d'' % hour}}:{{''%02d'' % min}}:00'
|
|
- action: input_datetime.set_datetime
|
|
target:
|
|
entity_id: input_datetime.timezone3_time
|
|
data:
|
|
time: '{% set min = ((states(''number.deyeinvertermaster_timezone3_time'')
|
|
| int) % 100) %} {% set hour = ((states(''number.deyeinvertermaster_timezone3_time'')
|
|
| int) // 100) %} {{''%02d'' % hour}}:{{''%02d'' % min}}:00'
|
|
- action: input_datetime.set_datetime
|
|
target:
|
|
entity_id: input_datetime.timezone4_time
|
|
data:
|
|
time: '{% set min = ((states(''number.deyeinvertermaster_timezone4_time'')
|
|
| int) % 100) %} {% set hour = ((states(''number.deyeinvertermaster_timezone4_time'')
|
|
| int) // 100) %} {{''%02d'' % hour}}:{{''%02d'' % min}}:00'
|
|
- action: input_datetime.set_datetime
|
|
target:
|
|
entity_id: input_datetime.timezone5_time
|
|
data:
|
|
time: '{% set min = ((states(''number.deyeinvertermaster_timezone5_time'')
|
|
| int) % 100) %} {% set hour = ((states(''number.deyeinvertermaster_timezone5_time'')
|
|
| int) // 100) %} {{''%02d'' % hour}}:{{''%02d'' % min}}:00'
|
|
- action: input_datetime.set_datetime
|
|
target:
|
|
entity_id: input_datetime.timezone6_time
|
|
data:
|
|
time: '{% set min = ((states(''number.deyeinvertermaster_timezone6_time'')
|
|
| int) % 100) %} {% set hour = ((states(''number.deyeinvertermaster_timezone6_time'')
|
|
| int) // 100) %} {{''%02d'' % hour}}:{{''%02d'' % min}}:00'
|
|
- delay:
|
|
hours: 0
|
|
minutes: 0
|
|
seconds: 2
|
|
milliseconds: 0
|
|
mode: single
|
|
- id: '1717083464657'
|
|
alias: Server Sync Clock
|
|
description: ''
|
|
triggers:
|
|
- trigger: time
|
|
at: 00:50:00
|
|
id: enableSync
|
|
- trigger: time
|
|
at: 01:10:00
|
|
id: disableSync
|
|
condition: []
|
|
actions:
|
|
- choose:
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- enableSync
|
|
sequence:
|
|
- action: select.select_option
|
|
target:
|
|
entity_id: select.deyeinvertermaster_inverter_basic_settings_sync_clock
|
|
data:
|
|
option: Enable
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- disableSync
|
|
sequence:
|
|
- action: select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: Disable
|
|
target:
|
|
entity_id: select.deyeinvertermaster_inverter_basic_settings_sync_clock
|
|
mode: single
|
|
- id: '1686299812078'
|
|
alias: 'Inverter: Switch to Export essentials/Non-Essentials when sun sets/rises'
|
|
description: This stops the export to non-essentials from the battery when the sun
|
|
is not shining, but during the day solar power is sent to non-essentials
|
|
trigger:
|
|
- platform: sun
|
|
event: sunset
|
|
offset: -00:45:00
|
|
id: poweressentials
|
|
- platform: sun
|
|
event: sunrise
|
|
offset: 00:45:00
|
|
id: powernonessentials
|
|
condition: []
|
|
actions:
|
|
- choose:
|
|
- conditions:
|
|
- condition: trigger
|
|
id: poweressentials
|
|
sequence:
|
|
- action: select.select_option
|
|
data:
|
|
option: Essentials
|
|
target:
|
|
entity_id: select.deyeinvertermaster_load_limit_exp_ess_non_ess
|
|
- conditions:
|
|
- condition: trigger
|
|
id: powernonessentials
|
|
sequence:
|
|
- action: select.select_option
|
|
data:
|
|
option: Zero Export
|
|
target:
|
|
entity_id: select.deyeinvertermaster_load_limit_exp_ess_non_ess
|
|
mode: single
|
|
- id: '1708977359107'
|
|
alias: 'Monitor Charge price automation '
|
|
description: ''
|
|
triggers:
|
|
- entity_id:
|
|
- sensor.nordpool_kwh_lt_eur_3_095_021
|
|
trigger: state
|
|
- entity_id:
|
|
- input_number.charge_below_price
|
|
trigger: state
|
|
- entity_id:
|
|
- input_number.discharge_above_price
|
|
trigger: state
|
|
conditions: []
|
|
actions:
|
|
- choose:
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states("sensor.nordpool_kwh_lt_eur_3_095_021") <= states("input_number.charge_below_price")}}'
|
|
sequence:
|
|
- action: input_boolean.turn_on
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: input_boolean.charge_battery_switch
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states("sensor.nordpool_kwh_lt_eur_3_095_021") > states("input_number.charge_below_price")}}'
|
|
sequence:
|
|
- action: input_boolean.turn_off
|
|
target:
|
|
entity_id: input_boolean.charge_battery_switch
|
|
data: {}
|
|
mode: single
|
|
- id: '1709319682608'
|
|
alias: Discharge Settings Change
|
|
description: ''
|
|
triggers:
|
|
- entity_id:
|
|
- input_boolean.discharge_battery_switch
|
|
from: 'off'
|
|
to: 'on'
|
|
id: Enable Discharge
|
|
trigger: state
|
|
- entity_id:
|
|
- input_boolean.discharge_battery_switch
|
|
id: Disable Discharge
|
|
from: 'on'
|
|
to: 'off'
|
|
trigger: state
|
|
conditions:
|
|
- condition: state
|
|
entity_id: input_boolean.discharge_automation_enable
|
|
state: 'on'
|
|
actions:
|
|
- choose:
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- Enable Discharge
|
|
sequence:
|
|
- action: switch.turn_on
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: switch.deyeinvertermaster_time_of_use
|
|
enabled: false
|
|
- action: select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: Allow Export
|
|
target:
|
|
entity_id: select.deyeinvertermaster_load_limit_exp_ess_non_ess
|
|
- action: scene.create
|
|
metadata: {}
|
|
data:
|
|
snapshot_entities:
|
|
- number.deyeinvertermaster_timezone1_soc
|
|
- number.deyeinvertermaster_timezone2_soc
|
|
- number.deyeinvertermaster_timezone3_soc
|
|
- number.deyeinvertermaster_timezone4_soc
|
|
- number.deyeinvertermaster_timezone5_soc
|
|
- number.deyeinvertermaster_timezone6_soc
|
|
scene_id: normal_settings
|
|
- action: number.set_value
|
|
metadata: {}
|
|
data:
|
|
value: '50'
|
|
target:
|
|
entity_id:
|
|
- number.deyeinvertermaster_timezone1_soc
|
|
- number.deyeinvertermaster_timezone2_soc
|
|
- number.deyeinvertermaster_timezone3_soc
|
|
- number.deyeinvertermaster_timezone4_soc
|
|
- number.deyeinvertermaster_timezone5_soc
|
|
- number.deyeinvertermaster_timezone6_soc
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- Disable Discharge
|
|
sequence:
|
|
- action: switch.turn_off
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: switch.deyeinvertermaster_time_of_use
|
|
enabled: false
|
|
- action: select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: Zero Export
|
|
target:
|
|
entity_id: select.deyeinvertermaster_load_limit_exp_ess_non_ess
|
|
- metadata: {}
|
|
target:
|
|
entity_id: scene.normal_settings
|
|
action: scene.turn_on
|
|
mode: single
|
|
- id: '1709319936727'
|
|
alias: Charge Settings Change
|
|
description: ''
|
|
triggers:
|
|
- entity_id:
|
|
- input_boolean.charge_battery_switch
|
|
from: 'off'
|
|
to: 'on'
|
|
id: Enable Charge from Grid
|
|
trigger: state
|
|
- entity_id:
|
|
- input_boolean.charge_battery_switch
|
|
from: 'on'
|
|
to: 'off'
|
|
id: Disable Charge from Grid
|
|
trigger: state
|
|
conditions:
|
|
- condition: state
|
|
entity_id: input_boolean.charge_automation_enable
|
|
state: 'on'
|
|
actions:
|
|
- choose:
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- Enable Charge from Grid
|
|
sequence:
|
|
- action: switch.turn_on
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: switch.deyeinvertermaster_battery_grid_charge_enabled
|
|
- action: switch.turn_off
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: switch.deyeinvertermaster_time_of_use
|
|
enabled: false
|
|
- action: scene.create
|
|
metadata: {}
|
|
data:
|
|
scene_id: before_battery_charge
|
|
snapshot_entities:
|
|
- select.deyeinvertermaster_timezone1_charge
|
|
- select.deyeinvertermaster_timezone2_charge
|
|
- select.deyeinvertermaster_timezone3_charge
|
|
- select.deyeinvertermaster_timezone4_charge
|
|
- select.deyeinvertermaster_timezone5_charge
|
|
- select.deyeinvertermaster_timezone6_charge
|
|
- number.deyeinvertermaster_timezone1_soc
|
|
- number.deyeinvertermaster_timezone2_soc
|
|
- number.deyeinvertermaster_timezone3_soc
|
|
- number.deyeinvertermaster_timezone4_soc
|
|
- number.deyeinvertermaster_timezone5_soc
|
|
- number.deyeinvertermaster_timezone6_soc
|
|
enabled: true
|
|
- action: select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: Grid
|
|
target:
|
|
entity_id:
|
|
- select.deyeinvertermaster_timezone1_charge
|
|
- select.deyeinvertermaster_timezone2_charge
|
|
- select.deyeinvertermaster_timezone3_charge
|
|
- select.deyeinvertermaster_timezone4_charge
|
|
- select.deyeinvertermaster_timezone5_charge
|
|
- select.deyeinvertermaster_timezone6_charge
|
|
enabled: true
|
|
- action: number.set_value
|
|
metadata: {}
|
|
data:
|
|
value: '{{ states("input_number.charge_battery_target_percentage") }}'
|
|
target:
|
|
entity_id:
|
|
- number.deyeinvertermaster_timezone1_soc
|
|
- number.deyeinvertermaster_timezone2_soc
|
|
- number.deyeinvertermaster_timezone3_soc
|
|
- number.deyeinvertermaster_timezone4_soc
|
|
- number.deyeinvertermaster_timezone5_soc
|
|
- number.deyeinvertermaster_timezone6_soc
|
|
enabled: true
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- Disable Charge from Grid
|
|
sequence:
|
|
- action: switch.turn_off
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: switch.deyeinvertermaster_battery_grid_charge_enabled
|
|
enabled: true
|
|
- action: switch.turn_on
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: switch.deyeinvertermaster_time_of_use
|
|
enabled: false
|
|
- action: scene.turn_on
|
|
metadata: {}
|
|
target:
|
|
entity_id: scene.before_battery_charge
|
|
enabled: true
|
|
mode: single
|
|
- id: '1709538239920'
|
|
alias: Monitor Discharge price Automation
|
|
description: ''
|
|
triggers:
|
|
- entity_id:
|
|
- sensor.nordpool_kwh_lt_eur_3_095_021
|
|
trigger: state
|
|
- entity_id:
|
|
- input_number.charge_below_price
|
|
trigger: state
|
|
- entity_id:
|
|
- input_number.discharge_above_price
|
|
trigger: state
|
|
conditions: []
|
|
actions:
|
|
- choose:
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states("sensor.nordpool_kwh_lt_eur_3_095_021") >= states("input_number.discharge_above_price")}}'
|
|
sequence:
|
|
- action: input_boolean.turn_on
|
|
target:
|
|
entity_id: input_boolean.discharge_battery_switch
|
|
data: {}
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states("sensor.nordpool_kwh_lt_eur_3_095_021") < states("input_number.discharge_above_price")}}'
|
|
sequence:
|
|
- action: input_boolean.turn_off
|
|
target:
|
|
entity_id: input_boolean.discharge_battery_switch
|
|
data: {}
|
|
mode: single
|
|
- id: '1736228839643'
|
|
alias: Automatically Update Charge Price
|
|
description: Automate the price so you do not need to monitor prices
|
|
triggers:
|
|
- trigger: state
|
|
entity_id:
|
|
- sensor.suggested_cheap_price
|
|
- trigger: state
|
|
entity_id:
|
|
- automation.automatically_update_charge_price
|
|
from: 'off'
|
|
to: 'on'
|
|
conditions: []
|
|
actions:
|
|
- action: input_number.set_value
|
|
metadata: {}
|
|
data:
|
|
value: '{{ states("sensor.suggested_cheap_price") }}'
|
|
target:
|
|
entity_id: input_number.charge_below_price
|
|
mode: single
|
|
- id: '1710562585517'
|
|
alias: Solcast_update
|
|
description: New API call Solcast
|
|
triggers:
|
|
- hours: /4
|
|
trigger: time_pattern
|
|
enabled: true
|
|
conditions:
|
|
- condition: sun
|
|
before: sunset
|
|
after: sunrise
|
|
actions:
|
|
- action: solcast_solar.update_forecasts
|
|
data: {}
|
|
mode: single
|
|
- id: '1712779724660'
|
|
alias: Energy - Start Charge
|
|
description: ''
|
|
triggers:
|
|
- entity_id:
|
|
- input_select.octopus_energy_state
|
|
to: start charge
|
|
for:
|
|
hours: 0
|
|
minutes: 0
|
|
seconds: 15
|
|
trigger: state
|
|
conditions: []
|
|
actions:
|
|
- action: number.set_value
|
|
metadata: {}
|
|
data:
|
|
value: '85'
|
|
target:
|
|
entity_id: number.deyeinvertermaster_grid_charge_current
|
|
enabled: false
|
|
- action: switch.turn_on
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: switch.deyeinvertermaster_battery_grid_charge_enabled
|
|
- action: select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: Grid
|
|
target:
|
|
entity_id: select.deyeinvertermaster_timezone1_charge
|
|
enabled: true
|
|
mode: single
|
|
- id: '1712831382846'
|
|
alias: Energy Stop Charge
|
|
description: ''
|
|
triggers:
|
|
- entity_id:
|
|
- input_select.octopus_energy_state
|
|
to: stop charge
|
|
for:
|
|
hours: 0
|
|
minutes: 0
|
|
seconds: 15
|
|
trigger: state
|
|
conditions: []
|
|
actions:
|
|
- action: select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: None
|
|
target:
|
|
entity_id: select.deyeinvertermaster_timezone1_charge
|
|
- delay:
|
|
hours: 0
|
|
minutes: 1
|
|
seconds: 0
|
|
milliseconds: 0
|
|
- action: number.set_value
|
|
metadata: {}
|
|
data:
|
|
value: 85
|
|
target:
|
|
entity_id: number.deyeinvertermaster_grid_charge_current
|
|
enabled: true
|
|
mode: single
|
|
- id: '1712832456126'
|
|
alias: Energy Start Export
|
|
description: ''
|
|
triggers:
|
|
- entity_id:
|
|
- input_select.octopus_energy_state
|
|
to: start discharge
|
|
for:
|
|
hours: 0
|
|
minutes: 0
|
|
seconds: 15
|
|
trigger: state
|
|
conditions: []
|
|
actions:
|
|
- action: select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: Allow Export
|
|
target:
|
|
entity_id: select.deyeinvertermaster_load_limit_exp_ess_non_ess
|
|
enabled: true
|
|
mode: single
|
|
- id: '1712832480479'
|
|
alias: Energy Stop Export
|
|
description: ''
|
|
triggers:
|
|
- entity_id:
|
|
- input_select.octopus_energy_state
|
|
to: stop discharge
|
|
for:
|
|
hours: 0
|
|
minutes: 0
|
|
seconds: 15
|
|
trigger: state
|
|
conditions: []
|
|
actions:
|
|
- action: select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: Zero Export
|
|
target:
|
|
entity_id: select.deyeinvertermaster_load_limit_exp_ess_non_ess
|
|
- delay:
|
|
hours: 0
|
|
minutes: 1
|
|
seconds: 0
|
|
milliseconds: 0
|
|
- action: number.set_value
|
|
metadata: {}
|
|
data:
|
|
value: 5000
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone4_power
|
|
enabled: true
|
|
mode: single
|
|
- id: '1712838905064'
|
|
alias: Energy Time Trigger
|
|
description: ''
|
|
triggers:
|
|
- at: 02:01:00
|
|
id: startCharge
|
|
trigger: time
|
|
- at: 04:59:00
|
|
id: stopCharge
|
|
trigger: time
|
|
- at: '16:00:00'
|
|
id: startExport
|
|
trigger: time
|
|
- at: '19:00:00'
|
|
id: stopExport
|
|
trigger: time
|
|
conditions:
|
|
- condition: not
|
|
conditions:
|
|
- condition: state
|
|
entity_id: input_select.octopus_energy_state
|
|
state: disable
|
|
enabled: true
|
|
actions:
|
|
- choose:
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- startCharge
|
|
sequence:
|
|
- action: input_select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: start charge
|
|
target:
|
|
entity_id: input_select.octopus_energy_state
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- stopCharge
|
|
sequence:
|
|
- action: input_select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: stop charge
|
|
target:
|
|
entity_id: input_select.octopus_energy_state
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- startExport
|
|
sequence:
|
|
- action: input_select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: start discharge
|
|
target:
|
|
entity_id: input_select.octopus_energy_state
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- stopExport
|
|
sequence:
|
|
- action: input_select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: stop discharge
|
|
target:
|
|
entity_id: input_select.octopus_energy_state
|
|
mode: single
|
|
- id: '1713294916505'
|
|
alias: Energy Update Discharge Rates
|
|
description: ''
|
|
triggers:
|
|
- minutes: /3
|
|
enabled: true
|
|
trigger: time_pattern
|
|
- entity_id:
|
|
- sensor.deyeinvertermaster_battery_soc
|
|
trigger: state
|
|
conditions:
|
|
- condition: state
|
|
entity_id: input_select.octopus_energy_state
|
|
state: start discharge
|
|
enabled: true
|
|
actions:
|
|
- action: number.set_value
|
|
metadata: {}
|
|
data:
|
|
value: '{{states(''sensor.deyeinvertermaster_timezone4_estimate_export_power_filtered'')}}'
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone4_power
|
|
mode: single
|
|
- id: '1714048088646'
|
|
alias: Energy Update Charge Current
|
|
description: ''
|
|
triggers:
|
|
- minutes: /3
|
|
enabled: true
|
|
trigger: time_pattern
|
|
- entity_id:
|
|
- sensor.deyeinvertermaster_battery_soc
|
|
trigger: state
|
|
conditions:
|
|
- condition: state
|
|
entity_id: input_select.octopus_energy_state
|
|
state: start charge
|
|
enabled: true
|
|
actions:
|
|
- action: number.set_value
|
|
metadata: {}
|
|
data:
|
|
value: '{{states(''sensor.deyeinvertermaster_timezone1_estimate_charge_current_filtered'')}}'
|
|
target:
|
|
entity_id: number.deyeinvertermaster_grid_charge_current
|
|
enabled: true
|
|
mode: single
|
|
- id: '1708977359107'
|
|
alias: 'Monitor Charge price automation '
|
|
description: ''
|
|
triggers:
|
|
- entity_id:
|
|
- sensor.tge_fixing_1_rate
|
|
trigger: state
|
|
- entity_id:
|
|
- input_number.charge_below_price
|
|
trigger: state
|
|
- entity_id:
|
|
- input_number.discharge_above_price
|
|
trigger: state
|
|
conditions: []
|
|
actions:
|
|
- choose:
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ (states("sensor.tge_fixing_1_rate") | float(1)) <= (states("input_number.charge_below_price")
|
|
| float(1))}}'
|
|
sequence:
|
|
- action: input_boolean.turn_on
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: input_boolean.charge_battery_switch
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ (states("sensor.tge_fixing_1_rate") | float(1)) > (states("input_number.charge_below_price")
|
|
| float(1))}}'
|
|
sequence:
|
|
- action: input_boolean.turn_off
|
|
target:
|
|
entity_id: input_boolean.charge_battery_switch
|
|
data: {}
|
|
mode: single
|
|
- id: '1709319682608'
|
|
alias: Discharge Settings Change
|
|
description: ''
|
|
triggers:
|
|
- entity_id:
|
|
- input_boolean.discharge_battery_switch
|
|
from: 'off'
|
|
to: 'on'
|
|
id: Enable Discharge
|
|
trigger: state
|
|
- entity_id:
|
|
- input_boolean.discharge_battery_switch
|
|
id: Disable Discharge
|
|
from: 'on'
|
|
to: 'off'
|
|
trigger: state
|
|
conditions:
|
|
- condition: state
|
|
entity_id: input_boolean.discharge_automation_enable
|
|
state: 'on'
|
|
actions:
|
|
- choose:
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- Enable Discharge
|
|
sequence:
|
|
- action: switch.turn_on
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: switch.deyeinvertermaster_time_of_use
|
|
enabled: false
|
|
- action: select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: Allow Export
|
|
target:
|
|
entity_id: select.deyeinvertermaster_load_limit_exp_ess_non_ess
|
|
- action: scene.create
|
|
metadata: {}
|
|
data:
|
|
snapshot_entities:
|
|
- number.deyeinvertermaster_timezone1_soc
|
|
- number.deyeinvertermaster_timezone2_soc
|
|
- number.deyeinvertermaster_timezone3_soc
|
|
- number.deyeinvertermaster_timezone4_soc
|
|
- number.deyeinvertermaster_timezone5_soc
|
|
- number.deyeinvertermaster_timezone6_soc
|
|
scene_id: normal_settings
|
|
- action: number.set_value
|
|
metadata: {}
|
|
data:
|
|
value: '50'
|
|
target:
|
|
entity_id:
|
|
- number.deyeinvertermaster_timezone1_soc
|
|
- number.deyeinvertermaster_timezone2_soc
|
|
- number.deyeinvertermaster_timezone3_soc
|
|
- number.deyeinvertermaster_timezone4_soc
|
|
- number.deyeinvertermaster_timezone5_soc
|
|
- number.deyeinvertermaster_timezone6_soc
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- Disable Discharge
|
|
sequence:
|
|
- action: switch.turn_off
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: switch.deyeinvertermaster_time_of_use
|
|
enabled: false
|
|
- action: select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: Zero Export
|
|
target:
|
|
entity_id: select.deyeinvertermaster_load_limit_exp_ess_non_ess
|
|
- metadata: {}
|
|
target:
|
|
entity_id: scene.normal_settings
|
|
action: scene.turn_on
|
|
mode: single
|
|
- id: '1709319936727'
|
|
alias: Charge Settings Change
|
|
description: ''
|
|
triggers:
|
|
- entity_id:
|
|
- input_boolean.charge_battery_switch
|
|
from: 'off'
|
|
to: 'on'
|
|
id: Enable Charge from Grid
|
|
trigger: state
|
|
- entity_id:
|
|
- input_boolean.charge_battery_switch
|
|
from: 'on'
|
|
to: 'off'
|
|
id: Disable Charge from Grid
|
|
trigger: state
|
|
conditions:
|
|
- condition: state
|
|
entity_id: input_boolean.charge_automation_enable
|
|
state: 'on'
|
|
actions:
|
|
- choose:
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- Enable Charge from Grid
|
|
sequence:
|
|
- action: switch.turn_on
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: switch.deyeinvertermaster_battery_grid_charge_enabled
|
|
- action: switch.turn_off
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: switch.deyeinvertermaster_time_of_use
|
|
enabled: false
|
|
- action: scene.create
|
|
metadata: {}
|
|
data:
|
|
scene_id: before_battery_charge
|
|
snapshot_entities:
|
|
- select.deyeinvertermaster_timezone1_charge
|
|
- select.deyeinvertermaster_timezone2_charge
|
|
- select.deyeinvertermaster_timezone3_charge
|
|
- select.deyeinvertermaster_timezone4_charge
|
|
- select.deyeinvertermaster_timezone5_charge
|
|
- select.deyeinvertermaster_timezone6_charge
|
|
- number.deyeinvertermaster_timezone1_soc
|
|
- number.deyeinvertermaster_timezone2_soc
|
|
- number.deyeinvertermaster_timezone3_soc
|
|
- number.deyeinvertermaster_timezone4_soc
|
|
- number.deyeinvertermaster_timezone5_soc
|
|
- number.deyeinvertermaster_timezone6_soc
|
|
enabled: true
|
|
- action: select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: Grid
|
|
target:
|
|
entity_id:
|
|
- select.deyeinvertermaster_timezone1_charge
|
|
- select.deyeinvertermaster_timezone2_charge
|
|
- select.deyeinvertermaster_timezone3_charge
|
|
- select.deyeinvertermaster_timezone4_charge
|
|
- select.deyeinvertermaster_timezone5_charge
|
|
- select.deyeinvertermaster_timezone6_charge
|
|
enabled: true
|
|
- action: number.set_value
|
|
metadata: {}
|
|
data:
|
|
value: '{{ states("input_number.charge_battery_target_percentage") }}'
|
|
target:
|
|
entity_id:
|
|
- number.deyeinvertermaster_timezone1_soc
|
|
- number.deyeinvertermaster_timezone2_soc
|
|
- number.deyeinvertermaster_timezone3_soc
|
|
- number.deyeinvertermaster_timezone4_soc
|
|
- number.deyeinvertermaster_timezone5_soc
|
|
- number.deyeinvertermaster_timezone6_soc
|
|
enabled: true
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- Disable Charge from Grid
|
|
sequence:
|
|
- action: switch.turn_off
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: switch.deyeinvertermaster_battery_grid_charge_enabled
|
|
enabled: true
|
|
- action: switch.turn_on
|
|
metadata: {}
|
|
data: {}
|
|
target:
|
|
entity_id: switch.deyeinvertermaster_time_of_use
|
|
enabled: false
|
|
- action: scene.turn_on
|
|
metadata: {}
|
|
target:
|
|
entity_id: scene.before_battery_charge
|
|
enabled: true
|
|
mode: single
|
|
- id: '1709538239920'
|
|
alias: Monitor Discharge price Automation
|
|
description: ''
|
|
triggers:
|
|
- entity_id:
|
|
- sensor.tge_fixing_1_rate
|
|
trigger: state
|
|
- entity_id:
|
|
- input_number.charge_below_price
|
|
trigger: state
|
|
- entity_id:
|
|
- input_number.discharge_above_price
|
|
trigger: state
|
|
conditions: []
|
|
actions:
|
|
- choose:
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states("sensor.tge_fixing_1_rate") >= states("input_number.discharge_above_price")}}'
|
|
sequence:
|
|
- action: input_boolean.turn_on
|
|
target:
|
|
entity_id: input_boolean.discharge_battery_switch
|
|
data: {}
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states("sensor.tge_fixing_1_rate") < states("input_number.discharge_above_price")}}'
|
|
sequence:
|
|
- action: input_boolean.turn_off
|
|
target:
|
|
entity_id: input_boolean.discharge_battery_switch
|
|
data: {}
|
|
mode: single
|
|
- id: '1736266366952'
|
|
alias: Automatically Update Charge Price
|
|
description: Automate the price so you do not need to monitor prices
|
|
triggers:
|
|
- trigger: state
|
|
entity_id:
|
|
- sensor.suggested_cheap_price
|
|
- trigger: state
|
|
entity_id:
|
|
- automation.automatically_update_charge_price
|
|
from: 'off'
|
|
to: 'on'
|
|
conditions: []
|
|
actions:
|
|
- action: input_number.set_value
|
|
metadata: {}
|
|
data:
|
|
value: '{{ states("sensor.suggested_cheap_price") }}'
|
|
target:
|
|
entity_id: input_number.charge_below_price
|
|
mode: single
|
|
- id: '1717429630744'
|
|
alias: Prepaid meter recharge
|
|
description: ''
|
|
trigger:
|
|
- platform: state
|
|
entity_id:
|
|
- input_number.prepaid_meter_units
|
|
condition:
|
|
- condition: template
|
|
value_template: '{{ states(''input_number.prepaid_meter_units'') | float > 0 }}'
|
|
actions:
|
|
- action: input_number.set_value
|
|
metadata: {}
|
|
data:
|
|
value: '{{ ((states(''sensor.deyeinvertermaster_summary_total_grid_import_buy'')
|
|
| float(6)) * 1000.0) }}'
|
|
target:
|
|
entity_id: input_number.prepaid_meter_inverter_total_units
|
|
mode: single
|
|
- id: '1680707528756'
|
|
alias: InverterConfig Update Times
|
|
description: Automation fetches TimeOfUse values and updates HA/Inverter
|
|
triggers:
|
|
- trigger: state
|
|
entity_id:
|
|
- number.deyeinvertermaster_timezone1_time
|
|
- number.deyeinvertermaster_timezone2_time
|
|
- number.deyeinvertermaster_timezone3_time
|
|
- number.deyeinvertermaster_timezone4_time
|
|
- number.deyeinvertermaster_timezone5_time
|
|
- number.deyeinvertermaster_timezone6_time
|
|
id: sendUpdatetoHATimeObjects
|
|
- trigger: state
|
|
entity_id:
|
|
- input_datetime.timezone1_time
|
|
- input_datetime.timezone2_time
|
|
- input_datetime.timezone3_time
|
|
- input_datetime.timezone4_time
|
|
- input_datetime.timezone5_time
|
|
- input_datetime.timezone6_time
|
|
id: SendUpdateToInverter
|
|
condition:
|
|
- condition: template
|
|
value_template: '{{ trigger.to_state.state != ''unavailable'' }}'
|
|
actions:
|
|
- delay:
|
|
hours: 0
|
|
minutes: 0
|
|
seconds: 2
|
|
milliseconds: 0
|
|
- choose:
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- SendUpdateToInverter
|
|
sequence:
|
|
- action: number.set_value
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone1_time
|
|
data:
|
|
value: '{{state_attr(''input_datetime.timezone1_time'', ''timestamp'') |
|
|
timestamp_custom("%H%M", false) | float}}'
|
|
- action: number.set_value
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone2_time
|
|
data:
|
|
value: '{{state_attr(''input_datetime.timezone2_time'', ''timestamp'') |
|
|
timestamp_custom("%H%M", false) | float}}'
|
|
- action: number.set_value
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone3_time
|
|
data:
|
|
value: '{{state_attr(''input_datetime.timezone3_time'', ''timestamp'') |
|
|
timestamp_custom("%H%M", false) | float}}'
|
|
- action: number.set_value
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone4_time
|
|
data:
|
|
value: '{{state_attr(''input_datetime.timezone4_time'', ''timestamp'') |
|
|
timestamp_custom("%H%M", false) | float}}'
|
|
- action: number.set_value
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone5_time
|
|
data:
|
|
value: '{{state_attr(''input_datetime.timezone5_time'', ''timestamp'') |
|
|
timestamp_custom("%H%M", false) | float}}'
|
|
- action: number.set_value
|
|
target:
|
|
entity_id: number.deyeinvertermaster_timezone6_time
|
|
data:
|
|
value: '{{state_attr(''input_datetime.timezone6_time'', ''timestamp'') |
|
|
timestamp_custom("%H%M", false) | float}}'
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- sendUpdatetoHATimeObjects
|
|
sequence:
|
|
- action: input_datetime.set_datetime
|
|
target:
|
|
entity_id: input_datetime.timezone1_time
|
|
data:
|
|
time: '{% set min = ((states(''number.deyeinvertermaster_timezone1_time'')
|
|
| int) % 100) %} {% set hour = ((states(''number.deyeinvertermaster_timezone1_time'')
|
|
| int) // 100) %} {{''%02d'' % hour}}:{{''%02d'' % min}}:00'
|
|
- action: input_datetime.set_datetime
|
|
target:
|
|
entity_id: input_datetime.timezone2_time
|
|
data:
|
|
time: '{% set min = ((states(''number.deyeinvertermaster_timezone2_time'')
|
|
| int) % 100) %} {% set hour = ((states(''number.deyeinvertermaster_timezone2_time'')
|
|
| int) // 100) %} {{''%02d'' % hour}}:{{''%02d'' % min}}:00'
|
|
- action: input_datetime.set_datetime
|
|
target:
|
|
entity_id: input_datetime.timezone3_time
|
|
data:
|
|
time: '{% set min = ((states(''number.deyeinvertermaster_timezone3_time'')
|
|
| int) % 100) %} {% set hour = ((states(''number.deyeinvertermaster_timezone3_time'')
|
|
| int) // 100) %} {{''%02d'' % hour}}:{{''%02d'' % min}}:00'
|
|
- action: input_datetime.set_datetime
|
|
target:
|
|
entity_id: input_datetime.timezone4_time
|
|
data:
|
|
time: '{% set min = ((states(''number.deyeinvertermaster_timezone4_time'')
|
|
| int) % 100) %} {% set hour = ((states(''number.deyeinvertermaster_timezone4_time'')
|
|
| int) // 100) %} {{''%02d'' % hour}}:{{''%02d'' % min}}:00'
|
|
- action: input_datetime.set_datetime
|
|
target:
|
|
entity_id: input_datetime.timezone5_time
|
|
data:
|
|
time: '{% set min = ((states(''number.deyeinvertermaster_timezone5_time'')
|
|
| int) % 100) %} {% set hour = ((states(''number.deyeinvertermaster_timezone5_time'')
|
|
| int) // 100) %} {{''%02d'' % hour}}:{{''%02d'' % min}}:00'
|
|
- action: input_datetime.set_datetime
|
|
target:
|
|
entity_id: input_datetime.timezone6_time
|
|
data:
|
|
time: '{% set min = ((states(''number.deyeinvertermaster_timezone6_time'')
|
|
| int) % 100) %} {% set hour = ((states(''number.deyeinvertermaster_timezone6_time'')
|
|
| int) // 100) %} {{''%02d'' % hour}}:{{''%02d'' % min}}:00'
|
|
- delay:
|
|
hours: 0
|
|
minutes: 0
|
|
seconds: 2
|
|
milliseconds: 0
|
|
mode: single
|
|
- id: '1717083464657'
|
|
alias: Server Sync Clock
|
|
description: ''
|
|
triggers:
|
|
- trigger: time
|
|
at: 00:50:00
|
|
id: enableSync
|
|
- trigger: time
|
|
at: 01:10:00
|
|
id: disableSync
|
|
condition: []
|
|
actions:
|
|
- choose:
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- enableSync
|
|
sequence:
|
|
- action: select.select_option
|
|
target:
|
|
entity_id: select.deyeinvertermaster_inverter_basic_settings_sync_clock
|
|
data:
|
|
option: Enable
|
|
- conditions:
|
|
- condition: trigger
|
|
id:
|
|
- disableSync
|
|
sequence:
|
|
- action: select.select_option
|
|
metadata: {}
|
|
data:
|
|
option: Disable
|
|
target:
|
|
entity_id: select.deyeinvertermaster_inverter_basic_settings_sync_clock
|
|
mode: single
|
|
- id: '1685459034446'
|
|
alias: Telegram debug automation to see chatIDs
|
|
description: ''
|
|
trigger:
|
|
- platform: event
|
|
event_type: telegram_text
|
|
event_data:
|
|
text: command1
|
|
id: sampleCommand1
|
|
- platform: event
|
|
event_type: telegram_text
|
|
id: Unknown
|
|
condition: []
|
|
action:
|
|
- choose:
|
|
- conditions:
|
|
- condition: trigger
|
|
id: Unknown
|
|
sequence:
|
|
- action: telegram_bot.send_message
|
|
data:
|
|
message: 'I got a message from chatID: {{ trigger.event.data.chat_id }}'
|
|
target: '{{ trigger.event.data.chat_id }}'
|
|
- conditions:
|
|
- condition: trigger
|
|
id: sampleCommand1
|
|
sequence:
|
|
- action: telegram_bot.send_message
|
|
data:
|
|
message: command1 was understood and I will action it now
|
|
target: '{{ trigger.event.data.chat_id }}'
|
|
- action: input_boolean.turn_on
|
|
data: {}
|
|
mode: parallel
|
|
- id: '1685462793973'
|
|
alias: Telegram Loadshedding annoucement
|
|
description: ''
|
|
trigger:
|
|
- platform: numeric_state
|
|
entity_id: sensor.deyeinvertermaster_grid_frequency
|
|
for:
|
|
hours: 0
|
|
minutes: 0
|
|
seconds: 5
|
|
below: 49
|
|
id: power-off
|
|
- platform: numeric_state
|
|
entity_id: sensor.deyeinvertermaster_grid_frequency
|
|
for:
|
|
hours: 0
|
|
minutes: 0
|
|
seconds: 5
|
|
above: 49.1
|
|
id: power-on
|
|
- platform: numeric_state
|
|
entity_id: sensor.deyeinvertermaster_battery_soc
|
|
below: 20
|
|
id: Battery below 20
|
|
condition: []
|
|
action:
|
|
- choose:
|
|
- conditions:
|
|
- condition: trigger
|
|
id: power-on
|
|
- condition: template
|
|
value_template: '{{ trigger.from_state.state != ''unavailable'' }}'
|
|
sequence:
|
|
- action: telegram_bot.send_message
|
|
data:
|
|
message: 'Loadshedding finished with battery SOC: {{states("sensor.deyeinvertermaster_battery_soc")}}%'
|
|
- action: telegram_bot.send_message
|
|
data:
|
|
message: 'Loadshedding finished with battery SOC: {{states("sensor.deyeinvertermaster_battery_soc")}}%'
|
|
target: -12333321
|
|
- conditions:
|
|
- condition: trigger
|
|
id: power-off
|
|
- condition: template
|
|
value_template: '{{ trigger.from_state.state != ''unavailable'' }}'
|
|
sequence:
|
|
- action: telegram_bot.send_message
|
|
data:
|
|
message: 'Loadshedding started with battery SOC: {{states("sensor.deyeinvertermaster_battery_soc")}}%'
|
|
- action: telegram_bot.send_message
|
|
data:
|
|
message: 'Loadshedding started with battery SOC: {{states("sensor.deyeinvertermaster_battery_soc")}}%'
|
|
target: -12333321
|
|
- conditions:
|
|
- condition: trigger
|
|
id: Battery below 20
|
|
- condition: numeric_state
|
|
entity_id: sensor.deyeinvertermaster_grid_frequency
|
|
below: 49
|
|
sequence:
|
|
- action: telegram_bot.send_message
|
|
data:
|
|
message: Grid down and battery below 20%
|
|
- action: telegram_bot.send_message
|
|
data:
|
|
message: Grid down and battery below 20%
|
|
target: -12333321
|
|
mode: single
|