diff --git a/VECTOAux/VectoAuxiliaries/Electrics/IM0_NonSmart_AlternatorsSetEfficiency.vb b/VECTOAux/VectoAuxiliaries/Electrics/IM0_NonSmart_AlternatorsSetEfficiency.vb
index 30fdaec43b8721d6d116828cd2270b5aee31c677..cdfee90efc1f7a9fdc73164781a899652b8eeb25 100644
--- a/VECTOAux/VectoAuxiliaries/Electrics/IM0_NonSmart_AlternatorsSetEfficiency.vb
+++ b/VECTOAux/VectoAuxiliaries/Electrics/IM0_NonSmart_AlternatorsSetEfficiency.vb
@@ -2,7 +2,7 @@
 
 
      Function GetHVACElectricalPowerDemandAmps() As Single
-     Function GetEfficiency(crankRPM As Integer) As Single
+     Function GetEfficiency() As Single
 
 
 End Interface
diff --git a/VECTOAux/VectoAuxiliaries/Electrics/M0_5_SmartAlternatorSetEfficiency.vb b/VECTOAux/VectoAuxiliaries/Electrics/M0_5_SmartAlternatorSetEfficiency.vb
index 23e34474fcf5f0dd55d8618ce5ea0da7bbe27f00..0cb5aa57744fd0b5872b5db16c259322a1240eb8 100644
--- a/VECTOAux/VectoAuxiliaries/Electrics/M0_5_SmartAlternatorSetEfficiency.vb
+++ b/VECTOAux/VectoAuxiliaries/Electrics/M0_5_SmartAlternatorSetEfficiency.vb
@@ -10,6 +10,7 @@ Private _alternatorMap As IAlternatorMap
 Private _resultCardIdle As IResultCard
 Private _resultCardTraction As IResultCard
 Private _resultCardOverrun As IResultCard
+Private _signals As ISignals
 
 
 
@@ -19,9 +20,9 @@ Public Function SmartIdleCurrent() As single
 
 end Function
 
-Public Function AlternatorsEfficiencyIdleResultCard(ByVal rpm As integer ) As single
+Public Function AlternatorsEfficiencyIdleResultCard( ) As single
 
-    Return _alternatorMap.GetEfficiency(rpm, SmartIdleCurrent()).Efficiency
+    Return _alternatorMap.GetEfficiency(_signals.EngineSpeed, SmartIdleCurrent()).Efficiency
 
 End Function
 
@@ -33,9 +34,9 @@ Public function SmartTractionCurrent As Single
 
 End Function
 
-Public Function AlternatorsEfficiencyTractionOnResultCard(ByVal rpm As integer ) As Single
+Public Function AlternatorsEfficiencyTractionOnResultCard() As Single
 
-    Return _alternatorMap.GetEfficiency(rpm, SmartTractionCurrent()).Efficiency
+    Return _alternatorMap.GetEfficiency(_signals.EngineSpeed, SmartTractionCurrent()).Efficiency
 
 End Function
 
@@ -46,9 +47,9 @@ Public Function SmartOverrunCurrent As Single
 
 End Function
 
-Public Function AlternatorsEfficiencyOverrunResultCard(ByVal rpm As integer) As single
+Public Function AlternatorsEfficiencyOverrunResultCard() As single
 
-    Return _alternatorMap.GetEfficiency(rpm, SmartOverrunCurrent()).Efficiency
+    Return _alternatorMap.GetEfficiency(_signals.EngineSpeed, SmartOverrunCurrent()).Efficiency
 
 End Function
 
@@ -64,7 +65,8 @@ Public Sub new ( m0 As IM0_NonSmart_AlternatorsSetEfficiency, _
                  alternatorMap As IAlternatorMap, _
                  resultCardIdle As IResultCard, _
                  resultCardTraction As IResultCard, _
-                 resultCardOverrun As IResultCard)
+                 resultCardOverrun As IResultCard,
+                 signals As ISignals)
 
                  'Sanity Check on supplied arguments, throw an argument exception
                  If m0 is Nothing  then Throw New ArgumentException("Module 0 must be supplied")
