diff --git a/web.cpp b/web.cpp
index 90a93791dea167f6c2895c46ea97e76bf7d4705e..376be8ff9c51923d01d2b88ac311969a6ed5c81a 100644
--- a/web.cpp
+++ b/web.cpp
@@ -254,8 +254,7 @@ void Web :: fast_backward_callback (Control *sender, int type)
     {
     case B_DOWN:
 
-        //syringe_filled.reset_position();
-        syringe_filled.move_to_mm(-50);
+        syringe_filled.move_to_mm(syringe_filled.get_clockwise_equals_push()? -50:50);
         syringe_filled.set_speed_mm_per_sec(50);
 
         break;
@@ -283,9 +282,7 @@ void Web :: fast_forward_callback (Control *sender, int type)
     {
     case B_DOWN:
 
-        Serial.printf("Forward 10 steps"); 
-        //syringe_filled.reset_position();
-        syringe_filled.move_to_mm(50);
+        syringe_filled.move_to_mm(syringe_filled.get_clockwise_equals_push()? 50:-50);
         syringe_filled.set_speed_mm_per_sec(50);
 
         break;
@@ -311,8 +308,7 @@ void Web :: slow_backward_callback (Control *sender, int type)
     {
     case B_DOWN:
 
-        //syringe_filled.reset_position();
-        syringe_filled.move_to_mm(-50);
+        syringe_filled.move_to_mm(syringe_filled.get_clockwise_equals_push()? -50:50);
         syringe_filled.set_speed_mm_per_sec(0.5);
 
         break;
@@ -338,9 +334,8 @@ void Web :: slow_forward_callback (Control *sender, int type)
     switch (type)
     {
     case B_DOWN:
-
-        //syringe_filled.reset_position();
-        syringe_filled.move_to_mm(50);
+    
+        syringe_filled.move_to_mm(syringe_filled.get_clockwise_equals_push()? 50:-50);
         syringe_filled.set_speed_mm_per_sec(0.5);
 
         break;