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

    Tool change offset execution order

    Scheduled Pinned Locked Moved Solved
    General Discussion
    4
    19
    566
    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.
    • Phaedruxundefined
      Phaedrux Moderator
      last edited by

      Your photos didn't upload correctly. Would help to see what you're talking about.

      Z-Bot CoreXY Build | Thingiverse Profile

      Pietundefined 1 Reply Last reply Reply Quote 0
      • Pietundefined
        Piet @Phaedrux
        last edited by

        @Phaedrux Z and U axis.jpg
        It works now.

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

          @Piet, can't you just lower the bed by a sufficient amount in the tpre1.g file?

          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

          Pietundefined 1 Reply Last reply Reply Quote 0
          • Pietundefined
            Piet @dc42
            last edited by Piet

            @dc42 At the moment because I set the Z offset it will lower the bed automatically with a toolchange because of the G10. However it only applies the offset after the tool change scripts meaning if i send the U axis down it will run into the bed.

            If i lower the bed in the tpre1.g file how can i get it to the right height after the offset is applied.

            Say i use the following in my tpre1.g:

            G91
            G1 Z20 ;move bed 20mm down
            G1 U-15 ;move t1 15mm down
            G90

            Using this it will resume 20mm down after a toolchange correct?

            If I we're to add a G1 Z-20 to move it up again it would again run into the t1 because the offset is applied after the toolchange script if I'm correct.

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

              The Z height will be restored automatically at the end of the tool change.

              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

              Pietundefined 2 Replies Last reply Reply Quote 1
              • Pietundefined
                Piet @dc42
                last edited by

                @dc42 I wasn't aware of that. Thanks for the input, helped a ton!

                1 Reply Last reply Reply Quote 0
                • Pietundefined
                  Piet @dc42
                  last edited by Piet

                  @dc42 I was wondering, is there a way to save the offset or read it out of a variable somewhere? So instead of lowering the bed say 20mm i could lower it to the right offset immediately. Might be a more elegant solution.

                  A bit relevant to this; i've seen people working with the meta gcode commands but couldn't really find any information on what variables there are and what they do. Is there somewhere i can find that information or do i need to go through the reprapfirmware code?

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

                    use the R value of G0/G1
                    https://duet3d.dozuki.com/Wiki/Gcode#Section_G0_G1_Move

                    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

                    Pietundefined 1 Reply Last reply Reply Quote 0
                    • Pietundefined
                      Piet @jay_s_uk
                      last edited by

                      @jay_s_uk I'm not sure which question you are answering. If it is the last question i asked, could you eleborate?

                      If i save my position using G60 S0 and call it later using the G1 R0 it won't apply my offset correct? It needs to change the tool offset first before it has any effect. However I'm not sure if that is what you mean.

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

                        @Piet you use G10 to set tool offsets
                        When you call a tool, the G10 offset gets applied to the recalled value.

                        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

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

                          using https://duet3d.dozuki.com/Wiki/Gcode#Section_G10_Set_workplace_coordinate_offset_or_tool_offset
                          you set the offsets on a per tool basis.
                          e.g. tool one is G10 T0 X0 Y0 Z0
                          tool two might be G10 T1 X5 Y0 Z5
                          these get taken into account during a tool change.

                          I have mine set as a macro that gets called from config so they are applied but also easy for me to adapt

                          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

                          Pietundefined 1 Reply Last reply Reply Quote 0
                          • Pietundefined
                            Piet @jay_s_uk
                            last edited by

                            @jay_s_uk Right! I got that working. I'm already using that in the script i posted. I thought you were replying to my question to DC42 how i could lower it to the right offset immediately. Thanks anyways.

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

                              @Piet well you can lower it to that offset immediately by using G1 R2 Z0 you don't need to wait until the end of the script for it to be done automatically.

                              edit: I did have G1 R0 Z0 but that is the wrong slot for a 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

                              Pietundefined 1 Reply Last reply Reply Quote 0
                              • Pietundefined
                                Piet @jay_s_uk
                                last edited by

                                @jay_s_uk So if i understand correctly you say i can use the tool offset with the R parameter in the G1 command.

                                Does it get saved automatically to that variable? Is there anyway i can check what the variable currently is? I'm assuming i need to use relative positioning for this?

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

                                  the location of the nozzle gets automatically saved at the beginning of the tool change to R2. There is nothing stopping you recalling those locations earlier in the tool change than waiting till the end.
                                  On my tool change, I recover the locations from R2 in specific order as I've found that works better for me that waiting for the tool change to for it for me.
                                  You can check the variables using the object model under state.restorePoints

                                  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

                                  Pietundefined 1 Reply Last reply Reply Quote 1
                                  • Pietundefined
                                    Piet @jay_s_uk
                                    last edited by

                                    @jay_s_uk Thank you, that was very helpful. Im assuming you meant G1 R2 Z0, that worked for me.

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

                                      Yep.
                                      I got the position wrong where it stores a tool change position.
                                      I will edit the above post

                                      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