From ebdfee0fef0f4a014c88e8a0f7c593f5f1a159ee Mon Sep 17 00:00:00 2001 From: Rijk van Manen Date: Thu, 9 Feb 2023 12:49:45 +0100 Subject: [PATCH 01/44] update cool_min_temperature lower limit The cool_min_temperature should be larger then both the initial and final temperature too avoid that the printer is heating too much and later on waits for cooling. We could make the limit less strict for single extrusion. PP-71 --- resources/definitions/fdmprinter.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 9154ce95ae..3d07faf5cb 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -4419,7 +4419,7 @@ "type": "float", "value": "material_print_temperature", "enabled": "cool_min_layer_time > 0", - "minimum_value": "material_final_print_temperature", + "minimum_value": "max(material_final_print_temperature, material_initial_print_temperature)", "maximum_value": "material_print_temperature", "settable_per_mesh": false, "settable_per_extruder": true From f8edf893751d942281e2ba49ea27732e31d705b8 Mon Sep 17 00:00:00 2001 From: Rijk van Manen Date: Thu, 9 Feb 2023 12:50:44 +0100 Subject: [PATCH 02/44] avoid too low cool_min_temperature By taking the max value it is not possible anymore that a (3rd party) profile has a too low cool_min_temperature causing it too not slice. PP-71 --- resources/definitions/ultimaker.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/ultimaker.def.json b/resources/definitions/ultimaker.def.json index a1be0e9dfe..655ff0e4ec 100644 --- a/resources/definitions/ultimaker.def.json +++ b/resources/definitions/ultimaker.def.json @@ -41,7 +41,7 @@ "cool_min_layer_time": { "value": 6 }, "cool_min_layer_time_fan_speed_max": { "value": "cool_min_layer_time + 5" }, "cool_min_speed": { "value": "round(speed_wall_0 * 3 / 4) if cool_lift_head else round(speed_wall_0 / 5)" }, - "cool_min_temperature": { "value": "material_print_temperature - 15" }, + "cool_min_temperature": { "value": "max([material_final_print_temperature, material_initial_print_temperature, material_print_temperature - 15])" }, "gradual_support_infill_step_height": { "value": "4 * layer_height" }, "gradual_support_infill_steps": { "value": "2 if support_interface_enable else 0" }, "infill_material_flow": { "value": "(1.95-infill_sparse_density / 100 if infill_sparse_density > 95 else 1) * material_flow" }, From 9088ab23f4bab500ba0f6842ccb784ec937b7ff2 Mon Sep 17 00:00:00 2001 From: Rijk van Manen Date: Thu, 9 Feb 2023 12:57:25 +0100 Subject: [PATCH 03/44] cleanup initial print temperatures In the initial PR for PP-71 I only cleaned up material_final_print_temperatures, but now the material_initial_print_temperatures are also coming into play, so I cleaned those as well. From research for PP-123 I know this is a safe change. Due to this cleanup the cool_min_temperature can now always follow the ultimaker default settings. --- resources/definitions/ultimaker2_plus_connect.def.json | 5 ----- .../ultimaker3/um3_aa0.25_PLA_Normal_Quality.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg | 2 +- .../ultimaker3/um3_aa0.25_TPLA_Normal_Quality.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_ABS_Draft_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_ABS_Fast_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_ABS_High_Quality.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_ABS_Normal_Quality.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_CPEP_Draft_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_CPEP_Fast_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_CPEP_High_Quality.inst.cfg | 1 - .../ultimaker3/um3_aa0.4_CPEP_Normal_Quality.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_CPE_Draft_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_CPE_Fast_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_CPE_High_Quality.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_CPE_Normal_Quality.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_Nylon_Draft_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_Nylon_Fast_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_Nylon_High_Quality.inst.cfg | 1 - .../ultimaker3/um3_aa0.4_Nylon_Normal_Quality.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_PC_Draft_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_PC_Fast_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_PC_High_Quality.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_PC_Normal_Quality.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_PETG_Draft_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_PETG_Fast_Print.inst.cfg | 1 - .../ultimaker3/um3_aa0.4_PETG_Normal_Quality.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg | 2 +- .../quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg | 4 ++-- .../quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg | 2 +- .../quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg | 2 +- .../quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg | 2 +- .../quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg | 2 +- .../quality/ultimaker3/um3_aa0.8_PLA_Draft_Print.inst.cfg | 1 - .../ultimaker3/um3_aa0.8_PLA_Superdraft_Print.inst.cfg | 1 - .../ultimaker3/um3_aa0.8_PLA_Verydraft_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.8_TPLA_Draft_Print.inst.cfg | 1 - .../ultimaker3/um3_aa0.8_TPLA_Superdraft_Print.inst.cfg | 1 - .../ultimaker3/um3_aa0.8_TPLA_Verydraft_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.8_TPU_Draft_Print.inst.cfg | 2 +- .../ultimaker3/um3_aa0.8_TPU_Superdraft_Print.inst.cfg | 2 +- .../ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg | 2 +- .../quality/ultimaker_s3/um_s3_aa0.25_pla_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.25_pp_0.1mm.inst.cfg | 3 +-- .../ultimaker_s3/um_s3_aa0.25_tough-pla_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_abs_0.06mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_abs_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_abs_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_abs_0.2mm.inst.cfg | 1 - .../ultimaker_s3/um_s3_aa0.4_cpe-plus_0.06mm.inst.cfg | 1 - .../ultimaker_s3/um_s3_aa0.4_cpe-plus_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_cpe_0.06mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_cpe_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_cpe_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_cpe_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_nylon_0.06mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_nylon_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_nylon_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_nylon_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_pc_0.06mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_pc_0.15mm.inst.cfg | 1 - resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.1mm.inst.cfg | 1 - resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_petg_0.06mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_petg_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_petg_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_petg_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.4_pp_0.15mm.inst.cfg | 5 ++--- resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.1mm.inst.cfg | 3 +-- resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.2mm.inst.cfg | 3 +-- .../quality/ultimaker_s3/um_s3_aa0.4_tpu_0.15mm.inst.cfg | 3 +-- .../quality/ultimaker_s3/um_s3_aa0.4_tpu_0.1mm.inst.cfg | 3 +-- .../quality/ultimaker_s3/um_s3_aa0.4_tpu_0.2mm.inst.cfg | 3 +-- .../quality/ultimaker_s3/um_s3_aa0.8_pla_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.8_pla_0.3mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.8_pla_0.4mm.inst.cfg | 1 - resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.2mm.inst.cfg | 3 ++- resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.3mm.inst.cfg | 3 ++- resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.4mm.inst.cfg | 3 ++- .../ultimaker_s3/um_s3_aa0.8_tough-pla_0.2mm.inst.cfg | 1 - .../ultimaker_s3/um_s3_aa0.8_tough-pla_0.3mm.inst.cfg | 1 - .../ultimaker_s3/um_s3_aa0.8_tough-pla_0.4mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_aa0.8_tpu_0.2mm.inst.cfg | 3 +-- .../quality/ultimaker_s3/um_s3_aa0.8_tpu_0.3mm.inst.cfg | 3 +-- .../quality/ultimaker_s3/um_s3_aa0.8_tpu_0.4mm.inst.cfg | 3 +-- .../quality/ultimaker_s3/um_s3_cc0.4_pla_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_cc0.4_pla_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_cc0.6_pla_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s3/um_s3_cc0.6_pla_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.25_pla_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.25_pp_0.1mm.inst.cfg | 3 +-- .../ultimaker_s5/um_s5_aa0.25_tough-pla_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_abs_0.06mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_abs_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_abs_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_abs_0.2mm.inst.cfg | 1 - .../ultimaker_s5/um_s5_aa0.4_cpe-plus_0.06mm.inst.cfg | 1 - .../ultimaker_s5/um_s5_aa0.4_cpe-plus_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_cpe_0.06mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_cpe_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_cpe_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_cpe_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_nylon_0.06mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_nylon_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_nylon_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_nylon_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_pc_0.06mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_pc_0.15mm.inst.cfg | 1 - resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.1mm.inst.cfg | 1 - resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_petg_0.06mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_petg_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_petg_0.1mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_petg_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.4_pp_0.15mm.inst.cfg | 5 ++--- resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.1mm.inst.cfg | 3 +-- resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.2mm.inst.cfg | 3 +-- .../quality/ultimaker_s5/um_s5_aa0.4_tpu_0.15mm.inst.cfg | 3 +-- .../quality/ultimaker_s5/um_s5_aa0.4_tpu_0.1mm.inst.cfg | 3 +-- .../quality/ultimaker_s5/um_s5_aa0.4_tpu_0.2mm.inst.cfg | 3 +-- .../quality/ultimaker_s5/um_s5_aa0.8_pla_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.8_pla_0.3mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.8_pla_0.4mm.inst.cfg | 1 - resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.2mm.inst.cfg | 3 ++- resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.3mm.inst.cfg | 3 ++- resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.4mm.inst.cfg | 3 ++- .../ultimaker_s5/um_s5_aa0.8_tough-pla_0.2mm.inst.cfg | 1 - .../ultimaker_s5/um_s5_aa0.8_tough-pla_0.3mm.inst.cfg | 1 - .../ultimaker_s5/um_s5_aa0.8_tough-pla_0.4mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_aa0.8_tpu_0.2mm.inst.cfg | 3 +-- .../quality/ultimaker_s5/um_s5_aa0.8_tpu_0.3mm.inst.cfg | 3 +-- .../quality/ultimaker_s5/um_s5_aa0.8_tpu_0.4mm.inst.cfg | 3 +-- .../quality/ultimaker_s5/um_s5_cc0.4_pla_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_cc0.4_pla_0.2mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_cc0.6_pla_0.15mm.inst.cfg | 1 - .../quality/ultimaker_s5/um_s5_cc0.6_pla_0.2mm.inst.cfg | 1 - resources/variants/ultimaker3_aa0.25.inst.cfg | 1 - resources/variants/ultimaker3_aa0.8.inst.cfg | 1 - resources/variants/ultimaker3_extended_aa0.25.inst.cfg | 1 - resources/variants/ultimaker3_extended_aa0.8.inst.cfg | 1 - resources/variants/ultimaker_s3_aa0.25.inst.cfg | 1 - resources/variants/ultimaker_s3_aa0.8.inst.cfg | 1 - resources/variants/ultimaker_s5_aa0.25.inst.cfg | 1 - resources/variants/ultimaker_s5_aa0.8.inst.cfg | 1 - resources/variants/ultimaker_s7_aa0.25.inst.cfg | 1 - resources/variants/ultimaker_s7_aa0.8.inst.cfg | 1 - 150 files changed, 45 insertions(+), 177 deletions(-) diff --git a/resources/definitions/ultimaker2_plus_connect.def.json b/resources/definitions/ultimaker2_plus_connect.def.json index fbcbcc6dc8..2a8c675951 100644 --- a/resources/definitions/ultimaker2_plus_connect.def.json +++ b/resources/definitions/ultimaker2_plus_connect.def.json @@ -101,11 +101,6 @@ "machine_width": { "default_value": 223 }, "material_bed_temperature": { "maximum_value": 110 }, "material_bed_temperature_layer_0": { "maximum_value": 110 }, - "material_initial_print_temperature": - { - "maximum_value": 260, - "value": "material_print_temperature" - }, "material_print_temperature": { "maximum_value": 260 }, "material_print_temperature_layer_0": { "maximum_value": 260 }, "meshfix_maximum_deviation": { "value": "(layer_height / 3) if magic_spiralize else (layer_height / 4)" }, diff --git a/resources/quality/ultimaker3/um3_aa0.25_PLA_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.25_PLA_Normal_Quality.inst.cfg index e594b7f404..a18d54eefa 100644 --- a/resources/quality/ultimaker3/um3_aa0.25_PLA_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.25_PLA_Normal_Quality.inst.cfg @@ -17,7 +17,6 @@ infill_overlap = =0 if infill_sparse_density > 80 else 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'grid' machine_nozzle_cool_down_speed = 0.9 machine_nozzle_heat_up_speed = 1.4 -material_initial_print_temperature = =max(-273.15, material_print_temperature - 10) material_print_temperature = 190 retraction_hop = 0.2 skin_overlap = 5 diff --git a/resources/quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg index bef2487fc7..523567423c 100644 --- a/resources/quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg @@ -19,7 +19,7 @@ infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 material_final_print_temperature = =material_print_temperature - 10 -material_initial_print_temperature = =material_print_temperature - 5 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 15 multiple_mesh_overlap = 0 prime_tower_enable = False diff --git a/resources/quality/ultimaker3/um3_aa0.25_TPLA_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.25_TPLA_Normal_Quality.inst.cfg index 3a71ddedc6..ede4f6bbdc 100644 --- a/resources/quality/ultimaker3/um3_aa0.25_TPLA_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.25_TPLA_Normal_Quality.inst.cfg @@ -17,7 +17,6 @@ infill_overlap = =0 if infill_sparse_density > 80 else 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'grid' machine_nozzle_cool_down_speed = 0.9 machine_nozzle_heat_up_speed = 1.4 -material_initial_print_temperature = =max(-273.15, material_print_temperature - 10) material_print_temperature = =default_material_print_temperature - 15 skin_overlap = 5 speed_print = 30 diff --git a/resources/quality/ultimaker3/um3_aa0.4_ABS_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_ABS_Draft_Print.inst.cfg index 5367c176e9..07868c8f25 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_ABS_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_ABS_Draft_Print.inst.cfg @@ -14,7 +14,6 @@ weight = -2 [values] machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = False skin_overlap = 20 diff --git a/resources/quality/ultimaker3/um3_aa0.4_ABS_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_ABS_Fast_Print.inst.cfg index e0b6c94447..ab0a053f8a 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_ABS_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_ABS_Fast_Print.inst.cfg @@ -14,7 +14,6 @@ weight = -1 [values] machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 5 prime_tower_enable = False speed_print = 60 diff --git a/resources/quality/ultimaker3/um3_aa0.4_ABS_High_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_ABS_High_Quality.inst.cfg index 30f9bea8e9..c91defcd2f 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_ABS_High_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_ABS_High_Quality.inst.cfg @@ -14,7 +14,6 @@ weight = 1 [values] machine_nozzle_cool_down_speed = 0.8 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature - 5 prime_tower_enable = False speed_print = 50 diff --git a/resources/quality/ultimaker3/um3_aa0.4_ABS_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_ABS_Normal_Quality.inst.cfg index 460fe81670..b1ef992326 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_ABS_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_ABS_Normal_Quality.inst.cfg @@ -14,7 +14,6 @@ weight = 0 [values] machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 prime_tower_enable = False speed_print = 55 speed_topbottom = =math.ceil(speed_print * 30 / 55) diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPEP_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPEP_Draft_Print.inst.cfg index e253b1c936..a43bd51e74 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPEP_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPEP_Draft_Print.inst.cfg @@ -17,7 +17,6 @@ infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' infill_wipe_dist = 0 layer_height = 0.2 machine_min_cool_heat_time_window = 15 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 multiple_mesh_overlap = 0 prime_tower_enable = True diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPEP_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPEP_Fast_Print.inst.cfg index 938ec7f4ca..b7b3246e91 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPEP_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPEP_Fast_Print.inst.cfg @@ -17,7 +17,6 @@ infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' infill_wipe_dist = 0 layer_height = 0.15 machine_min_cool_heat_time_window = 15 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 multiple_mesh_overlap = 0 prime_tower_enable = True diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPEP_High_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPEP_High_Quality.inst.cfg index e318829d79..db89133c67 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPEP_High_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPEP_High_Quality.inst.cfg @@ -19,7 +19,6 @@ layer_height = 0.06 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0 prime_tower_enable = True diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPEP_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPEP_Normal_Quality.inst.cfg index 6d4cc56b1f..89605efbf8 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPEP_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPEP_Normal_Quality.inst.cfg @@ -18,7 +18,6 @@ infill_wipe_dist = 0 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 5 multiple_mesh_overlap = 0 prime_tower_enable = True diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPE_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPE_Draft_Print.inst.cfg index f764ceca77..5de80dacf8 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPE_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPE_Draft_Print.inst.cfg @@ -12,7 +12,6 @@ variant = AA 0.4 weight = -2 [values] -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 skin_overlap = 20 speed_print = 60 diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPE_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPE_Fast_Print.inst.cfg index c0ae02490b..85797fbe1a 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPE_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPE_Fast_Print.inst.cfg @@ -12,7 +12,6 @@ variant = AA 0.4 weight = -1 [values] -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 5 speed_print = 60 speed_topbottom = =math.ceil(speed_print * 30 / 60) diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPE_High_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPE_High_Quality.inst.cfg index 63e36d4fe0..33cdae387f 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPE_High_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPE_High_Quality.inst.cfg @@ -14,7 +14,6 @@ weight = 1 [values] machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature - 5 speed_print = 50 speed_topbottom = =math.ceil(speed_print * 30 / 50) diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPE_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPE_Normal_Quality.inst.cfg index c22cb45c49..3c0ba5d7c0 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPE_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPE_Normal_Quality.inst.cfg @@ -14,7 +14,6 @@ weight = 0 [values] machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 speed_print = 55 speed_topbottom = =math.ceil(speed_print * 30 / 55) speed_wall = =math.ceil(speed_print * 30 / 55) diff --git a/resources/quality/ultimaker3/um3_aa0.4_Nylon_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_Nylon_Draft_Print.inst.cfg index 10f96e5ef2..bfb42c7ede 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_Nylon_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_Nylon_Draft_Print.inst.cfg @@ -13,7 +13,6 @@ weight = -2 [values] adhesion_type = brim -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 ooze_shield_angle = 40 raft_airgap = 0.25 diff --git a/resources/quality/ultimaker3/um3_aa0.4_Nylon_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_Nylon_Fast_Print.inst.cfg index 09514b4874..2ffe453a5e 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_Nylon_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_Nylon_Fast_Print.inst.cfg @@ -13,7 +13,6 @@ weight = -1 [values] adhesion_type = brim -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 5 ooze_shield_angle = 40 raft_airgap = 0.25 diff --git a/resources/quality/ultimaker3/um3_aa0.4_Nylon_High_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_Nylon_High_Quality.inst.cfg index 324b77674a..c656ccb7e8 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_Nylon_High_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_Nylon_High_Quality.inst.cfg @@ -13,7 +13,6 @@ weight = 1 [values] adhesion_type = brim -material_initial_print_temperature = =material_print_temperature - 5 ooze_shield_angle = 40 raft_airgap = 0.25 skin_overlap = 50 diff --git a/resources/quality/ultimaker3/um3_aa0.4_Nylon_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_Nylon_Normal_Quality.inst.cfg index c100eb1bdb..20994737c3 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_Nylon_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_Nylon_Normal_Quality.inst.cfg @@ -13,7 +13,6 @@ weight = 0 [values] adhesion_type = brim -material_initial_print_temperature = =material_print_temperature - 5 ooze_shield_angle = 40 raft_airgap = 0.25 skin_overlap = 50 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PC_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PC_Draft_Print.inst.cfg index a38aedd81e..e167fed4a2 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PC_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PC_Draft_Print.inst.cfg @@ -22,7 +22,6 @@ layer_height = 0.2 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 multiple_mesh_overlap = 0 ooze_shield_angle = 40 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PC_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PC_Fast_Print.inst.cfg index 22cfe29d90..ff85785279 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PC_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PC_Fast_Print.inst.cfg @@ -21,7 +21,6 @@ layer_height = 0.15 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 multiple_mesh_overlap = 0 ooze_shield_angle = 40 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PC_High_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PC_High_Quality.inst.cfg index 51d422dcf0..3f5bceaad1 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PC_High_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PC_High_Quality.inst.cfg @@ -22,7 +22,6 @@ layer_height = 0.06 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature - 10 multiple_mesh_overlap = 0 ooze_shield_angle = 40 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PC_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PC_Normal_Quality.inst.cfg index df1c926c81..db92b7049d 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PC_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PC_Normal_Quality.inst.cfg @@ -20,7 +20,6 @@ infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 multiple_mesh_overlap = 0 ooze_shield_angle = 40 prime_tower_enable = True diff --git a/resources/quality/ultimaker3/um3_aa0.4_PETG_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PETG_Draft_Print.inst.cfg index 2fbb282db5..ee06e7b2a6 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PETG_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PETG_Draft_Print.inst.cfg @@ -12,7 +12,6 @@ variant = AA 0.4 weight = -2 [values] -material_initial_print_temperature = =material_print_temperature material_print_temperature = =default_material_print_temperature + 5 retraction_combing = all skin_overlap = 20 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PETG_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PETG_Fast_Print.inst.cfg index 7b81e890d0..565a0e111e 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PETG_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PETG_Fast_Print.inst.cfg @@ -12,7 +12,6 @@ variant = AA 0.4 weight = -1 [values] -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature retraction_combing = all speed_infill = =math.ceil(speed_print * 50 / 60) diff --git a/resources/quality/ultimaker3/um3_aa0.4_PETG_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PETG_Normal_Quality.inst.cfg index 9ae45bc99c..5ae0e92582 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PETG_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PETG_Normal_Quality.inst.cfg @@ -14,7 +14,6 @@ weight = 0 [values] machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 5 retraction_combing = all speed_infill = =math.ceil(speed_print * 45 / 55) diff --git a/resources/quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg index 20da0cdc4e..8048a6a0e5 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg @@ -22,7 +22,7 @@ machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 10 -material_initial_print_temperature = =material_print_temperature - 5 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 5 multiple_mesh_overlap = 0 prime_tower_enable = False diff --git a/resources/quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg index c906592150..7f64288e91 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg @@ -21,8 +21,8 @@ layer_height = 0.15 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_final_print_temperature = =material_print_temperature - 12 -material_initial_print_temperature = =material_print_temperature - 2 +material_final_print_temperature = =material_print_temperature - 10 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 13 multiple_mesh_overlap = 0 prime_tower_enable = False diff --git a/resources/quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg index 2fd61d6bc5..3b5440c5fb 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg @@ -21,7 +21,7 @@ machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 10 -material_initial_print_temperature = =material_print_temperature - 5 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 15 multiple_mesh_overlap = 0 prime_tower_enable = False diff --git a/resources/quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg index c49c389d89..df185c4745 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg @@ -25,7 +25,7 @@ machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 106 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0 prime_tower_wipe_enabled = True diff --git a/resources/quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg index c6e9ad5c8b..f0fac9bc2f 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg @@ -25,7 +25,7 @@ machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 106 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0 prime_tower_wipe_enabled = True diff --git a/resources/quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg index 008d4f9f5a..31f5c649d2 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg @@ -24,7 +24,7 @@ machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 106 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 multiple_mesh_overlap = 0 prime_tower_wipe_enabled = True retraction_count_max = 15 diff --git a/resources/quality/ultimaker3/um3_aa0.8_PLA_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_PLA_Draft_Print.inst.cfg index bcaecfef67..cb86b763b4 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_PLA_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_PLA_Draft_Print.inst.cfg @@ -16,7 +16,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =max(-273.15, material_print_temperature - 10) material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/quality/ultimaker3/um3_aa0.8_PLA_Superdraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_PLA_Superdraft_Print.inst.cfg index 9a04acf6a1..733074fc29 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_PLA_Superdraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_PLA_Superdraft_Print.inst.cfg @@ -17,7 +17,6 @@ infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' layer_height = 0.4 machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =max(-273.15, material_print_temperature - 10) material_print_temperature = =default_material_print_temperature + 15 prime_tower_enable = True speed_infill = =math.ceil(speed_print * 35 / 45) diff --git a/resources/quality/ultimaker3/um3_aa0.8_PLA_Verydraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_PLA_Verydraft_Print.inst.cfg index 570b39c952..5628d15fb0 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_PLA_Verydraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_PLA_Verydraft_Print.inst.cfg @@ -17,7 +17,6 @@ infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' layer_height = 0.3 machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =max(-273.15, material_print_temperature - 10) material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/quality/ultimaker3/um3_aa0.8_TPLA_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_TPLA_Draft_Print.inst.cfg index 657d1321f6..5affdb50fd 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_TPLA_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_TPLA_Draft_Print.inst.cfg @@ -16,7 +16,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cubic' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =max(-273.15, material_print_temperature - 10) material_print_temperature = =default_material_print_temperature + 0 prime_tower_enable = False speed_print = 45 diff --git a/resources/quality/ultimaker3/um3_aa0.8_TPLA_Superdraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_TPLA_Superdraft_Print.inst.cfg index b915e1aa5b..b3f0fb322d 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_TPLA_Superdraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_TPLA_Superdraft_Print.inst.cfg @@ -16,7 +16,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cubic' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =max(-273.15, material_print_temperature - 10) material_print_temperature = =default_material_print_temperature + 5 prime_tower_enable = False speed_infill = =math.ceil(speed_print * 30 / 30) diff --git a/resources/quality/ultimaker3/um3_aa0.8_TPLA_Verydraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_TPLA_Verydraft_Print.inst.cfg index c3880c681b..cda3cf8b56 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_TPLA_Verydraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_TPLA_Verydraft_Print.inst.cfg @@ -16,7 +16,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cubic' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =max(-273.15, material_print_temperature - 10) material_print_temperature = =default_material_print_temperature + 5 prime_tower_enable = False speed_infill = =math.ceil(speed_print * 30 / 35) diff --git a/resources/quality/ultimaker3/um3_aa0.8_TPU_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_TPU_Draft_Print.inst.cfg index 90a451e472..d7a0eb0510 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_TPU_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_TPU_Draft_Print.inst.cfg @@ -21,7 +21,7 @@ machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 105 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 2 multiple_mesh_overlap = 0.2 prime_tower_enable = True diff --git a/resources/quality/ultimaker3/um3_aa0.8_TPU_Superdraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_TPU_Superdraft_Print.inst.cfg index d1d08ee39f..18966c8de5 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_TPU_Superdraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_TPU_Superdraft_Print.inst.cfg @@ -22,7 +22,7 @@ machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 105 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0.2 prime_tower_enable = True diff --git a/resources/quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg index 421fce0265..8bcc26e098 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg @@ -22,7 +22,7 @@ machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 105 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 multiple_mesh_overlap = 0.2 prime_tower_enable = True prime_tower_flow = 100 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.25_pla_0.1mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.25_pla_0.1mm.inst.cfg index d1c4210f33..47d387be54 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.25_pla_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.25_pla_0.1mm.inst.cfg @@ -17,7 +17,6 @@ infill_overlap = =0 if infill_sparse_density > 80 else 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'grid' machine_nozzle_cool_down_speed = 0.9 machine_nozzle_heat_up_speed = 1.4 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = 190 retraction_hop = 0.2 skin_overlap = 5 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.25_pp_0.1mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.25_pp_0.1mm.inst.cfg index b0713de4f9..8037a47780 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.25_pp_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.25_pp_0.1mm.inst.cfg @@ -14,12 +14,11 @@ weight = 0 [values] brim_width = 10 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 material_final_print_temperature = =material_print_temperature - 10 -material_initial_print_temperature = =material_print_temperature - 5 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 15 multiple_mesh_overlap = 0 prime_tower_enable = False diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.25_tough-pla_0.1mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.25_tough-pla_0.1mm.inst.cfg index 50450ccedb..5d594381c2 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.25_tough-pla_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.25_tough-pla_0.1mm.inst.cfg @@ -17,7 +17,6 @@ infill_overlap = =0 if infill_sparse_density > 80 else 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'grid' machine_nozzle_cool_down_speed = 0.9 machine_nozzle_heat_up_speed = 1.4 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 15 skin_overlap = 5 speed_print = 30 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.06mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.06mm.inst.cfg index 2bbb5244c7..6072b67a0e 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.06mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.06mm.inst.cfg @@ -15,7 +15,6 @@ weight = 1 machine_nozzle_cool_down_speed = 0.8 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 20 -material_initial_print_temperature = =material_print_temperature - 15 material_print_temperature = =default_material_print_temperature + 5 prime_tower_enable = False raft_airgap = 0.15 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.15mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.15mm.inst.cfg index 186f7e5600..61674bc415 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.15mm.inst.cfg @@ -15,7 +15,6 @@ weight = -1 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 20 -material_initial_print_temperature = =material_print_temperature - 15 material_print_temperature = =default_material_print_temperature + 15 prime_tower_enable = False raft_airgap = 0.15 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.1mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.1mm.inst.cfg index cb6b776e1f..39c7d51e9e 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.1mm.inst.cfg @@ -15,7 +15,6 @@ weight = 0 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 20 -material_initial_print_temperature = =material_print_temperature - 15 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = False raft_airgap = 0.15 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.2mm.inst.cfg index d228fd481d..8163d77214 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_abs_0.2mm.inst.cfg @@ -15,7 +15,6 @@ weight = -2 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 20 -material_initial_print_temperature = =material_print_temperature - 15 material_print_temperature = =default_material_print_temperature + 20 prime_tower_enable = False raft_airgap = 0.15 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.06mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.06mm.inst.cfg index 05b43752d0..52b7a6e17e 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.06mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.06mm.inst.cfg @@ -17,7 +17,6 @@ infill_wipe_dist = 0 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.15mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.15mm.inst.cfg index 8ddcb67e9c..8b116c1faa 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.15mm.inst.cfg @@ -15,7 +15,6 @@ weight = -1 infill_overlap = 0 infill_wipe_dist = 0 machine_min_cool_heat_time_window = 15 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 multiple_mesh_overlap = 0 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.1mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.1mm.inst.cfg index ad0d267ef5..87d7380812 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.1mm.inst.cfg @@ -17,7 +17,6 @@ infill_wipe_dist = 0 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 5 multiple_mesh_overlap = 0 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.2mm.inst.cfg index 9a46fd5d1c..89d30a97d5 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe-plus_0.2mm.inst.cfg @@ -15,7 +15,6 @@ weight = -2 infill_overlap = 0 infill_wipe_dist = 0 machine_min_cool_heat_time_window = 15 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 multiple_mesh_overlap = 0 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.06mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.06mm.inst.cfg index 70b1b3156a..58c449e7f3 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.06mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.06mm.inst.cfg @@ -15,7 +15,6 @@ weight = 1 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature - 5 retraction_prime_speed = =retraction_speed speed_infill = =math.ceil(speed_print * 40 / 50) diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.15mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.15mm.inst.cfg index 2e98ae7737..3162e0712a 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.15mm.inst.cfg @@ -13,7 +13,6 @@ weight = -1 [values] infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 5 retraction_prime_speed = =retraction_speed speed_infill = =math.ceil(speed_print * 50 / 60) diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.1mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.1mm.inst.cfg index abe4d7a801..fe196e783a 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.1mm.inst.cfg @@ -15,7 +15,6 @@ weight = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 retraction_prime_speed = =retraction_speed speed_infill = =math.ceil(speed_print * 45 / 55) speed_print = 55 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.2mm.inst.cfg index e6194cd1b9..dbfebcc02b 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_cpe_0.2mm.inst.cfg @@ -13,7 +13,6 @@ weight = -2 [values] infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 retraction_prime_speed = =retraction_speed skin_overlap = 20 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.06mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.06mm.inst.cfg index b6facd3fc2..47ba4ff9ab 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.06mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.06mm.inst.cfg @@ -12,7 +12,6 @@ variant = AA 0.4 weight = 1 [values] -material_initial_print_temperature = =material_print_temperature - 5 ooze_shield_angle = 40 raft_airgap = 0.4 retraction_prime_speed = =retraction_speed diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.15mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.15mm.inst.cfg index 82731d1a15..79100cc944 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.15mm.inst.cfg @@ -12,7 +12,6 @@ variant = AA 0.4 weight = -1 [values] -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 5 ooze_shield_angle = 40 raft_airgap = 0.4 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.1mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.1mm.inst.cfg index 3448c96d5f..5fb48ed3e4 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.1mm.inst.cfg @@ -12,7 +12,6 @@ variant = AA 0.4 weight = 0 [values] -material_initial_print_temperature = =material_print_temperature - 5 ooze_shield_angle = 40 raft_airgap = 0.4 retraction_prime_speed = =retraction_speed diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.2mm.inst.cfg index 59b661f405..23b81943ef 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_nylon_0.2mm.inst.cfg @@ -12,7 +12,6 @@ variant = AA 0.4 weight = -2 [values] -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 ooze_shield_angle = 40 raft_airgap = 0.4 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.06mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.06mm.inst.cfg index c3a7f28c24..85b364c042 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.06mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.06mm.inst.cfg @@ -20,7 +20,6 @@ infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature - 10 multiple_mesh_overlap = 0 ooze_shield_angle = 40 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.15mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.15mm.inst.cfg index 0d40b98d52..3118e4e176 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.15mm.inst.cfg @@ -19,7 +19,6 @@ infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 multiple_mesh_overlap = 0 ooze_shield_angle = 40 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.1mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.1mm.inst.cfg index 741b2cc383..4a0041a1fa 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.1mm.inst.cfg @@ -19,7 +19,6 @@ infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 multiple_mesh_overlap = 0 ooze_shield_angle = 40 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.2mm.inst.cfg index 1253cd27cf..981cf334a3 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_pc_0.2mm.inst.cfg @@ -20,7 +20,6 @@ infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 multiple_mesh_overlap = 0 ooze_shield_angle = 40 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.06mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.06mm.inst.cfg index 07499c8f2f..5022773478 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.06mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.06mm.inst.cfg @@ -15,7 +15,6 @@ weight = 1 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 10 speed_infill = =math.ceil(speed_print * 40 / 50) speed_print = 50 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.15mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.15mm.inst.cfg index d20a8bb9fa..de0126e750 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.15mm.inst.cfg @@ -13,7 +13,6 @@ weight = -1 [values] infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature speed_infill = =math.ceil(speed_print * 50 / 60) speed_print = 60 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.1mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.1mm.inst.cfg index 289595576f..3c02014866 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.1mm.inst.cfg @@ -15,7 +15,6 @@ weight = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 5 speed_infill = =math.ceil(speed_print * 45 / 55) speed_print = 55 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.2mm.inst.cfg index a410fb7c4f..7d62b4476d 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_petg_0.2mm.inst.cfg @@ -13,7 +13,6 @@ weight = -2 [values] infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' -material_initial_print_temperature = =material_print_temperature material_print_temperature = =default_material_print_temperature + 5 skin_overlap = 20 speed_infill = =math.ceil(speed_print * 50 / 60) diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.15mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.15mm.inst.cfg index 8a4dc3f47d..0de966fb2c 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.15mm.inst.cfg @@ -13,15 +13,14 @@ weight = -1 [values] brim_width = 20 -cool_min_temperature = =material_print_temperature - 10 infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_final_print_temperature = =material_print_temperature - 12 -material_initial_print_temperature = =material_print_temperature - 2 +material_final_print_temperature = =material_print_temperature - 10 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 13 multiple_mesh_overlap = 0 prime_tower_enable = False diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.1mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.1mm.inst.cfg index f0d9c7aff7..27776f6b37 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.1mm.inst.cfg @@ -13,7 +13,6 @@ weight = 0 [values] brim_width = 20 -cool_min_temperature = =material_print_temperature - 10 infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' infill_wipe_dist = 0.1 @@ -21,7 +20,7 @@ machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 10 -material_initial_print_temperature = =material_print_temperature - 5 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 15 multiple_mesh_overlap = 0 prime_tower_enable = False diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.2mm.inst.cfg index 8ba022244b..4034da9598 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_pp_0.2mm.inst.cfg @@ -13,7 +13,6 @@ weight = -2 [values] brim_width = 20 -cool_min_temperature = =material_print_temperature - 10 infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' infill_wipe_dist = 0.1 @@ -21,7 +20,7 @@ machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 10 -material_initial_print_temperature = =material_print_temperature - 5 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 5 multiple_mesh_overlap = 0 prime_tower_enable = False diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_tpu_0.15mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_tpu_0.15mm.inst.cfg index 4b31a831f7..56e041ce92 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_tpu_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_tpu_0.15mm.inst.cfg @@ -13,7 +13,6 @@ weight = -1 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 gradual_infill_step_height = =5 * layer_height infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' @@ -24,7 +23,7 @@ machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 106 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0 prime_tower_wipe_enabled = True diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_tpu_0.1mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_tpu_0.1mm.inst.cfg index 8b767d51cf..bfa1fc7dbd 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_tpu_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_tpu_0.1mm.inst.cfg @@ -13,7 +13,6 @@ weight = 0 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 gradual_infill_step_height = =5 * layer_height infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' @@ -24,7 +23,7 @@ machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 106 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 multiple_mesh_overlap = 0 prime_tower_wipe_enabled = True retraction_count_max = 15 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.4_tpu_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.4_tpu_0.2mm.inst.cfg index cec14f8798..a73742b8ad 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.4_tpu_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.4_tpu_0.2mm.inst.cfg @@ -13,7 +13,6 @@ weight = -2 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 gradual_infill_step_height = =5 * layer_height infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' @@ -24,7 +23,7 @@ machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 106 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0 prime_tower_wipe_enabled = True diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.8_pla_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.8_pla_0.2mm.inst.cfg index 44cd000085..74ebe86eec 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.8_pla_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.8_pla_0.2mm.inst.cfg @@ -15,7 +15,6 @@ weight = -2 gradual_infill_step_height = =3 * layer_height machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.8_pla_0.3mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.8_pla_0.3mm.inst.cfg index 9e3a1a8885..f2c753dd9b 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.8_pla_0.3mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.8_pla_0.3mm.inst.cfg @@ -15,7 +15,6 @@ weight = -3 gradual_infill_step_height = =3 * layer_height machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.8_pla_0.4mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.8_pla_0.4mm.inst.cfg index 847a4d5dfe..86c201650e 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.8_pla_0.4mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.8_pla_0.4mm.inst.cfg @@ -15,7 +15,6 @@ weight = -4 gradual_infill_step_height = =3 * layer_height machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 15 prime_tower_enable = True speed_infill = =math.ceil(speed_print * 35 / 45) diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.2mm.inst.cfg index 52fc4ff2fb..9b45f8e0ee 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.2mm.inst.cfg @@ -13,8 +13,9 @@ weight = -2 [values] brim_width = 25 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' +material_final_print_temperature = =material_print_temperature - 10 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 2 multiple_mesh_overlap = 0.2 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.3mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.3mm.inst.cfg index e1be37414c..627927ad70 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.3mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.3mm.inst.cfg @@ -13,8 +13,9 @@ weight = -3 [values] brim_width = 25 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' +material_final_print_temperature = =material_print_temperature - 10 +material_initial_print_temperature = =material_print_temperature - 10 multiple_mesh_overlap = 0.2 prime_tower_enable = True prime_tower_flow = 100 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.4mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.4mm.inst.cfg index 7f3e0d8f0a..d5b08ff2ff 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.4mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.8_pp_0.4mm.inst.cfg @@ -13,8 +13,9 @@ weight = -4 [values] brim_width = 25 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' +material_final_print_temperature = =material_print_temperature - 10 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0.2 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.8_tough-pla_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.8_tough-pla_0.2mm.inst.cfg index 1e40c7bb7e..df9e0f75f1 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.8_tough-pla_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.8_tough-pla_0.2mm.inst.cfg @@ -16,7 +16,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cubic' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 0 prime_tower_enable = False speed_print = 45 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.8_tough-pla_0.3mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.8_tough-pla_0.3mm.inst.cfg index 0476f2971d..9e583429a0 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.8_tough-pla_0.3mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.8_tough-pla_0.3mm.inst.cfg @@ -16,7 +16,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cubic' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 5 prime_tower_enable = False speed_infill = =math.ceil(speed_print * 30 / 35) diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.8_tough-pla_0.4mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.8_tough-pla_0.4mm.inst.cfg index d03923f7c0..f2cfb3997f 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.8_tough-pla_0.4mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.8_tough-pla_0.4mm.inst.cfg @@ -16,7 +16,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cubic' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 5 prime_tower_enable = False speed_infill = =math.ceil(speed_print * 30 / 30) diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.8_tpu_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.8_tpu_0.2mm.inst.cfg index db326595bf..2c91826f00 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.8_tpu_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.8_tpu_0.2mm.inst.cfg @@ -13,13 +13,12 @@ weight = -2 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 105 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 2 multiple_mesh_overlap = 0.2 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.8_tpu_0.3mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.8_tpu_0.3mm.inst.cfg index cec71414b7..3be1ad0bd9 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.8_tpu_0.3mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.8_tpu_0.3mm.inst.cfg @@ -13,14 +13,13 @@ weight = -3 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' infill_sparse_density = 15 machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 105 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 multiple_mesh_overlap = 0.2 prime_tower_enable = True prime_tower_flow = 100 diff --git a/resources/quality/ultimaker_s3/um_s3_aa0.8_tpu_0.4mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_aa0.8_tpu_0.4mm.inst.cfg index 53aafa0648..ac5987e95f 100644 --- a/resources/quality/ultimaker_s3/um_s3_aa0.8_tpu_0.4mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_aa0.8_tpu_0.4mm.inst.cfg @@ -13,14 +13,13 @@ weight = -4 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' infill_sparse_density = 15 machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 105 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0.2 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s3/um_s3_cc0.4_pla_0.15mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_cc0.4_pla_0.15mm.inst.cfg index fcd297c6cf..8f9060d30e 100644 --- a/resources/quality/ultimaker_s3/um_s3_cc0.4_pla_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_cc0.4_pla_0.15mm.inst.cfg @@ -17,7 +17,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/quality/ultimaker_s3/um_s3_cc0.4_pla_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_cc0.4_pla_0.2mm.inst.cfg index 45c56b361c..caa267a431 100644 --- a/resources/quality/ultimaker_s3/um_s3_cc0.4_pla_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_cc0.4_pla_0.2mm.inst.cfg @@ -17,7 +17,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/quality/ultimaker_s3/um_s3_cc0.6_pla_0.15mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_cc0.6_pla_0.15mm.inst.cfg index c3ad9dd43f..67efc2450b 100644 --- a/resources/quality/ultimaker_s3/um_s3_cc0.6_pla_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_cc0.6_pla_0.15mm.inst.cfg @@ -17,7 +17,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/quality/ultimaker_s3/um_s3_cc0.6_pla_0.2mm.inst.cfg b/resources/quality/ultimaker_s3/um_s3_cc0.6_pla_0.2mm.inst.cfg index 5637ac9f65..c88230743c 100644 --- a/resources/quality/ultimaker_s3/um_s3_cc0.6_pla_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s3/um_s3_cc0.6_pla_0.2mm.inst.cfg @@ -17,7 +17,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.25_pla_0.1mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.25_pla_0.1mm.inst.cfg index 1047547cd0..dcbb270e44 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.25_pla_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.25_pla_0.1mm.inst.cfg @@ -17,7 +17,6 @@ infill_overlap = =0 if infill_sparse_density > 80 else 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'grid' machine_nozzle_cool_down_speed = 0.9 machine_nozzle_heat_up_speed = 1.4 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = 190 retraction_hop = 0.2 skin_overlap = 5 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.25_pp_0.1mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.25_pp_0.1mm.inst.cfg index e2f539e49b..3b82b0886c 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.25_pp_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.25_pp_0.1mm.inst.cfg @@ -14,12 +14,11 @@ weight = 0 [values] brim_width = 10 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 material_final_print_temperature = =material_print_temperature - 10 -material_initial_print_temperature = =material_print_temperature - 5 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 15 multiple_mesh_overlap = 0 prime_tower_enable = False diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.25_tough-pla_0.1mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.25_tough-pla_0.1mm.inst.cfg index c30cbadfc3..a3be2cd1e6 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.25_tough-pla_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.25_tough-pla_0.1mm.inst.cfg @@ -17,7 +17,6 @@ infill_overlap = =0 if infill_sparse_density > 80 else 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'grid' machine_nozzle_cool_down_speed = 0.9 machine_nozzle_heat_up_speed = 1.4 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 15 skin_overlap = 5 speed_print = 30 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.06mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.06mm.inst.cfg index 2bbdf917b8..9f4ba9b560 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.06mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.06mm.inst.cfg @@ -15,7 +15,6 @@ weight = 1 machine_nozzle_cool_down_speed = 0.8 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 20 -material_initial_print_temperature = =material_print_temperature - 15 material_print_temperature = =default_material_print_temperature + 5 prime_tower_enable = False raft_airgap = 0.15 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.15mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.15mm.inst.cfg index d26a9582f3..988a7f49cf 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.15mm.inst.cfg @@ -15,7 +15,6 @@ weight = -1 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 20 -material_initial_print_temperature = =material_print_temperature - 15 material_print_temperature = =default_material_print_temperature + 15 prime_tower_enable = False raft_airgap = 0.15 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.1mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.1mm.inst.cfg index d7b688972b..6e8bb243a8 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.1mm.inst.cfg @@ -15,7 +15,6 @@ weight = 0 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 20 -material_initial_print_temperature = =material_print_temperature - 15 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = False raft_airgap = 0.15 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.2mm.inst.cfg index 5a1e339d12..70503d2cb7 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_abs_0.2mm.inst.cfg @@ -15,7 +15,6 @@ weight = -2 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 20 -material_initial_print_temperature = =material_print_temperature - 15 material_print_temperature = =default_material_print_temperature + 20 prime_tower_enable = False raft_airgap = 0.15 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.06mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.06mm.inst.cfg index d38604389b..2ad61e2b8e 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.06mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.06mm.inst.cfg @@ -17,7 +17,6 @@ infill_wipe_dist = 0 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.15mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.15mm.inst.cfg index 5bda1bda2d..4e77666a86 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.15mm.inst.cfg @@ -15,7 +15,6 @@ weight = -1 infill_overlap = 0 infill_wipe_dist = 0 machine_min_cool_heat_time_window = 15 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 multiple_mesh_overlap = 0 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.1mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.1mm.inst.cfg index c659172901..87c836e270 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.1mm.inst.cfg @@ -17,7 +17,6 @@ infill_wipe_dist = 0 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 5 multiple_mesh_overlap = 0 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.2mm.inst.cfg index ee390485f3..25819c37f3 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe-plus_0.2mm.inst.cfg @@ -15,7 +15,6 @@ weight = -2 infill_overlap = 0 infill_wipe_dist = 0 machine_min_cool_heat_time_window = 15 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 multiple_mesh_overlap = 0 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.06mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.06mm.inst.cfg index 5e5d4a258e..14071bfa30 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.06mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.06mm.inst.cfg @@ -15,7 +15,6 @@ weight = 1 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature - 5 retraction_prime_speed = =retraction_speed speed_infill = =math.ceil(speed_print * 40 / 50) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.15mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.15mm.inst.cfg index ac5d97b37e..0b63f0109c 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.15mm.inst.cfg @@ -13,7 +13,6 @@ weight = -1 [values] infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 5 retraction_prime_speed = =retraction_speed speed_infill = =math.ceil(speed_print * 50 / 60) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.1mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.1mm.inst.cfg index 79c29ceee7..75f5740969 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.1mm.inst.cfg @@ -15,7 +15,6 @@ weight = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 retraction_prime_speed = =retraction_speed speed_infill = =math.ceil(speed_print * 45 / 55) speed_print = 55 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.2mm.inst.cfg index 32902774ca..1d846288ba 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_cpe_0.2mm.inst.cfg @@ -13,7 +13,6 @@ weight = -2 [values] infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 retraction_prime_speed = =retraction_speed skin_overlap = 20 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.06mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.06mm.inst.cfg index 47d8cd7ace..6ecd43a41c 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.06mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.06mm.inst.cfg @@ -12,7 +12,6 @@ variant = AA 0.4 weight = 1 [values] -material_initial_print_temperature = =material_print_temperature - 5 ooze_shield_angle = 40 raft_airgap = 0.4 retraction_prime_speed = =retraction_speed diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.15mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.15mm.inst.cfg index a123553a11..7f7acaecb9 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.15mm.inst.cfg @@ -12,7 +12,6 @@ variant = AA 0.4 weight = -1 [values] -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 5 ooze_shield_angle = 40 raft_airgap = 0.4 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.1mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.1mm.inst.cfg index 10ca1cf7c2..a44c7b9703 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.1mm.inst.cfg @@ -12,7 +12,6 @@ variant = AA 0.4 weight = 0 [values] -material_initial_print_temperature = =material_print_temperature - 5 ooze_shield_angle = 40 raft_airgap = 0.4 retraction_prime_speed = =retraction_speed diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.2mm.inst.cfg index 648a88e484..fdd3eb4fea 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_nylon_0.2mm.inst.cfg @@ -12,7 +12,6 @@ variant = AA 0.4 weight = -2 [values] -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 ooze_shield_angle = 40 raft_airgap = 0.4 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.06mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.06mm.inst.cfg index f93b8a8d34..52b7291852 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.06mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.06mm.inst.cfg @@ -20,7 +20,6 @@ infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature - 10 multiple_mesh_overlap = 0 ooze_shield_angle = 40 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.15mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.15mm.inst.cfg index ee64ec53c9..981c52cee2 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.15mm.inst.cfg @@ -19,7 +19,6 @@ infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 multiple_mesh_overlap = 0 ooze_shield_angle = 40 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.1mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.1mm.inst.cfg index f2070a1cab..14a48a425b 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.1mm.inst.cfg @@ -19,7 +19,6 @@ infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 multiple_mesh_overlap = 0 ooze_shield_angle = 40 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.2mm.inst.cfg index d7105b31aa..dfa955fc9d 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_pc_0.2mm.inst.cfg @@ -20,7 +20,6 @@ infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature + 10 multiple_mesh_overlap = 0 ooze_shield_angle = 40 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.06mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.06mm.inst.cfg index 1510e3fcce..75f004ec4c 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.06mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.06mm.inst.cfg @@ -15,7 +15,6 @@ weight = 1 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 10 speed_infill = =math.ceil(speed_print * 40 / 50) speed_print = 50 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.15mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.15mm.inst.cfg index 21e9e47e20..afe24b51be 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.15mm.inst.cfg @@ -13,7 +13,6 @@ weight = -1 [values] infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' -material_initial_print_temperature = =material_print_temperature - 5 material_print_temperature = =default_material_print_temperature speed_infill = =math.ceil(speed_print * 50 / 60) speed_print = 60 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.1mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.1mm.inst.cfg index 2a467e57d4..c29e866e3a 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.1mm.inst.cfg @@ -15,7 +15,6 @@ weight = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 5 speed_infill = =math.ceil(speed_print * 45 / 55) speed_print = 55 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.2mm.inst.cfg index 47041319e3..6a4f979cd7 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_petg_0.2mm.inst.cfg @@ -13,7 +13,6 @@ weight = -2 [values] infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' -material_initial_print_temperature = =material_print_temperature material_print_temperature = =default_material_print_temperature + 5 skin_overlap = 20 speed_infill = =math.ceil(speed_print * 50 / 60) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.15mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.15mm.inst.cfg index 0f8407ef38..263c900ea4 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.15mm.inst.cfg @@ -13,15 +13,14 @@ weight = -1 [values] brim_width = 20 -cool_min_temperature = =material_print_temperature - 10 infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 -material_final_print_temperature = =material_print_temperature - 12 -material_initial_print_temperature = =material_print_temperature - 2 +material_final_print_temperature = =material_print_temperature - 10 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 13 multiple_mesh_overlap = 0 prime_tower_enable = False diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.1mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.1mm.inst.cfg index 04723a0e0a..faa8b08a3e 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.1mm.inst.cfg @@ -13,7 +13,6 @@ weight = 0 [values] brim_width = 20 -cool_min_temperature = =material_print_temperature - 10 infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' infill_wipe_dist = 0.1 @@ -21,7 +20,7 @@ machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 10 -material_initial_print_temperature = =material_print_temperature - 5 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 15 multiple_mesh_overlap = 0 prime_tower_enable = False diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.2mm.inst.cfg index 4c095f2db4..b502967784 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_pp_0.2mm.inst.cfg @@ -13,7 +13,6 @@ weight = -2 [values] brim_width = 20 -cool_min_temperature = =material_print_temperature - 10 infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' infill_wipe_dist = 0.1 @@ -21,7 +20,7 @@ machine_min_cool_heat_time_window = 15 machine_nozzle_cool_down_speed = 0.85 machine_nozzle_heat_up_speed = 1.5 material_final_print_temperature = =material_print_temperature - 10 -material_initial_print_temperature = =material_print_temperature - 5 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 5 multiple_mesh_overlap = 0 prime_tower_enable = False diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_tpu_0.15mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_tpu_0.15mm.inst.cfg index 79fa239e61..bc4997a764 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_tpu_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_tpu_0.15mm.inst.cfg @@ -13,7 +13,6 @@ weight = -1 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 gradual_infill_step_height = =5 * layer_height infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' @@ -24,7 +23,7 @@ machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 106 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0 prime_tower_wipe_enabled = True diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_tpu_0.1mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_tpu_0.1mm.inst.cfg index 7d9ea28a30..e6143b74a7 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_tpu_0.1mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_tpu_0.1mm.inst.cfg @@ -13,7 +13,6 @@ weight = 0 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 gradual_infill_step_height = =5 * layer_height infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' @@ -24,7 +23,7 @@ machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 106 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 multiple_mesh_overlap = 0 prime_tower_wipe_enabled = True retraction_count_max = 15 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_tpu_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_tpu_0.2mm.inst.cfg index 930f1433eb..3f921745eb 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_tpu_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_tpu_0.2mm.inst.cfg @@ -13,7 +13,6 @@ weight = -2 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 gradual_infill_step_height = =5 * layer_height infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' @@ -24,7 +23,7 @@ machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 106 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0 prime_tower_wipe_enabled = True diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_pla_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_pla_0.2mm.inst.cfg index d047f232af..e0882fb68f 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_pla_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_pla_0.2mm.inst.cfg @@ -15,7 +15,6 @@ weight = -2 gradual_infill_step_height = =3 * layer_height machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_pla_0.3mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_pla_0.3mm.inst.cfg index 2b503c7031..8b130c0200 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_pla_0.3mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_pla_0.3mm.inst.cfg @@ -15,7 +15,6 @@ weight = -3 gradual_infill_step_height = =3 * layer_height machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_pla_0.4mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_pla_0.4mm.inst.cfg index a15208fca0..132d4d3303 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_pla_0.4mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_pla_0.4mm.inst.cfg @@ -15,7 +15,6 @@ weight = -4 gradual_infill_step_height = =3 * layer_height machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 15 prime_tower_enable = True speed_infill = =math.ceil(speed_print * 35 / 45) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.2mm.inst.cfg index bb766c711a..19a5186662 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.2mm.inst.cfg @@ -13,8 +13,9 @@ weight = -2 [values] brim_width = 25 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' +material_final_print_temperature = =material_print_temperature - 10 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 2 multiple_mesh_overlap = 0.2 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.3mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.3mm.inst.cfg index 07aff45049..b471a8be21 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.3mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.3mm.inst.cfg @@ -13,8 +13,9 @@ weight = -3 [values] brim_width = 25 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' +material_final_print_temperature = =material_print_temperature - 10 +material_initial_print_temperature = =material_print_temperature - 10 multiple_mesh_overlap = 0.2 prime_tower_enable = True prime_tower_flow = 100 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.4mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.4mm.inst.cfg index 45d3442d89..fc7f8bff48 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.4mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_pp_0.4mm.inst.cfg @@ -13,8 +13,9 @@ weight = -4 [values] brim_width = 25 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' +material_final_print_temperature = =material_print_temperature - 10 +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0.2 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_tough-pla_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_tough-pla_0.2mm.inst.cfg index 5baa7c340c..f5a4a1371e 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_tough-pla_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_tough-pla_0.2mm.inst.cfg @@ -16,7 +16,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cubic' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 0 prime_tower_enable = False speed_print = 45 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_tough-pla_0.3mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_tough-pla_0.3mm.inst.cfg index 384c204eaa..1c816201cf 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_tough-pla_0.3mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_tough-pla_0.3mm.inst.cfg @@ -16,7 +16,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cubic' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 5 prime_tower_enable = False speed_infill = =math.ceil(speed_print * 30 / 35) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_tough-pla_0.4mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_tough-pla_0.4mm.inst.cfg index 3a42f68f57..49999c24b0 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_tough-pla_0.4mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_tough-pla_0.4mm.inst.cfg @@ -16,7 +16,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cubic' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 5 prime_tower_enable = False speed_infill = =math.ceil(speed_print * 30 / 30) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_tpu_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_tpu_0.2mm.inst.cfg index 391ffc1fb0..e145f87271 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_tpu_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_tpu_0.2mm.inst.cfg @@ -13,13 +13,12 @@ weight = -2 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 105 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature - 2 multiple_mesh_overlap = 0.2 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_tpu_0.3mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_tpu_0.3mm.inst.cfg index a6a4527f63..b9db26ad0c 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_tpu_0.3mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_tpu_0.3mm.inst.cfg @@ -13,14 +13,13 @@ weight = -3 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' infill_sparse_density = 15 machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 105 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 multiple_mesh_overlap = 0.2 prime_tower_enable = True prime_tower_flow = 100 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_tpu_0.4mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_tpu_0.4mm.inst.cfg index 000371039c..06a5cdd350 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_tpu_0.4mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_tpu_0.4mm.inst.cfg @@ -13,14 +13,13 @@ weight = -4 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' infill_sparse_density = 15 machine_nozzle_cool_down_speed = 0.5 machine_nozzle_heat_up_speed = 2.5 material_final_print_temperature = =material_print_temperature - 10 material_flow = 105 -material_initial_print_temperature = =material_print_temperature +material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0.2 prime_tower_enable = True diff --git a/resources/quality/ultimaker_s5/um_s5_cc0.4_pla_0.15mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_cc0.4_pla_0.15mm.inst.cfg index 9d17742bdf..c8e83f34cf 100644 --- a/resources/quality/ultimaker_s5/um_s5_cc0.4_pla_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_cc0.4_pla_0.15mm.inst.cfg @@ -17,7 +17,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/quality/ultimaker_s5/um_s5_cc0.4_pla_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_cc0.4_pla_0.2mm.inst.cfg index 52541b2129..92e01db428 100644 --- a/resources/quality/ultimaker_s5/um_s5_cc0.4_pla_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_cc0.4_pla_0.2mm.inst.cfg @@ -17,7 +17,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/quality/ultimaker_s5/um_s5_cc0.6_pla_0.15mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_cc0.6_pla_0.15mm.inst.cfg index e4ea66ff83..9b5ed80919 100644 --- a/resources/quality/ultimaker_s5/um_s5_cc0.6_pla_0.15mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_cc0.6_pla_0.15mm.inst.cfg @@ -17,7 +17,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/quality/ultimaker_s5/um_s5_cc0.6_pla_0.2mm.inst.cfg b/resources/quality/ultimaker_s5/um_s5_cc0.6_pla_0.2mm.inst.cfg index c851f5760b..26aeb73e37 100644 --- a/resources/quality/ultimaker_s5/um_s5_cc0.6_pla_0.2mm.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_cc0.6_pla_0.2mm.inst.cfg @@ -17,7 +17,6 @@ gradual_infill_step_height = =3 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'triangles' machine_nozzle_cool_down_speed = 0.75 machine_nozzle_heat_up_speed = 1.6 -material_initial_print_temperature = =material_print_temperature - 10 material_print_temperature = =default_material_print_temperature + 10 prime_tower_enable = True speed_print = 45 diff --git a/resources/variants/ultimaker3_aa0.25.inst.cfg b/resources/variants/ultimaker3_aa0.25.inst.cfg index 34c17f89a1..549c9b297b 100644 --- a/resources/variants/ultimaker3_aa0.25.inst.cfg +++ b/resources/variants/ultimaker3_aa0.25.inst.cfg @@ -16,7 +16,6 @@ machine_nozzle_heat_up_speed = 1.5 machine_nozzle_id = AA 0.25 machine_nozzle_size = 0.25 machine_nozzle_tip_outer_diameter = 0.65 -material_initial_print_temperature = =material_print_temperature - 5 retraction_min_travel = 0.7 retraction_prime_speed = =retraction_speed skin_overlap = 15 diff --git a/resources/variants/ultimaker3_aa0.8.inst.cfg b/resources/variants/ultimaker3_aa0.8.inst.cfg index 76bf22458b..3815d396cf 100644 --- a/resources/variants/ultimaker3_aa0.8.inst.cfg +++ b/resources/variants/ultimaker3_aa0.8.inst.cfg @@ -23,7 +23,6 @@ machine_nozzle_heat_up_speed = 1.5 machine_nozzle_id = AA 0.8 machine_nozzle_size = 0.8 machine_nozzle_tip_outer_diameter = 2.0 -material_initial_print_temperature = =material_print_temperature - 5 multiple_mesh_overlap = 0 prime_tower_enable = False prime_tower_wipe_enabled = True diff --git a/resources/variants/ultimaker3_extended_aa0.25.inst.cfg b/resources/variants/ultimaker3_extended_aa0.25.inst.cfg index 295902ff74..8c487fae97 100644 --- a/resources/variants/ultimaker3_extended_aa0.25.inst.cfg +++ b/resources/variants/ultimaker3_extended_aa0.25.inst.cfg @@ -16,7 +16,6 @@ machine_nozzle_heat_up_speed = 1.5 machine_nozzle_id = AA 0.25 machine_nozzle_size = 0.25 machine_nozzle_tip_outer_diameter = 0.65 -material_initial_print_temperature = =material_print_temperature - 5 retraction_min_travel = 0.7 retraction_prime_speed = =retraction_speed skin_overlap = 15 diff --git a/resources/variants/ultimaker3_extended_aa0.8.inst.cfg b/resources/variants/ultimaker3_extended_aa0.8.inst.cfg index 749f16b373..2886c1feb8 100644 --- a/resources/variants/ultimaker3_extended_aa0.8.inst.cfg +++ b/resources/variants/ultimaker3_extended_aa0.8.inst.cfg @@ -23,7 +23,6 @@ machine_nozzle_heat_up_speed = 1.5 machine_nozzle_id = AA 0.8 machine_nozzle_size = 0.8 machine_nozzle_tip_outer_diameter = 2.0 -material_initial_print_temperature = =material_print_temperature - 5 multiple_mesh_overlap = 0 prime_tower_enable = False prime_tower_wipe_enabled = True diff --git a/resources/variants/ultimaker_s3_aa0.25.inst.cfg b/resources/variants/ultimaker_s3_aa0.25.inst.cfg index 773f4cd6b3..e05faca500 100644 --- a/resources/variants/ultimaker_s3_aa0.25.inst.cfg +++ b/resources/variants/ultimaker_s3_aa0.25.inst.cfg @@ -16,7 +16,6 @@ machine_nozzle_heat_up_speed = 1.5 machine_nozzle_id = AA 0.25 machine_nozzle_size = 0.25 machine_nozzle_tip_outer_diameter = 0.65 -material_initial_print_temperature = =material_print_temperature - 5 retraction_min_travel = 0.7 retraction_prime_speed = =retraction_speed skin_overlap = 15 diff --git a/resources/variants/ultimaker_s3_aa0.8.inst.cfg b/resources/variants/ultimaker_s3_aa0.8.inst.cfg index 9df8ed7170..11f702f170 100644 --- a/resources/variants/ultimaker_s3_aa0.8.inst.cfg +++ b/resources/variants/ultimaker_s3_aa0.8.inst.cfg @@ -23,7 +23,6 @@ machine_nozzle_heat_up_speed = 1.5 machine_nozzle_id = AA 0.8 machine_nozzle_size = 0.8 machine_nozzle_tip_outer_diameter = 2.0 -material_initial_print_temperature = =material_print_temperature - 5 multiple_mesh_overlap = 0 prime_tower_enable = False prime_tower_wipe_enabled = True diff --git a/resources/variants/ultimaker_s5_aa0.25.inst.cfg b/resources/variants/ultimaker_s5_aa0.25.inst.cfg index 8452eb0559..53bd6cf7df 100644 --- a/resources/variants/ultimaker_s5_aa0.25.inst.cfg +++ b/resources/variants/ultimaker_s5_aa0.25.inst.cfg @@ -16,7 +16,6 @@ machine_nozzle_heat_up_speed = 1.5 machine_nozzle_id = AA 0.25 machine_nozzle_size = 0.25 machine_nozzle_tip_outer_diameter = 0.65 -material_initial_print_temperature = =material_print_temperature - 5 retraction_min_travel = 0.7 retraction_prime_speed = =retraction_speed skin_overlap = 15 diff --git a/resources/variants/ultimaker_s5_aa0.8.inst.cfg b/resources/variants/ultimaker_s5_aa0.8.inst.cfg index c43caa0cb8..18e75b1521 100644 --- a/resources/variants/ultimaker_s5_aa0.8.inst.cfg +++ b/resources/variants/ultimaker_s5_aa0.8.inst.cfg @@ -23,7 +23,6 @@ machine_nozzle_heat_up_speed = 1.5 machine_nozzle_id = AA 0.8 machine_nozzle_size = 0.8 machine_nozzle_tip_outer_diameter = 2.0 -material_initial_print_temperature = =material_print_temperature - 5 multiple_mesh_overlap = 0 prime_tower_enable = False prime_tower_wipe_enabled = True diff --git a/resources/variants/ultimaker_s7_aa0.25.inst.cfg b/resources/variants/ultimaker_s7_aa0.25.inst.cfg index 02920ddf8d..48e5937986 100644 --- a/resources/variants/ultimaker_s7_aa0.25.inst.cfg +++ b/resources/variants/ultimaker_s7_aa0.25.inst.cfg @@ -16,7 +16,6 @@ machine_nozzle_heat_up_speed = 1.5 machine_nozzle_id = AA 0.25 machine_nozzle_size = 0.25 machine_nozzle_tip_outer_diameter = 0.65 -material_initial_print_temperature = =material_print_temperature - 5 retraction_min_travel = 0.7 retraction_prime_speed = =retraction_speed skin_overlap = 15 diff --git a/resources/variants/ultimaker_s7_aa0.8.inst.cfg b/resources/variants/ultimaker_s7_aa0.8.inst.cfg index 96681e44dd..330cce8182 100644 --- a/resources/variants/ultimaker_s7_aa0.8.inst.cfg +++ b/resources/variants/ultimaker_s7_aa0.8.inst.cfg @@ -23,7 +23,6 @@ machine_nozzle_heat_up_speed = 1.5 machine_nozzle_id = AA 0.8 machine_nozzle_size = 0.8 machine_nozzle_tip_outer_diameter = 2.0 -material_initial_print_temperature = =material_print_temperature - 5 multiple_mesh_overlap = 0 prime_tower_enable = False prime_tower_wipe_enabled = True From 0735748dee9162e21252b109eba9730f0b9e307f Mon Sep 17 00:00:00 2001 From: Rijk van Manen Date: Thu, 9 Feb 2023 13:01:23 +0100 Subject: [PATCH 04/44] cool_min_temperature can now follow default PP-71 --- .../quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg | 1 - resources/quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg | 1 - resources/quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg | 1 - resources/quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg | 1 - resources/quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg | 1 - resources/quality/ultimaker3/um3_aa0.8_PP_Draft_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.8_PP_Superdraft_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.8_PP_Verydraft_Print.inst.cfg | 1 - resources/quality/ultimaker3/um3_aa0.8_TPU_Draft_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.8_TPU_Superdraft_Print.inst.cfg | 1 - .../quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg | 2 +- 13 files changed, 1 insertion(+), 13 deletions(-) diff --git a/resources/quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg index 523567423c..90fbc7ac50 100644 --- a/resources/quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg @@ -14,7 +14,6 @@ weight = 0 [values] brim_width = 10 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' infill_wipe_dist = 0.1 machine_min_cool_heat_time_window = 15 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg index 8048a6a0e5..efe64cf83e 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg @@ -13,7 +13,6 @@ weight = -2 [values] brim_width = 20 -cool_min_temperature = =material_print_temperature - 10 infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' infill_wipe_dist = 0.1 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg index 7f64288e91..bf77deaa9b 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg @@ -13,7 +13,6 @@ weight = -1 [values] brim_width = 20 -cool_min_temperature = =material_print_temperature - 10 infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' infill_wipe_dist = 0.1 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg index 3b5440c5fb..7d7d299002 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg @@ -13,7 +13,6 @@ weight = 0 [values] brim_width = 20 -cool_min_temperature = =material_print_temperature - 10 infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' infill_wipe_dist = 0.1 diff --git a/resources/quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg index df185c4745..f9747bd6cc 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg @@ -13,7 +13,6 @@ weight = -2 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 gradual_infill_step_height = =5 * layer_height infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' diff --git a/resources/quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg index f0fac9bc2f..3d5d93a0bc 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg @@ -13,7 +13,6 @@ weight = -1 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 gradual_infill_step_height = =5 * layer_height infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' diff --git a/resources/quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg index 31f5c649d2..9aa61e231c 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg @@ -13,7 +13,6 @@ weight = 0 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 gradual_infill_step_height = =5 * layer_height infill_overlap = 0 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' diff --git a/resources/quality/ultimaker3/um3_aa0.8_PP_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_PP_Draft_Print.inst.cfg index 780ecf8b63..6e4412de37 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_PP_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_PP_Draft_Print.inst.cfg @@ -13,7 +13,6 @@ weight = -2 [values] brim_width = 25 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' material_print_temperature = =default_material_print_temperature - 2 multiple_mesh_overlap = 0.2 diff --git a/resources/quality/ultimaker3/um3_aa0.8_PP_Superdraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_PP_Superdraft_Print.inst.cfg index 77ba4b5a83..be1ca10f89 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_PP_Superdraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_PP_Superdraft_Print.inst.cfg @@ -13,7 +13,6 @@ weight = -4 [values] brim_width = 25 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' material_print_temperature = =default_material_print_temperature + 2 multiple_mesh_overlap = 0.2 diff --git a/resources/quality/ultimaker3/um3_aa0.8_PP_Verydraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_PP_Verydraft_Print.inst.cfg index 30a7870aad..a11e14d732 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_PP_Verydraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_PP_Verydraft_Print.inst.cfg @@ -13,7 +13,6 @@ weight = -3 [values] brim_width = 25 -cool_min_temperature = =material_print_temperature - 10 infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'tetrahedral' layer_height = 0.3 multiple_mesh_overlap = 0.2 diff --git a/resources/quality/ultimaker3/um3_aa0.8_TPU_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_TPU_Draft_Print.inst.cfg index d7a0eb0510..ac0badf089 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_TPU_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_TPU_Draft_Print.inst.cfg @@ -13,7 +13,6 @@ weight = -2 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 gradual_infill_step_height = =4 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' infill_sparse_density = 15 diff --git a/resources/quality/ultimaker3/um3_aa0.8_TPU_Superdraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_TPU_Superdraft_Print.inst.cfg index 18966c8de5..a068d842e2 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_TPU_Superdraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_TPU_Superdraft_Print.inst.cfg @@ -13,7 +13,6 @@ weight = -4 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 gradual_infill_step_height = =4 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' infill_sparse_density = 15 diff --git a/resources/quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg index 8bcc26e098..90955fd1ee 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg @@ -13,7 +13,7 @@ weight = -3 [values] brim_width = 8.75 -cool_min_temperature = =material_print_temperature - 10 + gradual_infill_step_height = =4 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' infill_sparse_density = 15 From 651d278377f3cd2dd7b0a272b1a37e320938e5fa Mon Sep 17 00:00:00 2001 From: rijkvanmanen Date: Thu, 9 Feb 2023 12:02:34 +0000 Subject: [PATCH 05/44] Applied printer-linter format --- .../quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg | 1 - 1 file changed, 1 deletion(-) diff --git a/resources/quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg index 90955fd1ee..a2a5a43f3d 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_TPU_Verydraft_Print.inst.cfg @@ -13,7 +13,6 @@ weight = -3 [values] brim_width = 8.75 - gradual_infill_step_height = =4 * layer_height infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'cross_3d' infill_sparse_density = 15 From ba63109d84f1f15ba86d190f4373a8a731e6fd33 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Thu, 9 Feb 2023 16:47:49 +0100 Subject: [PATCH 06/44] Catch error when loading gcode with more extruders than the current machine. CURA-10183 --- plugins/GCodeReader/FlavorParser.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/plugins/GCodeReader/FlavorParser.py b/plugins/GCodeReader/FlavorParser.py index 555d9d594e..33c4763397 100644 --- a/plugins/GCodeReader/FlavorParser.py +++ b/plugins/GCodeReader/FlavorParser.py @@ -32,6 +32,7 @@ class FlavorParser: """This parser is intended to interpret the common firmware codes among all the different flavors""" MAX_EXTRUDER_COUNT = 16 + DEFAULT_FILAMENT_DIAMETER = 2.85 def __init__(self) -> None: CuraApplication.getInstance().hideMessageSignal.connect(self._onHideMessage) @@ -48,7 +49,7 @@ class FlavorParser: self._is_layers_in_file = False # Does the Gcode have the layers comment? self._extruder_offsets = {} # type: Dict[int, List[float]] # Offsets for multi extruders. key is index, value is [x-offset, y-offset] self._current_layer_thickness = 0.2 # default - self._filament_diameter = 2.85 # default + self._current_filament_diameter = 2.85 # default self._previous_extrusion_value = 0.0 # keep track of the filament retractions CuraApplication.getInstance().getPreferences().addPreference("gcodereader/show_caution", True) @@ -152,7 +153,7 @@ class FlavorParser: def _calculateLineWidth(self, current_point: Position, previous_point: Position, current_extrusion: float, previous_extrusion: float, layer_thickness: float) -> float: # Area of the filament - Af = (self._filament_diameter / 2) ** 2 * numpy.pi + Af = (self._current_filament_diameter / 2) ** 2 * numpy.pi # Length of the extruded filament de = current_extrusion - previous_extrusion # Volume of the extruded filament @@ -287,7 +288,11 @@ class FlavorParser: def processTCode(self, global_stack, T: int, line: str, position: Position, path: List[List[Union[float, int]]]) -> Position: self._extruder_number = T - self._filament_diameter = global_stack.extruderList[self._extruder_number].getProperty("material_diameter", "value") + try: + self._current_filament_diameter = global_stack.extruderList[self._extruder_number].getProperty("material_diameter", "value") + except IndexError: + self._current_filament_diameter = self.DEFAULT_FILAMENT_DIAMETER + if self._extruder_number + 1 > len(position.e): self._extrusion_length_offset.extend([0] * (self._extruder_number - len(position.e) + 1)) position.e.extend([0] * (self._extruder_number - len(position.e) + 1)) @@ -323,7 +328,7 @@ class FlavorParser: if not global_stack: return None - self._filament_diameter = global_stack.extruderList[self._extruder_number].getProperty("material_diameter", "value") + self._current_filament_diameter = global_stack.extruderList[self._extruder_number].getProperty("material_diameter", "value") scene_node = CuraSceneNode() From 35ad0ccb0d72318fe4d26ae84c039c1a7c39dc25 Mon Sep 17 00:00:00 2001 From: Rijk van Manen Date: Wed, 15 Feb 2023 13:54:09 +0100 Subject: [PATCH 07/44] improve support settings and properly enable them As a result of all the support improvements we have done in CURA-10220 we would like to update the support settings. CURA-10289 / PP-323 --- resources/definitions/fdmprinter.def.json | 25 +++++++++++++---------- resources/definitions/ultimaker.def.json | 6 ++---- 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 3d07faf5cb..3bc27bac99 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -4698,7 +4698,7 @@ "maximum_value": "999999", "type": "int", "value": "1 if (support_interface_pattern == 'zigzag') else 0", - "enabled": "support_interface_enable or support_meshes_present", + "enabled": "(support_enable and support_interface_enable) or support_meshes_present", "limit_to_extruder": "support_interface_extruder_nr", "settable_per_mesh": false, "settable_per_extruder": true, @@ -4715,7 +4715,7 @@ "maximum_value": "999999", "type": "int", "value": "support_interface_wall_count", - "enabled": "support_interface_enable or support_meshes_present", + "enabled": "(support_enable and support_interface_enable) or support_meshes_present", "limit_to_extruder": "support_interface_extruder_nr", "settable_per_mesh": false, "settable_per_extruder": true @@ -4731,7 +4731,7 @@ "maximum_value": "999999", "type": "int", "value": "support_interface_wall_count", - "enabled": "support_interface_enable or support_meshes_present", + "enabled": "(support_enable and support_interface_enable) or support_meshes_present", "limit_to_extruder": "support_interface_extruder_nr", "settable_per_mesh": false, "settable_per_extruder": true @@ -4957,6 +4957,7 @@ "unit": "mm", "type": "float", "default_value": 0.3, + "value": "0 if support_bottom_enable else 0.3", "limit_to_extruder": "support_bottom_extruder_nr if support_bottom_enable else support_infill_extruder_nr", "minimum_value": "0", "maximum_value_warning": "1.0", @@ -4970,10 +4971,10 @@ "unit": "mm", "type": "float", "default_value": 5.0, - "limit_to_extruder": "support_interface_extruder_nr if support_interface_enable else support_infill_extruder_nr", + "limit_to_extruder": "support_interface_extruder_nr if support_bottom_enable else support_infill_extruder_nr", "minimum_value": "0", "maximum_value_warning": "10.0", - "enabled": "support_enable or support_meshes_present", + "enabled": "(support_enable or support_meshes_present) and support_bottom_stair_step_height > 0", "settable_per_mesh": true }, "support_bottom_stair_step_min_slope": @@ -4986,7 +4987,7 @@ "limit_to_extruder": "support_bottom_extruder_nr if support_bottom_enable else support_infill_extruder_nr", "minimum_value": "0.01", "maximum_value": "89.99", - "enabled": "support_enable or support_meshes_present", + "enabled": "(support_enable or support_meshes_present) and support_bottom_stair_step_height > 0", "settable_per_mesh": true }, "support_join_distance": @@ -4995,10 +4996,10 @@ "description": "The maximum distance between support structures in the X/Y directions. When separate structures are closer together than this value, the structures merge into one.", "unit": "mm", "type": "float", - "default_value": 2.0, + "default_value": 10.0, "limit_to_extruder": "support_infill_extruder_nr", "minimum_value_warning": "0", - "maximum_value_warning": "10", + "maximum_value_warning": "50", "enabled": "(support_enable and support_structure == 'normal') or support_meshes_present", "settable_per_mesh": false, "settable_per_extruder": true @@ -5009,7 +5010,8 @@ "description": "Amount of offset applied to all support polygons in each layer. Positive values can smooth out the support areas and result in more sturdy support.", "unit": "mm", "type": "float", - "default_value": 0, + "default_value": 0.4, + "value": "support_line_width", "limit_to_extruder": "support_infill_extruder_nr", "minimum_value_warning": "-1 * machine_nozzle_size", "maximum_value_warning": "10 * machine_nozzle_size", @@ -5162,7 +5164,8 @@ "description": "When checking where there's model above and below the support, take steps of the given height. Lower values will slice slower, while higher values may cause normal support to be printed in some places where there should have been support interface.", "unit": "mm", "type": "float", - "default_value": 0.3, + "default_value": 0.2, + "value": "layer_height", "minimum_value": "0", "maximum_value_warning": "support_interface_height", "limit_to_extruder": "support_interface_extruder_nr", @@ -5474,7 +5477,7 @@ "description": "The diameter of a special tower.", "unit": "mm", "type": "float", - "default_value": 3.0, + "default_value": 5.0, "limit_to_extruder": "support_infill_extruder_nr", "minimum_value": "0", "minimum_value_warning": "2 * machine_nozzle_size", diff --git a/resources/definitions/ultimaker.def.json b/resources/definitions/ultimaker.def.json index 655ff0e4ec..bcd494c90d 100644 --- a/resources/definitions/ultimaker.def.json +++ b/resources/definitions/ultimaker.def.json @@ -81,7 +81,7 @@ }, "meshfix_maximum_deviation": { "value": "machine_nozzle_size / 10" }, "meshfix_maximum_resolution": { "value": "max(speed_wall_0 / 75, 0.5)" }, - "minimum_support_area": { "value": "2" }, + "minimum_support_area": { "value": "2 if support_interface_enable else 0" }, "raft_base_speed": { "value": "raft_speed" }, "raft_base_thickness": { "value": "min(machine_nozzle_size * 0.75, 0.3)" }, "raft_interface_fan_speed": { "value": "(raft_base_fan_speed + raft_surface_fan_speed) / 2" }, @@ -117,12 +117,10 @@ "support_interface_material_flow": { "value": "skin_material_flow" }, "support_interface_offset": { "value": "support_offset" }, "support_interface_pattern": { "value": "'zigzag'" }, - "support_interface_skip_height": { "value": "layer_height" }, "support_line_distance": { "minimum_value_warning": "0 if support_structure == 'tree' else support_line_width" }, - "support_offset": { "value": "0.9 if support_interface_enable else 0" }, + "support_tower_maximum_supported_diameter": {"value": "support_tower_diameter" }, "support_tower_roof_angle": { "value": "0 if support_interface_enable else 65" }, "support_wall_count": { "value": "1 if support_structure == 'tree' else 0" }, - "support_xy_distance": { "value": "1" }, "support_xy_distance_overhang": { "value": "0.2" }, "support_z_distance": { "value": "0" }, "top_layers": { "value": "math.ceil(round(top_thickness / resolveOrValue('layer_height'), 4))" }, From 482d5d38b7ae4050ed1279379d1608f5b32c16a9 Mon Sep 17 00:00:00 2001 From: rijkvanmanen Date: Wed, 15 Feb 2023 12:55:28 +0000 Subject: [PATCH 08/44] Applied printer-linter format --- resources/definitions/ultimaker.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/ultimaker.def.json b/resources/definitions/ultimaker.def.json index bcd494c90d..9ed481c83d 100644 --- a/resources/definitions/ultimaker.def.json +++ b/resources/definitions/ultimaker.def.json @@ -118,7 +118,7 @@ "support_interface_offset": { "value": "support_offset" }, "support_interface_pattern": { "value": "'zigzag'" }, "support_line_distance": { "minimum_value_warning": "0 if support_structure == 'tree' else support_line_width" }, - "support_tower_maximum_supported_diameter": {"value": "support_tower_diameter" }, + "support_tower_maximum_supported_diameter": { "value": "support_tower_diameter" }, "support_tower_roof_angle": { "value": "0 if support_interface_enable else 65" }, "support_wall_count": { "value": "1 if support_structure == 'tree' else 0" }, "support_xy_distance_overhang": { "value": "0.2" }, From c6c90477578b99fd7bcedcf572b813316daa254f Mon Sep 17 00:00:00 2001 From: Rijk van Manen Date: Wed, 15 Feb 2023 16:21:09 +0100 Subject: [PATCH 09/44] reduce support join distance We changed the support join distance, so a smaller value is now better. CURA-10289/PP-323 --- resources/definitions/fdmprinter.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 3bc27bac99..6f1682a5b5 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -4996,7 +4996,7 @@ "description": "The maximum distance between support structures in the X/Y directions. When separate structures are closer together than this value, the structures merge into one.", "unit": "mm", "type": "float", - "default_value": 10.0, + "default_value": 5.0, "limit_to_extruder": "support_infill_extruder_nr", "minimum_value_warning": "0", "maximum_value_warning": "50", From 1f1353802afe03faaf639d387a4e3a3ac0374ee9 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Mon, 20 Feb 2023 17:41:07 +0100 Subject: [PATCH 10/44] Prefill material sync file name CURA-10174 --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index ce3f9c4303..87a8d00ec4 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -714,7 +714,7 @@ UM.Window { if(!materialsSyncDialog.hasExportedUsb) { - exportUsbDialog.currentFolder = syncModel.getPreferredExportAllPath(); + exportUsbDialog.currentFolder = `${syncModel.getPreferredExportAllPath()}/materials.umm`; exportUsbDialog.open(); } else From e9634fa8d90e054a01788f2c6ff43858ef682d4a Mon Sep 17 00:00:00 2001 From: Rijk van Manen Date: Tue, 21 Feb 2023 11:56:21 +0100 Subject: [PATCH 11/44] revert support join distance and tower diameter We made it a bit too bulky, this is not useful anymore CURA-10289/PP-323 --- resources/definitions/fdmprinter.def.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 6f1682a5b5..92246b4b56 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -4996,10 +4996,10 @@ "description": "The maximum distance between support structures in the X/Y directions. When separate structures are closer together than this value, the structures merge into one.", "unit": "mm", "type": "float", - "default_value": 5.0, + "default_value": 2.0, "limit_to_extruder": "support_infill_extruder_nr", "minimum_value_warning": "0", - "maximum_value_warning": "50", + "maximum_value_warning": "10", "enabled": "(support_enable and support_structure == 'normal') or support_meshes_present", "settable_per_mesh": false, "settable_per_extruder": true @@ -5477,7 +5477,7 @@ "description": "The diameter of a special tower.", "unit": "mm", "type": "float", - "default_value": 5.0, + "default_value": 3.0, "limit_to_extruder": "support_infill_extruder_nr", "minimum_value": "0", "minimum_value_warning": "2 * machine_nozzle_size", From 0b6edce20ab2a8edaebfe62be16aea5c7d537766 Mon Sep 17 00:00:00 2001 From: Rijk van Manen Date: Tue, 21 Feb 2023 11:57:24 +0100 Subject: [PATCH 12/44] increase support horizontal expansion We introduced a smoothing distance effectively introducing a negative horizontal expansion as well. So adding this smoothing distance to the horizontal expansion to compensate for this. CURA-10289/PP-323 --- resources/definitions/fdmprinter.def.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 92246b4b56..a7edb3460f 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -5010,8 +5010,8 @@ "description": "Amount of offset applied to all support polygons in each layer. Positive values can smooth out the support areas and result in more sturdy support.", "unit": "mm", "type": "float", - "default_value": 0.4, - "value": "support_line_width", + "default_value": 0.8, + "value": "support_line_width + 0.4", "limit_to_extruder": "support_infill_extruder_nr", "minimum_value_warning": "-1 * machine_nozzle_size", "maximum_value_warning": "10 * machine_nozzle_size", From d938d9f1c198c64d1a2952c8e4b43e722ee3c72b Mon Sep 17 00:00:00 2001 From: Rijk van Manen Date: Tue, 21 Feb 2023 14:59:08 +0100 Subject: [PATCH 13/44] turn off minimum support area completely it is not helpful anymore. CURA-10289 / PP-323 --- resources/definitions/ultimaker.def.json | 1 - 1 file changed, 1 deletion(-) diff --git a/resources/definitions/ultimaker.def.json b/resources/definitions/ultimaker.def.json index 9ed481c83d..b43a13f9c6 100644 --- a/resources/definitions/ultimaker.def.json +++ b/resources/definitions/ultimaker.def.json @@ -81,7 +81,6 @@ }, "meshfix_maximum_deviation": { "value": "machine_nozzle_size / 10" }, "meshfix_maximum_resolution": { "value": "max(speed_wall_0 / 75, 0.5)" }, - "minimum_support_area": { "value": "2 if support_interface_enable else 0" }, "raft_base_speed": { "value": "raft_speed" }, "raft_base_thickness": { "value": "min(machine_nozzle_size * 0.75, 0.3)" }, "raft_interface_fan_speed": { "value": "(raft_base_fan_speed + raft_surface_fan_speed) / 2" }, From 79a9f254b1e33074d9cf086a079e967ea4c017a2 Mon Sep 17 00:00:00 2001 From: Rijk van Manen Date: Tue, 21 Feb 2023 15:00:50 +0100 Subject: [PATCH 14/44] disable support interface floor and bottom CURA-10289 / PP-323 --- resources/definitions/fdmprinter.def.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index a7edb3460f..e7d669bbed 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -5095,7 +5095,7 @@ "default_value": false, "value": "extruderValue(support_roof_extruder_nr, 'support_interface_enable')", "limit_to_extruder": "support_roof_extruder_nr", - "enabled": "support_enable or support_meshes_present", + "enabled": "(support_enable or support_meshes_present) and support_interface_enable", "settable_per_mesh": true }, "support_bottom_enable": @@ -5106,7 +5106,7 @@ "default_value": false, "value": "extruderValue(support_bottom_extruder_nr, 'support_interface_enable')", "limit_to_extruder": "support_bottom_extruder_nr", - "enabled": "support_enable or support_meshes_present", + "enabled": "(support_enable or support_meshes_present) and support_interface_enable", "settable_per_mesh": true } } From cf922295db131e473d78b3926906037b1a7e8670 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Tue, 21 Feb 2023 15:43:12 +0100 Subject: [PATCH 15/44] Try before the beta. After it's too late. A lot was changed in support. The short of it is that we now think towers should be on by default, but aren't _completely_ certain about it. It makes more sense to do make this change before the beta rather than just before stable, so we have a chance to revert should it prove disastrous. --- resources/definitions/Geeetech_Base_Dual_Extruder.def.json | 1 - resources/definitions/Geeetech_Base_Multi_Extruder.def.json | 1 - resources/definitions/Geeetech_Base_Single_Extruder.def.json | 1 - resources/definitions/anycubic_i3_mega_s.def.json | 1 - resources/definitions/artillery_base.def.json | 1 - resources/definitions/atmat_signal_pro_base.def.json | 1 - resources/definitions/biqu_base.def.json | 1 - resources/definitions/blocks_base.def.json | 1 - resources/definitions/creality_base.def.json | 1 - resources/definitions/deltacomb_base.def.json | 1 - resources/definitions/elegoo_base.def.json | 1 - resources/definitions/eryone_er20.def.json | 1 - resources/definitions/eryone_thinker.def.json | 1 - resources/definitions/flyingbear_base.def.json | 1 - resources/definitions/fusion3_f410.def.json | 1 - resources/definitions/inat_base.def.json | 1 - resources/definitions/kingroon_base.def.json | 1 - resources/definitions/koonovo_base.def.json | 1 - resources/definitions/koonovo_kn3.def.json | 1 - resources/definitions/koonovo_kn5.def.json | 1 - resources/definitions/liquid.def.json | 1 - resources/definitions/longer_base.def.json | 1 - resources/definitions/lotmaxx_sc60.def.json | 1 - resources/definitions/maker_made_300x.def.json | 1 - resources/definitions/mingda_base.def.json | 1 - resources/definitions/mixware_hyper_s.def.json | 1 - resources/definitions/modix_v3_base.def.json | 1 - resources/definitions/modix_v4_base.def.json | 1 - resources/definitions/skriware_2.def.json | 1 - resources/definitions/strateo3d.def.json | 1 - resources/definitions/tank_m_base.def.json | 1 - resources/definitions/tronxy_x.def.json | 1 - resources/definitions/two_trees_base.def.json | 1 - resources/definitions/vivedino_base.def.json | 1 - resources/definitions/weedo_x40.def.json | 1 - 35 files changed, 35 deletions(-) diff --git a/resources/definitions/Geeetech_Base_Dual_Extruder.def.json b/resources/definitions/Geeetech_Base_Dual_Extruder.def.json index 92dc13d7a9..7bc2bc529c 100644 --- a/resources/definitions/Geeetech_Base_Dual_Extruder.def.json +++ b/resources/definitions/Geeetech_Base_Dual_Extruder.def.json @@ -133,7 +133,6 @@ "support_interface_pattern": { "value": "zigzag" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 0 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/Geeetech_Base_Multi_Extruder.def.json b/resources/definitions/Geeetech_Base_Multi_Extruder.def.json index bb26709719..4d4bc3363a 100644 --- a/resources/definitions/Geeetech_Base_Multi_Extruder.def.json +++ b/resources/definitions/Geeetech_Base_Multi_Extruder.def.json @@ -134,7 +134,6 @@ "support_interface_pattern": { "value": "zigzag" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 0 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/Geeetech_Base_Single_Extruder.def.json b/resources/definitions/Geeetech_Base_Single_Extruder.def.json index 5a168c0b69..b155a0ee6c 100644 --- a/resources/definitions/Geeetech_Base_Single_Extruder.def.json +++ b/resources/definitions/Geeetech_Base_Single_Extruder.def.json @@ -121,7 +121,6 @@ "support_interface_pattern": { "value": "zigzag" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 0 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/anycubic_i3_mega_s.def.json b/resources/definitions/anycubic_i3_mega_s.def.json index d8e10f97e5..60b5bf652c 100644 --- a/resources/definitions/anycubic_i3_mega_s.def.json +++ b/resources/definitions/anycubic_i3_mega_s.def.json @@ -115,7 +115,6 @@ "support_structure": { "value": "'tree'" }, "support_top_distance": { "value": "extruderValue(support_roof_extruder_nr if support_roof_enable else support_infill_extruder_nr, 'support_z_distance') + (layer_height if support_structure == 'tree' else 0)" }, "support_type": { "value": "'buildplate' if support_structure == 'tree' else 'everywhere'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 1 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/artillery_base.def.json b/resources/definitions/artillery_base.def.json index 31169c5dd4..e8b779bf00 100644 --- a/resources/definitions/artillery_base.def.json +++ b/resources/definitions/artillery_base.def.json @@ -156,7 +156,6 @@ "support_interface_height": { "value": "layer_height * 4" }, "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, - "support_use_towers": { "value": false }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, "support_xy_overrides_z": { "value": "'xy_overrides_z'" }, diff --git a/resources/definitions/atmat_signal_pro_base.def.json b/resources/definitions/atmat_signal_pro_base.def.json index 7b622a558a..3c581ff654 100644 --- a/resources/definitions/atmat_signal_pro_base.def.json +++ b/resources/definitions/atmat_signal_pro_base.def.json @@ -221,7 +221,6 @@ "support_offset": { "value": "1.5" }, "support_pattern": { "default_value": "zigzag" }, "support_top_distance": { "value": "support_z_distance" }, - "support_use_towers": { "value": "True" }, "support_xy_distance": { "value": "wall_line_width_0 * 2.5" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, "support_z_distance": { "value": "layer_height" }, diff --git a/resources/definitions/biqu_base.def.json b/resources/definitions/biqu_base.def.json index 86da2b1e13..5b84c72b88 100755 --- a/resources/definitions/biqu_base.def.json +++ b/resources/definitions/biqu_base.def.json @@ -110,7 +110,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 1 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/blocks_base.def.json b/resources/definitions/blocks_base.def.json index de69a3f799..b8e215ab5f 100644 --- a/resources/definitions/blocks_base.def.json +++ b/resources/definitions/blocks_base.def.json @@ -99,7 +99,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, "support_xy_overrides_z": { "value": "'xy_overrides_z'" }, diff --git a/resources/definitions/creality_base.def.json b/resources/definitions/creality_base.def.json index be6792eafd..229c46d7ca 100644 --- a/resources/definitions/creality_base.def.json +++ b/resources/definitions/creality_base.def.json @@ -160,7 +160,6 @@ "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, "support_top_distance": { "value": "extruderValue(support_roof_extruder_nr if support_roof_enable else support_infill_extruder_nr, 'support_z_distance') + (layer_height if support_structure == 'tree' else 0)" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 1 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/deltacomb_base.def.json b/resources/definitions/deltacomb_base.def.json index 9d48683c0d..a4634bfcf1 100644 --- a/resources/definitions/deltacomb_base.def.json +++ b/resources/definitions/deltacomb_base.def.json @@ -78,7 +78,6 @@ "speed_z_hop": { "value": "speed_travel" }, "support_bottom_distance": { "value": "layer_height" }, "support_bottom_enable": { "value": false }, - "support_use_towers": { "default_value": false }, "support_wall_count": { "value": "1" }, "support_z_distance": { "value": "layer_height" }, "switch_extruder_retraction_amount": { "value": 10 }, diff --git a/resources/definitions/elegoo_base.def.json b/resources/definitions/elegoo_base.def.json index ed0c6d1c9d..fec00d57d5 100644 --- a/resources/definitions/elegoo_base.def.json +++ b/resources/definitions/elegoo_base.def.json @@ -127,7 +127,6 @@ "support_roof_pattern": { "value": "'grid'" }, "support_top_distance": { "value": "extruderValue(support_roof_extruder_nr if support_roof_enable else support_infill_extruder_nr, 'layer_height') + (0 if support_structure == 'tree' else 0)" }, "support_tower_maximum_supported_diameter": { "value": "1" }, - "support_use_towers": { "default_value": false }, "support_xy_distance": { "value": "machine_nozzle_size * 1.7" }, "support_xy_distance_overhang": { "value": "machine_nozzle_size * 1.2 if support_interface_enable else machine_nozzle_size * 0.8" }, "support_z_distance": { "value": "layer_height * 1.2 if (support_interface_enable and support_bottom_enable and layer_height < 0.16) or support_bottom_enable else layer_height" }, diff --git a/resources/definitions/eryone_er20.def.json b/resources/definitions/eryone_er20.def.json index 3d071bbdc5..e05f195bfb 100644 --- a/resources/definitions/eryone_er20.def.json +++ b/resources/definitions/eryone_er20.def.json @@ -95,7 +95,6 @@ "support_pattern": { "value": "'triangles'" }, "support_roof_enable": { "value": true }, "support_type": { "value": "'everywhere'" }, - "support_use_towers": { "value": false }, "support_xy_distance": { "value": 0.7 }, "support_xy_distance_overhang": { "value": 0.2 }, "support_z_distance": { "value": 0.3 }, diff --git a/resources/definitions/eryone_thinker.def.json b/resources/definitions/eryone_thinker.def.json index 555e0d548f..cacde272be 100644 --- a/resources/definitions/eryone_thinker.def.json +++ b/resources/definitions/eryone_thinker.def.json @@ -115,7 +115,6 @@ "support_interface_enable": { "value": true }, "support_pattern": { "value": "'triangles'" }, "support_roof_enable": { "value": true }, - "support_use_towers": { "value": false }, "support_z_distance": { "value": 0.3 }, "top_layers": { "value": 6 }, "top_thickness": { "value": "layer_height * top_layers" }, diff --git a/resources/definitions/flyingbear_base.def.json b/resources/definitions/flyingbear_base.def.json index b59c6abf90..dcbeca1e9e 100644 --- a/resources/definitions/flyingbear_base.def.json +++ b/resources/definitions/flyingbear_base.def.json @@ -166,7 +166,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 1 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/fusion3_f410.def.json b/resources/definitions/fusion3_f410.def.json index 091a8f7ac5..1c4fce0d44 100644 --- a/resources/definitions/fusion3_f410.def.json +++ b/resources/definitions/fusion3_f410.def.json @@ -114,7 +114,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 0 }, "support_xy_distance": { "value": "wall_line_width_0 * 3" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/inat_base.def.json b/resources/definitions/inat_base.def.json index 1bf4ce3917..554b188b82 100644 --- a/resources/definitions/inat_base.def.json +++ b/resources/definitions/inat_base.def.json @@ -316,7 +316,6 @@ "support_join_distance": { "value": 5.0 }, "support_offset": { "value": 3.0 }, "support_tree_angle": { "value": 60 }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": "1 if (support_structure == 'tree') else 0" }, "support_z_distance": { "value": "layer_height if (2*layer_height > 0.8*machine_nozzle_size) else (2*layer_height)" }, "top_bottom_pattern": { "value": "'zigzag'" }, diff --git a/resources/definitions/kingroon_base.def.json b/resources/definitions/kingroon_base.def.json index c06df233c2..5f23b602b9 100644 --- a/resources/definitions/kingroon_base.def.json +++ b/resources/definitions/kingroon_base.def.json @@ -226,7 +226,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 1 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/koonovo_base.def.json b/resources/definitions/koonovo_base.def.json index 1456bc68e7..906293bd59 100644 --- a/resources/definitions/koonovo_base.def.json +++ b/resources/definitions/koonovo_base.def.json @@ -72,7 +72,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 1 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/koonovo_kn3.def.json b/resources/definitions/koonovo_kn3.def.json index ec3c26042a..13981334b8 100644 --- a/resources/definitions/koonovo_kn3.def.json +++ b/resources/definitions/koonovo_kn3.def.json @@ -90,7 +90,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 1 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/koonovo_kn5.def.json b/resources/definitions/koonovo_kn5.def.json index 3d6b17fcbc..29bd0c75de 100644 --- a/resources/definitions/koonovo_kn5.def.json +++ b/resources/definitions/koonovo_kn5.def.json @@ -90,7 +90,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 1 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/liquid.def.json b/resources/definitions/liquid.def.json index 200c6b9c8e..aefb2ffbf8 100644 --- a/resources/definitions/liquid.def.json +++ b/resources/definitions/liquid.def.json @@ -142,7 +142,6 @@ "speed_wall_x": { "value": "speed_wall" }, "support_angle": { "value": "45" }, "support_pattern": { "value": "'triangles'" }, - "support_use_towers": { "value": "False" }, "support_xy_distance": { "value": "wall_line_width_0 * 2.5" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, "support_z_distance": { "value": "0" }, diff --git a/resources/definitions/longer_base.def.json b/resources/definitions/longer_base.def.json index ac479895b1..4d6ba0beaf 100644 --- a/resources/definitions/longer_base.def.json +++ b/resources/definitions/longer_base.def.json @@ -111,7 +111,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 1 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/lotmaxx_sc60.def.json b/resources/definitions/lotmaxx_sc60.def.json index 0dd8f3ab6d..25dc7f5ae8 100644 --- a/resources/definitions/lotmaxx_sc60.def.json +++ b/resources/definitions/lotmaxx_sc60.def.json @@ -61,7 +61,6 @@ "speed_wall_x": { "value": 32 }, "support_infill_rate": { "value": 5 }, "support_pattern": { "default_value": "lines" }, - "support_use_towers": { "value": false }, "switch_extruder_retraction_amount": { "value": 100 }, "switch_extruder_retraction_speeds": { "value": 60 }, "wall_overhang_speed_factor": { "value": 50 }, diff --git a/resources/definitions/maker_made_300x.def.json b/resources/definitions/maker_made_300x.def.json index 23cad44278..e7f3b8614c 100644 --- a/resources/definitions/maker_made_300x.def.json +++ b/resources/definitions/maker_made_300x.def.json @@ -124,7 +124,6 @@ "support_tower_diameter": { "value": 3 }, "support_tower_roof_angle": { "value": "65" }, "support_type": { "value": "'everywhere'" }, - "support_use_towers": { "value": true }, "support_wall_count": { "value": "1 if (support_structure == 'tree') else 0" }, "support_xy_distance": { "value": 0.7 }, "support_xy_distance_overhang": { "value": 0.2 }, diff --git a/resources/definitions/mingda_base.def.json b/resources/definitions/mingda_base.def.json index d0aa03d48b..c6a294002e 100644 --- a/resources/definitions/mingda_base.def.json +++ b/resources/definitions/mingda_base.def.json @@ -162,7 +162,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 1 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/mixware_hyper_s.def.json b/resources/definitions/mixware_hyper_s.def.json index 2fbf273a78..c444d6cb0b 100644 --- a/resources/definitions/mixware_hyper_s.def.json +++ b/resources/definitions/mixware_hyper_s.def.json @@ -135,7 +135,6 @@ "support_interface_skip_height": { "default_value": 0.24 }, "support_pattern": { "default_value": "zigzag" }, "support_type": { "default_value": "buildplate" }, - "support_use_towers": { "default_value": false }, "support_wall_count": { "value": 1 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/modix_v3_base.def.json b/resources/definitions/modix_v3_base.def.json index 52763c2e98..6f0205e59e 100644 --- a/resources/definitions/modix_v3_base.def.json +++ b/resources/definitions/modix_v3_base.def.json @@ -75,7 +75,6 @@ "support_interface_density": { "value": 40 }, "support_interface_enable": { "value": true }, "support_interface_height": { "value": "layer_height * 3" }, - "support_use_towers": { "value": false }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, "support_z_distance": { "value": "layer_height if layer_height >= 0.2 else layer_height * 2" }, diff --git a/resources/definitions/modix_v4_base.def.json b/resources/definitions/modix_v4_base.def.json index 7f02674355..932293d6df 100644 --- a/resources/definitions/modix_v4_base.def.json +++ b/resources/definitions/modix_v4_base.def.json @@ -75,7 +75,6 @@ "support_interface_density": { "value": 40 }, "support_interface_enable": { "value": true }, "support_interface_height": { "value": "layer_height * 3" }, - "support_use_towers": { "value": false }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, "support_z_distance": { "value": "layer_height if layer_height >= 0.2 else layer_height * 2" }, diff --git a/resources/definitions/skriware_2.def.json b/resources/definitions/skriware_2.def.json index 2418a4c1b6..cc4b8b3ba2 100644 --- a/resources/definitions/skriware_2.def.json +++ b/resources/definitions/skriware_2.def.json @@ -238,7 +238,6 @@ "support_skip_zag_per_mm": { "default_value": 10 }, "support_top_distance": { "value": "0.2" }, "support_tree_collision_resolution": { "value": "0.2" }, - "support_use_towers": { "default_value": false }, "support_xy_distance": { "default_value": 0.6 }, "support_xy_distance_overhang": { "value": "0.5" }, "support_z_distance": { "default_value": 0.2 }, diff --git a/resources/definitions/strateo3d.def.json b/resources/definitions/strateo3d.def.json index e19dc31337..0592e718cb 100644 --- a/resources/definitions/strateo3d.def.json +++ b/resources/definitions/strateo3d.def.json @@ -277,7 +277,6 @@ "maximum_value_warning": "machine_nozzle_size*1.5", "value": "extruderValue(support_roof_extruder_nr if support_roof_enable else support_infill_extruder_nr, 'support_z_distance')" }, - "support_use_towers": { "default_value": true }, "support_xy_distance": { "value": "line_width * 1.7" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, "support_z_distance": diff --git a/resources/definitions/tank_m_base.def.json b/resources/definitions/tank_m_base.def.json index 487ced6c65..069c6a4755 100644 --- a/resources/definitions/tank_m_base.def.json +++ b/resources/definitions/tank_m_base.def.json @@ -72,7 +72,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 1 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/tronxy_x.def.json b/resources/definitions/tronxy_x.def.json index d6388c845d..58dea24c90 100644 --- a/resources/definitions/tronxy_x.def.json +++ b/resources/definitions/tronxy_x.def.json @@ -113,7 +113,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": "1 if (support_structure == 'tree') else 0" }, "support_xy_distance": { "value": "wall_line_width_0 * 3" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/two_trees_base.def.json b/resources/definitions/two_trees_base.def.json index b432d491cd..108d8df11f 100644 --- a/resources/definitions/two_trees_base.def.json +++ b/resources/definitions/two_trees_base.def.json @@ -70,7 +70,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": "1 if (support_structure == 'tree') else 0" }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/vivedino_base.def.json b/resources/definitions/vivedino_base.def.json index 54e4335a07..5ffd06f3f0 100644 --- a/resources/definitions/vivedino_base.def.json +++ b/resources/definitions/vivedino_base.def.json @@ -101,7 +101,6 @@ "support_interface_pattern": { "value": "'grid'" }, "support_interface_skip_height": { "value": 0.2 }, "support_pattern": { "value": "'zigzag'" }, - "support_use_towers": { "value": false }, "support_wall_count": { "value": 1 }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, diff --git a/resources/definitions/weedo_x40.def.json b/resources/definitions/weedo_x40.def.json index 9816070c33..043bae3cb0 100644 --- a/resources/definitions/weedo_x40.def.json +++ b/resources/definitions/weedo_x40.def.json @@ -262,7 +262,6 @@ "support_fan_enable": { "value": true }, "support_pattern": { "value": "'zigzag'" }, "support_supported_skin_fan_speed": { "value": 100 }, - "support_use_towers": { "value": true }, "support_xy_distance": { "value": "wall_line_width_0 * 2" }, "support_xy_distance_overhang": { "value": "wall_line_width_0" }, "support_z_distance": { "value": "layer_height if layer_height >= 0.16 else layer_height*2" }, From e43c451745fb09287eec031c94610463abd9c83e Mon Sep 17 00:00:00 2001 From: jspijker Date: Tue, 21 Feb 2023 16:23:38 +0100 Subject: [PATCH 16/44] Fixed failing UT These default_values don't work anymore, since the values are set in fdm_printer --- resources/definitions/elegoo_base.def.json | 1 - resources/definitions/mixware_hyper_s.def.json | 1 - resources/definitions/skriware_2.def.json | 1 - 3 files changed, 3 deletions(-) diff --git a/resources/definitions/elegoo_base.def.json b/resources/definitions/elegoo_base.def.json index fec00d57d5..2e47f345d6 100644 --- a/resources/definitions/elegoo_base.def.json +++ b/resources/definitions/elegoo_base.def.json @@ -123,7 +123,6 @@ "support_interface_density": { "default_value": 33.333 }, "support_interface_pattern": { "default_value": "lines" }, "support_material_flow": { "value": "material_flow * 0.95" }, - "support_offset": { "default_value": 0.3 }, "support_roof_pattern": { "value": "'grid'" }, "support_top_distance": { "value": "extruderValue(support_roof_extruder_nr if support_roof_enable else support_infill_extruder_nr, 'layer_height') + (0 if support_structure == 'tree' else 0)" }, "support_tower_maximum_supported_diameter": { "value": "1" }, diff --git a/resources/definitions/mixware_hyper_s.def.json b/resources/definitions/mixware_hyper_s.def.json index c444d6cb0b..16d909c182 100644 --- a/resources/definitions/mixware_hyper_s.def.json +++ b/resources/definitions/mixware_hyper_s.def.json @@ -132,7 +132,6 @@ "support_interface_enable": { "default_value": true }, "support_interface_height": { "value": "layer_height * 4" }, "support_interface_pattern": { "default_value": "grid" }, - "support_interface_skip_height": { "default_value": 0.24 }, "support_pattern": { "default_value": "zigzag" }, "support_type": { "default_value": "buildplate" }, "support_wall_count": { "value": 1 }, diff --git a/resources/definitions/skriware_2.def.json b/resources/definitions/skriware_2.def.json index cc4b8b3ba2..ff3d87a154 100644 --- a/resources/definitions/skriware_2.def.json +++ b/resources/definitions/skriware_2.def.json @@ -228,7 +228,6 @@ "support_interface_material_flow": { "value": "99" }, "support_line_distance": { "value": "0 if support_infill_rate == 0 else (support_line_width * 100) / support_infill_rate * (2 if support_pattern == 'grid' else (3 if support_pattern == 'triangles' else 1))" }, "support_material_flow": { "value": "98" }, - "support_offset": { "default_value": 0.2 }, "support_roof_density": { "value": "70" }, "support_roof_extruder_nr": { "value": "0" }, "support_roof_height": { "value": "0.4" }, From 27ccb88e648d9372df0da6244f20628a20ffd47b Mon Sep 17 00:00:00 2001 From: MariMakes <40423138+MariMakes@users.noreply.github.com> Date: Wed, 22 Feb 2023 10:38:31 +0100 Subject: [PATCH 17/44] Update changelog with fixes Update changelog with fixes --- resources/texts/change_log.txt | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/resources/texts/change_log.txt b/resources/texts/change_log.txt index cc4583c5e7..0f52a9fa22 100644 --- a/resources/texts/change_log.txt +++ b/resources/texts/change_log.txt @@ -13,18 +13,20 @@ * Other new features and improvements: - Improved the Zseam behavior so Hide Seam is generated less randomly. - Fixed the order in which concentric top/bottom patterns are printed. -- Replaced mentions of Ultimaker by UltiMaker to correctly reflect the merger +- Replaced mentions of Ultimaker by UltiMaker to correctly reflect the merger. - Updated Load Project window with a new design. - Added tooling to automatically generate translation files to reduce the chance of human error. - Added quality type to slice meta-data so it can be displayed in the Ultimaker Digital Factory. - Added a new way to update profiles by adding a Save/Compare Settings Button in custom window. -- Improved onboarding so t easier to add your first cloud printer or a non-UltiMaker printer. +- Improved onboarding so it is easier to add your first cloud printer or a non-UltiMaker printer. +- Included options to download .MSI and .PKG for easier software distribution. +- Smoothed some support generation, so support is generated less jittery. +- Reduced unnecessary support generation for small overhang regions, like textures. - Improved support generation so the support doesn't fold around the model. -- Adjusted Support Horizontal Expansion and Minimum Support Area Settings for UltiMaker printers to improve support reliability. -- Added a Minimum Layer Time Temperature setting. -- Added Brim Inside Avoid Margin setting, contributed by BagelOrb -- Added settings for Support Interface Wall Line Count, Support Roof Line Count, and Support Floor Line Count. - Reduced stringing for Lift Head setting by removing the move in XY. +- Added a Minimum Layer Time Temperature setting. +- Added settings for Support Interface Wall Line Count, Support Roof Line Count, and Support Floor Line Count. +- Added Brim Inside Avoid Margin setting, contributed by BagelOrb - Added prefix 'Printing' to post processing plugin script "DisplayFilenameAndLayerOnLCD" contributed by brunohenriquy - Added Enable, G-code Before, and G-code After To Filament Change, contributed by victornpb - Added support for per-object retraction settings, contributed by jeremysalwen @@ -71,6 +73,8 @@ - Fixed a bug where materials with longer names in Materials Preferences were harder to read, contributed by Ghostkeeper * Printer definitions, profiles and materials: +- Support Towers are working again and enabled by default for all printers. +- Updated Support Horizontal Expansion, Support Join Distance, and Minimum Support Area Settings for UltiMaker printers to improve support reliability. - Updated intent and quality files for UltiMaker printers to have more consistent file names. - Updated default Support Interface Pattern to ZigZag for UltiMaker printers - Updated Maximum Combing Distance for UltiMaker printers @@ -107,6 +111,7 @@ * Community translations: - Updated French translations, contributed by xommit +- Updated a typo in Japanese translations, contributed by tamorikawa * Known critical issues: - Under certain angles, the Interlocking Structures are not effective, yet. From 0da0cb67ba93d92a97eaf3aff42a0fed6d58149d Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 22 Feb 2023 10:54:15 +0100 Subject: [PATCH 18/44] Pinned conan to version 1.56.0 --- .github/workflows/requirements-conan-package.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/requirements-conan-package.txt b/.github/workflows/requirements-conan-package.txt index 7499f101da..26d167db2b 100644 --- a/.github/workflows/requirements-conan-package.txt +++ b/.github/workflows/requirements-conan-package.txt @@ -1,2 +1,2 @@ -conan!=1.51.0,!=1.51.1,!=1.51.2,!=1.51.3,!=1.52.0,!=1.57.0,!=1.58.0 +conan==1.56.0 sip From 848b8e13980d31e06a93f550b085b37598ff095b Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 22 Feb 2023 10:55:40 +0100 Subject: [PATCH 19/44] Add try catch when fetching material diameter. CURA-10183 --- plugins/GCodeReader/FlavorParser.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/GCodeReader/FlavorParser.py b/plugins/GCodeReader/FlavorParser.py index 33c4763397..372ee83135 100644 --- a/plugins/GCodeReader/FlavorParser.py +++ b/plugins/GCodeReader/FlavorParser.py @@ -328,7 +328,11 @@ class FlavorParser: if not global_stack: return None - self._current_filament_diameter = global_stack.extruderList[self._extruder_number].getProperty("material_diameter", "value") + try: + self._current_filament_diameter = global_stack.extruderList[self._extruder_number].getProperty("material_diameter", "value") + except IndexError: + # There can be a mismatch between the number of extruders in the G-Code file and the number of extruders in the current machine. + self._current_filament_diameter = self.DEFAULT_FILAMENT_DIAMETER scene_node = CuraSceneNode() From 90b794d7dda6216eb3dc8918cbb8b03c0e6ebb33 Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 22 Feb 2023 10:58:57 +0100 Subject: [PATCH 20/44] Synced main workflows with 5.3.0 --- .github/workflows/conan-recipe-version.yml | 18 +++++++++++++++--- .github/workflows/cura-installer.yml | 4 ++++ .github/workflows/printer-linter-format.yml | 15 ++++++++------- .../workflows/printer-linter-pr-diagnose.yml | 15 ++++++++------- 4 files changed, 35 insertions(+), 17 deletions(-) diff --git a/.github/workflows/conan-recipe-version.yml b/.github/workflows/conan-recipe-version.yml index 3d5da55d6a..75408b0d16 100644 --- a/.github/workflows/conan-recipe-version.yml +++ b/.github/workflows/conan-recipe-version.yml @@ -170,9 +170,21 @@ jobs: bump_up_release_tag = int(latest_branch_version.prerelease.split('.')[1]) + 1 actual_version = f"{latest_branch_version.major}.{latest_branch_version.minor}.{latest_branch_version.patch}-{latest_branch_version.prerelease.split('.')[0]}.{bump_up_release_tag}+{buildmetadata}{channel_metadata}" else: - bump_up_minor = int(latest_branch_version.minor) + 1 - reset_patch = 0 - actual_version = f"{latest_branch_version.major}.{bump_up_minor}.{reset_patch}-alpha+{buildmetadata}{channel_metadata}" + max_branches_version = tools.Version("0.0.0") + branches_no_commits = no_commits + for branch in repo.references: + try: + if "remotes/origin" in branch.abspath: + b_version = tools.Version(branch.name.split("/")[-1]) + if b_version < tools.Version("10.0.0") and b_version > max_branches_version: + max_branches_version = b_version + branches_no_commits = repo.commit().count() - branch.commit.count() + except: + pass + if max_branches_version > latest_branch_version: + actual_version = f"{max_branches_version.major}.{int(max_branches_version.minor) + 1}.0-alpha+{buildmetadata}{channel}_{branches_no_commits}" + else: + actual_version = f"{latest_branch_version.major}.{int(latest_branch_version.minor) + 1}.0-alpha+{buildmetadata}{channel_metadata}" # %% Set the environment output output_env = os.environ["GITHUB_OUTPUT"] diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml index c067de19c0..9429f24e8a 100644 --- a/.github/workflows/cura-installer.yml +++ b/.github/workflows/cura-installer.yml @@ -122,6 +122,10 @@ jobs: if: ${{ runner.os == 'Macos' }} run: brew install autoconf automake ninja create-dmg # Delete create-dmg when deprecating dmg + - name: Hack needed specifically for ubuntu-22.04 from mid-Feb 2023 onwards + if: ${{ runner.os == 'Linux' && startsWith(inputs.platform, 'ubuntu-22.04') }} + run: sudo apt remove libodbc2 libodbcinst2 unixodbc-common -y + - name: Install Linux system requirements if: ${{ runner.os == 'Linux' }} run: | diff --git a/.github/workflows/printer-linter-format.yml b/.github/workflows/printer-linter-format.yml index e5e1b5b1d6..8e65a481c4 100644 --- a/.github/workflows/printer-linter-format.yml +++ b/.github/workflows/printer-linter-format.yml @@ -18,19 +18,20 @@ jobs: - name: Checkout uses: actions/checkout@v3 - - name: Setup Python and pip - uses: actions/setup-python@v4 - with: - python-version: 3.11.x - cache: 'pip' - cache-dependency-path: .github/workflows/requirements-printer-linter.txt - - uses: technote-space/get-diff-action@v6 with: PATTERNS: | resources/+(definitions|extruders)/*.def.json resources/+(intent|quality|variants)/**/*.inst.cfg + - name: Setup Python and pip + if: env.GIT_DIFF && !env.MATCHED_FILES # If nothing happens with python and/or pip after, the clean-up crashes. + uses: actions/setup-python@v4 + with: + python-version: 3.11.x + cache: 'pip' + cache-dependency-path: .github/workflows/requirements-printer-linter.txt + - name: Install Python requirements for runner if: env.GIT_DIFF && !env.MATCHED_FILES run: pip install -r .github/workflows/requirements-printer-linter.txt diff --git a/.github/workflows/printer-linter-pr-diagnose.yml b/.github/workflows/printer-linter-pr-diagnose.yml index 0dac8ba7e7..57c3732d81 100644 --- a/.github/workflows/printer-linter-pr-diagnose.yml +++ b/.github/workflows/printer-linter-pr-diagnose.yml @@ -16,19 +16,20 @@ jobs: with: fetch-depth: 2 - - name: Setup Python and pip - uses: actions/setup-python@v4 - with: - python-version: 3.11.x - cache: "pip" - cache-dependency-path: .github/workflows/requirements-printer-linter.txt - - uses: technote-space/get-diff-action@v6 with: PATTERNS: | resources/+(extruders|definitions)/*.def.json resources/+(intent|quality|variants)/**/*.inst.cfg + - name: Setup Python and pip + if: env.GIT_DIFF && !env.MATCHED_FILES # If nothing happens with python and/or pip after, the clean-up crashes. + uses: actions/setup-python@v4 + with: + python-version: 3.11.x + cache: "pip" + cache-dependency-path: .github/workflows/requirements-printer-linter.txt + - name: Install Python requirements for runner if: env.GIT_DIFF && !env.MATCHED_FILES run: pip install -r .github/workflows/requirements-printer-linter.txt From 8dfaca37529228e64a843fece0554469b5da47f6 Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 22 Feb 2023 12:15:17 +0100 Subject: [PATCH 21/44] Set the correct requirements for 5.3.0-beta.1 --- conandata.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/conandata.yml b/conandata.yml index b615341776..696dfa82fc 100644 --- a/conandata.yml +++ b/conandata.yml @@ -10,15 +10,15 @@ # requirements (use the /(latest)@ultimaker/testing) # # Subject to change in the future! -"5.3.0-beta": +"5.3.0-beta.1": requirements: - "pyarcus/5.2.2" - - "curaengine/(latest)@ultimaker/stable" + - "curaengine/5.3.0-beta.1" - "pysavitar/5.2.2" - "pynest2d/5.2.2" - - "uranium/(latest)@ultimaker/stable" - - "fdm_materials/(latest)@ultimaker/stable" - - "cura_binary_data/(latest)@ultimaker/stable" + - "uranium/5.3.0-beta" + - "fdm_materials/5.3.0-beta.1+29@ultimaker/stable" + - "cura_binary_data/5.3.0-beta" - "cpython/3.10.4" internal_requirements: - "fdm_materials_private/(latest)@ultimaker/testing" From 64ecc2118d77405f3a43759504cd90a85fa6320b Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 22 Feb 2023 12:41:29 +0100 Subject: [PATCH 22/44] Set the correct curaengine version for 5.3.0-beta.1 --- conandata.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conandata.yml b/conandata.yml index 696dfa82fc..68e3a38301 100644 --- a/conandata.yml +++ b/conandata.yml @@ -13,7 +13,7 @@ "5.3.0-beta.1": requirements: - "pyarcus/5.2.2" - - "curaengine/5.3.0-beta.1" + - "curaengine/5.3.0-beta" - "pysavitar/5.2.2" - "pynest2d/5.2.2" - "uranium/5.3.0-beta" From 2c23221a9afd28e96e85d6fe95266ef4d881d18a Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 22 Feb 2023 17:08:58 +0100 Subject: [PATCH 23/44] Fix translations missing from build...maybe? --- .github/workflows/conan-package.yml | 2 +- conanfile.py | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index f88f815139..3a32d29a24 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -76,7 +76,7 @@ jobs: permissions: contents: read - if: ${{ (github.event_name == 'push' && (github.ref_name == 'main' || github.ref_name == 'master' || needs.conan-recipe-version.outputs.is_release_branch == 'true')) || (github.event_name == 'workflow_dispatch' && inputs.create_binaries_linux) }} + if: ${{ (github.event_name == 'push' && (github.ref_name == 'main' || github.ref_name == 'master' || needs.conan-recipe-version.outputs.is_release_branch)) || (github.event_name == 'workflow_dispatch' && inputs.create_binaries_linux) }} needs: [ conan-recipe-version, conan-package-export ] uses: ultimaker/cura/.github/workflows/conan-package-create.yml@main diff --git a/conanfile.py b/conanfile.py index 7dd3c9db9b..c19bbf8029 100644 --- a/conanfile.py +++ b/conanfile.py @@ -6,7 +6,7 @@ from jinja2 import Template from conan import ConanFile from conan.tools.files import copy, rmdir, save, mkdir from conan.tools.microsoft import unix_path -from conan.tools.env import VirtualRunEnv, Environment +from conan.tools.env import VirtualRunEnv, Environment, VirtualBuildEnv from conan.tools.scm import Version from conan.errors import ConanInvalidConfiguration, ConanException @@ -314,6 +314,9 @@ class CuraConan(ConanFile): vr = VirtualRunEnv(self) vr.generate() + vb = VirtualBuildEnv(self) + vb.generate() + self._generate_cura_version(Path(self.source_folder, "cura")) if self.options.devtools: From db51fa4274c66c33e3c72d18c8e71c7857360262 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 22 Feb 2023 17:11:39 +0100 Subject: [PATCH 24/44] Fix translations missing from build...maybe? --- .github/workflows/conan-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index 3a32d29a24..de3320885d 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -76,7 +76,7 @@ jobs: permissions: contents: read - if: ${{ (github.event_name == 'push' && (github.ref_name == 'main' || github.ref_name == 'master' || needs.conan-recipe-version.outputs.is_release_branch)) || (github.event_name == 'workflow_dispatch' && inputs.create_binaries_linux) }} +# if: ${{ (github.event_name == 'push' && (github.ref_name == 'main' || github.ref_name == 'master' || needs.conan-recipe-version.outputs.is_release_branch)) || (github.event_name == 'workflow_dispatch' && inputs.create_binaries_linux) }} needs: [ conan-recipe-version, conan-package-export ] uses: ultimaker/cura/.github/workflows/conan-package-create.yml@main From 12ec61be1d7adeb6b08a66dfe44d725422bda1cf Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 22 Feb 2023 17:39:11 +0100 Subject: [PATCH 25/44] Fix translations missing from build...maybe? --- conandata.yml | 111 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 111 insertions(+) diff --git a/conandata.yml b/conandata.yml index 68e3a38301..0e40820e11 100644 --- a/conandata.yml +++ b/conandata.yml @@ -10,6 +10,117 @@ # requirements (use the /(latest)@ultimaker/testing) # # Subject to change in the future! +"5.3.0-beta.2": + requirements: + - "pyarcus/5.2.2" + - "curaengine/5.3.0-beta" + - "pysavitar/5.2.2" + - "pynest2d/5.2.2" + - "uranium/5.3.0-beta.2" + - "fdm_materials/5.3.0-beta.1+29@ultimaker/stable" + - "cura_binary_data/5.3.0-beta" + - "cpython/3.10.4" + internal_requirements: + - "fdm_materials_private/(latest)@ultimaker/testing" + - "cura_private_data/(latest)@ultimaker/testing" + runinfo: + entrypoint: "cura_app.py" + pyinstaller: + datas: + cura_plugins: + package: "cura" + src: "plugins" + dst: "share/cura/plugins" + cura_resources: + package: "cura" + src: "resources" + dst: "share/cura/resources" + cura_private_data: + package: "cura_private_data" + src: "resources" + dst: "share/cura/resources" + internal: true + cura_private_data_plugins: + package: "cura_private_data" + src: "plugins" + dst: "share/cura/plugins" + internal: true + uranium_plugins: + package: "uranium" + src: "plugins" + dst: "share/uranium/plugins" + uranium_resources: + package: "uranium" + src: "resources" + dst: "share/uranium/resources" + uranium_um_qt_qml_um: + package: "uranium" + src: "site-packages/UM/Qt/qml/UM" + dst: "PyQt6/Qt6/qml/UM" + cura_binary_data: + package: "cura_binary_data" + src: "resources/cura/resources" + dst: "share/cura/resources" + uranium_binary_data: + package: "cura_binary_data" + src: "resources/uranium/resources" + dst: "share/uranium/resources" + windows_binary_data: + package: "cura_binary_data" + src: "windows" + dst: "share/windows" + fdm_materials: + package: "fdm_materials" + src: "materials" + dst: "share/cura/resources/materials" + fdm_materials_private: + package: "fdm_materials_private" + src: "resources/materials" + dst: "share/cura/resources/materials" + internal: true + tcl: + package: "tcl" + src: "lib/tcl8.6" + dst: "tcl" + tk: + package: "tk" + src: "lib/tk8.6" + dst: "tk" + binaries: + curaengine: + package: "curaengine" + src: "bin" + dst: "." + binary: "CuraEngine" + hiddenimports: + - "pySavitar" + - "pyArcus" + - "pynest2d" + - "PyQt6" + - "PyQt6.QtNetwork" + - "PyQt6.sip" + - "logging.handlers" + - "zeroconf" + - "fcntl" + - "stl" + - "serial" + collect_all: + - "cura" + - "UM" + - "serial" + - "Charon" + - "sqlite3" + - "trimesh" + - "win32ctypes" + - "PyQt6" + - "PyQt6.QtNetwork" + - "PyQt6.sip" + - "stl" + icon: + Windows: "./icons/Cura.ico" + Macos: "./icons/cura.icns" + Linux: "./icons/cura-128.png" + "5.3.0-beta.1": requirements: - "pyarcus/5.2.2" From ed49a01fdcc6598852199eff8d497823e76bd62d Mon Sep 17 00:00:00 2001 From: jelle Spijker Date: Wed, 22 Feb 2023 13:51:29 +0100 Subject: [PATCH 26/44] Move requirements out of conan_data (cherry picked from commit 89ee82fa8223536aedfc791963907cd8faa7e296) --- conandata.yml | 751 ++++++++++++++------------------------------------ conanfile.py | 29 +- 2 files changed, 215 insertions(+), 565 deletions(-) diff --git a/conandata.yml b/conandata.yml index 0e40820e11..29d67eea83 100644 --- a/conandata.yml +++ b/conandata.yml @@ -10,554 +10,205 @@ # requirements (use the /(latest)@ultimaker/testing) # # Subject to change in the future! -"5.3.0-beta.2": - requirements: - - "pyarcus/5.2.2" - - "curaengine/5.3.0-beta" - - "pysavitar/5.2.2" - - "pynest2d/5.2.2" - - "uranium/5.3.0-beta.2" - - "fdm_materials/5.3.0-beta.1+29@ultimaker/stable" - - "cura_binary_data/5.3.0-beta" - - "cpython/3.10.4" - internal_requirements: - - "fdm_materials_private/(latest)@ultimaker/testing" - - "cura_private_data/(latest)@ultimaker/testing" - runinfo: - entrypoint: "cura_app.py" - pyinstaller: - datas: - cura_plugins: - package: "cura" - src: "plugins" - dst: "share/cura/plugins" - cura_resources: - package: "cura" - src: "resources" - dst: "share/cura/resources" - cura_private_data: - package: "cura_private_data" - src: "resources" - dst: "share/cura/resources" - internal: true - cura_private_data_plugins: - package: "cura_private_data" - src: "plugins" - dst: "share/cura/plugins" - internal: true - uranium_plugins: - package: "uranium" - src: "plugins" - dst: "share/uranium/plugins" - uranium_resources: - package: "uranium" - src: "resources" - dst: "share/uranium/resources" - uranium_um_qt_qml_um: - package: "uranium" - src: "site-packages/UM/Qt/qml/UM" - dst: "PyQt6/Qt6/qml/UM" - cura_binary_data: - package: "cura_binary_data" - src: "resources/cura/resources" - dst: "share/cura/resources" - uranium_binary_data: - package: "cura_binary_data" - src: "resources/uranium/resources" - dst: "share/uranium/resources" - windows_binary_data: - package: "cura_binary_data" - src: "windows" - dst: "share/windows" - fdm_materials: - package: "fdm_materials" - src: "materials" - dst: "share/cura/resources/materials" - fdm_materials_private: - package: "fdm_materials_private" - src: "resources/materials" - dst: "share/cura/resources/materials" - internal: true - tcl: - package: "tcl" - src: "lib/tcl8.6" - dst: "tcl" - tk: - package: "tk" - src: "lib/tk8.6" - dst: "tk" - binaries: - curaengine: - package: "curaengine" - src: "bin" - dst: "." - binary: "CuraEngine" - hiddenimports: - - "pySavitar" - - "pyArcus" - - "pynest2d" - - "PyQt6" - - "PyQt6.QtNetwork" - - "PyQt6.sip" - - "logging.handlers" - - "zeroconf" - - "fcntl" - - "stl" - - "serial" - collect_all: - - "cura" - - "UM" - - "serial" - - "Charon" - - "sqlite3" - - "trimesh" - - "win32ctypes" - - "PyQt6" - - "PyQt6.QtNetwork" - - "PyQt6.sip" - - "stl" - icon: - Windows: "./icons/Cura.ico" - Macos: "./icons/cura.icns" - Linux: "./icons/cura-128.png" - -"5.3.0-beta.1": - requirements: - - "pyarcus/5.2.2" - - "curaengine/5.3.0-beta" - - "pysavitar/5.2.2" - - "pynest2d/5.2.2" - - "uranium/5.3.0-beta" - - "fdm_materials/5.3.0-beta.1+29@ultimaker/stable" - - "cura_binary_data/5.3.0-beta" - - "cpython/3.10.4" - internal_requirements: - - "fdm_materials_private/(latest)@ultimaker/testing" - - "cura_private_data/(latest)@ultimaker/testing" - runinfo: - entrypoint: "cura_app.py" - pyinstaller: - datas: - cura_plugins: - package: "cura" - src: "plugins" - dst: "share/cura/plugins" - cura_resources: - package: "cura" - src: "resources" - dst: "share/cura/resources" - cura_private_data: - package: "cura_private_data" - src: "resources" - dst: "share/cura/resources" - internal: true - cura_private_data_plugins: - package: "cura_private_data" - src: "plugins" - dst: "share/cura/plugins" - internal: true - uranium_plugins: - package: "uranium" - src: "plugins" - dst: "share/uranium/plugins" - uranium_resources: - package: "uranium" - src: "resources" - dst: "share/uranium/resources" - uranium_um_qt_qml_um: - package: "uranium" - src: "site-packages/UM/Qt/qml/UM" - dst: "PyQt6/Qt6/qml/UM" - cura_binary_data: - package: "cura_binary_data" - src: "resources/cura/resources" - dst: "share/cura/resources" - uranium_binary_data: - package: "cura_binary_data" - src: "resources/uranium/resources" - dst: "share/uranium/resources" - windows_binary_data: - package: "cura_binary_data" - src: "windows" - dst: "share/windows" - fdm_materials: - package: "fdm_materials" - src: "materials" - dst: "share/cura/resources/materials" - fdm_materials_private: - package: "fdm_materials_private" - src: "resources/materials" - dst: "share/cura/resources/materials" - internal: true - tcl: - package: "tcl" - src: "lib/tcl8.6" - dst: "tcl" - tk: - package: "tk" - src: "lib/tk8.6" - dst: "tk" - binaries: - curaengine: - package: "curaengine" - src: "bin" - dst: "." - binary: "CuraEngine" - hiddenimports: - - "pySavitar" - - "pyArcus" - - "pynest2d" - - "PyQt6" - - "PyQt6.QtNetwork" - - "PyQt6.sip" - - "logging.handlers" - - "zeroconf" - - "fcntl" - - "stl" - - "serial" - collect_all: - - "cura" - - "UM" - - "serial" - - "Charon" - - "sqlite3" - - "trimesh" - - "win32ctypes" - - "PyQt6" - - "PyQt6.QtNetwork" - - "PyQt6.sip" - - "stl" - icon: - Windows: "./icons/Cura.ico" - Macos: "./icons/cura.icns" - Linux: "./icons/cura-128.png" -"5.3.0": - requirements: - - "pyarcus/5.2.2" - - "curaengine/5.3.0" - - "pysavitar/5.2.2" - - "pynest2d/5.2.2" - - "uranium/5.3.0" - - "fdm_materials/5.3.0" - - "cura_binary_data/5.3.0" - - "cpython/3.10.4" - internal_requirements: - - "fdm_materials_private/(latest)@ultimaker/testing" - - "cura_private_data/(latest)@ultimaker/testing" - runinfo: - entrypoint: "cura_app.py" - pyinstaller: - datas: - cura_plugins: - package: "cura" - src: "plugins" - dst: "share/cura/plugins" - cura_resources: - package: "cura" - src: "resources" - dst: "share/cura/resources" - cura_private_data: - package: "cura_private_data" - src: "resources" - dst: "share/cura/resources" - internal: true - cura_private_data_plugins: - package: "cura_private_data" - src: "plugins" - dst: "share/cura/plugins" - internal: true - uranium_plugins: - package: "uranium" - src: "plugins" - dst: "share/uranium/plugins" - uranium_resources: - package: "uranium" - src: "resources" - dst: "share/uranium/resources" - uranium_um_qt_qml_um: - package: "uranium" - src: "site-packages/UM/Qt/qml/UM" - dst: "PyQt6/Qt6/qml/UM" - cura_binary_data: - package: "cura_binary_data" - src: "resources/cura/resources" - dst: "share/cura/resources" - uranium_binary_data: - package: "cura_binary_data" - src: "resources/uranium/resources" - dst: "share/uranium/resources" - windows_binary_data: - package: "cura_binary_data" - src: "windows" - dst: "share/windows" - fdm_materials: - package: "fdm_materials" - src: "materials" - dst: "share/cura/resources/materials" - fdm_materials_private: - package: "fdm_materials_private" - src: "resources/materials" - dst: "share/cura/resources/materials" - internal: true - tcl: - package: "tcl" - src: "lib/tcl8.6" - dst: "tcl" - tk: - package: "tk" - src: "lib/tk8.6" - dst: "tk" - binaries: - curaengine: - package: "curaengine" - src: "bin" - dst: "." - binary: "CuraEngine" - hiddenimports: - - "pySavitar" - - "pyArcus" - - "pynest2d" - - "PyQt6" - - "PyQt6.QtNetwork" - - "PyQt6.sip" - - "logging.handlers" - - "zeroconf" - - "fcntl" - - "stl" - - "serial" - collect_all: - - "cura" - - "UM" - - "serial" - - "Charon" - - "sqlite3" - - "trimesh" - - "win32ctypes" - - "PyQt6" - - "PyQt6.QtNetwork" - - "PyQt6.sip" - - "stl" - icon: - Windows: "./icons/Cura.ico" - Macos: "./icons/cura.icns" - Linux: "./icons/cura-128.png" -"5.3.0-alpha": - requirements: - - "pyarcus/5.2.2" - - "curaengine/(latest)@ultimaker/testing" - - "pysavitar/5.2.2" - - "pynest2d/5.2.2" - - "uranium/(latest)@ultimaker/testing" - - "fdm_materials/(latest)@ultimaker/testing" - - "cura_binary_data/(latest)@ultimaker/testing" - - "cpython/3.10.4" - internal_requirements: - - "fdm_materials_private/(latest)@ultimaker/testing" - - "cura_private_data/(latest)@ultimaker/testing" - runinfo: - entrypoint: "cura_app.py" - pyinstaller: - datas: - cura_plugins: - package: "cura" - src: "plugins" - dst: "share/cura/plugins" - cura_resources: - package: "cura" - src: "resources" - dst: "share/cura/resources" - cura_private_data: - package: "cura_private_data" - src: "resources" - dst: "share/cura/resources" - internal: true - cura_private_data_plugins: - package: "cura_private_data" - src: "plugins" - dst: "share/cura/plugins" - internal: true - uranium_plugins: - package: "uranium" - src: "plugins" - dst: "share/uranium/plugins" - uranium_resources: - package: "uranium" - src: "resources" - dst: "share/uranium/resources" - uranium_um_qt_qml_um: - package: "uranium" - src: "site-packages/UM/Qt/qml/UM" - dst: "PyQt6/Qt6/qml/UM" - cura_binary_data: - package: "cura_binary_data" - src: "resources/cura/resources" - dst: "share/cura/resources" - uranium_binary_data: - package: "cura_binary_data" - src: "resources/uranium/resources" - dst: "share/uranium/resources" - windows_binary_data: - package: "cura_binary_data" - src: "windows" - dst: "share/windows" - fdm_materials: - package: "fdm_materials" - src: "materials" - dst: "share/cura/resources/materials" - fdm_materials_private: - package: "fdm_materials_private" - src: "resources/materials" - dst: "share/cura/resources/materials" - internal: true - tcl: - package: "tcl" - src: "lib/tcl8.6" - dst: "tcl" - tk: - package: "tk" - src: "lib/tk8.6" - dst: "tk" - binaries: - curaengine: - package: "curaengine" - src: "bin" - dst: "." - binary: "CuraEngine" - hiddenimports: - - "pySavitar" - - "pyArcus" - - "pynest2d" - - "PyQt6" - - "PyQt6.QtNetwork" - - "PyQt6.sip" - - "logging.handlers" - - "zeroconf" - - "fcntl" - - "stl" - - "serial" - collect_all: - - "cura" - - "UM" - - "serial" - - "Charon" - - "sqlite3" - - "trimesh" - - "win32ctypes" - - "PyQt6" - - "PyQt6.QtNetwork" - - "PyQt6.sip" - - "stl" - icon: - Windows: "./icons/Cura.ico" - Macos: "./icons/cura.icns" - Linux: "./icons/cura-128.png" +runinfo: + entrypoint: "cura_app.py" +pyinstaller: + datas: + cura_plugins: + package: "cura" + src: "plugins" + dst: "share/cura/plugins" + cura_resources: + package: "cura" + src: "resources" + dst: "share/cura/resources" + cura_private_data: + package: "cura_private_data" + src: "resources" + dst: "share/cura/resources" + internal: true + cura_private_data_plugins: + package: "cura_private_data" + src: "plugins" + dst: "share/cura/plugins" + internal: true + uranium_plugins: + package: "uranium" + src: "plugins" + dst: "share/uranium/plugins" + uranium_resources: + package: "uranium" + src: "resources" + dst: "share/uranium/resources" + uranium_um_qt_qml_um: + package: "uranium" + src: "site-packages/UM/Qt/qml/UM" + dst: "PyQt6/Qt6/qml/UM" + cura_binary_data: + package: "cura_binary_data" + src: "resources/cura/resources" + dst: "share/cura/resources" + uranium_binary_data: + package: "cura_binary_data" + src: "resources/uranium/resources" + dst: "share/uranium/resources" + windows_binary_data: + package: "cura_binary_data" + src: "windows" + dst: "share/windows" + fdm_materials: + package: "fdm_materials" + src: "materials" + dst: "share/cura/resources/materials" + tcl: + package: "tcl" + src: "lib/tcl8.6" + dst: "tcl" + tk: + package: "tk" + src: "lib/tk8.6" + dst: "tk" + binaries: + curaengine: + package: "curaengine" + src: "bin" + dst: "." + binary: "CuraEngine" + hiddenimports: + - "pySavitar" + - "pyArcus" + - "pynest2d" + - "PyQt6" + - "PyQt6.QtNetwork" + - "PyQt6.sip" + - "logging.handlers" + - "zeroconf" + - "fcntl" + - "stl" + - "serial" + collect_all: + - "cura" + - "UM" + - "serial" + - "Charon" + - "sqlite3" + - "trimesh" + - "win32ctypes" + - "PyQt6" + - "PyQt6.QtNetwork" + - "PyQt6.sip" + - "stl" + icon: + Windows: "./icons/Cura.ico" + Macos: "./icons/cura.icns" + Linux: "./icons/cura-128.png" pycharm_targets: - - jinja_path: .run_templates/pycharm_cura_run.run.xml.jinja - module_name: Cura - name: cura - script_name: cura_app.py - - jinja_path: .run_templates/pycharm_cura_run.run.xml.jinja - module_name: Cura - name: cura_external_engine - parameters: --external-backend - script_name: cura_app.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in tests - script_name: tests/ - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestBuildVolume.py - script_name: tests/TestBuildVolume.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestConvexHullDecorator.py - script_name: tests/TestConvexHullDecorator.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestCuraSceneNode.py - script_name: tests/TestCuraSceneNode.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestCuraSceneNode.py - script_name: tests/TestExtruderManager.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestGCodeListDecorator.py - script_name: tests/TestGCodeListDecorator.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestIntentManager.py - script_name: tests/TestIntentManager.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestLayer.py - script_name: tests/TestLayer.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestMachineAction.py - script_name: tests/TestMachineAction.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestMachineManager.py - script_name: tests/TestMachineManager.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestOAuth2.py - script_name: tests/TestOAuth2.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestObjectsModel.py - script_name: tests/TestObjectsModel.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestPrintInformation.py - script_name: tests/TestPrintInformation.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestProfileRequirements.py - script_name: tests/TestProfileRequirements.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestThemes.py - script_name: tests/TestThemes.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestContainerManager.py - script_name: tests/Settings/TestContainerManager.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestCuraContainerRegistry.py - script_name: tests/Settings/TestCuraContainerRegistry.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestCuraStackBuilder.py - script_name: tests/Settings/TestCuraStackBuilder.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestDefinitionContainer.py - script_name: tests/Settings/TestDefinitionContainer.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestExtruderStack.py - script_name: tests/Settings/TestExtruderStack.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestGlobalStack.py - script_name: tests/Settings/TestGlobalStack.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestProfiles.py - script_name: tests/Settings/TestProfiles.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestSettingInheritanceManager.py - script_name: tests/Settings/TestSettingInheritanceManager.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestSettingOverrideDecorator.py - script_name: tests/Settings/TestSettingOverrideDecorator.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestSettingVisibilityPresets.py - script_name: tests/Settings/TestSettingVisibilityPresets.py + - jinja_path: .run_templates/pycharm_cura_run.run.xml.jinja + module_name: Cura + name: cura + script_name: cura_app.py + - jinja_path: .run_templates/pycharm_cura_run.run.xml.jinja + module_name: Cura + name: cura_external_engine + parameters: --external-backend + script_name: cura_app.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in tests + script_name: tests/ + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestBuildVolume.py + script_name: tests/TestBuildVolume.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestConvexHullDecorator.py + script_name: tests/TestConvexHullDecorator.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestCuraSceneNode.py + script_name: tests/TestCuraSceneNode.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestCuraSceneNode.py + script_name: tests/TestExtruderManager.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestGCodeListDecorator.py + script_name: tests/TestGCodeListDecorator.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestIntentManager.py + script_name: tests/TestIntentManager.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestLayer.py + script_name: tests/TestLayer.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestMachineAction.py + script_name: tests/TestMachineAction.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestMachineManager.py + script_name: tests/TestMachineManager.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestOAuth2.py + script_name: tests/TestOAuth2.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestObjectsModel.py + script_name: tests/TestObjectsModel.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestPrintInformation.py + script_name: tests/TestPrintInformation.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestProfileRequirements.py + script_name: tests/TestProfileRequirements.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestThemes.py + script_name: tests/TestThemes.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestContainerManager.py + script_name: tests/Settings/TestContainerManager.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestCuraContainerRegistry.py + script_name: tests/Settings/TestCuraContainerRegistry.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestCuraStackBuilder.py + script_name: tests/Settings/TestCuraStackBuilder.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestDefinitionContainer.py + script_name: tests/Settings/TestDefinitionContainer.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestExtruderStack.py + script_name: tests/Settings/TestExtruderStack.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestGlobalStack.py + script_name: tests/Settings/TestGlobalStack.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestProfiles.py + script_name: tests/Settings/TestProfiles.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestSettingInheritanceManager.py + script_name: tests/Settings/TestSettingInheritanceManager.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestSettingOverrideDecorator.py + script_name: tests/Settings/TestSettingOverrideDecorator.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestSettingVisibilityPresets.py + script_name: tests/Settings/TestSettingVisibilityPresets.py diff --git a/conanfile.py b/conanfile.py index c19bbf8029..52e544da4a 100644 --- a/conanfile.py +++ b/conanfile.py @@ -179,7 +179,7 @@ class CuraConan(ConanFile): cura_latest_url = self._cura_latest_url)) def _generate_pyinstaller_spec(self, location, entrypoint_location, icon_path, entitlements_file): - pyinstaller_metadata = self._um_data()["pyinstaller"] + pyinstaller_metadata = self.conan_data["pyinstaller"] datas = [(str(self._base_dir.joinpath("conan_install_info.json")), ".")] for data in pyinstaller_metadata["datas"].values(): if not self.options.internal and data.get("internal", False): @@ -275,11 +275,16 @@ class CuraConan(ConanFile): raise ConanInvalidConfiguration("Only versions 5+ are support") def requirements(self): - for req in self._um_data()["requirements"]: - self.requires(req) + self.requires("pyarcus/5.2.2") + self.requires("curaengine/(latest)@ultimaker/testing") + self.requires("pysavitar/5.2.2") + self.requires("pynest2d/5.2.2") + self.requires("uranium/(latest)@ultimaker/testing") + self.requires("fdm_materials/(latest)@{}/testing".format("internal" if self.options.internal else "ultimaker")) + self.requires("cura_binary_data/(latest)@ultimaker/testing") + self.requires("cpython/3.10.4") if self.options.internal: - for req in self._um_data()["internal_requirements"]: - self.requires(req) + self.requires("cura_private_data/(latest)@ultimaker/testing") def build_requirements(self): if self.options.devtools: @@ -322,8 +327,8 @@ class CuraConan(ConanFile): if self.options.devtools: entitlements_file = "'{}'".format(Path(self.source_folder, "packaging", "MacOS", "cura.entitlements")) self._generate_pyinstaller_spec(location = self.generators_folder, - entrypoint_location = "'{}'".format(Path(self.source_folder, self._um_data()["runinfo"]["entrypoint"])).replace("\\", "\\\\"), - icon_path = "'{}'".format(Path(self.source_folder, "packaging", self._um_data()["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), + entrypoint_location = "'{}'".format(Path(self.source_folder, self.conan_data["runinfo"]["entrypoint"])).replace("\\", "\\\\"), + icon_path = "'{}'".format(Path(self.source_folder, "packaging", self.conan_data["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") # Update the po files @@ -345,8 +350,6 @@ class CuraConan(ConanFile): self.copy("*.sig", root_package = "fdm_materials", src = "@resdirs", dst = "resources/materials", keep_path = False) if self.options.internal: - self.copy("*.fdm_material", root_package = "fdm_materials_private", src = "@resdirs", dst = "resources/materials", keep_path = False) - self.copy("*.sig", root_package = "fdm_materials_private", src = "@resdirs", dst = "resources/materials", keep_path = False) self.copy("*", root_package = "cura_private_data", src = self.deps_cpp_info["cura_private_data"].resdirs[0], dst = self._share_dir.joinpath("cura", "resources"), keep_path = True) @@ -384,10 +387,6 @@ class CuraConan(ConanFile): # Copy internal resources if self.options.internal: - self.copy_deps("*.fdm_material", root_package = "fdm_materials_private", src = self.deps_cpp_info["fdm_materials_private"].resdirs[0], - dst = self._share_dir.joinpath("cura", "resources", "materials"), keep_path = False) - self.copy_deps("*.sig", root_package = "fdm_materials_private", src = self.deps_cpp_info["fdm_materials_private"].resdirs[0], - dst = self._share_dir.joinpath("cura", "resources", "materials"), keep_path = False) self.copy_deps("*", root_package = "cura_private_data", src = self.deps_cpp_info["cura_private_data"].resdirs[0], dst = self._share_dir.joinpath("cura", "resources"), keep_path = True) self.copy_deps("*", root_package = "cura_private_data", src = self.deps_cpp_info["cura_private_data"].resdirs[1], @@ -450,8 +449,8 @@ echo "CURA_APP_NAME={{ cura_app_name }}" >> ${{ env_prefix }}GITHUB_ENV entitlements_file = "'{}'".format(Path(self.cpp_info.res_paths[2], "MacOS", "cura.entitlements")) self._generate_pyinstaller_spec(location = self._base_dir, - entrypoint_location = "'{}'".format(Path(self.cpp_info.bin_paths[0], self._um_data()["runinfo"]["entrypoint"])).replace("\\", "\\\\"), - icon_path = "'{}'".format(Path(self.cpp_info.res_paths[2], self._um_data()["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), + entrypoint_location = "'{}'".format(Path(self.cpp_info.bin_paths[0], self.conan_data["runinfo"]["entrypoint"])).replace("\\", "\\\\"), + icon_path = "'{}'".format(Path(self.cpp_info.res_paths[2], self.conan_data["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") def package(self): From 132fbe0e17f1ca7d201d96209e7fc7518c23f1dc Mon Sep 17 00:00:00 2001 From: jelle Spijker Date: Wed, 22 Feb 2023 21:03:36 +0100 Subject: [PATCH 27/44] Fix building translations --- .github/workflows/conan-package.yml | 233 +++++++++++++++++----------- conanfile.py | 6 +- 2 files changed, 144 insertions(+), 95 deletions(-) diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index de3320885d..39d0dea777 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -7,110 +7,159 @@ name: conan-package # It should run on pushes against main or CURA-* branches, but it will only create the binaries for main and release branches on: - workflow_dispatch: - inputs: - create_binaries_windows: - required: true - default: false - description: 'create binaries Windows' - create_binaries_linux: - required: true - default: false - description: 'create binaries Linux' - create_binaries_macos: - required: true - default: false - description: 'create binaries Macos' + workflow_dispatch: + inputs: + create_binaries_windows: + required: true + default: false + description: 'create binaries Windows' + create_binaries_linux: + required: true + default: false + description: 'create binaries Linux' + create_binaries_macos: + required: true + default: false + description: 'create binaries Macos' - push: - paths: - - 'plugins/**' - - 'resources/**' - - 'cura/**' - - 'icons/**' - - 'tests/**' - - 'packaging/**' - - '.github/workflows/conan-*.yml' - - '.github/workflows/notify.yml' - - '.github/workflows/requirements-conan-package.txt' - - 'requirements*.txt' - - 'conanfile.py' - - 'conandata.yml' - - 'GitVersion.yml' - - '*.jinja' - branches: - - main - - 'CURA-*' - - '[1-9].[0-9]' - - '[1-9].[0-9][0-9]' - tags: - - '[1-9].[0-9].[0-9]*' - - '[1-9].[0-9].[0-9]' - - '[1-9].[0-9][0-9].[0-9]*' + push: + paths: + - 'plugins/**' + - 'resources/**' + - 'cura/**' + - 'icons/**' + - 'tests/**' + - 'packaging/**' + - '.github/workflows/conan-*.yml' + - '.github/workflows/notify.yml' + - '.github/workflows/requirements-conan-package.txt' + - 'requirements*.txt' + - 'conanfile.py' + - 'conandata.yml' + - 'GitVersion.yml' + - '*.jinja' + branches: + - main + - 'CURA-*' + - '[1-9].[0-9]' + - '[1-9].[0-9][0-9]' + tags: + - '[1-9].[0-9].[0-9]*' + - '[1-9].[0-9].[0-9]' + - '[1-9].[0-9][0-9].[0-9]*' + +env: + CONAN_LOGIN_USERNAME_CURA: ${{ secrets.CONAN_USER }} + CONAN_PASSWORD_CURA: ${{ secrets.CONAN_PASS }} + CONAN_LOGIN_USERNAME_CURA_CE: ${{ secrets.CONAN_USER }} + CONAN_PASSWORD_CURA_CE: ${{ secrets.CONAN_PASS }} + CONAN_LOG_RUN_TO_OUTPUT: 1 + CONAN_LOGGING_LEVEL: ${{ inputs.conan_logging_level }} + CONAN_NON_INTERACTIVE: 1 permissions: {} jobs: - conan-recipe-version: - permissions: - contents: read +conan-recipe-version: + permissions: + contents: read - uses: ultimaker/cura/.github/workflows/conan-recipe-version.yml@main + uses: ultimaker/cura/.github/workflows/conan-recipe-version.yml@main + with: + project_name: cura + + conan-package-create-linux: + needs: [ conan-recipe-version ] + runs-on: 'ubuntu-latest' + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Setup Python and pip + uses: actions/setup-python@v4 with: - project_name: cura + python-version: '3.10.x' + cache: 'pip' + cache-dependency-path: .github/workflows/requirements-conan-package.txt - conan-package-export: - permissions: - contents: read + - name: Install Python requirements for runner + run: pip install -r https://raw.githubusercontent.com/Ultimaker/Cura/main/.github/workflows/requirements-conan-package.txt + # Note the runner requirements are always installed from the main branch in the Ultimaker/Cura repo - needs: [ conan-recipe-version ] - uses: ultimaker/cura/.github/workflows/conan-recipe-export.yml@main + - name: Use Conan download cache (Bash) + if: ${{ runner.os != 'Windows' }} + run: conan config set storage.download_cache="$HOME/.conan/conan_download_cache" + + - name: Cache Conan local repository packages (Bash) + uses: actions/cache@v3 with: - recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }} - recipe_id_latest: ${{ needs.conan-recipe-version.outputs.recipe_id_latest }} - runs_on: 'ubuntu-20.04' - python_version: '3.10.x' - conan_logging_level: 'info' - secrets: inherit + path: | + $HOME/.conan/data + $HOME/.conan/conan_download_cache + key: conan-ubuntu-${{ runner.arch }}-create-cache - conan-package-create-linux: - permissions: - contents: read + - name: Install Linux system requirements + if: ${{ runner.os == 'Linux' }} + run: | + sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y + sudo apt update + sudo apt upgrade + sudo apt install build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config flex bison -y -# if: ${{ (github.event_name == 'push' && (github.ref_name == 'main' || github.ref_name == 'master' || needs.conan-recipe-version.outputs.is_release_branch)) || (github.event_name == 'workflow_dispatch' && inputs.create_binaries_linux) }} - needs: [ conan-recipe-version, conan-package-export ] + - name: Install GCC-12 + run: | + sudo apt install g++-12 gcc-12 -y + sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12 + sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 12 - uses: ultimaker/cura/.github/workflows/conan-package-create.yml@main + - name: Create the default Conan profile + run: conan profile new default --detect + + - name: Get Conan configuration + run: conan config install https://github.com/Ultimaker/conan-config.git + + - name: Create the Packages using lockfile + run: conan create . ${{ needs.conan-recipe-version.outputs.recipe_id_full }} --build=missing --update -o ${{ needs.conan-recipe-version.outputs.project_name }}:devtools=True + + - name: Remove the latest alias + if: ${{ needs.conan-recipe-version.outputs.recipe_id_latest != '' }} + run: | + conan remove ${{ needs.conan-recipe-version.outputs.recipe_id_latest }} -r cura -f || true + conan remove ${{ needs.conan-recipe-version.outputs.recipe_id_latest }} -r cura-ce -f || true + + - name: Create the latest alias + if: ${{ needs.conan-recipe-version.outputs.recipe_id_latest != '' && always() }} + run: conan alias ${{ needs.conan-recipe-version.outputs.recipe_id_latest }} ${{ needs.conan-recipe-version.outputs.recipe_id_full }} + + - name: Upload the Package(s) + if: always() + run: | + conan upload "*" -r cura --all -c + conan upload "*" -r cura-ce -c + + - name: Upload the log and build artifacts + if: always() + uses: actions/upload-artifact@v3 with: - project_name: ${{ needs.conan-recipe-version.outputs.project_name }} - recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }} - build_id: 1 - runs_on: 'ubuntu-20.04' - python_version: '3.10.x' - conan_logging_level: 'info' - secrets: inherit + name: log-ubuntu-${{ runner.arch }} + path: | + buildinfo.json + conan.lock + conanbuildinfo.txt + conaninfo.txt + graph_info.json + build/** + retention-days: 1 - notify-export: - if: ${{ always() }} - needs: [ conan-recipe-version, conan-package-export ] + notify-create: + if: ${{ always() && (github.event_name == 'push' && (github.ref_name == 'main' || github.ref_name == 'master' || needs.conan-recipe-version.outputs.is_release_branch == 'true')) }} + needs: [ conan-recipe-version, conan-package-create-linux ] - uses: ultimaker/cura/.github/workflows/notify.yml@main - with: - success: ${{ contains(join(needs.*.result, ','), 'success') }} - success_title: "New Conan recipe exported in ${{ github.repository }}" - success_body: "Exported ${{ needs.conan-recipe-version.outputs.recipe_id_full }}" - failure_title: "Failed to export Conan Export in ${{ github.repository }}" - failure_body: "Failed to exported ${{ needs.conan-recipe-version.outputs.recipe_id_full }}" - secrets: inherit - - notify-create: - if: ${{ always() && ((github.event_name == 'push' && (github.ref_name == 'main' || github.ref_name == 'master' || needs.conan-recipe-version.outputs.is_release_branch == 'true')) || (github.event_name == 'workflow_dispatch' && inputs.create_binaries_linux)) }} - needs: [ conan-recipe-version, conan-package-create-linux ] - - uses: ultimaker/cura/.github/workflows/notify.yml@main - with: - success: ${{ contains(join(needs.*.result, ','), 'success') }} - success_title: "New binaries created in ${{ github.repository }}" - success_body: "Created binaries for ${{ needs.conan-recipe-version.outputs.recipe_id_full }}" - failure_title: "Failed to create binaries in ${{ github.repository }}" - failure_body: "Failed to created binaries for ${{ needs.conan-recipe-version.outputs.recipe_id_full }}" - secrets: inherit + uses: ultimaker/cura/.github/workflows/notify.yml@main + with: + success: ${{ contains(join(needs.*.result, ','), 'success') }} + success_title: "New binaries created in ${{ github.repository }}" + success_body: "Created binaries for ${{ needs.conan-recipe-version.outputs.recipe_id_full }}" + failure_title: "Failed to create binaries in ${{ github.repository }}" + failure_body: "Failed to created binaries for ${{ needs.conan-recipe-version.outputs.recipe_id_full }}" + secrets: inherit diff --git a/conanfile.py b/conanfile.py index 52e544da4a..2271e306d4 100644 --- a/conanfile.py +++ b/conanfile.py @@ -276,11 +276,11 @@ class CuraConan(ConanFile): def requirements(self): self.requires("pyarcus/5.2.2") - self.requires("curaengine/(latest)@ultimaker/testing") + self.requires("curaengine/5.3.0-beta@ultimaker/testing") self.requires("pysavitar/5.2.2") self.requires("pynest2d/5.2.2") - self.requires("uranium/(latest)@ultimaker/testing") - self.requires("fdm_materials/(latest)@{}/testing".format("internal" if self.options.internal else "ultimaker")) + self.requires("uranium/5.3.0-beta.2@ultimaker/testing") + self.requires("fdm_materials/5.3.0-beta.1+29@ultimaker/stable") self.requires("cura_binary_data/(latest)@ultimaker/testing") self.requires("cpython/3.10.4") if self.options.internal: From 065e785e9037e09d730c6e275971e11037a4af71 Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 22 Feb 2023 21:43:28 +0100 Subject: [PATCH 28/44] Fixing Paths To custom for it --- conandata.yml | 405 ++++++++++++++++++++++++-------------------------- conanfile.py | 92 ++++++------ 2 files changed, 244 insertions(+), 253 deletions(-) diff --git a/conandata.yml b/conandata.yml index 29d67eea83..36e10ebbb1 100644 --- a/conandata.yml +++ b/conandata.yml @@ -1,214 +1,197 @@ ---- -# Usage: defaults to the first entry in this conandata.yml file -# If you're on a release branch create an entry for that **version** e.q.: `5.1.0` update the requirements (use pinned versions, not latest) -# also create a beta entry for that **version** e.q.: `5.1.0-beta`, update the requirements (use the /(latest)@ultimaker/stable) -# -# If you're working on a feature/bugfix branch from a release branch, create an entry for that **channel**, update the requirements (use -# the /(latest)@ultimaker/stable) -# -# If you're working on a feature/bugfix branch from a main branch, it is optional to create an entry for that **channel**, update the -# requirements (use the /(latest)@ultimaker/testing) -# -# Subject to change in the future! runinfo: - entrypoint: "cura_app.py" + entrypoint: "cura_app.py" pyinstaller: - datas: - cura_plugins: - package: "cura" - src: "plugins" - dst: "share/cura/plugins" - cura_resources: - package: "cura" - src: "resources" - dst: "share/cura/resources" - cura_private_data: - package: "cura_private_data" - src: "resources" - dst: "share/cura/resources" - internal: true - cura_private_data_plugins: - package: "cura_private_data" - src: "plugins" - dst: "share/cura/plugins" - internal: true - uranium_plugins: - package: "uranium" - src: "plugins" - dst: "share/uranium/plugins" - uranium_resources: - package: "uranium" - src: "resources" - dst: "share/uranium/resources" - uranium_um_qt_qml_um: - package: "uranium" - src: "site-packages/UM/Qt/qml/UM" - dst: "PyQt6/Qt6/qml/UM" - cura_binary_data: - package: "cura_binary_data" - src: "resources/cura/resources" - dst: "share/cura/resources" - uranium_binary_data: - package: "cura_binary_data" - src: "resources/uranium/resources" - dst: "share/uranium/resources" - windows_binary_data: - package: "cura_binary_data" - src: "windows" - dst: "share/windows" - fdm_materials: - package: "fdm_materials" - src: "materials" - dst: "share/cura/resources/materials" - tcl: - package: "tcl" - src: "lib/tcl8.6" - dst: "tcl" - tk: - package: "tk" - src: "lib/tk8.6" - dst: "tk" - binaries: - curaengine: - package: "curaengine" - src: "bin" - dst: "." - binary: "CuraEngine" - hiddenimports: - - "pySavitar" - - "pyArcus" - - "pynest2d" - - "PyQt6" - - "PyQt6.QtNetwork" - - "PyQt6.sip" - - "logging.handlers" - - "zeroconf" - - "fcntl" - - "stl" - - "serial" - collect_all: - - "cura" - - "UM" - - "serial" - - "Charon" - - "sqlite3" - - "trimesh" - - "win32ctypes" - - "PyQt6" - - "PyQt6.QtNetwork" - - "PyQt6.sip" - - "stl" - icon: - Windows: "./icons/Cura.ico" - Macos: "./icons/cura.icns" - Linux: "./icons/cura-128.png" + datas: + cura_plugins: + package: "cura" + src: "plugins" + dst: "share/cura/plugins" + cura_resources: + package: "cura" + src: "resources" + dst: "share/cura/resources" + cura_private_data: + package: "cura_private_data" + src: "resources" + dst: "share/cura/resources" + internal: true + uranium_plugins: + package: "uranium" + src: "plugins" + dst: "share/uranium/plugins" + uranium_resources: + package: "uranium" + src: "resources" + dst: "share/uranium/resources" + uranium_um_qt_qml_um: + package: "uranium" + src: "site-packages/UM/Qt/qml/UM" + dst: "PyQt6/Qt6/qml/UM" + cura_binary_data: + package: "cura_binary_data" + src: "resources/cura/resources" + dst: "share/cura/resources" + uranium_binary_data: + package: "cura_binary_data" + src: "resources/uranium/resources" + dst: "share/uranium/resources" + windows_binary_data: + package: "cura_binary_data" + src: "windows" + dst: "share/windows" + fdm_materials: + package: "fdm_materials" + src: "materials" + dst: "share/cura/resources/materials" + tcl: + package: "tcl" + src: "lib/tcl8.6" + dst: "tcl" + tk: + package: "tk" + src: "lib/tk8.6" + dst: "tk" + binaries: + curaengine: + package: "curaengine" + src: "bin" + dst: "." + binary: "CuraEngine" + hiddenimports: + - "pySavitar" + - "pyArcus" + - "pynest2d" + - "PyQt6" + - "PyQt6.QtNetwork" + - "PyQt6.sip" + - "logging.handlers" + - "zeroconf" + - "fcntl" + - "stl" + - "serial" + collect_all: + - "cura" + - "UM" + - "serial" + - "Charon" + - "sqlite3" + - "trimesh" + - "win32ctypes" + - "PyQt6" + - "PyQt6.QtNetwork" + - "PyQt6.sip" + - "stl" + icon: + Windows: "./icons/Cura.ico" + Macos: "./icons/cura.icns" + Linux: "./icons/cura-128.png" pycharm_targets: - - jinja_path: .run_templates/pycharm_cura_run.run.xml.jinja - module_name: Cura - name: cura - script_name: cura_app.py - - jinja_path: .run_templates/pycharm_cura_run.run.xml.jinja - module_name: Cura - name: cura_external_engine - parameters: --external-backend - script_name: cura_app.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in tests - script_name: tests/ - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestBuildVolume.py - script_name: tests/TestBuildVolume.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestConvexHullDecorator.py - script_name: tests/TestConvexHullDecorator.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestCuraSceneNode.py - script_name: tests/TestCuraSceneNode.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestCuraSceneNode.py - script_name: tests/TestExtruderManager.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestGCodeListDecorator.py - script_name: tests/TestGCodeListDecorator.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestIntentManager.py - script_name: tests/TestIntentManager.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestLayer.py - script_name: tests/TestLayer.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestMachineAction.py - script_name: tests/TestMachineAction.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestMachineManager.py - script_name: tests/TestMachineManager.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestOAuth2.py - script_name: tests/TestOAuth2.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestObjectsModel.py - script_name: tests/TestObjectsModel.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestPrintInformation.py - script_name: tests/TestPrintInformation.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestProfileRequirements.py - script_name: tests/TestProfileRequirements.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestThemes.py - script_name: tests/TestThemes.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestContainerManager.py - script_name: tests/Settings/TestContainerManager.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestCuraContainerRegistry.py - script_name: tests/Settings/TestCuraContainerRegistry.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestCuraStackBuilder.py - script_name: tests/Settings/TestCuraStackBuilder.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestDefinitionContainer.py - script_name: tests/Settings/TestDefinitionContainer.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestExtruderStack.py - script_name: tests/Settings/TestExtruderStack.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestGlobalStack.py - script_name: tests/Settings/TestGlobalStack.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestProfiles.py - script_name: tests/Settings/TestProfiles.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestSettingInheritanceManager.py - script_name: tests/Settings/TestSettingInheritanceManager.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestSettingOverrideDecorator.py - script_name: tests/Settings/TestSettingOverrideDecorator.py - - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja - module_name: Cura - name: pytest in TestSettingVisibilityPresets.py - script_name: tests/Settings/TestSettingVisibilityPresets.py + - jinja_path: .run_templates/pycharm_cura_run.run.xml.jinja + module_name: Cura + name: cura + script_name: cura_app.py + - jinja_path: .run_templates/pycharm_cura_run.run.xml.jinja + module_name: Cura + name: cura_external_engine + parameters: --external-backend + script_name: cura_app.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in tests + script_name: tests/ + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestBuildVolume.py + script_name: tests/TestBuildVolume.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestConvexHullDecorator.py + script_name: tests/TestConvexHullDecorator.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestCuraSceneNode.py + script_name: tests/TestCuraSceneNode.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestCuraSceneNode.py + script_name: tests/TestExtruderManager.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestGCodeListDecorator.py + script_name: tests/TestGCodeListDecorator.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestIntentManager.py + script_name: tests/TestIntentManager.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestLayer.py + script_name: tests/TestLayer.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestMachineAction.py + script_name: tests/TestMachineAction.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestMachineManager.py + script_name: tests/TestMachineManager.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestOAuth2.py + script_name: tests/TestOAuth2.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestObjectsModel.py + script_name: tests/TestObjectsModel.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestPrintInformation.py + script_name: tests/TestPrintInformation.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestProfileRequirements.py + script_name: tests/TestProfileRequirements.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestThemes.py + script_name: tests/TestThemes.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestContainerManager.py + script_name: tests/Settings/TestContainerManager.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestCuraContainerRegistry.py + script_name: tests/Settings/TestCuraContainerRegistry.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestCuraStackBuilder.py + script_name: tests/Settings/TestCuraStackBuilder.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestDefinitionContainer.py + script_name: tests/Settings/TestDefinitionContainer.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestExtruderStack.py + script_name: tests/Settings/TestExtruderStack.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestGlobalStack.py + script_name: tests/Settings/TestGlobalStack.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestProfiles.py + script_name: tests/Settings/TestProfiles.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestSettingInheritanceManager.py + script_name: tests/Settings/TestSettingInheritanceManager.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestSettingOverrideDecorator.py + script_name: tests/Settings/TestSettingOverrideDecorator.py + - jinja_path: .run_templates/pycharm_cura_test.run.xml.jinja + module_name: Cura + name: pytest in TestSettingVisibilityPresets.py + script_name: tests/Settings/TestSettingVisibilityPresets.py diff --git a/conanfile.py b/conanfile.py index 2271e306d4..59bbad0e3f 100644 --- a/conanfile.py +++ b/conanfile.py @@ -19,7 +19,7 @@ class CuraConan(ConanFile): author = "UltiMaker" url = "https://github.com/Ultimaker/cura" description = "3D printer / slicing GUI built on top of the Uranium framework" - topics = ("conan", "python", "pyqt5", "qt", "qml", "3d-printing", "slicer") + topics = ("conan", "python", "pyqt6", "qt", "qml", "3d-printing", "slicer") build_policy = "missing" exports = "LICENSE*", "UltiMaker-Cura.spec.jinja", "CuraVersion.py.jinja" settings = "os", "compiler", "build_type", "arch" @@ -48,12 +48,6 @@ class CuraConan(ConanFile): "cura_debug_mode": False, # Not yet implemented "internal": False, } - scm = { - "type": "git", - "subfolder": ".", - "url": "auto", - "revision": "auto" - } @property def _pycharm_targets(self): @@ -153,7 +147,7 @@ class CuraConan(ConanFile): return py_interp def _generate_cura_version(self, location): - with open(Path(__file__).parent.joinpath("CuraVersion.py.jinja"), "r") as f: + with open(os.path.join(self.recipe_folder, "CuraVersion.py.jinja"), "r") as f: cura_version_py = Template(f.read()) # If you want a specific Cura version to show up on the splash screen add the user configuration `user.cura:version=VERSION` @@ -164,7 +158,7 @@ class CuraConan(ConanFile): internal_tag = f"+internal" if self.options.internal else "" cura_version = f"{cura_version.major}.{cura_version.minor}.{cura_version.patch}{pre_tag}{build_tag}{internal_tag}" - with open(Path(location, "CuraVersion.py"), "w") as f: + with open(os.path.join(location, "CuraVersion.py"), "w") as f: f.write(cura_version_py.render( cura_app_name = self.name, cura_app_display_name = self._app_name, @@ -188,13 +182,13 @@ class CuraConan(ConanFile): if "package" in data: # get the paths from conan package if data["package"] == self.name: if self.in_local_cache: - src_path = Path(self.package_folder, data["src"]) + src_path = os.path.join(self.package_folder, data["src"]) else: - src_path = Path(self.source_folder, data["src"]) + src_path = os.path.join(self.source_folder, data["src"]) else: - src_path = Path(self.deps_cpp_info[data["package"]].rootpath, data["src"]) + src_path = os.path.join(self.deps_cpp_info[data["package"]].rootpath, data["src"]) elif "root" in data: # get the paths relative from the sourcefolder - src_path = Path(self.source_folder, data["root"], data["src"]) + src_path = os.path.join(self.source_folder, data["root"], data["src"]) else: continue if src_path.exists(): @@ -203,9 +197,9 @@ class CuraConan(ConanFile): binaries = [] for binary in pyinstaller_metadata["binaries"].values(): if "package" in binary: # get the paths from conan package - src_path = Path(self.deps_cpp_info[binary["package"]].rootpath, binary["src"]) + src_path = os.path.join(self.deps_cpp_info[binary["package"]].rootpath, binary["src"]) elif "root" in binary: # get the paths relative from the sourcefolder - src_path = Path(self.source_folder, binary["root"], binary["src"]) + src_path = os.path.join(self.source_folder, binary["root"], binary["src"]) else: continue if not src_path.exists(): @@ -232,13 +226,13 @@ class CuraConan(ConanFile): # Collect all dll's from PyQt6 and place them in the root binaries.extend([(f"{p}", ".") for p in Path(self._site_packages, "PyQt6", "Qt6").glob("**/*.dll")]) - with open(Path(__file__).parent.joinpath("UltiMaker-Cura.spec.jinja"), "r") as f: + with open(os.path.join(self.recipe_folder, "UltiMaker-Cura.spec.jinja"), "r") as f: pyinstaller = Template(f.read()) version = self.conf_info.get("user.cura:version", default = self.version, check_type = str) cura_version = Version(version) - with open(Path(location, "UltiMaker-Cura.spec"), "w") as f: + with open(os.path.join(location, "UltiMaker-Cura.spec"), "w") as f: f.write(pyinstaller.render( name = str(self.options.display_name).replace(" ", "-"), display_name = self._app_name, @@ -259,6 +253,20 @@ class CuraConan(ConanFile): short_version = f"'{cura_version.major}.{cura_version.minor}.{cura_version.patch}'", )) + def export_sources(self): + copy(self, "*", os.path.join(self.recipe_folder, "plugins"), os.path.join(self.export_sources_folder, "plugins")) + copy(self, "*", os.path.join(self.recipe_folder, "resources"), os.path.join(self.export_sources_folder, "resources"), excludes = "*.mo") + copy(self, "*", os.path.join(self.recipe_folder, "tests"), os.path.join(self.export_sources_folder, "tests")) + copy(self, "*", os.path.join(self.recipe_folder, "cura"), os.path.join(self.export_sources_folder, "cura"), excludes="CuraVersion.py") + copy(self, "*", os.path.join(self.recipe_folder, "packaging"), os.path.join(self.export_sources_folder, "packaging")) + copy(self, "*", os.path.join(self.recipe_folder, ".run_templates"), os.path.join(self.export_sources_folder, "run_templates")) + copy(self, "requirements.txt", self.recipe_folder, self.export_sources_folder) + copy(self, "requirements-dev.txt", self.recipe_folder, self.export_sources_folder) + copy(self, "requirements-ultimaker.txt", self.recipe_folder, self.export_sources_folder) + copy(self, "UltiMaker-Cura.spec.jinja", self.recipe_folder, self.export_sources_folder) + copy(self, "CuraVersion.py.jinja", self.recipe_folder, self.export_sources_folder) + copy(self, "cura_app.py", self.recipe_folder, self.export_sources_folder) + def set_version(self): if self.version is None: self.version = self._umdefault_version() @@ -276,12 +284,12 @@ class CuraConan(ConanFile): def requirements(self): self.requires("pyarcus/5.2.2") - self.requires("curaengine/5.3.0-beta@ultimaker/testing") + self.requires("curaengine/5.3.0-beta") self.requires("pysavitar/5.2.2") self.requires("pynest2d/5.2.2") - self.requires("uranium/5.3.0-beta.2@ultimaker/testing") + self.requires("uranium/5.3.0-beta.2") self.requires("fdm_materials/5.3.0-beta.1+29@ultimaker/stable") - self.requires("cura_binary_data/(latest)@ultimaker/testing") + self.requires("cura_binary_data/5.3.0-beta") self.requires("cpython/3.10.4") if self.options.internal: self.requires("cura_private_data/(latest)@ultimaker/testing") @@ -295,7 +303,7 @@ class CuraConan(ConanFile): def layout(self): self.folders.source = "." self.folders.build = "venv" - self.folders.generators = Path(self.folders.build, "conan") + self.folders.generators = os.path.join(self.folders.build, "conan") self.cpp.package.libdirs = [os.path.join("site-packages", "cura")] self.cpp.package.bindirs = ["bin"] @@ -314,25 +322,25 @@ class CuraConan(ConanFile): def generate(self): cura_run_envvars = self._cura_run_env.vars(self, scope = "run") ext = ".ps1" if self.settings.os == "Windows" else ".sh" - cura_run_envvars.save_script(self.folders.generators.joinpath(f"cura_run_environment{ext}")) + cura_run_envvars.save_script(os.path.join(self.folders.generators, f"cura_run_environment{ext}")) vr = VirtualRunEnv(self) vr.generate() - vb = VirtualBuildEnv(self) - vb.generate() - - self._generate_cura_version(Path(self.source_folder, "cura")) + self._generate_cura_version(os.path.join(self.source_folder, "cura")) if self.options.devtools: - entitlements_file = "'{}'".format(Path(self.source_folder, "packaging", "MacOS", "cura.entitlements")) + entitlements_file = "'{}'".format(os.path.join(self.source_folder, "packaging", "MacOS", "cura.entitlements")) self._generate_pyinstaller_spec(location = self.generators_folder, - entrypoint_location = "'{}'".format(Path(self.source_folder, self.conan_data["runinfo"]["entrypoint"])).replace("\\", "\\\\"), - icon_path = "'{}'".format(Path(self.source_folder, "packaging", self.conan_data["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), + entrypoint_location = "'{}'".format(os.path.join(self.source_folder, self.conan_data["runinfo"]["entrypoint"])).replace("\\", "\\\\"), + icon_path = "'{}'".format(os.path.join(self.source_folder, "packaging", self.conan_data["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") # Update the po files if self.settings.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): + vb = VirtualBuildEnv(self) + vb.generate() + # FIXME: once m4, autoconf, automake are Conan V2 ready use self.win_bash and add gettext as base tool_requirement cpp_info = self.dependencies["gettext"].cpp_info for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): @@ -400,7 +408,7 @@ class CuraConan(ConanFile): self.copy_deps("*", root_package = "uranium", src = self.deps_cpp_info["uranium"].libdirs[0], dst = self._site_packages.joinpath("UM"), keep_path = True) - self.copy_deps("*", root_package = "uranium", src = str(Path(self.deps_cpp_info["uranium"].libdirs[0], "Qt", "qml", "UM")), + self.copy_deps("*", root_package = "uranium", src = str(os.path.join(self.deps_cpp_info["uranium"].libdirs[0], "Qt", "qml", "UM")), dst = self._site_packages.joinpath("PyQt6", "Qt6", "qml", "UM"), keep_path = True) @@ -445,22 +453,22 @@ echo "CURA_APP_NAME={{ cura_app_name }}" >> ${{ env_prefix }}GITHUB_ENV ext = ".sh" if self.settings.os != "Windows" else ".ps1" save(self, self._script_dir.joinpath(f"activate_github_actions_version_env{ext}"), activate_github_actions_version_env) - self._generate_cura_version(Path(self._site_packages, "cura")) + self._generate_cura_version(os.path.join(self._site_packages, "cura")) entitlements_file = "'{}'".format(Path(self.cpp_info.res_paths[2], "MacOS", "cura.entitlements")) self._generate_pyinstaller_spec(location = self._base_dir, - entrypoint_location = "'{}'".format(Path(self.cpp_info.bin_paths[0], self.conan_data["runinfo"]["entrypoint"])).replace("\\", "\\\\"), - icon_path = "'{}'".format(Path(self.cpp_info.res_paths[2], self.conan_data["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), + entrypoint_location = "'{}'".format(os.path.join(self.build_folder, self.cpp_info.bindirs[0], self.conan_data["runinfo"]["entrypoint"])).replace("\\", "\\\\"), + icon_path = "'{}'".format(os.path.join(self.build_folder, self.cpp_info.resdirs[2], self.conan_data["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") def package(self): - copy(self, "cura_app.py", src = self.source_path, dst = self.package_path.joinpath(self.cpp.package.bindirs[0])) - copy(self, "*", src = self.source_path.joinpath("cura"), dst = self.package_path.joinpath(self.cpp.package.libdirs[0])) - copy(self, "*", src = self.source_path.joinpath("resources"), dst = self.package_path.joinpath(self.cpp.package.resdirs[0]), excludes="*.po") - copy(self, "*", src = self.build_path.joinpath("resources"), dst = self.package_path.joinpath(self.cpp.package.resdirs[0])) - copy(self, "*", src = self.source_path.joinpath("plugins"), dst = self.package_path.joinpath(self.cpp.package.resdirs[1])) - copy(self, "requirement*.txt", src = self.source_path, dst = self.package_path.joinpath(self.cpp.package.resdirs[-1])) - copy(self, "*", src = self.source_path.joinpath("packaging"), dst = self.package_path.joinpath(self.cpp.package.resdirs[2])) + copy(self, "cura_app.py", src = self.source_folder, dst = os.path.join(self.package_folder, self.cpp.package.bindirs[0])) + copy(self, "*", src = os.path.join(self.source_folder, "cura"), dst = os.path.join(self.package_folder, self.cpp.package.libdirs[0])) + copy(self, "*", src = os.path.join(self.source_folder, "resources"), dst = os.path.join(self.package_folder, self.cpp.package.resdirs[0]), excludes="*.po") + copy(self, "*", src = os.path.join(self.source_folder, "resources"), dst = os.path.join(self.package_folder, self.cpp.package.resdirs[0])) + copy(self, "*", src = os.path.join(self.source_folder, "plugins"), dst = os.path.join(self.package_folder, self.cpp.package.resdirs[1])) + copy(self, "requirement*.txt", src = self.source_folder, dst = os.path.join(self.package_folder, self.cpp.package.resdirs[-1])) + copy(self, "*", src = os.path.join(self.source_folder, "packaging"), dst = os.path.join(self.package_folder, self.cpp.package.resdirs[2])) def package_info(self): self.user_info.pip_requirements = "requirements.txt" @@ -468,8 +476,8 @@ echo "CURA_APP_NAME={{ cura_app_name }}" >> ${{ env_prefix }}GITHUB_ENV self.user_info.pip_requirements_build = "requirements-dev.txt" if self.in_local_cache: - self.runenv_info.append_path("PYTHONPATH", str(Path(self.cpp_info.lib_paths[0]).parent)) - self.runenv_info.append_path("PYTHONPATH", self.cpp_info.res_paths[1]) # Add plugins to PYTHONPATH + self.runenv_info.append_path("PYTHONPATH", os.path.join(self.package_folder, "site-packages")) + self.runenv_info.append_path("PYTHONPATH", os.path.join(self.package_folder, "plugins")) else: self.runenv_info.append_path("PYTHONPATH", self.source_folder) self.runenv_info.append_path("PYTHONPATH", os.path.join(self.source_folder, "plugins")) From 4675ef878471bade5a0d1714d3a1a558e2c899d9 Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 22 Feb 2023 21:43:40 +0100 Subject: [PATCH 29/44] No log storing needed --- .github/workflows/conan-package.yml | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index 39d0dea777..b240145140 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -137,20 +137,6 @@ conan-recipe-version: conan upload "*" -r cura --all -c conan upload "*" -r cura-ce -c - - name: Upload the log and build artifacts - if: always() - uses: actions/upload-artifact@v3 - with: - name: log-ubuntu-${{ runner.arch }} - path: | - buildinfo.json - conan.lock - conanbuildinfo.txt - conaninfo.txt - graph_info.json - build/** - retention-days: 1 - notify-create: if: ${{ always() && (github.event_name == 'push' && (github.ref_name == 'main' || github.ref_name == 'master' || needs.conan-recipe-version.outputs.is_release_branch == 'true')) }} needs: [ conan-recipe-version, conan-package-create-linux ] From 88da5300ef97424d9e3030161c9fac1ca6aa6336 Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 22 Feb 2023 21:52:25 +0100 Subject: [PATCH 30/44] Fixed paths --- conandata.yml | 4 ++-- conanfile.py | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/conandata.yml b/conandata.yml index 36e10ebbb1..da31b4bebf 100644 --- a/conandata.yml +++ b/conandata.yml @@ -1,6 +1,6 @@ -runinfo: - entrypoint: "cura_app.py" pyinstaller: + runinfo: + entrypoint: "cura_app.py" datas: cura_plugins: package: "cura" diff --git a/conanfile.py b/conanfile.py index 59bbad0e3f..d0ea775072 100644 --- a/conanfile.py +++ b/conanfile.py @@ -191,7 +191,7 @@ class CuraConan(ConanFile): src_path = os.path.join(self.source_folder, data["root"], data["src"]) else: continue - if src_path.exists(): + if Path(src_path).exists(): datas.append((str(src_path), data["dst"])) binaries = [] @@ -202,13 +202,13 @@ class CuraConan(ConanFile): src_path = os.path.join(self.source_folder, binary["root"], binary["src"]) else: continue - if not src_path.exists(): + if not Path(src_path).exists(): self.output.warning(f"Source path for binary {binary['binary']} does not exist") continue - for bin in src_path.glob(binary["binary"] + "*[.exe|.dll|.so|.dylib|.so.]*"): + for bin in Path(src_path).glob(binary["binary"] + "*[.exe|.dll|.so|.dylib|.so.]*"): binaries.append((str(bin), binary["dst"])) - for bin in src_path.glob(binary["binary"]): + for bin in Path(src_path).glob(binary["binary"]): binaries.append((str(bin), binary["dst"])) # Make sure all Conan dependencies which are shared are added to the binary list for pyinstaller @@ -332,7 +332,7 @@ class CuraConan(ConanFile): if self.options.devtools: entitlements_file = "'{}'".format(os.path.join(self.source_folder, "packaging", "MacOS", "cura.entitlements")) self._generate_pyinstaller_spec(location = self.generators_folder, - entrypoint_location = "'{}'".format(os.path.join(self.source_folder, self.conan_data["runinfo"]["entrypoint"])).replace("\\", "\\\\"), + entrypoint_location = "'{}'".format(os.path.join(self.source_folder, self.conan_data["pyinstaller"]["runinfo"]["entrypoint"])).replace("\\", "\\\\"), icon_path = "'{}'".format(os.path.join(self.source_folder, "packaging", self.conan_data["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") @@ -457,7 +457,7 @@ echo "CURA_APP_NAME={{ cura_app_name }}" >> ${{ env_prefix }}GITHUB_ENV entitlements_file = "'{}'".format(Path(self.cpp_info.res_paths[2], "MacOS", "cura.entitlements")) self._generate_pyinstaller_spec(location = self._base_dir, - entrypoint_location = "'{}'".format(os.path.join(self.build_folder, self.cpp_info.bindirs[0], self.conan_data["runinfo"]["entrypoint"])).replace("\\", "\\\\"), + entrypoint_location = "'{}'".format(os.path.join(self.build_folder, self.cpp_info.bindirs[0], self.conan_data["pyinstaller"]["runinfo"]["entrypoint"])).replace("\\", "\\\\"), icon_path = "'{}'".format(os.path.join(self.build_folder, self.cpp_info.resdirs[2], self.conan_data["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") From 4a3c3df892bcf0aa54bb5874191dd6917337132e Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 22 Feb 2023 22:14:03 +0100 Subject: [PATCH 31/44] Fixed mo generating location --- conanfile.py | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/conanfile.py b/conanfile.py index d0ea775072..d285d70a61 100644 --- a/conanfile.py +++ b/conanfile.py @@ -309,16 +309,6 @@ class CuraConan(ConanFile): self.cpp.package.bindirs = ["bin"] self.cpp.package.resdirs = ["resources", "plugins", "packaging", "pip_requirements"] # pip_requirements should be the last item in the list - def build(self): - if self.options.devtools: - if self.settings.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): - # FIXME: once m4, autoconf, automake are Conan V2 ready use self.win_bash and add gettext as base tool_requirement - cpp_info = self.dependencies["gettext"].cpp_info - for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): - mo_file = self.build_path.joinpath(po_file.with_suffix('.mo').relative_to(self.source_path)) - mkdir(self, str(unix_path(self, mo_file.parent))) - self.run(f"{cpp_info.bindirs[0]}/msgfmt {po_file} -o {mo_file} -f", env="conanbuild", ignore_errors=True) - def generate(self): cura_run_envvars = self._cura_run_env.vars(self, scope = "run") ext = ".ps1" if self.settings.os == "Windows" else ".sh" @@ -337,17 +327,27 @@ class CuraConan(ConanFile): entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") # Update the po files - if self.settings.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): - vb = VirtualBuildEnv(self) - vb.generate() + vb = VirtualBuildEnv(self) + vb.generate() + # FIXME: once m4, autoconf, automake are Conan V2 ready use self.win_bash and add gettext as base tool_requirement + cpp_info = self.dependencies["gettext"].cpp_info + for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): + pot_file = self.source_path.joinpath("resources", "i18n", po_file.with_suffix('.pot').name) + mkdir(self, str(unix_path(self, pot_file.parent))) + self.run( + f"{cpp_info.bindirs[0]}/msgmerge --no-wrap --no-fuzzy-matching -width=140 -o {po_file} {po_file} {pot_file}", + env="conanbuild", ignore_errors=True) + + def build(self): + if self.options.devtools: + if self.settings.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): # FIXME: once m4, autoconf, automake are Conan V2 ready use self.win_bash and add gettext as base tool_requirement - cpp_info = self.dependencies["gettext"].cpp_info for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): - pot_file = self.source_path.joinpath("resources", "i18n", po_file.with_suffix('.pot').name) - mkdir(self, str(unix_path(self, pot_file.parent))) - self.run(f"{cpp_info.bindirs[0]}/msgmerge --no-wrap --no-fuzzy-matching -width=140 -o {po_file} {po_file} {pot_file}", - env = "conanbuild", ignore_errors = True) + mo_file = os.path.join(self.build_folder, po_file.with_suffix('.mo').relative_to(self.source_path)) + mkdir(self, str(unix_path(self, Path(mo_file).parent))) + cpp_info = self.dependencies["gettext"].cpp_info + self.run(f"{cpp_info.bindirs[0]}/msgfmt {po_file} -o {mo_file} -f", env="conanbuild", ignore_errors=True) def imports(self): self.copy("CuraEngine.exe", root_package = "curaengine", src = "@bindirs", dst = "", keep_path = False) @@ -465,7 +465,7 @@ echo "CURA_APP_NAME={{ cura_app_name }}" >> ${{ env_prefix }}GITHUB_ENV copy(self, "cura_app.py", src = self.source_folder, dst = os.path.join(self.package_folder, self.cpp.package.bindirs[0])) copy(self, "*", src = os.path.join(self.source_folder, "cura"), dst = os.path.join(self.package_folder, self.cpp.package.libdirs[0])) copy(self, "*", src = os.path.join(self.source_folder, "resources"), dst = os.path.join(self.package_folder, self.cpp.package.resdirs[0]), excludes="*.po") - copy(self, "*", src = os.path.join(self.source_folder, "resources"), dst = os.path.join(self.package_folder, self.cpp.package.resdirs[0])) + copy(self, "*.mo", os.path.join(self.build_folder, "resources"), os.path.join(self.package_folder, "resources")) copy(self, "*", src = os.path.join(self.source_folder, "plugins"), dst = os.path.join(self.package_folder, self.cpp.package.resdirs[1])) copy(self, "requirement*.txt", src = self.source_folder, dst = os.path.join(self.package_folder, self.cpp.package.resdirs[-1])) copy(self, "*", src = os.path.join(self.source_folder, "packaging"), dst = os.path.join(self.package_folder, self.cpp.package.resdirs[2])) From 5ae711e7c897da2544acf7cbd4020392858386f6 Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 22 Feb 2023 22:16:05 +0100 Subject: [PATCH 32/44] change indent --- .github/workflows/conan-package.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index b240145140..6c97b7fc0e 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -59,13 +59,13 @@ env: permissions: {} jobs: -conan-recipe-version: - permissions: - contents: read + conan-recipe-version: + permissions: + contents: read - uses: ultimaker/cura/.github/workflows/conan-recipe-version.yml@main - with: - project_name: cura + uses: ultimaker/cura/.github/workflows/conan-recipe-version.yml@main + with: + project_name: cura conan-package-create-linux: needs: [ conan-recipe-version ] From f2649bc7cecae2d046a6176914d22d4ae6e0686b Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 22 Feb 2023 23:06:47 +0100 Subject: [PATCH 33/44] fix install path --- conanfile.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/conanfile.py b/conanfile.py index d285d70a61..3ec36a702e 100644 --- a/conanfile.py +++ b/conanfile.py @@ -451,14 +451,14 @@ echo "CURA_APP_NAME={{ cura_app_name }}" >> ${{ env_prefix }}GITHUB_ENV env_prefix = env_prefix) ext = ".sh" if self.settings.os != "Windows" else ".ps1" - save(self, self._script_dir.joinpath(f"activate_github_actions_version_env{ext}"), activate_github_actions_version_env) + save(self, os.path.join(self._script_dir, f"activate_github_actions_version_env{ext}"), activate_github_actions_version_env) self._generate_cura_version(os.path.join(self._site_packages, "cura")) entitlements_file = "'{}'".format(Path(self.cpp_info.res_paths[2], "MacOS", "cura.entitlements")) self._generate_pyinstaller_spec(location = self._base_dir, - entrypoint_location = "'{}'".format(os.path.join(self.build_folder, self.cpp_info.bindirs[0], self.conan_data["pyinstaller"]["runinfo"]["entrypoint"])).replace("\\", "\\\\"), - icon_path = "'{}'".format(os.path.join(self.build_folder, self.cpp_info.resdirs[2], self.conan_data["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), + entrypoint_location = "'{}'".format(os.path.join(self.install_folder, self.cpp_info.bindirs[0], self.conan_data["pyinstaller"]["runinfo"]["entrypoint"])).replace("\\", "\\\\"), + icon_path = "'{}'".format(os.path.join(self.install_folder, self.cpp_info.resdirs[2], self.conan_data["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") def package(self): From adac0c52a2202e0ad3b1a5a4dd4acb54d7400fc4 Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 22 Feb 2023 23:20:49 +0100 Subject: [PATCH 34/44] copy cura_appy.py during generation to bin --- conanfile.py | 1 + 1 file changed, 1 insertion(+) diff --git a/conanfile.py b/conanfile.py index 3ec36a702e..e899cb8acf 100644 --- a/conanfile.py +++ b/conanfile.py @@ -310,6 +310,7 @@ class CuraConan(ConanFile): self.cpp.package.resdirs = ["resources", "plugins", "packaging", "pip_requirements"] # pip_requirements should be the last item in the list def generate(self): + copy(self, "cura_app.py", os.path.join(self.source_folder, "cura_app.py"), os.path.join(self.build_folder, self.build_folder, self.cpp_info.bindirs[0])) cura_run_envvars = self._cura_run_env.vars(self, scope = "run") ext = ".ps1" if self.settings.os == "Windows" else ".sh" cura_run_envvars.save_script(os.path.join(self.folders.generators, f"cura_run_environment{ext}")) From 818a00d4b44669704a01b29abd5fcef974d9e25f Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 22 Feb 2023 23:33:09 +0100 Subject: [PATCH 35/44] copy cura_appy.py during generation to Script/bin --- conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conanfile.py b/conanfile.py index e899cb8acf..f3689ace62 100644 --- a/conanfile.py +++ b/conanfile.py @@ -310,7 +310,7 @@ class CuraConan(ConanFile): self.cpp.package.resdirs = ["resources", "plugins", "packaging", "pip_requirements"] # pip_requirements should be the last item in the list def generate(self): - copy(self, "cura_app.py", os.path.join(self.source_folder, "cura_app.py"), os.path.join(self.build_folder, self.build_folder, self.cpp_info.bindirs[0])) + copy(self, "cura_app.py", os.path.join(self.source_folder, "cura_app.py"), str(self._script_dir)) cura_run_envvars = self._cura_run_env.vars(self, scope = "run") ext = ".ps1" if self.settings.os == "Windows" else ".sh" cura_run_envvars.save_script(os.path.join(self.folders.generators, f"cura_run_environment{ext}")) From b93c2ce56f7a85c32c9d2f976a4135605fa6f31e Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 22 Feb 2023 23:56:27 +0100 Subject: [PATCH 36/44] copy cura_appy.py during generation to Script/bin --- conanfile.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/conanfile.py b/conanfile.py index f3689ace62..a84cf89948 100644 --- a/conanfile.py +++ b/conanfile.py @@ -310,7 +310,7 @@ class CuraConan(ConanFile): self.cpp.package.resdirs = ["resources", "plugins", "packaging", "pip_requirements"] # pip_requirements should be the last item in the list def generate(self): - copy(self, "cura_app.py", os.path.join(self.source_folder, "cura_app.py"), str(self._script_dir)) + copy(self, "cura_app.py", self.source_folder, str(self._script_dir)) cura_run_envvars = self._cura_run_env.vars(self, scope = "run") ext = ".ps1" if self.settings.os == "Windows" else ".sh" cura_run_envvars.save_script(os.path.join(self.folders.generators, f"cura_run_environment{ext}")) @@ -374,6 +374,7 @@ class CuraConan(ConanFile): self.copy("*.dylib", src = "@libdirs", dst = self._script_dir) def deploy(self): + copy(self, "cura_app.py", self.source_folder, str(self._script_dir)) # Copy CuraEngine.exe to bindirs of Virtual Python Environment # TODO: Fix source such that it will get the curaengine relative from the executable (Python bindir in this case) self.copy_deps("CuraEngine.exe", root_package = "curaengine", src = self.deps_cpp_info["curaengine"].bindirs[0], From e03888fd475ed0b5464c54671b18ab60b8134206 Mon Sep 17 00:00:00 2001 From: jspijker Date: Thu, 23 Feb 2023 00:38:42 +0100 Subject: [PATCH 37/44] don't copy the cura_app during deplo --- conanfile.py | 1 - 1 file changed, 1 deletion(-) diff --git a/conanfile.py b/conanfile.py index a84cf89948..d47c7d9e81 100644 --- a/conanfile.py +++ b/conanfile.py @@ -374,7 +374,6 @@ class CuraConan(ConanFile): self.copy("*.dylib", src = "@libdirs", dst = self._script_dir) def deploy(self): - copy(self, "cura_app.py", self.source_folder, str(self._script_dir)) # Copy CuraEngine.exe to bindirs of Virtual Python Environment # TODO: Fix source such that it will get the curaengine relative from the executable (Python bindir in this case) self.copy_deps("CuraEngine.exe", root_package = "curaengine", src = self.deps_cpp_info["curaengine"].bindirs[0], From eec81bf027de76ad852292af150d952c65ae477d Mon Sep 17 00:00:00 2001 From: jspijker Date: Thu, 23 Feb 2023 00:57:44 +0100 Subject: [PATCH 38/44] using package folder during deploy --- conanfile.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conanfile.py b/conanfile.py index d47c7d9e81..2be2558c66 100644 --- a/conanfile.py +++ b/conanfile.py @@ -458,8 +458,8 @@ echo "CURA_APP_NAME={{ cura_app_name }}" >> ${{ env_prefix }}GITHUB_ENV entitlements_file = "'{}'".format(Path(self.cpp_info.res_paths[2], "MacOS", "cura.entitlements")) self._generate_pyinstaller_spec(location = self._base_dir, - entrypoint_location = "'{}'".format(os.path.join(self.install_folder, self.cpp_info.bindirs[0], self.conan_data["pyinstaller"]["runinfo"]["entrypoint"])).replace("\\", "\\\\"), - icon_path = "'{}'".format(os.path.join(self.install_folder, self.cpp_info.resdirs[2], self.conan_data["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), + entrypoint_location = "'{}'".format(os.path.join(self.package_folder, self.cpp_info.bindirs[0], self.conan_data["pyinstaller"]["runinfo"]["entrypoint"])).replace("\\", "\\\\"), + icon_path = "'{}'".format(os.path.join(self.package_folder, self.cpp_info.resdirs[2], self.conan_data["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") def package(self): From e3a347f47c7e037d3b01bdeb08e8ac50dafbf10e Mon Sep 17 00:00:00 2001 From: jspijker Date: Thu, 23 Feb 2023 01:41:46 +0100 Subject: [PATCH 39/44] build mo to LC_MESSAGES --- conanfile.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/conanfile.py b/conanfile.py index 2be2558c66..716cbb9b7f 100644 --- a/conanfile.py +++ b/conanfile.py @@ -345,7 +345,8 @@ class CuraConan(ConanFile): if self.settings.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): # FIXME: once m4, autoconf, automake are Conan V2 ready use self.win_bash and add gettext as base tool_requirement for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): - mo_file = os.path.join(self.build_folder, po_file.with_suffix('.mo').relative_to(self.source_path)) + mo_file = Path(self.build_folder, po_file.with_suffix('.mo').relative_to(self.source_path)) + mo_file = mo_file.parent.joinpath("LC_MESSAGES", mo_file.name) mkdir(self, str(unix_path(self, Path(mo_file).parent))) cpp_info = self.dependencies["gettext"].cpp_info self.run(f"{cpp_info.bindirs[0]}/msgfmt {po_file} -o {mo_file} -f", env="conanbuild", ignore_errors=True) From 422fd1a00b240da8f2b0520bbd5266f5b3343c29 Mon Sep 17 00:00:00 2001 From: jspijker Date: Thu, 23 Feb 2023 02:07:36 +0100 Subject: [PATCH 40/44] Add po files --- conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conanfile.py b/conanfile.py index 716cbb9b7f..dbbef7c104 100644 --- a/conanfile.py +++ b/conanfile.py @@ -466,7 +466,7 @@ echo "CURA_APP_NAME={{ cura_app_name }}" >> ${{ env_prefix }}GITHUB_ENV def package(self): copy(self, "cura_app.py", src = self.source_folder, dst = os.path.join(self.package_folder, self.cpp.package.bindirs[0])) copy(self, "*", src = os.path.join(self.source_folder, "cura"), dst = os.path.join(self.package_folder, self.cpp.package.libdirs[0])) - copy(self, "*", src = os.path.join(self.source_folder, "resources"), dst = os.path.join(self.package_folder, self.cpp.package.resdirs[0]), excludes="*.po") + copy(self, "*", src = os.path.join(self.source_folder, "resources"), dst = os.path.join(self.package_folder, self.cpp.package.resdirs[0])) copy(self, "*.mo", os.path.join(self.build_folder, "resources"), os.path.join(self.package_folder, "resources")) copy(self, "*", src = os.path.join(self.source_folder, "plugins"), dst = os.path.join(self.package_folder, self.cpp.package.resdirs[1])) copy(self, "requirement*.txt", src = self.source_folder, dst = os.path.join(self.package_folder, self.cpp.package.resdirs[-1])) From 04f5aa04b8f6cece7a8958e421bcd7b57f01b8b8 Mon Sep 17 00:00:00 2001 From: jspijker Date: Thu, 23 Feb 2023 10:54:32 +0100 Subject: [PATCH 41/44] Only update po on Windows --- conanfile.py | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/conanfile.py b/conanfile.py index dbbef7c104..22889659f1 100644 --- a/conanfile.py +++ b/conanfile.py @@ -328,17 +328,18 @@ class CuraConan(ConanFile): entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") # Update the po files - vb = VirtualBuildEnv(self) - vb.generate() + if self.settings.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type=str): + vb = VirtualBuildEnv(self) + vb.generate() - # FIXME: once m4, autoconf, automake are Conan V2 ready use self.win_bash and add gettext as base tool_requirement - cpp_info = self.dependencies["gettext"].cpp_info - for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): - pot_file = self.source_path.joinpath("resources", "i18n", po_file.with_suffix('.pot').name) - mkdir(self, str(unix_path(self, pot_file.parent))) - self.run( - f"{cpp_info.bindirs[0]}/msgmerge --no-wrap --no-fuzzy-matching -width=140 -o {po_file} {po_file} {pot_file}", - env="conanbuild", ignore_errors=True) + # FIXME: once m4, autoconf, automake are Conan V2 ready use self.win_bash and add gettext as base tool_requirement + cpp_info = self.dependencies["gettext"].cpp_info + for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): + pot_file = self.source_path.joinpath("resources", "i18n", po_file.with_suffix('.pot').name) + mkdir(self, str(unix_path(self, pot_file.parent))) + self.run( + f"{cpp_info.bindirs[0]}/msgmerge --no-wrap --no-fuzzy-matching -width=140 -o {po_file} {po_file} {pot_file}", + env="conanbuild", ignore_errors=True) def build(self): if self.options.devtools: From 945fbbe4745ca28734c6850581c289f780b967f4 Mon Sep 17 00:00:00 2001 From: jspijker Date: Thu, 23 Feb 2023 11:45:43 +0100 Subject: [PATCH 42/44] add efibootmgr --- .github/workflows/conan-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index 6c97b7fc0e..49bdaef2a5 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -104,7 +104,7 @@ jobs: sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt update sudo apt upgrade - sudo apt install build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config flex bison -y + sudo apt install efibootmgr build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config flex bison -y - name: Install GCC-12 run: | From 310e27dc70fbe0cd37c9caf3a1ba68705f823656 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Thu, 23 Feb 2023 12:57:29 +0100 Subject: [PATCH 43/44] Data stuck in cache causes grub issues. grub issues -- hopefully temporary, until github fixed this -- disk (partition)used from last time is cached, but since this runs in the cloud, that's of course no longer valid on the next run --- .github/workflows/conan-package.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index 49bdaef2a5..b0970f60a8 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -98,9 +98,13 @@ jobs: $HOME/.conan/conan_download_cache key: conan-ubuntu-${{ runner.arch }}-create-cache + # NOTE: Due to what are probably github issues, we have to remove the cache and reconfigure before the rest. + # This is maybe because grub caches the disk it uses last time, which is recreated each time. - name: Install Linux system requirements if: ${{ runner.os == 'Linux' }} run: | + sudo rm /var/cache/debconf/config.dat + sudo dpkg --configure -a sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt update sudo apt upgrade From 48c25064920b7bed1f96666cb7bec66a8408c49c Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Thu, 23 Feb 2023 13:16:31 +0100 Subject: [PATCH 44/44] Data stuck in cache causes grub issues. grub issues -- hopefully temporary, until github fixed this -- disk (partition)used from last time is cached, but since this runs in the cloud, that's of course no longer valid on the next run --- .github/workflows/conan-package-create.yml | 4 ++++ .github/workflows/cura-installer.yml | 4 ++++ .github/workflows/unit-test.yml | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index 1c5f101189..855888a059 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -109,9 +109,13 @@ jobs: if: ${{ runner.os == 'Macos' }} run: brew install autoconf automake ninja + # NOTE: Due to what are probably github issues, we have to remove the cache and reconfigure before the rest. + # This is maybe because grub caches the disk it uses last time, which is recreated each time. - name: Install Linux system requirements if: ${{ runner.os == 'Linux' }} run: | + sudo rm /var/cache/debconf/config.dat + sudo dpkg --configure -a sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt update sudo apt upgrade diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml index 9429f24e8a..00ca6ce776 100644 --- a/.github/workflows/cura-installer.yml +++ b/.github/workflows/cura-installer.yml @@ -126,9 +126,13 @@ jobs: if: ${{ runner.os == 'Linux' && startsWith(inputs.platform, 'ubuntu-22.04') }} run: sudo apt remove libodbc2 libodbcinst2 unixodbc-common -y + # NOTE: Due to what are probably github issues, we have to remove the cache and reconfigure before the rest. + # This is maybe because grub caches the disk it uses last time, which is recreated each time. - name: Install Linux system requirements if: ${{ runner.os == 'Linux' }} run: | + sudo rm /var/cache/debconf/config.dat + sudo dpkg --configure -a sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt update sudo apt upgrade diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index bc1933e3c7..13f81a1491 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -105,9 +105,13 @@ jobs: $HOME/.conan/conan_download_cache key: conan-${{ runner.os }}-${{ runner.arch }}-unit-cache + # NOTE: Due to what are probably github issues, we have to remove the cache and reconfigure before the rest. + # This is maybe because grub caches the disk it uses last time, which is recreated each time. - name: Install Linux system requirements if: ${{ runner.os == 'Linux' }} run: | + sudo rm /var/cache/debconf/config.dat + sudo dpkg --configure -a sudo apt update sudo apt upgrade sudo apt install build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config -y