https://www.marcopapi.it/blog/gcode-2d-plotter/