Skip to content

Adding New Printers

sfjelstad edited this page Oct 9, 2024 · 1 revision

Adding New Printers

**Note: This section is primarily included as reference to future LulzBot devs regarding adding any future new LulzBot Printers

Getting started

This guide can be followed to create machine profiles for an unsupported printer.

For a printer, you need at least 2 types of files which we call definition files:

  • A machine definition file which defines the attributes of your machine. For more details, you can check the Machine Definition Files page.
  • A number of extruder definition files which defines the attributes of the extruders on your machine.

For your machine, let's say "My LulzBot", you can follow the steps below:

Please Note: For the following section, with regards to CuraLE, our definition files are stored in a seperate repository. The directories listed below can be found in CuraLE_Resources.

  • Create a machine definition file and give it a unique machine ID, e.g. my_lulzbot.def.json
  • Create extruder definition file(s) and give them unique names, such as my_lulzbot_extruder_0.def.json, my_lulzbot_extruder_1.def.json, etc. It depends on how many extruders your machine has.
  • Open my_lulzbot.def.json and edit it to fit your machine's attributes.
  • Do the same for your extruder definition files, so the files contain the correct information about your machine.
  • For the machine definition file, you need to put it in the definitions directory
  • For the extruder definition files, you need to put them in the extruders directory
  • If you have a 3D model of your bed platform you can put it in the meshes directory and put the name of the file under "platform" in my_lulzbot.def.json
  • Set your machine's dimensions with machine_width, machine_depth, and machine_height. For multi-extrusion printers, this volume needs to be the union of all positions that any nozzle can reach! Big offsets between different nozzles may cause the build volume to need to become larger, if the gantry is the limiting factor of your printer's size.
  • If your printer's origin is in the center of the bed, set machine_center_is_zero to true.
  • Set your print head dimensions with the machine_head_shape parameters.
  • Set the start and end gcode in machine_start_gcode and machine_end_gcode.

Once you are done, put the profile you have made into definitions, or into the user settings definitions folder. For extruder definition files, you need to put them in extruders, or into the user settings extruders folder.

Publishing

Checklist Before Creating Pull Request

  • Make sure your extruder and printer definitions are not overwriting the default values in fdmextruder.def.json and fdmprinter.def.json with the same default value that is defined in these files. These values only bulk up the definition files without doing anything.
  • Don't delete quality profiles without creating an upgrader script.

To publish your new machine definition and qualities, please submit a pull request on the main-dev branch of the CuraLE_Resources repository.

Clone this wiki locally