Vibración con motores paso a paso

Hola.

Tengo dos motores NEMA17:

  • 42BYGHW818 de GEEETECH (4 cables)
  • SY42STH47-1206A de POLOLU (6 cables)

Y el controlador DRV8825.

Cuando ejecuto el siguiente código, tengo comportamientos diferentes en función del motor activado (primero pruebo un motor y después el otro):

#define pinEnable 12
#define pinStep    8
#define pinDir     7

void setup(){
  Serial.begin(9600);
  Serial.println("Test DRV8825");
  
  pinMode( pinEnable, OUTPUT );
  pinMode( pinDir   , OUTPUT );
  pinMode( pinStep  , OUTPUT );
}

void loop(){
  int i = 0;
  
  digitalWrite( pinDir   , HIGH);
  digitalWrite( pinStep  , LOW);
  
  for( i=0; i<200; i++){
    Serial.println( i );
    digitalWrite( pinStep, HIGH );
    delay( 10 );
    digitalWrite( pinStep, LOW );
    delay( 10 );
  } 
  
  digitalWrite( pinDir   , LOW);
  
  for( i=0; i<200; i++){
    Serial.println( i );
    digitalWrite( pinStep, HIGH );
    delay( 1 );
    digitalWrite( pinStep, LOW );
    delay( 1 );
  } 
  
  delay( 5000 );
  
  digitalWrite( pinEnable, HIGH ); // logique inversée
  
  while( true );
}

Si conecto el motor de GEEETECH no tengo ningun problema pero si conecto el motor de POLOLU el motor sólo vibra. Los dos motores trabajan con una corriente de 1.2A por lo que no tengo que ajustar nada en el controlador y en el caso del motorde POLOLU, he dejado al aire los cables blanco y amarillo utilizando sólo los cuatro cables que necesito).

¿Alguna idea de esta diferencia de comportamiento?

Gracias.