Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    AJAX timeout error during a print

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    11
    48
    8.6k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • dc42undefined
      dc42 administrators
      last edited by

      I think the retry count may only apply to the case where no response is received during the timeout period. I'll alert chrishamm to this thread.

      Duet WiFi hardware designer and firmware engineer
      Please do not ask me for Duet support via PM or email, use the forum
      http://www.escher3d.com, https://miscsolutions.wordpress.com

      1 Reply Last reply Reply Quote 0
      • chrishammundefined
        chrishamm administrators
        last edited by

        Can you confirm that the same AJAX request isn't sent multiple times before an error is reported? You can use the developer tools in your browser (press F12) and go to Network/Traffic to see all the HTTP requests being sent.

        Also be aware that the timeout for each request becomes smaller if you increase the number of AJAX retries. AFAIR the Duet WiFi has an HTTP session timeout of 20 seconds, so if you have configured 9 AJAX retries, the web interface will reduce the timeout of each request to 20/(n+1) = 2 seconds.

        Duet software engineer

        1 Reply Last reply Reply Quote 0
        • roboduetundefined
          roboduet
          last edited by

          @chrishamm thank you for your response.

          Yes, I can confirm that AJAX request isn't sent multiple times (10 AJAX retries in settings) if received response is empty (i.e. without HTTP headers and body).

          As I said before, after unsuccessful AJAX request DWC requests (purposes are unknown for me) the main (index) html page (GET / HTTP/1.1) and stops any further requests after this.

          Call stack (provided by developer tools) for successful requests:

          [[language]]
          .send
          .ajax
          updateStatus
          
          

          Call stack for index page request:

          [[language]]
          .send
          .ajax
           <anonymous>bv.event.dispatch
          bv.event.add/r.handle
          .trigger
          H
          .ajax/d.abort
          .ajax/P<</anonymous> 
          

          Request time for last unsuccessful AJAX request was 36 milliseconds so I don't think that this is timeout.

          1 Reply Last reply Reply Quote 0
          • roboduetundefined
            roboduet
            last edited by

            Is there a chance that this will be fixed? Seems like I'm the only who experiencing this?

            1 Reply Last reply Reply Quote 0
            • chrishammundefined
              chrishamm administrators
              last edited by

              @roboduet, I'll look into it but I need some more information. When you start using DWC, could you record a Wireshark dump so I can get an idea what the communication between your Duet and your PC looks like? And when DWC has stopped updating, could you try to reconnect and send me the output of M122?

              I figure the whole story is caused by some bad packets at the end of certain transmissions, but I'd like to investigate this once more.

              Duet software engineer

              1 Reply Last reply Reply Quote 0
              • roboduetundefined
                roboduet
                last edited by

                FF dev console, empty request:

                FF dev console, request index page after previous empty request:

                Wireshark:

                Last successful request tcp stream number = 56
                Empty request tcp stream number = 57
                Index page request tcp stream number = 58

                Also I noticed long pause between 56 and 57 streams (time column).

                57 stream seems like complete (correct) AJAX JSON response.

                After 58 stream (after requesting index page) DWC stops any further requests. DWC doesn't show any errors (i.e AJAX or just "disconnected") in DWC G-Code console tab and still think that it connected to Duet.

                I have saved Wireshark dump in pcapng format, I can upload file if this can help.

                1 Reply Last reply Reply Quote 0
                • roboduetundefined
                  roboduet
                  last edited by

                  Sorry, forgot to attach M122 logs after reconnect:

                  [[language]]
                  M122
                  === Diagnostics ===
                  Used output buffers: 2 of 32 (8 max)
                  === Platform ===
                  Memory usage:
                  Program static ram used: 19284
                  Dynamic ram used: 83012
                  Recycled dynamic ram: 104
                  Current stack ram used: 2768
                  Maximum stack ram used: 3868
                  Never used ram: 24804
                  Last reset 01:58:35 ago, cause: power up
                  Error status: 0
                  Bed probe heights: 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
                  Free file entries: 10
                  SD card 0 detected, interface speed: 20.0MBytes/sec
                  SD card longest block write time: 0.0ms
                  MCU temperature: min 31.6, current 33.3, max 36.7
                  Supply voltage: min 12.1, current 12.1, max 12.2, under voltage events: 0, over voltage events: 0
                  Slowest main loop (seconds): 0.004883; fastest: 0.000000
                  === Move ===
                  MaxReps: 0, StepErrors: 0, MaxWait: 0ms, Underruns: 0, 0
                  === Heat ===
                  Bed heater = 0, chamber heater = -1
                  Heater 1 is on, I-accum = 0.0
                  === GCodes ===
                  Move available? no
                  Stack pointer: 0 of 5
                  macro is idle
                  http is ready with "M122"
                  telnet is idle
                  serial is idle
                  aux is idle
                  file is idle
                  === Network ===
                  WiFiServer is running
                  SPI underruns 0, overruns 0
                  === Webserver ===
                  HTTP sessions: 1 of 8
                  
                  
                  1 Reply Last reply Reply Quote 0
                  • chrishammundefined
                    chrishamm administrators
                    last edited by

                    Hmm, just as I suspected. It looks like the WiFi module actually sends a non-empty response, but Firefox never receives and processes it. I'll look into the WiFi Server firmware later. Could you send me the Wireshark pcap file though?

                    Duet software engineer

                    1 Reply Last reply Reply Quote 0
                    • roboduetundefined
                      roboduet
                      last edited by

                      Yes, as I said before. For some unknown for me reasons Duet sends valid response, but Firefox "receives" empty response. This is freeze/hangup bug. But also sometimes DWC shows me AJAX error and properly shows disconnected state if it receives invalid or empty response. I don't yet know why sometimes DWC is just freezes and why sometimes it shows proper AJAX error.

                      I still think about big pause between last valid request and next empty request. Can it be that AJAX request timeout is interpreted as empty response?

                      I will ask your email in PM to send logs.

                      1 Reply Last reply Reply Quote 0
                      • roboduetundefined
                        roboduet
                        last edited by

                        Two hours without disconnects or connection freeze using latest 1.16 release firmware with @chrishamm web-server 1.03-ch firmware. Still looking at error logs, but it seems that this release is much stable.

                        Firmware Name: RepRapFirmware for Duet WiFi
                        Firmware Electronics: Duet WiFi 1.0
                        Firmware Version: 1.16 (2016-11-08)
                        WiFi Server Version: 1.03 (ch fork)
                        Web Interface Version: 1.13

                        1 Reply Last reply Reply Quote 0
                        • roboduetundefined
                          roboduet
                          last edited by

                          Seems like DWC connection freeze issue fixed. Three hours yesterday and one hour today without any connection freezes. Thank you!

                          1 Reply Last reply Reply Quote 0
                          • chrishammundefined
                            chrishamm administrators
                            last edited by

                            That's great, thanks for confirming that my latest improvements are working well!

                            Duet software engineer

                            1 Reply Last reply Reply Quote 0
                            • timpactundefined
                              timpact
                              last edited by

                              Hi

                              I'm new here and building 3d printer in my free time.

                              I just set up a Duet v0.6 with the latest firmware and Web Control:

                              Firmware Name: RepRapFirmware for Duet-0.6-0.8.5
                              Firmware Version: 1.16 (2016-11-08)
                              Web Interface Version: 1.13

                              After connecting to the duet via Web Control I'm getting the same error like appjaws after ~55 secconds while doing nothing:
                              Communication Error
                              An AJAX error has been reported, so the current session has been terminated.
                              Please check if your printer is still on and try to connect again.
                              Error reason: timeout

                              I reestablished the connection several times and got the error message every time after 55 secconds.
                              Thanks for every hint and help. Just tell me if you need further information.

                              Edit: I'm using windows 7 pro and the error appears in Firefox and Chrome

                              1 Reply Last reply Reply Quote 0
                              • chrishammundefined
                                chrishamm administrators
                                last edited by

                                I recommend you try to reset your TCP/IP stack once and restart your computer, see https://support.microsoft.com/en-us/kb/299357

                                Duet software engineer

                                1 Reply Last reply Reply Quote 0
                                • timpactundefined
                                  timpact
                                  last edited by

                                  Well that solved the problem fast and perfect. Thank you!

                                  1 Reply Last reply Reply Quote 0
                                  • whosrdaddyundefined
                                    whosrdaddy
                                    last edited by

                                    @dc42 : spam?

                                    dc42undefined 1 Reply Last reply Reply Quote 0
                                    • dc42undefined
                                      dc42 administrators @whosrdaddy
                                      last edited by

                                      @whosrdaddy said in AJAX timeout error during a print:

                                      @dc42 : spam?

                                      Yes, account deleted.

                                      Duet WiFi hardware designer and firmware engineer
                                      Please do not ask me for Duet support via PM or email, use the forum
                                      http://www.escher3d.com, https://miscsolutions.wordpress.com

                                      1 Reply Last reply Reply Quote 0
                                      • First post
                                        Last post
                                      Unless otherwise noted, all forum content is licensed under CC-BY-SA