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

    G30 Insufficient Axes Homed For Bed Probing

    Scheduled Pinned Locked Moved
    General Discussion
    5
    79
    4.0k
    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 @Steve Lynch
      last edited by deckingman

      @steve-lynch said in G30 Insufficient Axes Homed For Bed Probing:

      I do not understand the whole negative value thing you're referring to... so even if my end stop is zero for example, I want to tell it to home to -300?

      Yes. The reason is that the absolute position of 0,0 is where you want the nozzle to be when X and Y are homed. But, when you turn the printer on, the nozzle could be anywhere on the bed but the printer doesn't "know" that. You might have been working in the printer with the power off and manually moved both axes to the maximum position. But the firmware has no idea that you've done that so it has no idea where the nozzle is. Which is the whole purpose of homing - to establish a datum position.

      To help you understand, all moves are in fact relative. Absolute moves are moves to a certain position on the bed but this position is relative to the homed position - usually X0, Y0. For example the absolute position of X=100 in your case, means the nozzle is 100mm to the right if the edge of the bed - i.e. 100mm relative to X=0. On the other hand, what we call relative moves are relative to where the nozzle is now. In relative terms G1 X100 means move 100mm to the right from wherever the nozzle happens to be, but in absolute terms G1 X100 means move to a position which is 100mm from X =0.

      So until an axis has been homed (i.e. until a datum position is known) all moves have to be relative to where the nozzle is now. When we start the homing process, the nozzle could be anywhere up to the maximum travel distance in either X or Y. In order to find and trigger the end stop, we need to move in a negative direction towards where the end stop is. And because the nozzle could be at (say) X max when we turn in the printer, and we need to enure that it will travel far enough to reach the end stop, then that move must be at least equal to the X max position (it will stop before then if it triggers the end stop - providing you use S1). Doing G1 X0 Y0 won't work because in absolute terms, the firmware has no idea where X0 Y0 is because we haven't yet established that. In relative terms G1 X0 Y0 means move the head by zero mm from where it is now so that won't work either.

      Does that help clarify things?

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

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

        @steve-lynch Sorry, I was typing my other lengthy post so didn't see your latest.

        Yes you are getting closer.

        You can uncomment this line - it saves a bit of time if that first move is a diagonal move which stop when one or other end stops triggers.
        ;G1 S1 X-300 Y-300 F10000 ;move quickly to X or Y endstop and stop there (first pass)

        Your second "G1 Z5 F6000 ;lift Z relative to current position" needs an S2 because at that point in time, the Z axis still hasn't been homed.

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

        Steve Lynchundefined 1 Reply Last reply Reply Quote 0
        • Steve Lynchundefined
          Steve Lynch
          last edited by

          yes actually, that's kind of what I surmised... That way no matter where it is on the bed, it has a theoretical travel distance equal to the total dimensions of the build volume.. That actually makes perfect sense!
          Cheers!

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

            @steve-lynch said in G30 Insufficient Axes Homed For Bed Probing:

            yes actually, that's kind of what I surmised... That way no matter where it is on the bed, it has a theoretical travel distance equal to the total dimensions of the build volume.. That actually makes perfect sense!
            Cheers!

            We seem to be typing at the same time - see my latest.

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

            1 Reply Last reply Reply Quote 0
            • Steve Lynchundefined
              Steve Lynch @deckingman
              last edited by

              @deckingman OOps! I left that commented, because I was observing what each G code did... Forgot to free that back up! Good eye!

              1 Reply Last reply Reply Quote 0
              • Steve Lynchundefined
                Steve Lynch
                last edited by

                Dang it! Can ya' throw me a bone? What is it that is causing the error... It seems to be in relation to the first set of moves... this block of moves

                ;G1 S1 X-300 Y-300 F10000 ;move quickly to X or Y endstop and stop there (first pass)
                G1 S1 X-300 F10000 ;Now do a fast move just on X and detect end stop
                G1 S1 Y-300 F10000 ;Likewise Y

                as soon as the gantry starts moving, it errors... But I do not see any G28 reference in there, or G30 at this stage of the Gcode.... is it right in front of me?

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

                  @steve-lynch What;s teh error message exactly? And did you put that S2 in the second G1 Z move?

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

                  1 Reply Last reply Reply Quote 0
                  • Steve Lynchundefined
                    Steve Lynch
                    last edited by

                    G28! (in a little exclaimation Triangle) then below it it says G30 insufficient homing for bed probing

                    uncommented fthat line, and added S2 to the second Z5...

                    G91 ; relative positioning
                    G1 Z5 F6000 S2 ; lift Z relative to current position
                    M401 ;deploy mechanical z probe
                    G1 S1 X-300 Y-300 F10000 ;move quickly to X or Y endstop and stop there (first pass)
                    G1 S1 X-300 F10000 ;Now do a fast move just on X and detect end stop
                    G1 S1 Y-300 F10000 ;Likewise Y

                    G1 X5 Y5 F6000 ;go back a few mm

                    G1 S1 X50 F360 ;move slowly to X axis endstop once more (second pass)
                    G1 S1 Y50 ;then move slowly to Y axis endstop

                    G1 S2 Z5 F6000 ;lift Z relative to current position
                    G90 ;absolute positioning
                    G1 X190 Y150 F6000 ;go to first probe point
                    G30 ;home Z by probing the bed

                    ; Uncomment the following lines to lift Z after probing
                    G91 ;relative positioning
                    G1 Z5 F100 ;lift Z relative to current position
                    G90 ;absolute positioning

                    M402 ;retract mechanical Z probe

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

                      @steve-lynch said in G30 Insufficient Axes Homed For Bed Probing:

                      G1 S1 X50 F360 ;move slowly to X axis endstop once more (second pass)
                      G1 S1 Y50 ;then move slowly to Y axis endstop

                      These need to be negative moves again to go back towards the endstop.

                      And if you're using the BLTouch, just remove these entirely. M401 ;deploy mechanical z probe and M402 ;retract mechanical Z probe. They are not needed. The probe pin will deploy automatically with G30. Deploying it before your other moves risks it either hitting the bed and causing an error, or getting caught on something and breaking.

                      Z-Bot CoreXY Build | Thingiverse Profile

                      1 Reply Last reply Reply Quote 0
                      • Steve Lynchundefined
                        Steve Lynch
                        last edited by

                        Yeah, That's what I thought.. DC42 Told me to put them back in... I didn't specify what Build I was on... I read that that is handled by Type 9 probe now. Cool!
                        Thanks!

                        1 Reply Last reply Reply Quote 0
                        • Steve Lynchundefined
                          Steve Lynch
                          last edited by

                          UGH! Still! G30 Insufficient Axes Homed for Bed probing!

                          we trim more and more off each go-round, but still we do not kill the error!

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

                            @steve-lynch can you post your homeall one more time?

                            Z-Bot CoreXY Build | Thingiverse Profile

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

                              @phaedrux said in G30 Insufficient Axes Homed For Bed Probing:

                              @steve-lynch can you post your homeall one more time?

                              @Steve-Lynch That - and also your deploy probe and retract probe macros - there could be a move in there that needs an S2

                              EDIT. Inore that - you aren't now using them

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

                              1 Reply Last reply Reply Quote 0
                              • Steve Lynchundefined
                                Steve Lynch
                                last edited by

                                G91 ; relative positioning
                                G1 Z5 F6000 S2 ; lift Z relative to current position
                                G1 S1 X-300 Y-300 F10000 ;move quickly to X or Y endstop and stop there (first pass)
                                G1 S1 X-300 F10000 ;Now do a fast move just on X and detect end stop
                                G1 S1 Y-300 F10000 ;Likewise Y

                                G1 X5 Y5 F6000 ;go back a few mm

                                G1 S1 X-300 F360 ;move slowly to X axis endstop once more (second pass)
                                G1 S1 Y-300 ;then move slowly to Y axis endstop

                                G1 S2 Z5 F6000 ;lift Z relative to current position
                                G90 ;absolute positioning
                                G1 X190 Y150 F6000 ;go to first probe point
                                G30 ;home Z by probing the bed

                                ; Uncomment the following lines to lift Z after probing
                                G91 ;relative positioning
                                G1 Z5 F100 ;lift Z relative to current position
                                G90 ;absolute positioning

                                1 Reply Last reply Reply Quote 0
                                • Steve Lynchundefined
                                  Steve Lynch
                                  last edited by

                                  I posted the deploy and retract above.. they're really short...

                                  deploy just contains M280 P3 S10 I1

                                  retract contains: M280 P3 S90 I1

                                  1 Reply Last reply Reply Quote 0
                                  • Steve Lynchundefined
                                    Steve Lynch
                                    last edited by

                                    Honestly, the more we cull from the Homeall.g, the more I see just how much unnecessary, redundant, and counter intuitive stuff I had going on there... It's like the file was fighting against itself.. lol

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

                                      Can you confirm that when you hit home all the X and Y axis start moving towards the endstops and actually hit them?

                                      You can remove the second Z lift as well. It's already lifted once at the start of the file, so no need to raise it again. This one before the G90. Though it shouldn't be causing the problem.

                                      G1 S2 Z5 F6000 ;lift Z relative to current position
                                      G90 ;absolute positioning

                                      Z-Bot CoreXY Build | Thingiverse Profile

                                      Steve Lynchundefined 1 Reply Last reply Reply Quote 0
                                      • deckingmanundefined
                                        deckingman
                                        last edited by

                                        Try again stepping through the file one line at a time by copying and pasting each line exactly as you you have it in the homeall file, into the console. But before you do that, cycle the power so that you start with all axes un - homed. If you look at the "Machine Control" tab, you start with all the axes highlighted in yellow. So switch to the console, enter the first commend, then switch back to the Machine Control tab. Then repeat for the next command in your homeall file. Every time an axis homes successfully, (i.e. an endstop triggers when the move has an S1 command) each one will change from yellow to blue. At the end of the sequence, they should all be blue. If not, where did it go tits up?

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

                                        1 Reply Last reply Reply Quote 0
                                        • Steve Lynchundefined
                                          Steve Lynch @Phaedrux
                                          last edited by

                                          @phaedrux yes, they physically hit the end stops, at which time they clear the "not homed" status.

                                          X, Y, and Z

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

                                            Yes when X and Y hit the endstops they should be marked as homed, that is correct. Are you saying they also mark the Z axis as homed?

                                            Can you post your config.g file so we can see what your endstops are configured as?

                                            Z-Bot CoreXY Build | Thingiverse Profile

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