Updated Wiki content

OrcaSlicerBot
2026-01-18 14:33:12 +00:00
parent 1d4c906999
commit 267d505ad5
10 changed files with 137 additions and 160 deletions

@@ -14,44 +14,27 @@ To access the calibration features, you can find them in the **Calibration** sec
The recommended order for calibration is as follows:
1. **[Temperature](temp-calib):** Start by calibrating the temperature of the nozzle and the bed. This is crucial as it affects the viscosity of the filament, which in turn influences how well it flows through the nozzle and adheres to the print bed.
<img alt="temp-tower" src="https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/Temp-calib/temp-tower.jpg?raw=true" height="200">
2. **[Max Volumetric Speed](volumetric-speed-calib):** Calibrate the maximum volumetric speed of the filament. This is important for ensuring that the printer can handle the flow rate of the filament without causing issues like under-extrusion.
<img alt="mvf_measurement_point" src="https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/MVF/mvf_measurement_point.jpg?raw=true" height="200">
3. **[Pressure Advance](pressure-advance-calib):** Calibrate the pressure advance settings to improve print quality and reduce artifacts caused by pressure fluctuations in the nozzle.
- **[Adaptive Pressure Advance](adaptive-pressure-advance-calib):** This is an advanced calibration technique that can be used to further optimize the pressure advance settings for different print speeds and geometries.
<img alt="pa-tower" src="https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/pa/pa-tower.jpg?raw=true" height="200">
4. **[Flow](flow-rate-calib):** Calibrate the flow rate to ensure that the correct amount of filament is being extruded. This is important for achieving accurate dimensions and good layer adhesion.
<img alt="flowcalibration-example" src="https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/Flow-Rate/flowcalibration-example.png?raw=true" height="200">
5. **[Retraction](retraction-calib):** Calibrate the retraction settings to minimize stringing and improve print quality. Doing this after Flow and Pressure Advance calibration is recommended, as it ensures that the printer is already set up for optimal extrusion.
<img alt="retraction_test_print" src="https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/retraction/retraction_test_print.jpg?raw=true" height="200">
6. **[Cornering](cornering-calib):** Calibrate the Jerk/Junction Deviation settings to improve print quality and reduce artifacts caused by sharp corners and changes in direction.
<img alt="jd_second_print_measure" src="https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/JunctionDeviation/jd_second_print_measure.jpg?raw=true" height="200">
7. **[Input Shaping](input-shaping-calib):** This is an advanced calibration technique that can be used to reduce ringing and improve print quality by compensating for mechanical vibrations in the printer.
<img alt="IS_damp_marlin_print_measure" src="https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/InputShaping/IS_damp_marlin_print_measure.jpg?raw=true" height="200">
8. **[VFA](vfa-calib):** A VFA speed test is available to find resonance speeds.
<img alt="vfa_test_print" src="https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/vfa/vfa_test_print.jpg?raw=true" height="200">
---
**[Tolerance](tolerance-calib):** Calibrate the tolerances of your printer to ensure that it can accurately reproduce the dimensions of the model being printed. This is important for achieving a good fit between parts and for ensuring that the final print meets the desired specifications.
<img alt="OrcaToleranceTes_m6" src="https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/Tolerance/OrcaToleranceTes_m6.jpg?raw=true" height="200">
<img alt="OrcaToleranceTes_m6" src="https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/Tolerance/OrcaToleranceTes_m6.jpg?raw=true" height="200">
---

