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

    Height map does not match home position

    Scheduled Pinned Locked Moved Solved
    General Discussion
    4
    20
    650
    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

      What exactly do you mean by the height map does not match the home position?

      The 0,0 coordinate point and the homing position do not have to be the same place. The switches can be where ever you want.

      Ideally the 0,0 point should be the front left of the machine as this preserves the right hand coordinate system used by CAD and slicer software. all other points on the machine are relative to this point.

      The machine would be homed to the high end of travel at the rear right if that's where the endstops are located.

      Looking at your config file it look like you're homing to the rear as if it were the low end of the axis, so your 0,0 point is rotated 180 degrees. It's find if you want to keep it that way, just orient the heightmap with that 0,0 position in mind.

      Otherwise if you want to keep the 0,0 point at the front left, you'd need to change your M574 config to change X1 and Y1 to X2 and Y2.

      ; Endstops
      M574 X2 S1 P"io0.in"                                                                    ; configure switch-type (e.g. microswitch) endstop for low end on X via pin io0.in
      M574 Y2 S1 P"io1.in" 
      

      Then in your homing file you'd need to flip the direction of travel from a negative move to a positive move.

      Z-Bot CoreXY Build | Thingiverse Profile

      Jeredundefined 1 Reply Last reply Reply Quote 0
      • Jeredundefined
        Jered @Phaedrux
        last edited by

        @Phaedrux
        Let me clarify, my 0,0 position for homing is back left. Height map shows front left. How do I orient the map to match my 0,0 position at the back left? I just want to correct what the height map is showing.

        Is there an easy way to move the 0,0 of the height map?

        dc42undefined droftartsundefined 2 Replies Last reply Reply Quote 0
        • dc42undefined
          dc42 administrators @Jered
          last edited by

          @Jered neither RRF nor DWC knows where you are standing relative to the machine, so it can't automatically rotate the height map to match your viewpoint. However, you can use the mouse to rotate the height map display in DWC, as I did to get this.

          57be6810-58cf-442d-be14-566a094b20d7-image.png

          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

          Jeredundefined 1 Reply Last reply Reply Quote 0
          • Jeredundefined
            Jered @dc42
            last edited by

            @dc42

            Here is my machine at home position:

            PXL_20221230_230151165.jpg

            Here is what my height map looks like when it is done:

            Map 1.jpg

            Here is my height map if I rotate it:

            Map 2.jpg

            Maybe this will help with ideas.

            1 Reply Last reply Reply Quote 0
            • droftartsundefined
              droftarts administrators @Jered
              last edited by

              @Jered said in Height map does not match home position:

              my 0,0 position for homing is back left.

              If that’s the case, your printer is either rotated 90 degrees clockwise from ‘normal’, or is mirrored in the Y axis. 0,0 is usually front left. When you send a positive X move, does the nozzle move to the right, or towards you, when viewed from the same direction as your picture?

              Ian

              Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

              Jeredundefined 1 Reply Last reply Reply Quote 0
              • Jeredundefined
                Jered @droftarts
                last edited by

                @droftarts
                The picture is taken from the front of the machine. So, when I move x pos, it moves to the right from 0,0. When I move Y in the pos direction, it moves toward the camera. I have 0,0 set to the back left as pictured. The movement is correct, the height map should shows the Y at the back and not the front.

                If I need to move my sensors to correct this, just tell me 🙂

                I like my machines to home this way, but if it is not correct, I will just change it.

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

                  @Jered your machine is set up using a left hand coordinate system. Your prints will come out mirrored, unless the slicer you use has an option to mirror prints and you enable it. If you really want X0 Y0 to be at the back left, then +X motion should be towards the front and +Y toward the right.

                  The simplest way to correct this is to move X0 Y0 to front left. You can do this by reversing the direction of Y motion and changing the Y endstop configuration to be a YMax endstop instead of YMin. You do not need to move any endstop switches.

                  Changing between left and right hand coordinate systems on a CoreXY machine requires swapping the X and Y motors, which you can do in the M584 command in config.g.

                  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

                  Jeredundefined 1 Reply Last reply Reply Quote 0
                  • Jeredundefined
                    Jered @dc42
                    last edited by

                    @dc42
                    I will move my home switches.

                    Thanks for your help

                    droftartsundefined 1 Reply Last reply Reply Quote 0
                    • droftartsundefined
                      droftarts administrators @Jered
                      last edited by

                      @Jered you don’t need to move the switches. You can home y to the axis maximum, rather than the minimum.

                      Ian

                      Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                      1 Reply Last reply Reply Quote 0
                      • Phaedruxundefined
                        Phaedrux Moderator
                        last edited by

                        See my post above. I describe what to change.

                        also see this guide for corexy setup and testing.

                        https://docs.duet3d.com/en/User_manual/Machine_configuration/Configuration_coreXY

                        Z-Bot CoreXY Build | Thingiverse Profile

                        Jeredundefined 1 Reply Last reply Reply Quote 0
                        • Jeredundefined
                          Jered @Phaedrux
                          last edited by

                          @Phaedrux
                          Ok, I will have a closer look.

                          droftartsundefined 1 Reply Last reply Reply Quote 0
                          • droftartsundefined
                            droftarts administrators @Jered
                            last edited by

                            @Jered There's also a description of a homing file for maximum end endstop here: https://docs.duet3d.com/User_manual/Machine_configuration/Configuration_cartesian#homing-files
                            See M574 for information on setting an endstop to the high end.

                            Ian

                            Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                            1 Reply Last reply Reply Quote 0
                            • Phaedruxundefined
                              Phaedrux Moderator
                              last edited by

                              One thing that would be different in my post based on what I see from your photo is that you have the switches at left and back, that would be X min, Y max. Which would be this in the config

                              ; Endstops
                              M574 X1 S1 P"io0.in"                                                                   
                              M574 Y2 S1 P"io1.in" 
                              

                              Then in your homing files the X movement would be negative, and the Y movement positive.

                              -X moves should go to the left, +X moves to the right
                              -Y moves to the front, Y moves to the back

                              That way the homing switches stay in the same place, but your 0,0 point becomes the front left.

                              That corexy guide I linked has a section on testing the motor movement to make sure things are going in the correct direction.

                              Z-Bot CoreXY Build | Thingiverse Profile

                              Jeredundefined 1 Reply Last reply Reply Quote 1
                              • Jeredundefined
                                Jered @Phaedrux
                                last edited by

                                @Phaedrux
                                I have another question. Do you think this could also be messing with my G32 command. I have the ratrig with true bed leveling.

                                1 Reply Last reply Reply Quote 0
                                • Phaedruxundefined
                                  Phaedrux Moderator
                                  last edited by

                                  Yes if the coordinate system is incorrect things may not behave how you'd expect.

                                  Z-Bot CoreXY Build | Thingiverse Profile

                                  Jeredundefined 1 Reply Last reply Reply Quote 0
                                  • Jeredundefined
                                    Jered @Phaedrux
                                    last edited by

                                    @Phaedrux

                                    I think I have this fixed now. I just want to make sure that the G32 comand is correct.

                                    When this command is issued, my machine drives to the z leadscrew which is at the front right, then to the middle back, then to the front left leadscrew. Is my bed.g in the correct order?

                                    Seems like it should starting at the closest z leadscrew to 0,0 then moving in order from there.

                                    In other words, should P0 be closest to the 0,0 point?

                                    Attached is my bed.g

                                    bed.g

                                    At least this can be fixed easily if it is an issue.

                                    1 Reply Last reply Reply Quote 0
                                    • Phaedruxundefined
                                      Phaedrux Moderator
                                      last edited by Phaedrux

                                      See here: https://docs.duet3d.com/en/User_manual/Connecting_hardware/Z_probe_auto_levelling

                                      The order it probes them in bed.g is irrelevant but the order of the positions in the M671 command must match the order of the axis in M584.

                                      You must use the M671 command to define the X and Y coordinates of the leadscrews. The M671 command must come after the M584 command and must specify the same number of X and Y coordinates as the number of motors assigned to the Z axis in the M584 command; and these coordinates must be in the same order as the driver numbers of the associated motors in the M584 command. The M671 command must also come after any M667 or M669 command.

                                      Z-Bot CoreXY Build | Thingiverse Profile

                                      Jeredundefined 1 Reply Last reply Reply Quote 0
                                      • Jeredundefined
                                        Jered @Phaedrux
                                        last edited by

                                        @Phaedrux

                                        Thank for your help guys! I think this is all sorted out. Everything seems to match now.

                                        1 Reply Last reply Reply Quote 1
                                        • Phaedruxundefined Phaedrux marked this topic as a question
                                        • Phaedruxundefined Phaedrux has marked this topic as solved
                                        • First post
                                          Last post
                                        Unless otherwise noted, all forum content is licensed under CC-BY-SA