Gcode Filename Format Plus
Cura plugin for controlling output filename format, now with multi-extruder and OctoPrint support
Default filename format:
[abbr_machine] [brand] [material] lw [line_width]mm lh [layer_height]mm if [infill_sparse_density]% ext1 [material_print_temperature]C bed [material_bed_temperature]C
Example filename output:
PI3MK3M paperclip Generic PLA lw 0.4mm lh 0.2mm if 20% ext1 200C bed 60C.gcode
Requirements
Cura 5.0 or later
Installation
Preferred method
Install plugin from Ultimaker Marketplace
Alternatively
- Clone repository (or download repository .zip)
git clone https://github.com/rgomezjnr/GcodeFilenameFormatPlus.git
- Move GcodeFilenameFormatPlus folder to Cura plugins folder
- Windows: C:\Users\%USERNAME%\AppData\Roaming\cura\5.0\plugins
- Mac: $User/Library/Application\ Support/Cura/5.0/plugins
- Linux: $HOME/.local/share/cura/5.0/plugins
- Launch Cura
Usage
-
Specify filename format using Extensions -> Gcode Filename Format Plus -> Edit Format
![Edit Format Dialog](https://github.com/rgomezjnr/GcodeFilenameFormatPlus/raw/gff+/images/edit-format-dialog.png)
-
Slice object
-
Select Save to Disk button, or File -> Export, or send job to printer
Besides .gcode, the plugin also works with other file types such as .3mf and .stl. Simply select from the available file types in the save dialog. Additionally, GFF+ will pass the custom job name to an OctoPrint server when using the OctoPrint Connection plugin.
Format options
- base_name - object/model name
- job_name - same as base_name
- abbr_machine - abbreviated printer machine name
- printer_name - printer manufacturer and model
- profile_name - name of the profile used for slicing e.g. Normal, Fine, Draft
- cura_version - the Semantic version of Cura e.g. 5.0.0
- object_count - number of objects on the build plate
- layer_height - layer height/thickness, vertical resolution (mm)
- machine_nozzle_size - nozzle diameter e.g. 0.2 mm, 0.4 mm, 0.6 mm
- line_width - line/nozzle width e.g. 0.2 mm, 0.4 mm, 0.6 mm
- wall_thickness - thickness of shell walls (mm)
- infill_sparse_density - infill percentage (%)
- infill_pattern - infill pattern e.g grid, lines, triangles
- top_bottom_pattern - pattern of the top and bottom layers e.g. lines, concentric, zig zag
- brand - the brand of the filament e.g. Generic, Prusa, MatterHackers, eSun, etc.
- material - material type e.g. PLA, PETG, ABS, etc.
- material_diameter - filament size e.g. 1.75 mm, 3 mm
- material_print_temperature - material/nozzle temperature (°C)
- material_bed_temperature - build plate temperature (°C)
- material_flow - extruded material flow rate (%)
- material_weight - printed material weight (g)
- material_length - printed material length (m)
- material_cost - printed material cost
- color_name - material color
- scale - uniform scale of the object (%)
- scale_x - scale of the object on the x axis (%)
- scale_y - scale of the object on the y axis (%)
- scale_z - scale of the object on the z axis (%)
- speed_print - print speed (mm/s)
- retraction_combing - combing mode
- magic_spiralize - spiralize outer contour, vase mode
- print_time - total print time in HHMMSS
- print_time_days - print time in days
- print_time_hours - print time in hours
- print_time_hours_all - print_time_days * 24 + print_time_hours
- print_time_minutes - print time in minutes
- print_time_seconds - print time in seconds
- date - current date in YYYY-MM-DD
- time - current time in HH-MM
- datetime - current time in YYYY-MM-DDTHHMMSS
- year - current year in YYYY
- month - current month in MM
- day - current day in DD
- hour - current hour in HH
- minute - current minute in MM
- second - current second in SS
For the full list please refer to fdmprinter.def.json.pot
Multiple extruder options
For printers with multiple extruders, individual extruder settings can be specified by appending the extruder number to the option.
Example filename format:
[abbr_machine] [base_name] ext1 [brand1] [material1] [material_print_temperature1]C [line_width1]mm ext2 [brand2] [material2] [material_print_temperature2]C [line_width2]mm
Example filename output:
PI3MK3M paperclip ext1 Ultimaker ABS 255C 0.7mm ext2 Ultimaker Tough PLA 215C 0.35mm.gcode
Support
If you find an issue or have any feedback please submit an issue on GitHub.
You can also reachout via Twitter @rgomezjnr.
If you would like to show your support donations are greatly appeciated via:
Authors
Robert Gomez, Jr.
Michael Chan
Geoffrey Young
Source code
https://github.com/rgomezjnr/GcodeFilenameFormatPlus
License
LGPLv3