diff --git a/resources/profiles/BIBO.idx b/resources/profiles/BIBO.idx index 1c26b7d36..6df0efcc8 100644 --- a/resources/profiles/BIBO.idx +++ b/resources/profiles/BIBO.idx @@ -1,4 +1,5 @@ min_slic3r_version = 2.2.0-alpha3 +0.0.4 superslicer: remove top_fan_speed 0.0.3 slic3r++ adaptation: overlapping & top pattern. 0.0.2 changed flow ratio from float to % 0.0.1 Multiple Print models were unified into a single one. diff --git a/resources/profiles/BIBO.ini b/resources/profiles/BIBO.ini index dca2b49de..50b658089 100644 --- a/resources/profiles/BIBO.ini +++ b/resources/profiles/BIBO.ini @@ -5,7 +5,7 @@ name = BIBO # Configuration version of this file. Config file will only be installed, if the config_version differs. # This means, the server may force the PrusaSlicer configuration to be downgraded. -config_version = 0.0.3 +config_version = 0.0.4 # Where to get the updates from? config_update_url = http://files.prusa3d.com/wp-content/uploads/repository/PrusaSlicer-settings-master/live/BIBO/ @@ -468,7 +468,6 @@ fan_always_on = 0 max_fan_speed = 0 min_fan_speed = 0 bridge_fan_speed = 25 -top_fan_speed = 0 temperature = 245 [filament:*FLEX*] diff --git a/resources/profiles/Basic.ini b/resources/profiles/Basic.ini index d86c76460..dcb379cd0 100644 --- a/resources/profiles/Basic.ini +++ b/resources/profiles/Basic.ini @@ -5,7 +5,7 @@ name = Custom # Configuration version of this file. Config file will only be installed, if the config_version differs. # This means, the server may force the Slic3r configuration to be downgraded. -config_version = 0.1.1 +config_version = 0.1.2 # Where to get the updates from? config_update_url = @@ -694,5 +694,4 @@ fan_always_on = 0 max_fan_speed = 0 min_fan_speed = 0 bridge_fan_speed = 30 -top_fan_speed = 0 temperature = 240 \ No newline at end of file diff --git a/resources/profiles/Creality.idx b/resources/profiles/Creality.idx index 1465084ba..69bf1866b 100644 --- a/resources/profiles/Creality.idx +++ b/resources/profiles/Creality.idx @@ -1,4 +1,5 @@ min_slic3r_version = 2.2.0-alpha3 +0.2.5 superslicer: remove top_fan_speed 0.2.4 slic3r++ adaptation: overlapping & top pattern. 0.2.3 changed flow ratio from float to % 0.2.2 version diff --git a/resources/profiles/Creality.ini b/resources/profiles/Creality.ini index 8c89f34f9..5e8c8f91a 100644 --- a/resources/profiles/Creality.ini +++ b/resources/profiles/Creality.ini @@ -5,7 +5,7 @@ name = Creality # Configuration version of this file. Config file will only be installed, if the config_version differs. # This means, the server may force the PrusaSlicer configuration to be downgraded. -config_version = 0.2.4 +config_version = 0.2.5 # Where to get the updates from? config_update_url = @@ -690,5 +690,4 @@ fan_always_on = 0 max_fan_speed = 0 min_fan_speed = 0 bridge_fan_speed = 30 -top_fan_speed = 0 temperature = 245 diff --git a/resources/profiles/PrusaResearch.idx b/resources/profiles/PrusaResearch.idx index 9f719a5b0..4aa8824d6 100644 --- a/resources/profiles/PrusaResearch.idx +++ b/resources/profiles/PrusaResearch.idx @@ -1,4 +1,5 @@ min_slic3r_version = 2.2.0-alpha3 +1.1.6 superslicer: remove top_fan_speed 1.1.5 slic3r++ adaptation: overlapping & top pattern. 1.1.4 changed flow ratio from float to % 1.1.3 slic3r++ version diff --git a/resources/profiles/PrusaResearch.ini b/resources/profiles/PrusaResearch.ini index a6752b312..d85886683 100644 --- a/resources/profiles/PrusaResearch.ini +++ b/resources/profiles/PrusaResearch.ini @@ -8,7 +8,7 @@ technologies = FFF; SLA # Configuration version of this file. Config file will only be installed, if the config_version differs. # This means, the server may force the PrusaSlicer configuration to be downgraded. -config_version = 1.1.5 +config_version = 1.1.6 # Where to get the updates from? config_update_url = changelog_url = @@ -1980,7 +1980,7 @@ filament_colour = #FFF2EC first_layer_bed_temperature = 100 first_layer_temperature = 270 temperature = 270 -bridge_fan_speed = 0 +bridge_fan_speed = -1 filament_max_volumetric_speed = 8 [filament:PrimaSelect PVA+] @@ -2912,7 +2912,7 @@ filament_colour = #FFF2EC first_layer_bed_temperature = 100 first_layer_temperature = 270 temperature = 270 -bridge_fan_speed = 0 +bridge_fan_speed = -1 filament_cost = 77.3 filament_density = 1.20 diff --git a/resources/profiles/Voron.idx b/resources/profiles/Voron.idx index 6d6884c11..0b758c42a 100644 --- a/resources/profiles/Voron.idx +++ b/resources/profiles/Voron.idx @@ -1,3 +1,4 @@ min_slic3r_version = 2.2.0 +0.0.3 superslicer: remove top_fan_speed 0.0.2 Update from DocJeeves settings, adding afterburner / mobius difference 0.0.1 Initial version diff --git a/resources/profiles/Voron.ini b/resources/profiles/Voron.ini index 26389bf56..5abb61048 100644 --- a/resources/profiles/Voron.ini +++ b/resources/profiles/Voron.ini @@ -5,7 +5,7 @@ name = Voron # Configuration version of this file. Config file will only be installed, if the config_version differs. # This means, the server may force the PrusaSlicer configuration to be downgraded. -config_version = 0.0.2 +config_version = 0.0.3 # Where to get the updates from? config_update_url = @@ -1037,7 +1037,6 @@ max_fan_speed = 0 min_fan_speed = 0 bridge_fan_speed = 30 slowdown_below_layer_time = 15 -top_fan_speed = 0 temperature = 250 [filament:Basic ABS @VORON] diff --git a/src/libslic3r/GCode/CoolingBuffer.cpp b/src/libslic3r/GCode/CoolingBuffer.cpp index c1a47446f..236941e26 100644 --- a/src/libslic3r/GCode/CoolingBuffer.cpp +++ b/src/libslic3r/GCode/CoolingBuffer.cpp @@ -726,9 +726,17 @@ std::string CoolingBuffer::apply_layer_cooldown( top_fan_speed = EXTRUDER_CONFIG(top_fan_speed); ext_peri_fan_speed = EXTRUDER_CONFIG(external_perimeter_fan_speed); #undef EXTRUDER_CONFIG - bridge_fan_control = bridge_fan_speed > fan_speed_new && bridge_fan_speed != 0; - top_fan_control = top_fan_speed != fan_speed_new && top_fan_speed != 0; - ext_peri_fan_control = ext_peri_fan_speed != fan_speed_new && ext_peri_fan_speed != 0; + // 0 is deprecated for diable: take care of temp settings. + if (bridge_fan_speed == 0) bridge_fan_speed = -1; + if (ext_peri_fan_speed == 0) ext_peri_fan_speed = -1; + if (top_fan_speed == 0) top_fan_speed = -1; + if (bridge_fan_speed == 1) bridge_fan_speed = 0; + if (ext_peri_fan_speed == 1) ext_peri_fan_speed = 0; + if (top_fan_speed == 1) top_fan_speed = 0; + // end deprecation + bridge_fan_control = bridge_fan_speed > fan_speed_new && bridge_fan_speed >= 0; + top_fan_control = top_fan_speed != fan_speed_new && top_fan_speed >= 0; + ext_peri_fan_control = ext_peri_fan_speed != fan_speed_new && ext_peri_fan_speed >= 0; } else { bridge_fan_control = false; bridge_fan_speed = 0; diff --git a/src/libslic3r/PrintConfig.cpp b/src/libslic3r/PrintConfig.cpp index 54cb61d6b..d71e41eb4 100644 --- a/src/libslic3r/PrintConfig.cpp +++ b/src/libslic3r/PrintConfig.cpp @@ -241,9 +241,11 @@ void PrintConfigDef::init_fff_params() def->label = L("Bridges fan speed"); def->category = OptionCategory::cooling; def->tooltip = L("This fan speed is enforced during all bridges and overhangs. It won't slow down the fan if it's currently running at a higher speed." - "\nSet to 0 to disable this override. Can only be overriden by disable_fan_first_layers."); + "\nSet to 1 to disable the fan." + "\nSet to -1 to disable this override." + "\nCan only be overriden by disable_fan_first_layers."); def->sidetext = L("%"); - def->min = 0; + def->min = -1; def->max = 100; def->mode = comAdvanced; def->set_default_value(new ConfigOptionInts { 100 }); @@ -252,12 +254,14 @@ void PrintConfigDef::init_fff_params() def->label = L("Top fan speed"); def->category = OptionCategory::cooling; def->tooltip = L("This fan speed is enforced during all top fills." - "\nSet to 0 to disable this override. Can only be overriden by disable_fan_first_layers."); + "\nSet to 1 to disable the fan." + "\nSet to -1 to disable this override." + "\nCan only be overriden by disable_fan_first_layers."); def->sidetext = L("%"); - def->min = 0; + def->min = -1; def->max = 100; def->mode = comAdvanced; - def->set_default_value(new ConfigOptionInts{ 0 }); + def->set_default_value(new ConfigOptionInts{ -1 }); def = this->add("bridge_flow_ratio", coPercent); def->label = L("Bridge"); @@ -729,14 +733,15 @@ void PrintConfigDef::init_fff_params() def = this->add("external_perimeter_fan_speed", coInts); def->label = L("External perimeter fan speed"); def->tooltip = L("When set to a non-zero value this fan speed is used only for external perimeters (visible ones). " - "When set to zero the normal fan speed is used on external perimeters. " + "\nSet to 1 to disable the fan." + "\nSet to -1 to use the normal fan speed on external perimeters." "External perimeters can benefit from higher fan speed to improve surface finish, " "while internal perimeters, infill, etc. benefit from lower fan speed to improve layer adhesion."); def->sidetext = L("%"); - def->min = 0; + def->min = -1; def->max = 100; def->mode = comAdvanced; - def->set_default_value(new ConfigOptionInts { 0 }); + def->set_default_value(new ConfigOptionInts { -1 }); def = this->add("external_perimeter_overlap", coPercent); def->label = L("external perimeter overlap"); diff --git a/src/slic3r/GUI/PresetHints.cpp b/src/slic3r/GUI/PresetHints.cpp index f97637de8..18bc228b3 100644 --- a/src/slic3r/GUI/PresetHints.cpp +++ b/src/slic3r/GUI/PresetHints.cpp @@ -29,19 +29,27 @@ std::string PresetHints::cooling_description(const Preset &preset) int max_speed_reduc = int(preset.config.opt_float("max_speed_reduction", 0)); int fan_below_layer_time = preset.config.opt_int("fan_below_layer_time", 0); + //for the time being, -1 shoudl eb for disabel, but it's 0 from legacy. + if (top_fan_speed == 0) top_fan_speed = -1; + if (bridge_fan_speed == 0) bridge_fan_speed = -1; + if (ext_peri_fan_speed == 0) ext_peri_fan_speed = -1; + if (top_fan_speed == 1) top_fan_speed = 0; + if (bridge_fan_speed == 1) bridge_fan_speed = 0; + if (ext_peri_fan_speed == 1) ext_peri_fan_speed = 0; + //if (preset.config.opt_bool("cooling", 0)) { out = _utf8(L("Fan")); if (preset.config.opt_bool("fan_always_on", 0)) { out += " " + (boost::format(_utf8(L("will run at %1%%% by default"))) % min_fan_speed).str() ; - if (ext_peri_fan_speed > 0 && ext_peri_fan_speed != min_fan_speed) { + if (ext_peri_fan_speed >= 0 && ext_peri_fan_speed != min_fan_speed) { out += ", " + (boost::format(_utf8(L("at %1%%% over external perimeters"))) % ext_peri_fan_speed).str(); } - if (top_fan_speed > 0 && top_fan_speed != min_fan_speed) { + if (top_fan_speed >= 0 && top_fan_speed != min_fan_speed) { out += ", " + (boost::format(_utf8(L("at %1%%% over top fill surfaces"))) % top_fan_speed).str(); } - if (bridge_fan_speed > 0 && bridge_fan_speed > min_fan_speed) { + if (bridge_fan_speed >= 0 && bridge_fan_speed > min_fan_speed) { out += ", " + (boost::format(_utf8(L("at %1%%% over bridges"))) % bridge_fan_speed).str(); } if (disable_fan_first_layers > 1) @@ -66,7 +74,7 @@ std::string PresetHints::cooling_description(const Preset &preset) } else if (ext_peri_fan_speed > min_fan_speed) { out += ", " + (boost::format(_utf8(L("at %1%%% over external perimeters"))) % ext_peri_fan_speed).str() + " " + L("if it's above the current computed fan speed value"); } - if (top_fan_speed > 0) { + if (top_fan_speed >= 0) { out += ", " + (boost::format(_utf8(L("at %1%%% over top fill surfaces"))) % top_fan_speed).str(); } if (bridge_fan_speed > max_fan_speed) { @@ -108,6 +116,17 @@ std::string PresetHints::cooling_description(const Preset &preset) % min_print_speed).str(); } + //tooltip for Depractaed values + bridge_fan_speed = preset.config.opt_int("bridge_fan_speed", 0); + ext_peri_fan_speed = preset.config.opt_int("external_perimeter_fan_speed", 0); + top_fan_speed = preset.config.opt_int("top_fan_speed", 0); + if (top_fan_speed == 0) + out += "\n\n!!! 0 for the Top fan speed is Deprecated, please set it to -1 to disable it !!!"; + if (ext_peri_fan_speed == 0) + out += "\n\n!!! 0 for the External perimeters fan speed is Deprecated, please set it to -1 to disable it !!!"; + if (bridge_fan_speed == 0) + out += "\n\n!!! 0 for the Bridge fan speed is Deprecated, please set it to -1 to disable it !!!"; + return out; }