   }
 
   doorWatchdog = 0;
+  doorWatchdogMax = DOOR_MOTOR_WATCHDOG_OPEN_MAX;
+  doorWatchdogLowSpeedCutover = DOOR_MOTOR_WATCHDOG_OPEN_LOW_SPEED;
+  doorLowSpeed = DOOR_LOW_SPEED_OPEN;
   doorState = DOOR_STATE_OPENING;
 }
 

// and atomicity
volatile byte doorCommand = DOOR_COMMAND_NONE;

// Door PWM setting.  A negative values indicates no motor output and are used for a motor start delay.
int doorSpeed = 0;

// Door watchdog counter.
unsigned int doorWatchdog = 0;


/**

    return;
  }

  int pwm;
  
  doorWatchdog++;
  if (doorWatchdog > doorWatchdogMax) {
    digitalWrite(PWM_PIN, LOW);
    digitalWrite(OPENING_PIN, LOW);
    digitalWrite(CLOSING_PIN, LOW);
