Releases: mikrohard/hass-vw-eu-data-act
v0.1.8
What's Changed
Comprehensive sensor expansion (#16), with full support for both vehicle dataset formats.
Added
- Many new curated sensors: distance & range (combined/primary/secondary/electric/SCR), fuel & CNG level, tire pressures, window/sunroof positions, maintenance intervals, long/short-term trip statistics, oil level, outside temperature, and a "Last connected" sensor.
- New binary sensors: per-door locks, door open/safe states, windows, sunroof, parking brake, parking lights, hood, service hatch, spoiler.
- Format-aware sensor groups: datasets are detected as dotted (ID.x / MEB) or flat (pre-ID.x, e.g. eGolf) and mapped with the matching curated set, so both platforms get correct sensors.
- Value transforms: deci-Kelvin → °C, absolute maintenance intervals, fuel consumption L/1000km → L/100km, plus suggested display precision.
Improved
- Coordinator resilience: retries on HTTP 5xx for both dataset listing and download, fallback to older datasets, and data merging that preserves field values the portal omits between updates.
Fixed
- Restore the Parking brake binary sensor for ID.x (dotted) vehicles, which the format-aware split had dropped.
Full Changelog: v0.1.7...v0.1.8
v0.1.7
v0.1.6
Reliability release: fewer transient errors, and entities no longer drop out when one happens.
✨ Improvements
- Entities stay available across transient failures. A failed poll (e.g. a brief DNS/network blip) no longer flips every entity to "unavailable" — the last known values are kept instead. Entities are only unavailable until the very first dataset has loaded. (
f129ebc) - Faster recovery. After any fetch/download failure the integration now retries within ~1 minute instead of waiting the full ~15-minute cadence, then resumes the normal cadence on success. (
f129ebc) - More resilient networking. Reuse Home Assistant's shared HTTP connector (warm, cross-integration DNS cache) instead of a private session with a cold cache, which made transient
Timeout while contacting DNS serverserrors far more likely. (de77126) - Cleaner error handling. Connection/DNS errors are now surfaced as a tidy "will retry" rather than an unhandled error with a noisy stack trace. (
de77126)
Full changelog: v0.1.5...v0.1.6
v0.1.5
Important fix for anyone relying on Home Assistant long-term statistics.
🐞 Bug fixes
- Stop corrupting the recorder's long-term statistics (#12). The integration back-filled the portal's recent datasets into long-term statistics by importing into the curated sensor entities — but those sensors already have a state class, so the recorder also generates statistics for them. The two writers collided on
(statistic_id, hour), causingUNIQUEconstraint violations that could abort the recorder's whole statistics run and break unrelated entities' statistics (e.g. solar production). The historical back-fill has been removed; history now comes solely from the recorder capturing live sensor states going forward. (07b30bd)
🧹 Maintenance
- Dropped the now-unused
recordermanifest dependency. (b4b7500) - Updated docs to reflect that there is no historical back-fill.
⚠️ Note for affected users
If your statistics were already broken by a previous version, clear the leftover rows via Developer Tools → Statistics ("Fix issues" / delete this integration's statistics). It also self-resolves once the overlapping hours age out.
Full changelog: v0.1.4...v0.1.5
v0.1.4
v0.1.3
Fixes multiple-vehicle support.
🐞 Bug fixes
- Multiple vehicles now expose all entities (#7). Raw diagnostic sensors used the bare dataset
keyas theirunique_id, but those keys are shared across vehicles — so with more than one car configured, the entity registry rejected the second entry's colliding entities and each data point appeared under only one car (split arbitrarily). Rawunique_ids are now namespaced by VIN. (8b4b43e)
⬆️ Upgrade notes
- A one-time entity-registry migration renames legacy raw-sensor IDs (
<key>→<vin>_<key>) on first start after upgrading, so existing single-vehicle installs keep their entity IDs and customisations — no manual cleanup needed. - Curated sensors were already VIN-namespaced and are unaffected.
Full changelog: v0.1.2...v0.1.3
v0.1.2
Bug-fix and data-accuracy release driven by community reports (#2, #4, #5). Thanks to everyone who filed detailed, dictionary-cross-referenced issues.
🐞 Bug fixes
- Mileage now reports the correct unit (miles vs km) (#4). The unit is read from the companion
mileage.unitfield instead of being hard-coded to km, so vehicles reporting miles no longer show km (and Home Assistant no longer mis-converts on display-unit changes). (694919c) - Curated sensors no longer flip between stale values. When the portal sends the same field multiple times under different UUIDs with conflicting values, the integration now selects one deterministically (by UUID) instead of relying on the portal's unstable array order — so values stay stable across refreshes. Fixes both the displayed sensors and statistics. (#2 ①, #5;
b715f2d,129f9dd) - Correct dataset is selected when the listing lacks
createdOn. Dataset-filename timestamp parsing now handles bothTIMESTAMP_VIN.zipandVIN_TIMESTAMP.ziplayouts. (#5;129f9dd) - Battery temperature sensors relabeled. "Climate min/max temperature" → "Battery min/max temperature", matching the data dictionary (these are HV battery module temps, not climate setpoints). Entity IDs are unchanged. (
18cecd8) - Enum values no longer leak as raw integers. Fields that occasionally deliver the raw protobuf index (e.g.
"6") are resolved to their label (e.g.IMMEDIATE_ACTION_STATE_CHARGE_MODE_SELECTION). (#2 ⑥;fdb65e5)
✨ Improvements
- Clearer naming for raw/diagnostic sensors with otherwise-meaningless names (
value,state, …) — now named from the data-dictionary description (e.g.value→ "Value of the primary range"). (#2 ⑤;fdb65e5) - Friendlier setup message while the portal is provisioning. A
HTTP 400from the data-delivery endpoint right after enabling a continuous data request now shows a clear "data delivery not ready yet — can take a few hours, will keep retrying" message; Home Assistant recovers automatically once it's live. (ee72d2d) - No more event-loop blocking warning. The bundled data dictionary is now loaded off the event loop during setup. (
ee72d2d)
📄 Docs & misc
- Fixed the HACS custom-repository URL in the README (
hass-vw-eu-data-act). (be7fc8b) - Added MIT
LICENSE. (70ba0fe)
Known limitations
energy_contents.*.physical_valueis still exposed as a raw, unitless value — the suspected ÷10 (→ kWh) scaling is unconfirmed and tracked in #2 ④.
Full changelog: v0.1.1...v0.1.2