ENH: modify default value to support 3rd-party printer

As title.

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Id8be38a23e4fe4c19eb255ffb7cabf1befeae85b
This commit is contained in:
salt.wei 2022-10-08 18:44:12 +08:00 committed by Lane.Wei
parent a0524cd25d
commit ccd7b7fd7b
5 changed files with 47 additions and 36 deletions

View File

@ -1,7 +1,7 @@
{ {
"name": "Bambulab", "name": "Bambulab",
"url": "http://www.bambulab.com/Parameters/vendor/BBL.json", "url": "http://www.bambulab.com/Parameters/vendor/BBL.json",
"version": "01.02.01.02", "version": "01.02.01.03",
"force_update": "0", "force_update": "0",
"description": "the initial version of BBL configurations", "description": "the initial version of BBL configurations",
"machine_model_list": [ "machine_model_list": [

View File

@ -9,6 +9,7 @@
"256x256", "256x256",
"0x256" "0x256"
], ],
"auxiliary_fan": "1",
"bed_exclude_area": [ "bed_exclude_area": [
"0x0", "0x0",
"28x0", "28x0",
@ -113,6 +114,9 @@
"extruder_clearance_radius": "65", "extruder_clearance_radius": "65",
"extruder_clearance_height_to_rod": "36", "extruder_clearance_height_to_rod": "36",
"extruder_clearance_height_to_lid": "140", "extruder_clearance_height_to_lid": "140",
"nozzle_volume": [
"118"
],
"nozzle_diameter": [ "nozzle_diameter": [
"0.4" "0.4"
], ],
@ -149,6 +153,7 @@
"deretraction_speed": [ "deretraction_speed": [
"30" "30"
], ],
"nozzle_type": "hardened_steel",
"silent_mode": "0", "silent_mode": "0",
"single_extruder_multi_material": "1", "single_extruder_multi_material": "1",
"change_filament_gcode": "M620 S[next_extruder]A\nM204 S9000\n{if toolchange_count > 1}\nG17\nG2 Z{max_layer_z + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\n{endif}\nG1 Z{max_layer_z + 3.0} F1200\n\nG1 X70 F12000\nG1 Y245\nG1 Y265 F3000\nM400\nM106 P1 S0\n{if old_filament_temp > 0 && next_extruder < 255}M109 S[old_filament_temp]{endif}\nG1 X90 F3000\nG1 Y250 F4000\nG1 X100 F5000\nG1 X120 F12000\n\nG1 X20 Y50 F12000\nG1 Y-3\n\nT[next_extruder]\n\n; always use highest temperature to flush\nM400\nM109 S[nozzle_temperature_range_high]\n\n{if next_extruder < 255}\nG1 X54 F12000\nG1 Y265\n\nM400\n\nG92 E0\n{if flush_length_1 > 1}\n; FLUSH_START\n{if flush_length_1 > 23.7}\nG1 E23.7 F{old_filament_e_feedrate} ; do not need pulsatile flushing for start part\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{old_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\n{else}\nG1 E{flush_length_1} F{old_filament_e_feedrate}\n{endif}\n; FLUSH_END\nG1 E-[old_retract_length_toolchange] F1800\nG1 E[old_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_2 > 1}\n; FLUSH_START\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_3 > 1}\n; FLUSH_START\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_4 > 1}\n; FLUSH_START\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\n; FLUSH_END\n{endif}\n\nM400\nM109 S[new_filament_temp]\n\nM400\nM106 P1 S255\nM400 S3\nG1 X80 F15000\nG1 X60 F15000\nG1 X80 F15000\nG1 X60 F15000; shake to put down garbage\n\nG92 E0\nG1 E-[new_retract_length_toolchange] F1800\n\nG1 X70 F5000\nG1 X90 F3000\nG1 Y255 F4000\nG1 X100 F5000\nG1 Y265 F5000\nG1 X70 F10000\nG1 X100 F5000\nG1 X70 F10000\nG1 X100 F5000\nG1 X165 F15000; wipe and shake\nG1 Y256 ; move Y to aside, prevent collision\nM400\nG1 Z[z_after_toolchange] F3000\n{if layer_z <= (initial_layer_print_height + 0.001)}\nM204 S[initial_layer_acceleration]\n{else}\nM204 S[default_acceleration]\n{endif}\n{else}\nG1 X[x_after_toolchange] Y[y_after_toolchange] Z[z_after_toolchange] F12000\n{endif}\nM621 S[next_extruder]A", "change_filament_gcode": "M620 S[next_extruder]A\nM204 S9000\n{if toolchange_count > 1}\nG17\nG2 Z{max_layer_z + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\n{endif}\nG1 Z{max_layer_z + 3.0} F1200\n\nG1 X70 F12000\nG1 Y245\nG1 Y265 F3000\nM400\nM106 P1 S0\n{if old_filament_temp > 0 && next_extruder < 255}M109 S[old_filament_temp]{endif}\nG1 X90 F3000\nG1 Y250 F4000\nG1 X100 F5000\nG1 X120 F12000\n\nG1 X20 Y50 F12000\nG1 Y-3\n\nT[next_extruder]\n\n; always use highest temperature to flush\nM400\nM109 S[nozzle_temperature_range_high]\n\n{if next_extruder < 255}\nG1 X54 F12000\nG1 Y265\n\nM400\n\nG92 E0\n{if flush_length_1 > 1}\n; FLUSH_START\n{if flush_length_1 > 23.7}\nG1 E23.7 F{old_filament_e_feedrate} ; do not need pulsatile flushing for start part\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{old_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\n{else}\nG1 E{flush_length_1} F{old_filament_e_feedrate}\n{endif}\n; FLUSH_END\nG1 E-[old_retract_length_toolchange] F1800\nG1 E[old_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_2 > 1}\n; FLUSH_START\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_3 > 1}\n; FLUSH_START\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_4 > 1}\n; FLUSH_START\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\n; FLUSH_END\n{endif}\n\nM400\nM109 S[new_filament_temp]\n\nM400\nM106 P1 S255\nM400 S3\nG1 X80 F15000\nG1 X60 F15000\nG1 X80 F15000\nG1 X60 F15000; shake to put down garbage\n\nG92 E0\nG1 E-[new_retract_length_toolchange] F1800\n\nG1 X70 F5000\nG1 X90 F3000\nG1 Y255 F4000\nG1 X100 F5000\nG1 Y265 F5000\nG1 X70 F10000\nG1 X100 F5000\nG1 X70 F10000\nG1 X100 F5000\nG1 X165 F15000; wipe and shake\nG1 Y256 ; move Y to aside, prevent collision\nM400\nG1 Z[z_after_toolchange] F3000\n{if layer_z <= (initial_layer_print_height + 0.001)}\nM204 S[initial_layer_acceleration]\n{else}\nM204 S[default_acceleration]\n{endif}\n{else}\nG1 X[x_after_toolchange] Y[y_after_toolchange] Z[z_after_toolchange] F12000\n{endif}\nM621 S[next_extruder]A",

View File

@ -51,6 +51,7 @@
"overhang_2_4_speed": "50", "overhang_2_4_speed": "50",
"overhang_3_4_speed": "30", "overhang_3_4_speed": "30",
"overhang_4_4_speed": "10", "overhang_4_4_speed": "10",
"only_one_wall_top": "1",
"inner_wall_line_width": "0.45", "inner_wall_line_width": "0.45",
"inner_wall_speed": "150", "inner_wall_speed": "150",
"wall_loops": "2", "wall_loops": "2",
@ -90,6 +91,7 @@
"detect_thin_wall": "0", "detect_thin_wall": "0",
"top_surface_pattern": "monotonicline", "top_surface_pattern": "monotonicline",
"top_surface_line_width": "0.42", "top_surface_line_width": "0.42",
"top_surface_acceleration": "2000",
"top_surface_speed": "200", "top_surface_speed": "200",
"top_shell_layers": "3", "top_shell_layers": "3",
"top_shell_thickness": "0.8", "top_shell_thickness": "0.8",

View File

@ -256,6 +256,7 @@ static const t_config_enum_values s_keys_map_BedType = {
CONFIG_OPTION_ENUM_DEFINE_STATIC_MAPS(BedType) CONFIG_OPTION_ENUM_DEFINE_STATIC_MAPS(BedType)
static t_config_enum_values s_keys_map_NozzleType { static t_config_enum_values s_keys_map_NozzleType {
{ "undefine", int(NozzleType::ntUndefine) },
{ "hardened_steel", int(NozzleType::ntHardenedSteel) }, { "hardened_steel", int(NozzleType::ntHardenedSteel) },
{ "stainless_steel",int(NozzleType::ntStainlessSteel) }, { "stainless_steel",int(NozzleType::ntStainlessSteel) },
{ "brass", int(NozzleType::ntBrass) } { "brass", int(NozzleType::ntBrass) }
@ -487,7 +488,7 @@ void PrintConfigDef::init_fff_params()
"than bottom shell thickness, the bottom shell layers will be increased"); "than bottom shell thickness, the bottom shell layers will be increased");
def->full_label = L("Bottom shell layers"); def->full_label = L("Bottom shell layers");
def->min = 0; def->min = 0;
def->set_default_value(new ConfigOptionInt(2)); def->set_default_value(new ConfigOptionInt(3));
def = this->add("bottom_shell_thickness", coFloat); def = this->add("bottom_shell_thickness", coFloat);
def->label = L("Bottom shell thickness"); def->label = L("Bottom shell thickness");
@ -549,7 +550,7 @@ void PrintConfigDef::init_fff_params()
def->label = L("Only one wall on top surfaces"); def->label = L("Only one wall on top surfaces");
def->category = L("Quality"); def->category = L("Quality");
def->tooltip = L("Use only one wall on flat top surface, to give more space to the top infill pattern"); def->tooltip = L("Use only one wall on flat top surface, to give more space to the top infill pattern");
def->set_default_value(new ConfigOptionBool(true)); def->set_default_value(new ConfigOptionBool(false));
def = this->add("enable_overhang_speed", coBool); def = this->add("enable_overhang_speed", coBool);
def->label = L("Slow down for overhang"); def->label = L("Slow down for overhang");
@ -607,7 +608,7 @@ void PrintConfigDef::init_fff_params()
def->sidetext = L("mm/s"); def->sidetext = L("mm/s");
def->min = 0; def->min = 0;
def->mode = comAdvanced; def->mode = comAdvanced;
def->set_default_value(new ConfigOptionFloat(60)); def->set_default_value(new ConfigOptionFloat(25));
def = this->add("brim_width", coFloat); def = this->add("brim_width", coFloat);
def->label = L("Brim width"); def->label = L("Brim width");
@ -717,7 +718,7 @@ void PrintConfigDef::init_fff_params()
def->sidetext = L("mm/s²"); def->sidetext = L("mm/s²");
def->min = 0; def->min = 0;
def->mode = comAdvanced; def->mode = comAdvanced;
def->set_default_value(new ConfigOptionFloat(5000)); def->set_default_value(new ConfigOptionFloat(500.0));
def = this->add("default_filament_profile", coStrings); def = this->add("default_filament_profile", coStrings);
def->label = L("Default filament profile"); def->label = L("Default filament profile");
@ -773,7 +774,7 @@ void PrintConfigDef::init_fff_params()
def->full_width = true; def->full_width = true;
def->height = 12; def->height = 12;
def->mode = comAdvanced; def->mode = comAdvanced;
def->set_default_value(new ConfigOptionString("M104 S0\n")); def->set_default_value(new ConfigOptionString("M104 S0 ; turn off temperature\nG28 X0 ; home X axis\nM84 ; disable motors\n"));
def = this->add("filament_end_gcode", coStrings); def = this->add("filament_end_gcode", coStrings);
def->label = L("End G-code"); def->label = L("End G-code");
@ -833,7 +834,7 @@ void PrintConfigDef::init_fff_params()
def->sidetext = L("mm/s"); def->sidetext = L("mm/s");
def->min = 0; def->min = 0;
def->mode = comAdvanced; def->mode = comAdvanced;
def->set_default_value(new ConfigOptionFloat(120)); def->set_default_value(new ConfigOptionFloat(60));
def = this->add("wall_infill_order", coEnum); def = this->add("wall_infill_order", coEnum);
def->label = L("Order of inner wall/outer wall/infil"); def->label = L("Order of inner wall/outer wall/infil");
@ -1135,7 +1136,7 @@ void PrintConfigDef::init_fff_params()
def->sidetext = L("mm/s²"); def->sidetext = L("mm/s²");
def->min = 0; def->min = 0;
def->mode = comAdvanced; def->mode = comAdvanced;
def->set_default_value(new ConfigOptionFloat(2000)); def->set_default_value(new ConfigOptionFloat(500));
def = this->add("initial_layer_acceleration", coFloat); def = this->add("initial_layer_acceleration", coFloat);
def->label = L("Initial layer"); def->label = L("Initial layer");
@ -1252,7 +1253,7 @@ void PrintConfigDef::init_fff_params()
def->label = L("Arc fitting"); def->label = L("Arc fitting");
def->tooltip = L("Enable this to get a G-code file which has G2 and G3 moves. " def->tooltip = L("Enable this to get a G-code file which has G2 and G3 moves. "
"And the fitting tolerance is same with resolution"); "And the fitting tolerance is same with resolution");
def->mode = comDevelop; def->mode = comAdvanced;
def->set_default_value(new ConfigOptionBool(0)); def->set_default_value(new ConfigOptionBool(0));
// BBS // BBS
def = this->add("gcode_add_line_number", coBool); def = this->add("gcode_add_line_number", coBool);
@ -1279,20 +1280,22 @@ void PrintConfigDef::init_fff_params()
def->tooltip = L("The metallic material of nozzle. This determines the abrasive resistance of nozzle, and " def->tooltip = L("The metallic material of nozzle. This determines the abrasive resistance of nozzle, and "
"what kind of filament can be printed"); "what kind of filament can be printed");
def->enum_keys_map = &ConfigOptionEnum<NozzleType>::get_enum_values(); def->enum_keys_map = &ConfigOptionEnum<NozzleType>::get_enum_values();
def->enum_values.push_back("undefine");
def->enum_values.push_back("hardened_steel"); def->enum_values.push_back("hardened_steel");
def->enum_values.push_back("stainless_steel"); def->enum_values.push_back("stainless_steel");
def->enum_values.push_back("brass"); def->enum_values.push_back("brass");
def->enum_labels.push_back(L("Undefine"));
def->enum_labels.push_back(L("Hardened steel")); def->enum_labels.push_back(L("Hardened steel"));
def->enum_labels.push_back(L("Stainless steel")); def->enum_labels.push_back(L("Stainless steel"));
def->enum_labels.push_back(L("Brass")); def->enum_labels.push_back(L("Brass"));
def->mode = comSimple; def->mode = comDevelop;
def->set_default_value(new ConfigOptionEnum<NozzleType>(ntHardenedSteel)); def->set_default_value(new ConfigOptionEnum<NozzleType>(ntUndefine));
def = this->add("auxiliary_fan", coBool); def = this->add("auxiliary_fan", coBool);
def->label = L("Auxiliary part cooling fan"); def->label = L("Auxiliary part cooling fan");
def->tooltip = L("Enable this option if machine has auxiliary part cooling fan"); def->tooltip = L("Enable this option if machine has auxiliary part cooling fan");
def->mode = comSimple; def->mode = comDevelop;
def->set_default_value(new ConfigOptionBool(true)); def->set_default_value(new ConfigOptionBool(false));
def = this->add("gcode_flavor", coEnum); def = this->add("gcode_flavor", coEnum);
def->label = L("G-code flavor"); def->label = L("G-code flavor");
@ -1310,7 +1313,7 @@ void PrintConfigDef::init_fff_params()
//def->enum_values.push_back("machinekit"); //def->enum_values.push_back("machinekit");
//def->enum_values.push_back("smoothie"); //def->enum_values.push_back("smoothie");
//def->enum_values.push_back("no-extrusion"); //def->enum_values.push_back("no-extrusion");
def->enum_labels.push_back("Marlin"); def->enum_labels.push_back("Marlin(legacy)");
//def->enum_labels.push_back("RepRap/Sprinter"); //def->enum_labels.push_back("RepRap/Sprinter");
//def->enum_labels.push_back("RepRapFirmware"); //def->enum_labels.push_back("RepRapFirmware");
//def->enum_labels.push_back("Repetier"); //def->enum_labels.push_back("Repetier");
@ -1322,8 +1325,8 @@ void PrintConfigDef::init_fff_params()
//def->enum_labels.push_back("Machinekit"); //def->enum_labels.push_back("Machinekit");
//def->enum_labels.push_back("Smoothie"); //def->enum_labels.push_back("Smoothie");
//def->enum_labels.push_back(L("No extrusion")); //def->enum_labels.push_back(L("No extrusion"));
def->mode = comDevelop; def->mode = comAdvanced;
def->readonly = true; def->readonly = false;
def->set_default_value(new ConfigOptionEnum<GCodeFlavor>(gcfMarlinLegacy)); def->set_default_value(new ConfigOptionEnum<GCodeFlavor>(gcfMarlinLegacy));
//BBS //BBS
@ -1368,7 +1371,7 @@ void PrintConfigDef::init_fff_params()
def->sidetext = L("mm/s"); def->sidetext = L("mm/s");
def->min = 0; def->min = 0;
def->mode = comAdvanced; def->mode = comAdvanced;
def->set_default_value(new ConfigOptionFloat(150)); def->set_default_value(new ConfigOptionFloat(100));
def = this->add("inherits", coString); def = this->add("inherits", coString);
//def->label = L("Inherits profile"); //def->label = L("Inherits profile");
@ -1477,10 +1480,10 @@ void PrintConfigDef::init_fff_params()
}; };
std::vector<AxisDefault> axes { std::vector<AxisDefault> axes {
// name, max_feedrate, max_acceleration, max_jerk // name, max_feedrate, max_acceleration, max_jerk
{ "x", { 500., 200. }, { 9000., 1000. }, { 10. , 10. } }, { "x", { 500., 200. }, { 1000., 1000. }, { 10. , 10. } },
{ "y", { 500., 200. }, { 9000., 1000. }, { 10. , 10. } }, { "y", { 500., 200. }, { 1000., 1000. }, { 10. , 10. } },
{ "z", { 12., 12. }, { 500., 200. }, { 0.2, 0.4 } }, { "z", { 12., 12. }, { 500., 200. }, { 0.2, 0.4 } },
{ "e", { 120., 120. }, { 10000., 5000. }, { 2.5, 2.5 } } { "e", { 120., 120. }, { 5000., 5000. }, { 2.5, 2.5 } }
}; };
for (const AxisDefault &axis : axes) { for (const AxisDefault &axis : axes) {
std::string axis_upper = boost::to_upper_copy<std::string>(axis.name); std::string axis_upper = boost::to_upper_copy<std::string>(axis.name);
@ -1492,7 +1495,7 @@ void PrintConfigDef::init_fff_params()
(void)L("Maximum speed Z"); (void)L("Maximum speed Z");
(void)L("Maximum speed E"); (void)L("Maximum speed E");
def->category = L("Machine limits"); def->category = L("Machine limits");
def->readonly = true; def->readonly = false;
def->tooltip = (boost::format("Maximum speed of %1% axis") % axis_upper).str(); def->tooltip = (boost::format("Maximum speed of %1% axis") % axis_upper).str();
(void)L("Maximum X speed"); (void)L("Maximum X speed");
(void)L("Maximum Y speed"); (void)L("Maximum Y speed");
@ -1510,7 +1513,7 @@ void PrintConfigDef::init_fff_params()
(void)L("Maximum acceleration Z"); (void)L("Maximum acceleration Z");
(void)L("Maximum acceleration E"); (void)L("Maximum acceleration E");
def->category = L("Machine limits"); def->category = L("Machine limits");
def->readonly = true; def->readonly = false;
def->tooltip = (boost::format("Maximum acceleration of the %1% axis") % axis_upper).str(); def->tooltip = (boost::format("Maximum acceleration of the %1% axis") % axis_upper).str();
(void)L("Maximum acceleration of the X axis"); (void)L("Maximum acceleration of the X axis");
(void)L("Maximum acceleration of the Y axis"); (void)L("Maximum acceleration of the Y axis");
@ -1528,7 +1531,7 @@ void PrintConfigDef::init_fff_params()
(void)L("Maximum jerk Z"); (void)L("Maximum jerk Z");
(void)L("Maximum jerk E"); (void)L("Maximum jerk E");
def->category = L("Machine limits"); def->category = L("Machine limits");
def->readonly = true; def->readonly = false;
def->tooltip = (boost::format("Maximum jerk of the %1% axis") % axis_upper).str(); def->tooltip = (boost::format("Maximum jerk of the %1% axis") % axis_upper).str();
(void)L("Maximum jerk of the X axis"); (void)L("Maximum jerk of the X axis");
(void)L("Maximum jerk of the Y axis"); (void)L("Maximum jerk of the Y axis");
@ -1570,8 +1573,8 @@ void PrintConfigDef::init_fff_params()
// "as travel acceleration (M204 T)."); // "as travel acceleration (M204 T).");
def->sidetext = L("mm/s²"); def->sidetext = L("mm/s²");
def->min = 0; def->min = 0;
def->readonly = true; def->readonly = false;
def->mode = comDevelop; def->mode = comSimple;
def->set_default_value(new ConfigOptionFloats{ 1500., 1250. }); def->set_default_value(new ConfigOptionFloats{ 1500., 1250. });
@ -1582,8 +1585,8 @@ void PrintConfigDef::init_fff_params()
def->tooltip = L("Maximum acceleration for retracting (M204 R)"); def->tooltip = L("Maximum acceleration for retracting (M204 R)");
def->sidetext = L("mm/s²"); def->sidetext = L("mm/s²");
def->min = 0; def->min = 0;
def->readonly = true; def->readonly = false;
def->mode = comDevelop; def->mode = comSimple;
def->set_default_value(new ConfigOptionFloats{ 1500., 1250. }); def->set_default_value(new ConfigOptionFloats{ 1500., 1250. });
// M204 T... [mm/sec^2] // M204 T... [mm/sec^2]
@ -1689,7 +1692,7 @@ void PrintConfigDef::init_fff_params()
def->sidetext = L("mm³"); def->sidetext = L("mm³");
def->mode = comDevelop; def->mode = comDevelop;
def->readonly = true; def->readonly = true;
def->set_default_value(new ConfigOptionFloat { 118 }); def->set_default_value(new ConfigOptionFloat { 0.0 });
def = this->add("reduce_infill_retraction", coBool); def = this->add("reduce_infill_retraction", coBool);
def->label = L("Reduce infill retraction"); def->label = L("Reduce infill retraction");
@ -1697,7 +1700,7 @@ void PrintConfigDef::init_fff_params()
"This can reduce times of retraction for complex model and save printing time, but make slicing and " "This can reduce times of retraction for complex model and save printing time, but make slicing and "
"G-code generating slower"); "G-code generating slower");
def->mode = comAdvanced; def->mode = comAdvanced;
def->set_default_value(new ConfigOptionBool(true)); def->set_default_value(new ConfigOptionBool(false));
def = this->add("ooze_prevention", coBool); def = this->add("ooze_prevention", coBool);
def->label = L("Enable"); def->label = L("Enable");
@ -2003,7 +2006,7 @@ void PrintConfigDef::init_fff_params()
def->sidetext = L("mm²"); def->sidetext = L("mm²");
def->min = 0; def->min = 0;
def->mode = comAdvanced; def->mode = comAdvanced;
def->set_default_value(new ConfigOptionFloat(5)); def->set_default_value(new ConfigOptionFloat(15));
def = this->add("solid_infill_filament", coInt); def = this->add("solid_infill_filament", coInt);
//def->label = L("Solid infill"); //def->label = L("Solid infill");
@ -2079,7 +2082,7 @@ void PrintConfigDef::init_fff_params()
def->full_width = true; def->full_width = true;
def->height = 12; def->height = 12;
def->mode = comAdvanced; def->mode = comAdvanced;
def->set_default_value(new ConfigOptionString("G28\nG1 Z10 F100\n")); def->set_default_value(new ConfigOptionString("G28 ; home all axes\nG1 Z5 F5000 ; lift nozzle\n"));
def = this->add("filament_start_gcode", coStrings); def = this->add("filament_start_gcode", coStrings);
def->label = L("Start G-code"); def->label = L("Start G-code");
@ -2284,7 +2287,7 @@ void PrintConfigDef::init_fff_params()
def->sidetext = L("mm"); def->sidetext = L("mm");
def->min = 0; def->min = 0;
def->mode = comAdvanced; def->mode = comAdvanced;
def->set_default_value(new ConfigOptionFloat(0)); def->set_default_value(new ConfigOptionFloat(0.5));
//BBS //BBS
def = this->add("support_bottom_interface_spacing", coFloat); def = this->add("support_bottom_interface_spacing", coFloat);
@ -2508,7 +2511,7 @@ void PrintConfigDef::init_fff_params()
"than top shell thickness, the top shell layers will be increased"); "than top shell thickness, the top shell layers will be increased");
def->full_label = L("Top solid layers"); def->full_label = L("Top solid layers");
def->min = 0; def->min = 0;
def->set_default_value(new ConfigOptionInt(2)); def->set_default_value(new ConfigOptionInt(4));
def = this->add("top_shell_thickness", coFloat); def = this->add("top_shell_thickness", coFloat);
def->label = L("Top shell thickness"); def->label = L("Top shell thickness");
@ -2527,7 +2530,7 @@ void PrintConfigDef::init_fff_params()
def->sidetext = L("mm/s"); def->sidetext = L("mm/s");
def->min = 1; def->min = 1;
def->mode = comAdvanced; def->mode = comAdvanced;
def->set_default_value(new ConfigOptionFloat(200)); def->set_default_value(new ConfigOptionFloat(120));
def = this->add("travel_speed_z", coFloat); def = this->add("travel_speed_z", coFloat);
//def->label = L("Z travel"); //def->label = L("Z travel");

View File

@ -164,7 +164,8 @@ enum BedType {
// BBS // BBS
enum NozzleType { enum NozzleType {
ntHardenedSteel = 0, ntUndefine = 0,
ntHardenedSteel,
ntStainlessSteel, ntStainlessSteel,
ntBrass, ntBrass,
ntCount ntCount