Menu

Is there anyway to increase the speed of the protocol?

Zack
2014-03-11
2014-03-14
  • Zack

    Zack - 2014-03-11

    I'm back. I was testing this out with the tool I am transferring files with and I noticed the protocol was a bit slow. Was this intended to transfer only one file at a time? My app is supposed to be able to transfer many small files in succession rather quickly. I noticed plenty of delays in the implementation, which is permissible for syncing I suppose. Do you think this can be done with this library, altered or not?

     
  • PH FRANCOIS

    PH FRANCOIS - 2014-03-12

    Hi Zack,
    When I developped this function, I considered that I can queue files path and call one by one the FileTransfert function.
    Also the Zmodem specification consider that files are transmitted in queue, file by file. this means that all negociation phases will remains for each file. Making optimization difficult...

    So if you have plenty of small files to transfer, I would recommend to zip the files on the source device before sending them...

    Best regards,

     
  • Zack

    Zack - 2014-03-14

    Ok. One more question. I noticed in your version.txt file that you say 3Mb (megabit?) file sizes can be transferred successfully. I am trying to send a file around this big, but nothing happens, it just times out.

    The file is a .h264 video file, 351401 bytes big. I am using the exact same method that I use to successfully transfer small .jpg files. Do you know what is keeping this from working? Is there a limit for file sizes in your implementation, or is it from the zmodem on my Linux tool?

     
  • PH FRANCOIS

    PH FRANCOIS - 2014-03-14

    Hi Zack,
    yes, I made several transfert tests : I tested text files and binary files.
    The biggest file I tested was 3Mo Binary.
    The device was running a linux 2.2 kernel.

    Several possible causes:
    1. an event of the class is not implemented
    2. an event is already registered on the serial port (should not be the case since you transfered small files)
    3. your file contains some specific sequences that I could have wrongly translated from the spec (like /0/0/0/0/0).
    4. A bug somewhere in my implementation ??

    2 ways to go ahead :
    1. try the same transfert with hyper terminal : If it pass, bug comes from my zmodem implementation... if it fails, it comes from your device / file.

    1. try to run your app in command line mode, to get debug informations...

    Let me know your results.

    Best regards,

     
  • Zack

    Zack - 2014-03-14

    Silly mistake on my part, I left the timeout at 10 seconds, and it needed much more time than that to transfer such a large file.

    My misconception was that the timeout was used for how much time the transfer was idle, not how long the whole transfer would take.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.