small update to calibration text

This commit is contained in:
supermerill 2020-06-22 19:55:23 +02:00
parent 66847ebfa0
commit f636d0cbfc
13 changed files with 153 additions and 12 deletions

View File

@ -5,7 +5,16 @@
<title>Bed Level Calibration</title>
</head>
<body>
<table width="100%">
<tbody>
<tr>
<td>
<h1>Bed Level Calibration</h1>
</td>
<td style="text-align: right;">need: nothing</td>
</tr>
</tbody>
</table>
<p>This calibration is the first one to do, because it's mandatory to make a print stick well on the build plate.</p>
<p>This calibration is made to do the fine tuning. Please roughly level the printer before you start, move your nozzle to 0.2mm, then you must be able to move a paper between the nozzle and the plater, but you have to be able to feel the nozzle touching it. With that, you should be able to level the bed with a ~0.1mm precision.</p>
<h2>How it works</h2>

View File

@ -5,7 +5,21 @@
<title>Bridge Flow Ratio Calibration</title>
</head>
<body>
<table width="100%">
<tbody>
<tr>
<td>
<h1>Bridge Flow Ratio Calibration</h1>
</td>
<td style="text-align: right;"><strong>
<table><tr><td>needs:</td><td style="text-align: left;">Temperature</td></tr>
<tr><td></td><td>Flow</td></tr></table>
</strong>
</tr>
</tbody>
</table>
<p><strong>You need to do the bed level calibration and the filament flow calibration before this one.</strong> It's better if you have done the filament temperature calibration also.</p>
<p>This test will print tests samples with various level of bridge flow ratio. It starts at your current setting, so you may want to set them to 100% before clicking on the button.</p>
<!-- <h2>Results</h2> -->

View File

@ -5,7 +5,21 @@
<title>Calibration Cube</title>
</head>
<body>
<table width="100%">
<tbody>
<tr>
<td>
<h1>Calibration Cube</h1>
</td>
<td style="text-align: right;"><strong>
<table><tr><td>needs:</td><td style="text-align: left;">Bed</td></tr>
<tr><td></td><td>Flow</td></tr><tr><td></td><td>Temperature</td></tr></table>
</strong>
</tr>
</tbody>
</table>
<p>This page allow you to print the loved calibration cube. It's useful to see if your printer is accurate and calibrate some settings. First thing is to select your goal.</p>
<h2>Goal: Dimensional accuracy</h2>
<p>You have to print two cubes, with different sizes. If the dimensional inaccuracy scale with the size of the cubes, then it's the steps/mm of your steppers that needs some adjustments (note: if it's the case, you should also adjust the flow, and maybe redo some calibrations if the change is big). If it doesn't scale, you can correct it by adjusting your xy compensation (slicing tab). With the voron cube, you can also test the hole calibration, as these are often too small.</p>

View File

@ -5,7 +5,21 @@
<title>Filament Flow Calibration</title>
</head>
<body>
<table width="100%">
<tbody>
<tr>
<td>
<h1>Filament Flow Calibration</h1>
</td>
<td style="text-align: right;"><strong>
<table><tr><td>needs:</td><td style="text-align: left;">Bed levelling</td></tr>
</table>
</strong>
</tr>
</tbody>
</table>
<p><strong>You need to do the bed level calibration before this one.</strong></p>
<p>This test will print five test samples with various level of flow. You can choose the flow difference between each steps. You should start with the 10% one.
After verifying the result with the help of the table below, you have to modify the filament extrusion multiplier in your filament preset (if the -20 is the best, change the multiplier from 1 to 0.8, see the formula below). Don't forget to save it afterwards! You can continue with the 2.5 step if you want a bit more precision.</p>

View File

