If heaterTiming is true and millis() - startTime less than 300000, monitor temperature. And get rid of those delays.