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

    Board self-resets during the the print

    Scheduled Pinned Locked Moved Solved
    General Discussion
    6
    32
    1.2k
    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.
    • A Former User?
      A Former User @jay_s_uk
      last edited by

      @jay_s_uk said in Board self-resets during the the print:

      @thedragonlord could be linked to the amount of variables you are using.
      @dc42 will have to comment

      ok, I'll wait @dc42 but I'm afraid it's something gcode related because printing the same gcode I have the same issue at the same height...the stragest thing is that the gcode is a simple box with only a 2 perimeters thick wall...

      jay_s_ukundefined 1 Reply Last reply Reply Quote 0
      • jay_s_ukundefined
        jay_s_uk @A Former User
        last edited by

        @thedragonlord you may want to upload the gcode just in case

        Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

        A Former User? 2 Replies Last reply Reply Quote 0
        • A Former User?
          A Former User @jay_s_uk
          last edited by

          @jay_s_uk said in Board self-resets during the the print:

          @thedragonlord you may want to upload the gcode just in case

          I've modified it to take off all the "extra" extrusions, the thin wall check etc to see if that were the issued and now it's printing...in few minutes it will reach the "crtical" heigth, if it will resets again I'll post the gcode...

          gloomyandyundefined 1 Reply Last reply Reply Quote 0
          • A Former User?
            A Former User @jay_s_uk
            last edited by

            This post is deleted!
            1 Reply Last reply Reply Quote 1
            • gloomyandyundefined
              gloomyandy @A Former User
              last edited by

              @thedragonlord Do you have a daemon.g file? If so you should probably upload it for DC42 to take a look at.

              A Former User? 1 Reply Last reply Reply Quote 0
              • A Former User?
                A Former User @gloomyandy
                last edited by T3P3Tony

                @gloomyandy said in Board self-resets during the the print:

                @thedragonlord Do you have a daemon.g file? If so you should probably upload it for DC42 to take a look at.

                here it is:

                daemon.g

                ; Check for safe temperature reaching
                if {global.isPrinting == true && state.status == "idle" && heat.heaters[1].current < global.toolsSafeTemperature && heat.heaters[2].current < global.toolsSafeTemperature}
                   M118 P0 S"Safe temperature reached, turn off the printer" L2
                   set global.isPrinting = false
                
                A Former User? 1 Reply Last reply Reply Quote 0
                • A Former User?
                  A Former User @A Former User
                  last edited by

                  @thedragonlord I've rebuild the gcode taking off the unnecessary retractions, the thin wall check and taking off the snapshot at layer change and the print has completed normally....so the "guilty" could be the taking of the snapshot or the Ideamaker "fine-tuning" of the GCODE....

                  dc42undefined 1 Reply Last reply Reply Quote 0
                  • dc42undefined
                    dc42 administrators @A Former User
                    last edited by dc42

                    @thedragonlord from your M122 report:

                    === Platform ===
                    Last reset 09:00:41 ago, cause: software
                    Last software reset at 2021-11-21 21:04, reason: OutOfMemory, GCodes spinning, available RAM 648, slot 0
                    ...
                    Heap OK, handles allocated/used 99/16, heap memory allocated/used/recyclable 2048/342/24, gc cycles 15
                    

                    The heap usage appears OK but it has already done 15 garbage collection cycles, which is rather a lot. So I think you must be creating variables quite a lot. It may be that there is an error in the garbage collection code. What variables to you create or reassign during a print? Is there a macro that gets called regularly during the print, that creates local variables or changes the value of global ones?

                    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

                    T3P3Tonyundefined A Former User? 2 Replies Last reply Reply Quote 0
                    • T3P3Tonyundefined
                      T3P3Tony administrators @dc42
                      last edited by

                      @dc42 is it significant that the first error reported on the paneldue was:

                      0d7770dc-2978-442a-bff6-03b673125eb5-image.png

                      Warning: failed to parse response heat:heaters^: in state 12

                      www.duet3d.com

                      A Former User? 1 Reply Last reply Reply Quote 0
                      • A Former User?
                        A Former User @dc42
                        last edited by

                        @dc42 said in Board self-resets during the the print:

                        @thedragonlord from your M122 report:

                        === Platform ===
                        Last reset 09:00:41 ago, cause: software
                        Last software reset at 2021-11-21 21:04, reason: OutOfMemory, GCodes spinning, available RAM 648, slot 0
                        ...
                        Heap OK, handles allocated/used 99/16, heap memory allocated/used/recyclable 2048/342/24, gc cycles 15
                        

                        The heap usage appears OK but it has already done 15 garbage collection cycles, which is rather a lot. So I think you must be creating variables quite a lot. It may be that there is an error in the garbage collection code. What variables to you create or reassign during a print? Is there a macro that gets called regularly during the print, that creates local variables or changes the value of global ones?

                        I thought it was somethng related to the garbage collector. During a single color print (like this) I don't read/reassign global variables, during a dual color I read (but not reassign) all the GLOBAL variables setted in the config.g. As I told before, taking off all the Ideamaker "fine tuning" for the gcode and taking off the shoot of the picture for the timelapse in the layer change it all works.
                        In my opinion the issue should not be related to the Ideamaker "fine tuning" but should be related to the picture shooting. In my layer change gcode I execute a macro wich executes the commands:

                        ; ******************* LAYER CHANGE, TAKE SNAPSHOT **************
                        M400 ; wait for all movement to complete
                        M118 P4 S"LAYER CHANGE" ; take a picture
                        

                        I use a plugin installed on a Raspberry PI, I don't remember its name....

                        Generally speaking if I have only a script wich needs a variable is it better to declare it as local or global in the config.g? I've declared all the variables as global because I didn't know if a garbage collector runs during the print so I didn't know if the memory space were set free or not after the script closure...

                        1 Reply Last reply Reply Quote 0
                        • A Former User?
                          A Former User @T3P3Tony
                          last edited by

                          @t3p3tony said in Board self-resets during the the print:

                          @dc42 is it significant that the first error reported on the paneldue was:

                          0d7770dc-2978-442a-bff6-03b673125eb5-image.png

                          Warning: failed to parse response heat:heaters^: in state 12

                          Originally I was asking this too...I don't think this warning is normal...what could be the cause for this warning to show in the PanelDue console?

                          dc42undefined 1 Reply Last reply Reply Quote 0
                          • dc42undefined
                            dc42 administrators @A Former User
                            last edited by dc42

                            @thedragonlord key "heat:heaters^" looks wrong to me, I think it should be "heat.heaters^". Do you always get this after power up? Do you get it if you press the PanelDue Reset button?

                            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

                            A Former User? 1 Reply Last reply Reply Quote 0
                            • A Former User?
                              A Former User @dc42
                              last edited by

                              @dc42 said in Board self-resets during the the print:

                              @thedragonlord key "heat:heaters^" looks wrong to me, I think it should be "heat.heaters^". Do you always get this after power up? Do you get it if you press the PanelDue Reset button?

                              always

                              mfs12undefined dc42undefined 2 Replies Last reply Reply Quote 0
                              • mfs12undefined
                                mfs12 @A Former User
                                last edited by

                                @thedragonlord said in Board self-resets during the the print:

                                @thedragonlord key "heat:heaters^" looks wrong to me, I think it should be "heat.heaters^". Do you always get this after power up? Do you get it if you press the PanelDue Reset button?

                                there's nothing to worry about. it's just a warning. As there are no successive warning, one transmission failed and then things recovered nicely.

                                Visit me on github at https://github.com/mfs12/

                                T3P3Tonyundefined 1 Reply Last reply Reply Quote 0
                                • T3P3Tonyundefined
                                  T3P3Tony administrators @mfs12
                                  last edited by

                                  @mfs12 is that error coming from the PanelDue requesting a key using the wrong format?

                                  Either way it looks like that is a red herring for the board resets?

                                  www.duet3d.com

                                  1 Reply Last reply Reply Quote 0
                                  • mfs12undefined
                                    mfs12
                                    last edited by

                                    @T3P3Tony, the key reported is from an internal parsing map, which maps json names to internal data structures. So this data is not send. The warning is reported when an incomplete answer is received or an answer gets corrupted on the way from RRF to PD.

                                    So if transmission would be an real issue it would likely occur more often.

                                    Visit me on github at https://github.com/mfs12/

                                    1 Reply Last reply Reply Quote 0
                                    • dc42undefined
                                      dc42 administrators @A Former User
                                      last edited by dc42

                                      @thedragonlord you said that the M118 command was processed by a plugin on a RPi. Are you using the regular Duet 2 firmware, or are you using the SBC version with the RPi connected to the Duet via SPI?

                                      Can you run a print (without filament if you like) with the Ideamaker fine turning turned off, to confirm that it is the layer change macro that provokes the out-of-memory error?

                                      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

                                      A Former User? 1 Reply Last reply Reply Quote 0
                                      • A Former User?
                                        A Former User @dc42
                                        last edited by

                                        @dc42 said in Board self-resets during the the print:

                                        @thedragonlord you said that the M118 command was processed by a plugin on a RPi. Are you using the regular Duet 2 firmware, or are you using the SBC version with the RPi connected to the Duet via SPI?

                                        Can you run a print (without filament if you like) with the Ideamaker fine turning turned off, to confirm that it is the layer change macro that provokes the out-of-memory error?

                                        I confirm...I've disabled the macro the same day I've inserted this post and I've never experienced the issue from then

                                        dc42undefined 1 Reply Last reply Reply Quote 0
                                        • dc42undefined
                                          dc42 administrators @A Former User
                                          last edited by dc42

                                          @thedragonlord thanks.

                                          1. Is the whole of the macro file exactly the 3 lines you posted above?
                                          2. What lines exactly did you have as the layer change script?
                                          3. If you leave the layer change script in place but comment out the M118 line in the macro, do you still get the out-of-memory error?

                                          The out-of-memory error occurred while RRF was evaluating a string expression, so I don't see how that M118 command that contains only a string constant could have provoked the error.

                                          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

                                          A Former User? 1 Reply Last reply Reply Quote 0
                                          • A Former User?
                                            A Former User @dc42
                                            last edited by

                                            @dc42 said in Board self-resets during the the print:

                                            @thedragonlord thanks.

                                            1. Is the whole of the macro file exactly the 3 lines you posted above?
                                            2. What lines exactly did you have as the layer change script?
                                            3. If you leave the layer change script in place but comment out the M118 line in the macro, do you still get the out-of-memory error?

                                            The out-of-memory error occurred while RRF was evaluating a string expression, so I don't see how that M118 command that contains only a string constant could have provoked the error.

                                            The 3 lines above are all the content for the macro file and I have disabled all of them. Honestly I haven't tried what you mentioned in the point 3 because the error happened after several hours of print and I don't want to throw away filament and hours for experiments....I've seen that completely disabling the statements the error disappears...I apologize that I can't be more helpful.....

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