Go Down

Topic: Ethernet lesen mit mehr Geschwindigkeit für E-Mail Server... jetzt 7kb/s :) (Read 2 times) previous topic - next topic

sven1977

Hey,
bin ja gerade dabei einen E-Mail Server zu schreiben. Ich bin gerade beim SMTP und soweit funktioniert auch alles.
Nun wollte ich mal die Geschwindigkeit messen und habe nen Anhang von 100kb mitgeschickt.

Somit kam ich auf ca. 4,5kb/s und finde das schon sehr langsam :(

         while (aa !=5){
         while (client.available() < 1){
         }
         zeichen=client.read();
         ...
         }
         }

Ich habe als Test das client.read(); ohne eine weitere große Bremse in der Scheife gemacht.
Also zeichen wird erstmal nicht bearbeitet oder so.

Das Problem kenne ich auch von Bascom (AVR Basic) und habe da die möglichkeit z.b. client.read(512);
zu machen. Also nicht Byte für Byte, sondern gleich 512 Byte vom Ethernet zu laden.

Wie geht das mit Arduino ?

sven1977

ok, hat sich erledigt :D

Habs auf ca. 7kb/s geschafft. Ich denke das ich das noch etwas optimieren kann. Aber ich muss mal sehen wie
ich den Buffer vom Ethernetshild voll ausreizen kann.

uint8_t buff[1536];
            if (client.available() > 1536){
            client.read(buff,1536);
            myFile.write(buff,1536);
          }
          else
          {
           byte für byte ;)

uint8_t kannte ich nicht....

Wenn ich den Buffer auf 2 oder 3kb bekomme, wird es bestimmt etwas schneller :D
Aber 7bk/s reicht eigendlich aus. Die meissten E-Mails sind nicht mehr als 70kb groß.
Und wenn mal eine 2MB ist, dann dauert es halt ein wenig. Aber soweit finktioniert's

Manawyrm

MOMENT - Du schreibst einen MAIL SERVER?
Auf einem AVR?

DAS ist Hardcore.

mkl0815

Hmm, welchen Arduino verwendest Du denn? Der Uno hat nur 2kB RAM und der Mega hat 8kB.

sven1977

Ich mach das mit dem Arduino Mega 2560. Geplant ist später dann noch ein 3,2" TFT mit drann zu machen.

Im Moment ist das SMTP fast fertig. Das ganze geht natürlich nur mit einer SD-Karte.
Es sind auch mehrere E-Mail Accounts möglich. HTTP und POP3 kommen auch dazu...

Wenn ihr Interesse hab, Poste ich das ganze natürlich hier :)


Ich plane noch eine Weboberfläche zu machen für das Administrieren....

Go Up