alias: "Battery Control - Pstryk Recommendations" description: "React instantly to Pstryk battery recommendations with Tesla charging protection" mode: single trigger: # React instantly when recommendation changes - platform: state entity_id: sensor.pstryk_battery_recommendation to: - "charge" - "discharge" - "standby" for: seconds: 30 # Also react when Tesla power changes significantly - platform: numeric_state entity_id: 9eed3a28cda747219c2d04d079725d9e above: 2000 for: seconds: 10 - platform: numeric_state entity_id: 9eed3a28cda747219c2d04d079725d9e below: 2000 for: seconds: 60 condition: - condition: template value_template: > {{ states('sensor.pstryk_battery_recommendation') not in ['unavailable', 'unknown'] }} action: - choose: # ========================================== # OVERRIDE: Tesla charging > 2000W = STANDBY # ========================================== - conditions: - type: is_power condition: device device_id: 371785f33a0d9b3ea38ed224f9e17a4b entity_id: 9eed3a28cda747219c2d04d079725d9e domain: sensor above: 2000 sequence: - service: logbook.log data: name: "Battery STANDBY (Tesla Override)" message: > Tesla charging detected - switching to standby to protect grid connection. SoC: {{ states('sensor.wifiplug_battery_state_of_charge') }}% # Falownik 1 - STANDBY mode - device_id: ef18bab10bdf401736c3e075d9bdf9b5 domain: select entity_id: 563f86d007910857cbd24d428ff665b0 type: select_option option: PV-Utility-Battery (SUB) - delay: seconds: 15 - device_id: ef18bab10bdf401736c3e075d9bdf9b5 domain: select entity_id: 3ae13e5dc606d367078291bda9b40274 type: select_option option: Only PV charging is allowed - delay: seconds: 15 # Falownik 2 - STANDBY mode - device_id: d65f655bdd00e2cdb019739f974b8c7c domain: select entity_id: c94531b376614314af08b17931f69980 type: select_option option: PV-Utility-Battery (SUB) - delay: seconds: 15 - device_id: d65f655bdd00e2cdb019739f974b8c7c domain: select entity_id: b069e234e5478ed26733d4d85b2d00a5 type: select_option option: Only PV charging is allowed - service: input_boolean.turn_off target: entity_id: input_boolean.1h_battery_boost # ========================================== # CHARGE (when Tesla < 2000W) # ========================================== - conditions: - condition: state entity_id: sensor.pstryk_battery_recommendation state: "charge" - type: is_power condition: device device_id: 371785f33a0d9b3ea38ed224f9e17a4b entity_id: 9eed3a28cda747219c2d04d079725d9e domain: sensor below: 2000 sequence: - service: logbook.log data: name: "Battery CHARGE" message: > {{ state_attr('sensor.pstryk_battery_recommendation', 'reason') }} SoC: {{ states('sensor.wifiplug_battery_state_of_charge') }}% Price: {{ states('sensor.pstryk_current_buy_price') }} PLN/kWh # Falownik 1 - CHARGE mode - device_id: ef18bab10bdf401736c3e075d9bdf9b5 domain: select entity_id: 563f86d007910857cbd24d428ff665b0 type: select_option option: PV-Utility-Battery (SUB) - delay: seconds: 15 - device_id: ef18bab10bdf401736c3e075d9bdf9b5 domain: select entity_id: 3ae13e5dc606d367078291bda9b40274 type: select_option option: PV priority - delay: seconds: 15 # Falownik 2 - CHARGE mode - device_id: d65f655bdd00e2cdb019739f974b8c7c domain: select entity_id: c94531b376614314af08b17931f69980 type: select_option option: PV-Utility-Battery (SUB) - delay: seconds: 15 - device_id: d65f655bdd00e2cdb019739f974b8c7c domain: select entity_id: b069e234e5478ed26733d4d85b2d00a5 type: select_option option: PV priority # ========================================== # DISCHARGE # ========================================== - conditions: - condition: state entity_id: sensor.pstryk_battery_recommendation state: "discharge" sequence: - service: logbook.log data: name: "Battery DISCHARGE" message: > {{ state_attr('sensor.pstryk_battery_recommendation', 'reason') }} SoC: {{ states('sensor.wifiplug_battery_state_of_charge') }}% Price: {{ states('sensor.pstryk_current_buy_price') }} PLN/kWh # Falownik 1 - DISCHARGE mode - device_id: ef18bab10bdf401736c3e075d9bdf9b5 domain: select entity_id: 563f86d007910857cbd24d428ff665b0 type: select_option option: PV-Battery-Utility (SBU) - delay: seconds: 15 - device_id: ef18bab10bdf401736c3e075d9bdf9b5 domain: select entity_id: 3ae13e5dc606d367078291bda9b40274 type: select_option option: Only PV charging is allowed - delay: seconds: 15 # Falownik 2 - DISCHARGE mode - device_id: d65f655bdd00e2cdb019739f974b8c7c domain: select entity_id: c94531b376614314af08b17931f69980 type: select_option option: PV-Battery-Utility (SBU) - delay: seconds: 15 - device_id: d65f655bdd00e2cdb019739f974b8c7c domain: select entity_id: b069e234e5478ed26733d4d85b2d00a5 type: select_option option: Only PV charging is allowed - service: input_boolean.turn_off target: entity_id: input_boolean.1h_battery_boost # ========================================== # STANDBY # ========================================== - conditions: - condition: state entity_id: sensor.pstryk_battery_recommendation state: "standby" sequence: - service: logbook.log data: name: "Battery STANDBY" message: > {{ state_attr('sensor.pstryk_battery_recommendation', 'reason') }} SoC: {{ states('sensor.wifiplug_battery_state_of_charge') }}% Price: {{ states('sensor.pstryk_current_buy_price') }} PLN/kWh # Falownik 1 - STANDBY mode - device_id: ef18bab10bdf401736c3e075d9bdf9b5 domain: select entity_id: 563f86d007910857cbd24d428ff665b0 type: select_option option: PV-Utility-Battery (SUB) - delay: seconds: 15 - device_id: ef18bab10bdf401736c3e075d9bdf9b5 domain: select entity_id: 3ae13e5dc606d367078291bda9b40274 type: select_option option: Only PV charging is allowed - delay: seconds: 15 # Falownik 2 - STANDBY mode - device_id: d65f655bdd00e2cdb019739f974b8c7c domain: select entity_id: c94531b376614314af08b17931f69980 type: select_option option: PV-Utility-Battery (SUB) - delay: seconds: 15 - device_id: d65f655bdd00e2cdb019739f974b8c7c domain: select entity_id: b069e234e5478ed26733d4d85b2d00a5 type: select_option option: Only PV charging is allowed - service: input_boolean.turn_off target: entity_id: input_boolean.1h_battery_boost