motor does not move without Serial.println
My guess is Serial.println adds additional delay so stepper motor can react. Without it changes are way too fast (= high frequency noise) to do whole step.

Try to add delay(1); or more into the main loop.