@ -5,7 +5,21 @@
<title>Filament Temperature Calibration</title>
</head>
<body>
<table width="100%">
<tbody>
<tr>
<td>
<h1>Filament Temperature Calibration</h1>
</td>
<td style="text-align: right;"><strong>
<table><tr><td>needs:</td><td style="text-align: left;">Flow</td></tr>
</table>
</strong>
</tr>
</tbody>
</table>
<p><strong>You need to have done the bed level calibration before this one,</strong> and it's preferable to have also done the flow calibration.
This calibration will help you to choose the right temperature in respect of bonding, overhangs and oozing.
Note that this test is dependant of the cooling you selected. You can print this multiple times with more or less cooling to find the sweet spot.</p>

View File

@ -0,0 +1,36 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>Calibrations</title>
</head>
<body>
<h1>Introduction</h1>
<p>Welcome to the calibration menu. This menu is here to help you print quick & efficient calibrations.</p>
<h2>Why?</h2>
<p>Most printers profile should work pretty good with default settings, but if you encounter problems, or if you want to go a step above in quality, you have to ensure that everything is well calibrated. Calibrations can be divided in three groups: printer, filament and slicer.</p>
<p>The printer has to be calibrated first, then the filament and then the slicer.</p>
<h2>Printer calibration</h2>
<p>This is the first thing to calibrate. Each printer is different in this domain, and you should look first into your printers manual for more informations.</p>
<h3>Extruder calibration</h3>
<p>This one doesn't have a menu entry because it can't be calibrated by a print. It's not mandatory but it may avoid you some problems. Most of it is explained in the flow calibration menu entry.</p>
<h3>Bed levelling</h3>
<p>Most printer doesn't have auto-bed levelling, and even the ones with one have to be calibrated at least one time. Everything should be explain in the menu how to level your printer, but be sure to have read your printer documentation before, in case there is some specific steps. This calibration print is particularly useful if you want to verify / refine the end result, or just check if it hasn't changed since the last time.</p>
<p>It will create 5 small patch and you should be able to see where the bed is level and where it needs some adjustments.</p>
<h2>Filament calibration</h2>
<p>Every filament has different properties, and so may need adjustments. Default profile should work most of the time, but it may create avoidable artifacts. Also some specials filaments like wood-filled need extra care.</p>
<h3>Filament flow calibration</h3>
<p>The extruder bite in the filament to push it, and the way the spring compress the filament, and by how much it's bitten may change the flow needed. Also, if your extruder is not very well calibrated, this step will help you to counteract this problem.</p>
<p>Note that if your filament has a variable diameter or isn't round, you will encounter flow problem but these issues can't been addressed. You should change your filament provider or investing in a filament width sensor.</p>
<h3>Filament temperature calibration</h3>
<p>Some filaments need more heat to stick, some need less heat to prevent too much ooze or loose overhangs. This calibration is here to help you enter the good value for the temperature. You can also so do multiple trials with different fan speed, to try to find the best combination.</p>
<h2>Slicer calibration</h2>
<p>These calibrations are here to help you to find the best super Slicer settings that will go well with your printer and filament combination.</p>
<h3>Bridge flow calibration</h3>
<p>Bridges are sometimes a bit hard to print with a good look. This calibration will help you to choose the best setting for the bridge flow. You can also try with different value of bridge fan speed</p>
<h3>Ironing pattern calibration</h3>
<p>It's difficult to be sure you have a flat top, as it may drop a bit in the centre of a large flat area. This calibration will help you to find the best setting to compensate for that.</p>
<h3>Calibration cube calibration</h3>
<p>This entry will allow you to always have a calibration cube ready to print. It's useful to see if the print has a good dimensional accuracy. This may be compensated with the various xy size compensation settings.</p>
</body>
</html>

View File

@ -5,7 +5,21 @@
<title>Ironing Pattern Calibration</title>
</head>
<body>
<table width="100%">
<tbody>
<tr>
<td>
<h1>Ironing Pattern Calibration</h1>
</td>
<td style="text-align: right;"><strong>
<table><tr><td>needs:</td><td style="text-align: left;">Temperature</td></tr>
<tr><td></td><td>Flow</td></tr></table>
</strong>
</tr>
</tbody>
</table>
<p><strong>You need to do the filament flow calibration and the bridge flow ratio before this one.</strong> It's better if you have done the filament temperature.</p>
<p>This calibration method will print test samples with various levels of over-bridge flow ratio, between 100 and 125. Choose the lowest value on which the top surface is smooth without rough "holes".</p>
<h2>Results</h2>

