Problema con millis

ok sistemato, ma non funziona, mi spiego meglio: appena mando il comando il motore della pompa parte ma rimane acceso sempre, mentre se invio nuovamente il comando si ferma.

byte pompa = 8;
unsigned long inizioIrrigazione = 0;




void setup() {
  pinMode(pompa, OUTPUT);
  Serial.begin(9600);



}
void loop () {

  //attendi un comando dalla serial
  if ( Serial.available()) {
    byte DataRX = Serial.read();
    if (DataRX == 51) {

      digitalWrite(pompa, HIGH);

    }
    if (millis() - inizioIrrigazione >= 6000) {
      digitalWrite(pompa, LOW);
      inizioIrrigazione = millis();
    }
  }
}