Skip to content

NoUsername10/Solar-Panel-Visualizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Solar Panel Visualizer

GUI-first Lovelace card for building a visual solar array map with live panel diagnostics, smart status coloring, and in-card configuration workflows.

hacs_badge ha_badge coffee_badge

Overview of the card (GIF). Right-click and select "Play animation" on Safari macOS:

✨ Quick Facts

  • Built for visual clarity: panel tiles, KPI row, status labeling, and popup diagnostics, for small and big screens.
  • GUI-first setup: start with rows/columns, then configure each panel slot.
  • Supports large systems: scales to 100+ panels when needed.
  • Drag-and-drop panel reordering directly on the card.
  • Quick setup by tapping unconfigured panels.
  • Array Health Check for peer comparison and underperformance detection.
  • Inverter status matching with configurable working/fault terms.
  • In-card history graphs in panel and KPI popups (1h, 6h, 24h).
  • Auto-populate sensors by prefix (fill empty slots in order) during setup.
  • Full YAML parity for advanced users.

🖼️ Pictures from the GUI

Overview of the card:

Full GUI setup, no YAML needed:

Panel health overview
TTC (Tap-To-Configure) panels (Quick Setup)
Array health overview
KPI sensors (Key Performance Indicators)

🖱️ Card Interactions

Drag and Drop Panels
  • Press and drag any panel tile onto another tile.
  • The two panel slots swap positions.
  • Order is saved to card config so layout remains consistent.
Tap-To-Config (Quick Setup)
  • Tap an unconfigured panel tile.
  • Quick Setup popup opens with:
    • Select panel power sensor
    • Disable Panel (hide but keep slot when off)
  • After selecting power sensor, normal panel detail popup behavior is used.
Panel and KPI Popups
  • Panel popup shows status, power, energy, deviation context, inverter status, and history graph.
  • Power, Energy, and Custom KPI cards open their own popup views.
  • History range chips (1h, 6h, 24h) switch graph window.

⚙️ Setup (GUI Sections)

Layout
  • Title: Card title text.
  • Rows / Columns: Defines array shape and total panel slots.
  • Max card width (px): Limits full card width on large screens.
  • Max card height (px): Optional height cap with internal scroll.
Display
  • Power decimals: Precision for power values.
  • Energy decimals: Precision for energy values.
  • Custom KPI decimals: Precision for numeric custom KPI.
  • Panel tap action: Open detail popup or no action.
  • Use one system power sensor for top KPI:
    • Select a single power entity for top KPI power.
    • Optional Invert system power value for negative-source sensors.
  • Use one system daily energy sensor for top KPI:
    • Select a single energy entity for top KPI energy.
  • Custom KPI sensor / heading / show toggle:
    • Add a fourth KPI with custom title + sensor.
  • Limit panel tile max width:
    • Prevents tiles from stretching too wide on large screens.
    • Max panel tile width (px) controls the cap.
Array Health Check
  • Enable Array Health Check: Turns deviation engine on/off.
  • Deviation threshold (%): Relative shortfall trigger.
  • Absolute shortfall threshold (W): Minimum shortfall in watts.
  • Deviation check time (minutes): Runtime gate before checks.
  • Minimum active panels: Required active panel count.
  • Minimum samples per panel: Data quality gate.
  • Smoothing window (minutes): Averages recent power values.
  • Dynamic floor start (W): Suppresses low-power false positives.
  • Shared history window (hours): Recorder-backed baseline period.
Inverter Status
  • Enable inverter status checks: Uses inverter status entity text.
  • Show inverter status on panel tiles: Optional on-tile status text.
  • Fault terms (comma-separated):
    • If status matches these terms, panel is flagged inverter/error state.
  • Working terms (comma-separated):
    • Terms that indicate expected operation.
Status Colors
  • Production base / mid / peak: Gradient colors by panel production level.
  • Deviation / Error / Unavailable: Override state colors.
  • Production color intensity: Controls production glow strength.
Panels

Each slot contains:

  • Display name
  • Power sensor P(W) (primary panel source)
  • Energy sensor (kWh/Wh) (optional)
  • Show panel energy (toggle)
  • Panel rated power (W) (used for performance percentage)
  • Deviation derate (%) (for naturally shaded panels in health checks)
  • Inverter status sensor (optional)
  • Show panel tile (hide but keep slot when off)

Tools:

  • Default panel rated power + Apply default rated W to all panels
  • Auto-populate sensors by prefix (fill empty slots in order)
  • Remove all sensors

📦 Installation (HACS Recommended)

  1. In HACS, add this repository as a Custom repository:
    • URL: https://github.com/NoUsername10/Solar-Panel-Visualizer
    • Category: Dashboard
  2. Install Solar Panel Visualizer.
  3. Reload Home Assistant frontend (or restart Home Assistant).
  4. Add card type: custom:solar-panel-visualizer.

If the resource is not auto-added:

url: /hacsfiles/Solar-Panel-Visualizer/solar-panel-visualizer.js
type: module

🧩 Add The Card In GUI

  1. Open dashboard.
  2. Click Edit dashboard.
  3. Click + Add card.
  4. Select Solar Panel Visualizer.
  5. Save.

If not listed in picker, use Manual card:

type: custom:solar-panel-visualizer

⚡ Minimal YAML (GUI-first baseline)

GUI-only config:

type: custom:solar-panel-visualizer

Minimal YAML-only config:

type: custom:solar-panel-visualizer
title: My Array
rows: 1
columns: 4
panels:
  - id: panel-1
    name: Panel 1
    power_entity: sensor.panel_1_power
  - id: panel-2
    name: Panel 2
    power_entity: sensor.panel_2_power
  - id: panel-3
    name: Panel 3
    power_entity: sensor.panel_3_power
  - id: panel-4
    name: Panel 4
    power_entity: sensor.panel_4_power

📄 License

MIT License.

About

A Solar Panel visualiser plugin for Home Assistant that displays your solar array in a Lovelace configurable card. Includes support for Forecast.Solar to compare with your system performance. Configurable Panel health checks and light and dark theme.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages