Go Down

Topic: Esp32cam FTP upload (Read 580 times) previous topic - next topic

Wolfgang1402

Hallo zusammen

heute hatte ich etwas Zeit und habe mich wieder an den Code gewagt.
 leider immer noch erfolglos :(

zunächst habe ich den FTP Server gewechselt, ist nun nicht mehr mein NAS sondern die Festplatte an
der FritzBox
Das ganze hat aber auch nicht geholfen. :(

@ Michael aus Berlin, 

FTP Debug ist eingeschaltet, die Serial Print Ausgabe ist leider spärlich vielleicht kann man da ja mehr herausholen ??

hier die Serial Print Infos: (ANONYMUSFTP ist mein Benutzername für den FTP Zugriff)
   Cam Init ok
   Bild.jpg
   Command connected
   220 FRITZ!Box7490 FTP server ready.
   Return: 220
   AnonymusFTP
   500 'ANONYMUSFTP': command not understood.
  Return: 500
  Command disconnected
  Going to sleep now

___
 
WER VERSTEHT DENN JETZT WEN NICHT ?? - UND WARUM ??

Hier noch mal der String auf dem  ESP32

String ftp_comm[] = {"AnonymusFTP","xxyz","SYST","Type I"};   

String ftp_ret[] = {"331","230","215","200"};        // -----------------

_____

könnte man die  Zeile  String ftp_ret   aufteilen um besser zu unterscheiden ?


Vielen Dank für Eure Zeit  guten Ideen 

Tommy56

Dein Sketch gibt den Usernamen an der falschen Stelle an.
Damit denkt der FTP-Server, das wäre ein Kommando und das kennt er (mit Recht) nicht.
Code: [Select]

   AnonymusFTP
   500 'ANONYMUSFTP': command not understood.
  Return: 500


Wahrscheinlich ist Dein Sketch auf den Ablauf von genau einem FTP-Server ausgelegt. Normalerweise prüft man die Antworten vom Server, bevor man weiter macht.
Da müsste dann irgendwann USER kommen und danach erst akzeptiert der Server den Usernamen.

Nimm Dir doch mal ein Putty auf IP + Port 21 und spiele den Ablauf mal schrittweise durch. Dann siehst Du, was er wo haben will. Schreibe den Ablauf auf und baue den in Deinen Sketch ein.

Gruß Tommy
"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)

Wolfgang1402

Hallo Tommy danke für deine Gedanken zu meinem Problem

Du meinst Putty auf dem  PC ? 
ok werde eine FTP Verbindung zum Server herstellen und mir das Log anschauen,
mal Testen was da für Meldungen laufen. 

Soll ich vielleicht den User Namen mal ändern auf Groß klein SCHREIBUNG verzichten ?

bin ja für alle Ideen dankbar.

postmaster-ino

Hi

Du sollst nicht das LOG begutachten - Du sollst Dich als Client ausgeben - Du bist der Client, Der via Putty probiert, vom FTP Daten zu bekommen.
Die Schritte, Die Du unternehmen musst, muß auch der Arduino ausführen - eben mit dem User-Namen antworten, wenn der FTP-Server Diesen wissen will.

DAS kannst Du danach dann auch im LOG nachlesen, welcher Client Sich wie verhalten hat - z.B. kannst Du dort auch sehen, wo der Arduino Mist erzählt und vom FTP-Server einen auf die Hörner bekommt.

MfG
anscheinend ist Es nicht erwünscht, einen Foren-internen Link als 'Homepage' einzubinden, damit JEDER nur einen Klick von combie's Liste zum Thema State-Maschine entfernt ist.
... dann eben nicht ...

Tommy56

Da ist eigentlich nichts mehr hinzu zu fügen.
Du musst die Befehle an den FTP-Server von Hand absetzen.

Die Grundlagen, was Du eintippen musst, findest Du hier.

Gruß Tommy
"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)

amithlon

Hallo,

in der Zeile
String ftp_comm[] = {"USER aaaaaa","PASS bbbbbb","SYST","Type I"};
hast Du falsch ersetzt: NUR aaaaaa muß durch den Userbanem ersetzt werden, also durch ANONYMUSFTP
String ftp_comm[] = {"USER ANONYMUSFTP","PASS bbbbbb","SYST","Type I"};

Beim Passwort genauso, "PASS und das folgende Leerzeichen muß so stehenbleiben.

Gruß aus Berlin
Michael



 
 

Wolfgang1402

Hallo zusammen

MICHAEL DANKE !!!
Da liegt bestimmt der Fehler. den Ich verbockt habe. zu dumm zum abtippen .. - schäm

Werde es nachher ändern, und berichten.






Wolfgang1402

Hallo zusammen

ES FUNKTIONIERT !!!  Der Upload klappt nun.  

DANKE für Eure Hilfe meinen Fehler zu finden.

Das Bild was geschrieben wird ist noch schlecht, da muss ich noch einiges in den Einstellungen verändern.
(Grün stich, zuwenig Kontrast.....)

Aber Grundfunktion FTP Upload klappt.

Werde meine kommenden Schwierigkeiten gerne mit Euch teilen wenn ich das darf.


Wünsche Euch einen schönen Sonntag.


amithlon

Hallo,

der Kram liegt ja schon "ewig" bei mir rum, die Einstellungen kann man ja in setSensordaten() beeinflussen, ich wollte erstmal nur ein Bild haben. ;)
Ich lese in uploadFTP(String filename) gleich am Anfang 3 Bilder ein und nehme dann erst das Vierte. Die Kamera braucht etwas, um ihre internen Automatiken einzustellen. Da ist also vermutlich auch noch Spielraum für Experimente.

Gruß aus Berlin
Michael

Wolfgang1402

Hallo Michael

Ist das hier in dem Code ?

                             String uploadFTP(String filename)
                             {
                             for (uint8_t i = 0; i < 3; i++)

wenn ich die 3 auf 8 ändere list er zunächst 8 Bilder und schreibt das 9 zum FTP Server ?

ist es möglich 2- 3 Bilder auf den FTP zu schreiben bevor er in den DeepSleep geht ?

sorry viele dumme Fragen,...

ElEspanol

Und poste bitte mal den lauffähigen Code, ich habe auch noch ein paar ESP32 mit Kameramodul rumliegen, die mal verwendet werden wollen.

Lordcyber

Und poste bitte mal den lauffähigen Code, ich habe auch noch ein paar ESP32 mit Kameramodul rumliegen, die mal verwendet werden wollen.
Ich hab ja meinen Code so wie bei mir läuft hier eingestellt.
Einfach nur WLAN DATEN, die aaaaaaaa, bbbbbbbbb, IP eintragen und Pfad vom Upload.
Aber drauf achten was für ein Modul ich habe ja das AI THINKER.

Lordcyber

Für die Leute die es auch aus Webcam außen verwenden wollen.
Ich hab meine jetzt fertig im Dummy Gehäuse. Kommt ende nächster Woche alles in Thingverse für den 3D Drucker mit Links. Aber eben anderes Objektiv.
Ich habe aber ein anderes Objektiv verwendet:

OV2640 Weitwinkel ist für Panorama besser geeignet.


amithlon

#43
Oct 13, 2019, 05:33 pm Last Edit: Oct 13, 2019, 05:36 pm by amithlon
Hallo,

ich habe 3 Kamera-Versionen hier liegen:



Der Sketch hat prinzipiell alle Belegungen mit drin, ich habe ihn nochmal angehängt.
Verschiedene Kameraversionen habe ich auch, je nach damaliger Bestellung eben...
Weitwinkel auch.

Gruß aus Berlin
Michael

Wolfgang1402



Hallo zusammen

hatte heute Nachmittag noch was geschrieben, ist aber leider nicht hochgeladen.

@ ElEspanol ich habe den Code aus #7 benutzt.

@ Michael vielen Danke noch mal dafür 

Zu den Code Anpassungen:

 so wie Lordcyber es geschrieben hatte in #41

Für Dummis wie mich gab es noch andere Hürden die man beachten muss:

 zb hier mit Lehrzeichen und Kommas  --IPAddress ftpserver( 192, 168, 178, 1 ); 
 
 den String Pfad zum FTP Server eingaben sind abhängig vom Server einfach mal testen.
mir hatte der Tipp von Tommy geholfen, über Putty eine FTP Verbindung aufbauen und Log lesen.
  Deep Sleep Zeit hier #define TIME_TO_SLEEP  300        /* Time ESP32 will go to sleep (in seconds) */
nicht zu kurz setzten da sonst der FTP Server mit neuen Verbindungen zugeballert wird.

Wünsche Euch einen schönen Abend

Go Up