3D printers could break off due to varies reasons, most 3d printers do not provide power off resumption function, few expensive ones own this function and become a selling point. As a matter of fact, machine instructions for general numerical control devices are all controlled by G code, 3d printers are no exception, a proper change of G code could realize power off resumption function.


1, Measuring already printed model height by vernier calipers, supposing already printed 45mm height.

2, Open .gcode file by notepad.

3, Edit-find, find content Z45, Z should be capitalized.

4, Save as another file, otherwise original G code would be made a change.

Move all the content above” layer223” upper limit check below image, basically LCD displaying sentence below. Examples are for Cura slicing software, other software are similar, pay attention do not remove startup code, the change will be made a while later.

5, Since it is power off resumption, that means Z axis should not return to zero, otherwise the tool will collide with the workpiece. Encountering occurrence like this, power should be cut off immediately.

6, Remove the codes just below the previous deleting, this is the directive referring nozzle lift before starting.7, The next line is the G92 directive, this is very useful also vital one. G92 directive can define current nozzle coordinate, in this way, we can manually adjust the printing head to the height when the power cut off than give a G92 directive to let the machine knows the printing head is currently in this height, meanwhile, extruding E axis should also in the condition when the power break down.

8, In the next 3 lines, you can see the code for starting E axis, this is also the initialized code for extruder, but now these codes are not necessary for us, because our condition is printing break off or nozzle blocking. Manually adjust the extruder in general conditions upon power cutting off, the filament can still be easily plug in manually by hand, there will be a melted drop come out otherwise extruder or filament feeding pipe should be cleared.

9, For convenience sake, leave a line for G92, replace E0 to the E length upon power failure, for example, E7404.51890, also add Z45 before this number and leave a space interim. Right now, the machine knows the coordinate of the printing head and fundamentally admitting that the printing head is starting at the position of E7404.51890 Z45, this saves the trouble of resetting Z axis but still necessarily adjusting Z axis to practical 45mm comparingly leave the E axis alone before printing starts. The same theory also applies to the XY axis, but the characteristics of 3d printing are blowing to up, so resetting the XY axis like normal printing is ok.

10, The non-exist axis following G92 is coordinate 0 by default, the line for XY axis above is reset to zero already, however, you can still manually add X0 Y0 even it does not cause any difference.

11, the bellow G1 F4800 directive can be deleted or not, it will be covered by G1 directive in following, this is the directive for defining of processing speed. M117 is the directive for LCD, it functions a way for indicating. Thus, the code revising finished.


1, Save the revised G code to SD card or reload to host computer by online printing.

2, Start the 3D printer and manually adjusting the printing head like normal daily starting. Pre-heating first and checking of the silk spinning ok before continuing. Note no automatic resetting to prevent collide to the workpiece in occurrence. The reloading of G code will return the XY axis to default and moving XY axis just directly above the workpiece. Slowly pressing Z axis to nearly contact, it’s super if stay in the position just the point the stop of the motor, in this way, it will need no more manual adjusting. However, if printing to empty space, manual hand adjusting still in need.

3, Start G code file, wait like normal to checking if the printing work, if connected, please enjoy the happiness of resumption 3d printing.


1, Cut off the power immediately if any improper occurring.

2, No defining of Z-axis if Z axis’ returning point is just above the 3d printer, directly resetting all axis but E axis still need to be adjusted.