#include const int buttonPIN = D6; int counter = 0; bool lastButtonState = LOW; AccelStepper stepper(AccelStepper::DRIVER, D0, D1); void setup() { Serial.begin(9600); pinMode(buttonPIN, INPUT_PULLUP); stepper.setMaxSpeed(1000); stepper.setSpeed(500); } void loop() { int buttonState = digitalRead(buttonPIN); if (buttonState != lastButtonState) { lastButtonState = buttonState; if (buttonState == HIGH) { // Button pressed counter++; if (counter >= 2) counter = 0; // Reset after 2 presses // Toggle speed/direction if (counter == 1) { stepper.setSpeed(-500); // Reverse } else { stepper.setSpeed(500); // Forward (original speed) } } } stepper.runSpeed(); // Always run the stepper }