As you just flashed your own Marlin, you probably have the marlin.ino
and its associated files in the Arduino IDE set for your Processor and board and know how to work with them to some degree. This is just the short version where to find what you need to change the bed size, if the marlin.ino is based on the marlinfw-release.
Changing "home"
In Configuration.h
there should be a set of lines that reads akin to this:
// Travel limits (mm) after homing, corresponding to endstop positions.
#define X_MIN_POS 0
#define Y_MIN_POS 0
#define Z_MIN_POS 0
#define X_MAX_POS X_BED_SIZE
#define Y_MAX_POS Y_BED_SIZE
#define Z_MAX_POS 200
Usually it is faster to use Ctrl
+F
and then typing in X_MIN_POS
and adding the hook in front of Search all Sketch Tabs and then moving through all the finds till the right one pops up. This not only brings you right to the lines you want to alter, but also covers up the bases in case the distribution you work with did put the movement limits into a different location like Configruration_adv.h
.
Changing Bed Size
Alter these minimum positions and make sure that the Maximum positions (usually just after them) to fit the maximum of the bed.
If you reduced your bed size, you also might need to change X_BED_SIZE
and Y_BED_SIZE
, which (in the marlin.ino) is in the same Configuration.h
- I found it to preceede the Travel limits:
// The size of the print bed
#define X_BED_SIZE 200
#define Y_BED_SIZE 200
Adjust these as needed to fit the new sizing.
Hint: Getting the Values for Adjusting
For finding the adjusted values, I have had good experiences using Repetier Host on Manual Control to move the nozzle (lifted 1mm to prevent any accidents) into the correct XY-position and taking this position as adjustments for the minimum positions. Finding your personal settings is a bit of a trial and error still, so take your time.
Finishing up
Now, recompile the marlin.ino (the checkmark in the top left) to check for errors and flash the new firmware it.