-
Notifications
You must be signed in to change notification settings - Fork 0
Home Assistant automations
stefanschoemaker edited this page May 14, 2025
·
3 revisions
Add 2 automations:
alias: GbbOptimizer - MQTT Publish
description: Send every-minute energy stats to GbbOptimizer via MQTT
triggers:
- seconds: "1"
trigger: time_pattern
minutes: /15
actions:
- data:
qos: 0
retain: false
topic: ha_gbb/sensor
payload: |-
{
"loads_total_kWh": {{ states("sensor.growatt_omvormer_local_load_total") | float(-1) }},
"fromgrid_total_kWh": {{ states("sensor.meterstand") | float(-1) }},
"pv_total_kWh": {{ states("sensor.omcucd708c_pv_all_energy_total") | float(-1) }},
"soc_perc": {{ states("sensor.growatt_omvormer_battery_soc") | float(-1) }},
"togrid_total_kWh": {{ states("sensor.teruglevering") | float(-1) }},
"ev_charge_total_kWh": {{ states("sensor.auto_stroom_totaal_verbruik") | float(-1) }},
"hp_total_kWh": {{ states("sensor.airco_stroommeter_total_power_import") | float(-1) }}
}
action: mqtt.publishalias: GbbOptimizer - Handle MQTT EMS Payload
description: >
Set SOC on all six time slots, enforce ChargeLimitW bounds, and toggle
operation input_booleans based on 'Operation'
triggers:
- topic: ha_gbb/EMS
trigger: mqtt
actions:
- choose:
- conditions:
- condition: template
value_template: "{{ trigger.payload_json['Operation'] == 'Normal' }}"
sequence:
- type: turn_off
device_id: d6941af6e53509f79ee3e5e1d2f73ba0
entity_id: 4a126bc84d7dfe61dac87f643ba967ab
domain: switch
- type: turn_off
device_id: d6941af6e53509f79ee3e5e1d2f73ba0
entity_id: 20dedde889c0ca1df78acf21a6f210ac
domain: switch
alias: Mode Normal
- conditions:
- condition: template
value_template: "{{ trigger.payload_json['Operation'] == 'Discharge' }}"
sequence:
- type: turn_on
device_id: d6941af6e53509f79ee3e5e1d2f73ba0
entity_id: 20dedde889c0ca1df78acf21a6f210ac
domain: switch
alias: Mode Discharge
- conditions:
- condition: template
value_template: "{{ trigger.payload_json['Operation'] == 'DisableCharge' }}"
sequence:
- device_id: d6941af6e53509f79ee3e5e1d2f73ba0
domain: select
entity_id: eaa000ef73b3b4ed7853367aa26e360e
type: select_option
option: Disabled
- type: turn_off
device_id: d6941af6e53509f79ee3e5e1d2f73ba0
entity_id: 4a126bc84d7dfe61dac87f643ba967ab
domain: switch
alias: Disable Charge from grid
- conditions:
- condition: template
value_template: "{{ trigger.payload_json['Operation'] == 'Charge' }}"
sequence:
- type: turn_on
device_id: d6941af6e53509f79ee3e5e1d2f73ba0
entity_id: 4a126bc84d7dfe61dac87f643ba967ab
domain: switch
- device_id: d6941af6e53509f79ee3e5e1d2f73ba0
domain: select
entity_id: eaa000ef73b3b4ed7853367aa26e360e
type: select_option
option: Enabled
alias: Charge From Grid