Non capisco il commento di questo pezzo ...
while (dataFile.available()) {
//Serial.write(dataFile.read()); //deve essere commentato altrimenti i dati che arrivano al cell non sono corretti
bluetooth.println(char(dataFile.read())); // trasmetto le righe del file tramite bluetooth
//stringXYZ += char(dataFile.read()); // non si possono inviare in quanto i tempi di lettura del file possono essere superiori ai tempi del loop, più che altro la lunghezza del messaggio
}
... che significa "non si possono inviare in quanto i tempi di lettura del file possono essere superiori ai tempi del loop" ? :o :o :o
Il loop() E' FERMO LI finché non hai inviato ... NON esiste che avvengano più cose allo stesso tempo (ovvero che il loop() continui a girare mentre tu leggi da SD e trasmetti su BT) !
Guglielmo