• Tags
  • Documentation
  • Order
  • Register
  • Login
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.
  • undefined
    deckingman @Steve Lynch
    last edited by deckingman 17 Jul 2019, 16:23

    @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
    • undefined
      deckingman @Steve Lynch
      last edited by 17 Jul 2019, 16:30

      @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

      undefined 1 Reply Last reply 17 Jul 2019, 16:31 Reply Quote 0
      • undefined
        Steve Lynch
        last edited by 17 Jul 2019, 16:30

        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!

        undefined 1 Reply Last reply 17 Jul 2019, 16:31 Reply Quote 0
        • undefined
          deckingman @Steve Lynch
          last edited by 17 Jul 2019, 16:31

          @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
          • undefined
            Steve Lynch @deckingman
            last edited by 17 Jul 2019, 16:31

            @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
            • undefined
              Steve Lynch
              last edited by 17 Jul 2019, 16:36

              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?

              undefined 1 Reply Last reply 17 Jul 2019, 16:38 Reply Quote 0
              • undefined
                deckingman @Steve Lynch
                last edited by 17 Jul 2019, 16:38

                @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
                • undefined
                  Steve Lynch
                  last edited by 17 Jul 2019, 16:56

                  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

                  undefined 1 Reply Last reply 17 Jul 2019, 17:32 Reply Quote 0
                  • undefined
                    Phaedrux Moderator @Steve Lynch
                    last edited by Phaedrux 17 Jul 2019, 17:32

                    @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
                    • undefined
                      Steve Lynch
                      last edited by 17 Jul 2019, 18:37

                      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
                      • undefined
                        Steve Lynch
                        last edited by 17 Jul 2019, 18:43

                        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!

                        undefined 1 Reply Last reply 17 Jul 2019, 18:44 Reply Quote 0
                        • undefined
                          Phaedrux Moderator @Steve Lynch
                          last edited by 17 Jul 2019, 18:44

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

                          Z-Bot CoreXY Build | Thingiverse Profile

                          undefined 1 Reply Last reply 17 Jul 2019, 18:47 Reply Quote 0
                          • undefined
                            deckingman @Phaedrux
                            last edited by deckingman 17 Jul 2019, 18:47

                            @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
                            • undefined
                              Steve Lynch
                              last edited by 17 Jul 2019, 18:47

                              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
                              • undefined
                                Steve Lynch
                                last edited by 17 Jul 2019, 18:49

                                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
                                • undefined
                                  Steve Lynch
                                  last edited by 17 Jul 2019, 18:52

                                  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
                                  • undefined
                                    Phaedrux Moderator
                                    last edited by 17 Jul 2019, 18:54

                                    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

                                    undefined 1 Reply Last reply 17 Jul 2019, 19:04 Reply Quote 0
                                    • undefined
                                      deckingman
                                      last edited by 17 Jul 2019, 19:03

                                      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
                                      • undefined
                                        Steve Lynch @Phaedrux
                                        last edited by 17 Jul 2019, 19:04

                                        @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
                                        • undefined
                                          Phaedrux Moderator
                                          last edited by 17 Jul 2019, 19:10

                                          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
                                          24 out of 79
                                          • First post
                                            24/79
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA