parent
809e6d1cc7
commit
90601c098a
11 changed files with 100 additions and 65 deletions
|
@ -3,5 +3,5 @@ Welcome to the OrcaSlicer WIKI!
|
|||
We have divided it roughly into the following pages:
|
||||
|
||||
* [Calibration](wiki/Calibration)
|
||||
* [Seam](wiki/Seam)
|
||||
* [Print settings](wiki/Print-settings/Home)
|
||||
* [How to build Orca Slicer](wiki/How-to-build)
|
||||
|
|
6
doc/Print-settings/Home.md
Normal file
6
doc/Print-settings/Home.md
Normal file
|
@ -0,0 +1,6 @@
|
|||
Print settings:
|
||||
|
||||
* [Seam](wiki/Print-settings/Seam)
|
||||
* [Axiliary fan](wiki/Print-settings/auxiliary-fan)
|
||||
* [Chamber temperature](wiki/Print-settings/chamber-temperature)
|
||||
* [Air filtration](wiki/Print-settings/air-filtration)
|
6
resources/images/param_chamber_temp.svg
Normal file
6
resources/images/param_chamber_temp.svg
Normal file
|
@ -0,0 +1,6 @@
|
|||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M4.74539 2C4.74539 2.80568 3.11719 2.80568 3.11719 3.60976C3.11719 4.41544 4.74539 4.41544 4.74539 5.22111C4.74539 6.02679 3.11719 6.02679 3.11719 6.83247C3.11719 7.63815 4.74539 7.63815 4.74539 8.44382C4.74539 9.2495 3.11719 9.2495 3.11719 10.0552" stroke="#6B6B6B" stroke-miterlimit="10" stroke-linecap="round"/>
|
||||
<path d="M9.12039 2C9.12039 2.80568 7.49219 2.80568 7.49219 3.60976C7.49219 4.41544 9.12039 4.41544 9.12039 5.22111C9.12039 6.02679 7.49219 6.02679 7.49219 6.83247C7.49219 7.63815 9.12039 7.63815 9.12039 8.44382C9.12039 9.2495 7.49219 9.2495 7.49219 10.0552" stroke="#6B6B6B" stroke-miterlimit="10" stroke-linecap="round"/>
|
||||
<path d="M13.4969 2C13.4969 2.80568 11.8687 2.80568 11.8687 3.60976C11.8687 4.41544 13.4969 4.41544 13.4969 5.22111C13.4969 6.02679 11.8687 6.02679 11.8687 6.83247C11.8687 7.63815 13.4969 7.63815 13.4969 8.44382C13.4969 9.2495 11.8687 9.2495 11.8687 10.0552" stroke="#6B6B6B" stroke-miterlimit="10" stroke-linecap="round"/>
|
||||
<rect x="2.5" y="12.1055" width="11.8627" height="1.8816" rx="0.9408" stroke="#6B6B6B"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.1 KiB |
|
@ -2240,6 +2240,17 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
// adds tag for processor
|
||||
file.write_format(";%s%s\n", GCodeProcessor::reserved_tag(GCodeProcessor::ETags::Role).c_str(), ExtrusionEntity::role_to_string(erCustom).c_str());
|
||||
|
||||
// Orca: set chamber temperature at the beginning of gcode file
|
||||
bool activate_chamber_temp_control = false;
|
||||
auto max_chamber_temp = 0;
|
||||
for (const auto &extruder : m_writer.extruders()) {
|
||||
activate_chamber_temp_control |= m_config.activate_chamber_temp_control.get_at(extruder.id());
|
||||
max_chamber_temp = std::max(max_chamber_temp, m_config.chamber_temperature.get_at(extruder.id()));
|
||||
}
|
||||
|
||||
if (activate_chamber_temp_control && max_chamber_temp > 0)
|
||||
file.write(m_writer.set_chamber_temperature(max_chamber_temp, true)); // set chamber_temperature
|
||||
|
||||
// Write the custom start G-code
|
||||
file.writeln(machine_start_gcode);
|
||||
|
||||
|
@ -2262,10 +2273,19 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
*/
|
||||
if (is_bbl_printers) {
|
||||
this->_print_first_layer_extruder_temperatures(file, print, machine_start_gcode, initial_extruder_id, true);
|
||||
if (m_config.support_air_filtration.getBool() && m_config.activate_air_filtration.get_at(initial_extruder_id)) {
|
||||
file.write(m_writer.set_exhaust_fan(m_config.during_print_exhaust_fan_speed.get_at(initial_extruder_id), true));
|
||||
}
|
||||
// Orca: when activate_air_filtration is set on any extruder, find and set the highest during_print_exhaust_fan_speed
|
||||
bool activate_air_filtration = false;
|
||||
int during_print_exhaust_fan_speed = 0;
|
||||
for (const auto &extruder : m_writer.extruders()) {
|
||||
activate_air_filtration |= m_config.activate_air_filtration.get_at(extruder.id());
|
||||
if (m_config.activate_air_filtration.get_at(extruder.id()))
|
||||
during_print_exhaust_fan_speed = std::max(during_print_exhaust_fan_speed,
|
||||
m_config.during_print_exhaust_fan_speed.get_at(extruder.id()));
|
||||
}
|
||||
if (activate_air_filtration)
|
||||
file.write(m_writer.set_exhaust_fan(during_print_exhaust_fan_speed, true));
|
||||
|
||||
print.throw_if_canceled();
|
||||
|
||||
// Set other general things.
|
||||
|
@ -2528,10 +2548,16 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
file.write(m_writer.update_progress(m_layer_count, m_layer_count, true)); // 100%
|
||||
file.write(m_writer.postamble());
|
||||
|
||||
if (print.config().support_chamber_temp_control.value || print.config().chamber_temperature.values[0] > 0)
|
||||
if (activate_chamber_temp_control && max_chamber_temp > 0)
|
||||
file.write(m_writer.set_chamber_temperature(0, false)); //close chamber_temperature
|
||||
|
||||
|
||||
if (activate_air_filtration) {
|
||||
int complete_print_exhaust_fan_speed = 0;
|
||||
for (const auto& extruder : m_writer.extruders())
|
||||
if (m_config.activate_air_filtration.get_at(extruder.id()))
|
||||
complete_print_exhaust_fan_speed = std::max(complete_print_exhaust_fan_speed, m_config.complete_print_exhaust_fan_speed.get_at(extruder.id()));
|
||||
file.write(m_writer.set_exhaust_fan(complete_print_exhaust_fan_speed, true));
|
||||
}
|
||||
// adds tags for time estimators
|
||||
file.write_format(";%s\n", GCodeProcessor::reserved_tag(GCodeProcessor::ETags::Last_Line_M73_Placeholder).c_str());
|
||||
file.write_format("; EXECUTABLE_BLOCK_END\n\n");
|
||||
|
@ -2581,19 +2607,6 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
}
|
||||
file.write("\n");
|
||||
|
||||
bool activate_air_filtration = false;
|
||||
for (const auto& extruder : m_writer.extruders())
|
||||
activate_air_filtration |= m_config.activate_air_filtration.get_at(extruder.id());
|
||||
activate_air_filtration &= m_config.support_air_filtration.getBool();
|
||||
|
||||
if (activate_air_filtration) {
|
||||
int complete_print_exhaust_fan_speed = 0;
|
||||
for (const auto& extruder : m_writer.extruders())
|
||||
if (m_config.activate_air_filtration.get_at(extruder.id()))
|
||||
complete_print_exhaust_fan_speed = std::max(complete_print_exhaust_fan_speed, m_config.complete_print_exhaust_fan_speed.get_at(extruder.id()));
|
||||
file.write(m_writer.set_exhaust_fan(complete_print_exhaust_fan_speed, true));
|
||||
}
|
||||
|
||||
print.throw_if_canceled();
|
||||
}
|
||||
|
||||
|
|
|
@ -164,8 +164,12 @@ std::string GCodeWriter::set_chamber_temperature(int temperature, bool wait)
|
|||
|
||||
if (wait)
|
||||
{
|
||||
// Orca: should we let the M191 command to turn on the auxiliary fan?
|
||||
if (config.auxiliary_fan)
|
||||
gcode << "M106 P2 S255 \n";
|
||||
gcode<<"M191 S"<<std::to_string(temperature)<<" ;"<<"set chamber_temperature and wait for it to be reached\n";
|
||||
gcode << "M191 S" << std::to_string(temperature) << " ;"
|
||||
<< "set chamber_temperature and wait for it to be reached\n";
|
||||
if (config.auxiliary_fan)
|
||||
gcode << "M106 P2 S0 \n";
|
||||
}
|
||||
else {
|
||||
|
|
|
@ -803,7 +803,7 @@ static std::vector<std::string> s_Preset_filament_options {
|
|||
"filament_loading_speed", "filament_loading_speed_start", "filament_load_time",
|
||||
"filament_unloading_speed", "filament_unloading_speed_start", "filament_unload_time", "filament_toolchange_delay", "filament_cooling_moves",
|
||||
"filament_cooling_initial_speed", "filament_cooling_final_speed", "filament_ramming_parameters",
|
||||
"filament_multitool_ramming", "filament_multitool_ramming_volume", "filament_multitool_ramming_flow",
|
||||
"filament_multitool_ramming", "filament_multitool_ramming_volume", "filament_multitool_ramming_flow", "activate_chamber_temp_control"
|
||||
};
|
||||
|
||||
static std::vector<std::string> s_Preset_machine_limits_options {
|
||||
|
|
|
@ -1108,7 +1108,7 @@ void PrintConfigDef::init_fff_params()
|
|||
|
||||
def = this->add("activate_air_filtration",coBools);
|
||||
def->label = L("Activate air filtration");
|
||||
def->tooltip = L("Activate for better air filtration");
|
||||
def->tooltip = L("Activate for better air filtration. G-code command: M106 P3 S(0-255)");
|
||||
def->mode = comSimple;
|
||||
def->set_default_value(new ConfigOptionBools{false});
|
||||
|
||||
|
@ -2173,7 +2173,7 @@ def = this->add("filament_loading_speed", coFloats);
|
|||
|
||||
def = this->add("auxiliary_fan", coBool);
|
||||
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. G-code command: M106 P2 S(0-255).");
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionBool(false));
|
||||
|
||||
|
@ -2217,18 +2217,19 @@ def = this->add("filament_loading_speed", coFloats);
|
|||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionFloat(0));
|
||||
|
||||
// Orca: may remove this option later
|
||||
def =this->add("support_chamber_temp_control",coBool);
|
||||
def->label=L("Support control chamber temperature");
|
||||
def->tooltip=L("This option is enabled if machine support controlling chamber temperature");
|
||||
def->tooltip=L("This option is enabled if machine support controlling chamber temperature\nG-code command: M141 S(0-255)");
|
||||
def->mode=comDevelop;
|
||||
def->set_default_value(new ConfigOptionBool(false));
|
||||
def->set_default_value(new ConfigOptionBool(true));
|
||||
def->readonly=false;
|
||||
|
||||
def =this->add("support_air_filtration",coBool);
|
||||
def->label=L("Support air filtration");
|
||||
def->tooltip=L("Enable this if printer support air filtration");
|
||||
def->tooltip=L("Enable this if printer support air filtration\nG-code command: M106 P3 S(0-255)");
|
||||
def->mode=comDevelop;
|
||||
def->set_default_value(new ConfigOptionBool(false));
|
||||
def->set_default_value(new ConfigOptionBool(true));
|
||||
|
||||
def = this->add("gcode_flavor", coEnum);
|
||||
def->label = L("G-code flavor");
|
||||
|
@ -2661,7 +2662,7 @@ def = this->add("filament_loading_speed", coFloats);
|
|||
def = this->add("additional_cooling_fan_speed", coInts);
|
||||
def->label = L("Fan speed");
|
||||
def->tooltip = L("Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed during printing except the first several layers "
|
||||
"which is defined by no cooling layers");
|
||||
"which is defined by no cooling layers.\nPlease enable auxiliary_fan in printer settings to use this feature. G-code command: M106 P2 S(0-255)");
|
||||
def->sidetext = L("%");
|
||||
def->min = 0;
|
||||
def->max = 100;
|
||||
|
@ -3897,6 +3898,12 @@ def = this->add("filament_loading_speed", coFloats);
|
|||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionBool(false));
|
||||
|
||||
def = this->add("activate_chamber_temp_control",coBools);
|
||||
def->label = L("Activate temperature control");
|
||||
def->tooltip = L("Enable this option for chamber temperature control. An M191 command will be added before \"machine_start_gcode\"\nG-code commands: M141/M191 S(0-255)");
|
||||
def->mode = comSimple;
|
||||
def->set_default_value(new ConfigOptionBools{false});
|
||||
|
||||
def = this->add("chamber_temperature", coInts);
|
||||
def->label = L("Chamber temperature");
|
||||
def->tooltip = L("Higher chamber temperature can help suppress or reduce warping and potentially lead to higher interlayer bonding strength for high temperature materials like ABS, ASA, PC, PA and so on."
|
||||
|
|
|
@ -1087,7 +1087,6 @@ PRINT_CONFIG_CLASS_DERIVED_DEFINE(
|
|||
((ConfigOptionBool, spiral_mode))
|
||||
((ConfigOptionInt, standby_temperature_delta))
|
||||
((ConfigOptionInts, nozzle_temperature))
|
||||
((ConfigOptionInts , chamber_temperature))
|
||||
((ConfigOptionBools, wipe))
|
||||
// BBS
|
||||
((ConfigOptionInts, nozzle_temperature_range_low))
|
||||
|
@ -1137,6 +1136,9 @@ PRINT_CONFIG_CLASS_DERIVED_DEFINE(
|
|||
((ConfigOptionString, notes))
|
||||
((ConfigOptionString, printer_notes))
|
||||
|
||||
((ConfigOptionBools, activate_chamber_temp_control))
|
||||
((ConfigOptionInts , chamber_temperature))
|
||||
|
||||
|
||||
|
||||
)
|
||||
|
|
|
@ -1250,14 +1250,9 @@ wxString OptionsGroup::get_url(const std::string& path_end)
|
|||
anchor.Replace(L" ", "-");
|
||||
str = str.Left(pos) + anchor;
|
||||
}
|
||||
// Softfever: point to sf wiki for seam parameters
|
||||
if (path_end == "Seam") {
|
||||
return wxString::Format(L"https://github.com/SoftFever/OrcaSlicer/wiki/%s", from_u8(path_end));
|
||||
}
|
||||
else {
|
||||
//BBS
|
||||
return wxString::Format(L"https://wiki.bambulab.com/%s/software/bambu-studio/%s", L"en", str);
|
||||
}
|
||||
// Orca: point to sf wiki for seam parameters
|
||||
return wxString::Format(L"https://github.com/SoftFever/OrcaSlicer/wiki/Print-settings/%s", from_u8(path_end));
|
||||
|
||||
}
|
||||
|
||||
bool OptionsGroup::launch_browser(const std::string& path_end)
|
||||
|
|
|
@ -2725,11 +2725,14 @@ void TabFilament::build()
|
|||
optgroup->append_line(line);
|
||||
|
||||
|
||||
optgroup = page->new_optgroup(L("Print temperature"), L"param_temperature");
|
||||
optgroup = page->new_optgroup(L("Print chamber temperature"), L"param_chamber_temp");
|
||||
optgroup->append_single_option_line("chamber_temperature", "chamber-temperature");
|
||||
optgroup->append_single_option_line("activate_chamber_temp_control", "chamber-temperature");
|
||||
|
||||
optgroup->append_separator();
|
||||
|
||||
|
||||
optgroup = page->new_optgroup(L("Print temperature"), L"param_temperature");
|
||||
line = { L("Nozzle"), L("Nozzle temperature when printing") };
|
||||
line.append_option(optgroup->get_option("nozzle_temperature_initial_layer"));
|
||||
line.append_option(optgroup->get_option("nozzle_temperature"));
|
||||
|
@ -2829,11 +2832,11 @@ void TabFilament::build()
|
|||
optgroup->append_single_option_line("support_material_interface_fan_speed");
|
||||
|
||||
optgroup = page->new_optgroup(L("Auxiliary part cooling fan"), L"param_cooling_fan");
|
||||
optgroup->append_single_option_line("additional_cooling_fan_speed");
|
||||
optgroup->append_single_option_line("additional_cooling_fan_speed", "auxiliary-fan");
|
||||
|
||||
optgroup = page->new_optgroup(L("Exhaust fan"),L"param_cooling_fan");
|
||||
|
||||
optgroup->append_single_option_line("activate_air_filtration");
|
||||
optgroup->append_single_option_line("activate_air_filtration", "air-filtration");
|
||||
|
||||
line = {L("During print"), ""};
|
||||
line.append_option(optgroup->get_option("during_print_exhaust_fan_speed"));
|
||||
|
@ -3004,8 +3007,7 @@ void TabFilament::toggle_options()
|
|||
toggle_line("cool_plate_temp_initial_layer", is_BBL_printer);
|
||||
toggle_line("eng_plate_temp_initial_layer", is_BBL_printer);
|
||||
toggle_line("textured_plate_temp_initial_layer", is_BBL_printer);
|
||||
// bool support_chamber_temp_control = this->m_preset_bundle->printers.get_selected_preset().config.opt_bool("support_chamber_temp_control");
|
||||
// toggle_option("chamber_temperature", !is_BBL_printer || support_chamber_temp_control);
|
||||
|
||||
}
|
||||
if (m_active_page->title() == L("Setting Overrides"))
|
||||
update_filament_overrides_page();
|
||||
|
@ -3166,9 +3168,9 @@ void TabPrinter::build_fff()
|
|||
optgroup = page->new_optgroup(L("Accessory") /*, L"param_accessory"*/);
|
||||
optgroup->append_single_option_line("nozzle_type");
|
||||
optgroup->append_single_option_line("nozzle_hrc");
|
||||
optgroup->append_single_option_line("auxiliary_fan");
|
||||
optgroup->append_single_option_line("support_chamber_temp_control");
|
||||
optgroup->append_single_option_line("support_air_filtration");
|
||||
optgroup->append_single_option_line("auxiliary_fan", "auxiliary-fan");
|
||||
optgroup->append_single_option_line("support_chamber_temp_control", "chamber-temperature");
|
||||
optgroup->append_single_option_line("support_air_filtration", "air-filtration");
|
||||
|
||||
const int gcode_field_height = 15; // 150
|
||||
const int notes_field_height = 25; // 250
|
||||
|
|
Loading…
Reference in a new issue