Created: 2014-05-19 16:08
Updated: 2017-06-24 20:43
License: other


This is a tool for converting gcode files generated by slic3r (the open source object slicing tool) for use by XYZ Printings XYZware tool. Should the gcode file not have the proper markers in it, you'll get back an error message about it.


Just use cabal install in the source directory. Then modify your slicer's configuration as outlined in the next section.

Cabal will install xyzify as a command line tool. Run with no arguments, it acts as a filter. With one argument, it'll convert the file named in the argument.

It will also install xyzweb as a simple web application that will upload, convert and download files. It listens on the PORT specified by the PORT environment variable. This is still a work in progress, and the help file has to be dealt with by hand.

Slic3r configuration

XYZware readsh the comments in a gcode file, looking for specific information. If it fails to find that, it won't load the file or printing may fail. So we configure slic3r to provide that information.

Since this information is in the comments, we use the slic3r "Start G-code" setting. In my version of slic3r, this is in the logical place: "Printer Settings" under "Custom G-code".

Add the following to the start of that section:

; filename = composition.3w
; machine = daVinciF10
; material = abs
; layer_height = [layer_height]
; total_layers = 173
; total_filament = 0.00
; extruder = 1
; --- END SECTION ---

The XYZify program finds the initial comment (--- MOVE THIS ...), removing any comments and blank lines it finds along the way. The comments - and any actual g-code - between that line and the last one (--- END SECTION...) are output, the lines preceeding this section that haven't been removed are output, then the rest of the file is output unchanged.


Download the files Main.hs and GCode.hs into a directory, and then run the command ghc -O2 -o xyzify Main.hs to compile xyzify. Copy it to somewhere where your command processor will find it.

From favorite command line access tool - run xyzify with standard input being a gcode file from a properly configured slic3r, and output going to the 3w file:

$ xyzify < myslic3r.gcode > myslic3r.3w


The web version is also very simple. If you prettify it, please let me know!

Click "Choose File" to select the gcode file to convert. Then click "Convert" to upload and convert the file. The results will be downloaded with the extension ".3w" added to the file name. If the name ended with ".gcode", then that will be removed, so the converted myslic3r.gcode will be downloaded as myslic3r.3w

Cookies help us deliver our services. By using our services, you agree to our use of cookies Learn more