diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationPrimaryVehicleBusResultsInputDataProviderV01.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationPrimaryVehicleBusResultsInputDataProviderV01.cs
index d67717deffac0c29acfe8620323559d65db1230b..dafcb0266ae985c22aa16932daffee26610a0f56 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationPrimaryVehicleBusResultsInputDataProviderV01.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationPrimaryVehicleBusResultsInputDataProviderV01.cs
@@ -27,6 +27,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 		public static readonly string QUALIFIED_XSD_TYPE = XMLHelper.CombineNamespace(NAMESPACE_URI.NamespaceName, XSD_TYPE);
 
 		private XmlNode _resultsNode;
+		private IList<IResult> _results;
 
 		public XMLDeclarationPrimaryVehicleBusResultsInputDataProviderV01(XmlNode resultsNode) : base(resultsNode)
 		{
@@ -39,7 +40,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 
 		public IList<IResult> Results
 		{
-			get { return ReadResults(); }
+			get { return _results ?? (_results =  ReadResults()); }
 		}
 		
 
diff --git a/VectoCore/VectoCore/InputData/Impl/InputData.cs b/VectoCore/VectoCore/InputData/Impl/InputData.cs
index 9a7aac3b37dbd15f3771029eebd87ba1b009ebfd..77dfdf95c14fa325dbe5863a92c58c914f668022 100644
--- a/VectoCore/VectoCore/InputData/Impl/InputData.cs
+++ b/VectoCore/VectoCore/InputData/Impl/InputData.cs
@@ -31,6 +31,7 @@
 
 using System;
 using System.Collections.Generic;
+using System.Diagnostics;
 using TUGraz.VectoCommon.BusAuxiliaries;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Models;
@@ -213,6 +214,7 @@ namespace TUGraz.VectoCore.InputData.Impl
 		public IList<IResult> Results { get; internal set; }
 	}
 	
