From 4619a65b232159b6fa2da1484a0dbb4ed98fae44 Mon Sep 17 00:00:00 2001
From: Markus Quaritsch <markus.quaritsch@tugraz.at>
Date: Wed, 2 Sep 2020 20:28:28 +0200
Subject: [PATCH] new feature: allow engine off only if ESS is enabled in the
 vehicle. new testcases, new modeldata (allow ess for existing models)

---
 .../Strategies/HybridStrategy.cs              |   3 +
 .../Integration/Hybrid/ParallelHybridTest.cs  |  37 +++++-
 .../P2 Group 5_325kW_noESS.vecto              |  64 ++++++++++
 .../P2 Group 5_noESS.vecto                    |  64 ++++++++++
 .../Vehicle/Group5_HEV.vveh                   |   2 +-
 .../Vehicle/Group5_HEV_325kW.vveh             |   2 +-
 .../Vehicle/Group5_HEV_325kW_noESS.vveh       | 109 ++++++++++++++++++
 .../Vehicle/Group5_HEV_noESS.vveh             | 109 ++++++++++++++++++
 .../Hyb_P2_Group2/Class2_RigidTruck.vveh      |   2 +-
 .../Hybrids/Hyb_P2_Group5/Hyb_P2_Group5.vveh  |   4 +-
 .../Hyb_P2_Group5/Hyb_P2_Group5_80kWh.vveh    |   4 +-
 VectoCore/VectoCoreTest/VectoCoreTest.csproj  |  12 ++
 12 files changed, 404 insertions(+), 8 deletions(-)
 create mode 100644 VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/P2 Group 5_325kW_noESS.vecto
 create mode 100644 VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/P2 Group 5_noESS.vecto
 create mode 100644 VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV_325kW_noESS.vveh
 create mode 100644 VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV_noESS.vveh

diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs b/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs
index 35c5e4d098..d59b238004 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Strategies/HybridStrategy.cs
@@ -284,6 +284,9 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Strategies
 
 		protected virtual bool AllowICEOff(Second absTime)
 		{
+			if (!ModelData.VehicleData.ADAS.EngineStopStart) {
+				return false;
+			}
 			return PreviousState.ICEStartTStmp == null ||
 					(PreviousState.ICEStartTStmp + StrategyParameters.MinICEOnTime).IsSmaller(absTime);
 		}
diff --git a/VectoCore/VectoCoreTest/Integration/Hybrid/ParallelHybridTest.cs b/VectoCore/VectoCoreTest/Integration/Hybrid/ParallelHybridTest.cs
index 30f715322d..0e53905e79 100644
--- a/VectoCore/VectoCoreTest/Integration/Hybrid/ParallelHybridTest.cs
+++ b/VectoCore/VectoCoreTest/Integration/Hybrid/ParallelHybridTest.cs
@@ -310,8 +310,14 @@ namespace TUGraz.VectoCore.Tests.Integration.Hybrid
 
 		public const string Group5TestJob325kW = @"TestData\Hybrids\GenericVehicle_Group5_P2\P2 Group 5_325kW.vecto";
 
+		public const string Group5TestJob_noESS = @"TestData\Hybrids\GenericVehicle_Group5_P2\P2 Group 5.vecto";
+
+		public const string Group5TestJob325kW_noESS = @"TestData\Hybrids\GenericVehicle_Group5_P2\P2 Group 5_325kW.vecto";
+
 		public const string Group2TestJob = @"TestData\Hybrids\Hyb_P2_Group2\Class2_RigidTruck_ParHyb_ENG.vecto";
 
+		public const string Group2TestJob180kW = @"TestData\Hybrids\Hyb_P2_Group2\Class2_RigidTruck_ParHyb_ENG.vecto";
+
 		public const string Group5_80kWh_TestJob = @"TestData\Hybrids\Hyb_P2_Group5\Hyb_P2_Group5_80kWh.vecto";
 
 		public const string Group5TestJob2 = @"TestData\Hybrids\Hyb_P2_Group5\Hyb_P2_Group5.vecto";
@@ -331,7 +337,15 @@ namespace TUGraz.VectoCore.Tests.Integration.Hybrid
 		TestCase(Group5TestJob, 9, TestName = "P2 Hybrid Group 5 DriveCycle UrbanDelivery"), // error
 
 		TestCase(Group5TestJob325kW, 0, TestName = "P2 Hybrid Group 5 325kW DriveCycle LongHaul"),