@@ -73,7 +75,7 @@ Public Sub new ( m0 As IM0_NonSmart_AlternatorsSetEfficiency, _
                  if  resultCardIdle      is nothing then throw new ArgumentException("Result Card 'IDLE' must be supplied even if it has no contents")
                  if  resultCardTraction  is nothing then throw new ArgumentException("Result Card 'TRACTION' must be supplied even if it has no contents")
                  if  resultCardOverrun   is nothing then throw new ArgumentException("Result Card 'OVERRUN' must be supplied even if it has no contents") 
-              
+                 If  signals             is Nothing then Throw New ArgumentException("No Signals Reference object was provided ")
  
                  'Assignments to private variables.
                  _m0=m0
@@ -82,6 +84,7 @@ Public Sub new ( m0 As IM0_NonSmart_AlternatorsSetEfficiency, _
                  _resultCardIdle          = resultCardIdle
                  _resultCardTraction      = resultCardTraction
                  _resultCardOverrun       = resultCardOverrun
+                 _signals                 = signals
 
                                                                                                                              
 End Sub                                      
diff --git a/VECTOAux/VectoAuxiliaries/Electrics/M0_NonSmart_AlternatorsSetEfficiency.vb b/VECTOAux/VectoAuxiliaries/Electrics/M0_NonSmart_AlternatorsSetEfficiency.vb
index 7fa0e84fc0efbd2a5666fb5d8c93b8e5debeb747..1abf28ab801c7095a295284ce88e1b22aa45ea0f 100644
--- a/VECTOAux/VectoAuxiliaries/Electrics/M0_NonSmart_AlternatorsSetEfficiency.vb
+++ b/VECTOAux/VectoAuxiliaries/Electrics/M0_NonSmart_AlternatorsSetEfficiency.vb
@@ -8,21 +8,20 @@ Public Class M0_NonSmart_AlternatorsSetEfficiency
 
  Private _electricalConsumersList As IElectricalConsumerList
  Private _hvacInputs As IHVACInputs
-
  Private _alternatorEfficiencyMap As IAlternatorMap
-
  Private _hvacMap As IHVACMap
-
  Private _powernetVoltage As Single
+ Private _signals As ISignals
 
 
-    Public Sub New(electricalConsumers As IElectricalConsumerList, hvacInputs As IHVACInputs, hvacMap As IHVACMap, alternatorEfficiencyMap As IAlternatorMap, powernetVoltage As Single)
+    Public Sub New(electricalConsumers As IElectricalConsumerList, hvacInputs As IHVACInputs, hvacMap As IHVACMap, alternatorEfficiencyMap As IAlternatorMap, powernetVoltage As Single, signals As ISignals)
 
     If electricalConsumers Is Nothing Then Throw New ArgumentException("No ElectricalConsumersList Supplied")
     If hvacInputs Is Nothing Then Throw New ArgumentException("No hvac inputs supplied")
     If hvacMap Is Nothing Then Throw New ArgumentException("No HVAC Map supplied")
     If alternatorEfficiencyMap Is Nothing Then Throw New ArgumentException("No Alternator Efficiency Map Supplied")
     If (powernetVoltage < ElectricConstants.PowenetVoltageMin Or powernetVoltage > ElectricConstants.PowenetVoltageMax) Then Throw New ArgumentException("Powernet Voltage out of range")
+    If signals is Nothing then Throw New ArgumentException("No Signals reference was supplied.")
 
     Me._electricalConsumersList = electricalConsumers
     Me._hvacInputs = hvacInputs
@@ -30,23 +29,24 @@ Public Class M0_NonSmart_AlternatorsSetEfficiency
     Me._alternatorEfficiencyMap = alternatorEfficiencyMap
     Me._hvacMap = hvacMap
     Me._powernetVoltage = powernetVoltage
+    Me._signals = signals
 
     End Sub
 
 
 
-    Public Function GetEfficiency(crankRPM As Integer) As Single Implements IM0_NonSmart_AlternatorsSetEfficiency.GetEfficiency
+    Public Function GetEfficiency() As Single Implements IM0_NonSmart_AlternatorsSetEfficiency.GetEfficiency
 
           'Sanity Check.
-          If crankRPM < 1 Then Throw New ArgumentException("CrankRMP must be greater than zero")
+          If _signals.EngineSpeed < 1 Then Throw New ArgumentException("CrankRPM must be greater than zero")
 
-          Dim rotationalSpeed As Single = crankRPM
+          Dim rotationalSpeed As Single = _signals.EngineSpeed
           Dim currentHVACDemandAmps As Single = _hvacMap.GetElectricalDemand(_hvacInputs.Region, _hvacInputs.Season)
           Dim currentElectricalConsumerDemandAmp As Single = _electricalConsumersList.GetTotalAverageDemandAmps(True)
 
           Dim totalDemandAmps As Single = currentHVACDemandAmps + currentElectricalConsumerDemandAmp
 
-          Return _alternatorEfficiencyMap.GetEfficiency(crankRPM, totalDemandAmps).Efficiency
+          Return _alternatorEfficiencyMap.GetEfficiency(_signals.EngineSpeed, totalDemandAmps).Efficiency
 
     End Function
 
diff --git a/VECTOAux/VectoAuxiliaries/Electrics/M2_AverageElectricalLoadDemand.vb b/VECTOAux/VectoAuxiliaries/Electrics/M2_AverageElectricalLoadDemand.vb
index f6eb7e13a4f24b5bd5a53a88d81903ab775dfc04..05fbdeb838a0e69af34e9ea0ff7c617e44556def 100644
--- a/VECTOAux/VectoAuxiliaries/Electrics/M2_AverageElectricalLoadDemand.vb
+++ b/VECTOAux/VectoAuxiliaries/Electrics/M2_AverageElectricalLoadDemand.vb
@@ -39,7 +39,7 @@
         Public Function GetAveragePowerAtCrank(ByVal engineRpm As Integer) As Single
 
             Dim ElectricalPowerDemandsWatts As Single = GetAveragePowerDemandAtAlternator() * _powerNetVoltage
-            Dim alternatorsEfficiency As Single       = _module0.GetEfficiency(engineRpm)
+            Dim alternatorsEfficiency As Single       = _module0.GetEfficiency()
             Dim ElectricalPowerDemandsWattsDividedByAlternatorEfficiency as Single = ElectricalPowerDemandsWatts / alternatorsEfficiency
 
             Dim averagePowerDemandAtCrankFromElectricsWatts As Single
diff --git a/VECTOAux/VectoAuxiliaries/Electrics/M5__SmartAlternatorSetGeneration.vb b/VECTOAux/VectoAuxiliaries/Electrics/M5__SmartAlternatorSetGeneration.vb
index ed96428b8cc04a5bd29afe4731ec61a72cbc3924..ca9bf7a25456550074e52725ab5b7b45a3662adf 100644
--- a/VECTOAux/VectoAuxiliaries/Electrics/M5__SmartAlternatorSetGeneration.vb
+++ b/VECTOAux/VectoAuxiliaries/Electrics/M5__SmartAlternatorSetGeneration.vb
@@ -26,19 +26,19 @@ Private _alternatorGearEfficiency As single
 
     Public Function AlternatorsGenerationPowerAtCrankIdleWatts(rpm As Integer) As Single Implements IM5_SmartAlternatorSetGeneration.AlternatorsGenerationPowerAtCrankIdleWatts
 
-      Return (_m05.SmartIdleCurrent() * _powerNetVoltage) / ( _m05.AlternatorsEfficiencyIdleResultCard(rpm) * _alternatorGearEfficiency)
+      Return (_m05.SmartIdleCurrent() * _powerNetVoltage) / ( _m05.AlternatorsEfficiencyIdleResultCard() * _alternatorGearEfficiency)
 
     End Function
 
     Public Function AlternatorsGenerationPowerAtCrankOverrunWatts(rpm As Integer) As Single Implements IM5_SmartAlternatorSetGeneration.AlternatorsGenerationPowerAtCrankOverrunWatts
 
-          Return (_m05.SmartOverrunCurrent() * _powerNetVoltage) / ( _m05.AlternatorsEfficiencyOverrunResultCard(rpm) * _alternatorGearEfficiency)
+          Return (_m05.SmartOverrunCurrent() * _powerNetVoltage) / ( _m05.AlternatorsEfficiencyOverrunResultCard() * _alternatorGearEfficiency)
 
     End Function
 
     Public Function AlternatorsGenerationPowerAtCrankTractionOnWatts(rpm As Integer) As Single Implements IM5_SmartAlternatorSetGeneration.AlternatorsGenerationPowerAtCrankTractionOnWatts
 
-              Return (_m05.SmartTractionCurrent() * _powerNetVoltage) / ( _m05.AlternatorsEfficiencyTractionOnResultCard(rpm) * _alternatorGearEfficiency)
+              Return (_m05.SmartTractionCurrent() * _powerNetVoltage) / ( _m05.AlternatorsEfficiencyTractionOnResultCard() * _alternatorGearEfficiency)
 
     End Function
 
diff --git a/VECTOAux/VectoAuxiliaries/Pneumatics/IM4_AirCompressor.vb b/VECTOAux/VectoAuxiliaries/Pneumatics/IM4_AirCompressor.vb
index 8f612993d9d58c6c27a69a39205b89ac4e3a01c7..c408d25b19344f7b5fb987806c870119212c8be1 100644
--- a/VECTOAux/VectoAuxiliaries/Pneumatics/IM4_AirCompressor.vb
+++ b/VECTOAux/VectoAuxiliaries/Pneumatics/IM4_AirCompressor.vb
@@ -29,7 +29,7 @@
         ''' <param name="engineRpm">Engine speed in rpm</param>
         ''' <returns></returns>
         ''' <remarks></remarks>
-        Function GetFlowRate(ByVal engineRpm As Integer) As Single
+        Function GetFlowRate() As Single
 
         ''' <summary>
         ''' Returns the power consumed for the given engine rpm when compressor is off
@@ -37,7 +37,7 @@
         ''' <param name="engineRpm">Engine speed in rpm</param>
         ''' <returns></returns>
         ''' <remarks></remarks>
-        Function GetPowerCompressorOff(ByVal engineRpm As Integer) As Single
+        Function GetPowerCompressorOff() As Single
 
         ''' <summary>
         ''' Returns the power consumed for the given engine rpm when compressor is on
@@ -45,7 +45,7 @@
         ''' <param name="engineRpm">Engine speed in rpm</param>
         ''' <returns></returns>
         ''' <remarks></remarks>
-        Function GetPowerCompressorOn(ByVal engineRpm As Integer) As Single
+        Function GetPowerCompressorOn() As Single
 
         ''' <summary>
         ''' Returns the difference in power between compressonr on and compressor off operation at the given engine rpm
@@ -53,7 +53,7 @@
         ''' <param name="engineRpm">Engine speed in rpm</param>
         ''' <returns></returns>
         ''' <remarks></remarks>
-        Function GetPowerDifference(ByVal engineRpm As Integer) As Single
+        Function GetPowerDifference() As Single
 
         ''' <summary>
         ''' Returns Average PoweDemand PeCompressor UnitFlowRate 
diff --git a/VECTOAux/VectoAuxiliaries/Pneumatics/M4_AirCompressor.vb b/VECTOAux/VectoAuxiliaries/Pneumatics/M4_AirCompressor.vb
index 2beded94c94af550d93b5f8c43bd5b24da52565a..fe28680f0626adb32b6161b4b344c8d00d3471c3 100644
--- a/VECTOAux/VectoAuxiliaries/Pneumatics/M4_AirCompressor.vb
+++ b/VECTOAux/VectoAuxiliaries/Pneumatics/M4_AirCompressor.vb
@@ -13,6 +13,8 @@ Namespace Pneumatics
         Private _pulleyGearEfficiency As Single
         Private _map As ICompressorMap
 
+        Private _signals As ISignals
+
         ''' <summary>
         ''' Ratio of Gear or Pulley used to drive the compressor
         ''' </summary>
@@ -56,8 +58,9 @@ Namespace Pneumatics
         ''' </summary>
         ''' <param name="map">map of compressor values against compressor rpm</param>
         ''' <remarks></remarks>
-        Public Sub New(ByVal map As ICompressorMap)
+        Public Sub New(ByVal map As ICompressorMap, signals As ISignals)
             _map = map
+            _signals = signals
         End Sub
 
         ''' <summary>
@@ -99,8 +102,8 @@ Namespace Pneumatics
         ''' <param name="engineRpm">Engine speed in rpm</param>
         ''' <returns></returns>
         ''' <remarks></remarks>
-        Public Function GetFlowRate(ByVal engineRpm As Integer) As Single Implements IM4_AirCompressor.GetFlowRate
-            Dim compressorRpm As Single = engineRpm * PulleyGearRatio
+        Public Function GetFlowRate() As Single Implements IM4_AirCompressor.GetFlowRate
+            Dim compressorRpm As Single = _signals.EngineSpeed * PulleyGearRatio
             Return _map.GetFlowRate(compressorRpm)
         End Function
 
@@ -110,8 +113,8 @@ Namespace Pneumatics
         ''' <param name="engineRpm">Engine speed in rpm</param>
         ''' <returns></returns>
         ''' <remarks></remarks>
-        Public Function GetPowerCompressorOff(ByVal engineRpm As Integer) As Single Implements IM4_AirCompressor.GetPowerCompressorOff
-            Return GetCompressorPower(engineRpm, False)
+        Public Function GetPowerCompressorOff() As Single Implements IM4_AirCompressor.GetPowerCompressorOff
+            Return GetCompressorPower(False)
         End Function
 
         ''' <summary>
@@ -120,8 +123,8 @@ Namespace Pneumatics
         ''' <param name="engineRpm">Engine speed in rpm</param>
         ''' <returns></returns>
         ''' <remarks></remarks>
-        Public Function GetPowerCompressorOn(ByVal engineRpm As Integer) As Single Implements IM4_AirCompressor.GetPowerCompressorOn
-            Return GetCompressorPower(engineRpm, True)
+        Public Function GetPowerCompressorOn() As Single Implements IM4_AirCompressor.GetPowerCompressorOn
+            Return GetCompressorPower( True)
         End Function
 
         ''' <summary>
@@ -130,9 +133,9 @@ Namespace Pneumatics
         ''' <param name="engineRpm">Engine speed in rpm</param>
         ''' <returns></returns>
         ''' <remarks></remarks>
-        Public Function GetPowerDifference(ByVal engineRpm As Integer) As Single Implements IM4_AirCompressor.GetPowerDifference
-            Dim powerOn As Single = GetPowerCompressorOn(engineRpm)
-            Dim powerOff As Single = GetPowerCompressorOff(engineRpm)
+        Public Function GetPowerDifference() As Single Implements IM4_AirCompressor.GetPowerDifference
+            Dim powerOn As Single = GetPowerCompressorOn()
+            Dim powerOff As Single = GetPowerCompressorOff()
             Return powerOn - powerOff
         End Function
 
@@ -143,8 +146,8 @@ Namespace Pneumatics
         ''' <param name="compressorOn">Is compressor on</param>
         ''' <returns></returns>
         ''' <remarks></remarks>
-        Private Function GetCompressorPower(ByVal engineRpm As Integer, ByVal compressorOn As Boolean) As Single
-            Dim compressorRpm As Single = engineRpm * PulleyGearRatio
+        Private Function GetCompressorPower( ByVal compressorOn As Boolean) As Single
+            Dim compressorRpm As Single = _signals.EngineSpeed * PulleyGearRatio
             If compressorOn Then
                 Return _map.GetPowerCompressorOn(compressorRpm)
             Else
diff --git a/VECTOAux/VectoAuxiliariesTests/UnitTests/AirCompressorTests.vb b/VECTOAux/VectoAuxiliariesTests/UnitTests/AirCompressorTests.vb
index 770b2eecc8beb9a286acb7e599c3ec8fd78eddf6..7d7b9b721690515790c6c2d9e36020da3203a504 100644
--- a/VECTOAux/VectoAuxiliariesTests/UnitTests/AirCompressorTests.vb
+++ b/VECTOAux/VectoAuxiliariesTests/UnitTests/AirCompressorTests.vb
@@ -1,6 +1,8 @@
 Imports NUnit.Framework
 Imports VectoAuxiliaries.Pneumatics
 Imports VectoAuxiliariesTests.Mocks
+Imports VectoAuxiliaries
+
 
 Namespace UnitTests
 
@@ -17,6 +19,10 @@ Namespace UnitTests
 
 #End Region
 
+
+Private _signals As ISignals = New Signals
+
+
 #Region "Factory Methods"
 
         Private Function GetNonFailingCompressorMapMock() As ICompressorMap
@@ -37,7 +43,8 @@ Namespace UnitTests
         <Test()>
         Public Sub CreateNewJustPathTest()
             Dim map As ICompressorMap = GetNonFailingCompressorMapMock()
-            Dim target As M4_AirCompressor = New M4_AirCompressor(map)
+            _signals.EngineSpeed=100
+            Dim target As M4_AirCompressor = New M4_AirCompressor(map,_signals)
             Assert.IsNotNull(target)
         End Sub
 
@@ -52,14 +59,16 @@ Namespace UnitTests
         <Test()>
         Public Sub InitialiseTest()
             Dim map As ICompressorMap = GetNonFailingCompressorMapMock()
-            Dim target As M4_AirCompressor = New M4_AirCompressor(map)
+            _signals.EngineSpeed=100
+            Dim target As M4_AirCompressor = New M4_AirCompressor(map,_signals)
             Assert.IsTrue(target.Initialise())
         End Sub
 
         <Test(), ExpectedException("System.ArgumentException")>
         Public Sub InitialiseInvalidMapTest()
             Dim map As ICompressorMap = GetFailingCompressorMapMock()
-            Dim target As M4_AirCompressor = New M4_AirCompressor(map)
+            _signals.EngineSpeed=100
+            Dim target As M4_AirCompressor = New M4_AirCompressor(map,_signals)
             target.Initialise()
         End Sub
 
@@ -116,7 +125,7 @@ Namespace UnitTests
         Public Sub GetCompressorFlowRateTest()
             Dim comp As M4_AirCompressor = GetGoodCompressor()
             Dim expected As Single = 2.0
-            Dim actual = comp.GetFlowRate(100)
+            Dim actual = comp.GetFlowRate()
             Assert.AreEqual(expected, actual)
         End Sub
 
@@ -124,7 +133,7 @@ Namespace UnitTests
         Public Sub GetPowerCompressorOffTest()
             Dim comp As M4_AirCompressor = GetGoodCompressor()
             Dim expected As Single = 5.0
-            Dim actual = comp.GetPowerCompressorOff(100)
+            Dim actual = comp.GetPowerCompressorOff()
             Assert.AreEqual(expected, actual)
         End Sub
 
@@ -133,7 +142,7 @@ Namespace UnitTests
         Public Sub GetPowerCompressorOnTest()
             Dim comp As M4_AirCompressor = GetGoodCompressor()
             Dim expected As Single = 8.0
-            Dim actual = comp.GetPowerCompressorOn(100)
+            Dim actual = comp.GetPowerCompressorOn()
             Assert.AreEqual(expected, actual)
         End Sub
 
@@ -142,7 +151,7 @@ Namespace UnitTests
         Public Sub GetPowerDifferenceTest()
             Dim comp As M4_AirCompressor = GetGoodCompressor()
             Dim expected As Single = 3.0
-            Dim actual = comp.GetPowerDifference(100)
+            Dim actual = comp.GetPowerDifference()
             Assert.AreEqual(expected, actual)
         End Sub
 
diff --git a/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_5_SmartAlternatorSetEfficiencyTests.vb b/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_5_SmartAlternatorSetEfficiencyTests.vb
index 28db98ebf6a549cf51566cb23af2182968b5b9a3..066b1019861aecd85a841f21df844a3a649cec2a 100644
--- a/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_5_SmartAlternatorSetEfficiencyTests.vb
+++ b/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_5_SmartAlternatorSetEfficiencyTests.vb
@@ -1,5 +1,6 @@
 Imports VectoAuxiliaries.Electrics
 Imports VectoAuxiliaries.Hvac
+Imports VectoAuxiliaries
 Imports NUnit.Framework
 
 Namespace UnitTests
@@ -7,8 +8,8 @@ Namespace UnitTests
 <TestFixture()>
 Public Class M0_5_SmartAlternatorSetEfficiencyTests
 
-
 Private target As M0_5_SmartAlternatorSetEfficiency
+Private signals  = New Signals
 
 Public Sub new()
 
@@ -24,7 +25,11 @@ Dim  hvacMap As New HVACMap("testFiles\TestHvacMap.csv")
 hvacMap.Initialise()
 Dim alternatoMap As New AlternatorMap("testFiles\testAlternatormap.csv")
 alternatoMap.Initialise()
-Dim m0 As New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers,hvacInputs,hvacMap,alternatoMap,26.3)
+
+Dim signals = New Signals()
+signals.EngineSpeed=2000
+
+Dim m0 As New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers,hvacInputs,hvacMap,alternatoMap,26.3,signals)
 
 'Results Cards
 Dim readings = new Dictionary(Of single, single)
