Skip to content

Commit da9b495

Browse files
author
Maksym Shtembuliak
committed
Release v0.1.48
1 parent 886baa3 commit da9b495

85 files changed

Lines changed: 19464 additions & 284 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.github/ISSUE_TEMPLATE/bug_report.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ body:
3535
id: hardware
3636
attributes:
3737
label: Inverter / collector model
38-
placeholder: SMG 6200 + EyeBond Wi-Fi collector
38+
placeholder: Sandisolar SD-HYM-4862HWP (SMG / Modbus) + EyeBond Wi-Fi collector
3939
validations:
4040
required: true
4141
- type: dropdown

‎.github/ISSUE_TEMPLATE/feature_request.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ body:
4747
attributes:
4848
label: Hardware or protocol context
4949
description: Include inverter family, model, collector type, or protocol details if relevant.
50-
placeholder: PI30 family, VMII-NXPW5KW, SmartESS collector, etc.
50+
placeholder: PI30 family, PowMr 4.2kW, SmartESS collector, etc.
5151
- type: textarea
5252
id: evidence
5353
attributes:

‎.github/ISSUE_TEMPLATE/support_archive.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ body:
6969
id: hardware
7070
attributes:
7171
label: Inverter / collector model
72-
placeholder: SMG 6200 + EyeBond Wi-Fi collector
72+
placeholder: Sandisolar SD-HYM-4862HWP (SMG / Modbus) + EyeBond Wi-Fi collector
7373
validations:
7474
required: true
7575
- type: textarea

‎CHANGELOG.md‎

Lines changed: 32 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,47 @@ the GitHub release body should be rendered from the matching version section her
99

1010
### Added
1111

12-
- Add new user-visible features here.
12+
- Nothing yet.
1313

1414
### Changed
1515

16-
- Add behavior changes, refactors, or support expansions here.
16+
- Nothing yet.
1717

1818
### Fixed
1919

20-
- Add bug fixes and regressions here.
20+
- Nothing yet.
2121

2222
### Docs
2323

24-
- Add documentation-only changes here.
24+
- Nothing yet.
25+
26+
## [0.1.48] - 2026-04-17
27+
28+
### Added
29+
30+
- Added optional SmartESS cloud assist for onboarding and diagnostics, including reusable cloud-evidence export for one collector identity.
31+
- Added JSON-first SmartESS protocol and model-binding catalogs plus imported SmartESS assets `0912`, `0921`, and `0925` for metadata ownership, diagnostics, and local draft tooling.
32+
- Added SmartESS local collector helpers for collector query/set commands, protocol-id parsing from query `14`, and known-family metadata planning.
33+
- Added read-only SMG model coverage and wider support-archive capture windows for Anenji ANJ-11KW-48V-WIFI-P / Protocol 3-10 devices.
34+
35+
### Changed
36+
37+
- `Create support archive` is now the main diagnostics flow and can include saved SmartESS cloud evidence automatically or refresh it inline before the ZIP is built.
38+
- Runtime diagnostics, support export, and local draft tooling now resolve effective profile/register-schema ownership from saved or live SmartESS metadata hints, so imported SmartESS assets can be used before a native SmartESS runtime driver exists.
39+
- PI30 default metadata now uses the canonical SmartESS `0925` compatibility paths, while user-facing naming presents raw `VMII-NXPW5KW` devices as PowMr 4.2kW.
40+
- Advanced metadata tools now focus on raw JSON export plus SmartESS draft and bridge generation instead of duplicating routine archive and reload actions.
41+
42+
### Fixed
43+
44+
- Metadata cache priming now also warms catalog-driven metadata, avoiding blocking file reads when Home Assistant starts or reloads local overrides.
45+
- Support archives now store matching SmartESS cloud evidence only once inside the ZIP under `evidence/cloud_evidence.json`.
46+
- Support-archive raw register capture now follows the effective schema name, so model-specific SMG evidence windows are not dropped for variant overlays.
47+
- External relative metadata overrides can now fall back to built-in parent profile and schema files when the local parent file is missing.
48+
49+
### Docs
50+
51+
- Public docs now explain SmartESS cloud evidence, inline archive refresh, and the retention behavior of saved cloud-evidence files.
52+
- Public docs now call out PowMr 4.2kW and Sandisolar SD-HYM-4862HWP as the currently verified commercial examples for the PI30 and SMG families.
2553

2654
## [0.1.43] - 2026-04-15
2755

‎README.md‎

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@
55

66
[Українською](README.uk.md)
77

