const int stepPin = 9; const int dirPin = 4; const int confirmButton = 6; int motorDirection = 0; // 0 or 1 | left or right long numberOfSteps = 0; int sliderSpeed = 200; // don't go over 16 383 | 75 worked for me | lower nuumber faster speed // the slider is started and stopped with the confirm button. number of steps taken is then sent to serial port. void setup() { pinMode(stepPin, OUTPUT); pinMode(dirPin, OUTPUT); pinMode(confirmButton, INPUT); digitalWrite(dirPin, motorDirection); Serial.begin(9600); } void loop() { if (digitalRead(confirmButton)) { delay(15); while (digitalRead(confirmButton)) {} delay(15); while(!digitalRead(confirmButton)){ digitalWrite(stepPin,!digitalRead(stepPin)); delayMicroseconds(sliderSpeed); numberOfSteps++; } Serial.println(numberOfSteps); delay(15); while (digitalRead(confirmButton)) {} delay(15); } }