bed.h how to update heightmap.csv ?
-
problems
- result from G30 is unclear
G30 P24 X110 Y100 Z-9999 if result != 0 echo "ERROR P24" continue echo "DONE P24"
no matter if G30 succeeds or not this will always be "DONE", never "ERROR" - why?
- after all points are probed heatmap.csv is not updated, how to do that?
move.calibration.*
is all always 0
-
Unless I missed soemthing recently, only G29 updates heightmap.csv
https://duet3d.dozuki.com/Wiki/Gcode#Section_G29_Mesh_bed_probe -
@arhi said in bed.h how to update heightmap.csv ?:
no matter if G30 succeeds or not
What do you mean by "succeeds" in this context? A G30 command will fail if either the Z probe is already triggered at the start of the probing move, or if the probing move ends without it being triggered.
-
@dc42 the G30 part I mentioned in details in https://forum.duet3d.com/topic/15491/help-with-conditions-in-variable-g-code
I get the
Error: Z probe already triggered at start of probing move
and then result is again 0 -
@gtj0 said in bed.h how to update heightmap.csv ?:
Unless I missed soemthing recently, only G29 updates heightmap.csv
yes, but with what? the calibration object show 0 deviation.
When I hit G29S0 it will probe and update the map with that data..
I'll try S3 and see what it will be in the file -
@gtj0 said in bed.h how to update heightmap.csv ?:
Unless I missed soemthing recently, only G29 updates heightmap.c
This is what G29 saves after 25 G30's:
RepRapFirmware height map file v2 generated at 2020-04-10 15:47, min error 9999.000, max error -9999.000, mean 0.000, deviation 0.000 xmin,xmax,ymin,ymax,radius,xspacing,yspacing,xnum,ynum 0.00,-1.00,0.00,-1.00,-1.00,0.00,0.00,0,0
-
Seems to me I'm missing something. The min/max is wrong here, so there's maybe some config required addional to what I have? I copied @dc42 example but obviously missed something.
I have
M557 X-110:110 Y-100:100 P5:5
then I do bunch of G30's
and G29 stores #^%$^@#$%^ in the file -
Missing S
On the last G30 command in the sequence, the S parameter indicates that a complete set of points has been probed and instructs the firmware what sort of calibration to perform. If the value is -1 then the Z offsets of all the points probed are printed, but no calibration is done. If the value is zero or not present, then this specifies that the number of factors to be calibrated is the same as the number of points probed. Otherwise, the value indicates the number of factors to be calibrated, which must be no greater than the number of points probed. From version 1.09, the number of factors may be 3, 4 or 5 when doing old-style auto bed compensation on a Cartesian or CoreXY printer, and 3, 4, 6, 7, 8 or 9 when doing auto calibration of a Delta printer.
hm, 0 is "all probed points" or for cartesian 3,4,5 ... but I have 25 points ?! .. so doing S0
Error: Probe points P0 to P3 must be in clockwise order starting near minimum X and Y, and P4 must be near the centre ERROR P24
I listed the points in the same way G29S0 probes minx,miny going towards maxx, than one y up down to maxx one y up up to max ... so zigzag optimal path trough bed for all 25 points....
@dc42 you did 15 points and finished with S8 but that's delta... how to do it for cartesian?
-
Can't make this with any S value .. no clue what's up.
With S-1 I get the probed points, calculated mean.. but why does S0 or S25 or S4 complain with clockwise , centre etc etc..
G32 bed probe heights: 0.025 0.008 0.011 -0.017 -0.014 -0.004 0.030 0.003 0.013 0.029 0.042 0.011 0.000 0.007 -0.014 -0.003 0.011 0.003 0.012 0.043 0.018 -0.012 -0.011 -0.008 -0.010, mean 0.007, deviation from mean 0.017
-
I'm really not clear on what you're trying to do. It seems like you're trying to duplicate the functionality of G29 using defined points in bed.g? But why?
@arhi said in bed.h how to update heightmap.csv ?:
S25 or S4
G29 S25 is definitely not a valid command.
https://duet3d.dozuki.com/Wiki/Gcode#Section_G29_Mesh_bed_probe
G29 uses the grid established by M557
https://duet3d.dozuki.com/Wiki/Gcode#Section_M557_Set_Z_probe_point_or_define_probing_grid -
@Phaedrux said in bed.h how to update heightmap.csv ?:
G29 S25 is definitely not a valid command.
I'm not doing G29S25, I'm doing G30, if you look at the G30 it states that after you finish probing all points the last point you probe should have S parameter. If you look at the sample g-code @dc42 made in the documentation he's probing 15 points with G30 for the delta and then on the last 15th point on G30 he adds S8. T S is not really explained in the G30 documentation, the "From version 1.09, the number of factors may be 3, 4 or 5 when doing old-style auto bed compensation on a Cartesian or CoreXY printer, and 3, 4, 6, 7, 8 or 9 when doing auto calibration of a Delta printer." is not too clear for me :(. @dc42 is using S8 (no clue why 8 and not 3 or 9?!?!). I'm totally confused.
I'm really not clear on what you're trying to do. It seems like you're trying to duplicate the functionality of G29 using defined points in bed.g? But why?
For start to figure out better how variable g-code works.
The other thing is, this Orion probe is not very stable and changing the trashold before every probe move makes it a lot more repeatable. It still can happen that a point is not probed properly. In case G29S0 (what I do use now) it will fail and will not retry. In case of my script, it will retry 5 times to probe a mesh + it sets the trigger trashold before every move making the probe much more reliable and precise.
Anyhow, my bed is pretty "tight" so I do mesh leveling once every few months only so I don't have a problem using G29S0 and retrying few times if there's a problem, the "figuring how variable g-code works" is really the main reason.