8+
[![Open in HACS](https://my.home-assistant.io/badges/hacs_repository.svg)](https://my.home-assistant.io/redirect/hacs_repository/?owner=groove-max&repository=ha-eybond-local&category=integration)
9+
10+
> **Companion dashboard card:** Pair this integration with [EyeBond Local Card](https://github.com/groove-max/ha-eybond-local-card) for a ready-made Lovelace UI with animated power flow and history charts.
11+
12+
[![Open EyeBond Local Card in HACS](https://my.home-assistant.io/badges/hacs_repository.svg)](https://my.home-assistant.io/redirect/hacs_repository/?owner=groove-max&repository=ha-eybond-local-card&category=plugin)
13+
814
**EyeBond Local** is a Home Assistant integration that talks directly to hybrid inverters connected through SmartESS / EyeBond Wi-Fi collectors — without going through the vendor's cloud.
915

1016
You get live monitoring, energy totals, and gated controls for supported inverters, all over your local network.
@@ -20,6 +26,7 @@ If your inverter's stock monitoring already works through the SmartESS app, that
2026
- **100% local** — no vendor cloud, no internet dependency.
2127
- **Guided setup wizard** with auto-discovery and a manual fallback.
2228
- **Safe by default** — controls stay read-only until detection is confident.
29+
- **Optional SmartESS cloud assist** — collects reusable cloud evidence for diagnostics and metadata hints without bypassing local safety gates.
2330
- **Configurable polling interval** — from `2` to `3600` seconds, so updates can be much more frequent than the stock SmartESS refresh.
2431
- **Energy dashboard ready** — derived totals for PV, load, battery, and, on supported models, grid import/export.
2532
- **Open architecture** — JSON-first profiles and register schemas.
@@ -35,11 +42,15 @@ The stock SmartESS monitoring usually keeps working in parallel: EyeBond Local d
3542
| Protocol / profile | Status | Notes |
3643
|---|---|---|
3744
| **SMG / Modbus** | Supported | Local protocol/profile used by some hybrid inverters; full monitoring + tested controls |
38-
| **PI30 ASCII** | Supported | PI30-family protocol; full monitoring + tested controls on supported variants |
45+
| **PI30 ASCII** | Supported | PI30-family protocol; full monitoring + tested controls on supported variants, including PowMr 4.2kW |
3946
| **PI18 ASCII** | Experimental | PI18-family protocol; replay-tested only, not production-ready |
4047

4148
Names such as **SMG / Modbus** and **PI30 ASCII** refer to the detected protocol or compatibility profile, not the commercial model name printed on the inverter.
4249

50+
For the SMG / Modbus family, the currently tested real-world unit is branded **Sandisolar SD-HYM-4862HWP**. The integration still presents it generically as **SMG 6200** because the current local Modbus telemetry does not expose a stronger raw commercial model identifier.
51+
52+
For example, the currently tested **PowMr 4.2kW** unit reports the raw model string `VMII-NXPW5KW`, but is presented in the integration under the **PI30 ASCII** family as **PowMr 4.2kW**.
53+
4354
Don't see your inverter? It might still work — open an issue with a [Support Archive](#getting-help) and we can evaluate compatibility and, when the protocol matches, extend support.
4455

4556
---
@@ -122,7 +133,7 @@ After setup, the integration adds a single device with:
122133
- **Energy totals** — derived `kWh` totals for PV production, load consumption, and battery charge/discharge, plus grid import/export on models that expose grid power. Drop them straight into the **Energy dashboard**.
123134
- **Binary sensors** — operating mode, faults, alarms, charging state.
124135
- **Controls** — `number`, `select`, `switch`, and `button` entities for supported settings (charge limits, output mode, beep, etc.). These are gated by detection confidence and start hidden until they're known to be safe.
125-
- **Diagnostics** — connection state, driver match, support level, and a one-click **Support Archive** export.
136+
- **Diagnostics** — connection state, driver match, support level, optional SmartESS cloud evidence export, and a one-click **Support Archive** export.
126137

127138
<p align="center"><img src="docs/images/sensors.png" alt="Live sensors after setup" width="320"></p>
128139

@@ -132,6 +143,18 @@ On supported hardware, the settings screen exposes native Home Assistant control
132143

133144
---
134145

146+
## SmartESS Cloud Assist
147+
148+
When local detection only reaches a collector-only or low-confidence state, EyeBond Local can optionally query SmartESS cloud for the same collector identity and store reusable cloud evidence JSON under `/config/eybond_local/cloud_evidence/`.
149+
150+
- **Credentials are used only for the live fetch** — the integration does not keep a persistent SmartESS cloud login session.
151+
- **Cloud evidence improves diagnostics and metadata planning** — it does not unlock local write controls by itself.
152+
- **Create support archive can reuse saved evidence automatically** or refresh it inline while the ZIP is being built.
153+
- **Export SmartESS cloud evidence** is the standalone advanced action when you want the evidence itself for review or experimental metadata work.
154+
- **Evidence files stay on disk until you remove them manually**. The latest matching file for the entry is reused automatically.
155+
156+
---
157+
135158
## Getting Help
136159

137160
If something doesn't work, the fastest path is:
@@ -140,7 +163,7 @@ If something doesn't work, the fastest path is:
140163
2. Click **Create support archive**.
141164
3. Open a [GitHub issue](https://github.com/groove-max/ha-eybond-local/issues) and attach the generated ZIP.
142165

143-
The Support Archive contains an anonymized snapshot of your inverter's state, register reads, and detection results. That's usually enough to understand compatibility and decide the next step. If your device turns out to use a different protocol or a non-standard variant, we may need more evidence or more than one iteration before support can be added.
166+
The Support Archive contains an anonymized snapshot of your inverter's state, register reads, and detection results. When matching SmartESS cloud evidence is already saved, the archive includes it automatically, and the same screen can refresh that evidence inline before the ZIP is written. That's usually enough to understand compatibility and decide the next step. If your device turns out to use a different protocol or a non-standard variant, we may need more evidence or more than one iteration before support can be added.
144167

145168
### Issue templates
146169

0 commit comments

Comments
 (0)