Project skeleton
Some checks failed
HACS Validation / validate (push) Failing after 38s
Validate with hassfest / validate (push) Failing after 41s

This commit is contained in:
Adrian Rumpold
2025-04-07 10:17:40 +02:00
commit 5180992e98
23 changed files with 3302 additions and 0 deletions

View File

@@ -0,0 +1,52 @@
"""Constants for the PV Microinverter integration."""
from dataclasses import dataclass
from typing import Final
DOMAIN: Final = "pv_microinverter"
MANUFACTURER: Final = "Envertech"
# Config flow
CONF_STATION_ID: Final = "station_id"
CONF_UPDATE_INTERVAL: Final = "update_interval"
# Default values
DEFAULT_UPDATE_INTERVAL: Final = 60 # 1 minute
# Entity attributes
ATTR_LAST_UPDATED: Final = "last_updated"
# Sensors
SENSOR_TYPES: Final = {
"current_power": {
"name": "Current Power",
"icon": "mdi:solar-power",
"unit": "W",
"device_class": "power",
"state_class": "measurement",
},
"today_energy": {
"name": "Today's Energy",
"icon": "mdi:solar-power",
"unit": "kWh",
"device_class": "energy",
"state_class": "total_increasing",
},
"lifetime_energy": {
"name": "Lifetime Energy",
"icon": "mdi:solar-power",
"unit": "kWh",
"device_class": "energy",
"state_class": "total_increasing",
},
}
@dataclass
class PVMicroinverterData:
"""Class to hold PV microinverter data."""
current_power: float
today_energy: float
lifetime_energy: float
last_updated: str