Help: mesh compensation ist not correcting right
-
my homes are:
; homex.g ; called to home the X axis ; ; generated by RepRapFirmware Configuration Tool v2.1.8 on Mon Jan 20 2020 21:22:54 GMT+0100 (Mitteleuropäische Normalzeit) G91 ; relative positioning G1 H1 Z5 F180 G1 H1 X5 F1000 ; move slowly away M913 X30 ; lower motor current to 30% for senserless homing G1 H1 X-260 F2000 ; move quickly to X axis endstop and stop there (first pass) G1 X10 F1000 ; go slowly back a few mm G1 H1 X-260 F2000 ; move to X axis endstop once more (second pass) M913 X100 ; Rise motor current to 100% again after sensorless homing G90 ; absolute positioning G1 X15 F1000 ; go to X=15
; homey.g ; called to home the Y axis ; ; generated by RepRapFirmware Configuration Tool v2.1.8 on Mon Jan 20 2020 21:22:54 GMT+0100 (Mitteleuropäische Normalzeit) G91 ; relative positioning G1 H1 Y-5 F1000 ; move slowly away M913 Y30 ; lower motor current to 30% for senserless homing G1 H1 Y230 F2000 ; move quickly to Y axis endstop and stop there (first pass) G1 Y-10 F1000 ; go back a few mm G1 H1 Y230 F2000 ; move slowly to Y axis endstop once more (second pass) M913 Y100 ; Rise motor current to 100% again after sensorless homing G1 Y-10 F1000 ; go back a few mm G90 ; absolute positioning ;G1 Y10 F1000 ; go to Y=10
; homez.g ; called to home the Z axis ; ; generated by RepRapFirmware Configuration Tool v2.1.8 on Mon Jan 20 2020 21:22:54 GMT+0100 (Mitteleuropäische Normalzeit) G90 ; absolute positioning G1 X151 Y141 F3600 ; Move probe to middle of bed - first probing point, regarding Z-probe offsets G30 ; home Z by probing the bed
; homeall.g ; called to home all axes ; M98 P"homex.g" ; Call "homex.g" M98 P"homey.g" ; Call "homey.g" M98 P"homez.g" ; Call "homez.g"
-
@Phaedrux said in Help: mesh compensation ist not correcting right:
...It's also possible that you have tilt on the Y axis. Correcting tilt on the X axis obviously won't solve that. But a G29 heightmap should.
Yes - this was my thought to use the heightmap...
I'm struggeling with this since 2 weeks around... and it is allways the right side, where the nozzle is too close and on the left, where it seems to be bit too far - as if would the meshmap left/right is mixed up... -
@tom_Nbg said in Help: mesh compensation ist not correcting right:
M574 Y2 S3 ; y max endstop
Does this mean that when you're homing Y you move the bed towards the front of the machine?
-
@Phaedrux
yes - because of my new carriage I need to home in front
(but my issue was also in the old config with the old carriage - where I homed in the opposite direction) -
Ok, just confirming that Y+ is moving the bed to the front (and therefore the nozzle to the
frontback edge)Just want to make sure you're still using a right hand coordinate system with 0,0 having the nozzle at the front left corner of the bed.
-
@Phaedrux
ah - yes - 0,0 is left front...
I give up for today
my head is exploding... need a bit american horror story now -
@Phaedrux
Hi,
how do I configure or define what "bed type" I have? I mean:- if I have a "fixed x-gantry" and a "movable" bed (case 1) or
- a "fixed bed" and a movable "x-gantry" (case 2). To illustrate see my both pictures below:
The corrections to be made are allways in the opposite direction when running G32 if I have Case 1 or Case 2. And for mesh compensation the same. And it would explain, why on the right side, which is higher (the nozzle have to move up), it is getting close (because the correction is made in the opposite direction) and why it is on the left side in the opposite - and why the middle is mostly ok because it is more or less the pivot point?
Could this be the problem or am I on a totally wrong way and didn't see anything else?
-
@tom_Nbg Could be, not familiar with magnetic beds, you should see any twist clearly when you look at the bed map side on, alternatively look at heatmap.csv in a spreadsheet to see the actual numbers, I believe it should be first point and last point in the file for xy0,0 and xy max or x min y max depending on where your probe does it's last probe.
edit, answer to your 2nd post not the last post -
@stewwy
Yes: the measured right side in the heightmap.csv is "deeper" then the left side, but I see, that it is higher - so the values are mixed up... How to tell the printer that? -
@tom_Nbg
You have a Cartesian printer
G32 is bed leveling using the 2 Z motors to level along the x axis. This does not as far as I know happen during printing it merely attempts to correct for errors before you start printing.G29 is mesh leveling this is a correction that occurs during printing to correct for hollows and bumps in your bed, although it can correct for an incorrectly leveled bed.
-
@tom_Nbg You can correct for it if you have bed leveling screws, otherwise use (G29)mesh leveling as it looks like you are pretty close anyway
-
@tom_Nbg There's no way of defining bed 'type', and it doesn't matter. So long as you have 'positive' Z moves that move the nozzle away from the bed (eg X gantry on Z moves up) or the bed away from the nozzle (CoreXY with bed moving down), and 'negative' Z moves move the nozzle towards the bed (either nozzle down or bed up), it's effectively the same to the machine coordinates and to the firmware.
Ian
-
@stewwy
I run G32 before I start a print. So if the meassured distance on the right side is different to the left one - then the motors are getting corrected independent - and if then I have my case 1 or case 2 as drawn, the corrections are made are wrong. Example: the right side is too high, the right screw has to rise up but the fw "thinks" the bed has to lower down, then the gantry get lowered down and the effect is, that the nozzle is even closer than it should.... and this is it what I have.... So the measured values just need to be inverted or something like this...? -
@tom_Nbg If that's the case, you probably need to swap the motor wiring of the Z motors. Your M584 command will state two Z drives, eg M584 Z2:4, where Z2 is the 'Z' driver pins, and Z4 is the 'E1' driver pins. Your M671 command defines your leadscrew positions, but importantly, in the order you defined Z motors in M584. So
M671 X-20:220 Y100:100 S0.5
defines the Z2 motor/leadscrew at X-20 Y100 and Z4 motor/leadscrew at X220 Y100. If you connect these the wrong way around, after probing, it will move the bed the wrong way, making the levelling worse. Check that the Z motors are each connected to the correct driver.See https://duet3d.dozuki.com/Wiki/Bed_levelling_using_multiple_independent_Z_motors
If that isn't clear, post
your config.g (which you should have done at the beginning) and perhapsa picture of your printer and/or wiring.Edit: overlooked config in first post!
Ian
-
@droftarts said in Help: mesh compensation ist not correcting right:
your config.g (which you should have done at the beginning)
It's in the first post...
-
@tom_Nbg said in Help: mesh compensation ist not correcting right:
M584 X0 Y4 Z2:4 E3
I think I see a problem. You have Y mapped to drive 4 as well as Z. You're missing a mapping for drive 1.
-
@Phaedrux
no - it this was a copy/paste "rest" - and when I post it here I correct it to the inital state.
y is on 1 (otherwise I think my z-axis would have crashed ;-). I swapped the z- and y-motor to to check if a driver has a problem. So my actual line is:M584 X0 Y1 Z2:4 E3
-
I checked, if the correction is right and it is... I just put a 0.4mm spacer to the right side and the x-gantry was after G32 correct aligned to the bed... But my problem still exists... I've no further ideas anymore, what the problem could cause....
-
So G32 correction is working. That's good.
Have you run G29 after the correction? Or are you loading an old heightmap?
-
@Phaedrux
Hi re-checked all. I printed me some spacers of 8mm to check the bed level manual on each screw. It was fine. Then I'm gone through a sequence:- Power up
- M561
- G29 S2
- G28
- G32
Then I checked again the Nozzle offset (screwed down the nozzle till it touches a piece of paper, rise it up for 5mm and run G30 S-1. I've done this for 3 times, mean 2.263, deviation 0.002 - so o.k.).
Then I put in the new value to the G31 the config.g.
After reboot: - M561
- G29 S2
- G28
- G32
- G29 (for a new meshmap with 7x7 grid)
Then I looked to the map which just looked good for a test deviation mean 0.011, deviation 0.007
After this I started a print and it was again the same suffering result... the left side is printed too high, the middle is ok and on the right side the nozzle is too close to - and it really looks as if where the left/right side mixed up (I checked this - it isn't so) - but I'm short befor to give up.This mesh compensation is a horror to get a good result over all. I've no clue if it an issue / interference problem between the BLTouch and the magnetic heatbed (but then why left/right - the magnets are placed symmetrically).
I wonder also about this:
After homing I go to the middle and checked the height (with a macro which measures 10 times) and I got -0.002 +/- 0.001. But the meshmap shows me at this point -0.019.
Something is here very very wrong with G29.My very very last try will be to measure each point with my macro (see below) and I will recheck these measurements with the meshmap ones (I'll put in exactly the same positions from the meshmap) . If it is then still will not work, I'll make one last test with the Prusa-Pinda-Probe - and if it still will noch work - I'llsell the board...
For more then 3 or 4 weeks now I don't can get a good first layer even a print. Also I recognized since the last update to RRF3.01RC3 that the board will loss every some minutes its network connection... I'm totally disappointed - I've expected more - and I'm sure, there are enough people out without problems like mine - but what is then their machine setup? If the baord is not suitable for my kind of printer - it should be mentioned somewhere...
M401 G30 P0 X10 Y175 Z-9999 G30 P1 X10 Y175 Z-9999 G30 P2 X10 Y175 Z-9999 G30 P3 X10 Y175 Z-9999 G30 P4 X10 Y175 Z-9999 G30 P5 X10 Y175 Z-9999 G30 P6 X10 Y175 Z-9999 G30 P7 X10 Y175 Z-9999 G30 P8 X10 Y175 Z-9999 G30 P9 X10 Y175 Z-9999 S-1 M402