Home-AssistantConfig/config/packages/powerwall.yaml

98 lines
3.1 KiB
YAML
Executable File

######################################################################################################
### @Tesla Powerwall - https://www.vcloudinfo.com/2018/01/going-green-to-save-some-green-in-2018.html
# # @CCOSTAN
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
######################################################################################################
#-------------------------------------------
group:
Power:
entities:
- sensor.grid_status
- sensor.powerwall_battery_capacity
- sensor.powerwall_battery_now
- sensor.grid_now
- sensor.house_now
- sensor.solar_now
- camera.grafana_solar_graph
#-------------------------------------------
sensor:
- platform: rest
resource: https://192.168.10.90/api/system_status/grid_status
verify_ssl: false
method: GET
name: Grid Status
scan_interval: 60
value_template: "{{ value_json.grid_status == 'SystemGridConnected' }}"
- platform: rest
name: House now
resource: https://192.168.10.90/api/meters/aggregates
method: GET
verify_ssl: false
value_template: '{{ value_json.load.instant_power / 1000 | round(2) }}'
unit_of_measurement: kWh
device_class: power
- platform: rest
name: Grid now
resource: https://192.168.10.90/api/meters/aggregates
method: GET
verify_ssl: false
value_template: '{{ value_json.site.instant_power / 1000 | round(2) }}'
unit_of_measurement: kWh
device_class: power
- platform: rest
name: Solar now
resource: https://192.168.10.90/api/meters/aggregates
method: GET
verify_ssl: false
value_template: '{{ value_json.solar.instant_power / 1000 | round(2) }}'
unit_of_measurement: kWh
device_class: power
- platform: rest
name: PowerWall Battery now
resource: https://192.168.10.90/api/meters/aggregates
method: GET
verify_ssl: false
value_template: '{{ value_json.battery.instant_power / 1000 | round(2) }}'
unit_of_measurement: kWh
device_class: power
- platform: rest
name: PowerWall Battery Capacity
resource: https://192.168.10.90/api/system_status/soe
method: GET
verify_ssl: false
value_template: '{{ (value_json.percentage | float | round(0)) }}'
unit_of_measurement: '%'
scan_interval: 300
device_class: battery
#-------------------------------------------
# Located in the Grafana package. Tweets out Solar Production Daily!
#
automation:
- alias: Notify if Grid is down
hide_entity: True
trigger:
- platform: state
entity_id: sensor.grid_status
condition:
condition: or
conditions:
- condition: template
value_template: "{{ states('sensor.grid_status') == 'True' }}"
- condition: template
value_template: "{{ states('sensor.grid_status') == 'False' }}"
action:
- service: script.notify_engine
data_template:
value1: "The electrical grid is reporting to be {{ (trigger.to_state.state)|replace('True', 'up')|replace('False', 'down') }}. Please verify with Tesla App."
who: 'parents'