Ender 5 + Hemera + BL Touch
-
I wasn't sure which button you pressed. There are 2 different bed leveling/compensation features.
The first is mesh compensation which uses G29 which probes a grid on the bed and makes a heightmap to adjust the Z position.
The second is G32, which does nothing in and of itself, since it actually just runs a macro called bed.g. In that macro you can specify whatever you want to happen. I suspected that the button you pushed triggered that macro, and that in bed.g there were some movement commands that were unexpected.
Open bed.g in the /sys folder to check what's in it, but I don't think that's the button you pressed.
Were you able to get the steps per mm and microstepping sorted?
-
For X and Y the built in reprap calculator seems to arrive at the same value of 80 for X and Y but I think i have something for the Z.
I have the Ender Pro which is supposed to have a new leadscrew and I recall from Marlin it was at 800 steps/mm but not sure if the Marlin config was using a setting of 16 for microstepping.
What Preset and Pitch would be used for the Ender Pro leadscrew? Should the solution be 400 or 800 steps/mm?
-
@mitch
the ender 5 pro z is 800 -
Great,
Thank you.
So here is where I am now.
I updated my DWC to the latest and now the autobed compensation seems to be working better with some weird flaws. The newest SW does not prompt to reboot after update. But it seems to me that a power cycle is needed for the changes to take effect. Is this correct?
With my Hemera setup I have found the max bed size to be:
x = 220mm
y = 207mmI have restricted the mesh parameters to X=180 and Y=200 to keep the probe on the bed. But it doesn't seem to care what is defined because it still goes past 180 in the x direction when probing.
-
Are you sure the probe offset is correct?
X- goes to the left, X+ goes to the right, Y- goes to the front, Y+ goes to the back. 0,0 is the front left corner.
-
@mitch said in Ender 5 + Hemera + BL Touch:
have restricted the mesh parameters to X=180 and Y=200
no you restrict the movement in the
Printer Geometry
section with max x and y -
I have calculated the BLtouch offset to be:
Probe X Offset = -43mm (43 mm to the left of the head)
Probe Y Offset = 3mm (3 mm behind the head)The total usable Bed (Print Geometry):
X (0 - 220mm)
Y (0 - 207mm) Due to the hemera contacting the front supportNote: Even though you can print in the X direction up to 220 mm. You can only use the probe as far as 180mm or you will be off the bed with the probe.
So it was my understanding that if I restricted the mesh parameter to 180mm it would do just that. Not exceed 180mm.
I just ran the "Mesh Compensation G29" under the compensation and calibration it it worked perfectly going to all extremes of the bed with the probe and not exceeding what was defined in the Mesh Parameters. It just seems that the "True Bed Leveling G32" violates the limits and attempts to probe too far in the X direction to the extent that the probe would be off the bed.
-
@mitch said in Ender 5 + Hemera + BL Touch:
"True Bed Leveling G32" violates the limits and attempts to probe too far in the X direction to the extent that the probe would be off the bed.
That would be executing bed.g. You still haven't shown us what's in that file, so we don't actually know what it's trying to do. But generally you won't actually need to use that at all unless you're trying to do something specific and custom like independent Z motor bed tilt correction. G29 is usually enough.
-
; bed.g
; called to perform automatic bed compensation via G32
;
; generated by RepRapFirmware Configuration Tool v2.1.8 on Sun Feb 02 2020 11:21:35 GMT-0600 (Central Standard Time)
M561 ; clear any bed transform
G29 ; probe the bed and enable compensation -
I am finding very weird results with this Duet DWC. It seems that even if I make a change I need to hit the emergency stop for the board to reboot and then actually use the changes. I set the mesh limit and it ignores them now (even though it was using them before). Struggling to find consistent behavior so I can trust this thing. I also noticed even though I uploaded a new reprap config the config.g was still unchanged so I had to again hit the emergency stop to force a reboot. I fail to believe this is how this thing is intended to work.
-
@mitch said in Ender 5 + Hemera + BL Touch:
I set the mesh limit and it ignores them now (even though it was using them before).
your bed just calls mesh grid compensation.
the configurator does not generate a proper bed.g for that anymore since it is depricated.
so the values you have put in in the dwc will be ignored. -
Ok, as a new user how do I know what is depreciated and what isn't? Not being sarcastic, seriously, how do I know what to trust will use settings and what will attempt to damage my printer?
Do I need to go in and manually update a bed.g? If it is depreciated what is used instead? I just want to make sure everything is functioning safely so I can be assured when I attempt to print it won't try to go off and slam into a limit or rip my BLtouch off the mount.
I set the limit down to 145 and it seemed to have an impact. Not that it used 145 as a limit but it didn't try to go off the bed with the sensor so something changed. The screen capture is from a completed mesh bed level. The final position was at 183? If I subtract 43 from 183 that gives me 140. -43mm was my x offset. Do I have my signs wrong on my BLTouch offset positions?
I have calculated the BLtouch offset to be:
Probe X Offset = -43mm (43 mm to the left of the head)
Probe Y Offset = 3mm (3 mm behind the head)
-
it says so in a big headline in the configuration tool
Note: 3/4/5 Point Bed Compensation is deprecated. It has been replaced with the new Mesh Bed Compensation.
you just use mesh compensation and not bed compensation.
from your picture
20mm space starting at 0
7*20=140+ 43mm offset = 183 -
@mitch said in Ender 5 + Hemera + BL Touch:
; bed.g
; called to perform automatic bed compensation via G32
;
; generated by RepRapFirmware Configuration Tool v2.1.8 on Sun Feb 02 2020 11:21:35 GMT-0600 (Central Standard Time)
M561 ; clear any bed transform
G29 ; probe the bed and enable compensationSo in your case, G32 is the same as running G29.
If you set the probing grid using the DWC popup box I don't think that it will change the values you have set in config.g so you should modify your config.g M557 command to use the grid size you need. That way it will persist between power cycles.
-
@Veti said in Ender 5 + Hemera + BL Touch:
it says so in a big headline in the configuration tool
Note: 3/4/5 Point Bed Compensation is deprecated. It has been replaced with the new Mesh Bed Compensation.
you just use mesh compensation and not bed compensation.
from your picture
20mm space starting at 0
7*20=140+ 43mm offset = 183Yes, which is why I was running Mesh Bed Compensation via the menu and still getting an overshoot on my sensor. The assumption is if you define the limit to be 145 it would actually stop at 145 and not keep trucking past it.
Are you trying to say that "Point Bed Compensation" (which yes I saw the warning sign) is the same thing as "True Bed Leveling G32"? Look, I know you think this is all obvious. But it is not. Which is why I am asking for help. In either case, my question is about the Mesh Bed Comp and the limits. I think the next poster answered the question with an actionable response. ty,
-
@Phaedrux said in Ender 5 + Hemera + BL Touch:
M557
What you said makes perfect sense.... but still unanticipated result for me.
I verified my Config.g already was defined as:
; Z-Probe M950 S0 C"exp.heater4" ; create servo pin 0 for BLTouch M558 P9 C"zprobe.in+zprobe.mod" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X-43 Y3 Z2.5 ; set Z probe trigger value, offset and trigger height M557 X0:180 Y0:195 S20 ; define mesh grid
So that means the tool should not attempt to exceed the 180mm position in the Y direction. I uploaded a file to print and when the G29 command was executed to do ABL. It went past the 180mm mark and attempted to probe one more time.
So to get on the same page. When we specify this grid. Are we talking tool position or probe position? In marlin everything was with respect to the tool position and it used the offsets defined for the probe as needed.
-
Yes, it's a little different than marlin.
M557 X0:180 looks correct to me. It's the position that the probe can actually reach. So if the axis is 220mm long, and your probe offset is -40, 180 should be the farthest the probe can actually reach.
Same for the Y axis values you have.
What do you currently have for steps per mm and microstepping values?
If you tell it to move 10mm, is it actually moving 10mm? -
yes, steps measure correct. I tell it to step 10mm it moves 10mm.
So....
I went into config.g and changed the offset to be positive.
x offset = 43mm
y offset = -3mmI set the mesh limit to the bed limit
x=180
y = 200Now everything seems to work fine. The system probes the bed evenly and doesn't attempt to move the probe off the bed at any time.
Perhaps the issue is that coordinate system used for the BLTouch offset? You can see a pic of my mounting. I understand that to be to the left of the head (neagative). The origin is in the back right of the printer. Would that make the sign of the offsets opposite (positive instead of negative)? I have always had the offset negative in marlin when mounted on the left side like this.
; Z-Probe M950 S0 C"exp.heater4" ; create servo pin 0 for BLTouch M558 P9 C"zprobe.in+zprobe.mod" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X43 Y3 Z2.5 ; set Z probe trigger value, offset and trigger height M557 X0:180 Y0:195 S20 ; define mesh grid
The origin 0,0 is the back right of the printer:
Yep, tried to print and the print is 180 from what it used to do with the creality board. I guess I could set the stops to be at the high end and then reverse the motor directions to put the origin at the bottom left or is it fine how it is?
-
@mitch said in Ender 5 + Hemera + BL Touch:
The origin is in the back right of the printer.
Yeah that would explain it
I think that has been noted before with the Ender 5.
Personally I would want to maintain a left handed coordinate system, but as long as things are not mirrored it's not really a big problem. So up to you.
-
@mitch said in Ender 5 + Hemera + BL Touch:
I could set the stops to be at the high end
Just a thing to think about: end stops serve the sole purpose to put the head at a known position. With this knowledge, you can steer the nozzle to whatever position you like and declare that as the origin of your coordinate system. This can be any corner or the center of the bed, as well. That is, end stops and the origin of your coordinate system don’t need to match.