MaxWait - what does it mean?

  • Hi, I'm using beta-version of Duet WiFi board with Kossel Mini and this firmware:

    Firmware Name: RepRapFirmware for Duet WiFi
    Firmware Version: 1.15e (2016-10-02)
    WiFi Server Version: 1.02
    Web Interface Version: 1.12

    From time to time I'm experiencing strange freezes in movement commands from Web UI. Example log:

    M999 - reset printer, wait for reconnect
    G28 - home
    G32 - autocal. using 64 points
    M666 - to check calibration results
    G1 Z3 - printer freezes up to 20-30 seconds and then moves effector. During freeze Web UI interface is still responsive and shows temperature changes every second. The same thing with other movement commands.
    ```Then I entered M122 and nothing happens during first minute. Second M122 shows the following output:

    Slowest main loop (seconds): 0.006500; fastest: 0.000061
    === Move ===
    MaxReps: 3, StepErrors: 0, MaxWait: 124064ms, Underruns: 0, 0

    This freezes happens not every time. Sometimes no need to move effector at all, I can just unload/load new filament issuing few extruder commands to start freezing. No communication errors or other wifi-related errors (ajax erros) in web ui logs.
    I noticed what I have very large times in MaxWait output, examples:

    Slowest main loop (seconds): 0.006409; fastest: 0.000061
    === Move ===
    MaxReps: 3, StepErrors: 0, MaxWait: 31402ms, Underruns: 0, 0

    Slowest main loop (seconds): 0.006592; fastest: 0.000076
    === Move ===
    MaxReps: 3, StepErrors: 0, MaxWait: 20502ms, Underruns: 0, 0

    Slowest main loop (seconds): 0.006409; fastest: 0.000061
    === Move ===
    MaxReps: 0, StepErrors: 0, MaxWait: 111534ms, Underruns: 0, 0

    Does this attitude to freezes or this is something completely different?

  • administrators

    MaxWait is simply the longest time that the movement system was waiting for a new move to be supplied by the gcode interpreter. It is only relevant when you are printing as file and it is reset every time you run M122. I added it to help diagnose print stuttering issues, to tell whether the movement system is being starved of gcodes. So your MaxWait value of 111534ms simple means that the printer was standing idle for about 111s.

  • Thank you for explanation. In this case I should enable debugging via M111, start Wireshark and try to understand what happens with freezes that I described.

Log in to reply