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

    After boot, M116 does not wait after G10

    Scheduled Pinned Locked Moved
    General Discussion
    5
    13
    519
    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.
    • kuonundefined
      kuon
      last edited by

      RepRapFirmware for Duet 3 MB6HC version 3.2-RC2 running on Duet 3 MB6HC v1.01 or later (SBC mode)

      Heater are on toolboards Duet TOOL1LC firmware version 3.2-RC2 (2020-12-24)

      deckingmanundefined 1 Reply Last reply Reply Quote 0
      • 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