Mesh Bed Compensation with inductive probe
-
Hi,
Notice in your homeall.g and homez.g files there is a G92 Z0.
That is telling the firmware that the current actual Z position is Z=0. But that is only true if your Z endstop switch triggers at exactly Z=0.
Have you adjusted your Z endstop switch so that is true?
On my printer the Z endstop switch actually triggers a bit above zero. For purposes of this discussion lets say it actually triggers at Z=1.
So instead of G92 Z0 I would have G92 Z1 - that puts the firmware Z position in sync with the actual Z position.
Aside from that you need to use your Z probe to set the Z=0 datum at the following times:
- before creating the height map
- before loading the height map
To set the Z=0 datum you use a single G30 command.
But before doing that you need to use a G1 command to position the Z probe at a suitable XY position - which is usually the center of the bed.
Whenever you set the Z=0 datum you ALWAYS use the same XY position.
I create a macro to do this so I am assured of using the same XY position every time.
The X and Y min/max values of my bed are -150 and 150, so the center of the bed is at X=0 Y=0.
To move the probe that position I have to take into account the XY offsets of my Z probe which are X0 and Y-25.
So my set Z=0 datum macro looks like:
G90
G91 X0 Y25
G30Hope that helps
Frederick
-
Sounds like you did stuff right, you don't need G30, G30 simply tells the system to perform one probe. The previous poster is moving to the centre of his bed and probing he just has a macro to get there. I don't understand the G92 Z1 bit - G92 Z0 tells the system that wherever the nozzle is now in space that is Z=0. It is from that point that everything gets referenced for Z - no idea what G92 Z1 would do beyond telling the printer that the current nozzle position is exactly 1mm above the bed - pretty dangerous command if it is actually closer.
The nozzle shouldn't be at zero ever unless you deliberately put it there. The first height you see in status when laying down the first layer should be whatever your first layer height is - so what is it showing ?
You absolutely that the printer is correctly configured in the slicer - no Z offsets etc, absolutely sure that layer 1 isn't actually at 2.15 or something - the print is on the slicer bed when you slice it not elevated? - can you run preview in your slicer to see at what layer stuff appears.
Look for the first G1 Z in your print gcode - what does it say ? for a first layer of 0.15 the first G1 Z should be G1 Z0.150 or similar depending on your slicer.
Sorry if this all sounds a little basic but going for the complex first isn't always the best approach - if the printer can mesh level successfully and you seem to have a good trigger height I don't think it is the printer.
edit : Do not put G92 Z0 in ANY of your homing files - I think this is your problem.
You do not set Z using G92 when probing you use G30. G30 sets Z to the trigger height when it probes. You have no G30 ....
I think your homeall.g is messed up - there's no Z in there, your homez.g is also messed up -
This is my homez.g
; homez.g ; called to home the Z axis G91 ; relative mode G1 H2 Z4 F200 ; raise head 4mm to ensure it is above the Z probe trigger height G90 ; back to absolute mode G1 X152 Y152 F3000 ; put head over the centre of the bed, or wherever you want to probe G30 ; lower head, stop when probe triggered and set Z to trigger height
my Homeall.g
; homeall.g ; called to home all axes ; G91 ; relative positioning G1 H1 X-320 F1500 ; coarse home X G1 X4 F360 ; move away from the X endstop G1 H1 X-10 F250 ; fine home X G1 H1 Y-320 F1500 ; coarse home Y G1 Y4 F360 ; move away from the Yendstop G1 H1 Y-10 F250 ; fine home Y G1 H2 Z4 F200 ; raise head 4mm to ensure it is above the Z probe trigger height G90 ; absolute positioning G1 X167 Y152 F2500 ; put head over the centre of the bed, or wherever you want to probe G30 ; lower head, stop when probe triggered and set Z to trigger height
-
Thank you guy's. I have been busy the last few days and have not had the time to look at the printer. I will take this and see what I can do. Thank you for the examples that helps me considerably on this.
I will report back soon.
Thank you
-
Guys It's working great now. Thank you so much.
Removed the G92 Z0. Then adjusted the trigger point to get rid of the baby steps and it did great.
I have one other question I have dual Z motors and right now I set level with the dual end stops I have on each side. This works fine. My question is How would I take advantage of Auto bed leveling or do I really need it at this point.
Thank you again
Darrin
-
@Work-Horse-XL said in Mesh Bed Compensation with inductive probe:
I have one other question I have dual Z motors and right now I set level with the dual end stops I have on each side. This works fine. My question is How would I take advantage of Auto bed leveling or do I really need it at this point.
How are the two Z steppers connected to the board?
The configuration only shows drive mapping of Z0.3.
Frederick
-
@Work-Horse-XL said in Mesh Bed Compensation with inductive probe:
; Custom settings
M584 X0:1 Y2 Z3:4 E5 ; assign stepper motor channels
M376 H10Your M584 command must come earlier in config.g. Currently you have two of them. Replace the first one with your second.
https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_M584_Set_drive_mapping
-
Other than a mesh bed level every now an then I don't bother, you are limited to what you can do automatically anyhow depending on your bed mounts. Unless you use a kinematic mount the mount points are likely to be pretty rigid so offsetting the steppers could lead to binding. Once it is as level as you can get it mechanically it shouldn't change unless you abuse the machine / move it around etc - all depends how rigid things are, the more rigid you make it the more accurate things need to be.
The mesh bed level works slightly differently and attempts to compensate for bed inconsistencies - got to confess though I'm not entirely sure how Dave implements it.
-
@Phaedrux Thank you Phaedrux is the M376 H10 in the correct location?
-
Yeah that one doesn't matter. I just included it for positional context in our file.
-
You likely can use auto bed leveling.
Since you have dual Z endstops can we assume the you home the bed without any issues?
If the Z homing is working well are the endstops adjusted to get the best bed leveling when homing?
Frederick
-
@fcwilt Z stepper are on plug 3 and 4 driver output on the Duet 3 board.
-
@fcwilt Yes the dual end stops works very well. The more I think about it, it's best like it is. This is a very ridged large plat form printer. Moving the Z independently is likely going to bind things or could. It now seems to be working really good. Just did a small print and I'm happy with the results.
I know it will have more issues as it's newly built, and it has been a struggle getting to this point.
Thank you very much for the help.
-
@Work-Horse-XL said in Mesh Bed Compensation with inductive probe:
Moving the Z independently is likely going to bind things or could.
Keep in mind that if the Z probing used for auto leveling determines the bed is level the Z steppers will not be activated.
If the bed was very slightly off level then the Z steppers would only make tiny adjustments.
Frederick