Go Down

Topic: Ethernetshield empfang von großen Dateien möglich? (Read 578 times) previous topic - next topic

seven_cy

Hallo Gemeinde,
da ich mir noch uinsicher bin ob ich alles richtig Programiert habe wollte ich nachfragen ob es prizipiell möglich ist große Dateien (~150kb) an den arduino zu übertragen.
Zur Zeit funktioniert das empfangen jedoch kommt es mir so vor als würde nur das erste TCP/IP Paket ankommen und die restlichen werden ignoriert.
Auf dem Ethernetschield ist wer W5100 verbaut und ich benützte die Arduino-Ethernet Library.
Das senden von grösseren Dateien funktioniert wunderbar.

Im Datasheet vom W5100 wird hingewiesen das kein IP Frabmentierung unterstützt wird aber das ist, denke ich was anders oder?

Wer hat hier Erfahrungen und könnte mir weiterhelfen.




uwefed

Benutze etwas anderes als den Arduino zB den Rasberry oder vergleichbares.
Ein 8 Bit Controller wie auf dem Arduino UNO mit 2kByte RAM ist etwas sehr unterdimensioniert.

Grüße Uwe

seven_cy

Hi Uwe, ich verstehe nicht ganz was das mit dem Speicher zu tun hat der W5100 hat 8Kb (4kb RX 4 kb TX) da ich ein Mega benütze habe ich auf dem board 8 KB ram.
Der Empfang der Datei wird ja nicht komplett im Ram gehalten.

Meine Frage geht in die Richtung ob es möglich ist mit der Ehternetlibrary oder W5100 mehrer Packete zu empfangen (versenden geht ja).
Hat da jemand Erfahrung denn ich würde gerne das Http Protokoll benützen sonst müsste ich ein properitäres schreiben.

Gruß
Matthias

mkl0815

Poste doch mal Deinen Sketch, dann sehen wir wie Du das umgesetzt hast. Daraus ergeben sich dann sicher Ideen was man testen oder ändern könnte.
Mario.

Nighti


da ich mir noch uinsicher bin ob ich alles richtig Programiert habe wollte ich nachfragen ob es prizipiell möglich ist große Dateien (~150kb) an den arduino zu übertragen.

Ja, es ist möglich. Da du den W5100 einsetzt, brauchst dich nicht um die Pakete zu kümmern. Ein Ethernet.read() liefert dir byte für byte den gesamten Stream.
Aber wie uwefed schon geschrieben hat wird die Verarbeitung von solchen Datenmengen schnell zu einem Problem auf dem Atmega.

Lesen Ethernet -> Schreiben SD Karte/Stream irgendwohin ohne den kompletten Empfang wäre möglich. Soetwas will man aber in nur sehr seltenen Fällen!
Deswegen auch meine Empfehlung, überdenke den Einsatz vom Arduino. RspPie kriegt man schon für knapp 30 Euro und da hast du Ethernet und viel mehr Speicher/Rechenleistung ...

Go Up