Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Ultimaker/Cura.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/conan-package-create.yml4
-rw-r--r--.github/workflows/conan-package.yml2
-rw-r--r--.github/workflows/conan-recipe-export.yml15
-rw-r--r--.github/workflows/conan-recipe-version.yml31
-rw-r--r--.github/workflows/cura-installer.yml5
-rw-r--r--.gitignore2
-rw-r--r--GitVersion.yml15
-rw-r--r--conandata.yml184
-rw-r--r--cura/ApplicationMetadata.py11
-rwxr-xr-xcura/CuraApplication.py6
-rw-r--r--plugins/3MFReader/WorkspaceDialog.qml2
-rw-r--r--plugins/DigitalLibrary/src/DFFileExportAndUploadManager.py15
-rw-r--r--plugins/Marketplace/Marketplace.py11
-rw-r--r--requirements.txt24
-rw-r--r--resources/definitions/Mark2_for_Ultimaker2.def.json6
-rw-r--r--resources/definitions/anycubic_i3_mega_s.def.json21
-rw-r--r--resources/definitions/anycubic_kobra.def.json54
-rw-r--r--resources/definitions/anycubic_kobra_max.def.json54
-rw-r--r--resources/definitions/creality_ender3.def.json2
-rw-r--r--resources/definitions/creality_ender3s1.def.json38
-rw-r--r--resources/definitions/elegoo_neptune_2.def.json1
-rw-r--r--resources/definitions/elegoo_neptune_2D.def.json1
-rw-r--r--resources/definitions/fdmprinter.def.json2
-rw-r--r--resources/definitions/hctech_hc300-m1&m1h.def.json57
-rw-r--r--resources/definitions/hctech_hc300-m2h.def.json58
-rw-r--r--resources/definitions/hctech_hc300-m3.def.json58
-rw-r--r--resources/definitions/xyzprinting_da_vinci_pro_evo.def.json86
-rw-r--r--resources/extruders/anycubic_kobra_extruder_0.def.json15
-rw-r--r--resources/extruders/anycubic_kobra_max_extruder_0.def.json15
-rw-r--r--resources/extruders/hctech_hc300-m1&m1h_extruder_0.def.json15
-rw-r--r--resources/extruders/hctech_hc300-m2h_extruder_0.def.json27
-rw-r--r--resources/extruders/hctech_hc300-m2h_extruder_1.def.json27
-rw-r--r--resources/extruders/hctech_hc300-m3_extruder_0.def.json15
-rw-r--r--resources/extruders/xyzprinting_da_vinci_pro_evo_extruder_0.def.json15
-rw-r--r--resources/i18n/nl_NL/cura.po14
-rw-r--r--resources/meshes/flsun_qq_s.3mfbin226011 -> 319767 bytes
-rw-r--r--resources/meshes/hctech_hc300-m1&m1h.3mfbin0 -> 144429 bytes
-rw-r--r--resources/meshes/hctech_hc300-m2h.3mfbin0 -> 1043277 bytes
-rw-r--r--resources/meshes/hctech_hc300-m3.3mfbin0 -> 68077 bytes
-rw-r--r--resources/qml/Dialogs/AboutDialog.qml68
-rw-r--r--resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml4
-rw-r--r--resources/quality/anycubic_kobra/anycubic_kobra_abs.inst.cfg46
-rw-r--r--resources/quality/anycubic_kobra/anycubic_kobra_pla.inst.cfg41
-rw-r--r--resources/quality/anycubic_kobra/anycubic_kobra_tpu.inst.cfg45
-rw-r--r--resources/quality/anycubic_kobra_max/anycubic_kobra_max_pla.inst.cfg53
-rw-r--r--resources/quality/anycubic_kobra_max/anycubic_kobra_max_tpu.inst.cfg54
-rw-r--r--resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_coarse.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_draft.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_fine.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_normal.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_coarse.inst.cfg33
-rw-r--r--resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_draft.inst.cfg33
-rw-r--r--resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_fine.inst.cfg33
-rw-r--r--resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_normal.inst.cfg33
-rw-r--r--resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_coarse.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_draft.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_fine.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_normal.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_coarse.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_draft.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_fine.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_normal.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_coarse.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_draft.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_fine.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_normal.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_coarse.inst.cfg39
-rw-r--r--resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_draft.inst.cfg39
-rw-r--r--resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_fine.inst.cfg39
-rw-r--r--resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_normal.inst.cfg39
-rw-r--r--resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_coarse.inst.cfg32
-rw-r--r--resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_draft.inst.cfg32
-rw-r--r--resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_fine.inst.cfg32
-rw-r--r--resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_normal.inst.cfg32
-rw-r--r--resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_coarse.inst.cfg39
-rw-r--r--resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_draft.inst.cfg39
-rw-r--r--resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_fine.inst.cfg39
-rw-r--r--resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_normal.inst.cfg39
-rw-r--r--resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_coarse.inst.cfg36
-rw-r--r--resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_draft.inst.cfg36
-rw-r--r--resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_fine.inst.cfg36
-rw-r--r--resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_normal.inst.cfg36
-rw-r--r--resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_coarse.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_draft.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_fine.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_normal.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_coarse.inst.cfg33
-rw-r--r--resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_draft.inst.cfg33
-rw-r--r--resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_fine.inst.cfg33
-rw-r--r--resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_normal.inst.cfg33
-rw-r--r--resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_coarse.inst.cfg37
-rw-r--r--resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_draft.inst.cfg37
-rw-r--r--resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_fine.inst.cfg32
-rw-r--r--resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_normal.inst.cfg37
-rw-r--r--resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_coarse.inst.cfg34
-rw-r--r--resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_draft.inst.cfg34
-rw-r--r--resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_fine.inst.cfg34
-rw-r--r--resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_normal.inst.cfg34
-rw-r--r--resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_coarse.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_draft.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_fine.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_normal.inst.cfg35
-rw-r--r--resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.10_fine.inst.cfg17
-rw-r--r--resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.20_normal.inst.cfg17
-rw-r--r--resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.30_draft.inst.cfg17
-rw-r--r--resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.40_coarse.inst.cfg17
-rw-r--r--resources/texts/change_log.txt14
-rw-r--r--resources/variants/creality_ender3s1_0.2.inst.cfg12
-rw-r--r--resources/variants/creality_ender3s1_0.3.inst.cfg12
-rw-r--r--resources/variants/creality_ender3s1_0.4.inst.cfg12
-rw-r--r--resources/variants/creality_ender3s1_0.5.inst.cfg12
-rw-r--r--resources/variants/creality_ender3s1_0.6.inst.cfg12
-rw-r--r--resources/variants/creality_ender3s1_0.8.inst.cfg12
-rw-r--r--resources/variants/creality_ender3s1_1.0.inst.cfg12
-rw-r--r--resources/variants/xyzprinting_da_vinci_pro_evo_hs_0.40.inst.cfg13
-rw-r--r--resources/variants/xyzprinting_da_vinci_pro_evo_hsht_0.60.inst.cfg13
-rw-r--r--scripts/fix_app_qt_folder_names_for_codesign.py128
-rw-r--r--scripts/rename_cura_1_tags.sh14
118 files changed, 3097 insertions, 423 deletions
diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml
index b0e613493c..ac0333bc9f 100644
--- a/.github/workflows/conan-package-create.yml
+++ b/.github/workflows/conan-package-create.yml
@@ -92,10 +92,6 @@ jobs:
if: ${{ runner.os == 'Linux' }}
run: sudo apt install build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config -y
- - name: Clean Conan local cache
- if: ${{ inputs.conan_clean_local_cache }}
- run: conan remove "*" -f
-
- name: Get Conan configuration from branch
if: ${{ inputs.conan_config_branch != '' }}
run: conan config install https://github.com/Ultimaker/conan-config.git -a "-b ${{ inputs.conan_config_branch }}"
diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml
index 666ea5fe40..60994a7a36 100644
--- a/.github/workflows/conan-package.yml
+++ b/.github/workflows/conan-package.yml
@@ -41,7 +41,7 @@ on:
branches:
- main
- 'CURA-*'
- - '[1-9]+.[0-9]+'
+ - '[0-9]+.[0-9]+'
tags:
- '[0-9]+.[0-9]+.[0-9]+'
- '[0-9]+.[0-9]+-beta'
diff --git a/.github/workflows/conan-recipe-export.yml b/.github/workflows/conan-recipe-export.yml
index 9adca8ebb3..edf251b798 100644
--- a/.github/workflows/conan-recipe-export.yml
+++ b/.github/workflows/conan-recipe-export.yml
@@ -83,18 +83,21 @@ jobs:
run: conan export-pkg . ${{ inputs.recipe_id_full }}
- name: Export the Package
- if: ${{ inputs.conan_export_binaries != 'true' && github.event_name != 'pull_request' }}
+ if: ${{ inputs.conan_export_binaries != 'true' }}
run: conan export . ${{ inputs.recipe_id_full }}
- - name: Create the latest alias
- if: ${{ inputs.recipe_id_latest != '' && github.event_name != 'pull_request' }}
- run: conan alias ${{ inputs.recipe_id_latest }} ${{ inputs.recipe_id_full }}
+ - name: Remove the latest alias
+ if: ${{ inputs.recipe_id_latest != '' && runner.os == 'Linux' }}
+ run: |
+ conan remove ${{ inputs.recipe_id_latest }} -r cura -f || true
+ conan remove ${{ inputs.recipe_id_latest }} -r cura-ce -f || true
- - name: Create the pull request alias
- if: ${{ inputs.recipe_id_pr != '' && github.event_name == 'pull_request' }}
+ - name: Create the latest alias
+ if: ${{ inputs.recipe_id_latest != '' && always() }}
run: conan alias ${{ inputs.recipe_id_latest }} ${{ inputs.recipe_id_full }}
- name: Upload the Package(s)
+ if: always()
run: |
# Only use --all (upload binaries) for the cura repository
conan upload "*" -r cura --all -c
diff --git a/.github/workflows/conan-recipe-version.yml b/.github/workflows/conan-recipe-version.yml
index 243ebf490f..28e4751613 100644
--- a/.github/workflows/conan-recipe-version.yml
+++ b/.github/workflows/conan-recipe-version.yml
@@ -20,6 +20,10 @@ on:
description: "The full semver <Major>.<Minor>.<Patch>-<PreReleaseTag>+<BuildMetaData>"
value: ${{ jobs.get-semver.outputs.semver_full }}
+ is_release_branch:
+ description: "is current branch a release branch?"
+ value: ${{ jobs.get-semver.outputs.release_branch }}
+
recipe_user:
description: "The conan user"
value: ${{ jobs.get-semver.outputs.user }}
@@ -37,6 +41,7 @@ jobs:
recipe_id_full: ${{ steps.get-conan-broadcast-data.outputs.recipe_id_full }}
recipe_id_latest: ${{ steps.get-conan-broadcast-data.outputs.recipe_id_latest }}
semver_full: ${{ steps.get-conan-broadcast-data.outputs.semver_full }}
+ is_release_branch: ${{ steps.get-conan-broadcast-data.outputs.is_release_branch }}
user: ${{ steps.get-conan-broadcast-data.outputs.user }}
channel: ${{ steps.get-conan-broadcast-data.outputs.channel }}
@@ -45,7 +50,7 @@ jobs:
uses: actions/checkout@v3
with:
ref: ${{ github.head_ref }}
- fetch-depth: 3000
+ fetch-depth: 0
- name: Setup Python and pip
uses: actions/setup-python@v4
@@ -73,19 +78,24 @@ jobs:
event_name = "${{ github.event_name }}"
issue_number = "${{ github.ref }}".split('/')[2]
is_tag = "${{ github.ref_type }}" == "tag"
+ is_release_branch = False
# FIXME: for when we push a tag (such as an release)
+ channel = "testing"
if is_tag:
branch_version = tools.Version("${{ github.ref_name }}")
+ is_release_branch = True
+ channel = "_"
+ user = "_"
else:
try:
branch_version = tools.Version(repo.active_branch.name)
- channel = "stable"
except ConanException:
branch_version = tools.Version('0.0.0')
- if repo.active_branch.name == f"{branch_version.major}.{branch_version.minor}":
+ if "${{ github.ref_name }}" == f"{branch_version.major}.{branch_version.minor}":
channel = 'stable'
- elif repo.active_branch.name == "main" or repo.active_branch.name == "master":
+ is_release_branch = True
+ elif "${{ github.ref_name }}" in ("main", "master"):
channel = 'testing'
else:
channel = repo.active_branch.name.split("_")[0].replace("-", "_").lower()
@@ -122,10 +132,16 @@ jobs:
if event_name == "pull_request":
actual_version = f"{latest_branch_version.major}.{latest_branch_version.minor}.{latest_branch_version.patch}-{latest_branch_version.prerelease.lower()}+pr_{issue_number}_{no_commits}"
else:
+ if channel in ("stable", "_", ""):
+ channel_metadata = f"{no_commits}"
+ else:
+ channel_metadata = f"{channel}_{no_commits}"
+ # FIXME: for when we create a new release branch
if latest_branch_version.prerelease == "":
- actual_version = f"{latest_branch_version.major}.{latest_branch_version.minor}.{latest_branch_version.patch}-alpha+{no_commits}"
+ bump_up_minor = int(latest_branch_version.minor) + 1
+ actual_version = f"{latest_branch_version.major}.{latest_branch_version.minor}.{bump_up_minor}-alpha+{channel_metadata}"
else:
- actual_version = f"{latest_branch_version.major}.{latest_branch_version.minor}.{latest_branch_version.patch}-{latest_branch_version.prerelease.lower()}+{no_commits}"
+ actual_version = f"{latest_branch_version.major}.{latest_branch_version.minor}.{latest_branch_version.patch}-{latest_branch_version.prerelease.lower()}+{channel_metadata}"
# %% print to output
cmd_name = ["echo", f"::set-output name=name::{project_name}"]
@@ -140,6 +156,8 @@ jobs:
subprocess.call(cmd_id_latest)
cmd_semver_full = ["echo", f"::set-output name=semver_full::{actual_version}"]
subprocess.call(cmd_semver_full)
+ cmd_is_release_branch = ["echo", f"::set-output name=is_release_branch::{str(is_release_branch).lower()}"]
+ subprocess.call(cmd_is_release_branch)
print("::group::Conan Recipe Information")
print(f"name = {project_name}")
@@ -149,5 +167,6 @@ jobs:
print(f"recipe_id_full = {project_name}/{actual_version}@{user}/{channel}")
print(f"recipe_id_latest = {project_name}/latest@{user}/{channel}")
print(f"semver_full = {actual_version}")
+ print(f"is_release_branch = {str(is_release_branch).lower()}")
print("::endgroup::")
shell: python
diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml
index b633d49474..1fa6d538a3 100644
--- a/.github/workflows/cura-installer.yml
+++ b/.github/workflows/cura-installer.yml
@@ -5,11 +5,10 @@ on:
inputs:
cura_conan_version:
description: 'Cura Conan Version'
- # Fixme: default to cura/latest@testing (which is main)
- default: 'cura/latest@ultimaker/stable'
+ default: 'cura/latest@ultimaker/testing'
required: true
conan_args:
- description: 'Conan args: eq.: --require-override=curaengine/5.1.0-beta+123@ultimaker/testing'
+ description: 'Conan args: eq.: --require-override'
default: ''
required: false
conan_config:
diff --git a/.gitignore b/.gitignore
index 6412843522..26fe1ccf4a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -98,4 +98,4 @@ conan_imports_manifest.txt
conanbuildinfo.txt
graph_info.json
Ultimaker-Cura.spec
-/.run/
+.run/
diff --git a/GitVersion.yml b/GitVersion.yml
index b46d102dcf..6f94c14540 100644
--- a/GitVersion.yml
+++ b/GitVersion.yml
@@ -26,7 +26,7 @@ branches:
is-mainline: false
pre-release-weight: 0
release:
- regex: ^[\d].[\d]$
+ regex: ^[\d]+\.[\d]+$
mode: ContinuousDelivery
tag: beta
increment: None
@@ -37,6 +37,19 @@ branches:
is-release-branch: true
is-mainline: false
pre-release-weight: 30000
+ pull-request-main:
+ regex: ^(pull|pull\-requests|pr)[/-]
+ mode: ContinuousDelivery
+ tag: alpha+
+ increment: Inherit
+ prevent-increment-of-merged-branch-version: true
+ tag-number-pattern: '[/-](?<number>\d+)[-/]'
+ track-merge-target: true
+ source-branches: [ 'main' ]
+ tracks-release-branches: false
+ is-release-branch: false
+ is-mainline: false
+ pre-release-weight: 30000
ignore:
sha: [ ]
merge-message-formats: { }
diff --git a/conandata.yml b/conandata.yml
index b4fe8f102b..dd2c274fd9 100644
--- a/conandata.yml
+++ b/conandata.yml
@@ -194,187 +194,3 @@
Windows: "./icons/Cura.ico"
Macos: "./icons/cura.icns"
Linux: "./icons/cura-128.png"
-"5.1.0-beta":
- requirements:
- - "arcus/5.1.0"
- - "curaengine/(latest)@ultimaker/stable"
- - "savitar/5.1.0"
- - "pynest2d/5.1.0"
- - "uranium/(latest)@ultimaker/stable"
- - "fdm_materials/5.1.0"
- - "cura_binary_data/(latest)@ultimaker/stable"
- - "cpython/3.10.4"
- runinfo:
- entrypoint: "cura_app.py"
- pyinstaller:
- datas:
- cura_plugins:
- package: "cura"
- src: "plugins"
- dst: "share/cura/plugins"
- cura_resources:
- package: "cura"
- src: "resources"
- dst: "share/cura/resources"
- uranium_plugins:
- package: "uranium"
- src: "plugins"
- dst: "share/uranium/plugins"
- uranium_resources:
- package: "uranium"
- src: "resources"
- dst: "share/uranium/resources"
- uranium_um_qt_qml_um:
- package: "uranium"
- src: "site-packages/UM/Qt/qml/UM"
- dst: "PyQt6/Qt6/qml/UM"
- cura_binary_data:
- package: "cura_binary_data"
- src: "resources/cura/resources"
- dst: "share/cura/resources"
- uranium_binary_data:
- package: "cura_binary_data"
- src: "resources/uranium/resources"
- dst: "share/uranium/resources"
- windows_binary_data:
- package: "cura_binary_data"
- src: "windows"
- dst: "share/windows"
- fdm_materials:
- package: "fdm_materials"
- src: "materials"
- dst: "share/cura/resources/materials"
- tcl:
- package: "tcl"
- src: "lib/tcl8.6"
- dst: "tcl"
- tk:
- package: "tk"
- src: "lib/tk8.6"
- dst: "tk"
- binaries:
- curaengine:
- package: "curaengine"
- src: "bin"
- dst: "."
- binary: "CuraEngine"
- hiddenimports:
- - "pySavitar"
- - "pyArcus"
- - "pynest2d"
- - "PyQt6"
- - "PyQt6.QtNetwork"
- - "PyQt6.sip"
- - "logging.handlers"
- - "zeroconf"
- - "fcntl"
- - "stl"
- - "serial"
- collect_all:
- - "cura"
- - "UM"
- - "serial"
- - "Charon"
- - "sqlite3"
- - "trimesh"
- - "win32ctypes"
- - "PyQt6"
- - "PyQt6.QtNetwork"
- - "PyQt6.sip"
- - "stl"
- icon:
- Windows: "./icons/Cura.ico"
- Macos: "./icons/cura.icns"
- Linux: "./icons/cura-128.png"
-"cura_9342":
- requirements:
- - "arcus/5.1.0"
- - "curaengine/(latest)@ultimaker/stable"
- - "savitar/5.1.0"
- - "pynest2d/5.1.0"
- - "uranium/(latest)@ultimaker/stable"
- - "fdm_materials/5.1.0"
- - "cura_binary_data/(latest)@ultimaker/stable"
- - "cpython/3.10.4"
- runinfo:
- entrypoint: "cura_app.py"
- pyinstaller:
- datas:
- cura_plugins:
- package: "cura"
- src: "plugins"
- dst: "share/cura/plugins"
- cura_resources:
- package: "cura"
- src: "resources"
- dst: "share/cura/resources"
- uranium_plugins:
- package: "uranium"
- src: "plugins"
- dst: "share/uranium/plugins"
- uranium_resources:
- package: "uranium"
- src: "resources"
- dst: "share/uranium/resources"
- uranium_um_qt_qml_um:
- package: "uranium"
- src: "site-packages/UM/Qt/qml/UM"
- dst: "PyQt6/Qt6/qml/UM"
- cura_binary_data:
- package: "cura_binary_data"
- src: "resources/cura/resources"
- dst: "share/cura/resources"
- uranium_binary_data:
- package: "cura_binary_data"
- src: "resources/uranium/resources"
- dst: "share/uranium/resources"
- windows_binary_data:
- package: "cura_binary_data"
- src: "windows"
- dst: "share/windows"
- fdm_materials:
- package: "fdm_materials"
- src: "materials"
- dst: "share/cura/resources/materials"
- tcl:
- package: "tcl"
- src: "lib/tcl8.6"
- dst: "tcl"
- tk:
- package: "tk"
- src: "lib/tk8.6"
- dst: "tk"
- binaries:
- curaengine:
- package: "curaengine"
- src: "bin"
- dst: "."
- binary: "CuraEngine"
- hiddenimports:
- - "pySavitar"
- - "pyArcus"
- - "pynest2d"
- - "PyQt6"
- - "PyQt6.QtNetwork"
- - "PyQt6.sip"
- - "logging.handlers"
- - "zeroconf"
- - "fcntl"
- - "stl"
- - "serial"
- collect_all:
- - "cura"
- - "UM"
- - "serial"
- - "Charon"
- - "sqlite3"
- - "trimesh"
- - "win32ctypes"
- - "PyQt6"
- - "PyQt6.QtNetwork"
- - "PyQt6.sip"
- - "stl"
- icon:
- Windows: "./icons/Cura.ico"
- Macos: "./icons/cura.icns"
- Linux: "./icons/cura-128.png"
diff --git a/cura/ApplicationMetadata.py b/cura/ApplicationMetadata.py
index 78bda7c3d7..60d9201d8e 100644
--- a/cura/ApplicationMetadata.py
+++ b/cura/ApplicationMetadata.py
@@ -60,3 +60,14 @@ try:
except ImportError:
CuraAppDisplayName = DEFAULT_CURA_DISPLAY_NAME
+
+DEPENDENCY_INFO = {}
+try:
+ from pathlib import Path
+ conan_install_info = Path(__file__).parent.parent.joinpath("conan_install_info.json")
+ if conan_install_info.exists():
+ import json
+ with open(conan_install_info, "r") as f:
+ DEPENDENCY_INFO = json.loads(f.read())
+except:
+ pass
diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py
index aac1338444..eeaead4f71 100755
--- a/cura/CuraApplication.py
+++ b/cura/CuraApplication.py
@@ -820,6 +820,12 @@ class CuraApplication(QtApplication):
def run(self):
super().run()
+ if len(ApplicationMetadata.DEPENDENCY_INFO) > 0:
+ Logger.debug("Using Conan managed dependencies: " + ", ".join(
+ [dep["recipe"]["id"] for dep in ApplicationMetadata.DEPENDENCY_INFO["installed"] if dep["recipe"]["version"] != "latest"]))
+ else:
+ Logger.warning("Could not find conan_install_info.json")
+
Logger.log("i", "Initializing machine error checker")
self._machine_error_checker = MachineErrorChecker(self)
self._machine_error_checker.initialize()
diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml
index d00e12e9ee..4899c6873a 100644
--- a/plugins/3MFReader/WorkspaceDialog.qml
+++ b/plugins/3MFReader/WorkspaceDialog.qml
@@ -487,7 +487,7 @@ UM.Dialog
UM.Label
{
id: warningText
- text: "The material used in this project is currently not installed in Cura.<br/>Install the material profile and reopen the project."
+ text: catalog.i18nc("@label", "The material used in this project is currently not installed in Cura.<br/>Install the material profile and reopen the project.")
}
}
diff --git a/plugins/DigitalLibrary/src/DFFileExportAndUploadManager.py b/plugins/DigitalLibrary/src/DFFileExportAndUploadManager.py
index 69bf4b1233..4defd2f409 100644
--- a/plugins/DigitalLibrary/src/DFFileExportAndUploadManager.py
+++ b/plugins/DigitalLibrary/src/DFFileExportAndUploadManager.py
@@ -1,5 +1,6 @@
-# Copyright (c) 2021 Ultimaker B.V.
+# Copyright (c) 2022 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
+
import json
import threading
from json import JSONDecodeError
@@ -135,6 +136,9 @@ class DFFileExportAndUploadManager:
else:
Logger.log("e", "Wrong response type received. Aborting uploading file to the Digital Library")
return
+ if file_name not in self._file_upload_job_metadata:
+ Logger.error(f"API response for uploading doesn't match the file name we just uploaded: {file_name} was never uploaded.")
+ return
with self._message_lock:
self.progress_message.show()
self._file_upload_job_metadata[file_name]["file_upload_response"] = file_upload_response
@@ -335,10 +339,11 @@ class DFFileExportAndUploadManager:
self._handleNextUploadJob()
def _handleNextUploadJob(self):
- match self._upload_jobs:
- case [job, *jobs]:
- job.start()
- self._upload_jobs = jobs
+ try:
+ job = self._upload_jobs.pop(0)
+ job.start()
+ except IndexError:
+ pass # Empty list, do nothing.
def initializeFileUploadJobMetadata(self) -> Dict[str, Any]:
metadata = {}
diff --git a/plugins/Marketplace/Marketplace.py b/plugins/Marketplace/Marketplace.py
index b2c729c2cd..86910f8f4a 100644
--- a/plugins/Marketplace/Marketplace.py
+++ b/plugins/Marketplace/Marketplace.py
@@ -22,7 +22,6 @@ class Marketplace(Extension, QObject):
QObject.__init__(self, parent)
Extension.__init__(self)
self._window: Optional["QObject"] = None # If the window has been loaded yet, it'll be cached in here.
- self._plugin_registry: Optional[PluginRegistry] = None
self._package_manager = CuraApplication.getInstance().getPackageManager()
self._material_package_list: Optional[RemotePackageList] = None
@@ -81,9 +80,9 @@ class Marketplace(Extension, QObject):
If the window hadn't been loaded yet into Qt, it will be created lazily.
"""
if self._window is None:
- self._plugin_registry = PluginRegistry.getInstance()
- self._plugin_registry.pluginsEnabledOrDisabledChanged.connect(self.checkIfRestartNeeded)
- plugin_path = PluginRegistry.getInstance().getPluginPath(self.getPluginId())
+ plugin_registry = PluginRegistry.getInstance()
+ plugin_registry.pluginsEnabledOrDisabledChanged.connect(self.checkIfRestartNeeded)
+ plugin_path = plugin_registry.getPluginPath(self.getPluginId())
if plugin_path is None:
plugin_path = os.path.dirname(__file__)
path = os.path.join(plugin_path, "resources", "qml", "Marketplace.qml")
@@ -108,7 +107,7 @@ class Marketplace(Extension, QObject):
return
if self._package_manager.hasPackagesToRemoveOrInstall or \
- cast(PluginRegistry, self._plugin_registry).getCurrentSessionActivationChangedPlugins():
+ PluginRegistry.getInstance().getCurrentSessionActivationChangedPlugins():
self._restart_needed = True
else:
self._restart_needed = False
@@ -116,7 +115,7 @@ class Marketplace(Extension, QObject):
showRestartNotificationChanged = pyqtSignal()
- @pyqtProperty(bool, notify=showRestartNotificationChanged)
+ @pyqtProperty(bool, notify = showRestartNotificationChanged)
def showRestartNotification(self) -> bool:
return self._restart_needed
diff --git a/requirements.txt b/requirements.txt
index fa53220048..23b284a8a6 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,4 +1,4 @@
-### Direct requirements for Cura, Uranium and libCharon ###
+### Direct requirements for Uranium and libCharon ###
PyQt6-sip==13.2.1 \
--hash=sha256:b7bce59900b2e0a04f70246de2ccf79ee7933036b6b9183cf039b62eeae2b858 \
--hash=sha256:8b52d42e42e6e9f934ac7528cd154ac0210a532bb33fa1edfb4a8bbfb73ff88b \
@@ -76,12 +76,6 @@ scipy==1.8.1; \
--hash=sha256:70de2f11bf64ca9921fda018864c78af7147025e467ce9f4a11bc877266900a6 \
--hash=sha256:83606129247e7610b58d0e1e93d2c5133959e9cf93555d3c27e536892f1ba1f2 \
--hash=sha256:f3e7a8867f307e3359cc0ed2c63b61a1e33a19080f92fe377bc7d49f646f2ec1
-trimesh==3.9.36 \
- --hash=sha256:f01e8edab14d1999700c980c21a1546f37417216ad915a53be649d263130181e \
- --hash=sha256:8ac8bea693b3ee119f11b022fc9b9481c9f1af06cb38bc859bf5d16bbbe49b23
-sentry-sdk==0.13.5 \
- --hash=sha256:05285942901d38c7ce2498aba50d8e87b361fc603281a5902dda98f3f8c5e145 \
- --hash=sha256:c6b919623e488134a728f16326c6f0bcdab7e3f59e7f4c472a90eea4d6d8fe82
mypy==0.931 \
--hash=sha256:0038b21890867793581e4cb0d810829f5fd4441aa75796b53033af3aa30430ce \
--hash=sha256:1171f2e0859cfff2d366da2c7092b06130f232c636a3f7301e3feb8b41f6377d \
@@ -103,9 +97,6 @@ mypy==0.931 \
--hash=sha256:e839191b8da5b4e5d805f940537efcaa13ea5dd98418f06dc585d2891d228cf0 \
--hash=sha256:f9fe20d0872b26c4bba1c1be02c5340de1019530302cf2dcc85c7f9fc3252ae0 \
--hash=sha256:ff3bf387c14c805ab1388185dd22d6b210824e164d4bb324b195ff34e322d166
-pyserial==3.4 \
- --hash=sha256:6e2d401fdee0eab996cf734e67773a0143b932772ca8b42451440cfed942c627 \
- --hash=sha256:e0770fadba80c31013896c7e6ef703f72e7834965954a78e71a3049488d4d7d8
### Indirect requirements ###
chardet==3.0.4 \
@@ -117,8 +108,8 @@ idna==2.8 \
attrs==21.2.0 \
--hash=sha256:149e90d6d8ac20db7a955ad60cf0e6881a3f20d37096140088356da6c716b0b1 \
--hash=sha256:ef6aaac3ca6cd92904cdd0d83f629a15f18053ec84e6432106f7a4d04ae4f5fb
-requests==2.22.0 \
- --hash=sha256:11e007a8a2aa0323f5a921e9e6a2d7e4e67d9877e85773fba9ba6419025cbeb4 \
+requests==2.28.1 \
+ --hash=sha256:8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349 \
--hash=sha256:9cf5292fcd0f598c671cfc1e0d7d1a7f13bb8085e9a590f48c010551dc6c4b31
# twisted
Twisted==21.2.0 \
@@ -207,9 +198,9 @@ cffi==1.15.0 \
--hash=sha256:5e069f72d497312b24fcc02073d70cb989045d1c91cbd53979366077959933e0 \
--hash=sha256:00c878c90cb53ccfaae6b8bc18ad05d2036553e6d9d1d9dbcf323bbe83854ca3 \
--hash=sha256:0104fb5ae2391d46a4cb082abdd5c69ea4eab79d8d44eaaf79f1b1fd806ee4c2
-urllib3==1.25.9 \
- --hash=sha256:3018294ebefce6572a474f0604c2021e33b3fd8006ecd11d62107a5d2a963527 \
- --hash=sha256:88206b0eb87e6d677d424843ac5209e3fb9d0190d0ee169599165ec25e9d9115
+urllib3==1.26.9 \
+ --hash=sha256:aabaf16477806a5e1dd19aa41f8c2b7950dd3c746362d7e3223dbe6de6ac448e \
+ --hash=sha256:44ece4d53fb1706f667c9bd1c648f5469a2ec925fcf3a776667042d645472c14
mypy-extensions==0.4.3 \
--hash=sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d \
--hash=sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8
@@ -235,3 +226,6 @@ pywin32-ctypes==0.2.0; \
sys_platform=="win32" \
--hash=sha256:24ffc3b341d457d48e8922352130cf2644024a4ff09762a2261fd34c36ee5942 \
--hash=sha256:9dc2d991b3479cc2df15930958b674a48a227d5361d413827a4cfd0b5876fc98
+
+charset-normalizer==2.1.0; \
+ --hash=sha256:5189b6f22b01957427f35b6a08d9a0bc45b46d3788ef5a92e978433c7a35f8a5
diff --git a/resources/definitions/Mark2_for_Ultimaker2.def.json b/resources/definitions/Mark2_for_Ultimaker2.def.json
index 6ecc6bbda3..68498db423 100644
--- a/resources/definitions/Mark2_for_Ultimaker2.def.json
+++ b/resources/definitions/Mark2_for_Ultimaker2.def.json
@@ -158,8 +158,10 @@
"acceleration_topbottom": { "value": "math.ceil(acceleration_print * 500 / 4000)" },
"acceleration_wall": { "value": "math.ceil(acceleration_print * 1000 / 4000)" },
"acceleration_wall_0": { "value": "math.ceil(acceleration_wall * 500 / 1000)" },
- "jerk_enabled": { "value": true },
- "jerk_print": {"value": 12 },
+ "jerk_enabled":
+ {
+ "default_value": true
+ },
"jerk_travel":
{
"value": "jerk_print if magic_spiralize else 20"
diff --git a/resources/definitions/anycubic_i3_mega_s.def.json b/resources/definitions/anycubic_i3_mega_s.def.json
index bf14aed04c..2e972c78b6 100644
--- a/resources/definitions/anycubic_i3_mega_s.def.json
+++ b/resources/definitions/anycubic_i3_mega_s.def.json
@@ -29,7 +29,7 @@
"machine_center_is_zero": { "default_value": false },
"gantry_height": { "value": "0" },
"machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" },
- "machine_start_gcode": { "default_value": ";Profil Homepage: https://github.com/NilsRo/Cura_Anycubic_MegaS_Profile\n\n;Slicer Information - (Support for OctoPrint Slicer Estimator)\n;Slicer info:material_guid;{material_guid}\n;Slicer info:material_id;{material_id}\n;Slicer info:material_brand;{material_brand}\n;Slicer info:material_name;{material_name}\n;Slicer info:material_bed_temperature;{material_bed_temperature}\n;Slicer info:material_bed_temperature_layer_0;{material_bed_temperature_layer_0}\n;Slicer info:material_print_temperature;{material_print_temperature}\n;Slicer info:material_print_temperature_layer_0;{material_print_temperature_layer_0}\n;Slicer info:material_flow;{material_flow}\n;Slicer info:layer_height;{layer_height}\n;Slicer info:wall_thickness;{wall_thickness}\n;Slicer info:speed_print;{speed_print}\n;Slicer info:speed_topbottom;{speed_topbottom}\n;Slicer info:travel_speed;{travel_speed}\n;Slicer info:support;{support}\n;Slicer info:retraction_speed;{retraction_speed}\n;Slicer info:retraction_amount;{retraction_amount}\n;Slicer info:layer_height;{layer_height}\n;Slicer info:infill_pattern;{infill_pattern}\n;Slicer info:infill_sparse_density;{infill_sparse_density}\n;Slicer info:cool_fan_enabled;{cool_fan_enabled}\n;Slicer info:cool_fan_speed;{cool_fan_speed}\n;Slicer info:sliced_at;{day} {date} {time}\nG21 ; metric values \nG90 ; absolute positioning \nM82 ; set extruder to absolute mode \nM107 ; start with the fan off \nM140 S{material_bed_temperature_layer_0} ; Start heating the bed \nG4 S60 ; wait 1 minute \nM104 S{material_print_temperature_layer_0} ; start heating the hot end \nM190 S{material_bed_temperature_layer_0} ; wait for bed \nM109 S{material_print_temperature_layer_0} ; wait for hotend \nM300 S1000 P500 ; BEEP heating done \nG28 X0 Y10 Z0 ; move X/Y to min endstops \nM420 S1 ; Enable leveling \nM420 Z2.0 ; Set leveling fading height to 2 mm \nG0 Z0.15 ; lift nozzle a bit \nG92 E0 ; zero the extruded length \nG1 X50 E20 F500 ; Extrude 20mm of filament in a 5cm line. \nG92 E0 ; zero the extruded length again \nG1 E-2 F500 ; Retract a little \nG1 X120 F4000 ; Quickly wipe away from the filament line`" },
+ "machine_start_gcode": { "default_value": ";Profil Homepage: https://github.com/NilsRo/Cura_Anycubic_MegaS_Profile\n\n;Slicer Information - (Support for OctoPrint Slicer Estimator)\n;Slicer info:material_guid;{material_guid}\n;Slicer info:material_id;{material_id}\n;Slicer info:material_brand;{material_brand}\n;Slicer info:material_name;{material_name}\n;Slicer info:filament_cost;{filament_cost}\n;Slicer info:material_bed_temperature;{material_bed_temperature}\n;Slicer info:material_bed_temperature_layer_0;{material_bed_temperature_layer_0}\n;Slicer info:material_print_temperature;{material_print_temperature}\n;Slicer info:material_print_temperature_layer_0;{material_print_temperature_layer_0}\n;Slicer info:material_flow;{material_flow}\n;Slicer info:layer_height;{layer_height}\n;Slicer info:machine_nozzle_size;{machine_nozzle_size}\n;Slicer info:wall_thickness;{wall_thickness}\n;Slicer info:speed_print;{speed_print}\n;Slicer info:speed_topbottom;{speed_topbottom}\n;Slicer info:travel_speed;{travel_speed}\n;Slicer info:support;{support}\n;Slicer info:retraction_speed;{retraction_speed}\n;Slicer info:retraction_amount;{retraction_amount}\n;Slicer info:layer_height;{layer_height}\n;Slicer info:infill_pattern;{infill_pattern}\n;Slicer info:infill_sparse_density;{infill_sparse_density}\n;Slicer info:cool_fan_enabled;{cool_fan_enabled}\n;Slicer info:cool_fan_speed;{cool_fan_speed}\n;Slicer info:sliced_at;{day} {date} {time}\nG21 ; metric values \nG90 ; absolute positioning \nM82 ; set extruder to absolute mode \nM107 ; start with the fan off \nM140 S{material_bed_temperature_layer_0} ; Start heating the bed \nG4 S60 ; wait 1 minute \nM104 S{material_print_temperature_layer_0} ; start heating the hot end \nM190 S{material_bed_temperature_layer_0} ; wait for bed \nM109 S{material_print_temperature_layer_0} ; wait for hotend \nM300 S1000 P500 ; BEEP heating done \nG28 X0 Y10 Z0 ; move X/Y to min endstops \nM420 S1 ; Enable leveling \nM420 Z2.0 ; Set leveling fading height to 2 mm \nG0 Z0.15 ; lift nozzle a bit \nG92 E0 ; zero the extruded length \nG1 X50 E20 F500 ; Extrude 20mm of filament in a 5cm line. \nG92 E0 ; zero the extruded length again \nG1 E-2 F500 ; Retract a little \nG1 X50 F500 ; wipe away from the filament line\nG1 X100 F9000 ; Quickly wipe away from the filament line" },
"machine_end_gcode": { "default_value": "M104 S0 ; Extruder off \nM140 S0 ; Heatbed off \nM107 ; Fan off \nG91 ; relative positioning \nG1 E-5 F300 ; retract a little \nG1 Z+10 E-5 ; X-20 Y-20 F{travel_xy_speed} ; lift print head \nG28 X0 Y0 ; homing \nG1 Y180 F2000 ; reset feedrate \nM84 ; disable stepper motors \nG90 ; absolute positioning \nM300 S440 P200 ; Make Print Completed Tones \nM300 S660 P250 ; beep \nM300 S880 P300 ; beep" },
"machine_max_acceleration_x": { "value": 3000 },
@@ -47,10 +47,17 @@
"machine_max_jerk_e": { "value": 5 },
"material_diameter": { "default_value": 1.75 },
- "material_print_temperature_layer_0": { "value": "material_print_temperature + 5"},
+ "material_print_temperature": { "maximum_value_warning": 260 },
+ "material_print_temperature_layer_0": { "value": "material_print_temperature + 5", "maximum_value_warning": 260 },
"material_final_print_temperature": { "value": "material_print_temperature" },
+ "material_bed_temperature": { "maximum_value_warning": 110 },
+ "material_bed_temperature_layer_0": { "maximum_value_warning": 110 },
+
"material_flow": { "value": 100 },
+ "top_bottom_thickness": { "value": "layer_height_0 + layer_height * math.floor(1.2 / layer_height)" },
+ "wall_thickness": { "value": "line_width * 3 if line_width < 0.6 else line_width * 2" },
+
"acceleration_print": { "value": 1500 },
"acceleration_enabled": { "value": false },
"acceleration_travel": { "value": 3000 },
@@ -71,8 +78,8 @@
"speed_roofing": { "value": "speed_topbottom" },
"speed_travel": { "value": 100.0, "maximum_value_warning": 150.0, "maximum_value": 200.0 },
"speed_layer_0": { "value": "speed_topbottom if speed_topbottom < 20 else 20" },
- "speed_print_layer_0": { "value": "speed_topbottom if speed_topbottom < 20 else 20" },
- "speed_travel_layer_0": { "value": 100.0 },
+ "speed_print_layer_0": { "value": "speed_layer_0" },
+ "speed_travel_layer_0": { "value": "speed_travel" },
"speed_prime_tower": { "value": "speed_topbottom" },
"speed_support": { "value": "speed_wall_0" },
"speed_support_interface": { "value": "speed_topbottom" },
@@ -104,7 +111,7 @@
"travel_retract_before_outer_wall": { "value": true },
"cool_fan_full_at_height": { "value": "layer_height_0 + 2 * layer_height" },
- "cool_fan_speed": { "value": 70 },
+ "cool_fan_speed": { "value": 100 },
"cool_fan_speed_0": { "value": 30 },
"cool_fan_enabled": { "value": true },
@@ -137,8 +144,6 @@
"support_interface_pattern": { "value": "'grid'" },
"support_interface_skip_height": { "value": 0.2 },
"minimum_support_area": { "value": 2 },
- "minimum_interface_area": { "value": 10 },
- "top_bottom_thickness": { "value": "layer_height_0 + layer_height * math.floor(1.2 / layer_height)" },
- "wall_thickness": { "value": "line_width * 3" }
+ "minimum_interface_area": { "value": 10 }
}
}
diff --git a/resources/definitions/anycubic_kobra.def.json b/resources/definitions/anycubic_kobra.def.json
new file mode 100644
index 0000000000..cb80d0e248
--- /dev/null
+++ b/resources/definitions/anycubic_kobra.def.json
@@ -0,0 +1,54 @@
+{
+ "version": 2,
+ "name": "Anycubic Kobra",
+ "inherits": "fdmprinter",
+ "metadata":
+ {
+ "visible": true,
+ "author": "Jason Chen",
+ "manufacturer": "Anycubic",
+ "file_formats": "text/x-gcode",
+ "has_materials": true,
+ "preferred_material": "generic_pla",
+ "has_machine_quality": true,
+ "quality_definition": "anycubic_kobra",
+ "preferred_quality_type": "pla",
+ "machine_extruder_trains":
+ {
+ "0": "anycubic_kobra_extruder_0"
+ },
+ "firmware_file": "MarlinChiron.hex"
+ },
+
+ "overrides":
+ {
+ "machine_name":
+ {
+ "default_value": "Anycubic Kobra"
+ },
+ "machine_heated_bed":
+ {
+ "default_value": true
+ },
+ "machine_width":
+ {
+ "default_value": 222
+ },
+ "machine_height":
+ {
+ "default_value": 252
+ },
+ "machine_depth":
+ {
+ "default_value": 222
+ },
+ "machine_gcode_flavor":
+ {
+ "default_value": "RepRap (Marlin/Sprinter)"
+ },
+ "machine_start_gcode":
+ {
+ "default_value": "G28 ;Home\nG1 Z15.0 F1200 ;Move the platform down 15mm\n;Prime the extruder\nG92 E0\nG1 F200 E3\nG92 E0"
+ }
+ }
+}
diff --git a/resources/definitions/anycubic_kobra_max.def.json b/resources/definitions/anycubic_kobra_max.def.json
new file mode 100644
index 0000000000..034fc3db2b
--- /dev/null
+++ b/resources/definitions/anycubic_kobra_max.def.json
@@ -0,0 +1,54 @@
+{
+ "version": 2,
+ "name": "Anycubic Kobra Max",
+ "inherits": "fdmprinter",
+ "metadata":
+ {
+ "visible": true,
+ "author": "Jason Chen",
+ "manufacturer": "Anycubic",
+ "file_formats": "text/x-gcode",
+ "has_materials": true,
+ "preferred_material": "generic_pla",
+ "has_machine_quality": true,
+ "quality_definition": "anycubic_kobra_max",
+ "preferred_quality_type": "pla",
+ "machine_extruder_trains":
+ {
+ "0": "anycubic_kobra_max_extruder_0"
+ },
+ "firmware_file": "MarlinChiron.hex"
+ },
+
+ "overrides":
+ {
+ "machine_name":
+ {
+ "default_value": "Anycubic Kobra Max"
+ },
+ "machine_heated_bed":
+ {
+ "default_value": true
+ },
+ "machine_width":
+ {
+ "default_value": 402
+ },
+ "machine_height":
+ {
+ "default_value": 452
+ },
+ "machine_depth":
+ {
+ "default_value": 402
+ },
+ "machine_gcode_flavor":
+ {
+ "default_value": "RepRap (Marlin/Sprinter)"
+ },
+ "machine_start_gcode":
+ {
+ "default_value": "G28 ;Home\nG1 Z15.0 F1200 ;Move the platform down 15mm\n;Prime the extruder\nG92 E0\nG1 F200 E3\nG92 E0"
+ }
+ }
+}
diff --git a/resources/definitions/creality_ender3.def.json b/resources/definitions/creality_ender3.def.json
index c10c74c52f..6b13efcb1e 100644
--- a/resources/definitions/creality_ender3.def.json
+++ b/resources/definitions/creality_ender3.def.json
@@ -1,5 +1,5 @@
{
- "name": "Creality Ender-3",
+ "name": "Creality Ender-3 / Ender-3 v2",
"version": 2,
"inherits": "creality_base",
"metadata": {
diff --git a/resources/definitions/creality_ender3s1.def.json b/resources/definitions/creality_ender3s1.def.json
new file mode 100644
index 0000000000..a9a052e973
--- /dev/null
+++ b/resources/definitions/creality_ender3s1.def.json
@@ -0,0 +1,38 @@
+{
+ "name": "Creality Ender-3 S1",
+ "version": 2,
+ "inherits": "creality_base",
+ "metadata": {
+ "quality_definition": "creality_base",
+ "visible": true
+ },
+ "overrides": {
+ "machine_name": { "default_value": "Creality Ender-3 S1" },
+ "machine_width": { "default_value": 220 },
+ "machine_depth": { "default_value": 220 },
+ "machine_height": { "default_value": 270 },
+ "machine_head_with_fans_polygon": { "default_value": [
+ [-26, 34],
+ [-26, -32],
+ [32, -32],
+ [32, 34]
+ ]
+ },
+
+ "gantry_height": { "value": 25 },
+
+ "speed_print": {"value": 50},
+ "speed_layer_0": {"value": 25},
+ "speed_travel": { "value": 150 },
+ "retraction_amount": {"value": 0.8},
+ "retraction_speed": { "default_value": 40},
+
+ "acceleration_enabled": {"value": true},
+ "acceleration_travel": {"value": 2000},
+ "retraction_extrusion_window": {"value": 1.5},
+
+ "machine_start_gcode": {
+ "default_value": "; Ender 3 S1 Start G-code\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nG1 Z10.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0 Y0\n\nM104 S{material_print_temperature_layer_0}\nM190 S{material_bed_temperature_layer_0}\nM109 S{material_print_temperature_layer_0}\n\nG1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position\nG1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first line\nG1 X0.4 Y200.0 Z0.3 F5000.0 ; Move to side a little\nG1 X0.4 Y20 Z0.3 F1500.0 E30 ; Draw the second line\nG92 E0 ; Reset Extruder\nG1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed\nG1 X5 Y20 Z0.3 F5000.0 ; Move over to prevent blob squish\n"
+ }
+ }
+}
diff --git a/resources/definitions/elegoo_neptune_2.def.json b/resources/definitions/elegoo_neptune_2.def.json
index 7f52c0aecf..8e564289f5 100644
--- a/resources/definitions/elegoo_neptune_2.def.json
+++ b/resources/definitions/elegoo_neptune_2.def.json
@@ -38,7 +38,6 @@
"raft_airgap":{"default_value": 0.25},
"brim_width":{"default_value": 5},
"skin_angles":{"default_value": [45, 135]},
- "infill_pattern":{"value": "gyroid"},
"machine_gcode_flavor": {"default_value": "RepRap (Marlin/Sprinter)"},
"machine_start_gcode": {"default_value": ";simage\n;gimage\nG28 ;home\nG92 E0 ;Reset Extruder\nG1 Z4.0 F3000 ;Move Z Axis up\nG92 E0 ;Reset Extruder\nG1 X1.1 Y20 Z0.28 F5000.0 ;Move to start position\nG1 X1.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X1.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X1.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up"},
"machine_end_gcode": {"default_value": "G91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-2 Z0.2 F1600 ;Retract and raise Z\nG1 X5 Y5 F3000 ;Wipe out\nG1 Z10 ;Raise Z more\nG90 ;Absolute positionning\nG1 X0 Y{machine_depth} ;Present print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z"}
diff --git a/resources/definitions/elegoo_neptune_2D.def.json b/resources/definitions/elegoo_neptune_2D.def.json
index be784223f2..78e87d6f40 100644
--- a/resources/definitions/elegoo_neptune_2D.def.json
+++ b/resources/definitions/elegoo_neptune_2D.def.json
@@ -47,7 +47,6 @@
"raft_airgap":{"default_value": 0.25},
"brim_width":{"default_value": 5},
"skin_angles":{"default_value": [45, 135]},
- "infill_pattern":{"value": "gyroid"},
"machine_gcode_flavor": {"default_value": "RepRap (Marlin/Sprinter)"},
"machine_start_gcode": {"default_value": ";simage\n;gimage\nG28 ;home\n;G29 ;Run ABL\n;M420 S1 ;Enable ABL mesh\nG92 E0 ;Reset Extruder\nG1 Z4.0 F3000 ;Move Z Axis up\nG92 E0 ;Reset Extruder\nG1 X2.0 Y20 Z0.28 F5000.0 ;Move to start position\nG1 E90 F1200 ;Load filament\nG92 E0 ;Reset Extruder\nG1 X2.0 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X2.3 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X2.3 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up"},
"machine_end_gcode": {"default_value": "G91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-80 Z0.2 F1600 ;Retract and raise Z\nG1 X5 Y5 F3000 ;Wipe out\nG1 Z10 ;Raise Z more\nG90 ;Absolute positionning\nG1 X0 Y{machine_depth} ;Present print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z"}
diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json
index 823b2f0b4f..0c939e03f2 100644
--- a/resources/definitions/fdmprinter.def.json
+++ b/resources/definitions/fdmprinter.def.json
@@ -1243,7 +1243,7 @@
"min_odd_wall_line_width":
{
"label": "Minimum Odd Wall Line Width",
- "description": "The minimum line width for middle line gap filler polyline walls. This setting determines at which model thickness we switch from printing two wall lines, to printing two outer walls and a single central wall in the middle. A higher Minimum Odd Wall Line Width leads to a higher maximum even wall line width. The maximum odd wall line width is calculated as 2 * Minimum Even Wall Line Width,",
+ "description": "The minimum line width for middle line gap filler polyline walls. This setting determines at which model thickness we switch from printing two wall lines, to printing two outer walls and a single central wall in the middle. A higher Minimum Odd Wall Line Width leads to a higher maximum even wall line width. The maximum odd wall line width is calculated as 2 * Minimum Even Wall Line Width.",
"unit": "mm",
"minimum_value_warning": ".5 * max(wall_line_width_0, wall_line_width_x)",
"maximum_value_warning": "min(wall_line_width_0, wall_line_width_x)",
diff --git a/resources/definitions/hctech_hc300-m1&m1h.def.json b/resources/definitions/hctech_hc300-m1&m1h.def.json
new file mode 100644
index 0000000000..188ed3e7e7
--- /dev/null
+++ b/resources/definitions/hctech_hc300-m1&m1h.def.json
@@ -0,0 +1,57 @@
+{
+ "version": 2,
+ "name": "HCTECH_HC300-M1&M1H",
+ "inherits": "fdmprinter",
+ "metadata": {
+ "visible": true,
+ "author": "HCTECH",
+ "manufacturer": "HCTECH",
+ "file_formats": "text/x-gcode",
+ "platform": "hctech_hc300-m1&m1h.3mf",
+ "has_machine_quality": false,
+ "machine_extruder_trains": {
+ "0": "hctech_hc300-m1&m1h_extruder_0"
+ }
+ },
+
+ "overrides": {
+ "machine_head_with_fans_polygon": { "default_value": [
+ [-61, 86],
+ [-61, -31],
+ [21, -31],
+ [21, 86]
+ ] },
+ "machine_name": { "default_value": "HCTECH HC300-M1&M1H" },
+ "machine_extruder_count": { "default_value": 1 },
+ "machine_heated_bed": { "default_value": true },
+ "machine_width": { "default_value": 300 },
+ "machine_depth": { "default_value": 300 },
+ "machine_height": { "default_value": 300 },
+ "machine_center_is_zero": { "default_value": false },
+ "retraction_amount": {
+ "default_value": 0.3,
+ "maximum_value_warning": 2.0
+ },
+ "adhesion_type": { "default_value": "skirt" },
+ "retraction_speed": { "default_value": 35},
+ "travel_avoid_supports": { "value": true },
+ "travel_retract_before_outer_wall": { "value": true },
+ "retraction_enable": { "value": true },
+
+ "gantry_height": { "value": "55" },
+ "speed_print": { "default_value": 60.0 } ,
+
+ "material_diameter": { "default_value": 1.75 },
+
+ "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" },
+ "machine_start_gcode": { "default_value": "G1 Z2 ;Raise Z\nG28 X Y ;Home XY\nG92 E0 ;Reset Extruder\nG1 E-1 F2400 ;Retract\nG92 E0 ;Reset Extruder\nG28 Z ;home Z\nG29 ; Measure the bed\nM500 ; Store to EEPROM\nG1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z0.36 F5000.0 ; Move to start position\nG1 X0.1 Y200.0 Z0.36 F1500.0 E15 ; Draw the first line\nG1 X0.4 Y200.0 Z0.36 F5000.0 ; Move to side a little\nG1 X0.4 Y20 Z0.36 F1500.0 E30 ; Draw the second line\nG92 E0 ; Reset Extruder" },
+ "machine_end_gcode": { "default_value": "G91 ;Relative positioning\nG1 E-1 F2700 ;Retract a bit\nG1 Z1 E-1 F2400 ;Retract and raise Z\nG1 Z2 ;Raise Z\nG90 ;Absolute positioning\nG12 P1;clean nozzle\nG1 X5 Y300 ;Return to Start Point\nM106 S0 ;Switch off part cooling fan\nM104 S0 ;turn off temperature\nM140 S0 ;turn off Heated Bed\nM84 X Y E ;Disable all steppers but Z\nM81 ;turn-off power" },
+
+ "cool_fan_speed": { "value": 75 },
+ "cool_fan_enabled": { "value": true },
+
+ "line_width": { "value": 0.38 },
+ "travel_avoid_distance": { "value": 1 },
+ "infill_before_walls": { "value": false }
+ }
+}
diff --git a/resources/definitions/hctech_hc300-m2h.def.json b/resources/definitions/hctech_hc300-m2h.def.json
new file mode 100644
index 0000000000..d08258c7c6
--- /dev/null
+++ b/resources/definitions/hctech_hc300-m2h.def.json
@@ -0,0 +1,58 @@
+{
+ "version": 2,
+ "name": "HCTECH_HC300-M2H",
+ "inherits": "fdmprinter",
+ "metadata": {
+ "visible": true,
+ "author": "HCTECH",
+ "manufacturer": "HCTECH",
+ "file_formats": "text/x-gcode",
+ "platform": "hctech_hc300-m2h.3mf",
+ "has_machine_quality": false,
+ "machine_extruder_trains": {
+ "0": "hctech_hc300-m2h_extruder_0",
+ "1": "hctech_hc300-m2h_extruder_1"
+ }
+ },
+
+ "overrides": {
+ "machine_head_with_fans_polygon": { "default_value": [
+ [-61, 86],
+ [-61, -37],
+ [85, -37],
+ [85, 86]
+ ] },
+ "machine_name": { "default_value": "HCTECH HC300-M2H" },
+ "machine_extruder_count": { "default_value": 2 },
+ "machine_heated_bed": { "default_value": true },
+ "machine_width": { "default_value": 300 },
+ "machine_depth": { "default_value": 300 },
+ "machine_height": { "default_value": 300 },
+ "machine_center_is_zero": { "default_value": false },
+ "retraction_amount": {
+ "default_value": 0.3,
+ "maximum_value_warning": 2.0
+ },
+ "adhesion_type": { "default_value": "skirt" },
+ "retraction_speed": { "default_value": 35},
+ "travel_avoid_supports": { "value": true },
+ "travel_retract_before_outer_wall": { "value": true },
+ "retraction_enable": { "value": true },
+
+ "gantry_height": { "value": "55" },
+ "speed_print": { "default_value": 60.0 } ,
+
+ "material_diameter": { "default_value": 1.75 },
+
+ "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" },
+ "machine_start_gcode": { "default_value": "G1 Z2 ;Raise Z\nG28 X Y ;Home XY\nT1 ;switch to right extruder\nG1 X5 Y319 F4000 ;Move to Start Position\nG92 E0 ;Reset Extruder\nG1 E20 F60 ;extrude\nM400 ;Wait move\nG92 E0 ;Reset Extruder\nG1 E-2 F2700 ;Retract\nG92 E0 ;Reset Extruder\nG1 X150 F5000 ;Clean Nozzle\nG1 X5 ;Clean Nozzle\nG1 X220 ;Repeat\nG1 X5 ;Back to start posotion\nT0 ;switch to left extruder\nG1 X5 Y319 F4000 ;Move to Start Position\nG92 E0 ;Reset Extruder\nG1 E20 F60 ;extrude\nM400 ;Wait move\nG92 E0 ;Reset Extruder\nG4 S15 ;Wait 15s\nG1 E-2 F2700; Retract\nG92 E0 ;Reset Extruder\nG1 X150 F5000 ;Clean Nozzle\nG1 X5 ;Clean nozzle\nG1 X220 ;Repeat\nG1 X5 ;Back to start position\nG28 Z ;home Z\nG29 ;Measure the bed\nM500 ;Store parameters\nG1 X0 Y300 F4000 ;Move to corner" },
+ "machine_end_gcode": { "default_value": "G91 ;Relative positioning\nG1 E-1 F2700 ;Retract a bit\nG1 Z1 E-1 F2400 ;Retract and raise Z\nG1 Z2 ;Raise Z\nG90 ;Absolute positioning\nG12 ;clean nozzle\nG1 X5 Y319 ;Return to Start Point\nM106 S0 ;Switch off part cooling fan\nM104 S0 ;turn off temperature\nM140 S0 ;turn off Heated Bed\nM84 X Y E ;Disable all steppers but Z\nM81 ;turn-off power" },
+
+ "cool_fan_speed": { "value": 75 },
+ "cool_fan_enabled": { "value": true },
+
+ "line_width": { "value": 0.38 },
+ "travel_avoid_distance": { "value": 1 },
+ "infill_before_walls": { "value": false }
+ }
+}
diff --git a/resources/definitions/hctech_hc300-m3.def.json b/resources/definitions/hctech_hc300-m3.def.json
new file mode 100644
index 0000000000..cbbae35cfa
--- /dev/null
+++ b/resources/definitions/hctech_hc300-m3.def.json
@@ -0,0 +1,58 @@
+{
+ "version": 2,
+ "name": "HCTECH_HC300-M3",
+ "inherits": "fdmprinter",
+ "metadata": {
+ "visible": true,
+ "author": "HCTECH",
+ "manufacturer": "HCTECH",
+ "file_formats": "text/x-gcode",
+ "platform": "hctech_hc300-m3.3mf",
+ "has_machine_quality": false,
+ "machine_extruder_trains": {
+ "0": "hctech_hc300-m3_extruder_0"
+ }
+ },
+
+ "overrides": {
+ "machine_head_with_fans_polygon":
+ { "default_value": [
+ [-49, 36],
+ [-36, -29],
+ [36, -29],
+ [36, 49]
+ ]
+ },
+ "machine_name": { "default_value": "HCTECH HC300-M3" },
+ "machine_extruder_count": { "default_value": 1 },
+ "machine_heated_bed": { "default_value": true },
+ "machine_width": { "default_value": 300 },
+ "machine_depth": { "default_value": 300 },
+ "machine_height": { "default_value": 300 },
+ "machine_center_is_zero": { "default_value": false },
+ "retraction_amount": {
+ "default_value": 3,
+ "maximum_value_warning": 8
+ },
+ "adhesion_type": { "default_value": "skirt" },
+ "retraction_speed": { "default_value": 35},
+ "travel_avoid_supports": { "value": true },
+ "travel_retract_before_outer_wall": { "value": true },
+ "retraction_enable": { "value": true },
+
+ "gantry_height": { "value": "55" },
+ "speed_print": { "default_value": 60.0 } ,
+
+ "material_diameter": { "default_value": 1.75 },
+ "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" },
+ "machine_start_gcode": { "default_value": "G28 X Y ;Home XY\nG92 E0 ;Reset Extruder\nG1 E-1 F2400 ;Retract\nG92 E0 ;Reset Extruder\nG28 Z ;home Z\nG29 ; Measure the bed\nM500 ; Store to EEPROM\nG1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z0.36 F5000.0 ; Move to start position\nG1 X0.1 Y200.0 Z0.36 F1500.0 E15 ; Draw the first line\nG1 X0.4 Y200.0 Z0.36 F5000.0 ; Move to side a little\nG1 X0.4 Y20 Z0.36 F1500.0 E30 ; Draw the second line\nG92 E0 ; Reset Extruder" },
+ "machine_end_gcode": { "default_value": "G91 ;Relative positioning\nG1 E-2 F2700 ;Retract a bit\nG1 Z1 E-2 F2400 ;Retract and raise Z\nG1 Z2 ;Raise Z\nG90 ;Absolute positioning\nG1 X5 Y290 ;Return to Start Point\nM106 S0 ;Switch off part cooling fan\nM104 S0 ;turn off temperature\nM140 S0 ;turn off Heated Bed\nM84 X Y E ;Disable all steppers but Z" },
+
+ "cool_fan_speed": { "value": 75 },
+ "cool_fan_enabled": { "value": true },
+
+ "line_width": { "value": 0.38 },
+ "travel_avoid_distance": { "value": 1 },
+ "infill_before_walls": { "value": false }
+ }
+}
diff --git a/resources/definitions/xyzprinting_da_vinci_pro_evo.def.json b/resources/definitions/xyzprinting_da_vinci_pro_evo.def.json
new file mode 100644
index 0000000000..f00ab8b0c2
--- /dev/null
+++ b/resources/definitions/xyzprinting_da_vinci_pro_evo.def.json
@@ -0,0 +1,86 @@
+{
+ "version": 2,
+ "name": "XYZprinting da Vinci Pro EVO",
+ "inherits": "xyzprinting_base",
+ "metadata": {
+ "author": "XYZprinting Software",
+ "manufacturer": "XYZprinting",
+ "visible": true,
+ "file_formats": "text/x-gcode",
+ "has_machine_quality": true,
+ "has_materials": true,
+ "has_variants": true,
+ "supports_usb_connection": true,
+ "preferred_quality_type": "normal",
+ "quality_definition": "xyzprinting_da_vinci_pro_evo",
+ "preferred_variant_name": "Hardened Steel 0.4mm Nozzle",
+ "variants_name": "Nozzle Type",
+ "machine_extruder_trains": {
+ "0": "xyzprinting_da_vinci_pro_evo_extruder_0"
+ }
+ },
+
+ "overrides": {
+ "machine_name": { "default_value": "XYZprinting da Vinci Pro EVO" },
+ "machine_shape": { "default_value": "rectangular"},
+ "machine_heated_bed": { "default_value": true },
+ "machine_width": { "default_value": 220.00 },
+ "machine_depth": { "default_value": 200.00 },
+ "machine_height": { "default_value":200.00 },
+ "machine_center_is_zero": { "default_value": false },
+ "machine_head_with_fans_polygon": {
+ "default_value": [
+ [ -20, -10 ],
+ [ -20, 10 ],
+ [ 10, 10 ],
+ [ 10, -10 ]
+ ]
+ },
+ "retraction_extrusion_window": { "value": "1" },
+ "retraction_count_max": { "value": "25" },
+ "speed_layer_0" : {"value" : 10 },
+ "speed_wall_x" : { "value": "speed_print" },
+ "speed_wall_0": { "value": "math.ceil(speed_wall * 20 / 30)" },
+ "skin_overlap": { "value": "15" },
+ "skin_monotonic" : { "value": true },
+ "skin_material_flow": { "value": "97" },
+ "brim_width": { "value": "10" },
+ "line_width" : { "value": "0.35" },
+ "wall_line_width_x" : { "value": "0.35" },
+ "infill_before_walls": { "value": false },
+ "infill_line_width" : { "value": "0.4" },
+ "infill_overlap": { "value": "0" },
+ "infill_pattern": { "value": "'zigzag' if infill_sparse_density > 80 else 'triangles'" },
+ "infill_wipe_dist": { "value": "0" },
+ "infill_wipe_dist": { "value": "0" },
+ "wall_thickness" : { "value": "1" },
+ "acceleration_enabled" : {"value" : true},
+ "acceleration_layer_0": { "value": "acceleration_topbottom" },
+ "acceleration_prime_tower": { "value": "math.ceil(acceleration_print * 2000 / 3000)" },
+ "acceleration_print": { "value": "3000" },
+ "acceleration_travel": { "value": "3000" },
+ "acceleration_support": { "value": "math.ceil(acceleration_print * 2000 / 3000)" },
+ "acceleration_support_interface": { "value": "acceleration_topbottom" },
+ "acceleration_topbottom": { "value": "math.ceil(acceleration_print * 500 / 3000)" },
+ "acceleration_wall": { "value": "math.ceil(acceleration_print * 1000 / 3000)" },
+ "acceleration_wall_0": { "value": "math.ceil(acceleration_wall * 500 / 1000)" },
+ "jerk_enabled" : {"value" : true},
+ "material_flow_layer_0": {"value": 120},
+ "cool_fan_enabled": { "default_value": true },
+ "cool_fan_speed_0": { "value": 100 },
+ "cool_min_speed" : {"value" : 5 },
+ "brim_line_count": { "value" : 5 },
+ "infill_before_walls": { "value": false },
+ "optimize_wall_printing_order": { "value": "True" },
+ "skirt_line_count": { "default_value" : 5 },
+ "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" },
+ "machine_start_gcode": {
+ "default_value": "M191\nG28 ; home all axes\nG1 Z15 F5000 ; lift nozzle\nG92 E0\nG1 F200 E3\n"
+ },
+ "machine_end_gcode": {
+ "default_value": "M106 P1 S255 ; turn on fan\nG92 E0\nG28; home X,Y,Z axis\nM84 ; disable motors\n"
+ },
+ "multiple_mesh_overlap": { "value": "0" },
+ "wall_0_inset": { "value": "0" }
+ }
+}
diff --git a/resources/extruders/anycubic_kobra_extruder_0.def.json b/resources/extruders/anycubic_kobra_extruder_0.def.json
new file mode 100644
index 0000000000..c9053ffa2e
--- /dev/null
+++ b/resources/extruders/anycubic_kobra_extruder_0.def.json
@@ -0,0 +1,15 @@
+{
+ "version": 2,
+ "name": "Extruder 1",
+ "inherits": "fdmextruder",
+ "metadata": {
+ "machine": "anycubic_kobra",
+ "position": "0"
+ },
+
+ "overrides": {
+ "extruder_nr": { "default_value": 0 },
+ "machine_nozzle_size": { "default_value": 0.4 },
+ "material_diameter": { "default_value": 1.75 }
+ }
+}
diff --git a/resources/extruders/anycubic_kobra_max_extruder_0.def.json b/resources/extruders/anycubic_kobra_max_extruder_0.def.json
new file mode 100644
index 0000000000..69cdddf370
--- /dev/null
+++ b/resources/extruders/anycubic_kobra_max_extruder_0.def.json
@@ -0,0 +1,15 @@
+{
+ "version": 2,
+ "name": "Extruder 1",
+ "inherits": "fdmextruder",
+ "metadata": {
+ "machine": "anycubic_kobra_max",
+ "position": "0"
+ },
+
+ "overrides": {
+ "extruder_nr": { "default_value": 0 },
+ "machine_nozzle_size": { "default_value": 0.4 },
+ "material_diameter": { "default_value": 1.75 }
+ }
+}
diff --git a/resources/extruders/hctech_hc300-m1&m1h_extruder_0.def.json b/resources/extruders/hctech_hc300-m1&m1h_extruder_0.def.json
new file mode 100644
index 0000000000..c950db18ec
--- /dev/null
+++ b/resources/extruders/hctech_hc300-m1&m1h_extruder_0.def.json
@@ -0,0 +1,15 @@
+{
+ "version": 2,
+ "name": "Extruder 1",
+ "inherits": "fdmextruder",
+ "metadata": {
+ "machine": "hctech_hc300-m1&m1h",
+ "position": "0"
+ },
+
+ "overrides": {
+ "extruder_nr": { "default_value": 0 },
+ "material_diameter": { "default_value": 1.75 },
+ "machine_nozzle_size": { "default_value": 0.4 }
+ }
+}
diff --git a/resources/extruders/hctech_hc300-m2h_extruder_0.def.json b/resources/extruders/hctech_hc300-m2h_extruder_0.def.json
new file mode 100644
index 0000000000..1a718401cb
--- /dev/null
+++ b/resources/extruders/hctech_hc300-m2h_extruder_0.def.json
@@ -0,0 +1,27 @@
+{
+ "version": 2,
+ "name": "Left Extruder",
+ "inherits": "fdmextruder",
+ "metadata": {
+ "machine": "hctech_hc300-m2h",
+ "position": "0"
+ },
+
+ "overrides": {
+ "extruder_nr": {
+ "default_value": 0,
+ "maximum_value": "1"
+ },
+ "machine_nozzle_offset_x": { "default_value": 0.0 },
+ "machine_nozzle_offset_y": { "default_value": 0.0 },
+ "material_diameter": { "default_value": 1.75 },
+ "machine_nozzle_size": { "default_value": 0.4 },
+ "machine_extruder_start_code": {
+ "default_value": "G1 X5 Y319 ;move to wait posiotion\nT0 ;switch to extruder 1\nM109 S{material_print_temperature}\nG1 F5000\nG12 ;clean nozzle\nG1 X0 Y300 F4800 ;move to start point"
+ },
+ "machine_extruder_end_code": {
+ "default_value": "G92 E0 ;reset extruder distance\nG1 F800 E-1 ;retract\nG92 E0 ;reset extruder distance\nG1 X0 Y300 F4800 ;move to start position\nG1 X5 Y319 ;move to wait posiotion"
+ },
+ "machine_extruder_cooling_fan_number": { "default_value": 0 }
+ }
+}
diff --git a/resources/extruders/hctech_hc300-m2h_extruder_1.def.json b/resources/extruders/hctech_hc300-m2h_extruder_1.def.json
new file mode 100644
index 0000000000..616f2c2d27
--- /dev/null
+++ b/resources/extruders/hctech_hc300-m2h_extruder_1.def.json
@@ -0,0 +1,27 @@
+{
+ "version": 2,
+ "name": "Right Extruder",
+ "inherits": "fdmextruder",
+ "metadata": {
+ "machine": "hctech_hc300-m2h",
+ "position": "1"
+ },
+
+ "overrides": {
+ "extruder_nr": {
+ "default_value": 1,
+ "maximum_value": "1"
+ },
+ "machine_nozzle_offset_x": { "default_value": 0.0 },
+ "machine_nozzle_offset_y": { "default_value": 0.0 },
+ "material_diameter": { "default_value": 1.75 },
+ "machine_nozzle_size": { "default_value": 0.4 },
+ "machine_extruder_start_code": {
+ "default_value": "G1 X5 Y319 ;move to wait posiotion\nT1 ;switch to extruder 2\nM109 S{material_print_temperature}\nG1 F5000\nG12 ;clean nozzle\nG1 X0 Y300 F4800 ;move to start point"
+ },
+ "machine_extruder_end_code": {
+ "default_value": "G92 E0 ;reset extruder distance\nG1 F800 E-1 ;retract\nG92 E0 ;reset extruder distance\nG1 X0 Y300 F4800 ;move to start position\nG1 X5 Y319 ;move to wait posiotion"
+ },
+ "machine_extruder_cooling_fan_number": { "default_value": 0 }
+ }
+}
diff --git a/resources/extruders/hctech_hc300-m3_extruder_0.def.json b/resources/extruders/hctech_hc300-m3_extruder_0.def.json
new file mode 100644
index 0000000000..b7923672a5
--- /dev/null
+++ b/resources/extruders/hctech_hc300-m3_extruder_0.def.json
@@ -0,0 +1,15 @@
+{
+ "version": 2,
+ "name": "Extruder 1",
+ "inherits": "fdmextruder",
+ "metadata": {
+ "machine": "hctech_hc300-m3",
+ "position": "0"
+ },
+
+ "overrides": {
+ "extruder_nr": { "default_value": 0 },
+ "material_diameter": { "default_value": 1.75 },
+ "machine_nozzle_size": { "default_value": 0.4 }
+ }
+}
diff --git a/resources/extruders/xyzprinting_da_vinci_pro_evo_extruder_0.def.json b/resources/extruders/xyzprinting_da_vinci_pro_evo_extruder_0.def.json
new file mode 100644
index 0000000000..268a911af2
--- /dev/null
+++ b/resources/extruders/xyzprinting_da_vinci_pro_evo_extruder_0.def.json
@@ -0,0 +1,15 @@
+{
+ "version": 2,
+ "name": "Extruder 1",
+ "inherits": "fdmextruder",
+ "metadata": {
+ "machine": "xyzprinting_da_vinci_pro_evo",
+ "position": "0"
+ },
+
+ "overrides": {
+ "extruder_nr": { "default_value": 0 },
+ "machine_nozzle_size": { "default_value": 0.4 },
+ "material_diameter": { "default_value": 1.75 }
+ }
+}
diff --git a/resources/i18n/nl_NL/cura.po b/resources/i18n/nl_NL/cura.po
index 02f74f35f2..03f790cbaa 100644
--- a/resources/i18n/nl_NL/cura.po
+++ b/resources/i18n/nl_NL/cura.po
@@ -3319,7 +3319,7 @@ msgid ""
"- Back-up and sync your material profiles and plug-ins\n"
"- Share ideas and get help from 48,000+ users in the Ultimaker community"
msgstr ""
-"- Voeg materiaalprofielen en plug-ins toe uit de Marktplaats\n"
+"- Voeg materiaalprofielen en plug-ins toe uit de Marketplace\n"
"- Maak back-ups van uw materiaalprofielen en plug-ins en synchroniseer deze\n"
"- Deel ideeën met 48.000+ gebruikers in de Ultimaker-community of vraag hen om ondersteuning"
@@ -4140,7 +4140,7 @@ msgstr "Weet u zeker dat u een nieuw project wilt starten? Hiermee wordt het pla
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/MainWindowHeader.qml:135
msgctxt "@action:button"
msgid "Marketplace"
-msgstr "Marktplaats"
+msgstr "Marketplace"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/AutoConfiguration.qml:18
msgctxt "@header"
@@ -4155,7 +4155,7 @@ msgstr "Deze configuratie is niet beschikbaar omdat %1 niet wordt herkend. Ga na
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationItem.qml:138
msgctxt "@label"
msgid "Marketplace"
-msgstr "Marktplaats"
+msgstr "Marketplace"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationListView.qml:52
msgctxt "@label"
@@ -5820,7 +5820,7 @@ msgstr "Release notes"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:123
msgctxt "@text"
msgid "Add material settings and plugins from the Marketplace"
-msgstr "Voeg materiaalinstellingen en plugins uit de Marktplaats toe"
+msgstr "Voeg materiaalinstellingen en plugins uit de Marketplace toe"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:149
msgctxt "@text"
@@ -6122,7 +6122,7 @@ msgstr "Beheert extensies voor de toepassing en staat browsingextensies toe van
#: Marketplace/plugin.json
msgctxt "name"
msgid "Marketplace"
-msgstr "Marktplaats"
+msgstr "Marketplace"
#: MonitorStage/plugin.json
msgctxt "description"
@@ -6602,7 +6602,7 @@ msgstr "Röntgenweergave"
#~ msgctxt "@title"
#~ msgid "Marketplace"
-#~ msgstr "Marktplaats"
+#~ msgstr "Marketplace"
#~ msgctxt "@info"
#~ msgid "You will need to restart Cura before changes in packages have effect."
@@ -6880,7 +6880,7 @@ msgstr "Röntgenweergave"
#~ msgctxt "@action:menu"
#~ msgid "&Marketplace"
-#~ msgstr "&Marktplaats"
+#~ msgstr "&Marketplace"
#~ msgctxt "description"
#~ msgid "Find, manage and install new Cura packages."
diff --git a/resources/meshes/flsun_qq_s.3mf b/resources/meshes/flsun_qq_s.3mf
index 7eba390a66..275a34ddaf 100644
--- a/resources/meshes/flsun_qq_s.3mf
+++ b/resources/meshes/flsun_qq_s.3mf
Binary files differ
diff --git a/resources/meshes/hctech_hc300-m1&m1h.3mf b/resources/meshes/hctech_hc300-m1&m1h.3mf
new file mode 100644
index 0000000000..84ae00339f
--- /dev/null
+++ b/resources/meshes/hctech_hc300-m1&m1h.3mf
Binary files differ
diff --git a/resources/meshes/hctech_hc300-m2h.3mf b/resources/meshes/hctech_hc300-m2h.3mf
new file mode 100644
index 0000000000..002dd272bf
--- /dev/null
+++ b/resources/meshes/hctech_hc300-m2h.3mf
Binary files differ
diff --git a/resources/meshes/hctech_hc300-m3.3mf b/resources/meshes/hctech_hc300-m3.3mf
new file mode 100644
index 0000000000..58bf6fc2b0
--- /dev/null
+++ b/resources/meshes/hctech_hc300-m3.3mf
Binary files differ
diff --git a/resources/qml/Dialogs/AboutDialog.qml b/resources/qml/Dialogs/AboutDialog.qml
index 18d60ae1bc..e3fdbfa787 100644
--- a/resources/qml/Dialogs/AboutDialog.qml
+++ b/resources/qml/Dialogs/AboutDialog.qml
@@ -135,49 +135,49 @@ UM.Dialog
{
//Do NOT add dependencies of our dependencies here, nor CI-dependencies!
//Ultimaker's own projects and forks.
- projectsModel.append({ name: "Cura", description: catalog.i18nc("@label", "Graphical user interface"), license: "LGPLv3", url: "https://github.com/Ultimaker/Cura" });
- projectsModel.append({ name: "Uranium", description: catalog.i18nc("@label", "Application framework"), license: "LGPLv3", url: "https://github.com/Ultimaker/Uranium" });
- projectsModel.append({ name: "CuraEngine", description: catalog.i18nc("@label", "G-code generator"), license: "AGPLv3", url: "https://github.com/Ultimaker/CuraEngine" });
- projectsModel.append({ name: "libArcus", description: catalog.i18nc("@label", "Interprocess communication library"), license: "LGPLv3", url: "https://github.com/Ultimaker/libArcus" });
- projectsModel.append({ name: "pynest2d", description: catalog.i18nc("@label", "Python bindings for libnest2d"), license: "LGPL", url: "https://github.com/Ultimaker/pynest2d" });
- projectsModel.append({ name: "libnest2d", description: catalog.i18nc("@label", "Polygon packing library, developed by Prusa Research"), license: "LGPL", url: "https://github.com/tamasmeszaros/libnest2d" });
- projectsModel.append({ name: "libSavitar", description: catalog.i18nc("@label", "Support library for handling 3MF files"), license: "LGPLv3", url: "https://github.com/ultimaker/libsavitar" });
- projectsModel.append({ name: "libCharon", description: catalog.i18nc("@label", "Support library for file metadata and streaming"), license: "LGPLv3", url: "https://github.com/ultimaker/libcharon" });
+ projectsModel.append({ name: "Cura", description: catalog.i18nc("@label Description for application component", "Graphical user interface"), license: "LGPLv3", url: "https://github.com/Ultimaker/Cura" });
+ projectsModel.append({ name: "Uranium", description: catalog.i18nc("@label Description for application component", "Application framework"), license: "LGPLv3", url: "https://github.com/Ultimaker/Uranium" });
+ projectsModel.append({ name: "CuraEngine", description: catalog.i18nc("@label Description for application component", "G-code generator"), license: "AGPLv3", url: "https://github.com/Ultimaker/CuraEngine" });
+ projectsModel.append({ name: "libArcus", description: catalog.i18nc("@label Description for application component", "Interprocess communication library"), license: "LGPLv3", url: "https://github.com/Ultimaker/libArcus" });
+ projectsModel.append({ name: "pynest2d", description: catalog.i18nc("@label Description for application component", "Python bindings for libnest2d"), license: "LGPL", url: "https://github.com/Ultimaker/pynest2d" });
+ projectsModel.append({ name: "libnest2d", description: catalog.i18nc("@label Description for application component", "Polygon packing library, developed by Prusa Research"), license: "LGPL", url: "https://github.com/tamasmeszaros/libnest2d" });
+ projectsModel.append({ name: "libSavitar", description: catalog.i18nc("@label Description for application component", "Support library for handling 3MF files"), license: "LGPLv3", url: "https://github.com/ultimaker/libsavitar" });
+ projectsModel.append({ name: "libCharon", description: catalog.i18nc("@label Description for application component", "Support library for file metadata and streaming"), license: "LGPLv3", url: "https://github.com/ultimaker/libcharon" });
//Direct dependencies of the front-end.
- projectsModel.append({ name: "Python", description: catalog.i18nc("@label", "Programming language"), license: "Python", url: "http://python.org/" });
- projectsModel.append({ name: "Qt6", description: catalog.i18nc("@label", "GUI framework"), license: "LGPLv3", url: "https://www.qt.io/" });
- projectsModel.append({ name: "PyQt", description: catalog.i18nc("@label", "GUI framework bindings"), license: "GPL", url: "https://riverbankcomputing.com/software/pyqt" });
- projectsModel.append({ name: "SIP", description: catalog.i18nc("@label", "C/C++ Binding library"), license: "GPL", url: "https://riverbankcomputing.com/software/sip" });
- projectsModel.append({ name: "Protobuf", description: catalog.i18nc("@label", "Data interchange format"), license: "BSD", url: "https://developers.google.com/protocol-buffers" });
+ projectsModel.append({ name: "Python", description: catalog.i18nc("@label Description for application dependency", "Programming language"), license: "Python", url: "http://python.org/" });
+ projectsModel.append({ name: "Qt6", description: catalog.i18nc("@label Description for application dependency", "GUI framework"), license: "LGPLv3", url: "https://www.qt.io/" });
+ projectsModel.append({ name: "PyQt", description: catalog.i18nc("@label Description for application dependency", "GUI framework bindings"), license: "GPL", url: "https://riverbankcomputing.com/software/pyqt" });
+ projectsModel.append({ name: "SIP", description: catalog.i18nc("@label Description for application dependency", "C/C++ Binding library"), license: "GPL", url: "https://riverbankcomputing.com/software/sip" });
+ projectsModel.append({ name: "Protobuf", description: catalog.i18nc("@label Description for application dependency", "Data interchange format"), license: "BSD", url: "https://developers.google.com/protocol-buffers" });
projectsModel.append({ name: "Noto Sans", description: catalog.i18nc("@label", "Font"), license: "Apache 2.0", url: "https://www.google.com/get/noto/" });
//CuraEngine's dependencies.
- projectsModel.append({ name: "Clipper", description: catalog.i18nc("@label", "Polygon clipping library"), license: "Boost", url: "http://www.angusj.com/delphi/clipper.php" });
- projectsModel.append({ name: "RapidJSON", description: catalog.i18nc("@label", "JSON parser"), license: "MIT", url: "https://rapidjson.org/" });
- projectsModel.append({ name: "STB", description: catalog.i18nc("@label", "Utility functions, including an image loader"), license: "Public Domain", url: "https://github.com/nothings/stb" });
- projectsModel.append({ name: "Boost", description: catalog.i18nc("@label", "Utility library, including Voronoi generation"), license: "Boost", url: "https://www.boost.org/" });
+ projectsModel.append({ name: "Clipper", description: catalog.i18nc("@label Description for application dependency", "Polygon clipping library"), license: "Boost", url: "http://www.angusj.com/delphi/clipper.php" });
+ projectsModel.append({ name: "RapidJSON", description: catalog.i18nc("@label Description for application dependency", "JSON parser"), license: "MIT", url: "https://rapidjson.org/" });
+ projectsModel.append({ name: "STB", description: catalog.i18nc("@label Description for application dependency", "Utility functions, including an image loader"), license: "Public Domain", url: "https://github.com/nothings/stb" });
+ projectsModel.append({ name: "Boost", description: catalog.i18nc("@label Description for application dependency", "Utility library, including Voronoi generation"), license: "Boost", url: "https://www.boost.org/" });
//Python modules.
- projectsModel.append({ name: "Certifi", description: catalog.i18nc("@label", "Root Certificates for validating SSL trustworthiness"), license: "MPL", url: "https://github.com/certifi/python-certifi" });
- projectsModel.append({ name: "Cryptography", description: catalog.i18nc("@label", "Root Certificates for validating SSL trustworthiness"), license: "APACHE and BSD", url: "https://cryptography.io/" });
- projectsModel.append({ name: "Future", description: catalog.i18nc("@label", "Compatibility between Python 2 and 3"), license: "MIT", url: "https://python-future.org/" });
- projectsModel.append({ name: "keyring", description: catalog.i18nc("@label", "Support library for system keyring access"), license: "MIT", url: "https://github.com/jaraco/keyring" });
- projectsModel.append({ name: "NumPy", description: catalog.i18nc("@label", "Support library for faster math"), license: "BSD", url: "http://www.numpy.org/" });
- projectsModel.append({ name: "NumPy-STL", description: catalog.i18nc("@label", "Support library for handling STL files"), license: "BSD", url: "https://github.com/WoLpH/numpy-stl" });
- projectsModel.append({ name: "PyClipper", description: catalog.i18nc("@label", "Python bindings for Clipper"), license: "MIT", url: "https://github.com/fonttools/pyclipper" });
- projectsModel.append({ name: "PySerial", description: catalog.i18nc("@label", "Serial communication library"), license: "Python", url: "http://pyserial.sourceforge.net/" });
- projectsModel.append({ name: "SciPy", description: catalog.i18nc("@label", "Support library for scientific computing"), license: "BSD-new", url: "https://www.scipy.org/" });
- projectsModel.append({ name: "Sentry", description: catalog.i18nc("@Label", "Python Error tracking library"), license: "BSD 2-Clause 'Simplified'", url: "https://sentry.io/for/python/" });
- projectsModel.append({ name: "Trimesh", description: catalog.i18nc("@label", "Support library for handling triangular meshes"), license: "MIT", url: "https://trimsh.org" });
- projectsModel.append({ name: "python-zeroconf", description: catalog.i18nc("@label", "ZeroConf discovery library"), license: "LGPL", url: "https://github.com/jstasiak/python-zeroconf" });
+ projectsModel.append({ name: "Certifi", description: catalog.i18nc("@label Description for application dependency", "Root Certificates for validating SSL trustworthiness"), license: "MPL", url: "https://github.com/certifi/python-certifi" });
+ projectsModel.append({ name: "Cryptography", description: catalog.i18nc("@label Description for application dependency", "Root Certificates for validating SSL trustworthiness"), license: "APACHE and BSD", url: "https://cryptography.io/" });
+ projectsModel.append({ name: "Future", description: catalog.i18nc("@label Description for application dependency", "Compatibility between Python 2 and 3"), license: "MIT", url: "https://python-future.org/" });
+ projectsModel.append({ name: "keyring", description: catalog.i18nc("@label Description for application dependency", "Support library for system keyring access"), license: "MIT", url: "https://github.com/jaraco/keyring" });
+ projectsModel.append({ name: "NumPy", description: catalog.i18nc("@label Description for application dependency", "Support library for faster math"), license: "BSD", url: "http://www.numpy.org/" });
+ projectsModel.append({ name: "NumPy-STL", description: catalog.i18nc("@label Description for application dependency", "Support library for handling STL files"), license: "BSD", url: "https://github.com/WoLpH/numpy-stl" });
+ projectsModel.append({ name: "PyClipper", description: catalog.i18nc("@label Description for application dependency", "Python bindings for Clipper"), license: "MIT", url: "https://github.com/fonttools/pyclipper" });
+ projectsModel.append({ name: "PySerial", description: catalog.i18nc("@label Description for application dependency", "Serial communication library"), license: "Python", url: "http://pyserial.sourceforge.net/" });
+ projectsModel.append({ name: "SciPy", description: catalog.i18nc("@label Description for application dependency", "Support library for scientific computing"), license: "BSD-new", url: "https://www.scipy.org/" });
+ projectsModel.append({ name: "Sentry", description: catalog.i18nc("@Label Description for application dependency", "Python Error tracking library"), license: "BSD 2-Clause 'Simplified'", url: "https://sentry.io/for/python/" });
+ projectsModel.append({ name: "Trimesh", description: catalog.i18nc("@label Description for application dependency", "Support library for handling triangular meshes"), license: "MIT", url: "https://trimsh.org" });
+ projectsModel.append({ name: "python-zeroconf", description: catalog.i18nc("@label Description for application dependency", "ZeroConf discovery library"), license: "LGPL", url: "https://github.com/jstasiak/python-zeroconf" });
//Building/packaging.
- projectsModel.append({ name: "CMake", description: catalog.i18nc("@label", "Universal build system configuration"), license: "BSD 3-Clause", url: "https://cmake.org/" });
- projectsModel.append({ name: "Conan", description: catalog.i18nc("@label", "Dependency and package manager"), license: "MIT", url: "https://conan.io/" });
- projectsModel.append({ name: "Pyinstaller", description: catalog.i18nc("@label", "Packaging Python-applications"), license: "GPLv2", url: "https://pyinstaller.org/" });
- projectsModel.append({ name: "AppImageKit", description: catalog.i18nc("@label", "Linux cross-distribution application deployment"), license: "MIT", url: "https://github.com/AppImage/AppImageKit" });
- projectsModel.append({ name: "NSIS", description: catalog.i18nc("@label", "Generating Windows installers"), license: "Zlib", url: "https://nsis.sourceforge.io/" });
+ projectsModel.append({ name: "CMake", description: catalog.i18nc("@label Description for development tool", "Universal build system configuration"), license: "BSD 3-Clause", url: "https://cmake.org/" });
+ projectsModel.append({ name: "Conan", description: catalog.i18nc("@label Description for development tool", "Dependency and package manager"), license: "MIT", url: "https://conan.io/" });
+ projectsModel.append({ name: "Pyinstaller", description: catalog.i18nc("@label Description for development tool", "Packaging Python-applications"), license: "GPLv2", url: "https://pyinstaller.org/" });
+ projectsModel.append({ name: "AppImageKit", description: catalog.i18nc("@label Description for development tool", "Linux cross-distribution application deployment"), license: "MIT", url: "https://github.com/AppImage/AppImageKit" });
+ projectsModel.append({ name: "NSIS", description: catalog.i18nc("@label Description for development tool", "Generating Windows installers"), license: "Zlib", url: "https://nsis.sourceforge.io/" });
}
}
diff --git a/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml b/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml
index 1a54dc27db..10f006538b 100644
--- a/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml
+++ b/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml
@@ -51,7 +51,7 @@ Item
target: warning
text: {
var profile_name = Cura.MachineManager.activeQualityChangesGroup.name
- return "<b>%1</b> %2".arg(profile_name).arg(catalog.i18nc("@info", "custom profile is active and you overwrote some settings."))
+ return catalog.i18nc("@info, %1 is the name of the custom profile", "<b>%1</b> custom profile is active and you overwrote some settings.").arg(profile_name)
}
}
@@ -65,7 +65,7 @@ Item
target: warning
text: {
var profile_name = Cura.MachineManager.activeQualityChangesGroup.name
- return "<b>%1</b> %2".arg(profile_name).arg(catalog.i18nc("@info", "custom profile is overriding some settings."))
+ return catalog.i18nc("@info, %1 is the name of the custom profile", "<b>%1</b> custom profile is overriding some settings.").arg(profile_name)
}
}
},
diff --git a/resources/quality/anycubic_kobra/anycubic_kobra_abs.inst.cfg b/resources/quality/anycubic_kobra/anycubic_kobra_abs.inst.cfg
new file mode 100644
index 0000000000..7a2c9ac824
--- /dev/null
+++ b/resources/quality/anycubic_kobra/anycubic_kobra_abs.inst.cfg
@@ -0,0 +1,46 @@
+[general]
+version = 4
+name = Suggested parameters for ABS_V1.0
+definition = anycubic_kobra
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = abs
+weight = 0
+global_quality = True
+
+[values]
+layer_height = 0.2
+acceleration_enabled = True
+default_material_bed_temperature = 80
+jerk_enabled = True
+layer_height_0 = 0.2
+acceleration_print = 800
+acceleration_travel = 3000
+acceleration_travel_layer_0 = 3000.0
+bottom_layers = 6
+brim_width = 7.0
+default_material_print_temperature = 230
+infill_overlap = 15
+infill_sparse_density = 20
+initial_layer_line_width_factor = 140
+jerk_print = 8
+jerk_travel = 10
+material_final_print_temperature = 230
+material_flow = 100
+material_flow_layer_0 = 120
+material_initial_print_temperature = 230
+optimize_wall_printing_order = True
+inset_direction = outside_in
+retraction_amount = 6
+retraction_min_travel = =line_width * 2
+retraction_speed = 40
+skirt_brim_speed = 40
+speed_print = 50
+speed_travel = 100
+top_bottom_thickness = 1.2
+wall_thickness = 1.2
+z_seam_type = sharpest_corner
+z_seam_x = 110
+z_seam_y = 220 \ No newline at end of file
diff --git a/resources/quality/anycubic_kobra/anycubic_kobra_pla.inst.cfg b/resources/quality/anycubic_kobra/anycubic_kobra_pla.inst.cfg
new file mode 100644
index 0000000000..32ea58a93f
--- /dev/null
+++ b/resources/quality/anycubic_kobra/anycubic_kobra_pla.inst.cfg
@@ -0,0 +1,41 @@
+[general]
+version = 4
+name = Suggested parameters for PLA_V1.0
+definition = anycubic_kobra
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = pla
+weight = -2
+global_quality = True
+
+[values]
+layer_height = 0.2
+acceleration_enabled = True
+jerk_enabled = True
+layer_height_0 = 0.2
+acceleration_print = 1000
+acceleration_travel_layer_0 = 2000.0
+bottom_layers = 6
+brim_width = 4.0
+infill_overlap = 15
+infill_sparse_density = 15
+initial_layer_line_width_factor = 100
+jerk_print = 8
+jerk_travel = 10
+material_final_print_temperature = 200
+material_initial_print_temperature = 200
+optimize_wall_printing_order = True
+inset_direction = outside_in
+retraction_amount = 6
+retraction_min_travel = 1.5
+retraction_speed = 40
+skirt_brim_speed = 40
+speed_print = 50
+speed_travel = 100
+top_bottom_thickness = 1.2
+wall_thickness = 1.2
+z_seam_type = sharpest_corner
+z_seam_x = 110
+z_seam_y = 220 \ No newline at end of file
diff --git a/resources/quality/anycubic_kobra/anycubic_kobra_tpu.inst.cfg b/resources/quality/anycubic_kobra/anycubic_kobra_tpu.inst.cfg
new file mode 100644
index 0000000000..432eeb4bb6
--- /dev/null
+++ b/resources/quality/anycubic_kobra/anycubic_kobra_tpu.inst.cfg
@@ -0,0 +1,45 @@
+[general]
+version = 4
+name = Suggested parameters for TPU_V1.0
+definition = anycubic_kobra
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = tpu
+weight = 1
+global_quality = True
+
+[values]
+layer_height = 0.2
+acceleration_enabled = True
+jerk_enabled = True
+layer_height_0 = 0.2
+acceleration_print = 800
+acceleration_travel = 3000
+acceleration_travel_layer_0 = 3000.0
+bottom_layers = 6
+brim_width = 7.0
+default_material_print_temperature = 190
+infill_overlap = 15
+infill_sparse_density = 25
+initial_layer_line_width_factor = 140
+jerk_print = 8
+jerk_travel = 10
+material_final_print_temperature = 190
+material_flow = 90
+material_flow_layer_0 = 120
+material_initial_print_temperature = 190
+optimize_wall_printing_order = True
+inset_direction = outside_in
+retraction_amount = 8
+retraction_min_travel = =line_width * 2
+retraction_speed = 60
+skirt_brim_speed = 40
+speed_print = 50
+speed_travel = 100
+top_bottom_thickness = 1.2
+wall_thickness = 1.2
+z_seam_type = sharpest_corner
+z_seam_x = 110
+z_seam_y = 220 \ No newline at end of file
diff --git a/resources/quality/anycubic_kobra_max/anycubic_kobra_max_pla.inst.cfg b/resources/quality/anycubic_kobra_max/anycubic_kobra_max_pla.inst.cfg
new file mode 100644
index 0000000000..d4434c6b79
--- /dev/null
+++ b/resources/quality/anycubic_kobra_max/anycubic_kobra_max_pla.inst.cfg
@@ -0,0 +1,53 @@
+[general]
+version = 4
+name = Suggested parameters for PLA_V1.0
+definition = anycubic_kobra_max
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = pla
+weight = -2
+global_quality = True
+
+[values]
+layer_height = 0.2
+acceleration_enabled = True
+jerk_enabled = True
+layer_height_0 = 0.2
+acceleration_print = 1000
+acceleration_travel = 3000
+brim_width = 7
+default_material_print_temperature = 195
+infill_sparse_density = 15
+initial_layer_line_width_factor = 140
+jerk_print = 8
+jerk_travel = 10
+material_final_print_temperature = 195
+material_flow = 95
+material_flow_layer_0 = 120
+material_initial_print_temperature = 195
+material_print_temperature_layer_0 = 0
+optimize_wall_printing_order = True
+retraction_amount = 6
+retraction_hop = 0.075
+retraction_hop_enabled = True
+retraction_hop_only_when_collides = True
+retraction_min_travel = 1.5
+retraction_speed = 40
+skirt_brim_speed = 40
+speed_layer_0 = 45
+speed_print = 80
+speed_topbottom = 45
+speed_travel = 100
+speed_travel_layer_0 = 100
+speed_wall = 80
+speed_wall_0 = 45
+speed_wall_x = 80
+speed_z_hop = 20
+top_bottom_thickness = 1.2
+top_thickness = 1.2
+wall_thickness = 1.2
+z_seam_type = sharpest_corner
+z_seam_x = 110
+z_seam_y = 220 \ No newline at end of file
diff --git a/resources/quality/anycubic_kobra_max/anycubic_kobra_max_tpu.inst.cfg b/resources/quality/anycubic_kobra_max/anycubic_kobra_max_tpu.inst.cfg
new file mode 100644
index 0000000000..94ea7f8579
--- /dev/null
+++ b/resources/quality/anycubic_kobra_max/anycubic_kobra_max_tpu.inst.cfg
@@ -0,0 +1,54 @@
+[general]
+version = 4
+name = Suggested parameters for TPU_V1.0
+definition = anycubic_kobra_max
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = tpu
+weight = 1
+global_quality = True
+
+[values]
+layer_height = 0.2
+acceleration_enabled = True
+jerk_enabled = False
+layer_height_0 = 0.3
+acceleration_print = 1000
+acceleration_travel = 3000
+brim_width = 5
+cool_fan_speed_0 = 10
+default_material_print_temperature = 210
+infill_overlap = 15
+infill_sparse_density = 15
+initial_layer_line_width_factor = 130
+jerk_print = 8
+jerk_travel = 10
+material_final_print_temperature = 210
+material_flow = 90
+material_flow_layer_0 = 100
+material_initial_print_temperature = 210
+material_print_temperature_layer_0 = 210
+optimize_wall_printing_order = False
+retraction_amount = 8
+retraction_hop = 0.075
+retraction_hop_enabled = True
+retraction_hop_only_when_collides = True
+retraction_min_travel = 1.5
+retraction_speed = 60
+skirt_brim_speed = 40
+speed_layer_0 = 40
+speed_print = 80
+speed_topbottom = 32
+speed_travel = 100
+speed_travel_layer_0 = 50
+speed_wall = 80
+speed_wall_0 = 45
+speed_wall_x = 80
+speed_z_hop = 10
+top_bottom_thickness = 1.2
+wall_thickness = 1.2
+z_seam_type = sharpest_corner
+z_seam_x = 110
+z_seam_y = 220 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_coarse.inst.cfg
new file mode 100644
index 0000000000..aad9aaa72e
--- /dev/null
+++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_coarse.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_abs
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 3
+retraction_speed = 20
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 20
+support_infill_rate = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_draft.inst.cfg
new file mode 100644
index 0000000000..0390da964f
--- /dev/null
+++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_draft.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_abs
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 3
+retraction_speed = 20
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 20
+support_infill_rate = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_fine.inst.cfg
new file mode 100644
index 0000000000..3507a73253
--- /dev/null
+++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_fine.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_abs
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 3
+retraction_speed = 20
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 20
+support_infill_rate = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_normal.inst.cfg
new file mode 100644
index 0000000000..5c6b976c32
--- /dev/null
+++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_pro_evo_hs_0.40_abs_normal.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_abs
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.2
+layer_height_0 = 0.30
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 3
+retraction_speed = 20
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 20
+support_infill_rate = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_coarse.inst.cfg
new file mode 100644
index 0000000000..65cc44d6d1
--- /dev/null
+++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_coarse.inst.cfg
@@ -0,0 +1,33 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_antibact_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 4.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt \ No newline at end of file
diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_draft.inst.cfg
new file mode 100644
index 0000000000..8dda63f0f8
--- /dev/null
+++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_draft.inst.cfg
@@ -0,0 +1,33 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_antibact_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 4.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt \ No newline at end of file
diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_fine.inst.cfg
new file mode 100644
index 0000000000..f302bfd624
--- /dev/null
+++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_fine.inst.cfg
@@ -0,0 +1,33 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_antibact_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 4.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt \ No newline at end of file
diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_normal.inst.cfg
new file mode 100644
index 0000000000..ea027c21b3
--- /dev/null
+++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_pro_evo_hs_0.40_antibact_normal.inst.cfg
@@ -0,0 +1,33 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_antibact_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.2
+layer_height_0 = 0.30
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 4.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt \ No newline at end of file
diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_coarse.inst.cfg
new file mode 100644
index 0000000000..fe6a2d359a
--- /dev/null
+++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_coarse.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_carbon_fiber
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 6.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_draft.inst.cfg
new file mode 100644
index 0000000000..c3ed048f94
--- /dev/null
+++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_draft.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_carbon_fiber
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 6.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_fine.inst.cfg
new file mode 100644
index 0000000000..aeb90c8ed1
--- /dev/null
+++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_fine.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_carbon_fiber
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 6.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_normal.inst.cfg
new file mode 100644
index 0000000000..8a2a29504e
--- /dev/null
+++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_pro_evo_hs_0.40_carbon_fiber_normal.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_carbon_fiber
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.2
+layer_height_0 = 0.30
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 6.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_coarse.inst.cfg
new file mode 100644
index 0000000000..b32467b7b6
--- /dev/null
+++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_coarse.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_metallic_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 3
+retraction_speed = 20
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_draft.inst.cfg
new file mode 100644
index 0000000000..d852237394
--- /dev/null
+++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_draft.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_metallic_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 3
+retraction_speed = 20
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_fine.inst.cfg
new file mode 100644
index 0000000000..24d8f006c1
--- /dev/null
+++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_fine.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_metallic_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 3
+retraction_speed = 20
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_normal.inst.cfg
new file mode 100644
index 0000000000..65813f660f
--- /dev/null
+++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_metallic_normal.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_metallic_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.2
+layer_height_0 = 0.30
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 3
+retraction_speed = 20
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_coarse.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_coarse.inst.cfg
new file mode 100644
index 0000000000..0e63f87aa8
--- /dev/null
+++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_coarse.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_nylon
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature = 100
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature = 260
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 40
+speed_wall = =speed_print
+speed_infill = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+retraction_amount = 6.0
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 50
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_draft.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_draft.inst.cfg
new file mode 100644
index 0000000000..079860a5b6
--- /dev/null
+++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_draft.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_nylon
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature = 100
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature = 260
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 40
+speed_wall = =speed_print
+speed_infill = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+retraction_amount = 6.0
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 50
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_fine.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_fine.inst.cfg
new file mode 100644
index 0000000000..310b83853e
--- /dev/null
+++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_fine.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_nylon
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature = 100
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature = 260
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 40
+speed_wall = =speed_print
+speed_infill = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+retraction_amount = 6.0
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 50
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_normal.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_normal.inst.cfg
new file mode 100644
index 0000000000..f64c7b90c5
--- /dev/null
+++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_pro_evo_hs_0.40_nylon_normal.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_nylon
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.2
+layer_height_0 = 0.30
+material_diameter = 1.75
+material_bed_temperature = 100
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature = 260
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 40
+speed_wall = =speed_print
+speed_infill = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+retraction_amount = 6.0
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 50
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_coarse.inst.cfg b/resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_coarse.inst.cfg
new file mode 100644
index 0000000000..2f291a310c
--- /dev/null
+++ b/resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_coarse.inst.cfg
@@ -0,0 +1,39 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_pahtcf15
+variant = Hardened Steel High Temp. 0.6mm Nozzle
+
+[values]
+line_width = 0.4
+wall_line_width_x = 0.4
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 20
+speed_infill = 40
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+speed_layer_0 = 15
+retraction_amount = 7
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 50
+acceleration_infill = 500.0
+acceleration_wall = 500.0
+acceleration_wall_0 = 500.0
+infill_material_flow = 85
+wall_material_flow = 85 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_draft.inst.cfg b/resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_draft.inst.cfg
new file mode 100644
index 0000000000..e3f8082b3c
--- /dev/null
+++ b/resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_draft.inst.cfg
@@ -0,0 +1,39 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_pahtcf15
+variant = Hardened Steel High Temp. 0.6mm Nozzle
+
+[values]
+line_width = 0.4
+wall_line_width_x = 0.4
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 20
+speed_infill = 40
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+speed_layer_0 = 15
+retraction_amount = 7
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 50
+acceleration_infill = 500.0
+acceleration_wall = 500.0
+acceleration_wall_0 = 500.0
+infill_material_flow = 85
+wall_material_flow = 85 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_fine.inst.cfg b/resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_fine.inst.cfg
new file mode 100644
index 0000000000..735b3a9e8e
--- /dev/null
+++ b/resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_fine.inst.cfg
@@ -0,0 +1,39 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_pahtcf15
+variant = Hardened Steel High Temp. 0.6mm Nozzle
+
+[values]
+line_width = 0.4
+wall_line_width_x = 0.4
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 20
+speed_infill = 40
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+speed_layer_0 = 15
+retraction_amount = 7
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 50
+acceleration_infill = 500.0
+acceleration_wall = 500.0
+acceleration_wall_0 = 500.0
+infill_material_flow = 85
+wall_material_flow = 85 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_normal.inst.cfg b/resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_normal.inst.cfg
new file mode 100644
index 0000000000..a722f3d5ac
--- /dev/null
+++ b/resources/quality/xyzprinting/pahtcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_pahtcf15_normal.inst.cfg
@@ -0,0 +1,39 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_pahtcf15
+variant = Hardened Steel High Temp. 0.6mm Nozzle
+
+[values]
+line_width = 0.4
+wall_line_width_x = 0.4
+layer_height = 0.2
+layer_height_0 = 0.3
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 20
+speed_infill = 40
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+speed_layer_0 = 15
+retraction_amount = 7
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 50
+acceleration_infill = 500.0
+acceleration_wall = 500.0
+acceleration_wall_0 = 500.0
+infill_material_flow = 85
+wall_material_flow = 85 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_coarse.inst.cfg b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_coarse.inst.cfg
new file mode 100644
index 0000000000..87200663cd
--- /dev/null
+++ b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_coarse.inst.cfg
@@ -0,0 +1,32 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_pc
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 40
+speed_wall = =speed_print
+speed_infill = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+retraction_amount = 3.0
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 100
+acceleration_infill = 1500.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_draft.inst.cfg b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_draft.inst.cfg
new file mode 100644
index 0000000000..9ce244c865
--- /dev/null
+++ b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_draft.inst.cfg
@@ -0,0 +1,32 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_pc
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 40
+speed_wall = =speed_print
+speed_infill = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+retraction_amount = 3.0
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 100
+acceleration_infill = 1500.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_fine.inst.cfg b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_fine.inst.cfg
new file mode 100644
index 0000000000..27662123a3
--- /dev/null
+++ b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_fine.inst.cfg
@@ -0,0 +1,32 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_pc
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 40
+speed_wall = =speed_print
+speed_infill = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+retraction_amount = 3.0
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 100
+acceleration_infill = 1500.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_normal.inst.cfg b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_normal.inst.cfg
new file mode 100644
index 0000000000..fdef6243c7
--- /dev/null
+++ b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hs_0.40_pc_normal.inst.cfg
@@ -0,0 +1,32 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_pc
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.2
+layer_height_0 = 0.30
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 40
+speed_wall = =speed_print
+speed_infill = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+retraction_amount = 3.0
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 100
+acceleration_infill = 1500.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_coarse.inst.cfg b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_coarse.inst.cfg
new file mode 100644
index 0000000000..e4a7568fb3
--- /dev/null
+++ b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_coarse.inst.cfg
@@ -0,0 +1,39 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_pc
+variant = Hardened Steel High Temp. 0.6mm Nozzle
+
+[values]
+infill_line_width = 0.6
+line_width = 0.6
+wall_line_width_x = 0.6
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 40
+speed_wall = =speed_print
+speed_infill = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+speed_layer_0 = 15
+retraction_amount = 5.5
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 100
+acceleration_infill = 500.0
+acceleration_wall = 500.0
+acceleration_wall_0 = 500.0
+adhesion_type = brim \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_draft.inst.cfg b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_draft.inst.cfg
new file mode 100644
index 0000000000..135bff0276
--- /dev/null
+++ b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_draft.inst.cfg
@@ -0,0 +1,39 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_pc
+variant = Hardened Steel High Temp. 0.6mm Nozzle
+
+[values]
+infill_line_width = 0.6
+line_width = 0.6
+wall_line_width_x = 0.6
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 40
+speed_wall = =speed_print
+speed_infill = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+speed_layer_0 = 15
+retraction_amount = 5.5
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 100
+acceleration_infill = 500.0
+acceleration_wall = 500.0
+acceleration_wall_0 = 500.0
+adhesion_type = brim \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_fine.inst.cfg b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_fine.inst.cfg
new file mode 100644
index 0000000000..e454e4e55b
--- /dev/null
+++ b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_fine.inst.cfg
@@ -0,0 +1,39 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_pc
+variant = Hardened Steel High Temp. 0.6mm Nozzle
+
+[values]
+infill_line_width = 0.6
+line_width = 0.6
+wall_line_width_x = 0.6
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 40
+speed_wall = =speed_print
+speed_infill = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+speed_layer_0 = 15
+retraction_amount = 5.5
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 100
+acceleration_infill = 500.0
+acceleration_wall = 500.0
+acceleration_wall_0 = 500.0
+adhesion_type = brim \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_normal.inst.cfg b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_normal.inst.cfg
new file mode 100644
index 0000000000..f54c4828fa
--- /dev/null
+++ b/resources/quality/xyzprinting/pc/xyzprinting_da_vinci_pro_evo_hsht_0.60_pc_normal.inst.cfg
@@ -0,0 +1,39 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_pc
+variant = Hardened Steel High Temp. 0.6mm Nozzle
+
+[values]
+infill_line_width = 0.6
+line_width = 0.6
+wall_line_width_x = 0.6
+layer_height = 0.2
+layer_height_0 = 0.30
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 40
+speed_wall = =speed_print
+speed_infill = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+speed_layer_0 = 15
+retraction_amount = 5.5
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 100
+acceleration_infill = 500.0
+acceleration_wall = 500.0
+acceleration_wall_0 = 500.0
+adhesion_type = brim \ No newline at end of file
diff --git a/resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_coarse.inst.cfg b/resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_coarse.inst.cfg
new file mode 100644
index 0000000000..7233fb108b
--- /dev/null
+++ b/resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_coarse.inst.cfg
@@ -0,0 +1,36 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_petcf15
+variant = Hardened Steel High Temp. 0.6mm Nozzle
+
+[values]
+material_bed_temperature = 70
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 30
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+retraction_amount = 7
+retraction_speed = 50
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 50
+speed_layer_0 = 15
+acceleration_infill = 500.0
+acceleration_wall = 500.0
+acceleration_wall_0 = 500.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_draft.inst.cfg b/resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_draft.inst.cfg
new file mode 100644
index 0000000000..018a0fafb3
--- /dev/null
+++ b/resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_draft.inst.cfg
@@ -0,0 +1,36 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_petcf15
+variant = Hardened Steel High Temp. 0.6mm Nozzle
+
+[values]
+material_bed_temperature = 70
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 30
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+retraction_amount = 7
+retraction_speed = 50
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 50
+speed_layer_0 = 15
+acceleration_infill = 500.0
+acceleration_wall = 500.0
+acceleration_wall_0 = 500.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_fine.inst.cfg b/resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_fine.inst.cfg
new file mode 100644
index 0000000000..9dee9a2a5b
--- /dev/null
+++ b/resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_fine.inst.cfg
@@ -0,0 +1,36 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_petcf15
+variant = Hardened Steel High Temp. 0.6mm Nozzle
+
+[values]
+material_bed_temperature = 70
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 30
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+retraction_amount = 7
+retraction_speed = 50
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 50
+speed_layer_0 = 15
+acceleration_infill = 500.0
+acceleration_wall = 500.0
+acceleration_wall_0 = 500.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_normal.inst.cfg b/resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_normal.inst.cfg
new file mode 100644
index 0000000000..8795cdd067
--- /dev/null
+++ b/resources/quality/xyzprinting/petcf15/xyzprinting_da_vinci_pro_evo_hsht_0.60_petcf15_normal.inst.cfg
@@ -0,0 +1,36 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_petcf15
+variant = Hardened Steel High Temp. 0.6mm Nozzle
+
+[values]
+material_bed_temperature = 70
+layer_height = 0.2
+layer_height_0 = 0.3
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 30
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 150
+retraction_amount = 7
+retraction_speed = 50
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 50
+speed_layer_0 = 15
+acceleration_infill = 500.0
+acceleration_wall = 500.0
+acceleration_wall_0 = 500.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_coarse.inst.cfg
new file mode 100644
index 0000000000..784a6891d4
--- /dev/null
+++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_coarse.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_petg
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 70
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 3
+retraction_speed = 20
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_draft.inst.cfg
new file mode 100644
index 0000000000..6de215e455
--- /dev/null
+++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_draft.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_petg
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 70
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 3
+retraction_speed = 20
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_fine.inst.cfg
new file mode 100644
index 0000000000..e29278dd9e
--- /dev/null
+++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_fine.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_petg
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 70
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 3
+retraction_speed = 20
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_normal.inst.cfg
new file mode 100644
index 0000000000..0c18ba02d9
--- /dev/null
+++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_pro_evo_hs_0.40_petg_normal.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_petg
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 70
+layer_height = 0.2
+layer_height_0 = 0.30
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 3
+retraction_speed = 20
+retraction_prime_speed = =retraction_speed
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_coarse.inst.cfg
new file mode 100644
index 0000000000..40298dcb60
--- /dev/null
+++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_coarse.inst.cfg
@@ -0,0 +1,33 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 4.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_draft.inst.cfg
new file mode 100644
index 0000000000..09a55b6c3d
--- /dev/null
+++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_draft.inst.cfg
@@ -0,0 +1,33 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 4.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_fine.inst.cfg
new file mode 100644
index 0000000000..6efaedd517
--- /dev/null
+++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_fine.inst.cfg
@@ -0,0 +1,33 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 4.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt \ No newline at end of file
diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_normal.inst.cfg
new file mode 100644
index 0000000000..8be9793a9e
--- /dev/null
+++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_pro_evo_hs_0.40_pla_normal.inst.cfg
@@ -0,0 +1,33 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 60
+layer_height = 0.2
+layer_height_0 = 0.30
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 4.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt \ No newline at end of file
diff --git a/resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_coarse.inst.cfg b/resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_coarse.inst.cfg
new file mode 100644
index 0000000000..43ae099126
--- /dev/null
+++ b/resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_coarse.inst.cfg
@@ -0,0 +1,37 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_ppgf30
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 100
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 20
+speed_infill = 30
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 200
+retraction_amount = 6
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 50
+brim_width = 20.0
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0
+infill_material_flow = 85
+wall_material_flow = 85
diff --git a/resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_draft.inst.cfg b/resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_draft.inst.cfg
new file mode 100644
index 0000000000..793a08f433
--- /dev/null
+++ b/resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_draft.inst.cfg
@@ -0,0 +1,37 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_ppgf30
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 100
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 20
+speed_infill = 30
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 200
+retraction_amount = 6
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 50
+brim_width = 20.0
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0
+infill_material_flow = 85
+wall_material_flow = 85
diff --git a/resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_fine.inst.cfg b/resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_fine.inst.cfg
new file mode 100644
index 0000000000..1e719a284c
--- /dev/null
+++ b/resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_fine.inst.cfg
@@ -0,0 +1,32 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_ppgf30
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 90
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 20
+speed_infill = 30
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 200
+retraction_amount = 6
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 50 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_normal.inst.cfg b/resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_normal.inst.cfg
new file mode 100644
index 0000000000..156f42ef22
--- /dev/null
+++ b/resources/quality/xyzprinting/ppgf30/xyzprinting_da_vinci_pro_evo_hs_0.40_ppgf30_normal.inst.cfg
@@ -0,0 +1,37 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_ppgf30
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+material_bed_temperature = 100
+layer_height = 0.2
+layer_height_0 = 0.3
+material_diameter = 1.75
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 20
+speed_infill = 30
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 200
+retraction_amount = 6
+retraction_speed = 50
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 50
+brim_width = 20.0
+acceleration_infill = 1000.0
+acceleration_wall = 1000.0
+infill_material_flow = 85
+wall_material_flow = 85 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_coarse.inst.cfg
new file mode 100644
index 0000000000..17e733f5c7
--- /dev/null
+++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_coarse.inst.cfg
@@ -0,0 +1,34 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_tough_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature = 60
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_topbottom = 10
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 4.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt \ No newline at end of file
diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_draft.inst.cfg
new file mode 100644
index 0000000000..a4c9e07aad
--- /dev/null
+++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_draft.inst.cfg
@@ -0,0 +1,34 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_tough_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature = 60
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_topbottom = 10
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 4.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt \ No newline at end of file
diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_fine.inst.cfg
new file mode 100644
index 0000000000..70b610cb39
--- /dev/null
+++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_fine.inst.cfg
@@ -0,0 +1,34 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_tough_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature = 60
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_topbottom = 10
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 4.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt \ No newline at end of file
diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_normal.inst.cfg
new file mode 100644
index 0000000000..309a8512e1
--- /dev/null
+++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_pro_evo_hs_0.40_tough_pla_normal.inst.cfg
@@ -0,0 +1,34 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_tough_pla
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.2
+layer_height_0 = 0.30
+material_diameter = 1.75
+material_bed_temperature = 60
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 30
+speed_infill = 60
+speed_wall = =speed_print
+speed_topbottom = 10
+speed_support = =speed_print
+speed_travel = 80
+retraction_amount = 4.5
+retraction_speed = 20
+retraction_prime_speed = 15
+infill_sparse_density = 10
+bridge_skin_speed = 20
+adhesion_type = skirt \ No newline at end of file
diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_coarse.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_coarse.inst.cfg
new file mode 100644
index 0000000000..9a8f254d1d
--- /dev/null
+++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_coarse.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+material = xyzprinting_tpu
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature = 60
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 15
+speed_infill = =speed_print
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 200
+retraction_amount = 6
+retraction_speed = 50
+retraction_prime_speed = =15
+infill_sparse_density = 10
+brim_width = 5.0
+bridge_skin_speed = 100
+acceleration_infill = 1500.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_draft.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_draft.inst.cfg
new file mode 100644
index 0000000000..623381312f
--- /dev/null
+++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_draft.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+material = xyzprinting_tpu
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+material_bed_temperature = 60
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 15
+speed_infill = =speed_print
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 200
+retraction_amount = 6
+retraction_speed = 50
+retraction_prime_speed = =15
+infill_sparse_density = 10
+brim_width = 5.0
+bridge_skin_speed = 100
+acceleration_infill = 1500.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_fine.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_fine.inst.cfg
new file mode 100644
index 0000000000..cd589ae435
--- /dev/null
+++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_fine.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+material = xyzprinting_tpu
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+material_bed_temperature = 60
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 15
+speed_infill = =speed_print
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 200
+retraction_amount = 6
+retraction_speed = 50
+retraction_prime_speed = =15
+infill_sparse_density = 10
+brim_width = 5.0
+bridge_skin_speed = 100
+acceleration_infill = 1500.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_normal.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_normal.inst.cfg
new file mode 100644
index 0000000000..34211a6adc
--- /dev/null
+++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_pro_evo_hs_0.40_tpu_normal.inst.cfg
@@ -0,0 +1,35 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+material = xyzprinting_tpu
+variant = Hardened Steel 0.4mm Nozzle
+
+[values]
+layer_height = 0.2
+layer_height_0 = 0.3
+material_diameter = 1.75
+material_bed_temperature = 60
+material_bed_temperature_layer_0 = =material_bed_temperature
+material_print_temperature_layer_0 = =material_print_temperature
+material_initial_print_temperature = =material_print_temperature
+material_final_print_temperature = =material_print_temperature
+speed_print = 15
+speed_infill = =speed_print
+speed_wall = =speed_print
+speed_support = =speed_print
+speed_travel = 200
+retraction_amount = 6
+retraction_speed = 50
+retraction_prime_speed = =15
+infill_sparse_density = 10
+brim_width = 5.0
+bridge_skin_speed = 100
+acceleration_infill = 1500.0
+acceleration_wall = 1000.0 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.10_fine.inst.cfg
new file mode 100644
index 0000000000..f0e8dfdc37
--- /dev/null
+++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.10_fine.inst.cfg
@@ -0,0 +1,17 @@
+[general]
+version = 4
+name = Fine Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = fine
+weight = 0
+global_quality = True
+
+[values]
+layer_height = 0.1
+layer_height_0 = 0.2
+material_diameter = 1.75
+infill_sparse_density = 10 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.20_normal.inst.cfg
new file mode 100644
index 0000000000..4631432b4a
--- /dev/null
+++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.20_normal.inst.cfg
@@ -0,0 +1,17 @@
+[general]
+version = 4
+name = Normal Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = normal
+weight = -1
+global_quality = True
+
+[values]
+layer_height = 0.2
+layer_height_0 = 0.3
+material_diameter = 1.75
+infill_sparse_density = 10 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.30_draft.inst.cfg
new file mode 100644
index 0000000000..4e25003939
--- /dev/null
+++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.30_draft.inst.cfg
@@ -0,0 +1,17 @@
+[general]
+version = 4
+name = Draft Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = draft
+weight = -2
+global_quality = True
+
+[values]
+layer_height = 0.3
+layer_height_0 = 0.4
+material_diameter = 1.75
+infill_sparse_density = 10 \ No newline at end of file
diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.40_coarse.inst.cfg
new file mode 100644
index 0000000000..606ecfc0fa
--- /dev/null
+++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_pro_evo_global_0.40_coarse.inst.cfg
@@ -0,0 +1,17 @@
+[general]
+version = 4
+name = Coarse Quality
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = quality
+quality_type = coarse
+weight = -3
+global_quality = True
+
+[values]
+layer_height = 0.4
+layer_height_0 = 0.4
+material_diameter = 1.75
+infill_sparse_density = 10 \ No newline at end of file
diff --git a/resources/texts/change_log.txt b/resources/texts/change_log.txt
index 8030327dd2..d68840bba8 100644
--- a/resources/texts/change_log.txt
+++ b/resources/texts/change_log.txt
@@ -18,7 +18,7 @@ Newly created project files will now store which packages they require from the
* Other new features and improvements:
- The interface to select the printing profile in Recommended Mode has been redesigned.
-- Implemented multi-threaded slicing for MacOS, to bring it in line with other operating systems.
+- Implemented multi-threaded slicing for MacOS, to bring it in line with other operating systems, contributed by Piezoid.
- Cura now links toolpaths to project files in the Digital Factory.
- Improved performance of loading STL files on Linux.
- Packages from the Marketplace can now contain intent profiles.
@@ -51,14 +51,18 @@ Newly created project files will now store which packages they require from the
* Printer definitions, profiles and materials:
- Improved profiles for PVA and support for Ultimaker printers.
-- Adjust retraction speed and distance for Voron.
-- Heat up extruder and build plate at the same time for Ender 3 Pro.
+- Adjust retraction speed and distance for Voron, contributed by Haxk20 and Cbc02009
+- Heat up extruder and build plate at the same time for Ender 3 Pro, contributed by XDazld.
- Add new Tough PLA colours.
- Add DD0.4 print cores for Ultimaker printers.
-- Add MakerGear M2 printer.
-- Add Trimarker Nebula Plus printer.
+- Add MakerGear M2 printer, contributed by Wanders78746.
+- Add Trimarker Nebula Plus printer, contributed by MatiGabaglio.
- Various small profile improvements.
+* Community translations:
+- Updated the Brazilian Portuguese translation, contributed by Patola.
+- Updated the Czech translation, contributed by sustmi.
+
* Known critical issues:
- The placement of the seam has gotten more scattered than in previous releases.
- Support is sometimes missing in detailed parts, where previous releases supported them properly.
diff --git a/resources/variants/creality_ender3s1_0.2.inst.cfg b/resources/variants/creality_ender3s1_0.2.inst.cfg
new file mode 100644
index 0000000000..5aed89119c
--- /dev/null
+++ b/resources/variants/creality_ender3s1_0.2.inst.cfg
@@ -0,0 +1,12 @@
+[general]
+name = 0.2mm Nozzle
+version = 4
+definition = creality_ender3s1
+
+[metadata]
+setting_version = 20
+type = variant
+hardware_type = nozzle
+
+[values]
+machine_nozzle_size = 0.2
diff --git a/resources/variants/creality_ender3s1_0.3.inst.cfg b/resources/variants/creality_ender3s1_0.3.inst.cfg
new file mode 100644
index 0000000000..cd59787dee
--- /dev/null
+++ b/resources/variants/creality_ender3s1_0.3.inst.cfg
@@ -0,0 +1,12 @@
+[general]
+name = 0.3mm Nozzle
+version = 4
+definition = creality_ender3s1
+
+[metadata]
+setting_version = 20
+type = variant
+hardware_type = nozzle
+
+[values]
+machine_nozzle_size = 0.3
diff --git a/resources/variants/creality_ender3s1_0.4.inst.cfg b/resources/variants/creality_ender3s1_0.4.inst.cfg
new file mode 100644
index 0000000000..b621656ca8
--- /dev/null
+++ b/resources/variants/creality_ender3s1_0.4.inst.cfg
@@ -0,0 +1,12 @@
+[general]
+name = 0.4mm Nozzle
+version = 4
+definition = creality_ender3s1
+
+[metadata]
+setting_version = 20
+type = variant
+hardware_type = nozzle
+
+[values]
+machine_nozzle_size = 0.4
diff --git a/resources/variants/creality_ender3s1_0.5.inst.cfg b/resources/variants/creality_ender3s1_0.5.inst.cfg
new file mode 100644
index 0000000000..0ca9ce3a50
--- /dev/null
+++ b/resources/variants/creality_ender3s1_0.5.inst.cfg
@@ -0,0 +1,12 @@
+[general]
+name = 0.5mm Nozzle
+version = 4
+definition = creality_ender3s1
+
+[metadata]
+setting_version = 20
+type = variant
+hardware_type = nozzle
+
+[values]
+machine_nozzle_size = 0.5
diff --git a/resources/variants/creality_ender3s1_0.6.inst.cfg b/resources/variants/creality_ender3s1_0.6.inst.cfg
new file mode 100644
index 0000000000..30ea5da3ea
--- /dev/null
+++ b/resources/variants/creality_ender3s1_0.6.inst.cfg
@@ -0,0 +1,12 @@
+[general]
+name = 0.6mm Nozzle
+version = 4
+definition = creality_ender3s1
+
+[metadata]
+setting_version = 20
+type = variant
+hardware_type = nozzle
+
+[values]
+machine_nozzle_size = 0.6
diff --git a/resources/variants/creality_ender3s1_0.8.inst.cfg b/resources/variants/creality_ender3s1_0.8.inst.cfg
new file mode 100644
index 0000000000..5f2a9125ca
--- /dev/null
+++ b/resources/variants/creality_ender3s1_0.8.inst.cfg
@@ -0,0 +1,12 @@
+[general]
+name = 0.8mm Nozzle
+version = 4
+definition = creality_ender3s1
+
+[metadata]
+setting_version = 20
+type = variant
+hardware_type = nozzle
+
+[values]
+machine_nozzle_size = 0.8
diff --git a/resources/variants/creality_ender3s1_1.0.inst.cfg b/resources/variants/creality_ender3s1_1.0.inst.cfg
new file mode 100644
index 0000000000..fb61517749
--- /dev/null
+++ b/resources/variants/creality_ender3s1_1.0.inst.cfg
@@ -0,0 +1,12 @@
+[general]
+name = 1.0mm Nozzle
+version = 4
+definition = creality_ender3s1
+
+[metadata]
+setting_version = 20
+type = variant
+hardware_type = nozzle
+
+[values]
+machine_nozzle_size = 1.0
diff --git a/resources/variants/xyzprinting_da_vinci_pro_evo_hs_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_pro_evo_hs_0.40.inst.cfg
new file mode 100644
index 0000000000..087644e208
--- /dev/null
+++ b/resources/variants/xyzprinting_da_vinci_pro_evo_hs_0.40.inst.cfg
@@ -0,0 +1,13 @@
+[general]
+name = Hardened Steel 0.4mm Nozzle
+version = 4
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = variant
+hardware_type = nozzle
+
+[values]
+machine_nozzle_size = 0.4
+machine_nozzle_id = Hardened Steel 0.4mm Nozzle
diff --git a/resources/variants/xyzprinting_da_vinci_pro_evo_hsht_0.60.inst.cfg b/resources/variants/xyzprinting_da_vinci_pro_evo_hsht_0.60.inst.cfg
new file mode 100644
index 0000000000..1337d87cbc
--- /dev/null
+++ b/resources/variants/xyzprinting_da_vinci_pro_evo_hsht_0.60.inst.cfg
@@ -0,0 +1,13 @@
+[general]
+name = Hardened Steel High Temp. 0.6mm Nozzle
+version = 4
+definition = xyzprinting_da_vinci_pro_evo
+
+[metadata]
+setting_version = 20
+type = variant
+hardware_type = nozzle
+
+[values]
+machine_nozzle_size = 0.6
+machine_nozzle_id = Hardened Steel High Temp. 0.6mm Nozzle
diff --git a/scripts/fix_app_qt_folder_names_for_codesign.py b/scripts/fix_app_qt_folder_names_for_codesign.py
deleted file mode 100644
index c37ec00bf7..0000000000
--- a/scripts/fix_app_qt_folder_names_for_codesign.py
+++ /dev/null
@@ -1,128 +0,0 @@
-# -*- coding: utf-8 -*-
-
-# Due to the dots present in the various qt paths code signing doesn't work on MacOS
-# Running this script over the packaged .app fill fixes that problem
-#
-# usage: python3 fix_app_qt_folder_names_for_codesign.py dist/dist/Ultimaker-Cura.app
-#
-# source: https://github.com/pyinstaller/pyinstaller/wiki/Recipe-OSX-Code-Signing-Qt
-
-import os
-import shutil
-import sys
-from pathlib import Path
-from typing import Generator, List, Optional
-
-from macholib.MachO import MachO
-
-
-def create_symlink(folder: Path) -> None:
- """Create the appropriate symlink in the MacOS folder
- pointing to the Resources folder.
- """
- sibbling = Path(str(folder).replace("MacOS", ""))
-
- # PyQt5/Qt/qml/QtQml/Models.2
- root = str(sibbling).partition("Contents")[2].lstrip("/")
- # ../../../../
- backward = "../" * (root.count("/") + 1)
- # ../../../../Resources/PyQt5/Qt/qml/QtQml/Models.2
- good_path = f"{backward}Resources/{root}"
-
- folder.symlink_to(good_path)
-
-
-def fix_dll(dll: Path) -> None:
- """Fix the DLL lookup paths to use relative ones for Qt dependencies.
- Inspiration: PyInstaller/depend/dylib.py:mac_set_relative_dylib_deps()
- Currently one header is pointing to (we are in the Resources folder):
- @loader_path/../../../../QtCore (it is referencing to the old MacOS folder)
- It will be converted to:
- @loader_path/../../../../../../MacOS/QtCore
- """
-
- def match_func(pth: str) -> Optional[str]:
- """Callback function for MachO.rewriteLoadCommands() that is
- called on every lookup path setted in the DLL headers.
- By returning None for system libraries, it changes nothing.
- Else we return a relative path pointing to the good file
- in the MacOS folder.
- """
- basename = os.path.basename(pth)
- if not basename.startswith("Qt"):
- return None
- return f"@loader_path{good_path}/{basename}"
-
- # Resources/PyQt5/Qt/qml/QtQuick/Controls.2/Fusion
- root = str(dll.parent).partition("Contents")[2][1:]
- # /../../../../../../..
- backward = "/.." * (root.count("/") + 1)
- # /../../../../../../../MacOS
- good_path = f"{backward}/MacOS"
-
- # Rewrite Mach headers with corrected @loader_path
- dll = MachO(dll)
- dll.rewriteLoadCommands(match_func)
- with open(dll.filename, "rb+") as f:
- for header in dll.headers:
- f.seek(0)
- dll.write(f)
- f.seek(0, 2)
- f.flush()
-
-
-def find_problematic_folders(folder: Path) -> Generator[Path, None, None]:
- """Recursively yields problematic folders (containing a dot in their name)."""
- for path in folder.iterdir():
- if not path.is_dir() or path.is_symlink():
- # Skip simlinks as they are allowed (even with a dot)
- continue
- if "." in path.name:
- yield path
- else:
- yield from find_problematic_folders(path)
-
-
-def move_contents_to_resources(folder: Path) -> Generator[Path, None, None]:
- """Recursively move any non symlink file from a problematic folder
- to the sibbling one in Resources.
- """
- for path in folder.iterdir():
- if path.is_symlink():
- continue
- if path.name == "qml":
- yield from move_contents_to_resources(path)
- else:
- sibbling = Path(str(path).replace("MacOS", "Resources"))
- sibbling.parent.mkdir(parents=True, exist_ok=True)
- shutil.move(path, sibbling)
- yield sibbling
-
-
-def main(args: List[str]) -> int:
- """
- Fix the application to allow codesign (NXDRIVE-1301).
- Take one or more .app as arguments: "Nuxeo Drive.app".
- To overall process will:
- - move problematic folders from MacOS to Resources
- - fix the DLLs lookup paths
- - create the appropriate symbolic link
- """
- for app in args:
- name = os.path.basename(app)
- print(f">>> [{name}] Fixing Qt folder names")
- path = Path(app) / "Contents" / "MacOS"
- for folder in find_problematic_folders(path):
- for file in move_contents_to_resources(folder):
- try:
- fix_dll(file)
- except (ValueError, IsADirectoryError):
- continue
- shutil.rmtree(folder)
- create_symlink(folder)
- print(f" !! Fixed {folder}")
- print(f">>> [{name}] Application fixed.")
-
-
-if __name__ == "__main__":
- sys.exit(main(sys.argv[1:]))
diff --git a/scripts/rename_cura_1_tags.sh b/scripts/rename_cura_1_tags.sh
new file mode 100644
index 0000000000..8391ed08c2
--- /dev/null
+++ b/scripts/rename_cura_1_tags.sh
@@ -0,0 +1,14 @@
+#Renames tags that were for Legacy Cura to a newer versioning system.
+#Those Cura versions used tags based on the year of release.
+#We'd like to rename them to be "Cura 1" and have the original version number as sub-version-numbers.
+#So Cura 14.04 becomes Cura 1.14.04.
+
+for i in $(git tag -l)
+do
+ if [[ $i =~ ^1[2-5]\.[0-9][0-9] ]]; then #E.g. 12.04 or 15.06. Note that there is no end-match so anything that starts with this matches.
+ echo "Renaming tag $i to 1.$i";
+ git tag 1.$i $i; #Create new tag (1.x instead of x).
+ git tag -d $i; #Delete old tag.
+ git push origin 1.$i :$i #Rename the tag remotely too.
+ fi
+done \ No newline at end of file