@@ -35,10 +40,11 @@ Dim idleResult As New ResultCard(readings)
 Dim tractionResult As New ResultCard(readings)
 Dim overrunResult As New ResultCard(readings)
 
-target = New M0_5_SmartAlternatorSetEfficiency(m0,elecConsumers,alternatoMap,idleResult,tractionResult,overrunResult)
 
-End Sub
+  signals.EngineSpeed=2000
+  target = New M0_5_SmartAlternatorSetEfficiency(m0,elecConsumers,alternatoMap,idleResult,tractionResult,overrunResult, signals)
 
+End Sub
 
 <Test()> _
 Public Sub CreateNewTest()
@@ -69,7 +75,7 @@ Public Sub AlternatorsEfficiencyIdle2000rpmTest()
    Initialise()
 
    Dim expected As Single = 0.618566155
-   Dim actual As Single = target.AlternatorsEfficiencyIdleResultCard(2000)
+   Dim actual As Single = target.AlternatorsEfficiencyIdleResultCard()
 
    Assert.AreEqual(expected, actual)
    
@@ -82,7 +88,7 @@ Public Sub AlternatorsEfficiencyTraction2000rpmTest()
    Initialise()
 
    Dim expected As Single = 0.618566155
-   Dim actual As Single = target.AlternatorsEfficiencyTractionOnResultCard(2000)
+   Dim actual As Single = target.AlternatorsEfficiencyTractionOnResultCard()
 
    Assert.AreEqual(expected, actual)
 
