WebServer, dati inviati al client corroti!

Salve a tutti..sono da giorni che cerco di trovare una soluzione, ma fin ora non ho trovato nessuna risposta al mio problema. La situazione è questa:

La mia idea era quella di portar su una sorta di webserver, che permetesse l'upload e il download di file dalla microSD presente nella scheda di rete che utilizzo con l'arduino. Ho iniziato a fare qualche test. Non potendo utilizzare linguaggi lato server, ho pensato di utilizzare gli header http per avviare il download del file...fin qui tutto bene. Il problema che sorge ora è quello della lentezza nell'invio dei pacchetti.

Ho pensato di utilizzare, come consigliato da altri utenti in rete, un buffer su cui salvare i singoli bit letti da inviare a blocchi di 64, così da incrementare la velocità. Tutto funziona, ma i file ricevuti dal client risultano illegibili. All'apertura del file appare un messaggio di errore, dove definisce il file come corrotto o con l'impossibilità di interpretarlo.

Problema di conversione?Non trovo una soluzione...
Allego il codice utilizzato per l'invio.

while (myFile.available())
    {
     buffer[count] = myFile.read();
     count++;
     buffer[count] = 0;
     if(clientCount > 63) 
       {
         client.write((byte*)buffer,64);
         clientCount = 0;
        }