From e3a48e42f97d98136fd194fab0b4a0c4d257daa1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 22 Jul 2026 17:52:28 +0000 Subject: [PATCH] Vehicle (VW/EU Data Act): add Skoda Enyaq soc key (#32060) --- vehicle/vw/eudataact/eudataact_test.go | 8 ++++++++ vehicle/vw/eudataact/provider.go | 2 +- vehicle/vw/eudataact/types.go | 1 + 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/vehicle/vw/eudataact/eudataact_test.go b/vehicle/vw/eudataact/eudataact_test.go index 580364fcf..5d7b97ad2 100644 --- a/vehicle/vw/eudataact/eudataact_test.go +++ b/vehicle/vw/eudataact/eudataact_test.go @@ -218,6 +218,14 @@ func TestSocBatteryStateReportField(t *testing.T) { assert.Equal(t, 36.0, soc) } +func TestSocEnyaqField(t *testing.T) { + data := []point{{Key: KeyEnyaqSoc, Name: "currentSoc", Value: "60"}} + + soc, err := testProvider(data).Soc() + require.NoError(t, err) + assert.Equal(t, 60.0, soc) +} + func TestSocBatteryStateReportOnlyFallbackField(t *testing.T) { data := []point{ {Key: KeyBatteryStateReportSoc, Name: "battery_state_report.soc", Value: "36"}, diff --git a/vehicle/vw/eudataact/provider.go b/vehicle/vw/eudataact/provider.go index 4a700c3ac..3fc37735a 100644 --- a/vehicle/vw/eudataact/provider.go +++ b/vehicle/vw/eudataact/provider.go @@ -81,7 +81,7 @@ func (v *Provider) Soc() (float64, error) { return 0, err } - if p := lookup(data, FieldHvBatteryLevelValue, FieldSoc, FieldHvSoc, KeyBatteryStateReportSoc); p != nil { + if p := lookup(data, FieldHvBatteryLevelValue, FieldSoc, FieldHvSoc, KeyBatteryStateReportSoc, KeyEnyaqSoc); p != nil { return strconv.ParseFloat(p.Value, 64) } diff --git a/vehicle/vw/eudataact/types.go b/vehicle/vw/eudataact/types.go index 6d17e73a3..35752c29c 100644 --- a/vehicle/vw/eudataact/types.go +++ b/vehicle/vw/eudataact/types.go @@ -138,6 +138,7 @@ const ( FieldRangeSecondary = "cruising_range_secondary_engine" KeyRangeID3 = "0ca40e18-0564-3eda-bcc0-7aee9ef44f04" // VW ID.3 range KeyBatteryStateReportSoc = "506cb83e-f99f-3af3-bbeb-0429b69a78d9" // VW ID.3 soc + KeyEnyaqSoc = "0a18a053-b4b0-3db1-be44-a6c5dba629b1" // Skoda Enyaq soc // odo FieldOdometer = "mileage"