Le map bloque la valeur à 3000 alors que tu mets une vitesse max de 10000.
Essaye :
#include <AccelStepper.h> #define INTERUPTEURPIN 10 #define ANALOGPIN A0 int val=0 ; int valInter=0 ; AccelStepper stepper(1, 4, 7); // TB6600 OFF OFF ON ON ON OFF void setup() { Serial.begin(115200); //Initialisation de la communication avec la console pinMode(INTERUPTEURPIN,INPUT); stepper.setMaxSpeed(50000); stepper.setAcceleration(3000); } void loop() { val = analogRead(ANALOGPIN); valInter = map(val,0,1023,0,5000); if( digitalRead(INTERUPTEURPIN) ) stepper.setSpeed(valInter) ; else stepper.setSpeed(0); stepper.runSpeed(); }