Errori di Lettura File da SD

Ciao, sto scrivendo un programma per leggere un file da scheda SD, vi allego lo schema. Il problema è che non legge, o meglio quando chiama questa funzione mi stampa solo 45 caratteri vuoti.

void write_operation(){
  operation = 0;
  i = 0;
  if(!SD.exists("write.txt")){
    blink_red();
  }
  digitalWrite(8, HIGH);
  write_file = SD.open("write.txt");
  
  while(write_file.available()){
    Serial.write(write_file.read());
  }
  
  write_file.close();
  Serial.print("FINE PROVA");
  digitalWrite(8, LOW);
  delay(200);
}

La stampa di chiusura non viene effettuata (FINE PROVA) e nonostante scrivo sul file diverse cose, ho provato numeri e lettere, dal classico ciao mondo a roba piu complessa e lunga, mi stampa sempre 45 caratteri tutti vuoti. Ho pure provato a copiaincollare questi caratteri in un file TXT ma non mi incolla niente.

Scondo voi che può essere ?

Piccola nota, il led collegato al pin 8 invece funziona perfettamente.

Nessuno nessuno ?

Mi sono accorto ora che non stampa in nessuna parte del programma, anche se inserisco il print subito dopo il serial.begin(), comunque continua a stampare caratteri vuoti, la lunghezza varia non è solo 45, a volte ne butta fuori 14, a volte di piu. Ho fatto una prova con uno sketch a parte e l'hardware funziona... che cosa può fare andare cosi la seriale ? Nello sketch uso sia la SD che il bus I2C per leggere una eeprom, ma pure prima di inizializzarli nel programma non se ne parla di stampare.

per cominciare a capire qualche cosa.... posta il programma completo

Niente, come non detto, ho riscritto il programma è ora funziona, probabilmente qualche errore di battitura o qualche loop che restava aperto.