Adafruit Motor liabary V2

Ich glaube ich möchte mich vorerst auf einen Antrieb begrenzen, da ich etwas im Zeiitdruck bin, muss meine Arbeit nächsten Donnerstag abgeben.

Momentan habe ich ein Pulsen im Stepper wenn dieser nicht läuft hat jemand einen Ahnung warum?

Adafruit_MotorShield AFMS = Adafruit_MotorShield();       // Erstellung des Motorshield Objekt
 
Adafruit_StepperMotor *myMotor1 = AFMS.getStepper(200, 1); // Motor auf der linken Seite wird über den Port 1 (M1 und M2) angesteuert.




int freig1 = 7;
int freig2 = 5;
int level = 4;
int pump1 = 8;
int pump2 = 9;
int pump3 = 10;
int zylinder = 11;
int start = 12;


byte status1; 
byte status2;
byte status3;
byte status4;
byte status5;


void setup() {                                                  
  pinMode(freig1,INPUT);
  pinMode(freig2,INPUT);
  pinMode(level,INPUT);
  pinMode(pump1,OUTPUT);
  pinMode(pump2,OUTPUT);
  pinMode(pump3,OUTPUT);
  pinMode(zylinder,OUTPUT);
  pinMode(start,INPUT);
  Serial.begin(9600);
  Serial.println("Stepper test!");

  AFMS.begin();                                           
 
  
  myMotor1->setSpeed(150);                                // 300U/min
  myMotor1->setSpeed(150);                                // 300U/min 


  
  }




void loop() {

            status1 = digitalRead(start);          
            status2 = digitalRead(freig1);
            status3 = digitalRead(freig2);              
             
             if(status1==HIGH)
                if (status2==LOW)                         // Schlitten ist 
                    if(status3==LOW)
                      {  
                        delay(2000);
                        myMotor1->step(2100, BACKWARD, DOUBLE); 
                        
                        delay(2000);
                          {
                            digitalWrite(zylinder,HIGH);  //Zylinder fährt aus 
                            delay(10000);
                            digitalWrite(zylinder,LOW);   //Zylinder fährt wieder ein 
                            delay(5000);     
                          }
                              { 
                               myMotor1->step(2100, FORWARD, DOUBLE);
                               
                               delay(5000);
                                  {
                                    if(status2 == LOW)
                                        if(status3 == LOW)
                                            {
                                              digitalWrite(pump1,HIGH);
                                              delay(5000);
                                              digitalWrite(pump1,LOW);
                                              delay(2000);
                                            }
                                        
                                  }
                              }
                              
                      } 
                if (status3==LOW)
                  if(status1==HIGH)
                    if(status2==HIGH)
                      {  
                        digitalWrite(pump2,LOW);          //Warten auf bis der Schlittenbelgt ist
                        delay (2000);
                        
                      }       
       
      }