I am using an Ender 3 and I have just upgraded to the Hero Me Gen 5 fan duct adapter. This has shifted the nozzle position. I also flashed some new Marlin 2 firmware and in the Hero Me manual it says to uncomment and change #define MANUAL_Y_HOME_POS -9 to suit this change in nozzle position.

This has, however, not given me the right results. It did not center my prints but actually let the Y-axis grind upon going to Y235. Additionally, I noticed, that my printer must have been off-center from the beginning, because the X position of the nozzle has not changed due to the installation, but the printer homes to a point 5 mm inside the bed perimeters.

So, if my printers endstops dictate an original home position of 3 mm inside the bed area for X and 15 mm outside the bed area for Y, how do I set this up correctly in Marlin 2?

I think the relevant parts are

// The size of the print bed
#define X_BED_SIZE 235
#define Y_BED_SIZE 235

// Travel limits (mm) after homing, corresponding to endstop positions.
#define X_MIN_POS 5
#define Y_MIN_POS -15
#define Z_MIN_POS 0
#define X_MAX_POS 250
#define Y_MAX_POS 240
#define Z_MAX_POS 230
// Manually set the home position. Leave these undefined for automatic settings.
// For DELTA this is the top-center of the Cartesian print volume.
//#define MANUAL_X_HOME_POS 0
//#define MANUAL_Y_HOME_POS -9
//#define MANUAL_Z_HOME_POS 0

This is my idea, I would let the manual home pos be commented out as I do not know what it does. However, I also want the software endstops to correcly work as to not let the printer destroy it aaaaand my BLTouch to probe the bed and not the air or my bed clips using UBL when doing 3-point probing. Would this be correct? Where do I have to look to let the printer consider my bed clips(only 10 mm on both ends of the y-axis side of the bed)?


Normally you wouldn't use the MANUAL_xyz_HOME_POS at all.

Home your machine. Use a caliper or ruler to measure the distance between the nozzle and the edges of the print bed in both the X and Y direction. If the nozzle was off the bed in both directions, input these measurements as negative X_MIN_POS and Y_MIN_POS values. If it was over the bed in either of those directions, you'll need to input them as positive positions.

That should result in your nozzle to be exactly on the edge of the bed after a

G28 X Y
G1 X0 Y0


  • $\begingroup$ Oh my god, that is what I did and it didnt work, so then I wondered what I did wrong and came here to ask. But it did work! I just didn't flash the firmware, I must have forgotte nto turn the printer off and on again! $\endgroup$ – JustAGuy Oct 22 '20 at 18:10
  • $\begingroup$ Still, how do I set the probe offsets or whatever correctly to not hit the clips? And is 5mm less of build volume normal? $\endgroup$ – JustAGuy Oct 22 '20 at 18:11
  • $\begingroup$ You'll first want to set the probe offsets via NOZZLE_TO_PROBE_OFFSET relative to the nozzle. The offsets for the actual probing would be set with PROBING_MARGIN, which defaults to 10 mm. $\endgroup$ – towe Oct 23 '20 at 5:40

Not the answer you're looking for? Browse other questions tagged or ask your own question.