From 4c8ae747778dd6c81f8a70e2f7309815a907577a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Stormwall?= Date: Mon, 27 Jul 2026 19:13:09 +0200 Subject: [PATCH] fix: solar charging dashboard --- dashboard/solar_charging.yaml | 156 ++++++++++++++++++++++++++++++++++ 1 file changed, 156 insertions(+) create mode 100644 dashboard/solar_charging.yaml diff --git a/dashboard/solar_charging.yaml b/dashboard/solar_charging.yaml new file mode 100644 index 0000000..fb6d707 --- /dev/null +++ b/dashboard/solar_charging.yaml @@ -0,0 +1,156 @@ +# Easee Solar Charging — Mushroom dashboard view +# +# Requirements: Mushroom cards (HACS → lovelace-mushroom) +# +# Replace CHARGER_ID everywhere below with your charger serial number +# (lowercase), e.g. ehxt9pqp. +# +# Entity IDs created by this integration: +# sensor.esc_{CHARGER_ID}_solar_production +# sensor.esc_{CHARGER_ID}_house_load +# sensor.esc_{CHARGER_ID}_ev_charging +# sensor.esc_{CHARGER_ID}_solar_excess +# sensor.esc_{CHARGER_ID}_target_current +# sensor.esc_{CHARGER_ID}_charger_current +# sensor.esc_{CHARGER_ID}_charger_status +# switch.esc_{CHARGER_ID}_solar_charging +# switch.esc_{CHARGER_ID}_stop_grace +# +# To use: paste the entire file as a new view in your dashboard YAML +# (under the `views:` key), or add individual cards via the UI card editor. + +title: Solar Charging +path: solar-charging +icon: mdi:solar-power-variant +cards: + + # ── Status chips ───────────────────────────────────────────────────────────── + # Compact at-a-glance row: charger state + both toggles. + - type: custom:mushroom-chips-card + chips: + - type: template + icon: mdi:ev-station + content: >- + {{ states('sensor.esc_CHARGER_ID_charger_status') | replace('_', ' ') | title }} + icon_color: |- + {% set s = states('sensor.esc_CHARGER_ID_charger_status') %} + {% if s == 'charging' %}green + {% elif s in ['awaiting_start', 'ready_to_charge'] %}amber + {% elif s in ['awaiting_authorization', 'awaiting_schedule', 'completed'] %}light-blue + {% elif s == 'error' %}red + {% else %}grey{% endif %} + tap_action: + action: more-info + entity: sensor.esc_CHARGER_ID_charger_status + + - type: entity + entity: switch.esc_CHARGER_ID_solar_charging + icon_color: green + tap_action: + action: toggle + + - type: entity + entity: switch.esc_CHARGER_ID_stop_grace + icon_color: amber + tap_action: + action: toggle + + # ── Power flow ──────────────────────────────────────────────────────────────── + - type: horizontal-stack + cards: + - type: custom:mushroom-entity-card + entity: sensor.esc_CHARGER_ID_solar_production + name: Production + icon: mdi:solar-power + icon_color: amber + layout: vertical + tap_action: + action: more-info + + - type: custom:mushroom-entity-card + entity: sensor.esc_CHARGER_ID_house_load + name: House + icon: mdi:home-lightning-bolt + icon_color: blue + layout: vertical + tap_action: + action: more-info + + - type: custom:mushroom-entity-card + entity: sensor.esc_CHARGER_ID_ev_charging + name: EV Draw + icon: mdi:car-electric + icon_color: teal + layout: vertical + tap_action: + action: more-info + + # Solar excess gets its own template card so the icon turns red when negative. + - type: custom:mushroom-template-card + primary: Solar Surplus + secondary: "{{ states('sensor.esc_CHARGER_ID_solar_excess') | float(0) | round }} W" + icon: mdi:lightning-bolt-circle + icon_color: |- + {% if states('sensor.esc_CHARGER_ID_solar_excess') | float(0) > 0 %}green + {% else %}red{% endif %} + tap_action: + action: more-info + entity: sensor.esc_CHARGER_ID_solar_excess + + # ── Charging current ────────────────────────────────────────────────────────── + - type: horizontal-stack + cards: + - type: custom:mushroom-entity-card + entity: sensor.esc_CHARGER_ID_target_current + name: Target + icon: mdi:lightning-bolt + icon_color: green + layout: vertical + tap_action: + action: more-info + + - type: custom:mushroom-entity-card + entity: sensor.esc_CHARGER_ID_charger_current + name: Actual + icon: mdi:current-ac + icon_color: deep-purple + layout: vertical + tap_action: + action: more-info + + # ── Runtime controls ────────────────────────────────────────────────────────── + # Tap to toggle; hold for details. + - type: horizontal-stack + cards: + - type: custom:mushroom-entity-card + entity: switch.esc_CHARGER_ID_solar_charging + name: Solar Charging + icon: mdi:solar-power-variant + tap_action: + action: toggle + hold_action: + action: more-info + layout: vertical + + - type: custom:mushroom-entity-card + entity: switch.esc_CHARGER_ID_stop_grace + name: Stop Grace + icon: mdi:timer-pause + tap_action: + action: toggle + hold_action: + action: more-info + layout: vertical + + # ── Integration settings ────────────────────────────────────────────────────── + # Charging profile, grace period, dead-band, forecast sensor/confidence/look-ahead, + # and notification target are configured in the integration options flow — tap below + # to open it. + - type: custom:mushroom-template-card + primary: Integration Settings + secondary: Profile · grace · forecast · dead-band · notifications + icon: mdi:cog + icon_color: grey + tap_action: + action: navigate + navigation_path: /config/integrations/integration/easee_solar_charging