     lcd.setCursor(14, 1);
     lcd.print(movementString.length());
     lcd.setCursor(8, 1);
-    lcd.print(stepValue);
-        
+    lcd.print(stepValue);*/
+    
+    storeLCD(F("Assembling cube"), 0);
+    storeLCD(("Step   of ") + String(solutionLength), 1);
+    storeLCD(("     ") + String(i+1), 2);
+       
     makeStep(stepValue);
   }
+  
   lcd.clear();
   lcd.setCursor(0, 0);
-  lcd.print("Cube assembled");
+  lcd.print(F("Cube assembled"));
   lcd.setCursor(0, 1);
-  lcd.print("successfully!");
+  lcd.print(F("successfully!"));
 }
 
 //Method for implementing one defined step

  
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("Receiving data..");
  delay(100);
  
  PortTimeout = millis();

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////METHODS FOR MANAGING INTERRUPTIONS AND OPERATION/////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


//Method for defining which button was pressed
