From 74c547f94f23e2e9105162fa1ab0c3265126d5e2 Mon Sep 17 00:00:00 2001 From: Bernhard Koppensteiner <36260775+koppensb@users.noreply.github.com> Date: Mon, 22 Dec 2025 15:55:15 +0100 Subject: [PATCH 01/15] Reworked support settings in processes (#11683) * explicitly set the machine_max_junction_deviation * reworked the support settings for all profiles * forgot the bottom interface spacing. set more accurate values * set the wrong value, meant support_bottom_z_distance --- .../profiles/Prusa/machine/Prusa MINIIS 0.4 nozzle.json | 5 ++++- .../profiles/Prusa/machine/Prusa MK3.5 0.4 nozzle.json | 5 ++++- .../profiles/Prusa/process/0.05mm Detail @MINIIS.json | 3 +++ resources/profiles/Prusa/process/0.05mm Detail @MK3.5.json | 2 ++ .../profiles/Prusa/process/0.07mm Detail @MINIIS.json | 4 +++- resources/profiles/Prusa/process/0.07mm Detail @MK3.5.json | 4 +++- resources/profiles/Prusa/process/0.10mm Speed @MINIIS.json | 4 +++- resources/profiles/Prusa/process/0.10mm Speed @MK3.5.json | 4 +++- resources/profiles/Prusa/process/0.12mm Speed @MINIIS.json | 3 ++- resources/profiles/Prusa/process/0.12mm Speed @MK3.5.json | 3 ++- .../profiles/Prusa/process/0.12mm Standard @MINIIS.json | 4 +++- .../profiles/Prusa/process/0.12mm Standard @MK3.5.json | 4 +++- .../profiles/Prusa/process/0.15mm High Flow @MINIIS.json | 3 ++- .../profiles/Prusa/process/0.15mm High Flow @MK3.5.json | 3 ++- .../profiles/Prusa/process/0.15mm Speed @MINIIS 0.25.json | 3 ++- resources/profiles/Prusa/process/0.15mm Speed @MINIIS.json | 3 ++- .../profiles/Prusa/process/0.15mm Speed @MK3.5 0.25.json | 3 ++- resources/profiles/Prusa/process/0.15mm Speed @MK3.5.json | 3 ++- .../Prusa/process/0.15mm Standard @MINIIS 0.25.json | 4 +++- .../Prusa/process/0.15mm Standard @MINIIS 0.6.json | 5 ++++- .../profiles/Prusa/process/0.15mm Standard @MINIIS.json | 3 ++- .../Prusa/process/0.15mm Standard @MK3.5 0.25.json | 4 +++- .../profiles/Prusa/process/0.15mm Standard @MK3.5 0.6.json | 6 +++++- .../profiles/Prusa/process/0.15mm Standard @MK3.5.json | 3 ++- .../Prusa/process/0.20mm High Flow @MINIIS 0.6.json | 7 ++++++- .../Prusa/process/0.20mm High Flow @MK3.5 0.6.json | 7 ++++++- .../profiles/Prusa/process/0.20mm Speed @MINIIS 0.6.json | 7 ++++++- .../profiles/Prusa/process/0.20mm Speed @MK3.5 0.6.json | 7 ++++++- .../Prusa/process/0.20mm Standard @MINIIS 0.6.json | 5 +++++ .../profiles/Prusa/process/0.20mm Standard @MK3.5 0.6.json | 5 +++++ .../profiles/Prusa/process/0.25mm High Flow @MINIIS.json | 6 +++++- .../profiles/Prusa/process/0.25mm High Flow @MK3.5.json | 6 +++++- resources/profiles/Prusa/process/0.25mm Speed @MINIIS.json | 6 +++++- resources/profiles/Prusa/process/0.25mm Speed @MK3.5.json | 6 +++++- .../profiles/Prusa/process/0.25mm Standard @MINIIS.json | 6 +++++- .../profiles/Prusa/process/0.25mm Standard @MK3.5.json | 6 +++++- .../profiles/Prusa/process/0.30mm Detail @MINIIS.json | 4 ++++ resources/profiles/Prusa/process/0.30mm Detail @MK3.5.json | 4 ++++ .../profiles/Prusa/process/0.32mm High Flow @MINIIS.json | 4 ++++ .../profiles/Prusa/process/0.32mm High Flow @MK3.5.json | 4 ++++ .../profiles/Prusa/process/0.32mm Standard @MINIIS.json | 4 ++++ .../profiles/Prusa/process/0.32mm Standard @MK3.5.json | 4 ++++ .../profiles/Prusa/process/0.35mm Standard @MINIIS.json | 6 +++++- .../profiles/Prusa/process/0.35mm Standard @MK3.5.json | 6 +++++- .../profiles/Prusa/process/0.40mm High Flow @MINIIS.json | 4 ++++ .../profiles/Prusa/process/0.40mm High Flow @MK3.5.json | 4 ++++ .../profiles/Prusa/process/0.40mm Standard @MINIIS.json | 4 ++++ .../profiles/Prusa/process/0.40mm Standard @MK3.5.json | 4 ++++ resources/profiles/Prusa/process/process_common_MK3.5.json | 7 +++++-- .../profiles/Prusa/process/process_common_miniis.json | 7 +++++-- 50 files changed, 190 insertions(+), 38 deletions(-) diff --git a/resources/profiles/Prusa/machine/Prusa MINIIS 0.4 nozzle.json b/resources/profiles/Prusa/machine/Prusa MINIIS 0.4 nozzle.json index 6f7bd1649a..b63413d8ce 100644 --- a/resources/profiles/Prusa/machine/Prusa MINIIS 0.4 nozzle.json +++ b/resources/profiles/Prusa/machine/Prusa MINIIS 0.4 nozzle.json @@ -94,6 +94,9 @@ ], "z_hop": [ "0.2" + ], + "machine_max_junction_deviation": [ + "0.01" ], "fan_speedup_time": "0.2", "fan_speedup_overhangs": "1", @@ -102,7 +105,7 @@ "printable_height": "180", "machine_end_gcode": "{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+2, max_print_height)} F720 ; Move print head up{endif}\nG1 X170 Y170 F4200 ; park print head\n{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+50, max_print_height)} F720 ; Move print head further up{endif}\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nM221 S100 ; reset flow\nM572 S0 ; reset PA\nM569 S1 X Y ; reset to stealthchop for X Y\nM84 ; disable motors\n; max_layer_z = [max_layer_z]", "machine_pause_gcode": "M601", - "machine_start_gcode": "M862.3 P \"MINI\" ; printer model check\nM862.1 P[nozzle_diameter] ; nozzle diameter check\nM862.5 P2 ; g-code level check\nM862.6 P\"Input shaper\" ; FW feature check\nM115 U6.0.3+14902\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nG28 ; home all without mesh bed level\nM104 S170 ; set extruder temp for bed leveling\nM140 S[first_layer_bed_temperature] ; set bed temp\nM109 R170 ; wait for bed leveling temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM569 S1 X Y ; set stealthchop for X Y\nM204 T1250 ; set travel acceleration\nG29 ; mesh bed leveling \nM104 S[first_layer_temperature] ; set extruder temp\nG92 E0\n\nG1 X0 Y-2 Z3 F2400\n\nM109 S[first_layer_temperature] ; wait for extruder temp\n\n; intro line\nG1 X10 Z0.2 F1000\nG1 X70 E8 F900\nG1 X140 E10 F700\nG92 E0\n\nM569 S0 X Y ; set spreadcycle for X Y\nM204 T[machine_max_acceleration_travel] ; restore travel acceleration\nM572 W0.06 ; set smooth time\nM221 S95 ; set flow", + "machine_start_gcode": "M862.3 P \"MINI\" ; printer model check\nM862.1 P[nozzle_diameter] ; nozzle diameter check\nM862.5 P2 ; g-code level check\nM862.6 P\"Input shaper\" ; FW feature check\nM115 U6.4.0+11974\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nG28 ; home all without mesh bed level\nM104 S170 ; set extruder temp for bed leveling\nM140 S[first_layer_bed_temperature] ; set bed temp\nM109 R170 ; wait for bed leveling temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM569 S1 X Y ; set stealthchop for X Y\nM204 T1250 ; set travel acceleration\nG29 ; mesh bed leveling \nM104 S[first_layer_temperature] ; set extruder temp\nG92 E0\n\nG1 X0 Y-2 Z3 F2400\n\nM109 S[first_layer_temperature] ; wait for extruder temp\n\n; intro line\nG1 X10 Z0.2 F1000\nG1 X70 E8 F900\nG1 X140 E10 F700\nG92 E0\n\nM569 S0 X Y ; set spreadcycle for X Y\nM204 T[machine_max_acceleration_travel] ; restore travel acceleration\nM572 W0.06 ; set smooth time\nM221 S95 ; set flow", "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0.0\n;[layer_z]\nM201 X{interpolate_table(extruded_weight_total, (0,4000), (1000,1700), (10000,1700))} Y{interpolate_table(extruded_weight_total, (0,4000), (1000,1700), (10000,1700))}", "change_filament_gcode": "M600", "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\n{if ! spiral_mode}M74 W[extruded_weight_total]{endif}\n", diff --git a/resources/profiles/Prusa/machine/Prusa MK3.5 0.4 nozzle.json b/resources/profiles/Prusa/machine/Prusa MK3.5 0.4 nozzle.json index 8d5307d1a8..18576df366 100644 --- a/resources/profiles/Prusa/machine/Prusa MK3.5 0.4 nozzle.json +++ b/resources/profiles/Prusa/machine/Prusa MK3.5 0.4 nozzle.json @@ -95,6 +95,9 @@ "z_hop": [ "0.2" ], + "machine_max_junction_deviation": [ + "0.01" + ], "fan_speedup_time": "0.2", "fan_speedup_overhangs": "1", "fan_kickstart": "0", @@ -102,7 +105,7 @@ "printable_height": "210", "machine_end_gcode": "{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+1, max_print_height)} F720 ; Move print head up{endif}\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nG1 X241 Y201 F3600 ; park\n{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+23, max_print_height)} F300 ; Move print head up{endif}\nG4 ; wait\nM572 S0 ; reset PA\nM593 X T2 F0 ; disable IS\nM593 Y T2 F0 ; disable IS\nM84 X Y E ; disable motors\n; max_layer_z = [max_layer_z]", "machine_pause_gcode": "M601", - "machine_start_gcode": "M17 ; enable steppers\nM862.1 P[nozzle_diameter] ; nozzle diameter check\nM862.3 P \"MK3.5\" ; printer model check\nM862.5 P2 ; g-code level check\nM862.6 P\"Input shaper\" ; FW feature check\nM115 U6.2.2+8853\n\nM555 X{(min(print_bed_max[0], first_layer_print_min[0] + 32) - 32)} Y{(max(0, first_layer_print_min[1]) - 4)} W{((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) - ((min(print_bed_max[0], first_layer_print_min[0] + 32) - 32))} H{((first_layer_print_max[1])) - ((max(0, first_layer_print_min[1]) - 4))}\n\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\n\nG28 ; home all\n\nM140 S[first_layer_bed_temperature] ; set bed temp\nM104 T0 S170 ; set extruder temp for bed leveling\nM109 T0 R170 ; wait for temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\n\nG29 P1 ; invalidate mbl & probe print area\nG29 P1 X23 Y5 W80 H20 C ; probe near purge place\nG29 P3.2 ; interpolate mbl probes\nG29 P3.13 ; extrapolate mbl outside probe area\nG29 A ; activate mbl\n\n; prepare for purge\nM104 S{first_layer_temperature[0]}\nG0 X0 Y-4 Z15 F4800 ; move away and ready for the purge\nM109 S{first_layer_temperature[0]}\n\n; Extrude purge line\n\nG92 E0 ; reset extruder position\nG0 E7 X15 Z0.2 F500 ; purge\nG0 X25 E4 F500 ; purge\nG0 X35 E4 F650 ; purge\nG0 X45 E4 F800 ; purge\nG0 X{45 + 3} Z0.05 F8000 ; wipe, move close to the bed\nG0 X{45 + 3 * 2} Z0.2 F8000 ; wipe, move quickly away from the bed\n\nG92 E0\nM221 S100 ; reset flow to 100%\n", + "machine_start_gcode": "M17 ; enable steppers\nM862.1 P[nozzle_diameter] ; nozzle diameter check\nM862.3 P \"MK3.5\" ; printer model check\nM862.5 P2 ; g-code level check\nM862.6 P\"Input shaper\" ; FW feature check\nM115 U6.4.0+11974\n\nM555 X{(min(print_bed_max[0], first_layer_print_min[0] + 32) - 32)} Y{(max(0, first_layer_print_min[1]) - 4)} W{((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) - ((min(print_bed_max[0], first_layer_print_min[0] + 32) - 32))} H{((first_layer_print_max[1])) - ((max(0, first_layer_print_min[1]) - 4))}\n\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\n\nG28 ; home all\n\nM140 S[first_layer_bed_temperature] ; set bed temp\nM104 T0 S170 ; set extruder temp for bed leveling\nM109 T0 R170 ; wait for temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\n\nG29 P1 ; invalidate mbl & probe print area\nG29 P1 X23 Y5 W80 H20 C ; probe near purge place\nG29 P3.2 ; interpolate mbl probes\nG29 P3.13 ; extrapolate mbl outside probe area\nG29 A ; activate mbl\n\n; prepare for purge\nM104 S{first_layer_temperature[0]}\nG0 X0 Y-4 Z15 F4800 ; move away and ready for the purge\nM109 S{first_layer_temperature[0]}\n\n; Extrude purge line\n\nG92 E0 ; reset extruder position\nG0 E7 X15 Z0.2 F500 ; purge\nG0 X25 E4 F500 ; purge\nG0 X35 E4 F650 ; purge\nG0 X45 E4 F800 ; purge\nG0 X{45 + 3} Z0.05 F8000 ; wipe, move close to the bed\nG0 X{45 + 3 * 2} Z0.2 F8000 ; wipe, move quickly away from the bed\n\nG92 E0\nM221 S100 ; reset flow to 100%\n", "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0.0\n;[layer_z]\nM201 X{interpolate_table(extruded_weight_total, (0,4000), (1400,2500), (10000,2500))} Y{interpolate_table(extruded_weight_total, (0,4000), (1400,2500), (10000,2500))}\n", "change_filament_gcode": "M600", "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\n{if ! spiral_mode}M74 W[extruded_weight_total]{endif}\n", diff --git a/resources/profiles/Prusa/process/0.05mm Detail @MINIIS.json b/resources/profiles/Prusa/process/0.05mm Detail @MINIIS.json index 9f2b524b57..6298c71d49 100644 --- a/resources/profiles/Prusa/process/0.05mm Detail @MINIIS.json +++ b/resources/profiles/Prusa/process/0.05mm Detail @MINIIS.json @@ -19,6 +19,9 @@ "top_shell_layers": "13", "bottom_shell_thickness": "0.5", "bottom_shell_layers": "10", + "support_base_pattern_spacing": "1", + "support_top_z_distance": "0.09", + "support_bottom_z_distance": "0.09", "compatible_printers": [ "Prusa MINIIS 0.25 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.05mm Detail @MK3.5.json b/resources/profiles/Prusa/process/0.05mm Detail @MK3.5.json index 9f82ceb6eb..a9a79b47a1 100644 --- a/resources/profiles/Prusa/process/0.05mm Detail @MK3.5.json +++ b/resources/profiles/Prusa/process/0.05mm Detail @MK3.5.json @@ -19,7 +19,9 @@ "top_shell_layers": "13", "bottom_shell_thickness": "0.5", "bottom_shell_layers": "10", + "support_base_pattern_spacing": "1", "support_top_z_distance": "0.09", + "support_bottom_z_distance": "0.09", "compatible_printers": [ "Prusa MK3.5 0.25 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.07mm Detail @MINIIS.json b/resources/profiles/Prusa/process/0.07mm Detail @MINIIS.json index 9217fc2f00..63d1757fd0 100644 --- a/resources/profiles/Prusa/process/0.07mm Detail @MINIIS.json +++ b/resources/profiles/Prusa/process/0.07mm Detail @MINIIS.json @@ -21,7 +21,9 @@ "bottom_shell_layers": "8", "bridge_speed": "30", "internal_solid_infill_speed": "140", - "support_top_z_distance": "0.1", + "support_base_pattern_spacing": "1", + "support_top_z_distance": "0.09", + "support_bottom_z_distance": "0.09", "compatible_printers": [ "Prusa MINIIS 0.25 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.07mm Detail @MK3.5.json b/resources/profiles/Prusa/process/0.07mm Detail @MK3.5.json index 6fc9c6886c..eb90dc1922 100644 --- a/resources/profiles/Prusa/process/0.07mm Detail @MK3.5.json +++ b/resources/profiles/Prusa/process/0.07mm Detail @MK3.5.json @@ -21,7 +21,9 @@ "bottom_shell_layers": "8", "bridge_speed": "30", "internal_solid_infill_speed": "140", - "support_top_z_distance": "0.1", + "support_base_pattern_spacing": "1", + "support_top_z_distance": "0.09", + "support_bottom_z_distance": "0.09", "compatible_printers": [ "Prusa MK3.5 0.25 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.10mm Speed @MINIIS.json b/resources/profiles/Prusa/process/0.10mm Speed @MINIIS.json index b8107625fa..6a87714bb0 100644 --- a/resources/profiles/Prusa/process/0.10mm Speed @MINIIS.json +++ b/resources/profiles/Prusa/process/0.10mm Speed @MINIIS.json @@ -24,7 +24,9 @@ "internal_solid_infill_acceleration": "3000", "inner_wall_acceleration": "2000", "outer_wall_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.17", + "support_bottom_z_distance": "0.17", "compatible_printers": [ "Prusa MINIIS 0.4 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.10mm Speed @MK3.5.json b/resources/profiles/Prusa/process/0.10mm Speed @MK3.5.json index 92d201b8e1..7327e51e82 100644 --- a/resources/profiles/Prusa/process/0.10mm Speed @MK3.5.json +++ b/resources/profiles/Prusa/process/0.10mm Speed @MK3.5.json @@ -24,7 +24,9 @@ "internal_solid_infill_acceleration": "3000", "inner_wall_acceleration": "2000", "outer_wall_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.17", + "support_bottom_z_distance": "0.17", "compatible_printers": [ "Prusa MK3.5 0.4 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.12mm Speed @MINIIS.json b/resources/profiles/Prusa/process/0.12mm Speed @MINIIS.json index e8518fdb25..c4d772993f 100644 --- a/resources/profiles/Prusa/process/0.12mm Speed @MINIIS.json +++ b/resources/profiles/Prusa/process/0.12mm Speed @MINIIS.json @@ -31,7 +31,8 @@ "overhang_1_4_speed": "60", "internal_solid_infill_acceleration": "2500", "sparse_infill_acceleration": "2500", - "support_top_z_distance": "0.1", + "support_top_z_distance": "0.09", + "support_bottom_z_distance": "0.09", "compatible_printers": [ "Prusa MINIIS 0.25 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.12mm Speed @MK3.5.json b/resources/profiles/Prusa/process/0.12mm Speed @MK3.5.json index abaef8f727..76ce6b9221 100644 --- a/resources/profiles/Prusa/process/0.12mm Speed @MK3.5.json +++ b/resources/profiles/Prusa/process/0.12mm Speed @MK3.5.json @@ -31,7 +31,8 @@ "overhang_1_4_speed": "60", "internal_solid_infill_acceleration": "2500", "sparse_infill_acceleration": "2500", - "support_top_z_distance": "0.1", + "support_top_z_distance": "0.09", + "support_bottom_z_distance": "0.09", "compatible_printers": [ "Prusa MK3.5 0.25 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.12mm Standard @MINIIS.json b/resources/profiles/Prusa/process/0.12mm Standard @MINIIS.json index f0d03268c4..72175e280d 100644 --- a/resources/profiles/Prusa/process/0.12mm Standard @MINIIS.json +++ b/resources/profiles/Prusa/process/0.12mm Standard @MINIIS.json @@ -36,7 +36,9 @@ "internal_solid_infill_acceleration": "2500", "sparse_infill_acceleration": "2500", "travel_acceleration": "3000", - "support_top_z_distance": "0.1", + "support_base_pattern_spacing": "1", + "support_top_z_distance": "0.09", + "support_bottom_z_distance": "0.09", "compatible_printers": [ "Prusa MINIIS 0.25 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.12mm Standard @MK3.5.json b/resources/profiles/Prusa/process/0.12mm Standard @MK3.5.json index 6099147be4..8f4b41b380 100644 --- a/resources/profiles/Prusa/process/0.12mm Standard @MK3.5.json +++ b/resources/profiles/Prusa/process/0.12mm Standard @MK3.5.json @@ -36,7 +36,9 @@ "internal_solid_infill_acceleration": "2500", "sparse_infill_acceleration": "2500", "travel_acceleration": "3000", - "support_top_z_distance": "0.1", + "support_base_pattern_spacing": "1", + "support_top_z_distance": "0.09", + "support_bottom_z_distance": "0.09", "compatible_printers": [ "Prusa MK3.5 0.25 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.15mm High Flow @MINIIS.json b/resources/profiles/Prusa/process/0.15mm High Flow @MINIIS.json index 58a8211986..81711734a1 100644 --- a/resources/profiles/Prusa/process/0.15mm High Flow @MINIIS.json +++ b/resources/profiles/Prusa/process/0.15mm High Flow @MINIIS.json @@ -29,7 +29,8 @@ "inner_wall_acceleration": "3500", "outer_wall_acceleration": "2500", "bridge_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_top_z_distance": "0.17", + "support_bottom_z_distance": "0.17", "compatible_printers": [ "Prusa MINIIS 0.4 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.15mm High Flow @MK3.5.json b/resources/profiles/Prusa/process/0.15mm High Flow @MK3.5.json index 92db093a4c..a3ecfea49b 100644 --- a/resources/profiles/Prusa/process/0.15mm High Flow @MK3.5.json +++ b/resources/profiles/Prusa/process/0.15mm High Flow @MK3.5.json @@ -29,7 +29,8 @@ "inner_wall_acceleration": "3500", "outer_wall_acceleration": "2500", "bridge_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_top_z_distance": "0.17", + "support_bottom_z_distance": "0.17", "compatible_printers": [ "Prusa MK3.5 0.4 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.15mm Speed @MINIIS 0.25.json b/resources/profiles/Prusa/process/0.15mm Speed @MINIIS 0.25.json index 30d9a165d5..3aa3019d76 100644 --- a/resources/profiles/Prusa/process/0.15mm Speed @MINIIS 0.25.json +++ b/resources/profiles/Prusa/process/0.15mm Speed @MINIIS 0.25.json @@ -29,7 +29,8 @@ "internal_solid_infill_acceleration": "2500", "inner_wall_acceleration": "2000", "outer_wall_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_top_z_distance": "0.09", + "support_bottom_z_distance": "0.09", "compatible_printers": [ "Prusa MINIIS 0.25 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.15mm Speed @MINIIS.json b/resources/profiles/Prusa/process/0.15mm Speed @MINIIS.json index 853e0e01e6..6f6a9cffcd 100644 --- a/resources/profiles/Prusa/process/0.15mm Speed @MINIIS.json +++ b/resources/profiles/Prusa/process/0.15mm Speed @MINIIS.json @@ -29,7 +29,8 @@ "internal_solid_infill_acceleration": "2500", "inner_wall_acceleration": "2000", "outer_wall_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_top_z_distance": "0.17", + "support_bottom_z_distance": "0.17", "compatible_printers": [ "Prusa MINIIS 0.4 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.15mm Speed @MK3.5 0.25.json b/resources/profiles/Prusa/process/0.15mm Speed @MK3.5 0.25.json index 09c562d356..e322f1ce63 100644 --- a/resources/profiles/Prusa/process/0.15mm Speed @MK3.5 0.25.json +++ b/resources/profiles/Prusa/process/0.15mm Speed @MK3.5 0.25.json @@ -29,7 +29,8 @@ "internal_solid_infill_acceleration": "2500", "inner_wall_acceleration": "2000", "outer_wall_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_top_z_distance": "0.09", + "support_bottom_interface_spacing": "0.09", "compatible_printers": [ "Prusa MK3.5 0.25 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.15mm Speed @MK3.5.json b/resources/profiles/Prusa/process/0.15mm Speed @MK3.5.json index 175c896845..31eb1443bb 100644 --- a/resources/profiles/Prusa/process/0.15mm Speed @MK3.5.json +++ b/resources/profiles/Prusa/process/0.15mm Speed @MK3.5.json @@ -29,7 +29,8 @@ "inner_wall_acceleration": "2000", "outer_wall_acceleration": "1500", "bridge_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_top_z_distance": "0.17", + "support_bottom_interface_spacing": "0.17", "compatible_printers": [ "Prusa MK3.5 0.4 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.15mm Standard @MINIIS 0.25.json b/resources/profiles/Prusa/process/0.15mm Standard @MINIIS 0.25.json index b6fe166ce1..362ed653d2 100644 --- a/resources/profiles/Prusa/process/0.15mm Standard @MINIIS 0.25.json +++ b/resources/profiles/Prusa/process/0.15mm Standard @MINIIS 0.25.json @@ -29,7 +29,9 @@ "internal_solid_infill_acceleration": "2500", "inner_wall_acceleration": "2000", "outer_wall_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_base_pattern_spacing": "1", + "support_top_z_distance": "0.09", + "support_bottom_z_distance": "0.09", "compatible_printers": [ "Prusa MINIIS 0.25 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.15mm Standard @MINIIS 0.6.json b/resources/profiles/Prusa/process/0.15mm Standard @MINIIS 0.6.json index 606e52ecb7..5cd6746563 100644 --- a/resources/profiles/Prusa/process/0.15mm Standard @MINIIS 0.6.json +++ b/resources/profiles/Prusa/process/0.15mm Standard @MINIIS 0.6.json @@ -37,7 +37,10 @@ "inner_wall_acceleration": "2500", "outer_wall_acceleration": "1500", "bridge_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.25", + "support_bottom_z_distance": "0.25", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MINIIS 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.15mm Standard @MINIIS.json b/resources/profiles/Prusa/process/0.15mm Standard @MINIIS.json index 3f1a5c6825..d61a785155 100644 --- a/resources/profiles/Prusa/process/0.15mm Standard @MINIIS.json +++ b/resources/profiles/Prusa/process/0.15mm Standard @MINIIS.json @@ -33,7 +33,8 @@ "inner_wall_acceleration": "2000", "outer_wall_acceleration": "1500", "bridge_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_top_z_distance": "0.17", + "support_bottom_z_distance": "0.17", "compatible_printers": [ "Prusa MINIIS 0.4 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.15mm Standard @MK3.5 0.25.json b/resources/profiles/Prusa/process/0.15mm Standard @MK3.5 0.25.json index eca3cdad8c..3d55cc1e39 100644 --- a/resources/profiles/Prusa/process/0.15mm Standard @MK3.5 0.25.json +++ b/resources/profiles/Prusa/process/0.15mm Standard @MK3.5 0.25.json @@ -29,7 +29,9 @@ "internal_solid_infill_acceleration": "2500", "inner_wall_acceleration": "2000", "outer_wall_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_base_pattern_spacing": "1", + "support_top_z_distance": "0.09", + "support_bottom_z_distance": "0.09", "compatible_printers": [ "Prusa MK3.5 0.25 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.15mm Standard @MK3.5 0.6.json b/resources/profiles/Prusa/process/0.15mm Standard @MK3.5 0.6.json index 6c6a80a261..c0087d57ea 100644 --- a/resources/profiles/Prusa/process/0.15mm Standard @MK3.5 0.6.json +++ b/resources/profiles/Prusa/process/0.15mm Standard @MK3.5 0.6.json @@ -37,7 +37,11 @@ "inner_wall_acceleration": "2500", "outer_wall_acceleration": "1500", "bridge_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MK3.5 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.15mm Standard @MK3.5.json b/resources/profiles/Prusa/process/0.15mm Standard @MK3.5.json index 4044df4712..e6161e5896 100644 --- a/resources/profiles/Prusa/process/0.15mm Standard @MK3.5.json +++ b/resources/profiles/Prusa/process/0.15mm Standard @MK3.5.json @@ -28,7 +28,8 @@ "internal_solid_infill_acceleration": "2500", "inner_wall_acceleration": "2000", "outer_wall_acceleration": "1500", - "support_top_z_distance": "0.1", + "support_top_z_distance": "0.17", + "support_bottom_z_distance": "0.17", "compatible_printers": [ "Prusa MK3.5 0.4 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.20mm High Flow @MINIIS 0.6.json b/resources/profiles/Prusa/process/0.20mm High Flow @MINIIS 0.6.json index aeca348889..15363df16c 100644 --- a/resources/profiles/Prusa/process/0.20mm High Flow @MINIIS 0.6.json +++ b/resources/profiles/Prusa/process/0.20mm High Flow @MINIIS 0.6.json @@ -36,5 +36,10 @@ "outer_wall_acceleration": "4000", "bridge_acceleration": "1500", "internal_solid_infill_acceleration": "3000", - "overhang_1_4_speed": "45" + "overhang_1_4_speed": "45", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.20mm High Flow @MK3.5 0.6.json b/resources/profiles/Prusa/process/0.20mm High Flow @MK3.5 0.6.json index 2aa0d96b93..c9056822db 100644 --- a/resources/profiles/Prusa/process/0.20mm High Flow @MK3.5 0.6.json +++ b/resources/profiles/Prusa/process/0.20mm High Flow @MK3.5 0.6.json @@ -36,5 +36,10 @@ "outer_wall_acceleration": "4000", "bridge_acceleration": "1500", "internal_solid_infill_acceleration": "3000", - "overhang_1_4_speed": "45" + "overhang_1_4_speed": "45", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.20mm Speed @MINIIS 0.6.json b/resources/profiles/Prusa/process/0.20mm Speed @MINIIS 0.6.json index 2e2cb971fe..29f9977358 100644 --- a/resources/profiles/Prusa/process/0.20mm Speed @MINIIS 0.6.json +++ b/resources/profiles/Prusa/process/0.20mm Speed @MINIIS 0.6.json @@ -34,5 +34,10 @@ "outer_wall_acceleration": "2000", "bridge_acceleration": "1500", "internal_solid_infill_acceleration": "3000", - "overhang_1_4_speed": "45" + "overhang_1_4_speed": "45", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.20mm Speed @MK3.5 0.6.json b/resources/profiles/Prusa/process/0.20mm Speed @MK3.5 0.6.json index fb256ecc05..79c38ffeea 100644 --- a/resources/profiles/Prusa/process/0.20mm Speed @MK3.5 0.6.json +++ b/resources/profiles/Prusa/process/0.20mm Speed @MK3.5 0.6.json @@ -34,5 +34,10 @@ "outer_wall_acceleration": "2000", "bridge_acceleration": "1500", "internal_solid_infill_acceleration": "3000", - "overhang_1_4_speed": "45" + "overhang_1_4_speed": "45", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.20mm Standard @MINIIS 0.6.json b/resources/profiles/Prusa/process/0.20mm Standard @MINIIS 0.6.json index 6ed283fa8c..d27e89b756 100644 --- a/resources/profiles/Prusa/process/0.20mm Standard @MINIIS 0.6.json +++ b/resources/profiles/Prusa/process/0.20mm Standard @MINIIS 0.6.json @@ -29,6 +29,11 @@ "bridge_acceleration": "1500", "internal_solid_infill_acceleration": "3000", "overhang_1_4_speed": "45", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MINIIS 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.20mm Standard @MK3.5 0.6.json b/resources/profiles/Prusa/process/0.20mm Standard @MK3.5 0.6.json index f6e1946a04..e4b4f4b5d1 100644 --- a/resources/profiles/Prusa/process/0.20mm Standard @MK3.5 0.6.json +++ b/resources/profiles/Prusa/process/0.20mm Standard @MK3.5 0.6.json @@ -29,6 +29,11 @@ "bridge_acceleration": "1500", "internal_solid_infill_acceleration": "3000", "overhang_1_4_speed": "45", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MK3.5 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.25mm High Flow @MINIIS.json b/resources/profiles/Prusa/process/0.25mm High Flow @MINIIS.json index 4521f5fbb1..f1784af6c5 100644 --- a/resources/profiles/Prusa/process/0.25mm High Flow @MINIIS.json +++ b/resources/profiles/Prusa/process/0.25mm High Flow @MINIIS.json @@ -40,7 +40,11 @@ "bridge_acceleration": "1500", "internal_solid_infill_acceleration": "3000", "overhang_1_4_speed": "45", - "support_top_z_distance": "0.25", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MINIIS 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.25mm High Flow @MK3.5.json b/resources/profiles/Prusa/process/0.25mm High Flow @MK3.5.json index 00faf7f563..0cb9257ddf 100644 --- a/resources/profiles/Prusa/process/0.25mm High Flow @MK3.5.json +++ b/resources/profiles/Prusa/process/0.25mm High Flow @MK3.5.json @@ -40,7 +40,11 @@ "bridge_acceleration": "1500", "internal_solid_infill_acceleration": "3000", "overhang_1_4_speed": "45", - "support_top_z_distance": "0.25", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MK3.5 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.25mm Speed @MINIIS.json b/resources/profiles/Prusa/process/0.25mm Speed @MINIIS.json index c5085cbf7c..33e3de92dc 100644 --- a/resources/profiles/Prusa/process/0.25mm Speed @MINIIS.json +++ b/resources/profiles/Prusa/process/0.25mm Speed @MINIIS.json @@ -30,7 +30,11 @@ "overhang_1_4_speed": "45", "travel_speed": "300", "internal_solid_infill_acceleration": "3000", - "support_top_z_distance": "0.25", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MINIIS 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.25mm Speed @MK3.5.json b/resources/profiles/Prusa/process/0.25mm Speed @MK3.5.json index 6dec0d7f5c..7ebe2664ef 100644 --- a/resources/profiles/Prusa/process/0.25mm Speed @MK3.5.json +++ b/resources/profiles/Prusa/process/0.25mm Speed @MK3.5.json @@ -30,7 +30,11 @@ "overhang_1_4_speed": "45", "travel_speed": "300", "internal_solid_infill_acceleration": "3000", - "support_top_z_distance": "0.25", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MK3.5 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.25mm Standard @MINIIS.json b/resources/profiles/Prusa/process/0.25mm Standard @MINIIS.json index e98b851fc4..4191366100 100644 --- a/resources/profiles/Prusa/process/0.25mm Standard @MINIIS.json +++ b/resources/profiles/Prusa/process/0.25mm Standard @MINIIS.json @@ -29,7 +29,11 @@ "gap_infill_speed": "60", "support_speed": "80", "travel_speed": "300", - "support_top_z_distance": "0.25", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MINIIS 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.25mm Standard @MK3.5.json b/resources/profiles/Prusa/process/0.25mm Standard @MK3.5.json index e9c0451d61..64e099d97e 100644 --- a/resources/profiles/Prusa/process/0.25mm Standard @MK3.5.json +++ b/resources/profiles/Prusa/process/0.25mm Standard @MK3.5.json @@ -29,7 +29,11 @@ "gap_infill_speed": "60", "support_speed": "80", "travel_speed": "300", - "support_top_z_distance": "0.25", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MK3.5 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.30mm Detail @MINIIS.json b/resources/profiles/Prusa/process/0.30mm Detail @MINIIS.json index 90a7a28fb8..dcc20a87bd 100644 --- a/resources/profiles/Prusa/process/0.30mm Detail @MINIIS.json +++ b/resources/profiles/Prusa/process/0.30mm Detail @MINIIS.json @@ -21,7 +21,11 @@ "bottom_shell_thickness": "0.5", "bottom_shell_layers": "2", "travel_speed": "300", + "support_base_pattern_spacing": "2", "support_top_z_distance": "0.25", + "support_bottom_z_distance": "0.25", + "support_bottom_interface_spacing": "0.25", + "support_interface_spacing": "0.35", "compatible_printers": [ "Prusa MINIIS 0.8 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.30mm Detail @MK3.5.json b/resources/profiles/Prusa/process/0.30mm Detail @MK3.5.json index 7d4ed7d622..975851d38f 100644 --- a/resources/profiles/Prusa/process/0.30mm Detail @MK3.5.json +++ b/resources/profiles/Prusa/process/0.30mm Detail @MK3.5.json @@ -21,7 +21,11 @@ "bottom_shell_thickness": "0.5", "bottom_shell_layers": "2", "travel_speed": "300", + "support_base_pattern_spacing": "2", "support_top_z_distance": "0.25", + "support_bottom_z_distance": "0.25", + "support_bottom_interface_spacing": "0.25", + "support_interface_spacing": "0.35", "compatible_printers": [ "Prusa MK3.5 0.8 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.32mm High Flow @MINIIS.json b/resources/profiles/Prusa/process/0.32mm High Flow @MINIIS.json index a1fbbc989f..7602017ccd 100644 --- a/resources/profiles/Prusa/process/0.32mm High Flow @MINIIS.json +++ b/resources/profiles/Prusa/process/0.32mm High Flow @MINIIS.json @@ -37,7 +37,11 @@ "outer_wall_acceleration": "4000", "bridge_acceleration": "1500", "internal_solid_infill_acceleration": "3000", + "support_base_pattern_spacing": "2", "support_top_z_distance": "0.25", + "support_bottom_z_distance": "0.25", + "support_bottom_interface_spacing": "0.25", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MINIIS 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.32mm High Flow @MK3.5.json b/resources/profiles/Prusa/process/0.32mm High Flow @MK3.5.json index 43a0733ac4..b295a0b1b3 100644 --- a/resources/profiles/Prusa/process/0.32mm High Flow @MK3.5.json +++ b/resources/profiles/Prusa/process/0.32mm High Flow @MK3.5.json @@ -39,7 +39,11 @@ "outer_wall_acceleration": "4000", "bridge_acceleration": "1500", "internal_solid_infill_acceleration": "3000", + "support_base_pattern_spacing": "2", "support_top_z_distance": "0.25", + "support_bottom_z_distance": "0.25", + "support_bottom_interface_spacing": "0.25", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MK3.5 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.32mm Standard @MINIIS.json b/resources/profiles/Prusa/process/0.32mm Standard @MINIIS.json index 411a870db7..c1edeeb9eb 100644 --- a/resources/profiles/Prusa/process/0.32mm Standard @MINIIS.json +++ b/resources/profiles/Prusa/process/0.32mm Standard @MINIIS.json @@ -30,7 +30,11 @@ "top_surface_speed": "55", "gap_infill_speed": "45", "travel_speed": "300", + "support_base_pattern_spacing": "2", "support_top_z_distance": "0.25", + "support_bottom_z_distance": "0.25", + "support_bottom_interface_spacing": "0.25", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MINIIS 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.32mm Standard @MK3.5.json b/resources/profiles/Prusa/process/0.32mm Standard @MK3.5.json index 1f4001c0fb..5674aed58e 100644 --- a/resources/profiles/Prusa/process/0.32mm Standard @MK3.5.json +++ b/resources/profiles/Prusa/process/0.32mm Standard @MK3.5.json @@ -30,7 +30,11 @@ "top_surface_speed": "55", "gap_infill_speed": "45", "travel_speed": "300", + "support_base_pattern_spacing": "2", "support_top_z_distance": "0.25", + "support_bottom_z_distance": "0.25", + "support_bottom_interface_spacing": "0.25", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MK3.5 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.35mm Standard @MINIIS.json b/resources/profiles/Prusa/process/0.35mm Standard @MINIIS.json index bb7145adc8..edc3044976 100644 --- a/resources/profiles/Prusa/process/0.35mm Standard @MINIIS.json +++ b/resources/profiles/Prusa/process/0.35mm Standard @MINIIS.json @@ -30,7 +30,11 @@ "top_surface_speed": "55", "gap_infill_speed": "45", "travel_speed": "300", - "support_top_z_distance": "0.25", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MINIIS 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.35mm Standard @MK3.5.json b/resources/profiles/Prusa/process/0.35mm Standard @MK3.5.json index 9ff6c800c2..82e2034788 100644 --- a/resources/profiles/Prusa/process/0.35mm Standard @MK3.5.json +++ b/resources/profiles/Prusa/process/0.35mm Standard @MK3.5.json @@ -30,7 +30,11 @@ "top_surface_speed": "55", "gap_infill_speed": "45", "travel_speed": "300", - "support_top_z_distance": "0.25", + "support_base_pattern_spacing": "2", + "support_top_z_distance": "0.22", + "support_bottom_z_distance": "0.22", + "support_bottom_interface_spacing": "0.22", + "support_interface_spacing": "0.25", "compatible_printers": [ "Prusa MK3.5 0.6 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.40mm High Flow @MINIIS.json b/resources/profiles/Prusa/process/0.40mm High Flow @MINIIS.json index 593fda4beb..ea55022d19 100644 --- a/resources/profiles/Prusa/process/0.40mm High Flow @MINIIS.json +++ b/resources/profiles/Prusa/process/0.40mm High Flow @MINIIS.json @@ -41,7 +41,11 @@ "inner_wall_acceleration": "3000", "outer_wall_acceleration": "2500", "bridge_acceleration": "1000", + "support_base_pattern_spacing": "2", "support_top_z_distance": "0.25", + "support_bottom_z_distance": "0.25", + "support_bottom_interface_spacing": "0.25", + "support_interface_spacing": "0.35", "compatible_printers": [ "Prusa MINIIS 0.8 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.40mm High Flow @MK3.5.json b/resources/profiles/Prusa/process/0.40mm High Flow @MK3.5.json index 056c8cb2be..79fda27a93 100644 --- a/resources/profiles/Prusa/process/0.40mm High Flow @MK3.5.json +++ b/resources/profiles/Prusa/process/0.40mm High Flow @MK3.5.json @@ -41,7 +41,11 @@ "inner_wall_acceleration": "3000", "outer_wall_acceleration": "2500", "bridge_acceleration": "1000", + "support_base_pattern_spacing": "2", "support_top_z_distance": "0.25", + "support_bottom_z_distance": "0.25", + "support_bottom_interface_spacing": "0.25", + "support_interface_spacing": "0.35", "compatible_printers": [ "Prusa MK3.5 0.8 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.40mm Standard @MINIIS.json b/resources/profiles/Prusa/process/0.40mm Standard @MINIIS.json index c040568d16..a29bbbdbbe 100644 --- a/resources/profiles/Prusa/process/0.40mm Standard @MINIIS.json +++ b/resources/profiles/Prusa/process/0.40mm Standard @MINIIS.json @@ -40,7 +40,11 @@ "inner_wall_acceleration": "2000", "outer_wall_acceleration": "1500", "bridge_acceleration": "1000", + "support_base_pattern_spacing": "2", "support_top_z_distance": "0.25", + "support_bottom_z_distance": "0.25", + "support_bottom_interface_spacing": "0.25", + "support_interface_spacing": "0.35", "compatible_printers": [ "Prusa MINIIS 0.8 nozzle" ] diff --git a/resources/profiles/Prusa/process/0.40mm Standard @MK3.5.json b/resources/profiles/Prusa/process/0.40mm Standard @MK3.5.json index 31fddc238b..41659260f1 100644 --- a/resources/profiles/Prusa/process/0.40mm Standard @MK3.5.json +++ b/resources/profiles/Prusa/process/0.40mm Standard @MK3.5.json @@ -41,7 +41,11 @@ "inner_wall_acceleration": "2000", "outer_wall_acceleration": "1500", "bridge_acceleration": "1000", + "support_base_pattern_spacing": "2", "support_top_z_distance": "0.25", + "support_bottom_z_distance": "0.25", + "support_bottom_interface_spacing": "0.25", + "support_interface_spacing": "0.35", "compatible_printers": [ "Prusa MK3.5 0.8 nozzle" ] diff --git a/resources/profiles/Prusa/process/process_common_MK3.5.json b/resources/profiles/Prusa/process/process_common_MK3.5.json index a5471d2bf6..4873772bf7 100644 --- a/resources/profiles/Prusa/process/process_common_MK3.5.json +++ b/resources/profiles/Prusa/process/process_common_MK3.5.json @@ -55,10 +55,13 @@ "raft_contact_distance": "0.15", "raft_expansion": "1.5", "raft_first_layer_density": "90%", - "raft_first_layer_expansion": "3.5", "support_threshold_angle": "40", "support_interface_bottom_layers": "0", "support_base_pattern": "rectilinear", "support_interface_top_layers": "3", - "support_top_z_distance": "0.17" + "raft_first_layer_expansion": "3", + "support_base_pattern_spacing": "2", + "support_bottom_interface_spacing": "0.2", + "support_interface_spacing": "0.2", + "support_top_z_distance": "0.2" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/process_common_miniis.json b/resources/profiles/Prusa/process/process_common_miniis.json index 443fae9dc3..533d660224 100644 --- a/resources/profiles/Prusa/process/process_common_miniis.json +++ b/resources/profiles/Prusa/process/process_common_miniis.json @@ -55,10 +55,13 @@ "raft_contact_distance": "0.15", "raft_expansion": "1.5", "raft_first_layer_density": "90%", - "raft_first_layer_expansion": "3.5", "support_threshold_angle": "40", "support_interface_bottom_layers": "0", "support_base_pattern": "rectilinear", "support_interface_top_layers": "3", - "support_top_z_distance": "0.17" + "raft_first_layer_expansion": "3", + "support_base_pattern_spacing": "2", + "support_bottom_interface_spacing": "0.2", + "support_interface_spacing": "0.2", + "support_top_z_distance": "0.2" } \ No newline at end of file From b30d7fb0fa6ff243037a060d4e562efd5bd3ce18 Mon Sep 17 00:00:00 2001 From: scaiper Date: Mon, 22 Dec 2025 16:41:50 +0100 Subject: [PATCH 02/15] fix probe count for adaptive bed mesh (#11491) fix probe_count in adaptive bed mesh --- src/libslic3r/GCode.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index e3ad309b02..048a428e40 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -2727,8 +2727,8 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato auto probe_dist_x = std::max(1., m_config.bed_mesh_probe_distance.value.x()); auto probe_dist_y = std::max(1., m_config.bed_mesh_probe_distance.value.y()); - int probe_count_x = std::max(3, (int) std::ceil(mesh_bbox.size().x() / probe_dist_x)); - int probe_count_y = std::max(3, (int) std::ceil(mesh_bbox.size().y() / probe_dist_y)); + int probe_count_x = std::max(3, (int) std::ceil(mesh_bbox.size().x() / probe_dist_x) + 1); + int probe_count_y = std::max(3, (int) std::ceil(mesh_bbox.size().y() / probe_dist_y) + 1); auto bed_mesh_algo = "bicubic"; if (probe_count_x * probe_count_y <= 6) { // lagrange needs up to a total of 6 mesh points bed_mesh_algo = "lagrange"; From 8e9daad2e857572ac053951a281b4ff3ad10800c Mon Sep 17 00:00:00 2001 From: Kiss Lorand <50251547+kisslorand@users.noreply.github.com> Date: Mon, 22 Dec 2025 17:47:15 +0200 Subject: [PATCH 03/15] Fix: Misaligned undo icons across all field types (#11431) Align undo icons --- src/slic3r/GUI/OG_CustomCtrl.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/slic3r/GUI/OG_CustomCtrl.cpp b/src/slic3r/GUI/OG_CustomCtrl.cpp index 8be287fd3d..331d4a5db8 100644 --- a/src/slic3r/GUI/OG_CustomCtrl.cpp +++ b/src/slic3r/GUI/OG_CustomCtrl.cpp @@ -53,7 +53,7 @@ OG_CustomCtrl::OG_CustomCtrl( wxWindow* parent, // BBS: new font m_font = Label::Body_14; SetFont(m_font); - m_em_unit = em_unit(m_parent); + m_em_unit = em_unit(m_parent); m_v_gap = lround(1.2 * m_em_unit); m_v_gap2 = lround(0.8 * m_em_unit); m_h_gap = lround(0.2 * m_em_unit); @@ -597,7 +597,7 @@ void OG_CustomCtrl::msw_rescale() SetFont(m_font); m_em_unit = em_unit(m_parent); m_v_gap = lround(1.2 * m_em_unit); - m_v_gap2 = lround(0.8 * m_em_unit); + m_v_gap2 = lround(0.8 * m_em_unit); m_h_gap = lround(0.2 * m_em_unit); //m_bmp_mode_sz = create_scaled_bitmap("mode_simple", this, wxOSX ? 10 : 12).GetSize(); @@ -992,7 +992,7 @@ wxPoint OG_CustomCtrl::CtrlLine::draw_act_bmps(wxDC& dc, wxPoint pos, const wxBi pos.y += lround((height - get_bitmap_size(bmp_undo).GetHeight()) / 2); } #endif - wxCoord h_pos = pos.x; + wxCoord h_pos = pos.x - ctrl->m_h_gap; // Orca: adjust position to the left wxCoord v_pos = pos.y; #ifndef DISABLE_UNDO_SYS From e69daea3c3f13e52932f220197a6cbbc474691fb Mon Sep 17 00:00:00 2001 From: Noisyfox Date: Tue, 23 Dec 2025 00:17:32 +0800 Subject: [PATCH 04/15] Fix filament override checkbox not update after click (#11517) * Fix filament override checkbox not update after click * Event args should be references otherwise `e.skip()` won't work * Fix bool option override --- src/slic3r/GUI/GUI.cpp | 7 ++++++- src/slic3r/GUI/Tab.cpp | 24 +++++++++++++----------- 2 files changed, 19 insertions(+), 12 deletions(-) diff --git a/src/slic3r/GUI/GUI.cpp b/src/slic3r/GUI/GUI.cpp index ce0c24d08a..d133720c7e 100644 --- a/src/slic3r/GUI/GUI.cpp +++ b/src/slic3r/GUI/GUI.cpp @@ -108,7 +108,12 @@ void change_opt_value(DynamicPrintConfig& config, const t_config_option_key& opt try{ if (config.def()->get(opt_key)->type == coBools && config.def()->get(opt_key)->nullable) { - auto vec_new = std::make_unique(1, boost::any_cast(value) ); + const auto v = boost::any_cast(value); + auto vec_new = std::make_unique(1, v); + if (v == ConfigOptionBoolsNullable::nil_value()) { + vec_new->set_at_to_nil(0); + } + config.option(opt_key)->set_at(vec_new.get(), opt_index, 0); return; } diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp index 1f3d73751b..b016327b2a 100644 --- a/src/slic3r/GUI/Tab.cpp +++ b/src/slic3r/GUI/Tab.cpp @@ -353,9 +353,9 @@ void Tab::create_preset_tab() }); - m_undo_btn->Bind(wxEVT_BUTTON, ([this](wxCommandEvent) { on_roll_back_value(); })); - //m_undo_to_sys_btn->Bind(wxEVT_BUTTON, ([this](wxCommandEvent) { on_roll_back_value(true); })); - /* m_search_btn->Bind(wxEVT_BUTTON, [](wxCommandEvent) { wxGetApp().plater()->search(false); });*/ + m_undo_btn->Bind(wxEVT_BUTTON, ([this](wxCommandEvent&) { on_roll_back_value(); })); + //m_undo_to_sys_btn->Bind(wxEVT_BUTTON, ([this](wxCommandEvent&) { on_roll_back_value(true); })); + /* m_search_btn->Bind(wxEVT_BUTTON, [](wxCommandEvent&) { wxGetApp().plater()->search(false); });*/ // Colors for ui "decoration" m_sys_label_clr = wxGetApp().get_label_clr_sys(); @@ -540,14 +540,14 @@ void Tab::create_preset_tab() m_hsizer->Add(m_page_view, 1, wxEXPAND | wxLEFT, 5);*/ //m_btn_compare_preset->Bind(wxEVT_BUTTON, ([this](wxCommandEvent e) { compare_preset(); })); - m_btn_save_preset->Bind(wxEVT_BUTTON, ([this](wxCommandEvent e) { save_preset(); })); - m_btn_delete_preset->Bind(wxEVT_BUTTON, ([this](wxCommandEvent e) { delete_preset(); })); + m_btn_save_preset->Bind(wxEVT_BUTTON, ([this](wxCommandEvent& e) { save_preset(); })); + m_btn_delete_preset->Bind(wxEVT_BUTTON, ([this](wxCommandEvent& e) { delete_preset(); })); /*m_btn_hide_incompatible_presets->Bind(wxEVT_BUTTON, ([this](wxCommandEvent e) { toggle_show_hide_incompatible(); })); if (m_btn_edit_ph_printer) - m_btn_edit_ph_printer->Bind(wxEVT_BUTTON, [this](wxCommandEvent e) { + m_btn_edit_ph_printer->Bind(wxEVT_BUTTON, [this](wxCommandEvent& e) { if (m_preset_bundle->physical_printers.has_selection()) m_presets_choice->edit_physical_printer(); else @@ -3581,6 +3581,7 @@ void TabFilament::add_filament_overrides_page() } } } + evt.Skip(); }, check_box->GetId()); m_overrides_options[opt_key] = check_box; @@ -3682,6 +3683,7 @@ void TabFilament::add_filament_overrides_page() } } } + evt.Skip(); }, check_box->GetId()); m_overrides_options[opt_key] = check_box; @@ -6698,18 +6700,18 @@ wxSizer* Tab::compatible_widget_create(wxWindow* parent, PresetDependencies &dep this->update_changed_ui(); }; - deps.checkbox_title->Bind(wxEVT_LEFT_DOWN,([this, &deps, on_toggle](wxMouseEvent e) { + deps.checkbox_title->Bind(wxEVT_LEFT_DOWN,([this, &deps, on_toggle](wxMouseEvent& e) { if (e.GetEventType() == wxEVT_LEFT_DCLICK) return; on_toggle(!deps.checkbox->GetValue()); e.Skip(); })); - deps.checkbox_title->Bind(wxEVT_LEFT_DCLICK,([this, &deps, on_toggle](wxMouseEvent e) { + deps.checkbox_title->Bind(wxEVT_LEFT_DCLICK,([this, &deps, on_toggle](wxMouseEvent& e) { on_toggle(!deps.checkbox->GetValue()); e.Skip(); })); - deps.checkbox->Bind(wxEVT_TOGGLEBUTTON, ([this, on_toggle](wxCommandEvent e) { + deps.checkbox->Bind(wxEVT_TOGGLEBUTTON, ([this, on_toggle](wxCommandEvent& e) { on_toggle(e.IsChecked()); e.Skip(); }), deps.checkbox->GetId()); @@ -6734,7 +6736,7 @@ wxSizer* Tab::compatible_widget_create(wxWindow* parent, PresetDependencies &dep } */ - deps.btn->Bind(wxEVT_BUTTON, ([this, parent, &deps](wxCommandEvent e) + deps.btn->Bind(wxEVT_BUTTON, ([this, parent, &deps](wxCommandEvent& e) { // Collect names of non-default non-external profiles. PrinterTechnology printer_technology = m_preset_bundle->printers.get_edited_preset().printer_technology(); @@ -6816,7 +6818,7 @@ wxSizer* TabPrinter::create_bed_shape_widget(wxWindow* parent) auto sizer = new wxBoxSizer(wxHORIZONTAL); sizer->Add(btn, 0, wxALIGN_CENTER_VERTICAL); - btn->Bind(wxEVT_BUTTON, ([this](wxCommandEvent e) { + btn->Bind(wxEVT_BUTTON, ([this](wxCommandEvent& e) { bool is_configed_by_BBL = PresetUtils::system_printer_bed_model(m_preset_bundle->printers.get_edited_preset()).size() > 0; BedShapeDialog dlg(this); dlg.build_dialog(m_config->option("printable_area")->values, From b2a2b71b925f0e0bfa9eb38032076f7074f23c34 Mon Sep 17 00:00:00 2001 From: Kiss Lorand <50251547+kisslorand@users.noreply.github.com> Date: Mon, 22 Dec 2025 18:18:41 +0200 Subject: [PATCH 05/15] Fix filament preset undo tracking (#11693) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix filament preset undo/dirty tracking to match Bambu behavior Use deep compare for filament presets so vector options report #idx keys. Align undo/dirty mapping with indexed fields and Bambu’s filter_diff_option. Pass explicit indices for filament override fields. Add missing filament variant keys (retract lift bounds, ironing overrides) to filament_options_with_variant so per‑filament undo works. --- src/libslic3r/PrintConfig.cpp | 9 ++++++++- src/slic3r/GUI/Tab.cpp | 17 +++++++++-------- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/src/libslic3r/PrintConfig.cpp b/src/libslic3r/PrintConfig.cpp index 6287e77ceb..2fb29fc2cd 100644 --- a/src/libslic3r/PrintConfig.cpp +++ b/src/libslic3r/PrintConfig.cpp @@ -7646,6 +7646,9 @@ std::set filament_options_with_variant = { "filament_retraction_length", "filament_z_hop", "filament_z_hop_types", + "filament_retract_lift_above", + "filament_retract_lift_below", + "filament_retract_lift_enforce", "filament_retract_restart_extra", "filament_retraction_speed", "filament_deretraction_speed", @@ -7664,7 +7667,11 @@ std::set filament_options_with_variant = { "filament_flush_volumetric_speed", "filament_flush_temp", "volumetric_speed_coefficients", - "filament_adaptive_volumetric_speed" + "filament_adaptive_volumetric_speed", + "filament_ironing_flow", + "filament_ironing_spacing", + "filament_ironing_inset", + "filament_ironing_speed" }; // Parameters that are the same as the number of extruders diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp index b016327b2a..ab3a43ab4e 100644 --- a/src/slic3r/GUI/Tab.cpp +++ b/src/slic3r/GUI/Tab.cpp @@ -892,7 +892,8 @@ void Tab::decorate() void Tab::filter_diff_option(std::vector &options) { for (auto &opt : options) { - if (opt.find_last_of('#') == std::string::npos) continue; + const auto hash_pos = opt.find_last_of('#'); + if (hash_pos == std::string::npos) continue; bool found = false; for (auto page : m_pages) { if (auto iter = page->m_opt_id_map.find(opt); iter != page->m_opt_id_map.end()) { @@ -901,7 +902,7 @@ void Tab::filter_diff_option(std::vector &options) break; } } - if (!found) opt.clear(); + if (!found) opt = opt.substr(0, hash_pos); } options.erase(std::remove(options.begin(), options.end(), ""), options.end()); } @@ -912,7 +913,7 @@ void Tab::update_changed_ui() if (m_postpone_update_ui) return; - const bool deep_compare = (m_type == Preset::TYPE_PRINTER || m_type == Preset::TYPE_PRINT + const bool deep_compare = (m_type == Preset::TYPE_PRINTER || m_type == Preset::TYPE_PRINT || m_type == Preset::TYPE_FILAMENT || m_type == Preset::TYPE_SLA_MATERIAL || m_type == Preset::TYPE_MODEL); auto dirty_options = m_presets->current_dirty_options(deep_compare); auto nonsys_options = m_presets->current_different_from_parent_options(deep_compare); @@ -3559,7 +3560,7 @@ void TabFilament::add_filament_overrides_page() auto append_retraction_option = [this, retraction_optgroup](const std::string& opt_key, int opt_index) { Line line {"",""}; - line = retraction_optgroup->create_single_option_line(retraction_optgroup->get_option(opt_key)); + line = retraction_optgroup->create_single_option_line(retraction_optgroup->get_option(opt_key, opt_index)); line.near_label_widget = [this, optgroup_wk = ConfigOptionsGroupWkp(retraction_optgroup), opt_key, opt_index](wxWindow* parent) { auto check_box = new ::CheckBox(parent); // ORCA modernize checkboxes @@ -3617,7 +3618,7 @@ void TabFilament::add_filament_overrides_page() auto append_ironing_option = [this, ironing_optgroup](const std::string& opt_key, int opt_index) { Line line {"",""}; - line = ironing_optgroup->create_single_option_line(ironing_optgroup->get_option(opt_key)); + line = ironing_optgroup->create_single_option_line(ironing_optgroup->get_option(opt_key, opt_index)); line.near_label_widget = [this, optgroup_wk = ConfigOptionsGroupWkp(ironing_optgroup), opt_key, opt_index](wxWindow* parent) { auto check_box = new ::CheckBox(parent); // ORCA modernize checkboxes @@ -3890,8 +3891,8 @@ void TabFilament::build() optgroup = page->new_optgroup(L("Print temperature"), L"param_extruder_temp"); line = { L("Nozzle"), L("Nozzle temperature when printing") }; line.label_path = "material_temperatures#nozzle"; - line.append_option(optgroup->get_option("nozzle_temperature_initial_layer")); - line.append_option(optgroup->get_option("nozzle_temperature")); + line.append_option(optgroup->get_option("nozzle_temperature_initial_layer", 0)); + line.append_option(optgroup->get_option("nozzle_temperature", 0)); optgroup->append_line(line); optgroup = page->new_optgroup(L("Bed temperature"), L"param_bed_temp"); @@ -3970,7 +3971,7 @@ void TabFilament::build() //BBS optgroup = page->new_optgroup(L("Volumetric speed limitation"), L"param_volumetric_speed"); optgroup->append_single_option_line("filament_adaptive_volumetric_speed", "material_volumetric_speed_limitation#adaptive-volumetric-speed", 0); - optgroup->append_single_option_line("filament_max_volumetric_speed", "material_volumetric_speed_limitation#max-volumetric-speed"); + optgroup->append_single_option_line("filament_max_volumetric_speed", "material_volumetric_speed_limitation#max-volumetric-speed", 0); //line = { "", "" }; //line.full_width = 1; From ace2bd134966bd0436017cefa91a704c19fee2a2 Mon Sep 17 00:00:00 2001 From: Kiss Lorand <50251547+kisslorand@users.noreply.github.com> Date: Mon, 22 Dec 2025 18:23:41 +0200 Subject: [PATCH 06/15] FIX: Embossed text edit not reflected in Objects list (#11692) Fix object list name refresh after emboss edits Refresh the object list immediately after embossed text name changes so the displayed name stays in sync. --- src/slic3r/GUI/Jobs/EmbossJob.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/slic3r/GUI/Jobs/EmbossJob.cpp b/src/slic3r/GUI/Jobs/EmbossJob.cpp index 032ed288dd..856864d5c1 100644 --- a/src/slic3r/GUI/Jobs/EmbossJob.cpp +++ b/src/slic3r/GUI/Jobs/EmbossJob.cpp @@ -427,16 +427,18 @@ void UpdateJob::update_volume(ModelVolume *volume, TriangleMesh &&mesh, const Da volume->set_new_unique_id(); volume->calculate_convex_hull(); - // write data from base into volume - base.write(*volume); - GUI_App &app = wxGetApp(); // may be move to input + if (volume->name != base.volume_name) { - volume->name = base.volume_name; + // write data from base into volume + base.write(*volume); const ObjectList *obj_list = app.obj_list(); if (obj_list != nullptr) update_name_in_list(*obj_list, *volume); + } else { + // write data from base into volume + base.write(*volume); } ModelObject *object = volume->get_object(); From 6a3e41035c9fa90271c5f9ea7814dee55db475d8 Mon Sep 17 00:00:00 2001 From: Tanuj Goswami Date: Mon, 22 Dec 2025 17:38:14 +0100 Subject: [PATCH 07/15] Add Eolas Prints filament profiles (18 profiles) (#11101) * Add Eolas Prints filament profiles (18 profiles) This commit adds official filament profiles for Eolas Prints, a Spain-based 3D printing materials supplier with nearly 10 years of experience and ISO 9001 & ISO 14001 certifications for quality control. Profiles included: - 9 PLA variants: Premium, Matte, Silk, Neon, High Speed, INGEO 850, INGEO 870, Antibacterial, and Transition - 3 PETG variants: Standard, UV Resistant, and Transition - 4 TPU variants: Flex 93A, D53, D60 UV, and Transition - 2 ABS/ASA variants: ABS and ASA Company: Eolas Prints Website: https://eolasprints.com Location: Cantabria, Spain Certifications: ISO 9001, ISO 14001 * Update Eolas Prints PLA INGEO 850 @system.json Updated Eolas Prints INGEO 850 Filament profile * Update Eolas Prints PETG Transition @system.json Updated Eolas Prints PETG Transition Filament Profile * Update Eolas Prints PETG UV Resistant @system.json * Fixed JSON errors for Eolas Prints FIlament profiles * Added filament_id & Fixed Typos for Eolas Prints Prints profiles. --- resources/profiles/OrcaFilamentLibrary.json | 75 ++++++++++++++++++- .../Eolas Prints ABS @System.json | 23 ++++++ .../Eolas Prints ASA @System.json | 23 ++++++ .../Eolas Prints PETG @System.json | 22 ++++++ .../Eolas Prints PETG Transition @System.json | 22 ++++++ ...olas Prints PETG UV Resistant @System.json | 22 ++++++ ...olas Prints PLA Antibacterial @System.json | 22 ++++++ .../Eolas Prints PLA High Speed @System.json | 22 ++++++ .../Eolas Prints PLA INGEO 850 @System.json | 22 ++++++ .../Eolas Prints PLA INGEO 870 @System.json | 22 ++++++ .../Eolas Prints PLA Matte @System.json | 22 ++++++ .../Eolas Prints PLA Neon @System.json | 22 ++++++ .../Eolas Prints PLA Premium @System.json | 22 ++++++ .../Eolas Prints PLA Silk @System.json | 22 ++++++ .../Eolas Prints PLA Transition @System.json | 22 ++++++ .../Eolas Prints TPU Flex 93A @System.json | 22 ++++++ .../Eolas Prints TPU Flex D53 @System.json | 22 ++++++ ...nts TPU Flex D60 UV Resistant @System.json | 22 ++++++ .../Eolas Prints TPU Transition @System.json | 22 ++++++ 19 files changed, 471 insertions(+), 2 deletions(-) create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints ABS @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints ASA @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PETG @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PETG Transition @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PETG UV Resistant @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Antibacterial @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA High Speed @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA INGEO 850 @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA INGEO 870 @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Matte @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Neon @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Premium @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Silk @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Transition @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Flex 93A @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Flex D53 @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Flex D60 UV Resistant @System.json create mode 100644 resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Transition @System.json diff --git a/resources/profiles/OrcaFilamentLibrary.json b/resources/profiles/OrcaFilamentLibrary.json index ca80b86d12..1f4b2cf779 100644 --- a/resources/profiles/OrcaFilamentLibrary.json +++ b/resources/profiles/OrcaFilamentLibrary.json @@ -1212,9 +1212,80 @@ "name": "COEX PLA+Silk @System", "sub_path": "filament/COEX/COEX PLA+Silk @System.json" }, - { - "name": "Numakers PLA+ @System", + { "name": "Numakers PLA+ @System", "sub_path": "filament/Numakers/Numakers PLA+ @System.json" + }, + { + "name": "Eolas Prints PLA Premium @System", + "sub_path": "filament/Eolas Prints/Eolas Prints PLA Premium @System.json" + }, + { + "name": "Eolas Prints PLA Matte @System", + "sub_path": "filament/Eolas Prints/Eolas Prints PLA Matte @System.json" + }, + { + "name": "Eolas Prints PLA Silk @System", + "sub_path": "filament/Eolas Prints/Eolas Prints PLA Silk @System.json" + }, + { + "name": "Eolas Prints PLA Neon @System", + "sub_path": "filament/Eolas Prints/Eolas Prints PLA Neon @System.json" + }, + { + "name": "Eolas Prints PLA High Speed @System", + "sub_path": "filament/Eolas Prints/Eolas Prints PLA High Speed @System.json" + }, + { + "name": "Eolas Prints PLA INGEO 850 @System", + "sub_path": "filament/Eolas Prints/Eolas Prints PLA INGEO 850 @System.json" + }, + { + "name": "Eolas Prints PLA INGEO 870 @System", + "sub_path": "filament/Eolas Prints/Eolas Prints PLA INGEO 870 @System.json" + }, + { + "name": "Eolas Prints PLA Antibacterial @System", + "sub_path": "filament/Eolas Prints/Eolas Prints PLA Antibacterial @System.json" + }, + { + "name": "Eolas Prints PLA Transition @System", + "sub_path": "filament/Eolas Prints/Eolas Prints PLA Transition @System.json" + }, + { + "name": "Eolas Prints PETG @System", + "sub_path": "filament/Eolas Prints/Eolas Prints PETG @System.json" + }, + { + "name": "Eolas Prints PETG UV Resistant @System", + "sub_path": "filament/Eolas Prints/Eolas Prints PETG UV Resistant @System.json" + }, + { + "name": "Eolas Prints PETG Transition @System", + "sub_path": "filament/Eolas Prints/Eolas Prints PETG Transition @System.json" + }, + { + "name": "Eolas Prints TPU Flex 93A @System", + "sub_path": "filament/Eolas Prints/Eolas Prints TPU Flex 93A @System.json" + }, + { + "name": "Eolas Prints TPU Flex D53 @System", + "sub_path": "filament/Eolas Prints/Eolas Prints TPU Flex D53 @System.json" + }, + { + "name": "Eolas Prints TPU Flex D60 UV Resistant @System", + "sub_path": "filament/Eolas Prints/Eolas Prints TPU Flex D60 UV Resistant @System.json" + }, + { + "name": "Eolas Prints TPU Transition @System", + "sub_path": "filament/Eolas Prints/Eolas Prints TPU Transition @System.json" + }, + { + "name": "Eolas Prints ABS @System", + "sub_path": "filament/Eolas Prints/Eolas Prints ABS @System.json" + }, + { + "name": "Eolas Prints ASA @System", + "sub_path": "filament/Eolas Prints/Eolas Prints ASA @System.json" } ], "process_list": [], diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints ABS @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints ABS @System.json new file mode 100644 index 0000000000..bf8afa8b31 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints ABS @System.json @@ -0,0 +1,23 @@ +{ + "type": "filament", + "filament_id": "GFSEP017", + "setting_id": "GFSEP017_00", + "name": "Eolas Prints ABS @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_abs", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["ABS"], + "nozzle_temperature": ["255"], + "nozzle_temperature_initial_layer": ["260"], + "nozzle_temperature_range_low": ["240"], + "nozzle_temperature_range_high": ["270"], + "hot_plate_temp": ["100"], + "hot_plate_temp_initial_layer": ["105"], + "chamber_temperature": ["40"], + "filament_density": ["1.04"], + "filament_cost": ["19.50"], + "filament_spool_weight": ["900"], + "filament_max_volumetric_speed": ["18"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints ASA @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints ASA @System.json new file mode 100644 index 0000000000..21d7ef887b --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints ASA @System.json @@ -0,0 +1,23 @@ +{ + "type": "filament", + "filament_id": "GFSEP018", + "setting_id": "GFSEP018_00", + "name": "Eolas Prints ASA @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_asa", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["ASA"], + "nozzle_temperature": ["260"], + "nozzle_temperature_initial_layer": ["270"], + "nozzle_temperature_range_low": ["245"], + "nozzle_temperature_range_high": ["275"], + "hot_plate_temp": ["100"], + "hot_plate_temp_initial_layer": ["105"], + "chamber_temperature": ["40"], + "filament_density": ["1.07"], + "filament_cost": ["22.50"], + "filament_spool_weight": ["900"], + "filament_max_volumetric_speed": ["18"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PETG @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PETG @System.json new file mode 100644 index 0000000000..6f02d13138 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PETG @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP010", + "setting_id": "GFSEP010_00", + "name": "Eolas Prints PETG @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pet", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["PETG"], + "nozzle_temperature": ["240"], + "nozzle_temperature_initial_layer": ["245"], + "nozzle_temperature_range_low": ["230"], + "nozzle_temperature_range_high": ["260"], + "hot_plate_temp": ["80"], + "hot_plate_temp_initial_layer": ["85"], + "filament_density": ["1.27"], + "filament_cost": ["25.50"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["15"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PETG Transition @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PETG Transition @System.json new file mode 100644 index 0000000000..d9e125b8ff --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PETG Transition @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP012", + "setting_id": "GFSEP012_00", + "name": "Eolas Prints PETG Transition @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pet", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["PETG"], + "nozzle_temperature": ["240"], + "nozzle_temperature_initial_layer": ["245"], + "nozzle_temperature_range_low": ["230"], + "nozzle_temperature_range_high": ["260"], + "hot_plate_temp": ["80"], + "hot_plate_temp_initial_layer": ["85"], + "filament_density": ["1.27"], + "filament_cost": ["17.40"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["15"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PETG UV Resistant @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PETG UV Resistant @System.json new file mode 100644 index 0000000000..8810346918 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PETG UV Resistant @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP011", + "setting_id": "GFSEP011_00", + "name": "Eolas Prints PETG UV Resistant @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pet", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["PETG"], + "nozzle_temperature": ["245"], + "nozzle_temperature_initial_layer": ["250"], + "nozzle_temperature_range_low": ["235"], + "nozzle_temperature_range_high": ["265"], + "hot_plate_temp": ["80"], + "hot_plate_temp_initial_layer": ["85"], + "filament_density": ["1.27"], + "filament_cost": ["30.50"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["15"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Antibacterial @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Antibacterial @System.json new file mode 100644 index 0000000000..b41e563301 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Antibacterial @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP008", + "setting_id": "GFSEP008_00", + "name": "Eolas Prints PLA Antibacterial @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["PLA"], + "nozzle_temperature": ["216"], + "nozzle_temperature_initial_layer": ["220"], + "nozzle_temperature_range_low": ["195"], + "nozzle_temperature_range_high": ["230"], + "hot_plate_temp": ["60"], + "hot_plate_temp_initial_layer": ["60"], + "filament_density": ["1.24"], + "filament_cost": ["30.50"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["15"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA High Speed @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA High Speed @System.json new file mode 100644 index 0000000000..fd41493192 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA High Speed @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP005", + "setting_id": "GFSEP005_00", + "name": "Eolas Prints PLA High Speed @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["PLA"], + "nozzle_temperature": ["220"], + "nozzle_temperature_initial_layer": ["220"], + "nozzle_temperature_range_low": ["210"], + "nozzle_temperature_range_high": ["240"], + "hot_plate_temp": ["60"], + "hot_plate_temp_initial_layer": ["60"], + "filament_density": ["1.24"], + "filament_cost": ["25.50"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["17.8"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA INGEO 850 @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA INGEO 850 @System.json new file mode 100644 index 0000000000..ccef240d17 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA INGEO 850 @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP006", + "setting_id": "GFSEP006_00", + "name": "Eolas Prints PLA INGEO 850 @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["PLA"], + "nozzle_temperature": ["210"], + "nozzle_temperature_initial_layer": ["215"], + "nozzle_temperature_range_low": ["190"], + "nozzle_temperature_range_high": ["230"], + "hot_plate_temp": ["60"], + "hot_plate_temp_initial_layer": ["60"], + "filament_density": ["1.24"], + "filament_cost": ["25.50"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["15"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA INGEO 870 @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA INGEO 870 @System.json new file mode 100644 index 0000000000..da7ebe735d --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA INGEO 870 @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP007", + "setting_id": "GFSEP007_00", + "name": "Eolas Prints PLA INGEO 870 @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["PLA"], + "nozzle_temperature": ["220"], + "nozzle_temperature_initial_layer": ["225"], + "nozzle_temperature_range_low": ["200"], + "nozzle_temperature_range_high": ["235"], + "hot_plate_temp": ["60"], + "hot_plate_temp_initial_layer": ["60"], + "filament_density": ["1.22"], + "filament_cost": ["30.50"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["15"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Matte @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Matte @System.json new file mode 100644 index 0000000000..5c90dff774 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Matte @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP002", + "setting_id": "GFSEP002_00", + "name": "Eolas Prints PLA Matte @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["PLA"], + "nozzle_temperature": ["215"], + "nozzle_temperature_initial_layer": ["220"], + "nozzle_temperature_range_low": ["200"], + "nozzle_temperature_range_high": ["230"], + "hot_plate_temp": ["60"], + "hot_plate_temp_initial_layer": ["60"], + "filament_density": ["1.24"], + "filament_cost": ["25.50"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["15"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Neon @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Neon @System.json new file mode 100644 index 0000000000..857924f75a --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Neon @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP004", + "setting_id": "GFSEP004_00", + "name": "Eolas Prints PLA Neon @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["PLA"], + "nozzle_temperature": ["210"], + "nozzle_temperature_initial_layer": ["215"], + "nozzle_temperature_range_low": ["200"], + "nozzle_temperature_range_high": ["230"], + "hot_plate_temp": ["60"], + "hot_plate_temp_initial_layer": ["60"], + "filament_density": ["1.24"], + "filament_cost": ["25.50"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["10"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Premium @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Premium @System.json new file mode 100644 index 0000000000..ceeaabbcf5 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Premium @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP001", + "setting_id": "GFSEP001_00", + "name": "Eolas Prints PLA Premium @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["PLA"], + "nozzle_temperature": ["210"], + "nozzle_temperature_initial_layer": ["215"], + "nozzle_temperature_range_low": ["190"], + "nozzle_temperature_range_high": ["230"], + "hot_plate_temp": ["60"], + "hot_plate_temp_initial_layer": ["60"], + "filament_density": ["1.24"], + "filament_cost": ["19.90"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["15"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Silk @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Silk @System.json new file mode 100644 index 0000000000..0409a36e12 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Silk @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP003", + "setting_id": "GFSEP003_00", + "name": "Eolas Prints PLA Silk @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["PLA"], + "nozzle_temperature": ["215"], + "nozzle_temperature_initial_layer": ["220"], + "nozzle_temperature_range_low": ["205"], + "nozzle_temperature_range_high": ["235"], + "hot_plate_temp": ["60"], + "hot_plate_temp_initial_layer": ["60"], + "filament_density": ["1.24"], + "filament_cost": ["25.50"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["8"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Transition @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Transition @System.json new file mode 100644 index 0000000000..0804a78a64 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Transition @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP009", + "setting_id": "GFSEP009_00", + "name": "Eolas Prints PLA Transition @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["PLA"], + "nozzle_temperature": ["210"], + "nozzle_temperature_initial_layer": ["215"], + "nozzle_temperature_range_low": ["200"], + "nozzle_temperature_range_high": ["230"], + "hot_plate_temp": ["60"], + "hot_plate_temp_initial_layer": ["60"], + "filament_density": ["1.24"], + "filament_cost": ["13.90"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["15"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Flex 93A @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Flex 93A @System.json new file mode 100644 index 0000000000..90cc77ff33 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Flex 93A @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP013", + "setting_id": "GFSEP013_00", + "name": "Eolas Prints TPU Flex 93A @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_tpu", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["TPU"], + "nozzle_temperature": ["220"], + "nozzle_temperature_initial_layer": ["225"], + "nozzle_temperature_range_low": ["210"], + "nozzle_temperature_range_high": ["240"], + "hot_plate_temp": ["50"], + "hot_plate_temp_initial_layer": ["55"], + "filament_density": ["1.21"], + "filament_cost": ["34.99"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["6"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Flex D53 @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Flex D53 @System.json new file mode 100644 index 0000000000..96237eb712 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Flex D53 @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP014", + "setting_id": "GFSEP014_00", + "name": "Eolas Prints TPU Flex D53 @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_tpu", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["TPU"], + "nozzle_temperature": ["220"], + "nozzle_temperature_initial_layer": ["225"], + "nozzle_temperature_range_low": ["205"], + "nozzle_temperature_range_high": ["235"], + "hot_plate_temp": ["45"], + "hot_plate_temp_initial_layer": ["50"], + "filament_density": ["1.17"], + "filament_cost": ["38.50"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["8"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Flex D60 UV Resistant @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Flex D60 UV Resistant @System.json new file mode 100644 index 0000000000..e88f950722 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Flex D60 UV Resistant @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP015", + "setting_id": "GFSEP015_00", + "name": "Eolas Prints TPU D60 UV Resistant @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_tpu", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["TPU"], + "nozzle_temperature": ["225"], + "nozzle_temperature_initial_layer": ["230"], + "nozzle_temperature_range_low": ["215"], + "nozzle_temperature_range_high": ["245"], + "hot_plate_temp": ["55"], + "hot_plate_temp_initial_layer": ["60"], + "filament_density": ["1.16"], + "filament_cost": ["37.90"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["8"] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Transition @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Transition @System.json new file mode 100644 index 0000000000..c1029399d4 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints TPU Transition @System.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "filament_id": "GFSEP016", + "setting_id": "GFSEP016_00", + "name": "Eolas Prints TPU Transition @System", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_tpu", + "filament_color": ["#4d9398"], + "filament_vendor": ["Eolas Prints"], + "filament_type": ["TPU"], + "nozzle_temperature": ["220"], + "nozzle_temperature_initial_layer": ["225"], + "nozzle_temperature_range_low": ["210"], + "nozzle_temperature_range_high": ["240"], + "hot_plate_temp": ["50"], + "hot_plate_temp_initial_layer": ["55"], + "filament_density": ["1.21"], + "filament_cost": ["22.50"], + "filament_spool_weight": ["1000"], + "filament_max_volumetric_speed": ["5"] +} \ No newline at end of file From 3da093b7563f38a050835abd4b0ff2cedf720c33 Mon Sep 17 00:00:00 2001 From: mosfet80 <10235105+mosfet80@users.noreply.github.com> Date: Mon, 22 Dec 2025 17:44:36 +0100 Subject: [PATCH 08/15] Update CGAL.cmake (#10850) * Update CGAL.cmake * Delete deps/CGAL/0001-clang19.patch * Update CGAL.cmake * Update CGAL.cmake --------- Co-authored-by: SoftFever --- deps/CGAL/0001-clang19.patch | 59 ------------------------------------ deps/CGAL/CGAL.cmake | 7 ++--- 2 files changed, 3 insertions(+), 63 deletions(-) delete mode 100644 deps/CGAL/0001-clang19.patch diff --git a/deps/CGAL/0001-clang19.patch b/deps/CGAL/0001-clang19.patch deleted file mode 100644 index 92a0293735..0000000000 --- a/deps/CGAL/0001-clang19.patch +++ /dev/null @@ -1,59 +0,0 @@ ---- a/BGL/include/CGAL/boost/graph/iterator.h 2022-10-07 19:04:41 UTC -+++ b/BGL/include/CGAL/boost/graph/iterator.h -@@ -213,18 +213,7 @@ class Halfedge_around_source_iterator { (public) - {} - - #ifndef DOXYGEN_RUNNING -- // design patter: "safe bool" -- // will be replaced by explicit operator bool with C++11 -- typedef void (Halfedge_around_source_iterator::*bool_type)() const; - -- void this_type_does_not_support_comparisons() const {} -- -- operator bool_type() const -- { -- return (! (this->base() == nullptr)) ? -- &Halfedge_around_source_iterator::this_type_does_not_support_comparisons : 0; -- } -- - bool operator==( const Self& i) const { - CGAL_assertion( anchor == anchor); - return ( g == i.g) && ( pos == i.pos) && ( winding == i.winding); -@@ -313,18 +302,7 @@ class Halfedge_around_target_iterator { (public) - {} - - #ifndef DOXYGEN_RUNNING -- // design patter: "safe bool" -- // will be replaced by explicit operator bool with C++11 -- typedef void (Halfedge_around_target_iterator::*bool_type)() const; - -- void this_type_does_not_support_comparisons() const {} -- -- operator bool_type() const -- { -- return (! (this->base() == nullptr)) ? -- &Halfedge_around_target_iterator::this_type_does_not_support_comparisons : 0; -- } -- - bool operator==( const Self& i) const { - CGAL_assertion( anchor == anchor); - return ( g == i.g) && ( pos == i.pos) && ( winding == i.winding); -@@ -411,18 +389,6 @@ class Halfedge_around_face_iterator { (public) - const value_type& operator * ( ) const { return pos; } - pointer operator -> ( ) { return &pos; } - const value_type* operator -> ( ) const { return &pos; } -- -- // design patter: "safe bool" -- // will be replaced by explicit operator bool with C++11 -- typedef void (Halfedge_around_face_iterator::*bool_type)() const; -- -- void this_type_does_not_support_comparisons() const {} -- -- operator bool_type() const -- { -- return (! (this->base() == nullptr)) ? -- &Halfedge_around_face_iterator::this_type_does_not_support_comparisons : 0; -- } - - bool operator==( const Self& i) const { - CGAL_assertion( anchor == anchor); diff --git a/deps/CGAL/CGAL.cmake b/deps/CGAL/CGAL.cmake index 73eee6701b..ec77e0ebae 100644 --- a/deps/CGAL/CGAL.cmake +++ b/deps/CGAL/CGAL.cmake @@ -5,11 +5,10 @@ endif () orcaslicer_add_cmake_project( CGAL # GIT_REPOSITORY https://github.com/CGAL/cgal.git - # GIT_TAG bec70a6d52d8aacb0b3d82a7b4edc3caa899184b # releases/CGAL-5.0 + # GIT_TAG 3654f780ae0c64675cabaef0e5ddaf904c48b4b7 # releases/CGAL-5.6.3 # For whatever reason, this keeps downloading forever (repeats downloads if finished) - URL https://github.com/CGAL/cgal/archive/refs/tags/v5.4.zip - URL_HASH SHA256=d7605e0a5a5ca17da7547592f6f6e4a59430a0bc861948974254d0de43eab4c0 - PATCH_COMMAND git apply ${CGAL_DIRECTORY_FLAG} --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-clang19.patch + URL https://github.com/CGAL/cgal/releases/download/v5.6.3/CGAL-5.6.3.zip + URL_HASH SHA256=5d577acb4a9918ccb960491482da7a3838f8d363aff47e14d703f19fd84733d4 DEPENDS dep_Boost dep_GMP dep_MPFR ) From 9092389ef99322a2c44eb9763ccfbd6fa989540e Mon Sep 17 00:00:00 2001 From: Ocraftyone Date: Mon, 22 Dec 2025 11:54:54 -0500 Subject: [PATCH 09/15] Show printer bed based on BBL vendor, not network (#11610) * Show printer bed based on BBL vendor not network * add comment --------- Co-authored-by: Ioannis Giannakas <59056762+igiannakas@users.noreply.github.com> Co-authored-by: SoftFever --- src/slic3r/GUI/Plater.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp index 0a462a06f3..ff784d4528 100644 --- a/src/slic3r/GUI/Plater.cpp +++ b/src/slic3r/GUI/Plater.cpp @@ -574,7 +574,9 @@ void Sidebar::priv::layout_printer(bool isBBL, bool isDual) // ORCA show plate type combo box only when its supported PresetBundle &preset_bundle = *wxGetApp().preset_bundle; auto cfg = preset_bundle.printers.get_edited_preset().config; - panel_printer_bed->Show(isBBL || cfg.opt_bool("support_multi_bed_types")); + // Orca: we use preset_bundle.is_bbl_vendor() instead of isBBL to determine if the plate type combo box should be shown + // ref: https://github.com/OrcaSlicer/OrcaSlicer/pull/11610#discussion_r2607411847 + panel_printer_bed->Show(preset_bundle.is_bbl_vendor() || cfg.opt_bool("support_multi_bed_types")); extruder_dual_sizer->Show(isDual); From 7fa6175b4fbb230d26d3fa1d77cbe3964e7de1fb Mon Sep 17 00:00:00 2001 From: yw4z Date: Mon, 22 Dec 2025 20:30:03 +0300 Subject: [PATCH 10/15] Compact Printer Selection UI - part 3 (#11676) * init * Update ImageDPIFrame.cpp * Update Plater.cpp * update * update * Update PresetBundle.cpp * ensure 0.25 returned as 0.25 instead 0.2 * Merge branch 'main' into compact-printer-selection-UI-part-3 * Merge branch 'main' into compact-printer-selection-UI-part-3 * Merge branch 'main' into compact-printer-selection-UI-part-3 --- src/libslic3r/PresetBundle.cpp | 5 ++++- src/slic3r/GUI/ImageDPIFrame.cpp | 8 ++++++++ src/slic3r/GUI/Plater.cpp | 31 +++++++++++++++++++++++-------- 3 files changed, 35 insertions(+), 9 deletions(-) diff --git a/src/libslic3r/PresetBundle.cpp b/src/libslic3r/PresetBundle.cpp index c123cf53d0..b3efae168f 100644 --- a/src/libslic3r/PresetBundle.cpp +++ b/src/libslic3r/PresetBundle.cpp @@ -2751,6 +2751,8 @@ Preset *PresetBundle::get_similar_printer_preset(std::string printer_model, std: { if (printer_model.empty()) printer_model = printers.get_selected_preset().config.opt_string("printer_model"); + if (printer_model.empty()) // ORCA ensure a compatible model exist. fixes switches to blank preset if preset has no inherited value + return nullptr; auto printer_variant_old = printers.get_selected_preset().config.opt_string("printer_variant"); std::map printer_presets; for (auto &preset : printers.m_presets) { @@ -2761,7 +2763,8 @@ Preset *PresetBundle::get_similar_printer_preset(std::string printer_model, std: } if (printer_presets.empty()) return nullptr; - auto prefer_printer = printers.get_selected_preset().name; + auto prefer_printer = printers.get_selected_preset().alias; //.name ORCA use alias instead "name" for calling system presets. otherwise nozzle combo will not change printer presets if they custom named + if (!printer_variant.empty()) boost::replace_all(prefer_printer, printer_variant_old, printer_variant); else if (auto n = prefer_printer.find(printer_variant_old); n != std::string::npos) diff --git a/src/slic3r/GUI/ImageDPIFrame.cpp b/src/slic3r/GUI/ImageDPIFrame.cpp index 06c3f59c3f..2133f18784 100644 --- a/src/slic3r/GUI/ImageDPIFrame.cpp +++ b/src/slic3r/GUI/ImageDPIFrame.cpp @@ -29,6 +29,14 @@ ImageDPIFrame::ImageDPIFrame() #ifdef __APPLE__ SetWindowStyleFlag(GetWindowStyleFlag() | wxSTAY_ON_TOP); #endif + + // ORCA add border + Bind(wxEVT_PAINT, [this](wxPaintEvent& evt) { + wxPaintDC dc(this); + dc.SetPen(StateColor::darkModeColorFor(wxColour("#DBDBDB"))); + dc.SetBrush(*wxTRANSPARENT_BRUSH); + dc.DrawRoundedRectangle(0, 0, GetSize().x, GetSize().y, 0); + }); m_sizer_main = new wxBoxSizer(wxVERTICAL); diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp index ff784d4528..cc67ee11fd 100644 --- a/src/slic3r/GUI/Plater.cpp +++ b/src/slic3r/GUI/Plater.cpp @@ -220,9 +220,14 @@ wxDEFINE_EVENT(EVT_NOTICE_FULL_SCREEN_CHANGED, IntEvent); static string get_diameter_string(float diameter) { - std::ostringstream stream; - stream << std::fixed << std::setprecision(1) << diameter; - return stream.str(); + std::ostringstream stream; // ORCA ensure 0.25 returned as 0.25. previous code returned as 0.2 because of std::setprecision(1) + stream << std::fixed << std::setprecision(2) << diameter; // Use 2 decimals to capture 0.25 / 0.15 reliably + std::string s = stream.str(); + if (s.find('.') != std::string::npos) { // Remove trailing zeros, but keep at least one decimal if needed + s.erase(s.find_last_not_of('0') + 1); + if (s.back() == '.') s += '0'; // Ensure "1." → "1.0" + } + return s; } bool Plater::has_illegal_filename_characters(const wxString& wxs_name) @@ -1232,7 +1237,8 @@ bool Sidebar::priv::switch_diameter(bool single) } auto preset = wxGetApp().preset_bundle->get_similar_printer_preset({}, diameter.ToStdString()); if (preset == nullptr) { - MessageDialog dlg(this->plater, "", ""); + // ORCA add a text. this appears when user tries to change nozzle value but config doesnt have a inherited or compatible preset + MessageDialog dlg(this->plater, _L("Configuration incompatible"), _L("Warning"), wxICON_WARNING | wxOK); dlg.ShowModal(); return false; } @@ -2538,9 +2544,18 @@ void Sidebar::update_presets(Preset::Type preset_type) p->layout_printer(preset_bundle.use_bbl_network(), isBBL && is_dual_extruder); auto diameters = wxGetApp().preset_bundle->printers.diameters_of_selected_printer(); auto diameter = printer_preset.config.opt_string("printer_variant"); - auto update_extruder_diameter = [&diameters, &diameter](ExtruderGroup & extruder) { + auto update_extruder_diameter = [&diameters, &diameter, &nozzle_diameter](int extruder_index,ExtruderGroup & extruder) { extruder.combo_diameter->Clear(); int select = -1; + // ORCA if user defined a custom nozzle in printer config select it instead inherited one. this will show correct nozzle diameter in combobox if its exist in nozzle diameters list + auto nozzle_dia = get_diameter_string(nozzle_diameter->values[extruder_index]); + if(nozzle_dia != diameter && std::find(diameters.begin(), diameters.end(), nozzle_dia) != diameters.end()) + diameter = nozzle_dia; + // ORCA try to add nozzle diameter from config if list is empty. fixes blank nozzle combo box when preset has no alias + if(diameters[0].empty() && !nozzle_dia.empty()){ + diameters[0] = nozzle_dia; + diameter = nozzle_dia; + } for (size_t i = 0; i < diameters.size(); ++i) { if (diameters[i] == diameter) select = extruder.combo_diameter->GetCount(); @@ -2554,14 +2569,14 @@ void Sidebar::update_presets(Preset::Type preset_type) AMSCountPopupWindow::UpdateAMSCount(0, p->left_extruder); AMSCountPopupWindow::UpdateAMSCount(1, p->right_extruder); //if (!p->is_switching_diameter) { - update_extruder_diameter(*p->left_extruder); - update_extruder_diameter(*p->right_extruder); + update_extruder_diameter(0, *p->left_extruder); + update_extruder_diameter(1, *p->right_extruder); //} p->image_printer_bed->SetBitmap(create_scaled_bitmap(image_path, this, PRINTER_THUMBNAIL_SIZE.GetHeight())); } else { AMSCountPopupWindow::UpdateAMSCount(0, p->single_extruder); //if (!p->is_switching_diameter) - update_extruder_diameter(*p->single_extruder); + update_extruder_diameter(0, *p->single_extruder); // ORCA sync unified nozzle combo box p->combo_nozzle_dia->Clear(); From f08cae6c5a537aa8fc7a6008d041e70dd9a42a37 Mon Sep 17 00:00:00 2001 From: Kuran Kaname Date: Tue, 23 Dec 2025 06:55:55 +0200 Subject: [PATCH 11/15] Adjust resonance avoidance speed calculation (#11462) * Adjust resonance avoidance speed calculation * Only adjust if it's strictly below max * If the speed is over half of the set speed range, use the max speed to prevent slowdowns Signed-off-by: Kuran Kaname * update comment --------- Signed-off-by: Kuran Kaname Co-authored-by: SoftFever --- src/libslic3r/GCode.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index 048a428e40..eae1d1711a 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -6186,10 +6186,15 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description, ); } - // if still in avoidance mode and under “max”, clamp to “min” - if (m_resonance_avoidance - && speed <= m_config.max_resonance_avoidance_speed.value) { - speed = std::min(speed, m_config.min_resonance_avoidance_speed.value); + // if still in avoidance mode and under "max", adjust speed: + // - speeds in lower half of range: clamp down to "min" + // - speeds in upper half of range: boost up to "max" if (m_resonance_avoidance && speed < m_config.max_resonance_avoidance_speed.value) { + if (speed < m_config.min_resonance_avoidance_speed.value + + ((m_config.max_resonance_avoidance_speed.value - m_config.min_resonance_avoidance_speed.value) / 2)) { + speed = std::min(speed, m_config.min_resonance_avoidance_speed.value); + } else { + speed = m_config.max_resonance_avoidance_speed.value; + } } // reset flag for next segment From baf5f286c3a0699e967e2437527c4d8914944dfe Mon Sep 17 00:00:00 2001 From: Brandon Wees Date: Mon, 22 Dec 2025 23:56:53 -0500 Subject: [PATCH 12/15] feat: update CORE One profiles for to Prusa 2.4.2 (#11453) * feat: update CORE One profiles for to Prusa 2.4.2 * fix: top surface acceleration * fix: top surface acceleration duplicates * fix: incorrect overhang speed mappings * fix: duplicate keys --------- Co-authored-by: Noisyfox --- .../Prusa/process/0.05mm DETAIL @CORE One 0.25.json | 5 ++++- .../Prusa/process/0.07mm DETAIL @CORE One 0.25.json | 5 ++++- .../Prusa/process/0.10mm FAST DETAIL @CORE One 0.4.json | 5 ++++- .../Prusa/process/0.10mm STRUCTURAL @CORE One 0.5.json | 6 +++--- .../Prusa/process/0.12mm SPEED @CORE One 0.25.json | 5 ++++- .../Prusa/process/0.12mm STRUCTURAL @CORE One 0.25.json | 5 ++++- .../Prusa/process/0.12mm STRUCTURAL @CORE One 0.3.json | 5 ++++- .../Prusa/process/0.15mm SPEED @CORE One 0.25.json | 5 ++++- .../Prusa/process/0.15mm SPEED @CORE One 0.4.json | 5 +++-- .../Prusa/process/0.15mm SPEED @CORE One HF 0.4.json | 5 +++-- .../Prusa/process/0.15mm STRUCTURAL @CORE One 0.25.json | 5 ++++- .../Prusa/process/0.15mm STRUCTURAL @CORE One 0.4.json | 2 +- .../Prusa/process/0.15mm STRUCTURAL @CORE One 0.5.json | 2 +- .../Prusa/process/0.15mm STRUCTURAL @CORE One 0.6.json | 9 +++++---- .../Prusa/process/0.16mm SPEED @CORE One 0.3.json | 5 ++++- .../Prusa/process/0.16mm STRUCTURAL @CORE One 0.3.json | 5 ++++- .../Prusa/process/0.20mm SOLUBLE FULL @CORE One 0.4.json | 7 +++++-- .../process/0.20mm SOLUBLE INTERFACE @CORE One 0.4.json | 7 +++++-- .../Prusa/process/0.20mm SPEED @CORE One 0.3.json | 5 ++++- .../Prusa/process/0.20mm SPEED @CORE One 0.4.json | 5 +++-- .../Prusa/process/0.20mm SPEED @CORE One 0.5.json | 2 +- .../Prusa/process/0.20mm SPEED @CORE One 0.6.json | 9 ++++++--- .../Prusa/process/0.20mm SPEED @CORE One HF 0.4.json | 7 ++++--- .../Prusa/process/0.20mm SPEED @CORE One HF 0.5.json | 2 +- .../Prusa/process/0.20mm SPEED @CORE One HF 0.6.json | 4 ++-- .../Prusa/process/0.20mm STRUCTURAL @CORE One 0.3.json | 5 ++++- .../Prusa/process/0.20mm STRUCTURAL @CORE One 0.4.json | 2 +- .../Prusa/process/0.20mm STRUCTURAL @CORE One 0.5.json | 2 +- .../Prusa/process/0.20mm STRUCTURAL @CORE One 0.6.json | 2 +- .../Prusa/process/0.25mm SPEED @CORE One 0.5.json | 2 +- .../Prusa/process/0.25mm SPEED @CORE One 0.6.json | 9 ++++++--- .../Prusa/process/0.25mm SPEED @CORE One HF 0.4.json | 9 +++++---- .../Prusa/process/0.25mm SPEED @CORE One HF 0.5.json | 2 +- .../Prusa/process/0.25mm SPEED @CORE One HF 0.6.json | 4 ++-- .../Prusa/process/0.25mm STRUCTURAL @CORE One 0.5.json | 2 +- .../Prusa/process/0.25mm STRUCTURAL @CORE One 0.6.json | 2 +- .../process/0.25mm STRUCTURAL @CORE One HF 0.4.json | 2 +- .../Prusa/process/0.28mm DRAFT @CORE One HF 0.4.json | 2 +- .../Prusa/process/0.30mm DETAIL @CORE One 0.8.json | 7 ++++--- .../Prusa/process/0.30mm SPEED @CORE One HF 0.8.json | 4 ++-- .../process/0.30mm STRUCTURAL @CORE One HF 0.8.json | 7 +++---- .../Prusa/process/0.32mm SPEED @CORE One 0.6.json | 4 ++-- .../Prusa/process/0.32mm SPEED @CORE One HF 0.5.json | 2 +- .../Prusa/process/0.32mm SPEED @CORE One HF 0.6.json | 9 ++++----- .../Prusa/process/0.32mm STRUCTURAL @CORE One 0.6.json | 2 +- .../process/0.32mm STRUCTURAL @CORE One HF 0.5.json | 2 +- .../process/0.32mm STRUCTURAL @CORE One HF 0.6.json | 2 +- .../Prusa/process/0.40mm QUALITY @CORE One 0.8.json | 4 ++-- .../Prusa/process/0.40mm SPEED @CORE One HF 0.6.json | 9 ++++----- .../Prusa/process/0.40mm SPEED @CORE One HF 0.8.json | 8 +++++--- .../process/0.40mm STRUCTURAL @CORE One HF 0.6.json | 2 +- .../process/0.40mm STRUCTURAL @CORE One HF 0.8.json | 7 +++---- .../Prusa/process/0.55mm DRAFT @CORE One 0.8.json | 5 +++-- .../Prusa/process/0.55mm SPEED @CORE One HF 0.8.json | 4 ++-- 54 files changed, 152 insertions(+), 98 deletions(-) diff --git a/resources/profiles/Prusa/process/0.05mm DETAIL @CORE One 0.25.json b/resources/profiles/Prusa/process/0.05mm DETAIL @CORE One 0.25.json index 90282356ee..5a5e94e124 100644 --- a/resources/profiles/Prusa/process/0.05mm DETAIL @CORE One 0.25.json +++ b/resources/profiles/Prusa/process/0.05mm DETAIL @CORE One 0.25.json @@ -10,5 +10,8 @@ "support_interface_top_layers": "3", "initial_layer_infill_speed": "45", "initial_layer_speed": "25", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.25" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.25", + "gap_infill_speed": "45", + "small_perimeter_speed": "45", + "outer_wall_speed": "45" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.07mm DETAIL @CORE One 0.25.json b/resources/profiles/Prusa/process/0.07mm DETAIL @CORE One 0.25.json index aa1fb6b9f7..cda4e3096b 100644 --- a/resources/profiles/Prusa/process/0.07mm DETAIL @CORE One 0.25.json +++ b/resources/profiles/Prusa/process/0.07mm DETAIL @CORE One 0.25.json @@ -10,5 +10,8 @@ "support_interface_top_layers": "3", "initial_layer_infill_speed": "45", "initial_layer_speed": "25", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.25" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.25", + "gap_infill_speed": "45", + "small_perimeter_speed": "45", + "outer_wall_speed": "45" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.10mm FAST DETAIL @CORE One 0.4.json b/resources/profiles/Prusa/process/0.10mm FAST DETAIL @CORE One 0.4.json index d481f3139d..b2c2ca9528 100644 --- a/resources/profiles/Prusa/process/0.10mm FAST DETAIL @CORE One 0.4.json +++ b/resources/profiles/Prusa/process/0.10mm FAST DETAIL @CORE One 0.4.json @@ -13,5 +13,8 @@ "support_interface_top_layers": "3", "initial_layer_infill_speed": "100", "initial_layer_speed": "45", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.4" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.4", + "small_perimeter_speed": "145", + "inner_wall_speed": "145", + "outer_wall_speed": "145" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.10mm STRUCTURAL @CORE One 0.5.json b/resources/profiles/Prusa/process/0.10mm STRUCTURAL @CORE One 0.5.json index f5f6a460b0..df335dbe67 100644 --- a/resources/profiles/Prusa/process/0.10mm STRUCTURAL @CORE One 0.5.json +++ b/resources/profiles/Prusa/process/0.10mm STRUCTURAL @CORE One 0.5.json @@ -4,9 +4,9 @@ "inherits": "0.10mm STRUCTURAL @MK4S 0.5", "from": "system", "instantiation": "true", - "inner_wall_speed": "80", - "small_perimeter_speed": "45", - "outer_wall_speed": "45", + "inner_wall_speed": "70", + "small_perimeter_speed": "50", + "outer_wall_speed": "50", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.12mm SPEED @CORE One 0.25.json b/resources/profiles/Prusa/process/0.12mm SPEED @CORE One 0.25.json index 69ef541dae..3fc92e8b42 100644 --- a/resources/profiles/Prusa/process/0.12mm SPEED @CORE One 0.25.json +++ b/resources/profiles/Prusa/process/0.12mm SPEED @CORE One 0.25.json @@ -10,5 +10,8 @@ "support_interface_top_layers": "3", "initial_layer_infill_speed": "45", "initial_layer_speed": "25", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.25" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.25", + "small_perimeter_speed": "150", + "outer_wall_speed": "150", + "inner_wall_speed": "150" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.12mm STRUCTURAL @CORE One 0.25.json b/resources/profiles/Prusa/process/0.12mm STRUCTURAL @CORE One 0.25.json index a61d130cb5..ec754dc350 100644 --- a/resources/profiles/Prusa/process/0.12mm STRUCTURAL @CORE One 0.25.json +++ b/resources/profiles/Prusa/process/0.12mm STRUCTURAL @CORE One 0.25.json @@ -10,5 +10,8 @@ "support_interface_top_layers": "3", "initial_layer_infill_speed": "45", "initial_layer_speed": "25", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.25" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.25", + "gap_infill_speed": "45", + "small_perimeter_speed": "45", + "outer_wall_speed": "45" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.12mm STRUCTURAL @CORE One 0.3.json b/resources/profiles/Prusa/process/0.12mm STRUCTURAL @CORE One 0.3.json index 35b0d2c525..101e7f0968 100644 --- a/resources/profiles/Prusa/process/0.12mm STRUCTURAL @CORE One 0.3.json +++ b/resources/profiles/Prusa/process/0.12mm STRUCTURAL @CORE One 0.3.json @@ -12,5 +12,8 @@ "initial_layer_infill_speed": "60", "initial_layer_speed": "45", "top_surface_acceleration": "1500", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.3" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.3", + "small_perimeter_speed": "45", + "inner_wall_speed": "70", + "outer_wall_speed": "45" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.15mm SPEED @CORE One 0.25.json b/resources/profiles/Prusa/process/0.15mm SPEED @CORE One 0.25.json index 8e5f0cab2d..4600a136a8 100644 --- a/resources/profiles/Prusa/process/0.15mm SPEED @CORE One 0.25.json +++ b/resources/profiles/Prusa/process/0.15mm SPEED @CORE One 0.25.json @@ -10,5 +10,8 @@ "support_interface_top_layers": "3", "initial_layer_infill_speed": "45", "initial_layer_speed": "25", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.25" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.25", + "small_perimeter_speed": "150", + "inner_wall_speed": "150", + "outer_wall_speed": "150" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.15mm SPEED @CORE One 0.4.json b/resources/profiles/Prusa/process/0.15mm SPEED @CORE One 0.4.json index 2c3b531050..e08b21a26f 100644 --- a/resources/profiles/Prusa/process/0.15mm SPEED @CORE One 0.4.json +++ b/resources/profiles/Prusa/process/0.15mm SPEED @CORE One 0.4.json @@ -4,7 +4,7 @@ "inherits": "0.15mm SPEED @MK4S 0.4", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "50", + "overhang_3_4_speed": "50", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", @@ -16,5 +16,6 @@ "internal_solid_infill_acceleration": "6000", "inner_wall_acceleration": "6000", "outer_wall_acceleration": "3000", - "top_surface_acceleration": "2000" + "top_surface_acceleration": "2000", + "support_threshold_angle": "35" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.15mm SPEED @CORE One HF 0.4.json b/resources/profiles/Prusa/process/0.15mm SPEED @CORE One HF 0.4.json index fa9fb8c30c..50ad496cd2 100644 --- a/resources/profiles/Prusa/process/0.15mm SPEED @CORE One HF 0.4.json +++ b/resources/profiles/Prusa/process/0.15mm SPEED @CORE One HF 0.4.json @@ -4,7 +4,7 @@ "inherits": "0.15mm SPEED @MK4S HF0.4", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "50", + "overhang_1_4_speed": "50", "overhang_3_4_speed": "60%", "sparse_infill_speed": "300", "travel_speed": "350", @@ -18,5 +18,6 @@ "internal_solid_infill_acceleration": "6000", "inner_wall_acceleration": "6000", "outer_wall_acceleration": "3000", - "top_surface_acceleration": "2000" + "top_surface_acceleration": "2000", + "support_threshold_angle": "35" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.25.json b/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.25.json index 55e9dc654c..51886f189e 100644 --- a/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.25.json +++ b/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.25.json @@ -10,5 +10,8 @@ "support_interface_top_layers": "3", "initial_layer_infill_speed": "45", "initial_layer_speed": "25", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.25" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.25", + "gap_infill_speed": "45", + "small_perimeter_speed": "45", + "outer_wall_speed": "45" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.4.json b/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.4.json index fd2d410e48..017b232df4 100644 --- a/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.4.json +++ b/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.4.json @@ -4,7 +4,7 @@ "inherits": "0.15mm STRUCTURAL @MK4S 0.4", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "45", + "overhang_3_4_speed": "45", "sparse_infill_speed": "120", "travel_speed": "350", "travel_acceleration": "7000", diff --git a/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.5.json b/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.5.json index 2cecda0dd0..765d0efa49 100644 --- a/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.5.json +++ b/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.5.json @@ -4,7 +4,7 @@ "inherits": "0.15mm STRUCTURAL @MK4S 0.5", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "45", + "overhang_3_4_speed": "45", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.6.json b/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.6.json index 2f58de84e9..0024001fd9 100644 --- a/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.6.json +++ b/resources/profiles/Prusa/process/0.15mm STRUCTURAL @CORE One 0.6.json @@ -4,9 +4,9 @@ "inherits": "0.15mm STRUCTURAL @MK4S 0.6", "from": "system", "instantiation": "true", - "inner_wall_speed": "80", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "70%", + "inner_wall_speed": "70", + "overhang_3_4_speed": "30", + "overhang_4_4_speed": "70%", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", @@ -18,5 +18,6 @@ "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.6", "inner_wall_acceleration": "2500", "outer_wall_acceleration": "1500", - "top_surface_acceleration": "2000" + "top_surface_acceleration": "2000", + "gap_infill_speed": "70" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.16mm SPEED @CORE One 0.3.json b/resources/profiles/Prusa/process/0.16mm SPEED @CORE One 0.3.json index d0ca7859df..15096ebd6b 100644 --- a/resources/profiles/Prusa/process/0.16mm SPEED @CORE One 0.3.json +++ b/resources/profiles/Prusa/process/0.16mm SPEED @CORE One 0.3.json @@ -13,5 +13,8 @@ "initial_layer_infill_speed": "60", "initial_layer_speed": "45", "top_surface_acceleration": "1500", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.3" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.3", + "small_perimeter_speed": "160", + "inner_wall_speed": "160", + "outer_wall_speed": "160" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.16mm STRUCTURAL @CORE One 0.3.json b/resources/profiles/Prusa/process/0.16mm STRUCTURAL @CORE One 0.3.json index 192682e5b7..4e11371cfe 100644 --- a/resources/profiles/Prusa/process/0.16mm STRUCTURAL @CORE One 0.3.json +++ b/resources/profiles/Prusa/process/0.16mm STRUCTURAL @CORE One 0.3.json @@ -12,5 +12,8 @@ "initial_layer_infill_speed": "60", "initial_layer_speed": "45", "top_surface_acceleration": "1500", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.3" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.3", + "small_perimeter_speed": "50", + "inner_wall_speed": "70", + "outer_wall_speed": "50" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.20mm SOLUBLE FULL @CORE One 0.4.json b/resources/profiles/Prusa/process/0.20mm SOLUBLE FULL @CORE One 0.4.json index 3fe89b38a6..7e0f0042c0 100644 --- a/resources/profiles/Prusa/process/0.20mm SOLUBLE FULL @CORE One 0.4.json +++ b/resources/profiles/Prusa/process/0.20mm SOLUBLE FULL @CORE One 0.4.json @@ -4,12 +4,15 @@ "inherits": "0.20mm SOLUBLE FULL @MK4S 0.4", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "50", + "overhang_3_4_speed": "50", "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.4 and printer_notes!~/.*HF_NOZZLE.*/", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", "support_interface_top_layers": "3", "initial_layer_infill_speed": "100", - "initial_layer_speed": "45" + "initial_layer_speed": "45", + "small_perimeter_speed": "50", + "inner_wall_speed": "70", + "outer_wall_speed": "50" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.20mm SOLUBLE INTERFACE @CORE One 0.4.json b/resources/profiles/Prusa/process/0.20mm SOLUBLE INTERFACE @CORE One 0.4.json index 49c4c28280..222663644c 100644 --- a/resources/profiles/Prusa/process/0.20mm SOLUBLE INTERFACE @CORE One 0.4.json +++ b/resources/profiles/Prusa/process/0.20mm SOLUBLE INTERFACE @CORE One 0.4.json @@ -4,12 +4,15 @@ "inherits": "0.20mm SOLUBLE INTERFACE @MK4S 0.4", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "50", + "overhang_3_4_speed": "50", "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.4 and printer_notes!~/.*HF_NOZZLE.*/", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", "support_interface_top_layers": "3", "initial_layer_infill_speed": "100", - "initial_layer_speed": "45" + "initial_layer_speed": "45", + "small_perimeter_speed": "50", + "inner_wall_speed": "70", + "outer_wall_speed": "50" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.3.json b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.3.json index df4d8e80cc..0f0cc78362 100644 --- a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.3.json +++ b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.3.json @@ -13,5 +13,8 @@ "initial_layer_infill_speed": "60", "initial_layer_speed": "45", "top_surface_acceleration": "1500", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.3" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.3", + "small_perimeter_speed": "160", + "inner_wall_speed": "160", + "outer_wall_speed": "160" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.4.json b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.4.json index 9171ec4b21..79cd06680f 100644 --- a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.4.json +++ b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.4.json @@ -4,7 +4,7 @@ "inherits": "0.20mm SPEED @MK4S 0.4", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "50", + "overhang_3_4_speed": "50", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", @@ -16,5 +16,6 @@ "internal_solid_infill_acceleration": "6000", "inner_wall_acceleration": "6000", "outer_wall_acceleration": "3000", - "top_surface_acceleration": "2000" + "top_surface_acceleration": "2000", + "support_threshold_angle": "35" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.5.json b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.5.json index e7299809ea..20d64e324c 100644 --- a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.5.json +++ b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.5.json @@ -4,7 +4,7 @@ "inherits": "0.20mm SPEED @MK4S 0.5", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "50", + "overhang_3_4_speed": "50", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.6.json b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.6.json index 78446c1687..1bbd442a02 100644 --- a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.6.json +++ b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One 0.6.json @@ -4,8 +4,8 @@ "inherits": "0.20mm SPEED @MK4S 0.6", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "70%", + "overhang_3_4_speed": "30", + "overhang_4_4_speed": "70%", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", @@ -17,5 +17,8 @@ "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.6 and printer_notes!~/.*HF_NOZZLE.*/", "inner_wall_acceleration": "6000", "outer_wall_acceleration": "3000", - "top_surface_acceleration": "2000" + "top_surface_acceleration": "2000", + "small_perimeter_speed": "130", + "inner_wall_speed": "130", + "outer_wall_speed": "130" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One HF 0.4.json b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One HF 0.4.json index 96433e26e8..5b9b42f34c 100644 --- a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One HF 0.4.json +++ b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One HF 0.4.json @@ -4,8 +4,8 @@ "inherits": "0.20mm SPEED @MK4S HF0.4", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "50", - "overhang_3_4_speed": "60%", + "overhang_3_4_speed": "50", + "overhang_4_4_speed": "70%", "sparse_infill_speed": "300", "travel_speed": "350", "travel_acceleration": "7000", @@ -18,5 +18,6 @@ "internal_solid_infill_acceleration": "6000", "inner_wall_acceleration": "6000", "outer_wall_acceleration": "3000", - "top_surface_acceleration": "2000" + "top_surface_acceleration": "2000", + "support_threshold_angle": "35" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One HF 0.5.json b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One HF 0.5.json index 3ad26d4548..c7324713ea 100644 --- a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One HF 0.5.json +++ b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One HF 0.5.json @@ -4,7 +4,7 @@ "inherits": "0.20mm SPEED @MK4S HF0.5", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "50", + "overhang_3_4_speed": "50", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One HF 0.6.json b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One HF 0.6.json index 204f356661..8cb0eb8f1c 100644 --- a/resources/profiles/Prusa/process/0.20mm SPEED @CORE One HF 0.6.json +++ b/resources/profiles/Prusa/process/0.20mm SPEED @CORE One HF 0.6.json @@ -4,8 +4,8 @@ "inherits": "0.20mm SPEED @MK4S HF0.6", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "70%", + "overhang_3_4_speed": "30", + "overhang_4_4_speed": "70%", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.3.json b/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.3.json index e7dd110d1d..d9b1a2ef54 100644 --- a/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.3.json +++ b/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.3.json @@ -12,5 +12,8 @@ "initial_layer_infill_speed": "60", "initial_layer_speed": "45", "top_surface_acceleration": "1500", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.3" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.3", + "small_perimeter_speed": "50", + "inner_wall_speed": "70", + "outer_wall_speed": "50" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.4.json b/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.4.json index 95d97fea4e..a139f2cd4f 100644 --- a/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.4.json +++ b/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.4.json @@ -4,7 +4,7 @@ "inherits": "0.20mm STRUCTURAL @MK4S 0.4", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "45", + "overhang_3_4_speed": "45", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.5.json b/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.5.json index c6fba65551..57c2968e0d 100644 --- a/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.5.json +++ b/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.5.json @@ -4,7 +4,7 @@ "inherits": "0.20mm STRUCTURAL @MK4S 0.5", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "45", + "overhang_3_4_speed": "45", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.6.json b/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.6.json index 5445f967b5..9bbd5097c8 100644 --- a/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.6.json +++ b/resources/profiles/Prusa/process/0.20mm STRUCTURAL @CORE One 0.6.json @@ -4,7 +4,7 @@ "inherits": "0.20mm STRUCTURAL @MK4S 0.6", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "30", + "overhang_3_4_speed": "30", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.25mm SPEED @CORE One 0.5.json b/resources/profiles/Prusa/process/0.25mm SPEED @CORE One 0.5.json index bfe931bc62..cb087eb345 100644 --- a/resources/profiles/Prusa/process/0.25mm SPEED @CORE One 0.5.json +++ b/resources/profiles/Prusa/process/0.25mm SPEED @CORE One 0.5.json @@ -4,7 +4,7 @@ "inherits": "0.25mm SPEED @MK4S 0.5", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "50", + "overhang_3_4_speed": "50", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.25mm SPEED @CORE One 0.6.json b/resources/profiles/Prusa/process/0.25mm SPEED @CORE One 0.6.json index 4cd0500e7b..621c94e9d8 100644 --- a/resources/profiles/Prusa/process/0.25mm SPEED @CORE One 0.6.json +++ b/resources/profiles/Prusa/process/0.25mm SPEED @CORE One 0.6.json @@ -4,8 +4,8 @@ "inherits": "0.25mm SPEED @MK4S 0.6", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "70%", + "overhang_3_4_speed": "30", + "overhang_4_4_speed": "70%", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", @@ -17,5 +17,8 @@ "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.6 and printer_notes!~/.*HF_NOZZLE.*/", "inner_wall_acceleration": "6000", "outer_wall_acceleration": "3000", - "top_surface_acceleration": "2000" + "top_surface_acceleration": "2000", + "small_perimeter_speed": "75", + "inner_wall_speed": "95", + "outer_wall_speed": "75" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.25mm SPEED @CORE One HF 0.4.json b/resources/profiles/Prusa/process/0.25mm SPEED @CORE One HF 0.4.json index b0b066e261..634c502f73 100644 --- a/resources/profiles/Prusa/process/0.25mm SPEED @CORE One HF 0.4.json +++ b/resources/profiles/Prusa/process/0.25mm SPEED @CORE One HF 0.4.json @@ -4,8 +4,8 @@ "inherits": "0.25mm SPEED @MK4S HF0.4", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "50", - "overhang_3_4_speed": "60%", + "overhang_3_4_speed": "50", + "overhang_4_4_speed": "70%", "sparse_infill_speed": "300", "travel_speed": "350", "travel_acceleration": "7000", @@ -13,10 +13,11 @@ "support_interface_top_layers": "3", "initial_layer_infill_speed": "100", "initial_layer_speed": "45", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.4 and printer_notes=~/.*HF_NOZZLE.*/", +"compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.4 and printer_notes=~/.*HF_NOZZLE.*/", "sparse_infill_acceleration": "7000", "internal_solid_infill_acceleration": "6000", "inner_wall_acceleration": "6000", "outer_wall_acceleration": "3000", - "top_surface_acceleration": "2000" + "top_surface_acceleration": "2000", + "support_threshold_angle": "35" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.25mm SPEED @CORE One HF 0.5.json b/resources/profiles/Prusa/process/0.25mm SPEED @CORE One HF 0.5.json index 20634c06e1..268891fb46 100644 --- a/resources/profiles/Prusa/process/0.25mm SPEED @CORE One HF 0.5.json +++ b/resources/profiles/Prusa/process/0.25mm SPEED @CORE One HF 0.5.json @@ -4,7 +4,7 @@ "inherits": "0.25mm SPEED @MK4S HF0.5", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "50", + "overhang_3_4_speed": "50", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.25mm SPEED @CORE One HF 0.6.json b/resources/profiles/Prusa/process/0.25mm SPEED @CORE One HF 0.6.json index 493f82b29b..bb26e69f5d 100644 --- a/resources/profiles/Prusa/process/0.25mm SPEED @CORE One HF 0.6.json +++ b/resources/profiles/Prusa/process/0.25mm SPEED @CORE One HF 0.6.json @@ -4,8 +4,8 @@ "inherits": "0.25mm SPEED @MK4S HF0.6", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "70%", + "overhang_3_4_speed": "30", + "overhang_4_4_speed": "70%", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.25mm STRUCTURAL @CORE One 0.5.json b/resources/profiles/Prusa/process/0.25mm STRUCTURAL @CORE One 0.5.json index a89610e3ee..c4d22efeb2 100644 --- a/resources/profiles/Prusa/process/0.25mm STRUCTURAL @CORE One 0.5.json +++ b/resources/profiles/Prusa/process/0.25mm STRUCTURAL @CORE One 0.5.json @@ -4,7 +4,7 @@ "inherits": "0.25mm STRUCTURAL @MK4S 0.5", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "45", + "overhang_3_4_speed": "45", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.25mm STRUCTURAL @CORE One 0.6.json b/resources/profiles/Prusa/process/0.25mm STRUCTURAL @CORE One 0.6.json index 5418273bb2..96a614266d 100644 --- a/resources/profiles/Prusa/process/0.25mm STRUCTURAL @CORE One 0.6.json +++ b/resources/profiles/Prusa/process/0.25mm STRUCTURAL @CORE One 0.6.json @@ -4,7 +4,7 @@ "inherits": "0.25mm STRUCTURAL @MK4S 0.6", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "30", + "overhang_3_4_speed": "30", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.25mm STRUCTURAL @CORE One HF 0.4.json b/resources/profiles/Prusa/process/0.25mm STRUCTURAL @CORE One HF 0.4.json index 6392a2c0f7..978f3f94d0 100644 --- a/resources/profiles/Prusa/process/0.25mm STRUCTURAL @CORE One HF 0.4.json +++ b/resources/profiles/Prusa/process/0.25mm STRUCTURAL @CORE One HF 0.4.json @@ -4,7 +4,7 @@ "inherits": "0.25mm STRUCTURAL @MK4S HF0.4", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "45", + "overhang_3_4_speed": "45", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.28mm DRAFT @CORE One HF 0.4.json b/resources/profiles/Prusa/process/0.28mm DRAFT @CORE One HF 0.4.json index a1f896b3c0..e493e19467 100644 --- a/resources/profiles/Prusa/process/0.28mm DRAFT @CORE One HF 0.4.json +++ b/resources/profiles/Prusa/process/0.28mm DRAFT @CORE One HF 0.4.json @@ -4,7 +4,7 @@ "inherits": "0.28mm DRAFT @MK4S HF0.4", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "50", + "overhang_3_4_speed": "50", "support_threshold_angle": "35", "outer_wall_acceleration": "3000", "inner_wall_acceleration": "6000", diff --git a/resources/profiles/Prusa/process/0.30mm DETAIL @CORE One 0.8.json b/resources/profiles/Prusa/process/0.30mm DETAIL @CORE One 0.8.json index 0ecac72e60..db88957c69 100644 --- a/resources/profiles/Prusa/process/0.30mm DETAIL @CORE One 0.8.json +++ b/resources/profiles/Prusa/process/0.30mm DETAIL @CORE One 0.8.json @@ -4,8 +4,8 @@ "inherits": "0.30mm DETAIL @MK4S 0.8", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "35", - "top_surface_speed": "2000", + "overhang_3_4_speed": "35", + "top_surface_acceleration": "2000", "inner_wall_acceleration": "2500", "internal_solid_infill_acceleration": "5000", "sparse_infill_acceleration": "7000", @@ -15,5 +15,6 @@ "support_interface_top_layers": "3", "initial_layer_infill_speed": "55", "initial_layer_speed": "45", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.8 and printer_notes!~/.*HF_NOZZLE.*/" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.8 and printer_notes!~/.*HF_NOZZLE.*/", + "gap_infill_speed": "45" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.30mm SPEED @CORE One HF 0.8.json b/resources/profiles/Prusa/process/0.30mm SPEED @CORE One HF 0.8.json index 8477a7c0f9..d4be25be9a 100644 --- a/resources/profiles/Prusa/process/0.30mm SPEED @CORE One HF 0.8.json +++ b/resources/profiles/Prusa/process/0.30mm SPEED @CORE One HF 0.8.json @@ -4,8 +4,8 @@ "inherits": "0.30mm SPEED @MK4S HF0.8", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "45", - "top_surface_speed": "2000", + "overhang_3_4_speed": "45", + "top_surface_acceleration": "2000", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.30mm STRUCTURAL @CORE One HF 0.8.json b/resources/profiles/Prusa/process/0.30mm STRUCTURAL @CORE One HF 0.8.json index d8cb0916af..7426aa3a21 100644 --- a/resources/profiles/Prusa/process/0.30mm STRUCTURAL @CORE One HF 0.8.json +++ b/resources/profiles/Prusa/process/0.30mm STRUCTURAL @CORE One HF 0.8.json @@ -4,8 +4,8 @@ "inherits": "0.30mm STRUCTURAL @MK4S HF0.8", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "40", - "top_surface_speed": "2000", + "overhang_3_4_speed": "40", + "top_surface_acceleration": "2000", "support_speed": "100", "support_interface_speed": "55%", "travel_speed": "350", @@ -18,6 +18,5 @@ "sparse_infill_acceleration": "6000", "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.8 and printer_notes=~/.*HF_NOZZLE.*/", "inner_wall_acceleration": "2500", - "outer_wall_acceleration": "1500", - "top_surface_acceleration": "2000" + "outer_wall_acceleration": "1500" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.32mm SPEED @CORE One 0.6.json b/resources/profiles/Prusa/process/0.32mm SPEED @CORE One 0.6.json index 549b62c466..8b4b7511b1 100644 --- a/resources/profiles/Prusa/process/0.32mm SPEED @CORE One 0.6.json +++ b/resources/profiles/Prusa/process/0.32mm SPEED @CORE One 0.6.json @@ -4,8 +4,8 @@ "inherits": "0.32mm SPEED @MK4S 0.6", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "70%", + "overhang_3_4_speed": "30", + "overhang_4_4_speed": "70%", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.32mm SPEED @CORE One HF 0.5.json b/resources/profiles/Prusa/process/0.32mm SPEED @CORE One HF 0.5.json index 1471abb700..55594a5dd2 100644 --- a/resources/profiles/Prusa/process/0.32mm SPEED @CORE One HF 0.5.json +++ b/resources/profiles/Prusa/process/0.32mm SPEED @CORE One HF 0.5.json @@ -4,7 +4,7 @@ "inherits": "0.32mm SPEED @MK4S HF0.5", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "50", + "overhang_3_4_speed": "50", "support_interface_speed": "50%", "travel_speed": "350", "travel_acceleration": "7000", diff --git a/resources/profiles/Prusa/process/0.32mm SPEED @CORE One HF 0.6.json b/resources/profiles/Prusa/process/0.32mm SPEED @CORE One HF 0.6.json index e9bde33023..533da07e95 100644 --- a/resources/profiles/Prusa/process/0.32mm SPEED @CORE One HF 0.6.json +++ b/resources/profiles/Prusa/process/0.32mm SPEED @CORE One HF 0.6.json @@ -4,9 +4,9 @@ "inherits": "0.32mm SPEED @MK4S HF0.6", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "35", - "overhang_3_4_speed": "70%", - "top_surface_speed": "2000", + "overhang_3_4_speed": "35", + "overhang_4_4_speed": "70%", + "top_surface_acceleration": "2000", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", @@ -17,6 +17,5 @@ "sparse_infill_acceleration": "7000", "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.6 and printer_notes=~/.*HF_NOZZLE.*/", "inner_wall_acceleration": "6000", - "outer_wall_acceleration": "3000", - "top_surface_acceleration": "2000" + "outer_wall_acceleration": "3000" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.32mm STRUCTURAL @CORE One 0.6.json b/resources/profiles/Prusa/process/0.32mm STRUCTURAL @CORE One 0.6.json index e52aa90a5f..a652b7097c 100644 --- a/resources/profiles/Prusa/process/0.32mm STRUCTURAL @CORE One 0.6.json +++ b/resources/profiles/Prusa/process/0.32mm STRUCTURAL @CORE One 0.6.json @@ -4,7 +4,7 @@ "inherits": "0.32mm STRUCTURAL @MK4S 0.6", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "30", + "overhang_3_4_speed": "30", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.32mm STRUCTURAL @CORE One HF 0.5.json b/resources/profiles/Prusa/process/0.32mm STRUCTURAL @CORE One HF 0.5.json index a1f851d518..7fb4500b02 100644 --- a/resources/profiles/Prusa/process/0.32mm STRUCTURAL @CORE One HF 0.5.json +++ b/resources/profiles/Prusa/process/0.32mm STRUCTURAL @CORE One HF 0.5.json @@ -4,7 +4,7 @@ "inherits": "0.32mm STRUCTURAL @MK4S HF0.5", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "45", + "overhang_3_4_speed": "45", "support_speed": "120", "support_interface_speed": "50%", "travel_speed": "350", diff --git a/resources/profiles/Prusa/process/0.32mm STRUCTURAL @CORE One HF 0.6.json b/resources/profiles/Prusa/process/0.32mm STRUCTURAL @CORE One HF 0.6.json index 2a3f2ce950..887768ee8e 100644 --- a/resources/profiles/Prusa/process/0.32mm STRUCTURAL @CORE One HF 0.6.json +++ b/resources/profiles/Prusa/process/0.32mm STRUCTURAL @CORE One HF 0.6.json @@ -4,7 +4,7 @@ "inherits": "0.32mm STRUCTURAL @MK4S HF0.6", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "35", + "overhang_3_4_speed": "35", "support_speed": "110", "support_interface_speed": "50%", "travel_speed": "350", diff --git a/resources/profiles/Prusa/process/0.40mm QUALITY @CORE One 0.8.json b/resources/profiles/Prusa/process/0.40mm QUALITY @CORE One 0.8.json index 4567cd1dd7..a92c5eb3dd 100644 --- a/resources/profiles/Prusa/process/0.40mm QUALITY @CORE One 0.8.json +++ b/resources/profiles/Prusa/process/0.40mm QUALITY @CORE One 0.8.json @@ -4,8 +4,8 @@ "inherits": "0.40mm QUALITY @MK4S 0.8", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "35", - "top_surface_speed": "2000", + "overhang_3_4_speed": "35", + "top_surface_acceleration": "2000", "inner_wall_acceleration": "2500", "internal_solid_infill_acceleration": "5000", "sparse_infill_acceleration": "7000", diff --git a/resources/profiles/Prusa/process/0.40mm SPEED @CORE One HF 0.6.json b/resources/profiles/Prusa/process/0.40mm SPEED @CORE One HF 0.6.json index e0b870c9ad..bb913bcabd 100644 --- a/resources/profiles/Prusa/process/0.40mm SPEED @CORE One HF 0.6.json +++ b/resources/profiles/Prusa/process/0.40mm SPEED @CORE One HF 0.6.json @@ -4,9 +4,9 @@ "inherits": "0.40mm SPEED @MK4S HF0.6", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "35", - "overhang_3_4_speed": "70%", - "top_surface_speed": "2000", + "overhang_3_4_speed": "35", + "overhang_4_4_speed": "70%", + "top_surface_acceleration": "2000", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", @@ -17,6 +17,5 @@ "sparse_infill_acceleration": "7000", "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.6 and printer_notes=~/.*HF_NOZZLE.*/", "inner_wall_acceleration": "6000", - "outer_wall_acceleration": "3000", - "top_surface_acceleration": "2000" + "outer_wall_acceleration": "3000" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.40mm SPEED @CORE One HF 0.8.json b/resources/profiles/Prusa/process/0.40mm SPEED @CORE One HF 0.8.json index 142556619a..7e6f2c156c 100644 --- a/resources/profiles/Prusa/process/0.40mm SPEED @CORE One HF 0.8.json +++ b/resources/profiles/Prusa/process/0.40mm SPEED @CORE One HF 0.8.json @@ -4,8 +4,8 @@ "inherits": "0.40mm SPEED @MK4S HF0.8", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "45", - "top_surface_speed": "2000", + "overhang_3_4_speed": "45", + "top_surface_acceleration": "2000", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", @@ -14,5 +14,7 @@ "initial_layer_speed": "45", "internal_solid_infill_acceleration": "5000", "sparse_infill_acceleration": "7000", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.8 and printer_notes=~/.*HF_NOZZLE.*/" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.8 and printer_notes=~/.*HF_NOZZLE.*/", + "small_perimeter_speed": "85", + "outer_wall_speed": "85" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.40mm STRUCTURAL @CORE One HF 0.6.json b/resources/profiles/Prusa/process/0.40mm STRUCTURAL @CORE One HF 0.6.json index adfba858f2..fe8697d887 100644 --- a/resources/profiles/Prusa/process/0.40mm STRUCTURAL @CORE One HF 0.6.json +++ b/resources/profiles/Prusa/process/0.40mm STRUCTURAL @CORE One HF 0.6.json @@ -4,7 +4,7 @@ "inherits": "0.40mm STRUCTURAL @MK4S HF0.6", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "35", + "overhang_3_4_speed": "35", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", diff --git a/resources/profiles/Prusa/process/0.40mm STRUCTURAL @CORE One HF 0.8.json b/resources/profiles/Prusa/process/0.40mm STRUCTURAL @CORE One HF 0.8.json index e651c26ce3..6fbe39f6ba 100644 --- a/resources/profiles/Prusa/process/0.40mm STRUCTURAL @CORE One HF 0.8.json +++ b/resources/profiles/Prusa/process/0.40mm STRUCTURAL @CORE One HF 0.8.json @@ -4,8 +4,8 @@ "inherits": "0.40mm STRUCTURAL @MK4S HF0.8", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "40", - "top_surface_speed": "2000", + "overhang_3_4_speed": "40", + "top_surface_acceleration": "2000", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", @@ -16,6 +16,5 @@ "sparse_infill_acceleration": "6000", "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.8 and printer_notes=~/.*HF_NOZZLE.*/", "inner_wall_acceleration": "2500", - "outer_wall_acceleration": "1500", - "top_surface_acceleration": "2000" + "outer_wall_acceleration": "1500" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.55mm DRAFT @CORE One 0.8.json b/resources/profiles/Prusa/process/0.55mm DRAFT @CORE One 0.8.json index 6037cbdbda..5d350f3738 100644 --- a/resources/profiles/Prusa/process/0.55mm DRAFT @CORE One 0.8.json +++ b/resources/profiles/Prusa/process/0.55mm DRAFT @CORE One 0.8.json @@ -4,7 +4,7 @@ "inherits": "0.55mm DRAFT @MK4S 0.8", "from": "system", "instantiation": "true", - "top_surface_speed": "2000", + "top_surface_acceleration": "2000", "inner_wall_acceleration": "2500", "internal_solid_infill_acceleration": "5000", "sparse_infill_acceleration": "7000", @@ -14,5 +14,6 @@ "support_interface_top_layers": "3", "initial_layer_infill_speed": "55", "initial_layer_speed": "45", - "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.8 and printer_notes!~/.*HF_NOZZLE.*/" + "compatible_printers_condition": "printer_notes=~/.*PRINTER_MODEL_COREONE.*/ and nozzle_diameter[0]==0.8 and printer_notes!~/.*HF_NOZZLE.*/", + "inner_wall_speed": "45" } \ No newline at end of file diff --git a/resources/profiles/Prusa/process/0.55mm SPEED @CORE One HF 0.8.json b/resources/profiles/Prusa/process/0.55mm SPEED @CORE One HF 0.8.json index 11b159f114..f9270671a2 100644 --- a/resources/profiles/Prusa/process/0.55mm SPEED @CORE One HF 0.8.json +++ b/resources/profiles/Prusa/process/0.55mm SPEED @CORE One HF 0.8.json @@ -4,8 +4,8 @@ "inherits": "0.55mm SPEED @MK4S HF0.8", "from": "system", "instantiation": "true", - "overhang_2_4_speed": "45", - "top_surface_speed": "2000", + "overhang_3_4_speed": "45", + "top_surface_acceleration": "2000", "travel_speed": "350", "travel_acceleration": "7000", "default_acceleration": "3000", From 3c47b60063cce89c25de1437e13436bb29399c6b Mon Sep 17 00:00:00 2001 From: SoftFever Date: Tue, 23 Dec 2025 19:48:21 +0800 Subject: [PATCH 13/15] fix a build error --- src/libslic3r/GCode.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index eae1d1711a..707dadd9f9 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -6188,7 +6188,8 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description, // if still in avoidance mode and under "max", adjust speed: // - speeds in lower half of range: clamp down to "min" - // - speeds in upper half of range: boost up to "max" if (m_resonance_avoidance && speed < m_config.max_resonance_avoidance_speed.value) { + // - speeds in upper half of range: boost up to "max" + if (m_resonance_avoidance && speed < m_config.max_resonance_avoidance_speed.value) { if (speed < m_config.min_resonance_avoidance_speed.value + ((m_config.max_resonance_avoidance_speed.value - m_config.min_resonance_avoidance_speed.value) / 2)) { speed = std::min(speed, m_config.min_resonance_avoidance_speed.value); From 0aac0478e769af0e016cad2f9c1f9a0df93720f1 Mon Sep 17 00:00:00 2001 From: Noisyfox Date: Tue, 23 Dec 2025 23:44:43 +0800 Subject: [PATCH 14/15] GCode Macro: Fix placeholder parser bugs and enable tests (#11485) * Support creating vector variable * Add tests for placeholder parser variables * Fix placeholder line width substitution & tests * Enable PlaceholderParser tests * fix build errors --------- Co-authored-by: SoftFever --- scripts/run_unit_tests.sh | 2 +- src/libslic3r/PlaceholderParser.cpp | 13 +- tests/libslic3r/test_placeholder_parser.cpp | 176 +++++++++++++++++--- 3 files changed, 157 insertions(+), 34 deletions(-) diff --git a/scripts/run_unit_tests.sh b/scripts/run_unit_tests.sh index 081467b300..292c6c9d3f 100755 --- a/scripts/run_unit_tests.sh +++ b/scripts/run_unit_tests.sh @@ -9,4 +9,4 @@ ROOT_DIR="$(dirname "$0")/.." cd "${ROOT_DIR}" || exit 1 -ctest --test-dir build/tests --output-junit "$(pwd)/ctest_results.xml" --output-on-failure -j +ctest --test-dir build/tests -L "Http|PlaceholderParser" --output-junit "$(pwd)/ctest_results.xml" --output-on-failure -j diff --git a/src/libslic3r/PlaceholderParser.cpp b/src/libslic3r/PlaceholderParser.cpp index 92e4210f3c..f03a5cee38 100644 --- a/src/libslic3r/PlaceholderParser.cpp +++ b/src/libslic3r/PlaceholderParser.cpp @@ -1045,8 +1045,8 @@ namespace client case coFloatOrPercent: { std::string opt_key(opt.it_range.begin(), opt.it_range.end()); - if (boost::ends_with(opt_key, "extrusion_width")) { - // Extrusion width supports defaults and a complex graph of dependencies. + if (boost::ends_with(opt_key, "line_width")) { + // Line width supports defaults and a complex graph of dependencies. output.set_d(Flow::extrusion_width(opt_key, *ctx, static_cast(ctx->current_extruder_id))); } else if (! static_cast(opt.opt)->percent) { // Not a percent, just return the value. @@ -1060,8 +1060,8 @@ namespace client const ConfigOption *opt_parent = opt_def->ratio_over.empty() ? nullptr : ctx->resolve_symbol(opt_def->ratio_over); if (opt_parent == nullptr) ctx->throw_exception("FloatOrPercent variable failed to resolve the \"ratio_over\" dependencies", opt.it_range); - if (boost::ends_with(opt_def->ratio_over, "extrusion_width")) { - // Extrusion width supports defaults and a complex graph of dependencies. + if (boost::ends_with(opt_def->ratio_over, "line_width")) { + // Line width supports defaults and a complex graph of dependencies. assert(opt_parent->type() == coFloatOrPercent); v *= Flow::extrusion_width(opt_def->ratio_over, static_cast(opt_parent), *ctx, static_cast(ctx->current_extruder_id)); break; @@ -2197,9 +2197,8 @@ namespace client initializer_list(_r1)[px::bind(&MyContext::vector_variable_new_from_initializer_list, _r1, _a, _b, _1)] // Process it before conditional_expression, as conditional_expression requires a vector reference to be augmented with an index. // Only process such variable references, which return a naked vector variable. - // Orca todo: following code cause strange build errors with MSVC C++17 - // | eps(px::bind(&MyContext::could_be_vector_variable_reference, _b)) >> - // variable_reference(_r1)[px::val(qi::_pass) = px::bind(&MyContext::vector_variable_new_from_copy, _r1, _a, _b, _1)] + | eps(px::bind(&MyContext::could_be_vector_variable_reference, _b)) >> + variable_reference(_r1)[qi::_pass = px::bind(&MyContext::vector_variable_new_from_copy, _r1, _a, _b, _1)] // Would NOT consume '(' conditional_expression ')' because such value was consumed with the expression above. | conditional_expression(_r1) [px::bind(&MyContext::scalar_variable_new_from_scalar_expression, _r1, _a, _b, _1)] diff --git a/tests/libslic3r/test_placeholder_parser.cpp b/tests/libslic3r/test_placeholder_parser.cpp index 2394aad4bf..93c848b3a2 100644 --- a/tests/libslic3r/test_placeholder_parser.cpp +++ b/tests/libslic3r/test_placeholder_parser.cpp @@ -14,40 +14,22 @@ SCENARIO("Placeholder parser scripting", "[PlaceholderParser]") { { "nozzle_diameter", "0.6;0.6;0.6;0.6" }, { "nozzle_temperature", "357;359;363;378" } }); - // To let the PlaceholderParser throw when referencing initial_layer_line_width if it is set to percent, as the PlaceholderParser does not know + // To test the "min_width_top_surface" over "inner_wall_line_width". + config.option("inner_wall_line_width")->value = 150.; + config.option("inner_wall_line_width")->percent = true; + // To let the PlaceholderParser throw when referencing scarf_joint_speed if it is set to percent, as the PlaceholderParser does not know // a percent to what. - config.option("initial_layer_line_width")->value = 50.; - config.option("initial_layer_line_width")->percent = true; + config.option("scarf_joint_speed")->value = 50.; + config.option("scarf_joint_speed")->percent = true; parser.apply_config(config); parser.set("foo", 0); parser.set("bar", 2); parser.set("num_extruders", 4); - SECTION("nested config options (legacy syntax)") { REQUIRE(parser.process("[nozzle_temperature_[foo]]") == "357"); } + SECTION("nested config options (legacy syntax)") { REQUIRE(parser.process("[nozzle_temperature[foo]]") == "357"); } SECTION("array reference") { REQUIRE(parser.process("{nozzle_temperature[foo]}") == "357"); } - SECTION("whitespaces and newlines are maintained") { REQUIRE(parser.process("test [ nozzle_temperature_ [foo] ] \n hu") == "test 357 \n hu"); } - - // Test the "coFloatOrPercent" and "xxx_width" substitutions. - - // FIXME: Don't know what exactly this referred to in Prusaslicer or - // whether it should apply to Orca or not. - // {outer_wall_line_width} returns as its default value, 0. - // SECTION("outer_wall_line_width") { REQUIRE(std::stod(parser.process("{outer_wall_line_width}")) == Catch::Approx(0.67500001192092896)); } - SECTION("support_object_xy_distance") { REQUIRE(std::stod(parser.process("{support_object_xy_distance}")) == Catch::Approx(0.35)); } - // initial_layer_line_width ratio over nozzle_diameter. - // FIXME: either something else which correctly calculates a ratio should be here, - // or something else should be found for for the REQUIRE_THROWS - // SECTION("initial_layer_line_width") { REQUIRE(std::stod(parser.process("{initial_layer_line_width}")) == Catch::Approx(0.9)); } - // small_perimeter_speed ratio over outer_wall_speed - SECTION("small_perimeter_speed") { REQUIRE(std::stod(parser.process("{small_perimeter_speed}")) == Catch::Approx(30.)); } - // infill_wall_overlap over inner_wall_line_width - // FIXME: Shouldn't this return the calculated value and not the percentage 15? - // SECTION("infill_wall_overlap") { REQUIRE(std::stod(parser.process("{infill_wall_overlap}")) == Catch::Approx(0.16875)); } - - // If initial_layer_line_width is set to percent, then it is applied over respective extrusion types by overriding their respective speeds. - // The PlaceholderParser has no way to know which extrusion type the caller has in mind, therefore it throws. - SECTION("initial_layer_line_width throws failed to resolve the ratio_over dependencies") { REQUIRE_THROWS(parser.process("{initial_layer_line_width}")); } + SECTION("whitespaces and newlines are maintained") { REQUIRE(parser.process("test [ nozzle_temperature [foo] ] \n hu") == "test 357 \n hu"); } // Test the math expressions. SECTION("math: 2*3") { REQUIRE(parser.process("{2*3}") == "6"); } @@ -84,6 +66,20 @@ SCENARIO("Placeholder parser scripting", "[PlaceholderParser]") { SECTION("math: interpolate_table(13, (0, 0), (20, 20), (30, 20))") { REQUIRE(std::stod(parser.process("{interpolate_table(13, (0, 0), (20, 20), (30, 20))}")) == Catch::Approx(13.)); } SECTION("math: interpolate_table(25, (0, 0), (20, 20), (30, 20))") { REQUIRE(std::stod(parser.process("{interpolate_table(25, (0, 0), (20, 20), (30, 20))}")) == Catch::Approx(20.)); } + // Test the "coFloatOrPercent" and "xxx_line_width" substitutions. + // min_width_top_surface ratio_over inner_wall_line_width. + SECTION("line_width") { REQUIRE(std::stod(parser.process("{line_width}")) == Catch::Approx(0.67500001192092896)); } + SECTION("min_width_top_surface") { REQUIRE(std::stod(parser.process("{min_width_top_surface}")) == Catch::Approx(2.7)); } + // Orca: this one is not coFloatOrPercent + //SECTION("support_object_xy_distance") { REQUIRE(std::stod(parser.process("{support_object_xy_distance}")) == Catch::Approx(0.3375)); } + // small_perimeter_speed over outer_wall_speed + SECTION("small_perimeter_speed") { REQUIRE(std::stod(parser.process("{small_perimeter_speed}")) == Catch::Approx(30.)); } + // infill_anchor over sparse_infill_line_width + SECTION("infill_anchor") { REQUIRE(std::stod(parser.process("{infill_anchor}")) == Catch::Approx(2.7)); } + // If scarf_joint_speed is set to percent, then it is applied over respective extrusion types by overriding their respective speeds. + // The PlaceholderParser has no way to know which extrusion type the caller has in mind, therefore it throws. + SECTION("scarf_joint_speed") { REQUIRE_THROWS(parser.process("{scarf_joint_speed}")); } + // Test the boolean expression parser. auto boolean_expression = [&parser](const std::string& templ) { return parser.evaluate_boolean_expression(templ, parser.config()); }; @@ -116,3 +112,131 @@ SCENARIO("Placeholder parser scripting", "[PlaceholderParser]") { SECTION("complex expression2") { REQUIRE(boolean_expression("printer_notes=~/.*PRINTER_VEwerfNDOR_PRUSA3D.*/ or printer_notes=~/.*PRINTertER_MODEL_MK2.*/ or (nozzle_diameter[0]==0.6 and num_extruders>1)")); } SECTION("complex expression3") { REQUIRE(! boolean_expression("printer_notes=~/.*PRINTER_VEwerfNDOR_PRUSA3D.*/ or printer_notes=~/.*PRINTertER_MODEL_MK2.*/ or (nozzle_diameter[0]==0.3 and num_extruders>1)")); } } + +SCENARIO("Placeholder parser variables", "[PlaceholderParser]") { + PlaceholderParser parser; + auto config = DynamicPrintConfig::full_print_config(); + + config.set_deserialize_strict({ + { "filament_notes", "testnotes" }, + { "enable_pressure_advance", "1" }, + { "nozzle_diameter", "0.6;0.6;0.6;0.6" }, + { "nozzle_temperature", "357;359;363;378" } + }); + + PlaceholderParser::ContextData context_with_global_dict; + context_with_global_dict.global_config = std::make_unique(); + + SECTION("create an int local variable") { REQUIRE(parser.process("{local myint = 33+2}{myint}", 0, nullptr, nullptr, nullptr) == "35"); } + SECTION("create a string local variable") { REQUIRE(parser.process("{local mystr = \"mine\" + \"only\" + \"mine\"}{mystr}", 0, nullptr, nullptr, nullptr) == "mineonlymine"); } + SECTION("create a bool local variable") { REQUIRE(parser.process("{local mybool = 1 + 1 == 2}{mybool}", 0, nullptr, nullptr, nullptr) == "true"); } + SECTION("create an int global variable") { REQUIRE(parser.process("{global myint = 33+2}{myint}", 0, nullptr, nullptr, &context_with_global_dict) == "35"); } + SECTION("create a string global variable") { REQUIRE(parser.process("{global mystr = \"mine\" + \"only\" + \"mine\"}{mystr}", 0, nullptr, nullptr, &context_with_global_dict) == "mineonlymine"); } + SECTION("create a bool global variable") { REQUIRE(parser.process("{global mybool = 1 + 1 == 2}{mybool}", 0, nullptr, nullptr, &context_with_global_dict) == "true"); } + + SECTION("create an int local variable and overwrite it") { REQUIRE(parser.process("{local myint = 33+2}{myint = 12}{myint}", 0, nullptr, nullptr, nullptr) == "12"); } + SECTION("create a string local variable and overwrite it") { REQUIRE(parser.process("{local mystr = \"mine\" + \"only\" + \"mine\"}{mystr = \"yours\"}{mystr}", 0, nullptr, nullptr, nullptr) == "yours"); } + SECTION("create a bool local variable and overwrite it") { REQUIRE(parser.process("{local mybool = 1 + 1 == 2}{mybool = false}{mybool}", 0, nullptr, nullptr, nullptr) == "false"); } + SECTION("create an int global variable and overwrite it") { REQUIRE(parser.process("{global myint = 33+2}{myint = 12}{myint}", 0, nullptr, nullptr, &context_with_global_dict) == "12"); } + SECTION("create a string global variable and overwrite it") { REQUIRE(parser.process("{global mystr = \"mine\" + \"only\" + \"mine\"}{mystr = \"yours\"}{mystr}", 0, nullptr, nullptr, &context_with_global_dict) == "yours"); } + SECTION("create a bool global variable and overwrite it") { REQUIRE(parser.process("{global mybool = 1 + 1 == 2}{mybool = false}{mybool}", 0, nullptr, nullptr, &context_with_global_dict) == "false"); } + + SECTION("create an int local variable and redefine it") { REQUIRE(parser.process("{local myint = 33+2}{local myint = 12}{myint}", 0, nullptr, nullptr, nullptr) == "12"); } + SECTION("create a string local variable and redefine it") { REQUIRE(parser.process("{local mystr = \"mine\" + \"only\" + \"mine\"}{local mystr = \"yours\"}{mystr}", 0, nullptr, nullptr, nullptr) == "yours"); } + SECTION("create a bool local variable and redefine it") { REQUIRE(parser.process("{local mybool = 1 + 1 == 2}{local mybool = false}{mybool}", 0, nullptr, nullptr, nullptr) == "false"); } + SECTION("create an int global variable and redefine it") { REQUIRE(parser.process("{global myint = 33+2}{global myint = 12}{myint}", 0, nullptr, nullptr, &context_with_global_dict) == "12"); } + SECTION("create a string global variable and redefine it") { REQUIRE(parser.process("{global mystr = \"mine\" + \"only\" + \"mine\"}{global mystr = \"yours\"}{mystr}", 0, nullptr, nullptr, &context_with_global_dict) == "yours"); } + SECTION("create a bool global variable and redefine it") { REQUIRE(parser.process("{global mybool = 1 + 1 == 2}{global mybool = false}{mybool}", 0, nullptr, nullptr, &context_with_global_dict) == "false"); } + + SECTION("create an ints local variable with repeat()") { REQUIRE(parser.process("{local myint = repeat(2*3, 4*6)}{myint[5]}", 0, nullptr, nullptr, nullptr) == "24"); } + SECTION("create a strings local variable with repeat()") { REQUIRE(parser.process("{local mystr = repeat(2*3, \"mine\" + \"only\" + \"mine\")}{mystr[5]}", 0, nullptr, nullptr, nullptr) == "mineonlymine"); } + SECTION("create a bools local variable with repeat()") { REQUIRE(parser.process("{local mybool = repeat(5, 1 + 1 == 2)}{mybool[4]}", 0, nullptr, nullptr, nullptr) == "true"); } + SECTION("create an ints global variable with repeat()") { REQUIRE(parser.process("{global myint = repeat(2*3, 4*6)}{myint[5]}", 0, nullptr, nullptr, &context_with_global_dict) == "24"); } + SECTION("create a strings global variable with repeat()") { REQUIRE(parser.process("{global mystr = repeat(2*3, \"mine\" + \"only\" + \"mine\")}{mystr[5]}", 0, nullptr, nullptr, &context_with_global_dict) == "mineonlymine"); } + SECTION("create a bools global variable with repeat()") { REQUIRE(parser.process("{global mybool = repeat(5, 1 + 1 == 2)}{mybool[4]}", 0, nullptr, nullptr, &context_with_global_dict) == "true"); } + + SECTION("create an ints local variable with initializer list") { REQUIRE(parser.process("{local myint = (2*3, 4*6, 5*5)}{myint[1]}", 0, nullptr, nullptr, nullptr) == "24"); } + SECTION("create a strings local variable with initializer list") { REQUIRE(parser.process("{local mystr = (2*3, \"mine\" + \"only\" + \"mine\", 8)}{mystr[1]}", 0, nullptr, nullptr, nullptr) == "mineonlymine"); } + SECTION("create a bools local variable with initializer list") { REQUIRE(parser.process("{local mybool = (3*3 == 8, 1 + 1 == 2)}{mybool[1]}", 0, nullptr, nullptr, nullptr) == "true"); } + SECTION("create an ints global variable with initializer list") { REQUIRE(parser.process("{global myint = (2*3, 4*6, 5*5)}{myint[1]}", 0, nullptr, nullptr, &context_with_global_dict) == "24"); } + SECTION("create a strings global variable with initializer list") { REQUIRE(parser.process("{global mystr = (2*3, \"mine\" + \"only\" + \"mine\", 8)}{mystr[1]}", 0, nullptr, nullptr, &context_with_global_dict) == "mineonlymine"); } + SECTION("create a bools global variable with initializer list") { REQUIRE(parser.process("{global mybool = (2*3 == 8, 1 + 1 == 2, 5*5 != 33)}{mybool[1]}", 0, nullptr, nullptr, &context_with_global_dict) == "true"); } + + SECTION("create an ints local variable by a copy") { REQUIRE(parser.process("{local myint = nozzle_temperature}{myint[0]}", 0, &config, nullptr, nullptr) == "357"); } + SECTION("create a strings local variable by a copy") { REQUIRE(parser.process("{local mystr = filament_notes}{mystr[0]}", 0, &config, nullptr, nullptr) == "testnotes"); } + SECTION("create a bools local variable by a copy") { REQUIRE(parser.process("{local mybool = enable_pressure_advance}{mybool[0]}", 0, &config, nullptr, nullptr) == "true"); } + SECTION("create an ints global variable by a copy") { REQUIRE(parser.process("{global myint = nozzle_temperature}{myint[0]}", 0, &config, nullptr, &context_with_global_dict) == "357"); } + SECTION("create a strings global variable by a copy") { REQUIRE(parser.process("{global mystr = filament_notes}{mystr[0]}", 0, &config, nullptr, &context_with_global_dict) == "testnotes"); } + SECTION("create a bools global variable by a copy") { REQUIRE(parser.process("{global mybool = enable_pressure_advance}{mybool[0]}", 0, &config, nullptr, &context_with_global_dict) == "true"); } + + SECTION("create an ints local variable by a copy and overwrite it") { + REQUIRE(parser.process("{local myint = nozzle_temperature}{myint = repeat(2*3, 4*6)}{myint[5]}", 0, &config, nullptr, nullptr) == "24"); + REQUIRE(parser.process("{local myint = nozzle_temperature}{myint = (2*3, 4*6)}{myint[1]}", 0, &config, nullptr, nullptr) == "24"); + REQUIRE(parser.process("{local myint = nozzle_temperature}{myint = (1)}{myint = nozzle_temperature}{myint[0]}", 0, &config, nullptr, nullptr) == "357"); + } + SECTION("create a strings local variable by a copy and overwrite it") { + REQUIRE(parser.process("{local mystr = filament_notes}{mystr = repeat(2*3, \"mine\" + \"only\" + \"mine\")}{mystr[5]}", 0, &config, nullptr, nullptr) == "mineonlymine"); + REQUIRE(parser.process("{local mystr = filament_notes}{mystr = (2*3, \"mine\" + \"only\" + \"mine\")}{mystr[1]}", 0, &config, nullptr, nullptr) == "mineonlymine"); + REQUIRE(parser.process("{local mystr = filament_notes}{mystr = (2*3, \"mine\" + \"only\" + \"mine\")}{mystr = filament_notes}{mystr[0]}", 0, &config, nullptr, nullptr) == "testnotes"); + } + SECTION("create a bools local variable by a copy and overwrite it") { + REQUIRE(parser.process("{local mybool = enable_pressure_advance}{mybool = repeat(2*3, true)}{mybool[5]}", 0, &config, nullptr, nullptr) == "true"); + REQUIRE(parser.process("{local mybool = enable_pressure_advance}{mybool = (false, true)}{mybool[1]}", 0, &config, nullptr, nullptr) == "true"); + REQUIRE(parser.process("{local mybool = enable_pressure_advance}{mybool = (false, false)}{mybool = enable_pressure_advance}{mybool[0]}", 0, &config, nullptr, nullptr) == "true"); + } + + SECTION("size() of a non-empty vector returns the right size") { REQUIRE(parser.process("{local myint = (0, 1, 2, 3)}{size(myint)}", 0, nullptr, nullptr, nullptr) == "4"); } + SECTION("size() of a an empty vector returns the right size") { REQUIRE(parser.process("{local myint = (0);myint=();size(myint)}", 0, nullptr, nullptr, nullptr) == "0"); } + SECTION("empty() of a non-empty vector returns false") { REQUIRE(parser.process("{local myint = (0, 1, 2, 3)}{empty(myint)}", 0, nullptr, nullptr, nullptr) == "false"); } + SECTION("empty() of a an empty vector returns true") { REQUIRE(parser.process("{local myint = (0);myint=();empty(myint)}", 0, nullptr, nullptr, nullptr) == "true"); } + + SECTION("nested if with new variables") { + std::string script = + "{if 1 == 1}{local myints = (5, 4, 3, 2, 1)}{else}{local myfloats = (1., 2., 3., 4., 5., 6., 7.)}{endif}" + "{myints[1]},{size(myints)}"; + REQUIRE(parser.process(script, 0, nullptr, nullptr, nullptr) == "4,5"); + } + SECTION("nested if with new variables 2") { + std::string script = + "{if 1 == 0}{local myints = (5, 4, 3, 2, 1)}{else}{local myfloats = (1., 2., 3., 4., 5., 6., 7.)}{endif}" + "{size(myfloats)}"; + REQUIRE(parser.process(script, 0, nullptr, nullptr, nullptr) == "7"); + } + SECTION("nested if with new variables 2, mixing }{ with ;") { + std::string script = + "{if 1 == 0 then local myints = (5, 4, 3, 2, 1);else;local myfloats = (1., 2., 3., 4., 5., 6., 7.);endif}" + "{size(myfloats)}"; + REQUIRE(parser.process(script, 0, nullptr, nullptr, nullptr) == "7"); + } + SECTION("nested if with new variables, two level") { + std::string script = + "{if 1 == 1}{if 2 == 3}{nejaka / haluz}{else}{local myints = (6, 5, 4, 3, 2, 1)}{endif}{else}{if zase * haluz}{else}{local myfloats = (1., 2., 3., 4., 5., 6., 7.)}{endif}{endif}" + "{size(myints)}"; + REQUIRE(parser.process(script, 0, nullptr, nullptr, nullptr) == "6"); + } + SECTION("if with empty block and ;") { + std::string script = + "{if false then else;local myfloats = (1., 2., 3., 4., 5., 6., 7.);endif}" + "{size(myfloats)}"; + REQUIRE(parser.process(script, 0, nullptr, nullptr, nullptr) == "7"); + } + SECTION("nested if with new variables, two level, mixing }{ with ;") { + std::string script = + "{if 1 == 1 then if 2 == 3}nejaka / haluz{else local myints = (6, 5, 4, 3, 2, 1) endif else if zase * haluz then else local myfloats = (1., 2., 3., 4., 5., 6., 7.) endif endif}" + "{size(myints)}"; + REQUIRE(parser.process(script, 0, nullptr, nullptr, nullptr) == "6"); + } + SECTION("nested if with new variables, two level, mixing }{ with ; 2") { + std::string script = + "{if 1 == 1 then if 2 == 3 then nejaka / haluz else}{local myints = (6, 5, 4, 3, 2, 1)}{endif else if zase * haluz then else local myfloats = (1., 2., 3., 4., 5., 6., 7.) endif endif}" + "{size(myints)}"; + REQUIRE(parser.process(script, 0, nullptr, nullptr, nullptr) == "6"); + } + SECTION("nested if with new variables, two level, mixing }{ with ; 3") { + std::string script = + "{if 1 == 1 then if 2 == 3 then nejaka / haluz else}{local myints = (6, 5, 4, 3, 2, 1)}{endif else}{if zase * haluz}{else local myfloats = (1., 2., 3., 4., 5., 6., 7.) endif}{endif}" + "{size(myints)}"; + REQUIRE(parser.process(script, 0, nullptr, nullptr, nullptr) == "6"); + } + SECTION("if else completely empty") { REQUIRE(parser.process("{if false then elsif false then else endif}", 0, nullptr, nullptr, nullptr) == ""); } +} From b1d659bad5829693ff42fc855a17490dff639e67 Mon Sep 17 00:00:00 2001 From: Kiss Lorand <50251547+kisslorand@users.noreply.github.com> Date: Tue, 23 Dec 2025 19:06:29 +0200 Subject: [PATCH 15/15] FIX: Refresh filament setting overrides on preset change (#11712) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Refresh filament setting overrides on preset change The filament “Setting Overrides” page derives its UI state from multiple configs (filament, printer, process), but this derived state was not recomputed during preset reloads. As a result, override widgets could reflect stale values until the page was revisited or a user interaction triggered an update. Recompute the filament setting overrides as part of TabFilament::reload_config(), keeping the derived UI in sync with the active preset immediately after reload. --- src/slic3r/GUI/Tab.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp index ab3a43ab4e..fd8ede92d2 100644 --- a/src/slic3r/GUI/Tab.cpp +++ b/src/slic3r/GUI/Tab.cpp @@ -4143,6 +4143,9 @@ void TabFilament::reload_config() this->compatible_widget_reload(m_compatible_printers); this->compatible_widget_reload(m_compatible_prints); Tab::reload_config(); + + // Recompute derived override UI from the newly loaded config + update_filament_overrides_page(&m_preset_bundle->printers.get_edited_preset().config); } //void TabFilament::update_volumetric_flow_preset_hints()