-		TestCase(Group5TestJob325kW, 6, TestName = "P2 Hybrid Group 5 325kWDriveCycle RegionalDelivery"),
+        TestCase(Group5TestJob325kW, 1, TestName = "P2 Hybrid Group 5 325kW DriveCycle Coach"),  // error
+        TestCase(Group5TestJob325kW, 2, TestName = "P2 Hybrid Group 5 325kW DriveCycle Construction"),  // error
+		TestCase(Group5TestJob325kW, 3, TestName = "P2 Hybrid Group 5 325kW DriveCycle HeavyUrban"), // error
+		TestCase(Group5TestJob325kW, 4, TestName = "P2 Hybrid Group 5 325kW DriveCycle Interurban"),  // error
+		TestCase(Group5TestJob325kW, 5, TestName = "P2 Hybrid Group 5 325kW DriveCycle MunicipalUtility"), 
+		TestCase(Group5TestJob325kW, 6, TestName = "P2 Hybrid Group 5 325kW DriveCycle RegionalDelivery"),
+		TestCase(Group5TestJob325kW, 7, TestName = "P2 Hybrid Group 5 325kW DriveCycle Suburban"),  // error
+		TestCase(Group5TestJob325kW, 8, TestName = "P2 Hybrid Group 5 325kW DriveCycle Urban"), // error
+		TestCase(Group5TestJob325kW, 9, TestName = "P2 Hybrid Group 5 325kW DriveCycle UrbanDelivery"), // 
 
 		TestCase(Group2TestJob, 0, TestName = "P2 Hybrid Group 2 DriveCycle LongHaul"),
 		TestCase(Group2TestJob, 1, TestName = "P2 Hybrid Group 2 DriveCycle RegionalDelivery"),
@@ -366,6 +380,27 @@ namespace TUGraz.VectoCore.Tests.Integration.Hybrid
         TestCase(Group5TestJob2, 8, TestName = "P2 Hybrid Group 5 B DriveCycle Urban"),  // error
         //TestCase(Group5TestJob2, 9, TestName = "P2 Hybrid Group 5 B DriveCycle UrbanDelivery"),  // error
 
+		TestCase(Group5TestJob_noESS, 0, TestName = "P2 Hybrid Group 5 NoESS DriveCycle LongHaul"),
+        TestCase(Group5TestJob_noESS, 1, TestName = "P2 Hybrid Group 5 NoESS DriveCycle Coach"),  // error
+        TestCase(Group5TestJob_noESS, 2, TestName = "P2 Hybrid Group 5 NoESS DriveCycle Construction"),  // 
+		TestCase(Group5TestJob_noESS, 3, TestName = "P2 Hybrid Group 5 NoESS DriveCycle HeavyUrban"),
+        TestCase(Group5TestJob_noESS, 4, TestName = "P2 Hybrid Group 5 NoESS DriveCycle Interurban"),  // error
+        TestCase(Group5TestJob_noESS, 5, TestName = "P2 Hybrid Group 5 NoESS DriveCycle MunicipalUtility"),
+		TestCase(Group5TestJob_noESS, 6, TestName = "P2 Hybrid Group 5 NoESS DriveCycle RegionalDelivery"),
+		TestCase(Group5TestJob_noESS, 7, TestName = "P2 Hybrid Group 5 NoESS DriveCycle Suburban"),  // 
+		TestCase(Group5TestJob_noESS, 8, TestName = "P2 Hybrid Group 5 NoESS DriveCycle Urban"), 
+		TestCase(Group5TestJob_noESS, 9, TestName = "P2 Hybrid Group 5 NoESS DriveCycle UrbanDelivery"), // 
+
+		TestCase(Group5TestJob325kW_noESS, 0, TestName = "P2 Hybrid Group 5 325kW NoESS DriveCycle LongHaul"),
+        TestCase(Group5TestJob325kW_noESS, 1, TestName = "P2 Hybrid Group 5 325kW NoESS DriveCycle Coach"),  // error
+        TestCase(Group5TestJob325kW_noESS, 2, TestName = "P2 Hybrid Group 5 325kW NoESS DriveCycle Construction"),  // error
+		TestCase(Group5TestJob325kW_noESS, 3, TestName = "P2 Hybrid Group 5 325kW NoESS DriveCycle HeavyUrban"), // error
+		TestCase(Group5TestJob325kW_noESS, 4, TestName = "P2 Hybrid Group 5 325kW NoESS DriveCycle Interurban"),  // error
+		TestCase(Group5TestJob325kW_noESS, 5, TestName = "P2 Hybrid Group 5 325kW NoESS DriveCycle MunicipalUtility"), 
+		TestCase(Group5TestJob325kW_noESS, 6, TestName = "P2 Hybrid Group 5 325kW NoESS DriveCycle RegionalDelivery"),
+		TestCase(Group5TestJob325kW_noESS, 7, TestName = "P2 Hybrid Group 5 325kW NoESS DriveCycle Suburban"),  // error
+		TestCase(Group5TestJob325kW_noESS, 8, TestName = "P2 Hybrid Group 5 325kW NoESS DriveCycle Urban"), // error
+		TestCase(Group5TestJob325kW_noESS, 9, TestName = "P2 Hybrid Group 5 325kW NoESS DriveCycle UrbanDelivery"), // error 
 		
         //TestCase(CityBus6x2, 0, TestName = "P2 Hybrid CityBus DriveCycle Coach"),  // error
         //TestCase(CityBus6x2, 1, TestName = "P2 Hybrid CityBus DriveCycle HeavyUrban"),  // error