@@ -94,7 +100,7 @@ Public Sub AlternatorsEfficiencyOverrun2000rpmTest()
    Initialise()
 
    Dim expected As Single = 0.618566155
-   Dim actual As Single = target.AlternatorsEfficiencyOverrunResultCard(2000)
+   Dim actual As Single = target.AlternatorsEfficiencyOverrunResultCard()
 
    Assert.AreEqual(expected, actual)
 
diff --git a/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_NonSmart_AlternatorsSetEfficiencyTests.vb b/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_NonSmart_AlternatorsSetEfficiencyTests.vb
index 524bbbf6f14756f1b28b6a1d115a931d75d1891c..a588d17ea8f723fb2dab549024c8483cc1866526 100644
--- a/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_NonSmart_AlternatorsSetEfficiencyTests.vb
+++ b/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_NonSmart_AlternatorsSetEfficiencyTests.vb
@@ -1,4 +1,5 @@
 Imports NUnit.Framework
+Imports VectoAuxiliaries
 Imports VectoAuxiliaries.Pneumatics
 Imports VectoAuxiliariesTests.Mocks
 Imports VectoAuxiliaries.Electrics
@@ -19,13 +20,16 @@ Private elecConsumers As IElectricalConsumerList
 Private hvacInputs As IHVACInputs
 Private hvacMap As IHVACMap
 Private alternatorMap As IAlternatorMap
