 void lockedRotorCheck(){
     if (rpm <= LOCKEDDISCRPM){
         digitalWrite(STARTRELAYPIN, LOW); // immediately shut down if RPM lowByte
-        client.publish(TOPIC_T, "CritErr: Disc rotation is locked, attempting restart"); 
-		Serial.println("Disc motion has been stopped. Attempting Restart");
-		delay(10000);
-		motionControlStart();
-		}                            
-		
+        }                            
+        client.publish(TOPIC_T, "CritErr: Disc rotation is locked, attempting restart");              
 }
 
 void allStop(){
     digitalWrite(STARTRELAYPIN, LOW);
     Serial.println("System in All-Stop");
+    delay(5000);
     client.publish(TOPIC_T, "CritErr: System halted. All stop active. Restart Required");
     allStopVar = 1;
-    delay(10000);
+    loop();
     }    
 void exhibitStatusMsg(){
     char gs_msg [50];

/*                LOOP                 /
/**************************************/
void loop(){
	delay(3);
if  (allStopVar == 0){
    calculateRPM();
    discSlipCheck();
    lockedRotorCheck();
}
    now = millis();
    //MQTT Connection Check
	//if (!client.connected()) {
	//	reconnect();
    //}
    //client.loop();
}


uint8_t discSlipPrecond     = 0 ;
uint8_t restartCount        = 0 ;
char msg[50];                   

/**************************************/
/*               SETUP                 /
