Laufrichtung mit AccelStepper Libary

Hallo
Ich experimentiere gerade mit der AccelStepper Libary und dem Stepper Starterkit mit dem 28BYJ-48 Schrittmotor und dem dazugehörigen Treiberboard mit dem ULN2003.

Mein Problem ist der Motor läuft immer nur in eine Richtung.

#include <AccelStepper.h>
AccelStepper stepper(4,8,9,10,11);
//AccelStepper::FULL4WIRE (4 pins) on 8, 9, 10, 11
void setup()
{  
   Serial.begin(9600);
  Serial.setTimeout(10);
  stepper.setCurrentPosition(0);
  stepper.setAcceleration(200);
  stepper.setMaxSpeed(300);
  stepper.move(512); 
  
  }
void loop()
{  

    
  if (stepper.distanceToGo() == 0)    
  {   
    delay(1000);  
    stepper.moveTo(-stepper.currentPosition());  
  }
  stepper.run();
  Serial.println(stepper.currentPosition());
 }

Eigentlich erwarte ich dass der sich hin und her dreht, tut er aber nicht… immer nur stur im Uhrzeigersinn…

In der lib ist zwar ein ENUM für die Drehrichtung vorgesehen aber ich finde nirgens, wie ich ihm damit sage, lauf in die andere Richtung!

Zählen tut er richtig, zumindest spuckt der serialport mit die zahlen von -512 bis +512 aus.

Habt ihr einen Tipp für mich?

ok habs geschafft. würde nur gerne wissen ob das die quick and dirty variante ist oder so gewollt.
jedenfalls hab ich gerausgefunden dass ich mit

 if(stepper.distanceToGo()<0)
  {
    stepper.setPinsInverted(true,false,false);
  }
  else
  {
    stepper.setPinsInverted(false,false,false);
  }

die Richtung ändern kann

Hallo, der 28BYJ-48 ist ein unipolarer Schrittmotor, den die Bibliothek nicht kennt. Es geht aber trotzdem, wenn Du die Anschlüsse tauschst:

8 - IN1 9 - IN3 10 - IN2 11 - IN4

oder alternativ(!)

AccelStepper stepper(4,8,10,9,11);

Damit willkommen im Forum!