Apply X-offset to gcode (re-slicing not possible)

  • I am currently printing the QTrainer aircraft from 3DLabPrint on my Anet A8, via the supplied i3-compatible gcode files.



    So far, everything has printed fine, but the main undercarriage part tries to print off the left hand side of the bed by about 5mm.



    I have tried manually adding an M206 X-10 line to the gcode file, just after G28 ; home all, however this has not had any effect:



    G90
    M83
    M106 S0
    M140 S65
    M190 S65
    M104 S220 T0
    M109 S220 T0
    G28 ; home all
    M206 X-10 ; added by me
    G1 E-0.8000 F1800
    G1 Z0.200 F1002
    ; layer 1, Z = 0.2
    T0
    ; tool H0.200 W0.450
    ; skirt
    G1 X9.382 Y10.533 F6000
    G1 E0.8000 F540
    G1 X10.536 Y10.537 E0.0388 F1440
    ...



    However this does not work and I'm not clear on whether I am using this gcode command correctly, or whether my printer simply doesn't support that command.



    Is there another way I can apply an X-offset to the gcode file (or printer) to move it a few cm to the right of the print area?



    As I do not own Simplify3D and cannot currently afford it, re-slicing the STL files is unfortunately not an option.



    Unfortunately there is no X-adjustment on the X limit switch (although I suppose I could temporarily tape something to the print head, so that it activates the switch sooner?).



    My Anet A8 currently runs stock firmware, hooked up to OctoPrint and I have access to a Macintosh desktop computer.


    The reason that M206 does not work for you is that you are on stock firmware. This firmware is Repetier based and does not support this gcode command. If you had flashed the firmware to Marlin it would have worked fine!

  • You can use G92 to change the coordinates the machine "thinks" it's at. If just after homing, you apply



    G92 X-10


    the machine now thinks it's at X = -10, while in reality it's at X = 0. This results in everything thereafter behaving as if it is shifted in the positive X direction by 10 mm (since if you then commanded a move to X = 1 the machine would move to what is physically X = 11).


    a very good use case for that command. Thanks Tom

License under CC-BY-SA with attribution


Content dated before 7/24/2021 11:53 AM

Tags used