Permanently move home position

Sorry if I've broken some rule but I have a question not related to OP but I can't seem to find a good Marlin board.

My current home position relative the bed is X10 Y2. Printer has a glass bed which is held in place by clips and I don't want to foul the clips while printing. I'd like a stripe 15mm wide on the front and back edges. So I need to move home Y +13. I could of course move the Y endstop but ... it's a pita.

I primarily use PrusaSlicer and it doesn't seem the have the option to allocate a "no print" zone.

I've tried playing with M206 but nothing I do prevents AutoHome from going to same place. Have I missed something?

I'm not sure what you mean by "I can't seem to find a good Marlin board".

AutoHome should establish the X, Y, and Z origins based on the endstops. If you want to change this origin, you will have to move the endstops (which as you say, is a P.I.T.A.).

The values set by M206 add (or subtract) from the coordinates in the GCode effectively moving the origin. If you have an EEPROM, the M206 offsets are stored there so you need an M500 after changing M206 offsets.

This is how it works on my LulzBot TAZ 6 (Rambo 1.4 with Marlin 1.1.9.34).

Simplify 3d has origin offsets, I expect other slicers do to. But if it is something you always want to do and you roll your own firmware you could do what I do and set in configuration.h

#define X_MIN_POS -10
#define Y_MIN_POS -13

Obviously that could have been phrased better. How about, I can't seem to find a better place to ask questions about Marlin. There is a facebook thing but I hate facebook.

Sorry should have said Creality mainboard (I think from CR10) running 2.0.5.3 Marlin

It's ok to ask here but if you don't get the right answers try it on the marlin discord :slight_smile:

For the home offset I would try this


but I can't help you with setting up a "deadzone" in PrusaSlicer - never used it.

If M206 works then you don't need a "deadzone" in any slicer.

It would just move the bed by the offset. So you wouldn't have problems at X and Y min but at X and Y max.
I would reduce the bed size in the slicer so X and Y max would also work with the new offset.

Good Point!

Thanks guys, still can't seem to get M206 to do anything so I've decided to use the slicer to help avoid the clips. PrusaSlicer has an option to import a jpg to use as a bed image. I'm going to create an image with the 15mm front and back no-go areas. Then remember when I slice to avoid those areas.

Not a solution but .....

If you AutoHome from the control panel on the printer, does it home on the position controlled by physical endstops or by a position modified by M206?

It would appear (on my TAZ 6) that while the M206 is remembered, the Auto Home from the console returns to the physical position determined by the endstops.

Note the difference between the coordinates returned from the first G28 X Y vs those returned from the second G28 (from the LCD control panel).

Send: G28 X Y
[...]
Printer seems to support the busy protocol, will adjust timeouts and set busy interval accordingly
[...]
Recv: X:-19.00 Y:258.00 Z:5.00 E:0.00 Count X:-1910 Y:25929 Z:8000
Recv: ok P15 B4
Send: M113 S2
Recv: ok P15 B4
[...]
Send: G28 Z
Recv: echo:Unknown command: ""
Recv: ok P15 B4
[...]
Send: G28 Z
[...]
Recv: X:-19.00 Y:258.00 Z:10.00 E:0.00 Count X:-1910 Y:25929 Z:16000
Recv: ok P15 B4
[...]
Send: G0 X0 Y0
Recv: ok P14 B4
[...]
Send: M206 X-50 Y-50
Recv: X:-50.00 Y:-50.00 Z:10.00 E:0.00 Count X:0 Y:0 Z:16000
Recv: ok P15 B4
[...]
Send: G0 X0 Y0
Recv: ok P14 B4
[...]
Recv: echo:enqueueing "G28"
[...]
Recv: X:-69.00 Y:208.00 Z:10.00 E:0.00 Count X:-1910 Y:25929 Z:16000
[...]
Send: G0 X0 Y0
Recv: ok P14 B4

Duhh, slaps head .... of course it has to autohome to the physical endstops, although I would have thought it should then move to its new (as defined by M206) home position.

I don't know how auto home (G28) is implemented in your firmware but in the TAZ 6, X and Y endstops are accessed first then the Z endstop, a switch triggered by the nozzle which is located at a fixed location relative to the X and Y endstops. At the end of the G28, the nozzle is always positioned over the Z endstop.

That is always true unless using safe homing, but that only makes sense with a probe.So I Z home via a BLTouch so I Z home in them middle of the build plate. So that is where my print headends up, at the centre offset viathe probe offset.

But if you are using a micro/optical switch to Z home that is where it will end up. But the various things discussed above should then stop you crashing into your clips.

You could always add a G92 X..... Y...... after the G28 in the gcode header of your slicer. If you have purge code, you probably want the G92 after that code.
This would make the hotend think it is located at X.... Y.... when the program starts