Sparkfun AutoDriver and Arduino problem with finding home reference

I really hope that someone can help me here because I am going crazy.

I am using an Arduino Uno R3 together with a SparkFun AutoDriver in order to drive a stepper motor as described in the tutorial:

I have connected everything like the following picture, except that I am using an Uno R3.

It is all working fine and my step motor works as expected. I have now added a switch to be used as a reference in order to "find home". I have the Arduino Pin 5 connected to a switch which will be activated and the switch is connected to the AutoDrivers Switch-pin.

So once the Arduino is powered, it will slowly move until the switch is activated, that position will be used as position 0 (home reference) and from that point on everything works just fine.

AutoDriver boardA(10, 6);
#define BOARD_MB_SENSOR_PIN          5

#define BOARD_MB_FIND_HOME_DIR          REV
#define BOARD_MB_END_POS                3000

String inputString = "";         // a string to hold incoming data
boolean stringComplete = false;  // whether the string is complete

void setup()
  digitalWrite(BOARD_MB_SENSOR_PIN, HIGH);
  Serial.println("Hello world");
  // find home for board_mb and stay at home
  Serial.println("Finding home reference for board_mb ...");
  digitalWrite(BOARD_MB_SENSOR_PIN, LOW);
  Serial.print("home reference reached, current pos (should be zero): ");

Now my problem is when the motor is already at the home reference and the Arduino is powered. As can be seen in the above code I start the switch once I have commanded the motor to find home and the motor stops immediately and reports that home has been found, but when I move the motor and command it to go to different positions It acts strange and does not go to the desired position.

I hope that you can understand what I mean, basically the behavior is different if the motor finds the home position or if it is started right in the home position.