diff --git a/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/P2 Group 5_325kW_noESS.vecto b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/P2 Group 5_325kW_noESS.vecto
new file mode 100644
index 0000000000..02a0e402a8
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/P2 Group 5_325kW_noESS.vecto	
@@ -0,0 +1,64 @@
+{
+  "Header": {
+    "CreatedBy": "",
+    "Date": "2020-08-24T13:41:04.1591616Z",
+    "AppVersion": "3",
+    "FileVersion": 8
+  },
+  "Body": {
+    "SavedInDeclMode": false,
+    "EngineOnlyMode": false,
+    "VehicleFile": "Vehicle\\Group5_HEV_325kW_noESS.vveh",
+    "EngineFile": "VKM\\Engine_325kW_12.7l.veng",
+    "GearboxFile": "Transmission\\AMT_12.vgbx",
+    "TCU": "Transmission\\AMT_12.vgbx",
+    "ShiftStrategy": "TUGraz.VectoCore.Models.SimulationComponent.Impl.AMTShiftStrategy",
+    "HybridStrategyParams": "ElectricMotor\\Inputdaten P2 Group 5\\Electric components\\Hybrid_Parameters.vhctl",
+    "AuxiliaryAssembly": "Classic",
+    "AuxiliaryVersion": "CLASSIC",
+    "AdvancedAuxiliaryFilePath": "",
+    "Aux": [],
+    "Padd": 3000.0,
+    "Padd_electric": 0.0,
+    "VACC": "Vehicle\\Truck.vacc",
+    "EngineStopStartAtVehicleStopThreshold": 0.0,
+    "EngineStopStartMaxOffTimespan": 0.0,
+    "EngineStopStartUtilityFactor": 0.0,
+    "EcoRollMinSpeed": 0.0,
+    "EcoRollActivationDelay": 0.0,
+    "EcoRollUnderspeedThreshold": 0.0,
+    "EcoRollMaxAcceleration": 0.0,
+    "PCCEnableSpeed": 0.0,
+    "PCCMinSpeed": 0.0,
+    "PCCUnderspeed": 0.0,
+    "PCCOverSpeed": 5.0,
+    "PCCPreviewDistanceUC1": 0.0,
+    "PCCPreviewDistanceUC2": 0.0,
+    "LAC": {
+      "Enabled": true,
+      "PreviewDistanceFactor": 10.0,
+      "DF_offset": 2.5,
+      "DF_scaling": 1.5,
+      "DF_targetSpeedLookup": "",
+      "Df_velocityDropLookup": "",
+      "MinSpeed": 50.0
+    },
+    "OverSpeedEcoRoll": {
+      "Mode": "Overspeed",
+      "MinSpeed": 50.0,
+      "OverSpeed": 2.5
+    },
+    "Cycles": [
+      "LongHaul",
+      "Coach",
+      "Construction",
+      "HeavyUrban",
+      "Interurban",
+      "MunicipalUtility",
+      "RegionalDelivery",
+      "Suburban",
+      "Urban",
+      "UrbanDelivery"
+    ]
+  }
+}
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/P2 Group 5_noESS.vecto b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/P2 Group 5_noESS.vecto
new file mode 100644
index 0000000000..1eb59cbb90
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/P2 Group 5_noESS.vecto	
@@ -0,0 +1,64 @@
+{
+  "Header": {
+    "CreatedBy": "",
+    "Date": "2020-08-24T13:41:04.1591616Z",
+    "AppVersion": "3",
+    "FileVersion": 8
+  },
+  "Body": {
+    "SavedInDeclMode": false,
+    "EngineOnlyMode": false,
+    "VehicleFile": "Vehicle\\Group5_HEV_noESS.vveh",
+    "EngineFile": "VKM\\Engine_325kW_12.7l.veng",
+    "GearboxFile": "Transmission\\AMT_12.vgbx",
+    "TCU": "Transmission\\AMT_12.vgbx",
+    "ShiftStrategy": "TUGraz.VectoCore.Models.SimulationComponent.Impl.AMTShiftStrategy",
+    "HybridStrategyParams": "ElectricMotor\\Inputdaten P2 Group 5\\Electric components\\Hybrid_Parameters.vhctl",
+    "AuxiliaryAssembly": "Classic",
+    "AuxiliaryVersion": "CLASSIC",
+    "AdvancedAuxiliaryFilePath": "",
+    "Aux": [],
+    "Padd": 3000.0,
+    "Padd_electric": 0.0,
+    "VACC": "Vehicle\\Truck.vacc",
+    "EngineStopStartAtVehicleStopThreshold": 0.0,
+    "EngineStopStartMaxOffTimespan": 0.0,
+    "EngineStopStartUtilityFactor": 0.0,
+    "EcoRollMinSpeed": 0.0,
+    "EcoRollActivationDelay": 0.0,
+    "EcoRollUnderspeedThreshold": 0.0,
+    "EcoRollMaxAcceleration": 0.0,
+    "PCCEnableSpeed": 0.0,
+    "PCCMinSpeed": 0.0,
+    "PCCUnderspeed": 0.0,
+    "PCCOverSpeed": 5.0,
+    "PCCPreviewDistanceUC1": 0.0,
+    "PCCPreviewDistanceUC2": 0.0,
+    "LAC": {
+      "Enabled": true,
+      "PreviewDistanceFactor": 10.0,
+      "DF_offset": 2.5,
+      "DF_scaling": 1.5,
+      "DF_targetSpeedLookup": "",
+      "Df_velocityDropLookup": "",
+      "MinSpeed": 50.0
+    },
+    "OverSpeedEcoRoll": {
+      "Mode": "Overspeed",
+      "MinSpeed": 50.0,
+      "OverSpeed": 2.5
+    },
+    "Cycles": [
+      "LongHaul",
+      "Coach",
+      "Construction",
+      "HeavyUrban",
+      "Interurban",
+      "MunicipalUtility",
+      "RegionalDelivery",
+      "Suburban",
+      "Urban",
+      "UrbanDelivery"
+    ]
+  }
+}
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV.vveh b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV.vveh
index b685e31cf6..21f48b43a3 100644
--- a/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV.vveh
+++ b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV.vveh
@@ -66,7 +66,7 @@
         }
       ]
     },