-
+Private signals As Signals = New Signals 
 Private powernetVoltage As Single = 26.3
 
 
 
 Public Sub New()
 
+
+    signals.EngineSpeed=2000
+
    'Setup consumers and HVAC ( 1 Consumer in Test Category )
     elecConsumers = CType(New ElectricalConsumerList(0.096,26.3), IElectricalConsumerList)
     elecConsumers.AddConsumer(New ElectricalConsumer(False, "TEST", "CONSUMER1", 20, 0.5, 26.3, 1))
@@ -45,43 +49,43 @@ End Sub
 
 <Test()>
 Public Sub CreateNewTest()
-       Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers, hvacInputs, hvacMap, alternatorMap, powernetVoltage)
+       Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers, hvacInputs, hvacMap, alternatorMap, powernetVoltage,signals)
        Assert.IsNotNull(target)
 End Sub
 
 <Test()>
 <ExpectedException("System.ArgumentException")>
 Public Sub CreateNew_MissingElecConsumers_ThrowArgumentExceptionTest()
-       Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(Nothing, hvacInputs, hvacMap, alternatorMap, powernetVoltage)
+       Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(Nothing, hvacInputs, hvacMap, alternatorMap, powernetVoltage,signals)
 End Sub
 
 <Test()>
 <ExpectedException("System.ArgumentException")>
 Public Sub CreateNew_MissingHVACInputs_ThrowArgumentExceptionTest()
