Problema con Motore DC e ponte H (L293DNE)

Ciao,
ho acquistato il Robot Chassis 2WD tramite amazon. Ho collegato i 2 motori DC al ponte H L293DNE, il problema è che un motore funziona correttamente mentre l'altro resta sempre attivo. I collegamenti sono corretti li ho controllati un sacco di volte. Posto il codice per vedere se qualcuno magari riesce a vedere degli errori nel codice perchè io non ne vedo nemmeno lì, dato che sono praticamente identici per entrambi i motori.

const int motor1Sx = 3;
const int motor2Sx = 4;
const int motor2Dx = 10;
const int motor1Dx = 11;
const int pinEnableSx =  8;
const int pinEnableDx = 6;
int direzione;

void setup() {
  Serial.begin(9600);
  pinMode(motor1Sx, OUTPUT);
  pinMode(motor2Sx, OUTPUT);
  pinMode(motor1Dx, OUTPUT);
  pinMode(motor2Dx, OUTPUT);
  pinMode(pinEnableSx, OUTPUT);
  pinMode(pinEnableDx, OUTPUT);

  digitalWrite(pinEnableSx, HIGH);
  digitalWrite(pinEnableDx, HIGH);
}

void loop() {
 if (Serial.available() > 0) {
  direzione = Serial.read();
  Serial.print("Direzione");
  Serial.println(direzione, DEC);
 }
 if(direzione == 119){ //avanti
  digitalWrite(motor1Sx, HIGH);
  digitalWrite(motor2Sx, LOW);
  digitalWrite(motor1Dx, HIGH);
  digitalWrite(motor2Dx, LOW);
 }

 if(direzione == 32){ //stop
  digitalWrite(motor1Sx, LOW);
  digitalWrite(motor2Sx, LOW);
  digitalWrite(motor1Dx, LOW);
  digitalWrite(motor2Dx, LOW);
 }

}

Hai scelto per le variabili dei nomi poco felici che possono creare confusione.

Anche la scelta del valore da controllare mi sembra inadeguata: 119 (0x77 = 'w') e 32 (0x20 = ).

A parte questo, non vedo errori.

  const byte motorSxA = 3;
  const byte motorSxB = 4;

  const byte motorDxA = 10;
  const byte motorDxB = 11;

  const byte pinEnableSx =  8;
  const byte pinEnableDx = 6;
...
  digitalWrite(motorSxA, HIGH);
  digitalWrite(motorSxB, LOW);

  digitalWrite(motorDxA, HIGH);
  digitalWrite(motorDxB, LOW);
...

si so benissimo che mi metto in difficoltà da solo con i nomi delle variabili ;D
per quanto riguarda la scelta del valore da controllare la sistemerò dopo intanto volevo far andare i motori in modo corretto, anche perchè il progetto deve ampliarsi ancora dato che poi volevo comandarla tramite cellulare.

comunque ora ho fatto delle modifiche al programma, nel setup ho impostato i pinEnable a low e li porto a nel loopo HIGH quando devo muovere il motore in questo modo.

const int motor1Sx = 3;
const int motor2Sx = 4;
const int motor2Dx = 10;
const int motor1Dx = 11;
const int pinEnableSx = 7;
const int pinEnableDx = 6;
int direzione;

void setup() {
  Serial.begin(9600);
  pinMode(motor1Sx, OUTPUT);
  pinMode(motor2Sx, OUTPUT);
  pinMode(motor1Dx, OUTPUT);
  pinMode(motor2Dx, OUTPUT);
  pinMode(pinEnableSx, OUTPUT);
  pinMode(pinEnableDx, OUTPUT);

  digitalWrite(pinEnableSx, LOW);
  digitalWrite(pinEnableDx, LOW);
}

void loop() {
 if (Serial.available() > 0) {
  direzione = Serial.read();
  Serial.print("Direzione");
  Serial.println(direzione, DEC);
 }
 if(direzione == 119){ //avanti
  digitalWrite(pinEnableSx, HIGH);
  digitalWrite(pinEnableDx, HIGH);
  digitalWrite(motor1Sx, HIGH);
  digitalWrite(motor2Sx, LOW);
  digitalWrite(motor1Dx, HIGH);
  digitalWrite(motor2Dx, LOW);
 }
 if(direzione == 115){ //dietro
  digitalWrite(pinEnableSx, HIGH);
  digitalWrite(pinEnableDx, HIGH);
  digitalWrite(motor1Sx, LOW);
  digitalWrite(motor2Sx, HIGH);
  digitalWrite(motor1Dx, LOW);
  digitalWrite(motor2Dx, HIGH);
 }
 
 if(direzione == 97){ //sinistra
  digitalWrite(pinEnableDx, HIGH);
  digitalWrite(pinEnableSx, LOW);
  digitalWrite(motor1Dx, HIGH);
  digitalWrite(motor2Dx, LOW);
 }
 if(direzione == 100){ //destra
  digitalWrite(pinEnableSx, HIGH);
  digitalWrite(pinEnableDx, LOW);
  digitalWrite(motor1Dx, HIGH);
  digitalWrite(motor2Dx, LOW);
 }

 if(direzione == 32){ //stop
  digitalWrite(pinEnableSx, LOW);
  digitalWrite(pinEnableDx, LOW);
 }

}

questa modifica comporta un maggior numero di righe di codice che avrei preferito evitare.
Ma comunque il problema al motore di sinistra è parzialmente risolto perchè funziona sempre ma quando provo a portare l'auto indietro questo resta fermo mentre quello di destra si muove.
domani proverò a invertire i contatti da una parte all'altra dell'ponte H per capire se magari si è bruciato qualche piedino.