-    "EngineStopStart": false,
+    "EngineStopStart": true,
     "EcoRoll": "None",
     "PredictiveCruiseControl": "None",
     "ATEcoRollReleaseLockupClutch": false,
diff --git a/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV_325kW.vveh b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV_325kW.vveh
index 34fa21cb6c..5c848bed49 100644
--- a/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV_325kW.vveh
+++ b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV_325kW.vveh
@@ -66,7 +66,7 @@
         }
       ]
     },
-    "EngineStopStart": false,
+    "EngineStopStart": true,
     "EcoRoll": "None",
     "PredictiveCruiseControl": "None",
     "ATEcoRollReleaseLockupClutch": false,
diff --git a/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV_325kW_noESS.vveh b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV_325kW_noESS.vveh
new file mode 100644
index 0000000000..34fa21cb6c
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV_325kW_noESS.vveh
@@ -0,0 +1,109 @@
+{
+  "Header": {
+    "CreatedBy": "",
+    "Date": "2020-08-24T09:14:33.9240545Z",
+    "AppVersion": "3",
+    "FileVersion": 10
+  },
+  "Body": {
+    "SavedInDeclMode": false,
+    "VehCat": "Tractor",
+    "LegislativeClass": "Unknown",
+    "CurbWeight": 8229.0,
+    "CurbWeightExtra": 7500.0,
+    "MassMax": 18.0,
+    "Loading": 19300.0,
+    "rdyn": 492.0,
+    "CdCorrMode": "CdofVdecl",
+    "CdCorrFile": "",
+    "AxleConfig": {
+      "Type": "4x2",
+      "Axles": [
+        {
+          "Inertia": 14.9,
+          "Wheels": "315/70 R22.5",
+          "AxleWeightShare": 0.2,
+          "TwinTyres": false,
+          "RRCISO": 0.0055,
+          "FzISO": 33350.0,
+          "Type": "VehicleNonDriven"
+        },
+        {
+          "Inertia": 14.9,
+          "Wheels": "315/70 R22.5",
+          "AxleWeightShare": 0.25,
+          "TwinTyres": true,
+          "RRCISO": 0.0065,
+          "FzISO": 33350.0,
+          "Type": "VehicleDriven"
+        },
+        {
+          "Inertia": 19.2,
+          "Wheels": "385/65 R22.5",
+          "AxleWeightShare": 0.18333,
+          "TwinTyres": false,
+          "RRCISO": 0.0055,
+          "FzISO": 41690.0,
+          "Type": "Trailer"
+        },
+        {
+          "Inertia": 19.2,
+          "Wheels": "385/65 R22.5",
+          "AxleWeightShare": 0.18333,
+          "TwinTyres": false,
+          "RRCISO": 0.0055,
+          "FzISO": 41690.0,
+          "Type": "Trailer"
+        },
+        {
+          "Inertia": 19.2,
+          "Wheels": "385/65 R22.5",
+          "AxleWeightShare": 0.18334,
+          "TwinTyres": false,
+          "RRCISO": 0.0055,
+          "FzISO": 41690.0,
+          "Type": "Trailer"
+        }
+      ]
+    },
+    "EngineStopStart": false,
+    "EcoRoll": "None",
+    "PredictiveCruiseControl": "None",
+    "ATEcoRollReleaseLockupClutch": false,
+    "CdA": 5.3,
+    "VehicleHeight": 4.0,
+    "IdlingSpeed": 600.0,
+    "Retarder": {
+      "Type": "secondary",
+      "Ratio": 1.0,
+      "File": "..\\Transmission\\Default.vrlm"
+    },
+    "Angledrive": {
+      "Type": "None",
+      "Ratio": 0.0,
+      "LossMap": ""
+    },
+    "PTO": {
+      "Type": "None",
+      "LossMap": "",
+      "Cycle": ""
+    },
+    "TorqueLimits": {},
+    "InitialSoC": 80.0,
+    "PowertrainConfiguration": "ParallelHybrid",
+    "MaxDrivetrainPower": 325.0,
+    "ElectricMotors": [
+      {
+        "Count": 1,
+        "Ratio": 1.0,
+        "MechanicalEfficiency": 1.0,
+        "Position": "P2",
+        "MotorFile": "..\\ElectricMotor\\Inputdaten P2 Group 5\\Electric components\\GenericEMotor_140kW_936Nm.vem"
+      }
+    ],
+    "Battery": {
+      "NumPacks": 1,
+      "BatteryFile": "..\\ElectricMotor\\Inputdaten P2 Group 5\\Electric components\\GenericBattery_10kWh_658V.vbat"
+    }
+  }
+}
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV_noESS.vveh b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV_noESS.vveh
new file mode 100644
index 0000000000..b685e31cf6
--- /dev/null
+++ b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group5_P2/Vehicle/Group5_HEV_noESS.vveh
@@ -0,0 +1,109 @@
+{
+  "Header": {
+    "CreatedBy": "",
+    "Date": "2020-08-24T09:14:33.9240545Z",
+    "AppVersion": "3",
+    "FileVersion": 10
+  },
+  "Body": {
+    "SavedInDeclMode": false,
+    "VehCat": "Tractor",
+    "LegislativeClass": "Unknown",
+    "CurbWeight": 8229.0,
+    "CurbWeightExtra": 7500.0,
+    "MassMax": 18.0,
+    "Loading": 19300.0,
+    "rdyn": 492.0,
+    "CdCorrMode": "CdofVdecl",
+    "CdCorrFile": "",
+    "AxleConfig": {
+      "Type": "4x2",
+      "Axles": [
+        {
+          "Inertia": 14.9,
+          "Wheels": "315/70 R22.5",
+          "AxleWeightShare": 0.2,
+          "TwinTyres": false,
+          "RRCISO": 0.0055,
+          "FzISO": 33350.0,
+          "Type": "VehicleNonDriven"
+        },
+        {
+          "Inertia": 14.9,
+          "Wheels": "315/70 R22.5",
+          "AxleWeightShare": 0.25,
+          "TwinTyres": true,
+          "RRCISO": 0.0065,
+          "FzISO": 33350.0,
+          "Type": "VehicleDriven"
+        },
+        {
+          "Inertia": 19.2,
+          "Wheels": "385/65 R22.5",
+          "AxleWeightShare": 0.18333,
+          "TwinTyres": false,
+          "RRCISO": 0.0055,
+          "FzISO": 41690.0,
+          "Type": "Trailer"
+        },
+        {
+          "Inertia": 19.2,
+          "Wheels": "385/65 R22.5",
+          "AxleWeightShare": 0.18333,
+          "TwinTyres": false,
+          "RRCISO": 0.0055,
+          "FzISO": 41690.0,
+          "Type": "Trailer"
+        },
+        {
+          "Inertia": 19.2,
+          "Wheels": "385/65 R22.5",
+          "AxleWeightShare": 0.18334,
+          "TwinTyres": false,
+          "RRCISO": 0.0055,
+          "FzISO": 41690.0,
+          "Type": "Trailer"
+        }
+      ]
+    },
+    "EngineStopStart": false,
+    "EcoRoll": "None",
+    "PredictiveCruiseControl": "None",
+    "ATEcoRollReleaseLockupClutch": false,
+    "CdA": 5.3,
+    "VehicleHeight": 4.0,
+    "IdlingSpeed": 600.0,
+    "Retarder": {
+      "Type": "secondary",
+      "Ratio": 1.0,
+      "File": "..\\Transmission\\Default.vrlm"
+    },
+    "Angledrive": {
+      "Type": "None",
+      "Ratio": 0.0,
+      "LossMap": ""
+    },
+    "PTO": {
+      "Type": "None",
+      "LossMap": "",
+      "Cycle": ""
+    },
+    "TorqueLimits": {},
+    "InitialSoC": 80.0,
+    "PowertrainConfiguration": "ParallelHybrid",
+    "MaxDrivetrainPower": 500000.0,
+    "ElectricMotors": [
+      {
+        "Count": 1,
+        "Ratio": 1.0,
+        "MechanicalEfficiency": 1.0,
+        "Position": "P2",
+        "MotorFile": "..\\ElectricMotor\\Inputdaten P2 Group 5\\Electric components\\GenericEMotor_140kW_936Nm.vem"
+      }
+    ],
+    "Battery": {
+      "NumPacks": 1,
+      "BatteryFile": "..\\ElectricMotor\\Inputdaten P2 Group 5\\Electric components\\GenericBattery_10kWh_658V.vbat"
+    }
+  }
+}
\ No newline at end of file
diff --git a/VectoCore/VectoCoreTest/TestData/Hybrids/Hyb_P2_Group2/Class2_RigidTruck.vveh b/VectoCore/VectoCoreTest/TestData/Hybrids/Hyb_P2_Group2/Class2_RigidTruck.vveh
index 10d6e3ef09..064d0453c2 100644
--- a/VectoCore/VectoCoreTest/TestData/Hybrids/Hyb_P2_Group2/Class2_RigidTruck.vveh
+++ b/VectoCore/VectoCoreTest/TestData/Hybrids/Hyb_P2_Group2/Class2_RigidTruck.vveh
@@ -82,7 +82,7 @@
     "TorqueLimits": {},
     "InitialSoC": 50.0,
     "PowertrainConfiguration": "ParallelHybrid",