-       Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers, Nothing, hvacMap, alternatorMap, powernetVoltage)
+       Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers, Nothing, hvacMap, alternatorMap, powernetVoltage,signals)
 End Sub
 
 
 <Test()>
 <ExpectedException("System.ArgumentException")>
 Public Sub CreateNew_MissingHVACMAP_ThrowArgumentExceptionTest()
-       Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers, hvacInputs, Nothing, alternatorMap, powernetVoltage)
+       Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers, hvacInputs, Nothing, alternatorMap, powernetVoltage,signals)
 End Sub
 
 
 <Test()>
 <ExpectedException("System.ArgumentException")>
 Public Sub CreateNew_MissingAlternatorMap_ThrowArgumentExceptionTest()
-       Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers, hvacInputs, hvacMap, Nothing, powernetVoltage)
+       Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers, hvacInputs, hvacMap, Nothing, powernetVoltage,signals)
 End Sub
 
 
 
 <Test()>
 Public Sub EfficiencyValueTest()
-       Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers, hvacInputs, hvacMap, alternatorMap, powernetVoltage)
+       Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers, hvacInputs, hvacMap, alternatorMap, powernetVoltage,signals)
 
-       Dim actual As Single = target.GetEfficiency(2000)
+       Dim actual As Single = target.GetEfficiency()
 
        Dim expected As Single = 0.6375106
 
