mirror of
https://github.com/oducceu/klipper_configs.git
synced 2025-12-11 18:24:28 +05:00
Add SET_FILAMENT_SETTINGS macro
Set print parameters based on filament 'name' or 'id' passed from slicer
This commit is contained in:
37
Flying Bear Extra Configs/macros/print_settings.cfg
Normal file
37
Flying Bear Extra Configs/macros/print_settings.cfg
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
[gcode_macro SET_FILAMENT_SETTINGS]
|
||||||
|
description: Set print parameters based on filament 'name' or 'id' passed from slicer
|
||||||
|
# Add following to printer Start G-code :
|
||||||
|
## PrusaSliser/SuperSlicer:
|
||||||
|
# SET_FILAMENT_SETTINGS FILAMENT='{filament_settings_id[0]}'
|
||||||
|
# Note: {filament_settings_id[0]} must be enclosed in 'single quotes' to properly process spaces
|
||||||
|
## Cura:
|
||||||
|
# SET_FILAMENT_SETTINGS FILAMENT={material_guid}
|
||||||
|
# Note: if you encounter duplicates of {material_guid} just edit <GUID> in '%USERPROFILE%\AppData\Roaming\cura\4.xx\materials\*.xml.fdm_material' manually
|
||||||
|
gcode:
|
||||||
|
{% set filament = params.FILAMENT|default("RESET") %}
|
||||||
|
{% set nozzle = printer.configfile.settings.extruder.nozzle_diameter|default(0.4)|float %}
|
||||||
|
{% if filament != 'RESET' %}
|
||||||
|
# Set parameters
|
||||||
|
{% if filament == 'EXAMPLE' %}
|
||||||
|
{% if nozzle == 0.4 %} {% set settings = {'pressure_advance': '0.1', 'smooth_time': '0.040', 'retract_length': '1.0', 'retract_speed': '20'} %} {% endif %}
|
||||||
|
{% if nozzle == 0.6 %} {% set settings = {'pressure_advance': '0.1', 'smooth_time': '0.040', 'retract_length': '1.0', 'retract_speed': '20'} %} {% endif %}
|
||||||
|
{% if nozzle == 0.8 %} {% set settings = {'pressure_advance': '0.1', 'smooth_time': '0.040', 'retract_length': '1.0', 'retract_speed': '20'} %} {% endif %}
|
||||||
|
{% elif filament == 'FD ABS' or filament == 'faca2421-e10c-4dbf-a1dc-9f3b620fd969' %}
|
||||||
|
{% if nozzle == 0.4 %} {% set settings = {'pressure_advance': '0.1', 'smooth_time': '0.040', 'retract_length': '1.0', 'retract_speed': '20'} %} {% endif %}
|
||||||
|
{% elif filament == 'FD PETG' or filament == 'fdff3c20-1d38-4de5-89ee-81789ad8d682' %}
|
||||||
|
{% if nozzle == 0.4 %} {% set settings = {'pressure_advance': '0.13', 'smooth_time': '0.100', 'retract_length': '0.4', 'retract_speed': '20'} %} {% endif %}
|
||||||
|
{% elif filament == 'FD PLA' or filament == 'b9865b5d-e8fe-41e6-a0ab-e34c58aa66a2' %}
|
||||||
|
{% if nozzle == 0.4 %} {% set settings = {'pressure_advance': '0.17', 'smooth_time': '0.040', 'retract_length': '1.0', 'retract_speed': '20'} %} {% endif %}
|
||||||
|
{% elif filament == 'HTP ABS' %}
|
||||||
|
{% if nozzle == 0.4 %} {% set settings = {'pressure_advance': '0.13', 'smooth_time': '0.040', 'retract_length': '1.0', 'retract_speed': '20'} %} {% endif %}
|
||||||
|
{% endif %}
|
||||||
|
{% else %}
|
||||||
|
# Reset
|
||||||
|
{% set pressure_advance = printer.configfile.settings.extruder.pressure_advance|float %}
|
||||||
|
{% set smooth_time = printer.configfile.settings.extruder.pressure_advance_smooth_time|float %}
|
||||||
|
{% set retract_length = printer.configfile.settings.firmware_retraction.retract_length|float %}
|
||||||
|
{% set retract_speed = printer.configfile.settings.firmware_retraction.retract_speed|float %}
|
||||||
|
{% set settings = {'pressure_advance': pressure_advance, 'smooth_time': smooth_time, 'retract_length': retract_length, 'retract_speed': retract_speed} %}
|
||||||
|
{% endif %}
|
||||||
|
SET_PRESSURE_ADVANCE ADVANCE={settings.pressure_advance} SMOOTH_TIME={settings.smooth_time}
|
||||||
|
SET_RETRACTION RETRACT_LENGTH={settings.retract_length} RETRACT_SPEED={settings.retract_speed}
|
||||||
Reference in New Issue
Block a user