Releases: ludgerbeckmann/ha_solarmax
Releases · ludgerbeckmann/ha_solarmax
Release list
v0.11.0
Added
- Built-in connection-fault notifications, configurable per inverter and for
the inverter group: off, a persistent notification, or a push notification
through any registerednotify.*service (offered as a dropdown). An
inverter defaults to inheriting the group's setting; explicitly setting an
inverter's own mode overrides the group for that inverter only, since the
group has no connection of its own and exists purely as a shared default.
A timing choice sends the notification immediately on fault classification
or after the same 5-minute threshold as the repair issue, and an optional
"notify when back online" setting sends a second notification once a fault
that was actually announced clears.
Full Changelog: v0.10.2...v0.11.0
v0.10.2
Fixed
ConnectionEngine._request_with_retry()now also retries once after a
LinkClosed(e.g. a refused reconnect,ECONNREFUSED), the same way it
already retried once after aLinkTimeout. Debug logs from a real
installation showed the endpoint actively refusing brief reconnect
attempts thousands of times over a few days -- almost always absorbed
transparently by the link's own single reconnect-and-resend, but
occasionally two refusals landed back to back within one poll cycle and
surfaced as a visible connection fault. A second attempt should catch
most of those before they escalate.
Full Changelog: v0.10.1...v0.10.2
v0.10.1
Changed
- Renamed the integration's display name from "Solarmax Inverter" to
"SolarMax" inmanifest.jsonandhacs.json, matching how comparable
official integrations name themselves after just the manufacturer (e.g.
"SolarEdge"). Corrected the "Solarmax" → "SolarMax" capitalization
inconsistency throughout config flow titles/descriptions (all
languages), themanufacturerfield on every device, docstrings, and
documentation. Theha_solarmaxdomain, entity unique IDs, and Python
identifiers are unaffected — no reconfiguration needed for existing
installations.
Full Changelog: v0.10.0...v0.10.1
v0.10.0
Added
- Debug-level logging throughout the connection retry path (
connect
timeouts/failures, response timeouts, peer-closed reconnects, and the
engine's own retry-once attempts), each tagged with host, port, and
(where relevant) inverter address. Previously a sustained daytime fault
left almost no trace in the log beyond the single "unreachable (fault)"
warning at the moment it started, making it impossible to tell after
the fact whether repeated automatic reconnect attempts were timing out,
getting refused, or something else -- particularly unhelpful for a
fault that a Home Assistant restart clears but the integration's own
retries do not, since that points at state stuck in the running
process rather than the network.
Fixed
- Corrected stale troubleshooting docs claiming HOLD/ZERO-policy sensors
stay unavailable after a restart at night; 0.5.4/0.6.3/0.6.4 fixed
that.
Full Changelog: v0.9.3...v0.10.0
v0.9.3
Fixed
- The "Host" → "IP address" field rename in 0.9.0 missed the Repairs
flow's own copy of that label ("Repair inverter connection" dialog),
which kept showing "Host" in all three languages.
Full Changelog: v0.9.2...v0.9.3
v0.9.2
Fixed
- Fixed
TypeError: find_endpoint_conflict() missing 1 required positional argument: 'address'when submitting the "Repair inverter connection"
dialog from Repairs. Both call sites inrepairs.pywere missing the
inverter's address, a pre-existing bug that only surfaced once the
repair flow was actually exercised.
Full Changelog: v0.9.1...v0.9.2
v0.9.1
Changed
- Enabled by default for newly created entities: Grid frequency (
TNF)
and Inverter temperature (TKK) — previously opt-in. Both are single,
broadly useful values (grid stability, overheating) unlike their
per-phase/per-string/secondary siblings (TNH/TNL,TK2/TK3,
etc.), which stay opt-in diagnostics. Only affects entities Home
Assistant has not created yet; existing disabled entities keep their
current state.
Full Changelog: v0.9.0...v0.9.1
v0.9.0
Changed
- Config flow wording cleanup:
- The setup menu's "Add an inverter" / "Add the inverter group" options
dropped the redundant "Add" (the dialog is already an add flow) and
the group option now says it sums the selected inverters, not
every configured one, matching the options step added in 0.7.0. - The
Hostfield is now labeledIP address(IP-Adresse/
Adresse IP), and no longer suggests192.168.1.100by default --
the field starts empty. - The inverter group's setup step gained its own
Device namefield
(it previously had none, always using the fixed English "Inverter
Group"), and both it and the single-inverter setup step now suggest
a name in the active Home Assistant language ("Wechselrichter" /
"Wechselrichtergruppe" for German, "Onduleur" / "Groupe d'onduleurs"
for French, "Inverter" / "Inverter Group" otherwise) instead of a
fixed English default -- editable either way. Dropped the redundant
"Solarmax" prefix from both defaults, matching the earlier
integration-name simplification (the manufacturer already shows
separately in the device info).
- The setup menu's "Add an inverter" / "Add the inverter group" options
Full Changelog: v0.8.0...v0.9.0
v0.8.0
Changed
- The inverter group no longer sums voltages, frequencies, temperatures, or
relative power (UDC/UL1-UL3/UD01-UD03,ULH/ULL,TNF,
TNH/TNL,TKK/TK2/TK3,PRL), and also drops operating hours
(KHR). These are intensive quantities -- the same regardless of how
many inverters are in the group -- so summing them across inverters
produced a meaningless multiple rather than a real total (e.g. three
inverters on the same grid summing to a nonsensical "690V"). The group
now only sums registers where a total genuinely means something: power,
current, energy, installed power, and start count. Existing group sum
entities for the dropped registers are removed from the entity registry
on the next setup instead of lingering as permanently-unavailable ghosts.
Full Changelog: v0.7.1...v0.8.0
v0.7.1
Fixed
- Fixed
Handler OptionsFlow doesn't support step group_memberswhen
opening the inverter group's options (0.7.0). Home Assistant's flow
manager resolves a step by looking up a method literally named
async_step_<step_id>on the handler; the group's member-selection
step used thatstep_idbut was implemented as a private
_async_step_group_members()helper instead, so HA couldn't find it.
Renamed toasync_step_group_members()to match.
Full Changelog: v0.7.0...v0.7.1