Problema pause nel loop

  1. devi crearti una variabile che contiene lo stato, ovvero il "momento" in cui sei.
    Tu parli di 4 fasi o stati, perciò puoi avere stato 0=raffreddamento, 1=maturazione, 2=prelievitazione, 3=lievitazione
    avrai un bel
switch(fase)
{ case 0: // raffreddamento
  case 1: // maturazione
...
}
  1. devi vedere l'esempio blink without delay. Usando la millis().

Dovrai tu far aumentare questa variabile stato in base al tempo trascorso (non dico che è facile).
Qualsiasi delay() o ciclo while() ti si blocca li.