diff --git a/TestON/tests/SCPF/SCPFportLat/SCPFportLat.py b/TestON/tests/SCPF/SCPFportLat/SCPFportLat.py
index c1dd9cc..f5edd3e 100644
--- a/TestON/tests/SCPF/SCPFportLat/SCPFportLat.py
+++ b/TestON/tests/SCPF/SCPFportLat/SCPFportLat.py
@@ -150,10 +150,10 @@
                 resultDict[ d ][ 'node' + str( i ) ][ 'PtoD' ] = []
                 resultDict[ d ][ 'node' + str( i ) ][ 'DtoL' ] = []
                 resultDict[ d ][ 'node' + str( i ) ][ 'LtoG' ] = []
-        for i in range( 1, main.sampleSize + main.warmUp ):
+        for i in range( 0, main.sampleSize + main.warmUp ):
             main.log.info( "==========================================" )
-            main.log.info( "================iteration:{}==============".format( str ( i ) ) )
-            if i > main.warmUp:
+            main.log.info( "================iteration:{}==============".format( str ( i + 1 ) ) )
+            if i >= main.warmUp:
                 # Portdown iteration
                 main.portFunc.capturePortStatusPack( main,
                                                      main.device,
diff --git a/TestON/tests/SCPF/SCPFswitchLat/SCPFswitchLat.py b/TestON/tests/SCPF/SCPFswitchLat/SCPFswitchLat.py
index d3138f7..66aa0bf 100644
--- a/TestON/tests/SCPF/SCPFswitchLat/SCPFswitchLat.py
+++ b/TestON/tests/SCPF/SCPFswitchLat/SCPFswitchLat.py
@@ -164,9 +164,9 @@
             resultDict[ 'down' ][ 'node' + str( i ) ][ 'A_D' ] = []#Ack to Device
             resultDict[ 'down' ][ 'node' + str( i ) ][ 'D_G' ] = []#Device to Graph
             resultDict[ 'down' ][ 'node' + str( i ) ][ 'E_E' ] = []#fin_ack to Graph
-        for i in range( 1 , main.sampleSize + main.warmUp ):
+        for i in range( 0, main.sampleSize + main.warmUp ):
             main.log.info( "************************************************************" )
-            main.log.info( "************************ Iteration: {} **********************" .format( str( i ) ) )
+            main.log.info( "************************ Iteration: {} **********************" .format( str( i + 1 ) ) )
             if i < main.warmUp:
                 main.switchFunc.captureOfPack( main, main.device, main.ofPackage,
                                                "up", resultDict, True )
