Projekt Schrittmotor & Treiber DRV8825

Einen Link zu deinem Motor solltest Du noch posten. Nema 17 sagt nichts über die elektrischen Daten des Motors. Und 2A ist für den DRV8825 schon recht grenzwertig. Wenn Du nicht das volle Drehmoment brauchst, kannst ( und solltest ) Du den Strom am Treiber kleiner einstellen.

Dazu ist der enable Pin besser geeignet. Du willst ja nicht den ganzen Chip schlafen legen, sondern nur den Motorstrom abschalten.

Wenn der Joystick schon einen analogen Ausgang hat ( Poti), warum nimmst Du das nicht als Tempo? Je weiter Du den Joystick aus der Neutralstellung bewegst, umso schneller dreht der Motor.

Das sollte dann doch die Lib machen.

Scheint mir ein bisschen arg hoch. Ich glaube kaum, dass das der Stepper schafft. Das wäre ja eine Steprate von 2µs+loop Durchlaufzeit. D.h. eigentlich bestimmt da nur die Loopzeit die Steprate.
Wie hast Du die Microsteppings am Treiber eingestellt? Was brauchst Du tatsächlich als maximale Steprate?

Normalerweise ist es besser den internen Pullup zu verwenden, und als 'Failsafe' den Endschalter als NC gegen Gnd zu schalten. D.h. Beim Erreichen der Endlage öffnet er. Kabelbruch wirkt dann wie 'Endlage erreicht'.

Du könntest Dir mal meine MobaTools anschauen. Die haben eine Ansteuerung für einen Stepper ( optional mit automatischer Abschaltung bei Stillstand) , und Funktionen zum Einlesen der Buttons. Beispiele sind auch dabei.
Letztens gab's im englischen Forum auch eine Anfrage einen Stepper per Joystick zu steuern. Müsste man mal nach suchen

P.S.

Es gibt keine if-Schleifen :wink:

P.P.S Das hier stepper-motor-angle-and-speed-control war der oben angesprochene Thread. Da wurde auch ein Stepper per Joystick bewegt mit Limitierung der Bewegung.