G30 Insufficient Axes Homed For Bed Probing
-
Thank you so very much for your help! i apologize, I'm on vacation, and was away for a couple days... I'm back and fresh! I tried what you said EXACTLY.....
I still get the insufficient axes homes directly after the very first move.. any idea why? It still shows all 3 axes turn blue, and homing is complete.
Here's My amended Homeall.G,
; homeall.g
G91 ; relative positioning
G1 Z5 F6000 S2 ; lift Z relative to current position
M98 Pdeployprobe.g ;deploy mechanical z probe
G1 S1 X0 Y0 F10000 ;move quickly to X or Y endstop and stop there (first pass)
G1 S1 X0 F10000 ;Now do a fast move just on X and detect end stop
G1 S1 Y0 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
G90 ;absolute positioning
G1 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
M98 Pretractprobe.g ;retract mechanical Z probe -
@steve-lynch said in G30 Insufficient Axes Homed For Bed Probing:
M98 Pdeployprobe.g ;deploy mechanical z probe
You should replace that command by M401.
G1 Z5 F6000 ;lift Z relative to current position
Add S2 to that command.
@steve-lynch said in G30 Insufficient Axes Homed For Bed Probing:
M98 Pretractprobe.g ;retract mechanical Z probe
Replace that line by M402.
@steve-lynch said in G30 Insufficient Axes Homed For Bed Probing:
I still get the insufficient axes homes directly after the very first move.. any idea why? It still shows all 3 axes turn blue, and homing is complete.
Please explain what you many by "after the very first move". Do you mean after the very first move in the homeall.g file, or something else?
What are the contents of your deployprobe.g and retractprobe.g files?
-
Hi Thanks! I changed the things you asked me to, and still the same result. When I say the "first move, Yes, I mean the very first homing move...
Here's my probe scripts.
deploy just contains M280 P3 S10 I1
retract contains: M280 P3 S90 I1
-
When I home all, the very first move moves the gantry to the front of the coreXY printer, and it hits the end stop.. this is at zero... then the x moves right, stops, and goes left to home against the end stop.. then it does the 2nd pass, and moves to bed center, where it triggers the BLTouch, clears the "not homed" light in the Web interface, then it looks like it did what it was supposed to do successfully... except for the "insufficient homed" Message which remains on screen.
-
@dc42 does that sufficiently answer your question sir?
-
Have you sent each line of the homing file by itself via the gcode console to see which line is causing the problem?
-
@steve-lynch said in G30 Insufficient Axes Homed For Bed Probing:
When I home all, the very first move moves the gantry to the front of the coreXY printer, and it hits the end stop.. this is at zero... then the x moves right, stops, and goes left to home against the end stop.. then it does the 2nd pass, and moves to bed center, where it triggers the BLTouch, clears the "not homed" light in the Web interface, then it looks like it did what it was supposed to do successfully... except for the "insufficient homed" Message which remains on screen.
Have you actually got the axes all moving in the right directions according to this procedure. https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCoreXYPrinter
Regardless of that, your homeall.g file is still wrong. Read again what I said about using G1 S1 X-nnn, Y-nnn. That's X and Y minus a value that is the same or greater than your axis maxima rather than X0 Y0.
Also, take out your first G90 absolute command just before the Z5 move. That will try to move to the absolute position of 5mm from Z=0, but until Z has been homed, the firmware has no idea where Z0 is. So keep the move as relative then it will move the Z axis by 5mm from wherever it happens to be (which is what you want).
Edit - I was going to suggest that if tell me what you axes maxima and minima are, I'll post a homing file that you can copy and paste. But on second thoughts, you won't learn that way - it's that "catch a man a fish or teach him to fish thing"
-
@deckingman the machine goes right when I go right, left when I go left, away and towards when I command it to be so. manual gcode moves are also correct... it took a month of playing, but I finally got it going the right way. As I've been posting ad-nauseum (probably driving you guys crazy) the left front (alpha Motor corner) is X0 Y0 max is 300 in both directions.
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?
Believe me, I want to learn to fish, but because of time differences and stuff, it's frustrating to wait 24 hours or more for a reply... 2 weeks have flown by, and I'm no better off than when I started. It would be wonderful to be able to give this a whirl.
Thanks for all your help though man! Seriously! I am learning... it's just a lot to process. I'm a CNC and laser Cutter builder... I'm super comfy with my cartesian configurations, but corexy is a new game for me.
-
@stephen6309 I'll try that!
-
Ok, If I enter the Gcode line by line, I get no errors.
If I run the Homeall, I get an error. I made your changes.... I think.... Am I closer? It still doesn't work right, but i'm learning what's what!
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 YG1 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 endstopG1 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 positioningM402 ;retract mechanical Z probe
-
@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?
-
@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.
-
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! -
@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.
-
@deckingman OOps! I left that commented, because I was observing what each G code did... Forgot to free that back up! Good eye!
-
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 Yas 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?
-
@steve-lynch What;s teh error message exactly? And did you put that S2 in the second G1 Z move?
-
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 YG1 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 endstopG1 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 positioningM402 ;retract mechanical Z probe
-
@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 endstopThese 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. -
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!