Motor with hall effect sensor headaches...

Perhaps instead of having"
hallState = digitalRead(hallPin);
while (hallState == HIGH) // No Magnet
{

digitalWrite(outPin1, LOW); // Run motor direction 2
digitalWrite(outPin2, HIGH);
analogWrite(enA, 10);

}

break;
".

You might try" hallState = digitalRead(hallPin);
if (hallState == HIGH) // No Magnet
{

digitalWrite(outPin1, LOW); // Run motor direction 2
digitalWrite(outPin2, HIGH);
analogWrite(enA, 10);

}
else
{
digitalWrite(outPin1, LOW); // turn off
digitalWrite(outPin2, LOW);
}

break;

Or something similar.

Paul