marlin

XYZ Calibration (beta)

The build is ready, I am now working on the firmware.

Recently I had an idea how to implement XYZ Calibration, and now its implemented, in beta state. It doesn’t save anything, but it produces a report which can be used to configure the printer. The printer is also checking if the XY are perpendicular and displaying information how big is the difference, and how to reduce it (which rod should be moved backwards/forward).

Its recommended to run the XYZ Calibration from LCD while being connected from the PC by serial port (using eg. Prointerface or Repetier-Host).

Video demonstration:

The idea of moving to top of frame is taken directly from Original MK2.

The calibration can be also started by using gcode G666.

Firmware

As the build is almost finished (I am only waiting for the longer cables to put screen on front of the printer), I’ve started to modify configuration of Marlin to this printer.

Unfortunately, very helpful option to load and unload filament (gcodes M701 and M702) is not implemented in Marlin, but they implemented M600 (change filament during print) – I’ve done some modifications to Marlin RC8, adding that feature.

I’ve made eventually more modifications (and I am still working on it) – added Babystepping Z to main menu while printing, allowed to use 10mm move also on Z axis and also some modifications to menu order.

The modified Marlin, with configuration is available on github:
https://github.com/q3ok/Marlin (branch MK2Clone)

To use it, you shall modify Z probe offset (depending on what height you have mounted the probe), and X,Y,Z MIN and MAX positions.

I am still working on the firmware, to add more features which are helpful while operating the printer.

To print there is also a slicer software needed, I strongly recommend Slic3r Prusa Edition, which can be downloaded from github:
https://github.com/prusa3d/Slic3r/releases

There is start GCode which I am using:

M140 S[first_layer_bed_temperature] ; set bed temp
M190 S[first_layer_bed_temperature] ; wait for bed temp
M104 S[first_layer_temperature] ; set extruder temp
G28
G29 ;
M109 S[first_layer_temperature] ; wait for extruder temp

And End GCode:

G4 ; wait
G1 E-1 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure
M104 S0 ; turn off temperature
M140 S0 ; turn off heatbed
M107 ; turn off fan
G1 X0 Y200 F6000; home X axis
M84 ; disable motors

For the profiles, You can go ahead and use Original Prusa print profiles, but I recommend to remove acceleration control from the profile (Speed -> Acceleration Control (advanced) -> set over there everything to 0), and use the default hardcoded acceleration limits set in configuration.