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

    After boot, M116 does not wait after G10

    Scheduled Pinned Locked Moved
    General Discussion
    5
    13
    521
    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.
    • deckingmanundefined
      deckingman @kuon
      last edited by deckingman

      @kuon I'd have thought that's probably normal. If you think about it, your G10 commands set the active and standby temperatures for two tools - P0 and P1 and those temperatures are different for each tool. So which of those temperatures should the M116 wait for? The answer is - whichever tool is selected / active. But until you send a "Tn" command, neither tool is selected. So the firmware has no idea which temperature that has been set with the two G10 commands, that M116 should wait for and furthermore, neither tool is active so until a tool is selected, nothing is being heated.

      Suggest you put a T(n) command (where n is either 0 or 1 depending on which tool you want to stat heating), somewhere before the M116.

      Ian
      https://somei3deas.wordpress.com/
      https://www.youtube.com/@deckingman

      1 Reply Last reply Reply Quote 0
      • kuonundefined
        kuon
        last edited by

        Actually you are right, this is because my initial issue is that M116 does not wait in my tpost0.g, I tried to reproduce a simple case and ended removing the tool change. But the following does not wait either:

        M107
        M190 S60
        G10 P0 S220 R200
        G10 P1 S240 R200
        T0
        G28
        
        ; tpost0.g
        ; called after tool 0 has been selected
        
        
        M106 R2        ; restore print cooling fan
        M116           ; wait for temperatures
        M83            ; relative extrusion
        
        ; check that we are homed, this is to avoid error when we change tool while not homed
        if move.axes[0].homed && move.axes[1].homed && move.axes[2].homed && move.axes[3].homed
          G1 R2 Z1 X0 F12000    ; go above position at 5mm
          G1 R2          ; dive back
        
        ; workaround for M302 not working with remove extruder
        if heat.heaters[1].current > 190
          G1 E10 F1000    ; extrude 10mm
        
        1 Reply Last reply Reply Quote 0
        • fcwiltundefined
          fcwilt
          last edited by

          Did you verify that the tpost0.g file was actually called?

          Or you can put the M116 in the file that sets T0 active.

          Frederick

          Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

          1 Reply Last reply Reply Quote 0
          • kuonundefined
            kuon
            last edited by

            Actually I just assumed tpost0.g would be called. Is there a reason why it wouldn't? I can do more tests just right now because I am printing.

            If I put M116 just between T0 and G28, it waits, but my actual issue was that I'd like T0 to wait by itself as there is an M116 in tpost0.g

            jay_s_ukundefined fcwiltundefined 2 Replies Last reply Reply Quote 0
            • jay_s_ukundefined
              jay_s_uk @kuon
              last edited by

              @kuon tpostx.g will always get called.
              Pre before the tool is selected, post after the tool selected.
              You can confirm using debugging

              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

              kuonundefined 1 Reply Last reply Reply Quote 0
              • kuonundefined
                kuon @jay_s_uk
                last edited by

                @jay_s_uk said in After boot, M116 does not wait after G10:

                @kuon tpostx.g will always get called.
                Pre before the tool is selected, post after the tool selected.
                You can confirm using debugging

                That's what I assumed. So T0 should wait with M116 in it, right?

                deckingmanundefined 1 Reply Last reply Reply Quote 0
                • jay_s_ukundefined
                  jay_s_uk
                  last edited by

                  it should do, yes.
                  Maybe change your M116 to expicitly name the tool to wait for, i.e. M116 P0

                  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

                  1 Reply Last reply Reply Quote 0
                  • deckingmanundefined
                    deckingman @kuon
                    last edited by

                    @kuon Well tpost happens after a tool has been used. That is to say, once a tool has been finished with and is no longer the active tool. Therefore, I would be surprised if M116 in tpost would wait (because the tool is finished with).

                    Ian
                    https://somei3deas.wordpress.com/
                    https://www.youtube.com/@deckingman

                    jay_s_ukundefined 1 Reply Last reply Reply Quote 0
                    • fcwiltundefined
                      fcwilt @kuon
                      last edited by

                      @kuon said in After boot, M116 does not wait after G10:

                      Actually I just assumed tpost0.g would be called.

                      Never assume - always verify.

                      In this case this may apply - from the docs:

                      If all axes have been homed, run macro tpost#.g where # is the number of the new tool.

                      Since you are following the T0 with G28 that suggests they axes may NOT be homed.

                      Frederick

                      Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                      1 Reply Last reply Reply Quote 0
                      • jay_s_ukundefined
                        jay_s_uk @deckingman
                        last edited by jay_s_uk

                        @deckingman don't you mean tfree?
                        I think the definitions of the tool change files here are clear
                        https://duet3d.dozuki.com/Wiki/Macros#Section_Tool_change

                        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

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