@@ -94,7 +98,7 @@ End Sub
 <Test()>
 Public Sub HVAC_PowerDemandAmpsTest()
 
-      Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers, hvacInputs, hvacMap, alternatorMap, powernetVoltage)
+      Dim target As M0_NonSmart_AlternatorsSetEfficiency = New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers, hvacInputs, hvacMap, alternatorMap, powernetVoltage,signals)
 
       Dim actual As Single
       Dim expected As Single = 152.091263F   '( HVAC POWER OUTPUT IN KW not Watts )
diff --git a/VECTOAux/VectoAuxiliariesTests/UnitTests/M2_AverageElectricalLoadTests.vb b/VECTOAux/VectoAuxiliariesTests/UnitTests/M2_AverageElectricalLoadTests.vb
index 73952050cac8d6b4460bcf01eadb042956f9cfdb..5dc9f5bc494a45895254963b00760fa3e8b19160 100644
--- a/VECTOAux/VectoAuxiliariesTests/UnitTests/M2_AverageElectricalLoadTests.vb
+++ b/VECTOAux/VectoAuxiliariesTests/UnitTests/M2_AverageElectricalLoadTests.vb
@@ -2,26 +2,33 @@
 Imports VectoAuxiliaries.Hvac
 Imports NUnit.Framework
 Imports VectoAuxiliariesTests.Mocks