@@ -31,26 +31,27 @@ Every firmware and even its version may have a different default type but usuall
### Version Table
| Type | Name | [Klipper](https://www.klipper3d.org/Resonance_Compensation.html#technical-details) | [RepRap](https://docs.duet3d.com/User_manual/Reference/Gcodes#m593-configure-input-shaping) | [Marlin 2](https://marlinfw.org/docs/features/ft_motion.html#more-complexity-zv-input-shaper) | Marlin Legacy |
|---|---|---|---|---|---|
| MZV | Modified Zero Vibration | >=0.9.0 | >=3.4 | - | - |
| ZV | Zero Vibration | >=0.9.0 | = 3.5 | >2.1.2 | - |
| ZVD | Zero Vibration Derivative | >=0.9.0 | >=3.4 | - | - |
| ZVDD | Zero Vibration Double Derivative | - | >=3.4 | - | - |
| ZVDDD | Zero Vibration Triple Derivative | - | >=3.4 | - | - |
| EI | Extra Insensitive | >=0.9.0 | - | - | - |
| 2HUMP_EI / EI2 | Two-Hump Extra Insensitive | >=0.9.0 | >=3.4 | - | - |
| 3HUMP_EI / EI3 | Three-Hump Extra Insensitive | >=0.9.0 | >=3.4 | - | - |
| [FT_MOTION](https://marlinfw.org/docs/features/ft_motion.html#fixed-time-motion-by-ulendo) | Fixed-Time Motion | - | - | >2.1.3 | - |
| DAA | Damped Anti-Resonance | - | < 3.4 | - | - |
| Type | Name | [Klipper](https://www.klipper3d.org/Resonance_Compensation.html#technical-details) | [RepRap](https://docs.duet3d.com/User_manual/Reference/Gcodes#m593-configure-input-shaping) | [Marlin 2](https://marlinfw.org/docs/features/ft_motion.html#more-complexity-zv-input-shaper) |
| --- | --- | --- | --- | --- |
| MZV | Modified Zero Vibration | >=0.9.0 | >=3.4 | - |
| ZV | Zero Vibration | >=0.9.0 | = 3.5 | >2.1.2 |
| ZVD | Zero Vibration Derivative | >=0.9.0 | >=3.4 | - |
| ZVDD | Zero Vibration Double Derivative | - | >=3.4 | - |
| ZVDDD | Zero Vibration Triple Derivative | - | >=3.4 | - |
| EI | Extra Insensitive | >=0.9.0 | - | - |
| 2HUMP_EI / EI2 | Two-Hump Extra Insensitive | >=0.9.0 | >=3.4 | - |
| 3HUMP_EI / EI3 | Three-Hump Extra Insensitive | >=0.9.0 | >=3.4 | - |
| [FT_MOTION](https://marlinfw.org/docs/features/ft_motion.html#fixed-time-motion-by-ulendo) | Fixed-Time Motion | - | - | >2.1.3 |
| DAA | Damped Anti-Resonance | - | < 3.4 | - |
## Calibration Steps
0. Pre-requisites:
1. Use an opaque, high-gloss filament to make the ringing more visible.
2. In OrcaSlicer, set:
1. Acceleration high enough to trigger ringing (e.g., 20000 mm/s²).
2. Speed high enough to trigger ringing (e.g., 200 mm/s).
Pre-requisites:
- Use an opaque, high-gloss filament to make the ringing more visible.
- In OrcaSlicer, set:
- Acceleration high enough to trigger ringing (e.g., 20000 mm/s²).
- Speed high enough to trigger ringing (e.g., 200 mm/s).
> [!IMPORTANT]
> It's recommended to use the fastest [acceleration](speed_settings_acceleration), [speed](speed_settings_other_layers_speed) and [Jerk/Junction Deviation](speed_settings_jerk_xy) your printer can handle without losing steps.
@@ -61,14 +62,14 @@ Every firmware and even its version may have a different default type but usuall
3. Select a range of frequencies to test. The Default 15hz to 110hz range is usually a good start.
4. Select your damping. Usually, a value between 0.1 and 0.2 is a good start but you can change it to 0 and your printer will use the firmware default value (if available).
![IS_freq_menu](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/InputShaping/IS_freq_menu.png?raw=true)
1. Measure the X and Y heights and read the frequency set at that point in OrcaSlicer.
1. **Measure the X and Y heights** and read the frequency set at that point in OrcaSlicer.
![IS_freq_marlin_print_measure](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/InputShaping/IS_freq_marlin_print_measure.jpg?raw=true)
- Marlin:
![IS_freq_marlin_slicer_measure](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/InputShaping/IS_freq_marlin_slicer_measure.png?raw=true)
- Klipper:
![IS_freq_klipper_slicer_measure](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/InputShaping/IS_freq_klipper_slicer_measure.png?raw=true)
2. If not a clear result, you can measure a X and Y min and max acceptable heights and repeat the test with that min and max value.
5. Print the Damping test setting your X and Y frequency to the value you found in the previous step.
5. **Print the Damping test** setting your X and Y frequency to the value you found in the previous step.
![IS_damp_menu](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/InputShaping/IS_damp_menu.png?raw=true)
1. Measure the X and Y heights and read the damping set at that point in OrcaSlicer.
![IS_damp_marlin_print_measure](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/InputShaping/IS_damp_marlin_print_measure.jpg?raw=true)
@@ -76,9 +77,8 @@ Every firmware and even its version may have a different default type but usuall
![IS_damp_marlin_slicer_measure](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/InputShaping/IS_damp_marlin_slicer_measure.png?raw=true)
- Klipper:
![IS_damp_klipper_slicer_measure](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/InputShaping/IS_damp_klipper_slicer_measure.png?raw=true)
6. **Restore your 3D Printer settings to avoid keep using high acceleration and jerk values.**
7. Save the settings
7. **Save the settings**
- Into your printer firmware settings save the values you found (Type, frequency/cies and damp)
- Save it into Orca's printer profile settings in Printer settings/ Machine G-code/ Machine start G-code using the following G-code:
- Klipper:

@@ -45,32 +45,27 @@ The tower method may take a bit more time to complete, but it does not rely on t
The pattern method is adapted from [Andrew Ellis' pattern method generator](https://ellis3dp.com/Pressure_Linear_Advance_Tool/), which was itself derived from the [Marlin pattern method](https://marlinfw.org/tools/lin_advance/k-factor.html) developed by [Sineos](https://github.com/Sineos/k-factorjs).
[Instructions for using and reading the pattern method](https://ellis3dp.com/Print-Tuning-Guide/articles/pressure_linear_advance/pattern_method.html) are provided in [Ellis' Print Tuning Guide](https://ellis3dp.com/Print-Tuning-Guide/), with only a few OrcaSlicer differences to note.
The test configuration window allows the user to generate one or more tests in a single project. Multiple tests will be placed on the plate with extra plates added if needed.
1. Single test
- **Single test**:
![pa-pattern-single](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/pa/pa-pattern-single.png?raw=true)
2. Batch mode testing (multiple tests on a single plate)
- **Batch mode testing**: multiple tests on a single plate.
![pa-pattern-batch](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/pa/pa-pattern-batch.png?raw=true)
Once a test is generated, one or more small rectangular prisms will be placed on the plate, one for each test case. The prism object serves a few purposes:
3. The test pattern itself is added in as custom G-Code at each layer, same as you could do by hand. The rectangular prism provides the layers in which to insert that G-Code. This also means that **you'll see the full test pattern when you move to the Preview pane:**
![pa-pattern-batch-plater](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/pa/pa-pattern-batch-plater.png?raw=true)
4. The prism acts as a handle, enabling you to move the test pattern wherever you'd like on the plate by moving the prism.
5. Each test object is pre-configured with target parameters which are reflected in the object's name. Test parameters may be adjusted for each prism individually via the object list pane:
![pa-pattern-batch-objects](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/pa/pa-pattern-batch-objects.png?raw=true)
- The test pattern itself is added in as custom G-Code at each layer, same as you could do by hand. The rectangular prism provides the layers in which to insert that G-Code. This also means that **you'll see the full test pattern when you move to the Preview pane:**
![pa-pattern-batch-plater](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/pa/pa-pattern-batch-plater.png?raw=true)
- The prism acts as a handle, enabling you to move the test pattern wherever you'd like on the plate by moving the prism.
- Each test object is pre-configured with target parameters which are reflected in the object's name. Test parameters may be adjusted for each prism individually via the object list pane:
![pa-pattern-batch-objects](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/pa/pa-pattern-batch-objects.png?raw=true)
Next, Ellis' generator provided the ability to adjust specific printer, filament, and print profile settings. You can make these same changes in OrcaSlicer by adjusting the settings in the Prepare pane as you would with any other print. When you initiate the calibration test, Ellis' default settings are applied. A few things to note about these settings:
6. Ellis specified line widths as a percent of filament diameter. The Orca pattern method does the same to provide its suggested defaults, making use of Ellis' percentages in combination with your specified nozzle diameter.
7. In terms of line width, the pattern only makes use of the `Default` and `First layer` widths.
8. In terms of speed, the pattern only uses the `First layer speed -> First layer` and `Other layers speed -> Outer wall` speeds.
9. The infill pattern beneath the numbers cannot be changed because it's not actually an infill pattern pulled from the settings. All of the pattern G-Code is custom written, so that "infill" is, effectively, hand-drawn and not processed through the usual channels that would enable Orca to recognize it as infill.
- Ellis specified line widths as a percent of filament diameter. The Orca pattern method does the same to provide its suggested defaults, making use of Ellis' percentages in combination with your specified nozzle diameter.
- In terms of line width, the pattern only makes use of the `Default` and `First layer` widths.
- In terms of speed, the pattern only uses the `First layer speed -> First layer` and `Other layers speed -> Outer wall` speeds.
- The infill pattern beneath the numbers cannot be changed because it's not actually an infill pattern pulled from the settings. All of the pattern G-Code is custom written, so that "infill" is, effectively, hand-drawn and not processed through the usual channels that would enable Orca to recognize it as infill.
### Line method
@@ -81,9 +76,5 @@ Steps:
1. Select the printer, filament, and process you would like to use for the test.
2. Print the project and check the result. Choose the value corresponding to the most even line and update your Pressure Advance value in the filament settings.
3. In this test, a Pressure Advance value of `0.016` appears to be optimal.
![pa-line](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/pa/pa-line.gif?raw=true)
![pa-lines](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/pa/pa-lines.png?raw=true)
![pa-line-0-016](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/pa/pa-line-0-016.png?raw=true)

@@ -97,6 +97,7 @@ How to building with Visual Studio on Windows 64-bit.
```
2. Run lfs to download tools on Windows:
```shell
git lfs pull
```
@@ -125,15 +126,16 @@ How to building with Visual Studio on Windows 64-bit.
build_release_vs.bat
```
![vs_cmd](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/develop/vs_cmd.png?raw=true)
![vs_cmd](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/images/develop/vs_cmd.png?raw=true)
> [!NOTE]
> The build process will take a long time depending on your system but even with high-end hardware it can take up to 40 minutes.
> [!NOTE]
> The build process will take a long time depending on your system but even with high-end hardware it can take up to 40 minutes.
> [!TIP]
> If you encounter issues, you can try to uninstall ZLIB from your Vcpkg library.
> [!TIP]
> If you encounter issues, you can try to uninstall ZLIB from your Vcpkg library.
3. If successful, you will find the Visual Studio solution file in:
```shell
build\OrcaSlicer.slnx
```
@@ -201,15 +203,15 @@ Homebrew currently only offers the latest version of CMake (e.g. **4.X**), which
2. Install the application (drag it to `/Applications`).
3. Add the following line to your shell configuration file (`~/.zshrc` or `~/.bash_profile`):
```sh
export PATH="/Applications/CMake.app/Contents/bin:$PATH"
```
```sh
export PATH="/Applications/CMake.app/Contents/bin:$PATH"
```
4. Restart the terminal and check the version:
```sh
cmake --version
```
```sh
cmake --version
```
5. Make sure it reports a **3.31.x** version.

@@ -93,8 +93,8 @@ The following sample JSON file shows how to create a new generic filament profil
1. The first step is to create a new file in the `resources\profiles\OrcaFilamentLibrary\filament` folder. The file name should be `Generic PLA-GF @System.json`. Please note that we leave the `compatible_printers` field empty so that it is available for all printers.
```json
{
```json
{
"type": "filament",
"filament_id": "GFL99",
"setting_id": "GFSA05",
@@ -107,13 +107,13 @@ The following sample JSON file shows how to create a new generic filament profil
"0.96"
],
"compatible_printers": []
}
```
}
```
2. Register the profile in `resources\profiles\OrcaFilamentLibrary.json`:
```json
{
```json
{
"name": "OrcaFilamentLibrary",
"version": "02.02.00.04",
"force_update": "0",
@@ -125,8 +125,8 @@ The following sample JSON file shows how to create a new generic filament profil
"sub_path": "filament/Generic PLA-GF @System.json"
}
]
}
```
}
```
3. The last step is to validate the newly added filament profiles see [Validate Profiles](#validate-profiles).

@@ -98,44 +98,44 @@ There are 3 main ways to set up these links:
1. Using `append_single_option_line` with a second string argument for the wiki page.
```cpp
optgroup->append_single_option_line("[OPTION_NAME]"); // Option without wiki page/redirection
optgroup->append_single_option_line("[OPTION_NAME]", "[WIKI_LINK]"); // Option with wiki page and redirection
```
```cpp
optgroup->append_single_option_line("[OPTION_NAME]"); // Option without wiki page/redirection
optgroup->append_single_option_line("[OPTION_NAME]", "[WIKI_LINK]"); // Option with wiki page and redirection
```
Example:
Example:
```cpp
optgroup->append_single_option_line("seam_gap","quality_settings_seam"); // Wiki page and redirection
optgroup->append_single_option_line("seam_slope_type", "quality_settings_seam#scarf-joint-seam"); // Wiki page and redirection to `Scarf Joint Seam` section
```
```cpp
optgroup->append_single_option_line("seam_gap","quality_settings_seam"); // Wiki page and redirection
optgroup->append_single_option_line("seam_slope_type", "quality_settings_seam#scarf-joint-seam"); // Wiki page and redirection to `Scarf Joint Seam` section
```
2. Using `append_option_line` with a third string argument for the wiki page.
```cpp
append_option_line([optgroup], [opt_key], "[WIKI_LINK]");
```
```cpp
append_option_line([optgroup], [opt_key], "[WIKI_LINK]");
```
Example:
Example:
```cpp
append_option_line(optgroup, "machine_max_acceleration_x", "printer_motion_ability#acceleration-limitation");
```
```cpp
append_option_line(optgroup, "machine_max_acceleration_x", "printer_motion_ability#acceleration-limitation");
```
3. Using grouped rows with `append_line` and setting the wiki target via `line.label_path`.
```cpp
line.label_path = "[WIKI_LINK]";
```
```cpp
line.label_path = "[WIKI_LINK]";
```
Example:
Example:
```cpp
Line line = { L("Overhang speed"), L("...") };
line.label_path = "speed_settings_overhang_speed#slow-down-for-overhang";
line.append_option(optgroup->get_option("overhang_1_4_speed"));
optgroup->append_line(line);
```
```cpp
Line line = { L("Overhang speed"), L("...") };
line.label_path = "speed_settings_overhang_speed#slow-down-for-overhang";
line.append_option(optgroup->get_option("overhang_1_4_speed"));
optgroup->append_line(line);
```
## Formatting and Style

@@ -11,6 +11,8 @@ After GNUgettext is installed, it is recommended to add the path to gettext/bin
Full manual for GNUgettext can be seen here: [http://www.gnu.org/software/gettext/manual/gettext.html](http://www.gnu.org/software/gettext/manual/gettext.html)
## Scenarios for translators
### Scenario 1. How do I add a translation or fix an existing translation
1. Get PO-file 'OrcaSlicer_xx.pot' from corresponding sub-folder here:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 MiB

@@ -8,5 +8,4 @@ It also includes an Auto-generate points feature that automatically detects and
- **Head diameter**: Sets the diameter of the brim ear heads.
- **Max angle**: Defines the maximum angle at which brim ears will be applied with Auto-generate points.
- **Detection Radius**: Decrease to increase Brim Ears quantity. Sets the radius for detecting areas (using [RamerDouglasPeucker algorithm](https://en.wikipedia.org/wiki/Ramer%E2%80%93Douglas%E2%80%93Peucker_algorithm)) to apply brim ears with Auto-generate points.
- **Sectrion view**: Adjusts the section view height to better visualize brim ear placement.
- **Section view**: Adjusts the section view height to better visualize brim ear placement.

@@ -46,7 +46,7 @@ To check which patterns support multiline infill, see the Patterns Quick Referen
> [!NOTE]
> Orca's approach is different from other slicers that simply multiply the number of lines and material usage, generating a denser infill than expected.
><br>Orca Slicer keeps the cross-section constant for the set density.
> Orca Slicer keeps the cross-section constant for the set density.
>
>| Infill Density % | Infill Lines | Orca Density | Other Slicers Density |
>|--------------------|--------------|--------------|-----------------------|