-    "MaxDrivetrainPower": 180.0,
+    "MaxDrivetrainPower": 1800000.0,
     "ElectricMotors": [
       {
         "Count": 1,
diff --git a/VectoCore/VectoCoreTest/TestData/Hybrids/Hyb_P2_Group5/Hyb_P2_Group5.vveh b/VectoCore/VectoCoreTest/TestData/Hybrids/Hyb_P2_Group5/Hyb_P2_Group5.vveh
index 51e29c5cfd..34468b4e69 100644
--- a/VectoCore/VectoCoreTest/TestData/Hybrids/Hyb_P2_Group5/Hyb_P2_Group5.vveh
+++ b/VectoCore/VectoCoreTest/TestData/Hybrids/Hyb_P2_Group5/Hyb_P2_Group5.vveh
@@ -66,7 +66,7 @@
         }
       ]
     },
-    "EngineStopStart": false,
+    "EngineStopStart": true,
     "EcoRoll": "None",
     "PredictiveCruiseControl": "None",
     "ATEcoRollReleaseLockupClutch": false,
@@ -91,7 +91,7 @@
     "TorqueLimits": {},
     "InitialSoC": 80.0,
     "PowertrainConfiguration": "ParallelHybrid",
-    "MaxDrivetrainPower": 325.0,
+    "MaxDrivetrainPower": 32500000.0,
     "ElectricMotors": [
       {
         "Count": 1,
diff --git a/VectoCore/VectoCoreTest/TestData/Hybrids/Hyb_P2_Group5/Hyb_P2_Group5_80kWh.vveh b/VectoCore/VectoCoreTest/TestData/Hybrids/Hyb_P2_Group5/Hyb_P2_Group5_80kWh.vveh
index 2a2a908a29..22ac011731 100644
--- a/VectoCore/VectoCoreTest/TestData/Hybrids/Hyb_P2_Group5/Hyb_P2_Group5_80kWh.vveh
+++ b/VectoCore/VectoCoreTest/TestData/Hybrids/Hyb_P2_Group5/Hyb_P2_Group5_80kWh.vveh
@@ -66,7 +66,7 @@
         }
       ]
     },
