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.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages

 
 
 

Contributors