View File

@ -36,6 +36,18 @@ protected:
};
class HtmlDialog : public CalibrationAbstractDialog
{
public:
HtmlDialog(GUI_App* app, MainFrame* mainframe, std::string title, std::string html_path) : CalibrationAbstractDialog(app, mainframe, title) { create(html_path); }
virtual ~HtmlDialog() {}
protected:
void create_buttons(wxStdDialogButtonSizer* sizer) override {}
};
} // namespace GUI
} // namespace Slic3r

View File

@ -27,7 +27,7 @@ void CalibrationCubeDialog::create_buttons(wxStdDialogButtonSizer* buttons){
scale->SetToolTip(_(L("You can choose the dimension of the cube. It's a simple scale, you can modify it in the right panel yourself if you prefer. It's just quicker to select it here.")));
scale->SetSelection(1);
wxString choices_goal[] = { "Dimensional accuracy (default)" , "infill/perimeter overlap"/*, "external perimeter overlap"*/};
calibrate = new wxComboBox(this, wxID_ANY, wxString{ "Dimensional accuracy (default)" }, wxDefaultPosition, wxDefaultSize, 3, choices_goal);
calibrate = new wxComboBox(this, wxID_ANY, wxString{ "Dimensional accuracy (default)" }, wxDefaultPosition, wxDefaultSize, 2, choices_goal);
calibrate->SetToolTip(_(L("Select a goal, this will change settings to increase the effects to search.")));
calibrate->SetSelection(0);

View File

@ -114,11 +114,12 @@ void CalibrationFlowDialog::create_geometry(float start, float delta) {
new_print_config.set_key_value("complete_objects_one_skirt", new ConfigOptionBool(true));
}
/// --- custom config ---
for (size_t i = 0; i < 5; i++) {
//brim to have some time to build up pressure in the nozzle
model.objects[objs_idx[i]]->config.set_key_value("brim_width", new ConfigOptionFloat(brim_width));
model.objects[objs_idx[i]]->config.set_key_value("external_perimeter_overlap", new ConfigOptionPercent(100));
model.objects[objs_idx[i]]->config.set_key_value("perimeter_overlap", new ConfigOptionPercent(100));
model.objects[objs_idx[i]]->config.set_key_value("brim_ears", new ConfigOptionBool(false));
model.objects[objs_idx[i]]->config.set_key_value("perimeters", new ConfigOptionInt(3));
model.objects[objs_idx[i]]->config.set_key_value("only_one_perimeter_top", new ConfigOptionBool(true));

View File

@ -574,6 +574,10 @@ void GUI_App::change_calibration_dialog(const wxDialog* have_to_destroy, wxDialo
}
void GUI_App::html_dialog()
{
change_calibration_dialog(nullptr, new HtmlDialog(this, mainframe,"Introduction to calibrations", "/calibration/introduction.html"));
}
void GUI_App::bed_leveling_dialog()
{
change_calibration_dialog(nullptr, new CalibrationBedDialog(this, mainframe));

View File

@ -132,6 +132,7 @@ public:
void system_info();
void keyboard_shortcuts();
void change_calibration_dialog(const wxDialog* have_to_destroy = nullptr, wxDialog* new_one = nullptr);
void html_dialog();
void bed_leveling_dialog();
void flow_ratio_dialog();
void filament_temperature_dialog();

View File

@ -762,20 +762,26 @@ void MainFrame::init_menubar()
[this]() { return m_plater->is_view3D_shown(); }, [this]() { return m_plater->are_view3D_labels_shown(); }, this);
}
// objects menu
auto objectsMenu = new wxMenu();
// calibration menu
auto calibrationMenu = new wxMenu();
{
append_menu_item(objectsMenu, wxID_ANY, _(L("Bed/Extruder levelling")), _(L("Create a test print to help you to level your printer bed.")),
append_menu_item(calibrationMenu, wxID_ANY, _(L("Introduction")), _(L("How to use this menu and calibrations.")),
[this](wxCommandEvent&) { wxGetApp().html_dialog(); });
calibrationMenu->AppendSeparator();
append_menu_item(calibrationMenu, wxID_ANY, _(L("Bed/Extruder levelling")), _(L("Create a test print to help you to level your printer bed.")),
[this](wxCommandEvent&) { wxGetApp().bed_leveling_dialog(); });
append_menu_item(objectsMenu, wxID_ANY, _(L("Flow calibration")), _(L("Create a test print to help you to set your filament extrusion multiplier.")),
calibrationMenu->AppendSeparator();
append_menu_item(calibrationMenu, wxID_ANY, _(L("Filament Flow calibration")), _(L("Create a test print to help you to set your filament extrusion multiplier.")),
[this](wxCommandEvent&) { wxGetApp().flow_ratio_dialog(); });
append_menu_item(objectsMenu, wxID_ANY, _(L("Filament temperature calibration")), _(L("Create a test print to help you to set your filament temperature.")),
append_menu_item(calibrationMenu, wxID_ANY, _(L("Filament temperature calibration")), _(L("Create a test print to help you to set your filament temperature.")),
[this](wxCommandEvent&) { wxGetApp().filament_temperature_dialog(); });
append_menu_item(objectsMenu, wxID_ANY, _(L("Bridge flow calibration")), _(L("Create a test print to help you to set your bridge flow ratio.")),
calibrationMenu->AppendSeparator();
append_menu_item(calibrationMenu, wxID_ANY, _(L("Bridge flow calibration")), _(L("Create a test print to help you to set your bridge flow ratio.")),
[this](wxCommandEvent&) { wxGetApp().bridge_tuning_dialog(); });
append_menu_item(objectsMenu, wxID_ANY, _(L("Ironing pattern calibration")), _(L("Create a test print to help you to set your over-bridge flow ratio and ironing pattern.")),
append_menu_item(calibrationMenu, wxID_ANY, _(L("Ironing pattern calibration")), _(L("Create a test print to help you to set your over-bridge flow ratio and ironing pattern.")),
[this](wxCommandEvent&) { wxGetApp().over_bridge_dialog(); });
append_menu_item(objectsMenu, wxID_ANY, _(L("Calibration cube")), _(L("Print a calibration cube, for various calibration goals.")),
calibrationMenu->AppendSeparator();
append_menu_item(calibrationMenu, wxID_ANY, _(L("Calibration cube")), _(L("Print a calibration cube, for various calibration goals.")),
[this](wxCommandEvent&) { wxGetApp().calibration_cube_dialog(); });
}
@ -784,6 +790,8 @@ void MainFrame::init_menubar()
{
append_menu_item(generationMenu, wxID_ANY, _(L("FreeCad python script")), _(L("Create an object by writing little easy script.")),
[this](wxCommandEvent&) { wxGetApp().freecad_script_dialog(); });
append_menu_item(generationMenu, wxID_ANY, _(L("Script help page")), _(L("How to use the FreeCad python script window.")),
[this](wxCommandEvent&) { wxLaunchDefaultBrowser("https://github.com/supermerill/SuperSlicer/wiki/FreePySCAD-script-window"); });
}
@ -837,7 +845,7 @@ void MainFrame::init_menubar()
if (viewMenu) menubar->Append(viewMenu, _(L("&View")));
// Add additional menus from C++
wxGetApp().add_config_menu(menubar);
menubar->Append(objectsMenu, _(L("C&alibration")));
menubar->Append(calibrationMenu, _(L("C&alibration")));
menubar->Append(generationMenu, _(L("&Generate")));
menubar->Append(helpMenu, _(L("&Help")));
SetMenuBar(menubar);