-    "EngineStopStart": false,
+    "EngineStopStart": true,
     "EcoRoll": "None",
     "PredictiveCruiseControl": "None",
     "ATEcoRollReleaseLockupClutch": false,
@@ -91,7 +91,7 @@
     "TorqueLimits": {},
     "InitialSoC": 80.0,
     "PowertrainConfiguration": "ParallelHybrid",
-    "MaxDrivetrainPower": 325.0,
+    "MaxDrivetrainPower": 32500000.0,
     "ElectricMotors": [
       {
         "Count": 1,
diff --git a/VectoCore/VectoCoreTest/VectoCoreTest.csproj b/VectoCore/VectoCoreTest/VectoCoreTest.csproj
index e52b31446b..408ab2e13d 100644
--- a/VectoCore/VectoCoreTest/VectoCoreTest.csproj
+++ b/VectoCore/VectoCoreTest/VectoCoreTest.csproj
@@ -488,9 +488,15 @@
     <None Include="TestData\Hybrids\GenericVehicle_Group5_P2\ElectricMotor\Inputdaten P2 Group 5\Electric components\Hybrid_Parameters.vhctl">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>
+    <None Include="TestData\Hybrids\GenericVehicle_Group5_P2\P2 Group 5_noESS.vecto">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
     <None Include="TestData\Hybrids\GenericVehicle_Group5_P2\P2 Group 5.vecto">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>
+    <None Include="TestData\Hybrids\GenericVehicle_Group5_P2\P2 Group 5_325kW_noESS.vecto">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
     <None Include="TestData\Hybrids\GenericVehicle_Group5_P2\P2 Group 5_325kW.vecto">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>
@@ -539,9 +545,15 @@
     <None Include="TestData\Hybrids\GenericVehicle_Group5_P2\Transmission\Gear_9.vtlm">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>
+    <None Include="TestData\Hybrids\GenericVehicle_Group5_P2\Vehicle\Group5_HEV_noESS.vveh">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
     <None Include="TestData\Hybrids\GenericVehicle_Group5_P2\Vehicle\Group5_HEV.vveh">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>
+    <None Include="TestData\Hybrids\GenericVehicle_Group5_P2\Vehicle\Group5_HEV_325kW_noESS.vveh">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </None>
     <None Include="TestData\Hybrids\GenericVehicle_Group5_P2\Vehicle\Group5_HEV_325kW.vveh">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>
-- 
GitLab