+	[DebuggerDisplay("{ResultStatus} | {VehicleGroup} {Mission}")]
 	public class Result : IResult
 	{
 		public string ResultStatus { get; internal set; }
diff --git a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterCompletedBusGeneric.cs b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterCompletedBusGeneric.cs
index 5d25d746ac765e7397d8bd203f53f972ce9fbf5e..ccdf65ecf55bf648d44f956436542e912c3820b3 100644
--- a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterCompletedBusGeneric.cs
+++ b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterCompletedBusGeneric.cs
@@ -76,7 +76,8 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 		protected override void CretateTCFirstGearATPowerSplit(GearData gearData, uint i, ShiftPolygon shiftPolygon)
 		{
 			gearData.TorqueConverterRatio = 1;
-			gearData.TorqueConverterGearLossMap = TransmissionLossMapReader.Create(GearEfficiencyIndirectGear, 1, string.Format("TCGear {0}", i + 1));
+			//gearData.TorqueConverterGearLossMap = TransmissionLossMapReader.Create(GearEfficiencyIndirectGear, 1, string.Format("TCGear {0}", i + 1));
+			gearData.TorqueConverterGearLossMap = TransmissionLossMapReader.Create(1.0, 1, string.Format("TCGear {0}", i + 1));
 			gearData.TorqueConverterShiftPolygon = shiftPolygon;
 		}
 
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeCompletedBusVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeCompletedBusVectoRunDataFactory.cs
index 1d08a72e0f18d663fc09e844aba71a3bd2992056..4c2775795b512289cabe425c0e2d660024f433af 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeCompletedBusVectoRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeCompletedBusVectoRunDataFactory.cs
@@ -180,7 +180,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
 						var primaryResult = InputDataProvider.PrimaryVehicleData.GetResult(
 							simulationRunData.Mission.BusParameter.BusGroup, simulationRunData.Mission.MissionType, fuelMode,
 							simulationRunData.VehicleData.Loading);
-						if (primaryResult == null) {
+						if (primaryResult == null || !primaryResult.ResultStatus.Equals("success")) {
 							throw new VectoException(
 								"Failed to find results in PrimaryVehicleReport for vehicle group: {0},  mission: {1}, fuel mode: '{2}', payload: {3}. Make sure PIF and completed vehicle data match!",
 								simulationRunData.Mission.BusParameter.BusGroup, simulationRunData.Mission.MissionType, fuelMode,
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/TorqueConverter.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/TorqueConverter.cs
index 6ec2d5376a6b8d90a3b77e9bf76664ea8bacc1ac..4e74a81793928303ae1cfd61c21896cb5a0b5dda 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/TorqueConverter.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/TorqueConverter.cs
@@ -241,7 +241,10 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 				return operatingPoint;
 			} catch (VectoException ve) {
 				Log.Warn(ve, "TorqueConverter: Failed to find operating point for DragPower {0}", engineResponse.DragPower);
-				var engineSpeed = VectoMath.Max(DataBus.EngineIdleSpeed * 1.001, 0.8 * DataBus.EngineSpeed);
+				            //var engineSpeed = VectoMath.Max(DataBus.EngineIdleSpeed * 1.001, 0.8 * DataBus.EngineSpeed);
+				var engineSpeed = DataBus.DrivingAction == DrivingAction.Brake
+					? DataBus.EngineIdleSpeed * 1.001
+					: VectoMath.Max(DataBus.EngineIdleSpeed * 1.001, 0.8 * DataBus.EngineSpeed);
 
 				var retVal = FindValidTorqueConverterOperatingPoint(
 					absTime, dt, outAngularVelocity, engineSpeed,
diff --git a/VectoCore/VectoCore/OutputData/XML/XMLPrimaryVehicleReport.cs b/VectoCore/VectoCore/OutputData/XML/XMLPrimaryVehicleReport.cs
index 53f143197d1af209f704419cc50c248580a20fb3..dbf44fdc8cdc98be5e17abadcffb3ffe7cdf8fba 100644
--- a/VectoCore/VectoCore/OutputData/XML/XMLPrimaryVehicleReport.cs
+++ b/VectoCore/VectoCore/OutputData/XML/XMLPrimaryVehicleReport.cs
@@ -409,7 +409,8 @@ namespace TUGraz.VectoCore.OutputData.XML
 				case VectoRun.Status.Canceled:
 				case VectoRun.Status.Aborted:
 					return new object[] {
-						new XElement(tns + "Error", resultEntry.Error)
+						new XElement(tns + "Error", resultEntry.Error),
+						new XElement(tns + "ErrorDetails", resultEntry.StackTrace), 
 					};
 				default: throw new ArgumentOutOfRangeException();
 			}
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/Buses/FactorMethod/primary_heavyBus group42_SmartPS.RSLT_PIF.xml b/VectoCore/VectoCoreTest/TestData/Integration/Buses/FactorMethod/primary_heavyBus group42_SmartPS.RSLT_PIF.xml
index 73b2b1eacf5ac1f4d838fbe0fcd774a1ae8fe4b9..ce14f27e9fb18fe156ec719b6f4b1b7b9c1a4a57 100644
--- a/VectoCore/VectoCoreTest/TestData/Integration/Buses/FactorMethod/primary_heavyBus group42_SmartPS.RSLT_PIF.xml	
+++ b/VectoCore/VectoCoreTest/TestData/Integration/Buses/FactorMethod/primary_heavyBus group42_SmartPS.RSLT_PIF.xml	
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
 <pif:VectoOutputPrimaryVehicle xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationOutput:PrimaryVehicleInformation:HeavyBus:v0.1" xmlns:pif="urn:tugraz:ivt:VectoAPI:DeclarationOutput:PrimaryVehicleInformation" xmlns:di="http://www.w3.org/2000/09/xmldsig#" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:PrimaryVehicleInformation https://webgate.ec.europa.eu/CITnet/svn/VECTO/trunk/Share/XML/XSD//DEV/VectoOutputPrimaryVehicleInformation.xsd">
   <pif:Data xsi:type="PrimaryVehicleHeavyBusDataType" id="PIF-4547e7655ef846a59ce4">
     <Vehicle xsi:type="VehiclePIFType">
@@ -486,7 +486,7 @@
         </Fuel>
         <CO2 unit="g/km">695.0</CO2>
       </Result>
-      <Result status="success">
+      <Result status="error">
         <VehicleGroup>P34SD</VehicleGroup>
         <Mission>Coach</Mission>
         <SimulationParameters>
@@ -495,12 +495,16 @@
           <PassengerCount>44.98</PassengerCount>
           <FuelMode>single fuel mode</FuelMode>
         </SimulationParameters>
-        <Fuel type="Diesel CI">
+        <!-- Test using PIF where not all results are present 
+         <Fuel type="Diesel CI">
           <EnergyConsumption unit="MJ/km">9.96560</EnergyConsumption>
         </Fuel>
         <CO2 unit="g/km">730.5</CO2>
+       -->
+        <Error>20 (Coach _P40DD_ReferenceLoad) - absTime: 7535.2269 [s], distance: 130338.3598 [m], dt: 0.6304 [s], v: 0.0141 [m/s], Gear: 1 | DrivingActionAccelerate: Failed to find operating point</Error>
+        <ErrorDetails>String</ErrorDetails>
       </Result>
-      <Result status="success">
+      <Result status="error">
         <VehicleGroup>P34DD</VehicleGroup>
         <Mission>Interurban</Mission>
         <SimulationParameters>
@@ -509,12 +513,16 @@
           <PassengerCount>24.48</PassengerCount>
           <FuelMode>single fuel mode</FuelMode>
         </SimulationParameters>
+        <!-- Test using PIF where not all results are present 
         <Fuel type="Diesel CI">
           <EnergyConsumption unit="MJ/km">14.24030</EnergyConsumption>
         </Fuel>
         <CO2 unit="g/km">1043.8</CO2>
+        -->
+        <Error>20 (Coach _P40DD_ReferenceLoad) - absTime: 7535.2269 [s], distance: 130338.3598 [m], dt: 0.6304 [s], v: 0.0141 [m/s], Gear: 1 | DrivingActionAccelerate: Failed to find operating point</Error>
+        <ErrorDetails>String</ErrorDetails>
       </Result>
-      <Result status="success">
+      <Result status="error">
         <VehicleGroup>P34DD</VehicleGroup>
         <Mission>Interurban</Mission>
         <SimulationParameters>
@@ -523,12 +531,16 @@
           <PassengerCount>97.92</PassengerCount>
           <FuelMode>single fuel mode</FuelMode>
         </SimulationParameters>
+        <!-- Test using PIF where not all results are present 
         <Fuel type="Diesel CI">
           <EnergyConsumption unit="MJ/km">16.77091</EnergyConsumption>
         </Fuel>
         <CO2 unit="g/km">1229.3</CO2>
+        -->
+        <Error>20 (Coach _P40DD_ReferenceLoad) - absTime: 7535.2269 [s], distance: 130338.3598 [m], dt: 0.6304 [s], v: 0.0141 [m/s], Gear: 1 | DrivingActionAccelerate: Failed to find operating point</Error>
+        <ErrorDetails>String</ErrorDetails>
       </Result>
-      <Result status="success">
+      <Result status="error">
         <VehicleGroup>P34DD</VehicleGroup>
         <Mission>Coach</Mission>
         <SimulationParameters>
@@ -551,10 +563,14 @@
           <PassengerCount>65.28</PassengerCount>
           <FuelMode>single fuel mode</FuelMode>
         </SimulationParameters>
+        <!-- Test using PIF where not all results are present 
         <Fuel type="Diesel CI">
           <EnergyConsumption unit="MJ/km">11.34890</EnergyConsumption>
         </Fuel>
         <CO2 unit="g/km">831.9</CO2>
+        -->
+        <Error>20 (Coach _P40DD_ReferenceLoad) - absTime: 7535.2269 [s], distance: 130338.3598 [m], dt: 0.6304 [s], v: 0.0141 [m/s], Gear: 1 | DrivingActionAccelerate: Failed to find operating point</Error>
+        <ErrorDetails>String</ErrorDetails>
       </Result>
     </Results>
     <ApplicationInformation>
diff --git a/VectoCore/VectoCoreTest/VectoCoreTest.csproj b/VectoCore/VectoCoreTest/VectoCoreTest.csproj
index 1ede0f985fe4b7fe589d405546d3ce8f7874814f..3d4c009d6d0dcc1a9d737a7d9589d6537aa891e3 100644
--- a/VectoCore/VectoCoreTest/VectoCoreTest.csproj
+++ b/VectoCore/VectoCoreTest/VectoCoreTest.csproj
@@ -3787,6 +3787,9 @@
     <Content Include="TestData\XML\XMLReaderDeclaration\SchemaVersion2.6_Buses\PIF-heavyBus-sample.xml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </Content>
+    <Content Include="TestData\XML\XMLReaderDeclaration\SchemaVersion2.6_Buses\primary_heavyBus group P39_40_nonSmart_ESS.RSLT_PIF.xml">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </Content>
     <Content Include="TestData\XML\XMLReaderDeclaration\SchemaVersion2.6_Buses\vecto_vehicle-medium_lorryFWD-sample.xml">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </Content>
diff --git a/VectoCore/VectoCoreTest/XML/XMLPrimaryVehicleReportBusReaderTest.cs b/VectoCore/VectoCoreTest/XML/XMLPrimaryVehicleReportBusReaderTest.cs
index 7c4ff2cbdbcc9114fb225c4ea8e1938b011bbeaf..c4e2e44865db0e0ceb4da708f58a696a8d7da710 100644
--- a/VectoCore/VectoCoreTest/XML/XMLPrimaryVehicleReportBusReaderTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLPrimaryVehicleReportBusReaderTest.cs
@@ -28,6 +28,10 @@ namespace TUGraz.VectoCore.Tests.XML
 		private const string vehilcePIFExample =
 			"TestData/XML/XMLReaderDeclaration/SchemaVersion2.6_Buses/PIF-heavyBus-sample.xml";
 
+		private const string vehiclePIFExampleWithErrors =
+				@"TestData\XML\XMLReaderDeclaration\SchemaVersion2.6_Buses\primary_heavyBus group P39_40_nonSmart_ESS.RSLT_PIF.xml"
+			;
+
 		protected IXMLInputDataReader xmlInputReader;
 		private IKernel _kernel;
 
@@ -42,6 +46,19 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
+		[TestCase]
+		public void TestReadPIFReportWithErrors()
+		{
+			var reader = XmlReader.Create(vehiclePIFExampleWithErrors);
+			var inputDataProvider = xmlInputReader.Create(reader) as IPrimaryVehicleInformationInputDataProvider;
+
+			Assert.AreEqual("error", inputDataProvider.ResultsInputData.Status);
+			Assert.AreEqual(20, inputDataProvider.ResultsInputData.Results.Count);
+
+			Assert.AreEqual("error", inputDataProvider.ResultsInputData.Results[19].ResultStatus);
+		}
+
+
 		[TestCase]
 		public void TestPrimaryVehicleBusData()
 		{