From ea345d33dac1544fd3bc70533decc3e677b7b8b1 Mon Sep 17 00:00:00 2001 From: andig Date: Sat, 13 Jun 2026 11:00:36 +0200 Subject: [PATCH] DriveSomethingGreater: more data points (#30762) --- templates/definition/vehicle/audi.yaml | 4 +-- .../vehicle/drivesomethinggreater.yaml | 3 +- templates/definition/vehicle/iso15118.yaml | 2 +- templates/definition/vehicle/seat-cupra.yaml | 6 ++-- templates/definition/vehicle/vw.yaml | 4 +-- vehicle/vw/eudataact/provider.go | 2 +- vehicle/vw/eudataact/types.go | 32 +++++++++++++------ 7 files changed, 33 insertions(+), 20 deletions(-) diff --git a/templates/definition/vehicle/audi.yaml b/templates/definition/vehicle/audi.yaml index e28bb53bd..a51d2fe90 100644 --- a/templates/definition/vehicle/audi.yaml +++ b/templates/definition/vehicle/audi.yaml @@ -3,7 +3,7 @@ covers: ["etron"] products: - brand: Audi description: - generic: myAudi + generic: EU Data Act params: - preset: vehicle-base - name: vin @@ -13,4 +13,4 @@ render: | type: drivesomethinggreater brand: Audi {{ include "vehicle-base" . }} - {{ include "vehicle-features" . }} + {{ include "vehicle-features" (merge (dict "basefeatures" (list "streaming")) .) }} diff --git a/templates/definition/vehicle/drivesomethinggreater.yaml b/templates/definition/vehicle/drivesomethinggreater.yaml index 64f246600..0e2274d14 100644 --- a/templates/definition/vehicle/drivesomethinggreater.yaml +++ b/templates/definition/vehicle/drivesomethinggreater.yaml @@ -1,4 +1,5 @@ template: drivesomethinggreater +deprecated: true products: - brand: Volkswagen description: @@ -50,4 +51,4 @@ render: | type: drivesomethinggreater brand: {{ .brand }} {{ include "vehicle-base" . }} - {{ include "vehicle-features" . }} + {{ include "vehicle-features" (merge (dict "basefeatures" (list "streaming")) .) }} diff --git a/templates/definition/vehicle/iso15118.yaml b/templates/definition/vehicle/iso15118.yaml index d05c6ca87..9078453d7 100644 --- a/templates/definition/vehicle/iso15118.yaml +++ b/templates/definition/vehicle/iso15118.yaml @@ -21,7 +21,7 @@ params: - preset: vehicle-climater render: | type: custom - {{- include "vehicle-common" . }} + {{ include "vehicle-common" . }} {{ include "vehicle-features" (merge (dict "basefeatures" (list "offline")) .) }} soc: source: const diff --git a/templates/definition/vehicle/seat-cupra.yaml b/templates/definition/vehicle/seat-cupra.yaml index e56ba8f31..d73213e1a 100644 --- a/templates/definition/vehicle/seat-cupra.yaml +++ b/templates/definition/vehicle/seat-cupra.yaml @@ -1,8 +1,8 @@ template: cupra products: - - brand: Seat + - brand: Cupra description: - generic: CUPRA Connect Gen4 (Born, Formentor, Tavascan) + generic: EU Data Act params: - preset: vehicle-base - preset: vehicle-features @@ -10,4 +10,4 @@ render: | type: drivesomethinggreater brand: Cupra {{ include "vehicle-base" . }} - {{ include "vehicle-features" . }} + {{ include "vehicle-features" (merge (dict "basefeatures" (list "streaming")) .) }} diff --git a/templates/definition/vehicle/vw.yaml b/templates/definition/vehicle/vw.yaml index 5912295ab..1510aa60a 100644 --- a/templates/definition/vehicle/vw.yaml +++ b/templates/definition/vehicle/vw.yaml @@ -3,7 +3,7 @@ covers: ["id"] products: - brand: Volkswagen description: - generic: We Connect ID + generic: EU Data Act requirements: description: de: e-Golf, e-Up, ID Familie @@ -19,4 +19,4 @@ render: | type: drivesomethinggreater brand: Volkswagen {{ include "vehicle-base" . }} - {{ include "vehicle-features" . }} + {{ include "vehicle-features" (merge (dict "basefeatures" (list "streaming")) .) }} diff --git a/vehicle/vw/eudataact/provider.go b/vehicle/vw/eudataact/provider.go index 1a2d2f565..eacf954f4 100644 --- a/vehicle/vw/eudataact/provider.go +++ b/vehicle/vw/eudataact/provider.go @@ -148,7 +148,7 @@ func (v *Provider) Status() (api.ChargeStatus, error) { return status, err } - if p := lookup(data, FieldPlugState); p != nil && strings.EqualFold(p.Value, "connected") { + if p := lookup(data, FieldPlugState, FieldChargingPlug1ConnectionState); p != nil && strings.EqualFold(p.Value, "connected") { status = api.StatusB } diff --git a/vehicle/vw/eudataact/types.go b/vehicle/vw/eudataact/types.go index 465c8fb36..ca25b82bf 100644 --- a/vehicle/vw/eudataact/types.go +++ b/vehicle/vw/eudataact/types.go @@ -102,20 +102,32 @@ type datasetFile struct { // data field names as delivered in the dataset (see lib/euDataActDictionary.json) const ( + // status + FieldChargingState = "charging_state" + FieldChargingPlug1ConnectionState = "charging_plug1_connectionstate" + FieldCurrentChargeState = "charging_state_report.current_charge_state" + FieldPlugState = "plug_state" + + // soc FieldBatteryStateReportSoc = "battery_state_report.soc" FieldSoc = "state_of_charge" FieldHvSoc = "hv_soc" FieldHvBatteryLevel = "battery_level_HV.value" - FieldRangeCombined = "cruising_range_combined" - FieldRangePrimary = "cruising_range_primary_engine" - FieldRangeSecondary = "cruising_range_secondary_engine" - FieldOdometer = "mileage" - FieldOdometerValue = "mileage.value" - FieldChargingState = "charging_state" - FieldCurrentChargeState = "charging_state_report.current_charge_state" - FieldPlugState = "plug_state" - FieldTargetSoc = "settings.target_soc" - FieldRemainingTime = "remaining_charging_time" + + // target soc + FieldTargetSoc = "settings.target_soc" + + // range + FieldRangeCombined = "cruising_range_combined" + FieldRangePrimary = "cruising_range_primary_engine" + FieldRangeSecondary = "cruising_range_secondary_engine" + + // odo + FieldOdometer = "mileage" + FieldOdometerValue = "mileage.value" + + // time + FieldRemainingTime = "remaining_charging_time" ) // contentDatasets returns the datasets that actually carry content, with their