strange behavior on my first robot with L298

Hi Again,
when i'm preparing to send you the voltage measurment, it workw now without any change.

so you can find attached a picture i tried to explain all on it..

i have another problem now :slight_smile: this is my code :

int enA = 3;
int in1 = 4;
int in2 = 5;

// Motor Droite
int enB = 6;
int in3 = 7;
int in4 = 8;


void setup() {
  Serial.begin(9600);
  pinMode(enA, OUTPUT);
  pinMode(in1, OUTPUT);
  pinMode(in2, OUTPUT);
  pinMode(enB, OUTPUT);
  pinMode(in3, OUTPUT);
  pinMode(in4, OUTPUT);
}

void loop()
{
 for (int i =60;i< 250;i++)
{
  MoveForward(i);
  Serial.println(i);
  delay(1000);
  }
}

void MoveForwardMotorRight(int speed)
{
  digitalWrite(in3, HIGH);
  digitalWrite(in4, LOW);
  analogWrite(enB, speed);
}

void MoveBackwardMotorRight(int speed)
{
  digitalWrite(in3, LOW);
  digitalWrite(in4, HIGH);
  analogWrite(enB, speed);
}

void StopMotorRight()
{
  digitalWrite(in3, LOW);
  digitalWrite(in4, LOW);
}

void StopMotorLeft()
{
  digitalWrite(in1, LOW);
  digitalWrite(in2, LOW);
}


void MoveForwardMotorLeft(int speed)
{
  digitalWrite(in1, LOW);
  digitalWrite(in2, HIGH);
  analogWrite(enA, speed);
}

void MoveBackwardMotorLeft(int speed)
{
  digitalWrite(in1, HIGH);
  digitalWrite(in2, LOW);
  analogWrite(enA, speed);
}


void MoveForward(int speed)
{
  MoveForwardMotorLeft(speed);
  MoveForwardMotorRight(speed);
}

void MoveBackward(int speed)
{
  MoveBackwardMotorLeft(speed);
  MoveBackwardMotorRight(speed);
}

void Stop()
{
  StopMotorLeft();
  StopMotorRight();
}

void TurnLeft(int speed)
{
  MoveForwardMotorRight(speed);
  MoveBackwardMotorLeft(speed);
}


void TurnRight(int speed)
{
  MoveForwardMotorLeft(speed);
  MoveBackwardMotorRight(speed);
}

the problem is that aal motors didnt' start on the same time and speed

MA1 start when speed = 61
MA2 start when speed = 68
MB1 start when speed = 73
MB2 start when speed = 82

so when i put a common value for speed (MoveForward (speed)) those motors didn't spin at the same speed

did you see any similar problem ?

void loop()
{
for (int i =60;i< 250;i++)
{
MoveForward(i);
Serial.println(i);
delay(1000);
}
}