+imports VectoAuxiliaries
 
 Namespace UnitTests
 
     <TestFixture()>
     Public Class M2_AverageElectricalDemandTests
 
+    Private signals As ISignals = New Signals
+
     Private Const csngDoorDutyCycleZeroToOne As Single = 0.0963391136801541
+    Private Const csngPowernetVoltage As Single = 26.3
 
 
 
 #Region "Helpers"
         Private Function GetAverageElectricalDemandInstance() As M2_AverageElectricalLoadDemand
 
+        signals.EngineSpeed=2000
+
+
             Dim consumers As IElectricalConsumerList = CType(New ElectricalConsumerList(26.3,0.096, True), IElectricalConsumerList)
             Dim hvacInp As IHVACInputs = CType(New HVACInputs(1, 1), IHVACInputs)
             Dim hvacmap As IHVACMap = CType(New HVACMap("testfiles\TestHvacMap.csv"), IHVACMap)
             hvacmap.Initialise()
             Dim altMap As IAlternatorMap = CType(New AlternatorMap("testfiles\testAlternatorMap.csv"), IAlternatorMap)
             altMap.Initialise()
-            Dim m0 As New M0_NonSmart_AlternatorsSetEfficiency(consumers, hvacInp, hvacmap, altMap, 26.3)
+            Dim m0 As New M0_NonSmart_AlternatorsSetEfficiency(consumers, hvacInp, hvacmap, altMap, 26.3,signals)
 
             'Get Consumers.
 
diff --git a/VECTOAux/VectoAuxiliariesTests/UnitTests/M5_SmartAlternatorSetGenerationTests.vb b/VECTOAux/VectoAuxiliariesTests/UnitTests/M5_SmartAlternatorSetGenerationTests.vb
index e5a5a940a115c77c0e26110363f5b0c5600d1c3e..9d57a70bed6fbb62cd5feb1b3cec20be54d02322 100644
--- a/VECTOAux/VectoAuxiliariesTests/UnitTests/M5_SmartAlternatorSetGenerationTests.vb
+++ b/VECTOAux/VectoAuxiliariesTests/UnitTests/M5_SmartAlternatorSetGenerationTests.vb
@@ -3,6 +3,7 @@ Imports VectoAuxiliaries.Pneumatics
 Imports VectoAuxiliariesTests.Mocks
 Imports VectoAuxiliaries.Electrics
 Imports VectoAuxiliaries.Hvac
+Imports VectoAuxiliaries
 
 Namespace UnitTests
 
@@ -19,16 +20,19 @@ Private const _altGearPullyEfficiency As Single =0.8
 'Private fields
 Private _m05 As M0_5_SmartAlternatorSetEfficiency
 Private _target As M5__SmartAlternatorSetGeneration
+Private _signals As ISignals = New Signals
 
 Private sub Initialise()
 
-Dim elecConsumers As New ElectricalConsumerList(26.3,0.096,True)
+_signals.EngineSpeed= 2000
+
+Dim elecConsumers As New ElectricalConsumerList(_powerNetVoltage,0.096,True)
 Dim hvacInputs As New HVACInputs(1,1)
 Dim  hvacMap As New HVACMap(_hvacMap)
 hvacMap.Initialise()
 Dim alternatoMap As New AlternatorMap(_altMap)
 alternatoMap.Initialise()
-Dim m0 As New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers,hvacInputs,hvacMap,alternatoMap,_powerNetVoltage)
+Dim m0 As New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers,hvacInputs,hvacMap,alternatoMap,_powerNetVoltage,_signals)
 
 'Results Cards
 Dim readings = new Dictionary(Of single, single)
@@ -39,7 +43,10 @@ Dim idleResult As New ResultCard(readings)
 Dim tractionResult As New ResultCard(readings)
 Dim overrunResult As New ResultCard(readings)
 
-_m05 = New M0_5_SmartAlternatorSetEfficiency(m0,elecConsumers,alternatoMap,idleResult,tractionResult,overrunResult)
+Dim signals As ISignals = New Signals
+signals.EngineSpeed=2000
+
+_m05 = New M0_5_SmartAlternatorSetEfficiency(m0,elecConsumers,alternatoMap,idleResult,tractionResult,overrunResult,signals)
 
 End Sub