Browse Source

Merge pull request #19296 from Ultimaker/CURA-11795_activate_fans_during_switch

CURA-11795 Activate fans during switch
HellAholic 8 months ago
parent
commit
1958700418

+ 15 - 0
resources/definitions/fdmprinter.def.json

@@ -4614,6 +4614,21 @@
                     "maximum_value": "365",
                     "settable_per_mesh": false,
                     "settable_per_extruder": true
+                },
+                "cool_during_extruder_switch":
+                {
+                    "label": "Cooling during extruder switch",
+                    "description": "<html>Whether to activate the cooling fans during a nozzle switch. This can help reducing oozing by cooling the nozzle faster:<ul><li><b>Unchanged:</b> keep the fans as they were previously</li><li><b>Only last extruder:</b> turn on the fan of the last used extruder, but turn the others off (if any). This is useful if you have completely separate extruders.</li><li><b>All fans:</b> turn on all fans during nozzle switch. This is useful if you have a single cooling fan, or multiple fans that stay close to each other.</li></ul></html>",
+                    "type": "enum",
+                    "options":
+                    {
+                        "unchanged": "Unchanged",
+                        "only_last_extruder": "Only last extruder",
+                        "all_fans": "All fans"
+                    },
+                    "default_value": "unchanged",
+                    "settable_per_mesh": false,
+                    "settable_per_extruder": false
                 }
             }
         },

+ 1 - 0
resources/extruders/ultimaker_methodx_extruder_left.def.json

@@ -14,6 +14,7 @@
             "default_value": 0,
             "maximum_value": "1"
         },
+        "machine_extruder_cooling_fan_number": { "default_value": 0 },
         "machine_extruder_end_code": { "default_value": "M106 P{extruder_nr} S1.0\nG91\nG0 Z0.4 F600\nG90\nG0 X{prime_tower_position_x - prime_tower_size/2} Y{prime_tower_position_y + prime_tower_size/2} F6000" },
         "machine_extruder_start_code": { "default_value": "G0 X{prime_tower_position_x - prime_tower_size/2} Y{prime_tower_position_y + prime_tower_size/2} F6000\nM104 S{material_print_temperature}\nG4 S5\nG91\nG0 Z-0.4 F600\nG90\nM107 P{(extruder_nr+1)%2}\nM106 P{extruder_nr} S{cool_fan_speed_0/100}" },
         "machine_extruder_start_code_duration": { "default_value": 8 },

+ 1 - 0
resources/extruders/ultimaker_methodx_extruder_right.def.json

@@ -14,6 +14,7 @@
             "default_value": 1,
             "maximum_value": "1"
         },
+        "machine_extruder_cooling_fan_number": { "default_value": 1 },
         "machine_extruder_end_code": { "default_value": "M106 P{extruder_nr} S1.0\nG91\nG0 Z0.4 F600\nG90\nG0 X{prime_tower_position_x - prime_tower_size/2} Y{prime_tower_position_y + prime_tower_size/2} F6000" },
         "machine_extruder_start_code": { "default_value": "G0 X{prime_tower_position_x - prime_tower_size/2} Y{prime_tower_position_y + prime_tower_size/2} F6000\nM104 S{material_print_temperature}\nG4 S5\nG91\nG0 Z-0.4 F600\nG90\nM107 P{(extruder_nr+1)%2}\nM106 P{extruder_nr} S{cool_fan_speed_0/100}" },
         "machine_extruder_start_code_duration": { "default_value": 8 },

+ 1 - 0
resources/extruders/ultimaker_methodxl_extruder_left.def.json

@@ -14,6 +14,7 @@
             "default_value": 0,
             "maximum_value": "1"
         },
+        "machine_extruder_cooling_fan_number": { "default_value": 0 },
         "machine_extruder_end_code": { "default_value": "M106 P{extruder_nr} S1.0\nG91\nG0 Z0.4 F600\nG90\nG0 X{prime_tower_position_x - prime_tower_size/2} Y{prime_tower_position_y + prime_tower_size/2} F6000" },
         "machine_extruder_start_code": { "default_value": "G0 X{prime_tower_position_x - prime_tower_size/2} Y{prime_tower_position_y + prime_tower_size/2} F6000\nM104 S{material_print_temperature}\nG4 S5\nG91\nG0 Z-0.4 F600\nG90\nM107 P{(extruder_nr+1)%2}\nM106 P{extruder_nr} S{cool_fan_speed_0/100}" },
         "machine_extruder_start_code_duration": { "default_value": 10 },

+ 1 - 0
resources/extruders/ultimaker_methodxl_extruder_right.def.json

@@ -14,6 +14,7 @@
             "default_value": 1,
             "maximum_value": "1"
         },
+        "machine_extruder_cooling_fan_number": { "default_value": 1 },
         "machine_extruder_end_code": { "default_value": "M106 P{extruder_nr} S1.0\nG91\nG0 Z0.4 F600\nG90\nG0 X{prime_tower_position_x - prime_tower_size/2} Y{prime_tower_position_y + prime_tower_size/2} F6000" },
         "machine_extruder_start_code": { "default_value": "G0 X{prime_tower_position_x - prime_tower_size/2} Y{prime_tower_position_y + prime_tower_size/2} F6000\nM104 S{material_print_temperature}\nG4 S5\nG91\nG0 Z-0.4 F600\nG90\nM107 P{(extruder_nr+1)%2}\nM106 P{extruder_nr} S{cool_fan_speed_0/100}" },
         "machine_extruder_start_code_duration": { "default_value": 10 },

+ 1 - 0
resources/setting_visibility/advanced.cfg

@@ -97,6 +97,7 @@ cool_fan_full_layer
 cool_min_layer_time
 cool_min_speed
 cool_lift_head
+cool_during_extruder_switch
 
 [support]
 support_enable

+ 1 - 0
resources/setting_visibility/expert.cfg

@@ -249,6 +249,7 @@ cool_fan_full_layer
 cool_min_layer_time
 cool_min_speed
 cool_lift_head
+cool_during_extruder_switch
 
 [support]
 support_enable