diff --git a/.github/workflows/build_all.yml b/.github/workflows/build_all.yml
index 1736e8d78d..c0e8ca1266 100644
--- a/.github/workflows/build_all.yml
+++ b/.github/workflows/build_all.yml
@@ -49,9 +49,9 @@ jobs:
include:
- os: ubuntu-20.04
- os: windows-latest
- - os: macos-12
+ - os: macos-14
arch: x86_64
- - os: macos-12
+ - os: macos-14
arch: arm64
uses: ./.github/workflows/build_check_cache.yml
with:
diff --git a/.github/workflows/build_check_cache.yml b/.github/workflows/build_check_cache.yml
index b0ff506fa8..f71cc9b281 100644
--- a/.github/workflows/build_check_cache.yml
+++ b/.github/workflows/build_check_cache.yml
@@ -30,12 +30,12 @@ jobs:
- name: set outputs
id: set_outputs
env:
- underscore-arch: ${{ inputs.os == 'macos-12' && '_' || ''}}${{ inputs.os == 'macos-12' && inputs.arch || '' }} # if is macos, make a string that does "_{arch}", else output nothing
- dash-arch: ${{ inputs.os == 'macos-12' && '-' || ''}}${{ inputs.os == 'macos-12' && inputs.arch || '' }} # if is macos, make a string that does "-{arch}", else output nothing
- dep-folder-name: ${{ (inputs.os == 'windows-latest' || inputs.os == 'macos-12') && 'OrcaSlicer_dep' || 'destdir' }}
+ underscore-arch: ${{ inputs.os == 'macos-14' && '_' || ''}}${{ inputs.os == 'macos-14' && inputs.arch || '' }} # if is macos, make a string that does "_{arch}", else output nothing
+ dash-arch: ${{ inputs.os == 'macos-14' && '-' || ''}}${{ inputs.os == 'macos-14' && inputs.arch || '' }} # if is macos, make a string that does "-{arch}", else output nothing
+ dep-folder-name: ${{ (inputs.os == 'windows-latest' || inputs.os == 'macos-14') && 'OrcaSlicer_dep' || 'destdir' }}
output-cmd: ${{ inputs.os == 'windows-latest' && '$env:GITHUB_OUTPUT' || '"$GITHUB_OUTPUT"'}}
run: |
- echo cache-key=${{ runner.os }}${{ env.dash-arch }}-cache-orcaslicer_deps-build-${{ hashFiles('deps/**') }} >> ${{ env.output-cmd }}
+ echo cache-key=${{ inputs.os }}${{ env.dash-arch }}-cache-orcaslicer_deps-build-${{ hashFiles('deps/**') }} >> ${{ env.output-cmd }}
echo cache-path=${{ github.workspace }}/deps/build${{ env.underscore-arch }}/${{ env.dep-folder-name }}${{ env.underscore-arch }} >> ${{ env.output-cmd }}
- name: load cache
diff --git a/.github/workflows/build_deps.yml b/.github/workflows/build_deps.yml
index bd6d7f215b..3dc26aa51a 100644
--- a/.github/workflows/build_deps.yml
+++ b/.github/workflows/build_deps.yml
@@ -69,15 +69,16 @@ jobs:
cd ${{ github.workspace }}/deps/build
- name: Build on Mac ${{ inputs.arch }}
- if: inputs.os == 'macos-12'
+ if: inputs.os == 'macos-14'
working-directory: ${{ github.workspace }}
run: |
- brew install cmake git gettext automake texinfo ninja
+ brew install cmake
+ brew install automake texinfo ninja libtool
brew list
mkdir -p ${{ github.workspace }}/deps/build_${{ inputs.arch }}
mkdir -p ${{ github.workspace }}/deps/build_${{ inputs.arch }}/OrcaSlicer_dep_${{ inputs.arch }}
brew uninstall --ignore-dependencies zstd
- ./build_release_macos.sh -dpx -a ${{ inputs.arch }} -t 10.15
+ ./build_release_macos.sh -dpx -a ${{ inputs.arch }} -t 10.15 -1
brew install zstd
@@ -102,7 +103,7 @@ jobs:
# Upload Artifacts
- name: Upload Mac ${{ inputs.arch }} artifacts
- if: inputs.os == 'macos-12'
+ if: inputs.os == 'macos-14'
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_dep_mac_${{ inputs.arch }}_${{ env.date }}
diff --git a/.github/workflows/build_orca.yml b/.github/workflows/build_orca.yml
index 835db630f1..727046687e 100644
--- a/.github/workflows/build_orca.yml
+++ b/.github/workflows/build_orca.yml
@@ -75,23 +75,24 @@ jobs:
# Mac
- name: Install tools mac
- if: inputs.os == 'macos-12'
+ if: inputs.os == 'macos-14'
run: |
- brew install cmake git gettext tree ninja
+ brew install cmake
+ brew install tree ninja libtool
brew list
mkdir -p ${{ github.workspace }}/deps/build_${{inputs.arch}}
mkdir -p ${{ github.workspace }}/deps/build_${{inputs.arch}}/OrcaSlicer_dep_${{inputs.arch}}
tree ${{ github.workspace }}/deps/build_${{inputs.arch}}/OrcaSlicer_dep_${{inputs.arch}}
- name: Build slicer mac
- if: inputs.os == 'macos-12'
+ if: inputs.os == 'macos-14'
working-directory: ${{ github.workspace }}
run: |
- ./build_release_macos.sh -s -n -x -a ${{inputs.arch}} -t 10.15
+ ./build_release_macos.sh -s -n -x -a ${{inputs.arch}} -t 10.15 -1
# Thanks to RaySajuuk, it's working now
- name: Sign app and notary
- if: (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release/')) && inputs.os == 'macos-12'
+ if: (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release/')) && inputs.os == 'macos-14'
working-directory: ${{ github.workspace }}
env:
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
@@ -117,21 +118,21 @@ jobs:
xcrun stapler staple OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
- name: Create DMG without notary
- if: github.ref != 'refs/heads/main' && inputs.os == 'macos-12'
+ if: github.ref != 'refs/heads/main' && inputs.os == 'macos-14'
working-directory: ${{ github.workspace }}
run: |
ln -s /Applications ${{ github.workspace }}/build_${{inputs.arch}}/OrcaSlicer/Applications
hdiutil create -volname "OrcaSlicer" -srcfolder ${{ github.workspace }}/build_${{inputs.arch}}/OrcaSlicer -ov -format UDZO OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
- name: Upload artifacts mac
- if: inputs.os == 'macos-12'
+ if: inputs.os == 'macos-14'
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}
path: ${{ github.workspace }}/OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
- name: Deploy Mac release
- if: github.ref == 'refs/heads/main' && inputs.os == 'macos-12'
+ if: github.ref == 'refs/heads/main' && inputs.os == 'macos-14'
uses: WebFreak001/deploy-nightly@v3.1.0
with:
upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label}
diff --git a/README.md b/README.md
index 88bae970bf..855503c1ef 100644
--- a/README.md
+++ b/README.md
@@ -133,7 +133,7 @@ Support me
[](https://ko-fi.com/G2G5IP3CP)
## Some background
-OrcaSlicer is originaly forked from Bambu Studio, it was previously known as BambuStudio-SoftFever.
+OrcaSlicer is originally forked from Bambu Studio, it was previously known as BambuStudio-SoftFever.
Bambu Studio is forked from [PrusaSlicer](https://github.com/prusa3d/PrusaSlicer) by Prusa Research, which is from [Slic3r](https://github.com/Slic3r/Slic3r) by Alessandro Ranellucci and the RepRap community.
Orca Slicer incorporates a lot of features from SuperSlicer by @supermerill
diff --git a/build_release_macos.sh b/build_release_macos.sh
index 5da682d3f8..38a360ed2d 100755
--- a/build_release_macos.sh
+++ b/build_release_macos.sh
@@ -34,6 +34,9 @@ while getopts ":dpa:snt:xbc:h" opt; do
c )
export BUILD_CONFIG="$OPTARG"
;;
+ 1 )
+ export CMAKE_BUILD_PARALLEL_LEVEL=1
+ ;;
h ) echo "Usage: ./build_release_macos.sh [-d]"
echo " -d: Build deps only"
echo " -a: Set ARCHITECTURE (arm64 or x86_64)"
@@ -43,6 +46,7 @@ while getopts ":dpa:snt:xbc:h" opt; do
echo " -x: Use Ninja CMake generator, default is Xcode"
echo " -b: Build without reconfiguring CMake"
echo " -c: Set CMake build configuration, default is Release"
+ echo " -1: Use single job for building"
exit 0
;;
* )
diff --git a/build_release_vs2022.bat b/build_release_vs2022.bat
index 870bad7bb6..76e8c14f0c 100644
--- a/build_release_vs2022.bat
+++ b/build_release_vs2022.bat
@@ -44,9 +44,10 @@ if "%1"=="slicer" (
)
echo "building deps.."
-echo cmake ../ -G "Visual Studio 17 2022" -A x64 -DDESTDIR="%CD%/OrcaSlicer_dep" -DCMAKE_BUILD_TYPE=%build_type% -DDEP_DEBUG=%debug% -DORCA_INCLUDE_DEBUG_INFO=%debuginfo%
-cmake ../ -G "Visual Studio 17 2022" -A x64 -DDESTDIR="%CD%/OrcaSlicer_dep" -DCMAKE_BUILD_TYPE=%build_type% -DDEP_DEBUG=%debug% -DORCA_INCLUDE_DEBUG_INFO=%debuginfo%
+echo on
+cmake ../ -G "Visual Studio 17 2022" -A x64 -DDESTDIR="%DEPS%" -DCMAKE_BUILD_TYPE=%build_type% -DDEP_DEBUG=%debug% -DORCA_INCLUDE_DEBUG_INFO=%debuginfo%
cmake --build . --config %build_type% --target deps -- -m
+@echo off
if "%1"=="deps" exit /b 0
@@ -56,9 +57,10 @@ cd %WP%
mkdir %build_dir%
cd %build_dir%
-echo cmake .. -G "Visual Studio 17 2022" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=%build_type%
-cmake .. -G "Visual Studio 17 2022" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=%build_type% -DWIN10SDK_PATH="C:/Program Files (x86)/Windows Kits/10/Include/10.0.22000.0"
+echo on
+cmake .. -G "Visual Studio 17 2022" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=%build_type% -DWIN10SDK_PATH="%WindowsSdkDir%Include\%WindowsSDKVersion%\"
cmake --build . --config %build_type% --target ALL_BUILD -- -m
+@echo off
cd ..
call run_gettext.bat
cd %build_dir%
diff --git a/doc/Home.md b/doc/Home.md
index 6753ecc647..cdbe12562f 100644
--- a/doc/Home.md
+++ b/doc/Home.md
@@ -2,6 +2,7 @@ Welcome to the OrcaSlicer WIKI!
We have divided it roughly into the following pages:
-* [Calibration](wiki/Calibration)
-* [Print settings](wiki/Print-settings)
-* [How to build Orca Slicer](wiki/How-to-build)
+- [Calibration](./Calibration)
+- [Print settings](./Print-settings)
+- [How to build Orca Slicer](./How-to-build)
+- [Developer Reference](./developer-reference/Home)
diff --git a/doc/How to build b/doc/How-to-build.md
similarity index 100%
rename from doc/How to build
rename to doc/How-to-build.md
diff --git a/doc/developer-reference/Home.md b/doc/developer-reference/Home.md
new file mode 100644
index 0000000000..bdbb65e07a
--- /dev/null
+++ b/doc/developer-reference/Home.md
@@ -0,0 +1,6 @@
+# For Developers
+
+This is a documentation from someone exploring the code and is by no means complete or even completely accurate. Please edit the parts you might find inaccurate. This is probably going to be helpful nonetheless.
+
+- [Preset, PresetBundle and PresetCollection](./Preset-and-bundle)
+- [Plater, Sidebar, Tab, ComboBox](./plater-sidebar-tab-combobox)
diff --git a/doc/developer-reference/Preset-and-bundle.md b/doc/developer-reference/Preset-and-bundle.md
new file mode 100644
index 0000000000..4e0b00d186
--- /dev/null
+++ b/doc/developer-reference/Preset-and-bundle.md
@@ -0,0 +1,43 @@
+This page deals with the explanation for 3 classes in the code.
+
+## [`Preset`](../../src/libslic3r/Preset.hpp)
+
+As the name might suggest this class deals with presets for various things. It defines an enum `Type` which basically tells you what kind of data the present contains. Below are a few explained and there corresponding UI elements
+
+#### Note: There is a lot of outdated and legacy code in the code base.
+
+- `TYPE_PRINT`: Refers to a process preset. It's called 'Print' probably due to some legacy code.
+
+
+
+- `TYPE_FILAMENT`: As the name suggests this preset is for filaments
+
+
+
+- `TYPE_PRINTER`: Preset for printers.
+
+
+
+There are other preset types but some of them are for SLA. Which is legacy code, since SLA printers are no longer supported. Above 3 are the important types.
+
+## [`PresetBundle`](../../src/libslic3r/PresetBundle.hpp)
+
+This is a bundle containing a few types of `PresetCollection`. One bundle has presets for some printers, filaments and some processes (TYPE_PRINT).
+
+`PresetCollection prints`\
+`PresetCollection filaments`\
+`PrinterPresetCollection printers`
+
+each one of these contains a collection of processes, filaments and printers respectively.\
+
+#### Note: Printers, filaments and processes in the bundle don't all have to be compatible with each other. In fact all the saved presets are stored in one `PresetBundle`. The `PresetBundle` is loaded on start up. The list of filaments and processes shown for a particular printer is a subset of `filaments` and `prints` `PresetCollection`s.
+
+## [`PresetCollection`](../../src/libslic3r/Preset.hpp)
+
+`PrinterPresetCollection` is a class derived from `PresetCollection`.
+
+These contain a collection of presets. The presets could be of any type.\
+functions of note here are:
+
+`get_edited_preset()`: returns the current selected preset along with any modifications the user has made.\
+`get_selected_preset()`: returns the current selected preset without the modifications the user has made.
diff --git a/doc/developer-reference/plater-sidebar-tab-combobox.md b/doc/developer-reference/plater-sidebar-tab-combobox.md
new file mode 100644
index 0000000000..a35ca6f8cf
--- /dev/null
+++ b/doc/developer-reference/plater-sidebar-tab-combobox.md
@@ -0,0 +1,23 @@
+### !! incomplete, possibly inaccurate, being updated with new info !!
+
+## [`Plater`](../../src/slic3r/GUI/Plater.hpp)
+
+Refers to the entire application. The whole view, file loading, project saving and loading is all managed by this class. This class contains members for the model viewer, the sidebar, gcode viewer and everything else.
+
+## [`Sidebar`](../../src/slic3r/GUI/Plater.hpp)
+
+This is relating the the sidebar in the application window
+
+
+
+## [`ComboBox`](../../src/slic3r/GUI/Widgets/ComboBox.hpp)
+
+The drop down menus where you can see and select presets
+
+
+
+## [`Tab`](../../src/slic3r/GUI/Tab.hpp)
+
+Refers to the various windows with settings. e.g. the Popup to edit printer or filament preset. Also the section to edit process preset and the object list. These 4 are managed by `TabPrinter`, `TabFilament`, `TabPrint` and `TabPrintModel` respectively.
+
+
diff --git a/doc/images/combobox.png b/doc/images/combobox.png
new file mode 100644
index 0000000000..0b720e6622
Binary files /dev/null and b/doc/images/combobox.png differ
diff --git a/doc/images/filament-preset.png b/doc/images/filament-preset.png
new file mode 100644
index 0000000000..7ad4c1c52e
Binary files /dev/null and b/doc/images/filament-preset.png differ
diff --git a/doc/images/full-sidebar.png b/doc/images/full-sidebar.png
new file mode 100644
index 0000000000..316fd2e95f
Binary files /dev/null and b/doc/images/full-sidebar.png differ
diff --git a/doc/images/printer-preset.png b/doc/images/printer-preset.png
new file mode 100644
index 0000000000..d4d73718a1
Binary files /dev/null and b/doc/images/printer-preset.png differ
diff --git a/doc/images/process-preset.png b/doc/images/process-preset.png
new file mode 100644
index 0000000000..2a2fc53db3
Binary files /dev/null and b/doc/images/process-preset.png differ
diff --git a/doc/images/tab-popup.png b/doc/images/tab-popup.png
new file mode 100644
index 0000000000..e31f47dc88
Binary files /dev/null and b/doc/images/tab-popup.png differ
diff --git a/doc/pellet-flow-coefficient.md b/doc/pellet-flow-coefficient.md
new file mode 100644
index 0000000000..8e91312ad6
--- /dev/null
+++ b/doc/pellet-flow-coefficient.md
@@ -0,0 +1,23 @@
+Large format printers with print volumes in the order of 1m^3 generally use pellets for printing.
+The overall tech is very similar to FDM printing.
+It is FDM printing, but instead of filaments, it uses pellets.
+
+The difference here is that where filaments have a filament_diameter that is used to calculate
+the volume of filament ingested, pellets have a particular flow_coefficient that is empirically
+devised for that particular pellet.
+
+pellet_flow_coefficient is basically a measure of the packing density of a particular pellet.
+Shape, material and density of an individual pellet will determine the packing density and
+the only thing that matters for 3d printing is how much of that pellet material is extruded by
+one turn of whatever feeding mehcanism/gear your printer uses. You can emperically derive that
+for your own pellets for a particular printer model.
+
+We are translating the pellet_flow_coefficient into filament_diameter so that everything works just like it
+does already with very minor adjustments.
+
+filament_diameter = sqrt( (4 \* pellet_flow_coefficient) / PI )
+
+sqrt just makes the relationship between flow_coefficient and volume linear.
+
+higher packing density -> more material extruded by single turn -> higher pellet_flow_coefficient -> treated as if a filament of larger diameter is being used
+All other calculations remain the same for slicing.
diff --git a/linux.d/clear-linux-os b/linux.d/clear-linux-os
new file mode 100644
index 0000000000..9453ddcce5
--- /dev/null
+++ b/linux.d/clear-linux-os
@@ -0,0 +1,33 @@
+# these are the Clear Linux specific build functions
+FOUND_GTK3=$(ls /usr/lib64/libgtk-3.so.* 2>/dev/null | tail -n 1 || true)
+
+# Addtional bundles for OrcaSlicer
+export REQUIRED_BUNDLES=(
+ c-basic
+ dev-utils
+ devpkg-curl
+ devpkg-glew
+ devpkg-glu
+ devpkg-gstreamer
+ devpkg-gtk3
+ devpkg-libmspack
+ devpkg-libsecret
+ devpkg-openssl
+ devpkg-webkitgtk
+ file
+ git
+ lib-opengl
+ perl-basic
+ texinfo
+ wget
+)
+
+if [[ -n "$UPDATE_LIB" ]]
+then
+ echo "Updating linux ..."
+ echo swupd bundle-add -y ${REQUIRED_BUNDLES[@]}
+ echo -e "done\n"
+ exit 0
+fi
+
+FOUND_GTK3_DEV=$(ls /usr/lib64/libgtk-3.so 2>/dev/null || true)
diff --git a/linux.d/debian b/linux.d/debian
index fd13c706c1..e58a6ec55d 100644
--- a/linux.d/debian
+++ b/linux.d/debian
@@ -20,7 +20,6 @@ REQUIRED_DEV_PACKAGES=(
libssl-dev
libtool
libudev-dev
- libwebkit2gtk-4.0-dev
ninja-build
texinfo
wget
@@ -38,6 +37,16 @@ then
then
REQUIRED_DEV_PACKAGES+=(libssl-dev libcurl4-openssl-dev)
fi
+
+ # check which version of libwebkit2gtk is available
+ apt show --quiet libwebkit2gtk-4.0-dev >/dev/null 2>&1
+ if [ "$?" == "0" ]
+ then
+ REQUIRED_DEV_PACKAGES+=(libwebkit2gtk-4.0-dev)
+ else
+ REQUIRED_DEV_PACKAGES+=(libwebkit2gtk-4.1-dev)
+ fi
+
# TODO: optimize this by checking which, if any, packages are already installed
# install them all at once
diff --git a/localization/i18n/OrcaSlicer.pot b/localization/i18n/OrcaSlicer.pot
index 8251ed5a92..74e7686ae1 100644
--- a/localization/i18n/OrcaSlicer.pot
+++ b/localization/i18n/OrcaSlicer.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -2730,10 +2730,12 @@ msgstr ""
msgid "You need to select the material type and color first."
msgstr ""
-msgid "Please input a valid value (K in 0~0.3)"
+#, possible-c-format, possible-boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
msgstr ""
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#, possible-c-format, possible-boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
msgstr ""
msgid "Other Color"
@@ -3095,11 +3097,11 @@ msgstr ""
msgid "Edit multiple printers"
msgstr ""
-msgid "Select connected printetrs (0/6)"
+msgid "Select connected printers (0/6)"
msgstr ""
#, possible-c-format, possible-boost-format
-msgid "Select Connected Printetrs (%d/6)"
+msgid "Select Connected Printers (%d/6)"
msgstr ""
#, possible-c-format, possible-boost-format
@@ -3161,7 +3163,7 @@ msgstr ""
msgid "Printing Failed"
msgstr ""
-msgid "PrintingPause"
+msgid "Printing Pause"
msgstr ""
msgid "Prepare"
@@ -6686,9 +6688,6 @@ msgstr ""
msgid "Error code"
msgstr ""
-msgid "Printer local connection failed, please try again."
-msgstr ""
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr ""
@@ -7666,6 +7665,56 @@ msgstr ""
msgid "The configuration is up to date."
msgstr ""
+msgid "Obj file Import color"
+msgstr ""
+
+msgid "Specify number of colors:"
+msgstr ""
+
+#, possible-c-format, possible-boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr ""
+
+msgid "Recommended "
+msgstr ""
+
+msgid "Current filament colors:"
+msgstr ""
+
+msgid "Quick set:"
+msgstr ""
+
+msgid "Color match"
+msgstr ""
+
+msgid "Approximate color matching."
+msgstr ""
+
+msgid "Append"
+msgstr ""
+
+msgid "Add consumable extruder after existing extruders."
+msgstr ""
+
+msgid "Reset mapped extruders."
+msgstr ""
+
+msgid "Cluster colors"
+msgstr ""
+
+msgid "Map Filament"
+msgstr ""
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+
msgid "Ramming customization"
msgstr ""
@@ -9638,6 +9687,22 @@ msgid ""
"at least at minimum speed to reduce the frequency of starting and stoping"
msgstr ""
+msgid "Don't slow down outer walls"
+msgstr ""
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+
msgid "Layer time"
msgstr ""
@@ -12752,10 +12817,10 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
@@ -12850,20 +12915,13 @@ msgstr ""
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
-msgstr ""
-
-#, possible-c-format, possible-boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
+"want to override the other results?"
msgstr ""
msgid "Please find the best line on your plate"
msgstr ""
-msgid "Please find the cornor with perfect degree of extrusion"
+msgid "Please find the corner with perfect degree of extrusion"
msgstr ""
msgid "Input Value"
@@ -13106,6 +13164,9 @@ msgstr ""
msgid "PETG"
msgstr ""
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr ""
@@ -13190,6 +13251,9 @@ msgstr ""
msgid "Upload to storage"
msgstr ""
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, possible-c-format, possible-boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr ""
@@ -13793,6 +13857,12 @@ msgstr ""
msgid "Refresh Printers"
msgstr ""
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -14124,17 +14194,15 @@ msgstr ""
msgid "Could not connect to SimplyPrint"
msgstr ""
-msgid "SimplyPrint account not linked. Go to Connect options to set it up."
-msgstr ""
-
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
+msgid "Internal error"
msgstr ""
msgid "Unknown error"
msgstr ""
+msgid "SimplyPrint account not linked. Go to Connect options to set it up."
+msgstr ""
+
msgid "Connection to Flashforge works correctly."
msgstr ""
@@ -14152,151 +14220,151 @@ msgstr ""
msgid "User cancelled."
msgstr ""
-
-#: resources/data/hints.ini: [hint:Precise wall]
-msgid "Precise wall\nDid you know that turning on precise wall can improve precision and layer consistency?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Sandwich mode]
-msgid "Sandwich mode\nDid you know that you can use sandwich mode (inner-outer-inner) to improve precision and layer consistency if your model doesn't have very steep overhangs?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Chamber temperature]
-msgid "Chamber temperature\nDid you know that OrcaSlicer supports chamber temperature?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Calibration]
-msgid "Calibration\nDid you know that calibrating your printer can do wonders? Check out our beloved calibration solution in OrcaSlicer."
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Auxiliary fan]
-msgid "Auxiliary fan\nDid you know that OrcaSlicer supports Auxiliary part cooling fan?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Air filtration]
-msgid "Air filtration/Exhaust Fan\nDid you know that OrcaSlicer can support Air filtration/Exhaust Fan?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:G-code window]
-msgid "G-code window\nYou can turn on/off the G-code window by pressing the C key."
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Switch workspaces]
-msgid "Switch workspaces\nYou can switch between Prepare and Preview workspaces by pressing the Tab key."
-msgstr ""
-
-#: resources/data/hints.ini: [hint:How to use keyboard shortcuts]
-msgid "How to use keyboard shortcuts\nDid you know that Orca Slicer offers a wide range of keyboard shortcuts and 3D scene operations."
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Reverse on odd]
-msgid "Reverse on odd\nDid you know that Reverse on odd feature can significantly improve the surface quality of your overhangs?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Cut Tool]
-msgid "Cut Tool\nDid you know that you can cut a model at any angle and position with the cutting tool?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Fix Model]
-msgid "Fix Model\nDid you know that you can fix a corrupted 3D model to avoid a lot of slicing problems on the Windows system?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Timelapse]
-msgid "Timelapse\nDid you know that you can generate a timelapse video during each print?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Auto-Arrange]
-msgid "Auto-Arrange\nDid you know that you can auto-arrange all objects in your project?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Auto-Orient]
-msgid "Auto-Orient\nDid you know that you can rotate objects to an optimal orientation for printing by a simple click?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Lay on Face]
-msgid "Lay on Face\nDid you know that you can quickly orient a model so that one of its faces sits on the print bed? Select the \"Place on face\" function or press the F key."
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Object List]
-msgid "Object List\nDid you know that you can view all objects/parts in a list and change settings for each object/part?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Search Functionality]
-msgid "Search Functionality\nDid you know that you use the Search tool to quickly find a specific Orca Slicer setting?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Simplify Model]
-msgid "Simplify Model\nDid you know that you can reduce the number of triangles in a mesh using the Simplify mesh feature? Right-click the model and select Simplify model."
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Slicing Parameter Table]
-msgid "Slicing Parameter Table\nDid you know that you can view all objects/parts on a table and change settings for each object/part?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Split to Objects/Parts]
-msgid "Split to Objects/Parts\nDid you know that you can split a big object into small ones for easy colorizing or printing?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Subtract a Part]
-msgid "Subtract a Part\nDid you know that you can subtract one mesh from another using the Negative part modifier? That way you can, for example, create easily resizable holes directly in Orca Slicer."
-msgstr ""
-
-#: resources/data/hints.ini: [hint:STEP]
-msgid "STEP\nDid you know that you can improve your print quality by slicing a STEP file instead of an STL?\nOrca Slicer supports slicing STEP files, providing smoother results than a lower resolution STL. Give it a try!"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Z seam location]
-msgid "Z seam location\nDid you know that you can customize the location of the Z seam, and even paint it on your print, to have it in a less visible location? This improves the overall look of your model. Check it out!"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Fine-tuning for flow rate]
-msgid "Fine-tuning for flow rate\nDid you know that flow rate can be fine-tuned for even better-looking prints? Depending on the material, you can improve the overall finish of the printed model by doing some fine-tuning."
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Split your prints into plates]
-msgid "Split your prints into plates\nDid you know that you can split a model that has a lot of parts into individual plates ready to print? This will simplify the process of keeping track of all the parts."
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer Height]
-msgid "Speed up your print with Adaptive Layer Height\nDid you know that you can print a model even faster, by using the Adaptive Layer Height option? Check it out!"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Support painting]
-msgid "Support painting\nDid you know that you can paint the location of your supports? This feature makes it easy to place the support material only on the sections of the model that actually need it."
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Different types of supports]
-msgid "Different types of supports\nDid you know that you can choose from multiple types of supports? Tree supports work great for organic models, while saving filament and improving print speed. Check them out!"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Printing Silk Filament]
-msgid "Printing Silk Filament\nDid you know that Silk filament needs special consideration to print it successfully? Higher temperature and lower speed are always recommended for the best results."
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Brim for better adhesion]
-msgid "Brim for better adhesion\nDid you know that when printing models have a small contact interface with the printing surface, it's recommended to use a brim?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Set parameters for multiple objects]
-msgid "Set parameters for multiple objects\nDid you know that you can set slicing parameters for all selected objects at one time?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Stack objects]
-msgid "Stack objects\nDid you know that you can stack objects as a whole one?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Flush into support/objects/infill]
-msgid "Flush into support/objects/infill\nDid you know that you can save the wasted filament by flushing them into support/objects/infill during filament change?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Improve strength]
-msgid "Improve strength\nDid you know that you can use more wall loops and higher sparse infill density to improve the strength of the model?"
-msgstr ""
-
-#: resources/data/hints.ini: [hint:When need to print with the printer door opened]
-msgid "When need to print with the printer door opened\nDid you know that opening the printer door can reduce the probability of extruder/hotend clogging when printing lower temperature filament with a higher enclosure temperature. More info about this in the Wiki."
-msgstr ""
-
-#: resources/data/hints.ini: [hint:Avoid warping]
-msgid "Avoid warping\nDid you know that when printing materials that are prone to warping such as ABS, appropriately increasing the heatbed temperature can reduce the probability of warping."
-msgstr ""
+
+#: resources/data/hints.ini: [hint:Precise wall]
+msgid "Precise wall\nDid you know that turning on precise wall can improve precision and layer consistency?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Sandwich mode]
+msgid "Sandwich mode\nDid you know that you can use sandwich mode (inner-outer-inner) to improve precision and layer consistency if your model doesn't have very steep overhangs?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Chamber temperature]
+msgid "Chamber temperature\nDid you know that OrcaSlicer supports chamber temperature?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Calibration]
+msgid "Calibration\nDid you know that calibrating your printer can do wonders? Check out our beloved calibration solution in OrcaSlicer."
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Auxiliary fan]
+msgid "Auxiliary fan\nDid you know that OrcaSlicer supports Auxiliary part cooling fan?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Air filtration]
+msgid "Air filtration/Exhaust Fan\nDid you know that OrcaSlicer can support Air filtration/Exhaust Fan?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:G-code window]
+msgid "G-code window\nYou can turn on/off the G-code window by pressing the C key."
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Switch workspaces]
+msgid "Switch workspaces\nYou can switch between Prepare and Preview workspaces by pressing the Tab key."
+msgstr ""
+
+#: resources/data/hints.ini: [hint:How to use keyboard shortcuts]
+msgid "How to use keyboard shortcuts\nDid you know that Orca Slicer offers a wide range of keyboard shortcuts and 3D scene operations."
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Reverse on odd]
+msgid "Reverse on odd\nDid you know that Reverse on odd feature can significantly improve the surface quality of your overhangs?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Cut Tool]
+msgid "Cut Tool\nDid you know that you can cut a model at any angle and position with the cutting tool?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Fix Model]
+msgid "Fix Model\nDid you know that you can fix a corrupted 3D model to avoid a lot of slicing problems on the Windows system?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Timelapse]
+msgid "Timelapse\nDid you know that you can generate a timelapse video during each print?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Auto-Arrange]
+msgid "Auto-Arrange\nDid you know that you can auto-arrange all objects in your project?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Auto-Orient]
+msgid "Auto-Orient\nDid you know that you can rotate objects to an optimal orientation for printing by a simple click?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Lay on Face]
+msgid "Lay on Face\nDid you know that you can quickly orient a model so that one of its faces sits on the print bed? Select the \"Place on face\" function or press the F key."
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Object List]
+msgid "Object List\nDid you know that you can view all objects/parts in a list and change settings for each object/part?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Search Functionality]
+msgid "Search Functionality\nDid you know that you use the Search tool to quickly find a specific Orca Slicer setting?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Simplify Model]
+msgid "Simplify Model\nDid you know that you can reduce the number of triangles in a mesh using the Simplify mesh feature? Right-click the model and select Simplify model."
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Slicing Parameter Table]
+msgid "Slicing Parameter Table\nDid you know that you can view all objects/parts on a table and change settings for each object/part?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Split to Objects/Parts]
+msgid "Split to Objects/Parts\nDid you know that you can split a big object into small ones for easy colorizing or printing?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Subtract a Part]
+msgid "Subtract a Part\nDid you know that you can subtract one mesh from another using the Negative part modifier? That way you can, for example, create easily resizable holes directly in Orca Slicer."
+msgstr ""
+
+#: resources/data/hints.ini: [hint:STEP]
+msgid "STEP\nDid you know that you can improve your print quality by slicing a STEP file instead of an STL?\nOrca Slicer supports slicing STEP files, providing smoother results than a lower resolution STL. Give it a try!"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Z seam location]
+msgid "Z seam location\nDid you know that you can customize the location of the Z seam, and even paint it on your print, to have it in a less visible location? This improves the overall look of your model. Check it out!"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Fine-tuning for flow rate]
+msgid "Fine-tuning for flow rate\nDid you know that flow rate can be fine-tuned for even better-looking prints? Depending on the material, you can improve the overall finish of the printed model by doing some fine-tuning."
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Split your prints into plates]
+msgid "Split your prints into plates\nDid you know that you can split a model that has a lot of parts into individual plates ready to print? This will simplify the process of keeping track of all the parts."
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer Height]
+msgid "Speed up your print with Adaptive Layer Height\nDid you know that you can print a model even faster, by using the Adaptive Layer Height option? Check it out!"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Support painting]
+msgid "Support painting\nDid you know that you can paint the location of your supports? This feature makes it easy to place the support material only on the sections of the model that actually need it."
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Different types of supports]
+msgid "Different types of supports\nDid you know that you can choose from multiple types of supports? Tree supports work great for organic models, while saving filament and improving print speed. Check them out!"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Printing Silk Filament]
+msgid "Printing Silk Filament\nDid you know that Silk filament needs special consideration to print it successfully? Higher temperature and lower speed are always recommended for the best results."
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Brim for better adhesion]
+msgid "Brim for better adhesion\nDid you know that when printing models have a small contact interface with the printing surface, it's recommended to use a brim?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Set parameters for multiple objects]
+msgid "Set parameters for multiple objects\nDid you know that you can set slicing parameters for all selected objects at one time?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Stack objects]
+msgid "Stack objects\nDid you know that you can stack objects as a whole one?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Flush into support/objects/infill]
+msgid "Flush into support/objects/infill\nDid you know that you can save the wasted filament by flushing them into support/objects/infill during filament change?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Improve strength]
+msgid "Improve strength\nDid you know that you can use more wall loops and higher sparse infill density to improve the strength of the model?"
+msgstr ""
+
+#: resources/data/hints.ini: [hint:When need to print with the printer door opened]
+msgid "When need to print with the printer door opened\nDid you know that opening the printer door can reduce the probability of extruder/hotend clogging when printing lower temperature filament with a higher enclosure temperature. More info about this in the Wiki."
+msgstr ""
+
+#: resources/data/hints.ini: [hint:Avoid warping]
+msgid "Avoid warping\nDid you know that when printing materials that are prone to warping such as ABS, appropriately increasing the heatbed temperature can reduce the probability of warping."
+msgstr ""
diff --git a/localization/i18n/ca/OrcaSlicer_ca.po b/localization/i18n/ca/OrcaSlicer_ca.po
index 9cfb2cc975..0aa4b66478 100644
--- a/localization/i18n/ca/OrcaSlicer_ca.po
+++ b/localization/i18n/ca/OrcaSlicer_ca.po
@@ -8,8 +8,8 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
-"PO-Revision-Date: 2024-05-23 23:00+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
+"PO-Revision-Date: 2024-06-15 11:02+0200\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: ca\n"
@@ -252,10 +252,10 @@ msgid "Set Scale"
msgstr "Establir Escala"
msgid "Reset Position"
-msgstr "Restableix la posició"
+msgstr "Restableix la Posició"
msgid "Reset Rotation"
-msgstr "Reinicialitza la Rotació"
+msgstr "Restableix la Rotació"
msgid "World coordinates"
msgstr "Coordenades cartesianes"
@@ -280,7 +280,7 @@ msgid "Planar"
msgstr "Planar"
msgid "Dovetail"
-msgstr "Encadellat"
+msgstr "Matxembrat"
msgid "Auto"
msgstr "Automàtic"
@@ -1493,7 +1493,7 @@ msgstr ""
"perfils d'impressora no es veuran afectats."
msgid "Rebuild"
-msgstr "Recomposició"
+msgstr "Reconstruint"
msgid "Loading current presets"
msgstr "Carregant els valors perfils actuals"
@@ -2873,11 +2873,13 @@ msgstr "Estàs segur que vols esborrar la informació del filament?"
msgid "You need to select the material type and color first."
msgstr "Primer heu de seleccionar el tipus de material i el color."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Introduïu un valor vàlid ( K en 0 ~ 0.3 )"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr ""
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "Introduïu un valor vàlid ( K a 0 ~ 0.3, N a 0.6 ~ 2.0 )"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr ""
msgid "Other Color"
msgstr "Un altre color"
@@ -3307,12 +3309,12 @@ msgstr "Tasca enviada"
msgid "Edit multiple printers"
msgstr "Editar diverses impressores"
-msgid "Select connected printetrs (0/6)"
-msgstr "Seleccionar impressores connectades (0/6)"
+msgid "Select connected printers (0/6)"
+msgstr ""
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
-msgstr "Seleccionar Impressores Connectades (%d/6)"
+msgid "Select Connected Printers (%d/6)"
+msgstr ""
#, c-format, boost-format
msgid "The maximum number of printers that can be selected is %d"
@@ -3374,8 +3376,8 @@ msgstr "Finalitzar Impressió"
msgid "Printing Failed"
msgstr "Impressió Fallida"
-msgid "PrintingPause"
-msgstr "Pausar Impressió"
+msgid "Printing Pause"
+msgstr ""
msgid "Prepare"
msgstr "Preparació"
@@ -3474,7 +3476,7 @@ msgid "Send Options"
msgstr "Opcions d'Enviament"
msgid "Send to"
-msgstr ""
+msgstr "Enviar a"
msgid ""
"printers at the same time.(It depends on how many devices can undergo "
@@ -4083,12 +4085,14 @@ msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
msgstr ""
+"Format d'entrada invàlid. Esperat vector de dimensions en el format següent: "
+"\"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "El valor introduït és fora de rang"
msgid "Some extension in the input is invalid"
-msgstr ""
+msgstr "Alguna extensió de l'entrada no és vàlida"
#, boost-format
msgid "Invalid format. Expected vector format: \"%1%\""
@@ -6803,10 +6807,10 @@ msgstr ""
"obrir fitxers .step"
msgid "Associate web links to OrcaSlicer"
-msgstr ""
+msgstr "Associar enllaços web a OrcaSlicer"
msgid "Associate URLs to OrcaSlicer"
-msgstr ""
+msgstr "Associeu URLs a OrcaSlicer"
msgid "Current association: "
msgstr "Associació actual: "
@@ -6821,22 +6825,28 @@ msgid ""
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
"from Printable.com"
msgstr ""
+"Associar OrcaSlicer amb els enllaços prusaslicer:// perquè Orca pugui obrir "
+"models des de Printable.com"
msgid "Associate bambustudio://"
-msgstr ""
+msgstr "Associar bambustudio://"
msgid ""
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
"from makerworld.com"
msgstr ""
+"Associar OrcaSlicer amb els enllaços bambustudio:// perquè Orca pugui obrir "
+"models des de makerworld.com"
msgid "Associate cura://"
-msgstr ""
+msgstr "Associar cura://"
msgid ""
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
"thingiverse.com"
msgstr ""
+"Associar OrcaSlicer amb els enllaços cura:// perquè Orca pugui obrir models "
+"des de thingiverse.com"
msgid "Maximum recent projects"
msgstr "Màxim projectes recents"
@@ -7215,9 +7225,6 @@ msgstr "enviament completat"
msgid "Error code"
msgstr "Codi d'error"
-msgid "Printer local connection failed, please try again."
-msgstr "La connexió local de la impressora ha fallat, torneu-ho a provar."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr ""
"No hi ha compte d'inici de sessió, només es mostren impressores en mode LAN"
@@ -7987,10 +7994,10 @@ msgstr "Espai imprimible"
#. TRN: First argument is parameter name, the second one is the value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
-msgstr ""
+msgstr "Valor no vàlid proporcionat per al paràmetre %1%: %2%"
msgid "G-code flavor is switched"
-msgstr ""
+msgstr "El tipus de codi-G s'ha canviat"
msgid "Cooling Fan"
msgstr "Ventilador de refrigeració"
@@ -8370,6 +8377,56 @@ msgstr "No hi ha actualitzacions disponibles."
msgid "The configuration is up to date."
msgstr "La configuració està actualitzada."
+msgid "Obj file Import color"
+msgstr ""
+
+msgid "Specify number of colors:"
+msgstr ""
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr ""
+
+msgid "Recommended "
+msgstr ""
+
+msgid "Current filament colors:"
+msgstr ""
+
+msgid "Quick set:"
+msgstr ""
+
+msgid "Color match"
+msgstr ""
+
+msgid "Approximate color matching."
+msgstr ""
+
+msgid "Append"
+msgstr ""
+
+msgid "Add consumable extruder after existing extruders."
+msgstr ""
+
+msgid "Reset mapped extruders."
+msgstr ""
+
+msgid "Cluster colors"
+msgstr ""
+
+msgid "Map Filament"
+msgstr ""
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+
msgid "Ramming customization"
msgstr "Configuració de Moldejat de punta( Ramming )"
@@ -8461,27 +8518,38 @@ msgid ""
"Windows Media Player is required for this task! Do you want to enable "
"'Windows Media Player' for your operation system?"
msgstr ""
+"El Windows Media Player és necessari per a aquesta tasca. Voleu habilitar el "
+"\"Windows Media Player\" per al vostre sistema operatiu?"
msgid ""
"BambuSource has not correctly been registered for media playing! Press Yes "
"to re-register it. You will be promoted twice"
msgstr ""
+"BambuSource no s'ha registrat correctament per a la reproducció multimèdia! "
+"Premeu Sí per tornar-lo a registrar. Seràs promocionat dues vegades"
msgid ""
"Missing BambuSource component registered for media playing! Please re-"
"install BambuStutio or seek after-sales help."
msgstr ""
+"Falta el component BambuSource registrat per a la reproducció multimèdia! "
+"Torneu a instal·lar BambuStutio o busqueu ajuda postvenda."
msgid ""
"Using a BambuSource from a different install, video play may not work "
"correctly! Press Yes to fix it."
msgstr ""
+"Utilitzar un BambuSource des d'una instal·lació diferent, la reproducció de "
+"vídeo pot no funcionar correctament! Premeu Sí per solucionar-ho."
msgid ""
"Your system is missing H.264 codecs for GStreamer, which are required to "
"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-"
"libav packages, then restart Orca Slicer?)"
msgstr ""
+"Al vostre sistema li falten còdecs H.264 per al GStreamer, necessaris per "
+"reproduir vídeo. (Proveu d'instal·lar els paquets gstreamer1.0-plugins-bad "
+"o gstreamer1.0-libav i, a continuació, reinicieu Orca Slicer?)"
msgid "Bambu Network plug-in not detected."
msgstr "No s'ha detectat el Plug-In de Xarxa Bambu."
@@ -10614,6 +10682,15 @@ msgid ""
"external surface finish. It can also cause the infill to shine through the "
"external surfaces of the part."
msgstr ""
+"Ordre de perímetre/farciment. Quan es desmarca la casella, primer "
+"s'imprimeixen els perímetres, cosa que funciona millor en la majoria dels "
+"casos.\n"
+"\n"
+"Imprimir el farciment primer pot ajudar amb voladissos extrems, ja que els "
+"perímetres tenen el farciment veí per adherir-s'hi. Tanmateix, el farciment "
+"empenyerà lleugerament les parets impreses on s'uneix, cosa que provocarà un "
+"pitjor acabat superficial extern. També pot fer que el farciment ressalti a "
+"través de les superfícies externes de la peça."
msgid "Wall loop direction"
msgstr "Direcció del bucle de perímetre"
@@ -10800,6 +10877,22 @@ msgstr ""
"s'aturarà mai i funcionarà almenys a una velocitat mínima per reduir la "
"freqüència d'arrencada i aturada"
+msgid "Don't slow down outer walls"
+msgstr ""
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+
msgid "Layer time"
msgstr "Temps de capa"
@@ -11386,7 +11479,7 @@ msgstr ""
"la velocitat màxima permesa a la capa \"close_fan_the_first_x_layers\" + 1."
msgid "layer"
-msgstr ""
+msgstr "capa"
msgid "Support interface fan speed"
msgstr "Velocitat del ventilador a la interfície de suport"
@@ -14742,36 +14835,15 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"Consulteu els detalls del Calibratge de les Dinàmiques de Flux al nostre "
-"wiki.\n"
-"\n"
-"Normalment el calibratge és innecessari. Quan inicieu una impressió d'un sol "
-"color/material, amb l'opció \"Calibratge de les Dinàmiques de Flux\" marcada "
-"al menú d'inici d'impressió, la impressora seguirà la forma antiga, "
-"calibrarà el filament abans de la impressió; Quan s'inicia una impressió "
-"multicolor/multimaterial, la impressora utilitzarà el paràmetre de "
-"compensació predeterminat per al filament durant cada canvi de filament, el "
-"qual tindrà un bon resultat en la majoria dels casos.\n"
-"\n"
-"Tingueu en compte que hi ha alguns casos que faran que el resultat del "
-"calibratge no sigui fiable: utilitzar una placa de textura per fer el "
-"calibratge; si la placa d'impressió no té una bona adherència ( renteu la "
-"placa d'impressió o apliqueu adhesiu! ) ... Podeu trobar més informació a la "
-"nostra wiki.\n"
-"\n"
-"Els resultats del calibratge tenen al voltant d'un 10 per cent de fluctuació "
-"en la nostra prova, la qual cosa pot fer que el resultat no sigui exactament "
-"el mateix en cada calibratge. Encara estem investigant la causa arrel per "
-"fer millores amb noves actualitzacions."
msgid "When to use Flow Rate Calibration"
msgstr "Quan s'ha d'utilitzar el Calibratge del Ratio de Flux"
@@ -14904,26 +14976,14 @@ msgstr "El nom no pot superar els 40 caràcters."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
-"Només es desarà un dels resultats amb el mateix nom. Estàs segur que vols "
-"sobreescriure els altres resultats?"
-
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Ja hi ha un resultat històric de calibratge amb el mateix nom: %s. Només es "
-"pot guardar un dels resultats amb el mateix nom. Estàs segur que vols "
-"sobreescriure el resultat històric?"
msgid "Please find the best line on your plate"
msgstr "Busqueu la millor línia a la placa"
-msgid "Please find the cornor with perfect degree of extrusion"
-msgstr "Busqueu la cantonada amb un grau d'extrusió perfecte"
+msgid "Please find the corner with perfect degree of extrusion"
+msgstr ""
msgid "Input Value"
msgstr "Valor d'entrada"
@@ -15184,6 +15244,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU"
@@ -15281,6 +15344,9 @@ msgstr ""
msgid "Upload to storage"
msgstr "Pujar a l'emmagatzematge"
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "El nom del fitxer que vol pujar no acaba amb \"%s\". Voleu continuar?"
@@ -15935,7 +16001,7 @@ msgstr "Consells diaris"
#, c-format, boost-format
msgid "nozzle memorized: %.1f %s"
-msgstr ""
+msgstr "broquet memoritzat: %.1f %s"
msgid ""
"Your nozzle diameter in preset is not consistent with memorized nozzle "
@@ -15981,6 +16047,12 @@ msgstr "Estàs segur de tancar sessió?"
msgid "Refresh Printers"
msgstr "Refrescar Impressores"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -16433,21 +16505,17 @@ msgstr "Connectat a SimplyPrint amb èxit!"
msgid "Could not connect to SimplyPrint"
msgstr "No s'ha pogut connectar a SimplyPrint"
+msgid "Internal error"
+msgstr ""
+
+msgid "Unknown error"
+msgstr "Error desconegut"
+
msgid "SimplyPrint account not linked. Go to Connect options to set it up."
msgstr ""
"No s'ha enllaçat el compte de SimplyPrint. Aneu a Opcions de Connexió per "
"configurar-lo."
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
-msgstr ""
-"La mida del fitxer supera el límit de pujada de 100 MB. Si us plau, "
-"carregueu el vostre fitxer a través del panell."
-
-msgid "Unknown error"
-msgstr "Error desconegut"
-
msgid "Connection to Flashforge works correctly."
msgstr "La connexió amb Flashforge funciona correctament."
@@ -16857,38 +16925,18 @@ msgstr ""
"augmentar adequadament la temperatura del llit pot reduir la probabilitat de "
"deformació."
-#~ msgid "X"
-#~ msgstr "X"
-
-#~ msgid "Y"
-#~ msgstr "Y"
-
#~ msgid ""
-#~ "Associate OrcaSlicer with prusaslicer:// links so that Orca can open "
-#~ "PrusaSlicer links from Printable.com"
+#~ "File size exceeds the 100MB upload limit. Please upload your file through "
+#~ "the panel."
#~ msgstr ""
-#~ "Associar OrcaSlicer amb els enllaços prusaslicer:// perquè Orca pugui "
-#~ "obrir enllaços PrusaSlicer des de Printable.com"
+#~ "La mida del fitxer supera el límit de pujada de 100 MB. Si us plau, "
+#~ "carregueu el vostre fitxer a través del panell."
-#~ msgid ""
-#~ "Order of wall/infill. When the tickbox is unchecked the walls are printed "
-#~ "first, which works best in most cases.\n"
-#~ "\n"
-#~ "Printing walls first may help with extreme overhangs as the walls have "
-#~ "the neighbouring infill to adhere to. However, the infill will slighly "
-#~ "push out the printed walls where it is attached to them, resulting in a "
-#~ "worse external surface finish. It can also cause the infill to shine "
-#~ "through the external surfaces of the part."
-#~ msgstr ""
-#~ "Ordre de Perímetre/Farciment. Quan es desmarca la casella, primer "
-#~ "s'imprimeixen els perímetres, cosa que funciona millor en la majoria dels "
-#~ "casos.\n"
-#~ "\n"
-#~ "Imprimir primer els perímetres pot ajudar amb voladissos extrems, ja que "
-#~ "els perímetres tenen el farciment veí al qual adherir-se. Tanmateix, el "
-#~ "farciment empenyerà lleugerament els perímetres impresos als que "
-#~ "s'adhereix, cosa que provocarà un pitjor acabat superficial extern. També "
-#~ "pot fer que el farciment brilli a les superfícies externes de la peça."
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "Introduïu un valor vàlid ( K en 0 ~ 0.3 )"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr "Introduïu un valor vàlid ( K a 0 ~ 0.3, N a 0.6 ~ 2.0 )"
#~ msgid "V"
#~ msgstr "V"
@@ -16955,22 +17003,27 @@ msgstr ""
#~ msgstr "HMS"
#, fuzzy
+#~| msgid "Unsaved Changes"
#~ msgid "Actions For Unsaved Changes"
#~ msgstr "Canvis no desats"
#, fuzzy
+#~| msgid "Reset scale"
#~ msgid "Preset Value"
#~ msgstr "Valor predefinit esquerre"
#, fuzzy
+#~| msgid "Modified G-codes"
#~ msgid "Modified Value"
#~ msgstr "Valor modificat"
#, fuzzy
+#~| msgid "User Preset"
#~ msgid "Use Preset Value"
#~ msgstr "Perfil d'usuari"
#, fuzzy
+#~| msgid "Save file as:"
#~ msgid "Save Modified Value"
#~ msgstr "Desa el fitxer com a:"
@@ -16983,6 +17036,10 @@ msgstr ""
#~ "Voleu desar aquests paràmetres canviats (valor modificat)?"
#, fuzzy
+#~| msgid ""
+#~| "You have changed some preset settings. \n"
+#~| "Would you like to keep these changed settings (new value) after "
+#~| "switching preset?"
#~ msgid ""
#~ "\n"
#~ "Would you like to keep these changed settings(modified value) after "
diff --git a/localization/i18n/cs/OrcaSlicer_cs.po b/localization/i18n/cs/OrcaSlicer_cs.po
index 102269c9c3..899de827ac 100644
--- a/localization/i18n/cs/OrcaSlicer_cs.po
+++ b/localization/i18n/cs/OrcaSlicer_cs.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: 2023-09-30 15:15+0200\n"
"Last-Translator: René Mošner \n"
"Language-Team: \n"
@@ -2835,10 +2835,12 @@ msgstr "Jste si jistý, že chcete vymazat informace o filamentu?"
msgid "You need to select the material type and color first."
msgstr "Nejprve musíte vybrat typ materiálu a barvu."
-msgid "Please input a valid value (K in 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
msgstr ""
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
msgstr ""
msgid "Other Color"
@@ -3251,11 +3253,11 @@ msgstr ""
msgid "Edit multiple printers"
msgstr ""
-msgid "Select connected printetrs (0/6)"
+msgid "Select connected printers (0/6)"
msgstr ""
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
+msgid "Select Connected Printers (%d/6)"
msgstr ""
#, c-format, boost-format
@@ -3317,7 +3319,7 @@ msgstr ""
msgid "Printing Failed"
msgstr ""
-msgid "PrintingPause"
+msgid "Printing Pause"
msgstr ""
msgid "Prepare"
@@ -3998,12 +4000,14 @@ msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
msgstr ""
+"Neplatný vstupní formát. Očekává se vektor rozměrů v následujícím formátu: "
+"\"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "Zadaná hodnota je mimo rozsah"
msgid "Some extension in the input is invalid"
-msgstr ""
+msgstr "Některá přípona ve vstupu je neplatná"
#, boost-format
msgid "Invalid format. Expected vector format: \"%1%\""
@@ -7045,9 +7049,6 @@ msgstr "odeslat dokončeno"
msgid "Error code"
msgstr "Chybový kód"
-msgid "Printer local connection failed, please try again."
-msgstr "Lokální připojení k tiskárně selhalo, zkuste to znovu."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr "Žádný přihlašovací účet, jsou zobrazeny pouze tiskárny v režimu LAN"
@@ -7770,10 +7771,10 @@ msgstr "Prostor pro tisk"
#. TRN: First argument is parameter name, the second one is the value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
-msgstr ""
+msgstr "Neplatná hodnota zadaná pro parametr %1%: %2%"
msgid "G-code flavor is switched"
-msgstr ""
+msgstr "G-code flavor je přepnutá"
msgid "Cooling Fan"
msgstr "Ventilátor chlazení"
@@ -8138,6 +8139,56 @@ msgstr "Žádné aktualizace nejsou dostupné."
msgid "The configuration is up to date."
msgstr "Konfigurace je aktuální."
+msgid "Obj file Import color"
+msgstr ""
+
+msgid "Specify number of colors:"
+msgstr ""
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr ""
+
+msgid "Recommended "
+msgstr ""
+
+msgid "Current filament colors:"
+msgstr ""
+
+msgid "Quick set:"
+msgstr ""
+
+msgid "Color match"
+msgstr ""
+
+msgid "Approximate color matching."
+msgstr ""
+
+msgid "Append"
+msgstr ""
+
+msgid "Add consumable extruder after existing extruders."
+msgstr ""
+
+msgid "Reset mapped extruders."
+msgstr ""
+
+msgid "Cluster colors"
+msgstr ""
+
+msgid "Map Filament"
+msgstr ""
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+
msgid "Ramming customization"
msgstr "Přizpůsobení rapidní extruze"
@@ -10333,6 +10384,22 @@ msgstr ""
"nezastaví a poběží alespoň na minimální rychlost, aby se snížila frekvence "
"spouštění a zastavování"
+msgid "Don't slow down outer walls"
+msgstr ""
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+
msgid "Layer time"
msgstr "Čas vrstvy"
@@ -13961,32 +14028,15 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"Najdete podrobnosti o kalibraci průtoku dynamiky v naší wiki.\n"
-"\n"
-"Obvykle kalibrace není potřebná. Při spuštění tisku s jednobarevným/"
-"materiálovým filamentem a zaškrtnutou volbou \"kalibrace průtoku dynamiky\" "
-"v menu spuštění tisku, tiskárna bude postupovat podle staré metody a "
-"zkalibruje filament před tiskem. Při spuštění tisku s vícebarevným/"
-"materiálovým filamentem bude tiskárna při každé změně filamentu používat "
-"výchozí kompenzační parametr pro filament, což má většinou dobrý výsledek.\n"
-"\n"
-"Všimněte si, že existují některé případy, které mohou způsobit, že výsledek "
-"kalibrace nebude spolehlivý: použití texturované podložky pro kalibraci; "
-"podložka nemá dobrou adhezi (prosím umyjte podložku nebo naneste "
-"lepidlo!) ... Více informací najdete v naší wiki.\n"
-"\n"
-"Výsledky kalibrace mají v našich testech asi 10% fluktuaci, což může "
-"způsobit, že výsledek nebude přesně stejný u každé kalibrace. Stále zkoumáme "
-"kořenovou příčinu, abychom mohli provést zlepšení v nových aktualizacích."
msgid "When to use Flow Rate Calibration"
msgstr "Kdy použít kalibraci průtoku"
@@ -14115,26 +14165,14 @@ msgstr "Název nemůže překročit 40 znaků."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
-"Bude uložen pouze jeden z výsledků se stejným názvem. Opravdu chcete přepsat "
-"ostatní výsledky?"
-
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Už existuje historický kalibrační výsledek se stejným názvem: %s. Bude "
-"uložen pouze jeden z výsledků se stejným názvem. Opravdu chcete přepsat "
-"historický výsledek?"
msgid "Please find the best line on your plate"
msgstr "Najděte nejlepší linku na své podložce"
-msgid "Please find the cornor with perfect degree of extrusion"
-msgstr "Prosím, najděte roh s dokonalým stupněm extruze"
+msgid "Please find the corner with perfect degree of extrusion"
+msgstr ""
msgid "Input Value"
msgstr "Vstupní hodnota"
@@ -14388,6 +14426,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU"
@@ -14484,6 +14525,9 @@ msgstr "Pokud je to nutné, použijte pro oddělení složek lomítko (/)."
msgid "Upload to storage"
msgstr "Nahrát do úložiště"
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "Název nahrávaného souboru neskončí s \"%s\". Přejete si pokračovat?"
@@ -15090,6 +15134,12 @@ msgstr ""
msgid "Refresh Printers"
msgstr "Obnovit tiskárny"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -15440,17 +15490,15 @@ msgstr ""
msgid "Could not connect to SimplyPrint"
msgstr ""
-msgid "SimplyPrint account not linked. Go to Connect options to set it up."
-msgstr ""
-
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
+msgid "Internal error"
msgstr ""
msgid "Unknown error"
msgstr ""
+msgid "SimplyPrint account not linked. Go to Connect options to set it up."
+msgstr ""
+
msgid "Connection to Flashforge works correctly."
msgstr ""
@@ -15806,6 +15854,69 @@ msgid ""
"probability of warping."
msgstr ""
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr "Lokální připojení k tiskárně selhalo, zkuste to znovu."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "Najdete podrobnosti o kalibraci průtoku dynamiky v naší wiki.\n"
+#~ "\n"
+#~ "Obvykle kalibrace není potřebná. Při spuštění tisku s jednobarevným/"
+#~ "materiálovým filamentem a zaškrtnutou volbou \"kalibrace průtoku dynamiky"
+#~ "\" v menu spuštění tisku, tiskárna bude postupovat podle staré metody a "
+#~ "zkalibruje filament před tiskem. Při spuštění tisku s vícebarevným/"
+#~ "materiálovým filamentem bude tiskárna při každé změně filamentu používat "
+#~ "výchozí kompenzační parametr pro filament, což má většinou dobrý "
+#~ "výsledek.\n"
+#~ "\n"
+#~ "Všimněte si, že existují některé případy, které mohou způsobit, že "
+#~ "výsledek kalibrace nebude spolehlivý: použití texturované podložky pro "
+#~ "kalibraci; podložka nemá dobrou adhezi (prosím umyjte podložku nebo "
+#~ "naneste lepidlo!) ... Více informací najdete v naší wiki.\n"
+#~ "\n"
+#~ "Výsledky kalibrace mají v našich testech asi 10% fluktuaci, což může "
+#~ "způsobit, že výsledek nebude přesně stejný u každé kalibrace. Stále "
+#~ "zkoumáme kořenovou příčinu, abychom mohli provést zlepšení v nových "
+#~ "aktualizacích."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr ""
+#~ "Bude uložen pouze jeden z výsledků se stejným názvem. Opravdu chcete "
+#~ "přepsat ostatní výsledky?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "Už existuje historický kalibrační výsledek se stejným názvem: %s. Bude "
+#~ "uložen pouze jeden z výsledků se stejným názvem. Opravdu chcete přepsat "
+#~ "historický výsledek?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "Prosím, najděte roh s dokonalým stupněm extruze"
+
#~ msgid "V"
#~ msgstr "V"
diff --git a/localization/i18n/de/OrcaSlicer_de.po b/localization/i18n/de/OrcaSlicer_de.po
index 78a948044d..a32781426b 100644
--- a/localization/i18n/de/OrcaSlicer_de.po
+++ b/localization/i18n/de/OrcaSlicer_de.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: \n"
"Last-Translator: Heiko Liebscher \n"
"Language-Team: \n"
@@ -2895,11 +2895,14 @@ msgstr "Sind Sie sicher, dass Sie die Filamentinformationen löschen möchten?"
msgid "You need to select the material type and color first."
msgstr "Sie müssen zuerst den Materialtyp und die Farbe auswählen."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Bitte geben Sie einen gültigen Wert ein (K in 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr ""
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "Bitte geben Sie einen gültigen Wert ein (K in 0~0.3, N in 0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr ""
+"Bitte geben Sie einen gültigen Wert ein (K in %.1f~%.1f, N in %.1f~%.1f)"
msgid "Other Color"
msgstr "Andere Farbe"
@@ -3337,12 +3340,12 @@ msgstr "Aufgabe gesendet"
msgid "Edit multiple printers"
msgstr "Mehrere Drucker bearbeiten"
-msgid "Select connected printetrs (0/6)"
-msgstr "Wählen die verbundenen Drucker (0/6)"
+msgid "Select connected printers (0/6)"
+msgstr ""
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
-msgstr "Wählen die verbundenen Drucker (%d/6)"
+msgid "Select Connected Printers (%d/6)"
+msgstr ""
#, c-format, boost-format
msgid "The maximum number of printers that can be selected is %d"
@@ -3405,8 +3408,8 @@ msgstr "Druck beendet"
msgid "Printing Failed"
msgstr "Druck fehlgeschlagen"
-msgid "PrintingPause"
-msgstr "Druckpause"
+msgid "Printing Pause"
+msgstr "Druck pausiert"
msgid "Prepare"
msgstr "Vorbereiten"
@@ -3506,7 +3509,7 @@ msgid "Send Options"
msgstr "Senden-Optionen"
msgid "Send to"
-msgstr ""
+msgstr "Senden an"
msgid ""
"printers at the same time.(It depends on how many devices can undergo "
@@ -4126,12 +4129,14 @@ msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
msgstr ""
+"Ungültiges Eingabeformat. Erwarteter Vektor der Abmessungen im folgenden "
+"Format: \"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "Der Eingabewert ist nicht im gültigen Bereich"
msgid "Some extension in the input is invalid"
-msgstr ""
+msgstr "Erweiterung in der Eingabe ist ungültig"
#, boost-format
msgid "Invalid format. Expected vector format: \"%1%\""
@@ -7280,11 +7285,6 @@ msgstr "Senden abgeschlossen"
msgid "Error code"
msgstr "Fehlercode"
-msgid "Printer local connection failed, please try again."
-msgstr ""
-"Die lokale Verbindung des Druckers ist fehlgeschlagen. Bitte versuchen Sie "
-"es erneut."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr "Kein Login-Konto, nur Drucker im LAN-Modus werden angezeigt"
@@ -8067,10 +8067,10 @@ msgstr "Druckbarer Raum"
#. TRN: First argument is parameter name, the second one is the value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
-msgstr ""
+msgstr "Ungültiger Wert für Parameter %1%: %2% angegeben"
msgid "G-code flavor is switched"
-msgstr ""
+msgstr "G-Code-Variante wird umgeschaltet"
msgid "Cooling Fan"
msgstr "Kühlung"
@@ -8461,6 +8461,60 @@ msgstr "Keine Updates verfügbar."
msgid "The configuration is up to date."
msgstr "Die Konfiguration ist auf dem neuesten Stand."
+msgid "Obj file Import color"
+msgstr "Obj file Import color"
+
+msgid "Specify number of colors:"
+msgstr "Specify number of colors:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "The color count should be in range [%d, %d]."
+
+msgid "Recommended "
+msgstr "Recommended "
+
+msgid "Current filament colors:"
+msgstr "Current filament colors:"
+
+msgid "Quick set:"
+msgstr "Quick set:"
+
+msgid "Color match"
+msgstr "Color match"
+
+msgid "Approximate color matching."
+msgstr "Approximate color matching."
+
+msgid "Append"
+msgstr "Append"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "Add consumable extruder after existing extruders."
+
+msgid "Reset mapped extruders."
+msgstr "Reset mapped extruders."
+
+msgid "Cluster colors"
+msgstr "Cluster colors"
+
+msgid "Map Filament"
+msgstr "Map Filament"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"Warning: The count of newly added and \n"
+" current extruders exceeds 16."
+
msgid "Ramming customization"
msgstr "Ramming-Anpassung"
@@ -8548,27 +8602,40 @@ msgid ""
"Windows Media Player is required for this task! Do you want to enable "
"'Windows Media Player' for your operation system?"
msgstr ""
+"Windows Media Player wird für diese Aufgabe benötigt! Möchten Sie 'Windows "
+"Media Player' für Ihr Betriebssystem aktivieren?"
msgid ""
"BambuSource has not correctly been registered for media playing! Press Yes "
"to re-register it. You will be promoted twice"
msgstr ""
+"BambuSource wurde nicht korrekt für das Abspielen von Medien registriert! "
+"Drücken Sie Ja, um es erneut zu registrieren. Sie werden zweimal aufgefordert"
msgid ""
"Missing BambuSource component registered for media playing! Please re-"
"install BambuStutio or seek after-sales help."
msgstr ""
+"Fehlendes BambuSource-Komponente für das Abspielen von Medien registriert! "
+"Bitte installieren Sie BambuStudio erneut oder suchen Sie nach "
+"Kundendiensthilfe."
msgid ""
"Using a BambuSource from a different install, video play may not work "
"correctly! Press Yes to fix it."
msgstr ""
+"Verwendung eines BambuSource aus einer anderen Installation, das Abspielen "
+"von Videos funktioniert möglicherweise nicht korrekt! Drücken Sie Ja, um es "
+"zu beheben."
msgid ""
"Your system is missing H.264 codecs for GStreamer, which are required to "
"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-"
"libav packages, then restart Orca Slicer?)"
msgstr ""
+"Ihr System fehlt H.264-Codecs für GStreamer, die zum Abspielen von Videos "
+"erforderlich sind. (Versuchen Sie, die Pakete gstreamer1.0-plugins-bad oder "
+"gstreamer1.0-libav zu installieren und starten Sie Orca Slicer neu?)"
msgid "Bambu Network plug-in not detected."
msgstr "Bambu Network Plugin nicht erkannt."
@@ -10895,6 +10962,33 @@ msgstr ""
"und läuft zumindest mit minimaler Geschwindigkeit, um die Häufigkeit des "
"Ein- und Ausschaltens zu reduzieren"
+msgid "Don't slow down outer walls"
+msgstr "Äußere Wände nicht verlangsamen"
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+"Wenn diese Einstellung aktiviert ist, wird sichergestellt, dass die externen "
+"Umfänge nicht verlangsamt werden, um die Mindestschichtzeit zu erreichen. "
+"Dies ist besonders hilfreich in den folgenden Szenarien:\n"
+"\n"
+" 1. Um Änderungen im Glanz beim Drucken von glänzenden Filamenten zu "
+"vermeiden\n"
+"2. Um Änderungen in der Geschwindigkeit der äußeren Wand zu vermeiden, die "
+"leichte Wandartefakte erzeugen können, die wie Z-Banding aussehen\n"
+"3. Um das Drucken mit Geschwindigkeiten zu vermeiden, die VFAs (feine "
+"Artefakte) an den äußeren Wänden verursachen\n"
+"\n"
+
msgid "Layer time"
msgstr "Schichtdauer"
@@ -11483,7 +11577,7 @@ msgstr ""
"zulässiger Geschwindigkeit."
msgid "layer"
-msgstr ""
+msgstr "Schicht"
msgid "Support interface fan speed"
msgstr "Stützstruktur-Schnittstelle"
@@ -14834,35 +14928,35 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"Sie finden die Details der Dynamischen-Kalibrierung in unserem Wiki.\n"
+"Bitte finden Sie die Details zur Flussdynamik-Kalibrierung in unserem Wiki.\n"
"\n"
-"Normalerweise ist die Kalibrierung nicht erforderlich. Wenn Sie einen Einzel-"
-"Farb-/Materialdruck mit der Option \"Flussdynamik-Kalibrierung\" im "
-"Druckstartmenü starten, wird der Drucker den alten Weg gehen und das "
-"Filament vor dem Druck kalibrieren; Wenn Sie einen Mehrfarben-/Materialdruck "
-"starten, verwendet der Drucker den Standard-Kompensationsparameter für das "
-"Filament während jedes Filamentwechsels, was in den meisten Fällen zu einem "
-"guten Ergebnis führt.\n"
+"Normalerweise ist die Kalibrierung nicht erforderlich. Wenn Sie einen Druck "
+"mit einer einzigen Farbe/einem einzigen Material starten und die Option "
+"\"Flussdynamik-Kalibrierung\" im Druckstartmenü aktiviert ist, folgt der "
+"Drucker dem alten Weg, kalibriert das Filament vor dem Druck; Wenn Sie einen "
+"Druck mit mehreren Farben/Materialien starten, verwendet der Drucker den "
+"Standardkompensationsparameter für das Filament bei jedem Filamentwechsel, "
+"was in den meisten Fällen zu einem guten Ergebnis führt.\n"
"\n"
-"Bitte beachten Sie, dass es einige Fälle gibt, in denen das Kalibrierungs-"
-"Ergebnis nicht zuverlässig ist: Verwendung einer Texturplatte zur "
-"Kalibrierung; Die Bauplatte hat keine gute Haftung (bitte waschen Sie die "
-"Bauplatte oder tragen Sie Klebestift auf!) ... Sie finden mehr in unserem "
-"Wiki.\n"
+"Bitte beachten Sie, dass es einige Fälle gibt, die die "
+"Kalibrierungsergebnisse unzuverlässig machen können, wie z.B. unzureichende "
+"Haftung auf dem Druckbett. Eine Verbesserung der Haftung kann durch Waschen "
+"des Druckbetts oder Auftragen von Klebstoff erreicht werden. Weitere "
+"Informationen zu diesem Thema finden Sie in unserem Wiki.\n"
"\n"
-"Die Kalibrierungsergebnisse haben in unserem Test etwa 10 Prozent "
-"Schwankungen, was dazu führen kann, dass das Ergebnis nicht genau bei jeder "
-"Kalibrierung gleich ist. Wir untersuchen immer noch die Ursache, um mit "
-"neuen Updates Verbesserungen vorzunehmen."
+"Die Kalibrierungsergebnisse haben in unserem Test etwa 10 Prozent Jitter, "
+"was dazu führen kann, dass das Ergebnis bei jeder Kalibrierung nicht genau "
+"dasselbe ist. Wir untersuchen immer noch die Ursache, um mit neuen Updates "
+"Verbesserungen vorzunehmen."
msgid "When to use Flow Rate Calibration"
msgstr "Wann soll die Flussratenkalibrierung verwendet werden"
@@ -14996,26 +15090,16 @@ msgstr "Der Name darf 40 Zeichen nicht überschreiten."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
-"Nur eines der Ergebnisse mit dem gleichen Namen wird gespeichert. Sind Sie "
+"Es wird nur eines der Ergebnisse mit demselben Namen gespeichert. Sind Sie "
"sicher, dass Sie die anderen Ergebnisse überschreiben möchten?"
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Es gibt bereits ein historisches Kalibrierungsergebnis mit dem gleichen "
-"Namen: %s. Nur eines der Ergebnisse mit dem gleichen Namen wird gespeichert. "
-"Sind Sie sicher, dass Sie das historische Ergebnis überschreiben möchten?"
-
msgid "Please find the best line on your plate"
msgstr "Bitte finden Sie die beste Linie auf Ihrer Platte"
-msgid "Please find the cornor with perfect degree of extrusion"
-msgstr "Bitte finden Sie die Ecke mit perfektem Extrusionsgrad"
+msgid "Please find the corner with perfect degree of extrusion"
+msgstr "Bitte finden Sie die Ecke mit dem perfekten Extrusionsgrad"
msgid "Input Value"
msgstr "Eingabewert"
@@ -15274,6 +15358,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU"
@@ -15371,6 +15458,9 @@ msgstr ""
msgid "Upload to storage"
msgstr "Hochladen in den Speicher"
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr ""
@@ -16076,6 +16166,12 @@ msgstr "Sind Sie sicher, dass Sie sich abmelden möchten?"
msgid "Refresh Printers"
msgstr "Drucker aktualisieren"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -16522,21 +16618,17 @@ msgstr "Erfolgreich mit SimplyPrint verbunden!"
msgid "Could not connect to SimplyPrint"
msgstr "Konnte keine Verbindung zu SimplyPrint herstellen"
+msgid "Internal error"
+msgstr ""
+
+msgid "Unknown error"
+msgstr "Unbekannter Fehler"
+
msgid "SimplyPrint account not linked. Go to Connect options to set it up."
msgstr ""
"SimplyPrint-Konto nicht verknüpft. Gehen Sie zu den Verbindungsoptionen, um "
"es einzurichten."
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
-msgstr ""
-"Die Dateigröße überschreitet das 100-MB-Upload-Limit. Bitte laden Sie Ihre "
-"Datei über das Panel hoch."
-
-msgid "Unknown error"
-msgstr "Unbekannter Fehler"
-
msgid "Connection to Flashforge works correctly."
msgstr "Verbindung zu Flashforge funktioniert korrekt."
@@ -16952,6 +17044,96 @@ msgstr ""
"wie z.B. ABS, durch eine entsprechende Erhöhung der Heizbetttemperatur die "
"Wahrscheinlichkeit von Verwerfungen verringert werden kann."
+#~ msgid ""
+#~ "File size exceeds the 100MB upload limit. Please upload your file through "
+#~ "the panel."
+#~ msgstr ""
+#~ "Die Dateigröße überschreitet das 100-MB-Upload-Limit. Bitte laden Sie "
+#~ "Ihre Datei über das Panel hoch."
+
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "Bitte geben Sie einen gültigen Wert ein (K in 0~0.3)"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr "Bitte geben Sie einen gültigen Wert ein (K in 0~0.3, N in 0.6~2.0)"
+
+#~ msgid "Select connected printetrs (0/6)"
+#~ msgstr "Wählen die verbundenen Drucker (0/6)"
+
+#, c-format, boost-format
+#~ msgid "Select Connected Printetrs (%d/6)"
+#~ msgstr "Wählen die verbundenen Drucker (%d/6)"
+
+#~ msgid "PrintingPause"
+#~ msgstr "Druckpause"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr ""
+#~ "Die lokale Verbindung des Druckers ist fehlgeschlagen. Bitte versuchen "
+#~ "Sie es erneut."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "Sie finden die Details der Dynamischen-Kalibrierung in unserem Wiki.\n"
+#~ "\n"
+#~ "Normalerweise ist die Kalibrierung nicht erforderlich. Wenn Sie einen "
+#~ "Einzel-Farb-/Materialdruck mit der Option \"Flussdynamik-Kalibrierung\" "
+#~ "im Druckstartmenü starten, wird der Drucker den alten Weg gehen und das "
+#~ "Filament vor dem Druck kalibrieren; Wenn Sie einen Mehrfarben-/"
+#~ "Materialdruck starten, verwendet der Drucker den Standard-"
+#~ "Kompensationsparameter für das Filament während jedes Filamentwechsels, "
+#~ "was in den meisten Fällen zu einem guten Ergebnis führt.\n"
+#~ "\n"
+#~ "Bitte beachten Sie, dass es einige Fälle gibt, in denen das Kalibrierungs-"
+#~ "Ergebnis nicht zuverlässig ist: Verwendung einer Texturplatte zur "
+#~ "Kalibrierung; Die Bauplatte hat keine gute Haftung (bitte waschen Sie die "
+#~ "Bauplatte oder tragen Sie Klebestift auf!) ... Sie finden mehr in unserem "
+#~ "Wiki.\n"
+#~ "\n"
+#~ "Die Kalibrierungsergebnisse haben in unserem Test etwa 10 Prozent "
+#~ "Schwankungen, was dazu führen kann, dass das Ergebnis nicht genau bei "
+#~ "jeder Kalibrierung gleich ist. Wir untersuchen immer noch die Ursache, um "
+#~ "mit neuen Updates Verbesserungen vorzunehmen."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr ""
+#~ "Nur eines der Ergebnisse mit dem gleichen Namen wird gespeichert. Sind "
+#~ "Sie sicher, dass Sie die anderen Ergebnisse überschreiben möchten?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "Es gibt bereits ein historisches Kalibrierungsergebnis mit dem gleichen "
+#~ "Namen: %s. Nur eines der Ergebnisse mit dem gleichen Namen wird "
+#~ "gespeichert. Sind Sie sicher, dass Sie das historische Ergebnis "
+#~ "überschreiben möchten?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "Bitte finden Sie die Ecke mit perfektem Extrusionsgrad"
+
#~ msgid "X"
#~ msgstr "X"
diff --git a/localization/i18n/en/OrcaSlicer_en.po b/localization/i18n/en/OrcaSlicer_en.po
index cf2e505ae3..85c54de22c 100644
--- a/localization/i18n/en/OrcaSlicer_en.po
+++ b/localization/i18n/en/OrcaSlicer_en.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -2788,11 +2788,13 @@ msgstr "Are you sure you want to clear the filament information?"
msgid "You need to select the material type and color first."
msgstr "You need to select the material type and color first."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Please input a valid value (K in 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr ""
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr ""
msgid "Other Color"
msgstr "Other Color"
@@ -3202,11 +3204,11 @@ msgstr "Task Sent"
msgid "Edit multiple printers"
msgstr ""
-msgid "Select connected printetrs (0/6)"
+msgid "Select connected printers (0/6)"
msgstr ""
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
+msgid "Select Connected Printers (%d/6)"
msgstr ""
#, c-format, boost-format
@@ -3268,7 +3270,7 @@ msgstr ""
msgid "Printing Failed"
msgstr ""
-msgid "PrintingPause"
+msgid "Printing Pause"
msgstr ""
msgid "Prepare"
@@ -6996,9 +6998,6 @@ msgstr "Send complete"
msgid "Error code"
msgstr "Error code"
-msgid "Printer local connection failed, please try again."
-msgstr "Printer local connection failed; please try again."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr "No login account, only printers in LAN mode are displayed"
@@ -8109,6 +8108,60 @@ msgstr "No updates available."
msgid "The configuration is up to date."
msgstr "The configuration is up to date."
+msgid "Obj file Import color"
+msgstr "Obj file Import color"
+
+msgid "Specify number of colors:"
+msgstr "Specify number of colors:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "The color count should be in range [%d, %d]."
+
+msgid "Recommended "
+msgstr "Recommended "
+
+msgid "Current filament colors:"
+msgstr "Current filament colors:"
+
+msgid "Quick set:"
+msgstr "Quick set:"
+
+msgid "Color match"
+msgstr "Color match"
+
+msgid "Approximate color matching."
+msgstr "Approximate color matching."
+
+msgid "Append"
+msgstr "Append"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "Add consumable extruder after existing extruders."
+
+msgid "Reset mapped extruders."
+msgstr "Reset mapped extruders."
+
+msgid "Cluster colors"
+msgstr "Cluster colors"
+
+msgid "Map Filament"
+msgstr "Map Filament"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"Warning: The count of newly added and \n"
+" current extruders exceeds 16."
+
msgid "Ramming customization"
msgstr ""
@@ -10252,6 +10305,22 @@ msgstr ""
"and will instead run at least at minimum speed to reduce the frequency of "
"starting and stopping."
+msgid "Don't slow down outer walls"
+msgstr ""
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+
msgid "Layer time"
msgstr "Layer time"
@@ -13667,32 +13736,15 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"Please find the details of Flow Dynamics Calibration from our wiki.\n"
-"\n"
-"Usually the calibration is unnecessary. When you start a single color/"
-"material print, with the \"flow dynamics calibration\" option checked in the "
-"print start menu, the printer will follow the old way, calibrate the "
-"filament before the print; When you start a multi color/material print, the "
-"printer will use the default compensation parameter for the filament during "
-"every filament switch which will have a good result in most cases.\n"
-"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
-"\n"
-"The calibration results have about 10 percent jitter in our test, which may "
-"cause the result not exactly the same in each calibration. We are still "
-"investigating the root cause to do improvements with new updates."
msgid "When to use Flow Rate Calibration"
msgstr "When to use Flow Rate Calibration"
@@ -13819,25 +13871,15 @@ msgstr "The name cannot exceed 40 characters."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
"Only one of the results with the same name will be saved. Are you sure you "
"want to replace the other results?"
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"There is already a previous calibration result with the same name: %s. Only "
-"one of the results with the same name is saved. Are you sure you want to "
-"replace the previous result?"
-
msgid "Please find the best line on your plate"
msgstr "Please find the best line on your plate"
-msgid "Please find the cornor with perfect degree of extrusion"
+msgid "Please find the corner with perfect degree of extrusion"
msgstr "Please find the corner with the perfect degree of extrusion"
msgid "Input Value"
@@ -14089,6 +14131,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU"
@@ -14173,6 +14218,9 @@ msgstr "Use forward slashes ( / ) as a directory separator if needed."
msgid "Upload to storage"
msgstr ""
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "Upload filename doesn't end with \"%s\". Do you wish to continue?"
@@ -14788,7 +14836,7 @@ msgstr "Daily Tips"
#, c-format, boost-format
msgid "nozzle memorized: %.1f %s"
-msgstr ""
+msgstr "nozzle memorized: %.1f %s"
msgid ""
"Your nozzle diameter in preset is not consistent with memorized nozzle "
@@ -14833,6 +14881,12 @@ msgstr ""
msgid "Refresh Printers"
msgstr "Refresh Printers"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -15262,17 +15316,15 @@ msgstr ""
msgid "Could not connect to SimplyPrint"
msgstr ""
-msgid "SimplyPrint account not linked. Go to Connect options to set it up."
-msgstr ""
-
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
+msgid "Internal error"
msgstr ""
msgid "Unknown error"
msgstr ""
+msgid "SimplyPrint account not linked. Go to Connect options to set it up."
+msgstr ""
+
msgid "Connection to Flashforge works correctly."
msgstr ""
@@ -15633,6 +15685,74 @@ msgstr ""
"ABS, appropriately increasing the heatbed temperature can reduce the "
"probability of warping?"
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "Please input a valid value (K in 0~0.3)"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr "Printer local connection failed; please try again."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to replace the other results?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "There is already a previous calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to replace the previous result?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "Please find the corner with the perfect degree of extrusion"
+
#~ msgid "V"
#~ msgstr "V"
diff --git a/localization/i18n/es/OrcaSlicer_es.po b/localization/i18n/es/OrcaSlicer_es.po
index 40962be416..0b409a7e76 100644
--- a/localization/i18n/es/OrcaSlicer_es.po
+++ b/localization/i18n/es/OrcaSlicer_es.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: \n"
"Last-Translator: Carlos Fco. Caruncho Serrano \n"
"Language-Team: \n"
@@ -1638,7 +1638,7 @@ msgid "Infill"
msgstr "Relleno"
msgid "Support"
-msgstr "Soporte"
+msgstr "Soportes"
msgid "Flush options"
msgstr "Opciones de caudal"
@@ -1972,31 +1972,31 @@ msgid "Select All"
msgstr "Seleccionar Todo"
msgid "select all objects on current plate"
-msgstr "seleccionar todos los objetos de la bandeja actual"
+msgstr "Seleccionar todos los objetos de la bandeja actual"
msgid "Delete All"
msgstr "Borrar todo"
msgid "delete all objects on current plate"
-msgstr "eliminar todos los objetos de la bandeja actual"
+msgstr "Eliminar todos los objetos de la bandeja actual"
msgid "Arrange"
msgstr "Organizar"
msgid "arrange current plate"
-msgstr "posicionar la bandeja actual"
+msgstr "Posicionar la bandeja actual"
msgid "Reload All"
msgstr "Recargar todo"
msgid "reload all from disk"
-msgstr "recargar todo desde disco"
+msgstr "Recargar todo desde disco"
msgid "Auto Rotate"
msgstr "Rotación Automática"
msgid "auto rotate current plate"
-msgstr "auto rotar la bandeja actual"
+msgstr "Auto rotar la bandeja actual"
msgid "Delete Plate"
msgstr "Borrar Bandeja"
@@ -2416,16 +2416,18 @@ msgid "Failed to connect to the server"
msgstr "No se ha podido conectar con el servidor"
msgid "Check the status of current system services"
-msgstr "Check the status of current system services"
+msgstr "Comprobar el estado de los servicios actuales del sistema"
msgid "code"
-msgstr "code"
+msgstr "código"
msgid "Failed to connect to cloud service"
-msgstr "Failed to connect to cloud service"
+msgstr "Error al conectar con el servicio en la nube"
msgid "Please click on the hyperlink above to view the cloud service status"
-msgstr "Please click on the hyperlink above to view the cloud service status"
+msgstr ""
+"Haga clic en el hipervínculo anterior para ver el estado del servicio en la "
+"nube"
msgid "Failed to connect to the printer"
msgstr "No se ha podido conectar a la impresora"
@@ -2434,7 +2436,7 @@ msgid "Connection to printer failed"
msgstr "Connection to printer failed"
msgid "Please check the network connection of the printer and Orca."
-msgstr "Please check the network connection of the printer and Orca."
+msgstr "Compruebe la conexión de red de la impresora y Orca."
msgid "Connecting..."
msgstr "Conectando…"
@@ -2458,7 +2460,7 @@ msgid "AMS not connected"
msgstr "AMS no conectado"
msgid "Load"
-msgstr "Load"
+msgstr "Carga"
msgid "Unload"
msgstr "Descarga"
@@ -2517,7 +2519,7 @@ msgid "Check filament location"
msgstr "Probar localización de filamento"
msgid "Grab new filament"
-msgstr "Grab new filament"
+msgstr "Cargar nuevo filamento"
msgid ""
"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically "
@@ -2607,10 +2609,10 @@ msgid "Filling"
msgstr "Relleno"
msgid "Bed filling canceled."
-msgstr "Bed filling canceled."
+msgstr "Relleno de cama cancelado."
msgid "Bed filling done."
-msgstr "Bed filling done."
+msgstr "Relleno de cama hecho."
msgid "Searching for optimal orientation"
msgstr "Buscando una orientación óptima"
@@ -2628,16 +2630,18 @@ msgid "Login failed"
msgstr "Fallo en el inicio de sesión"
msgid "Please check the printer network connection."
-msgstr "Por favor, comprueba la conexión de área local."
+msgstr "Por favor, compruebe la conexión de área local."
msgid "Abnormal print file data. Please slice again."
-msgstr "Abnormal print file data: please slice again."
+msgstr "Datos de archivo de impresión anormales. Vuelva a laminar."
msgid "Task canceled."
-msgstr "Task canceled."
+msgstr "Tarea cancelada."
msgid "Upload task timed out. Please check the network status and try again."
-msgstr "Upload task timed out. Please check the network status and try again."
+msgstr ""
+"Se ha agotado el tiempo de carga. Compruebe el estado de la red e inténtelo "
+"de nuevo."
msgid "Cloud service connection failed. Please try again."
msgstr ""
@@ -2645,43 +2649,47 @@ msgstr ""
"nuevo."
msgid "Print file not found. please slice again."
-msgstr "Print file not found; please slice again."
+msgstr ""
+"No se ha encontrado el archivo de impresión; por favor, lamine de nuevo."
msgid ""
"The print file exceeds the maximum allowable size (1GB). Please simplify the "
"model and slice again."
msgstr ""
-"The print file exceeds the maximum allowable size (1GB). Please simplify the "
-"model and slice again."
+"El archivo de impresión supera el tamaño máximo permitido (1 GB). Por favor, "
+"simplifique el modelo y vuelva a laminarlo"
msgid "Failed to send the print job. Please try again."
msgstr "Fallo enviando el trabajo de impresión. Por favor inténtelo otra vez."
msgid "Failed to upload file to ftp. Please try again."
-msgstr "Failed to upload file to ftp. Please try again."
+msgstr ""
+"No se ha podido cargar el archivo en el ftp. Por favor, inténtelo de nuevo."
msgid ""
"Check the current status of the bambu server by clicking on the link above."
msgstr ""
-"Check the current status of the Bambu Lab server by clicking on the link "
-"above."
+"Compruebe el estado actual del servidor Bambú haciendo clic en el enlace "
+"anterior."
msgid ""
"The size of the print file is too large. Please adjust the file size and try "
"again."
msgstr ""
-"The size of the print file is too large. Please adjust the file size and try "
-"again."
+"El tamaño del archivo de impresión es demasiado grande. Ajuste el tamaño del "
+"archivo e inténtalo de nuevo."
msgid "Print file not found, Please slice it again and send it for printing."
-msgstr "Print file not found; please slice it again and send it for printing."
+msgstr ""
+"Archivo de impresión no encontrado; por favor, laminelo de nuevo y envíelo "
+"para imprimir."
msgid ""
"Failed to upload print file to FTP. Please check the network status and try "
"again."
msgstr ""
-"Failed to upload print file via FTP. Please check the network status and try "
-"again."
+"No se ha podido cargar el archivo de impresión a través de FTP. Compruebe el "
+"estado de la red e inténtelo de nuevo."
msgid "Sending print job over LAN"
msgstr "Enviando el trabajo de impresión a través de la LAN"
@@ -2891,11 +2899,13 @@ msgstr "¿Estás seguro que quieres limpiar la información de filamento?"
msgid "You need to select the material type and color first."
msgstr "Necesitas seleccionar el tipo y el color del material primero."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Por favor, introduzca un valor válido (K en 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr "Por favor, introduzca un valor válido (K en %.1f~%.1f)"
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "Por favor, introduzca un valor válido (K en 0~0.3, N en 0.6~2.0))"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr "Introduzca un valor válido (K en %.1f~%.1f, N en %.1f~%.1f)"
msgid "Other Color"
msgstr "Otro color"
@@ -3319,20 +3329,20 @@ msgid "Device"
msgstr "Dispositivo"
msgid "Task Sending"
-msgstr "Task Sending"
+msgstr "Envío de tareas"
msgid "Task Sent"
-msgstr "Task Sent"
+msgstr "Tarea enviada"
msgid "Edit multiple printers"
msgstr "Editar varias impresoras"
-msgid "Select connected printetrs (0/6)"
+msgid "Select connected printers (0/6)"
msgstr "Seleccionar impresoras conectadas (0/6)"
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
-msgstr "Seleccionar impresoras conectadas (%d/6)"
+msgid "Select Connected Printers (%d/6)"
+msgstr "Seleccionar Impresoras Conectadas (%d/6)"
#, c-format, boost-format
msgid "The maximum number of printers that can be selected is %d"
@@ -3342,7 +3352,7 @@ msgid "Offline"
msgstr "Fuera de línea"
msgid "No task"
-msgstr "No task"
+msgstr "Ninguna tarea"
msgid "View"
msgstr "Vista"
@@ -3354,16 +3364,16 @@ msgid "Edit Printers"
msgstr "Editar Impresoras"
msgid "Device Name"
-msgstr "Device Name"
+msgstr "Nombre del dispositivo"
msgid "Task Name"
-msgstr "Task Name"
+msgstr "Nombre de la tarea"
msgid "Device Status"
-msgstr "Device Status"
+msgstr "Estado del dispositivo"
msgid "Actions"
-msgstr "Actions"
+msgstr "Acciones"
msgid ""
"Please select the devices you would like to manage here (up to 6 devices)"
@@ -3394,8 +3404,8 @@ msgstr "Impresión Finalizada"
msgid "Printing Failed"
msgstr "Impresión fallida"
-msgid "PrintingPause"
-msgstr "Impresión Pausada"
+msgid "Printing Pause"
+msgstr "Pausa de Impresión"
msgid "Prepare"
msgstr "Preparar"
@@ -3419,7 +3429,7 @@ msgid "Sending Failed"
msgstr "Envío fallido"
msgid "Print Success"
-msgstr "Imprimir Éxito"
+msgstr "Impresión exitosa"
msgid "Print Failed"
msgstr "Error de impresión"
@@ -3434,25 +3444,25 @@ msgid "Stop"
msgstr "Detener"
msgid "Task Status"
-msgstr "Task Status"
+msgstr "Estado de la tarea"
msgid "Sent Time"
-msgstr "Sent Time"
+msgstr "Hora de envío"
msgid "There are no tasks to be sent!"
-msgstr "There are no tasks to be sent!"
+msgstr "No hay tareas que enviar."
msgid "No historical tasks!"
-msgstr "No historical tasks!"
+msgstr "Sin tareas históricas"
msgid "Loading..."
msgstr "Cargando..."
msgid "No AMS"
-msgstr "No AMS"
+msgstr "Sin AMS"
msgid "Send to Multi-device"
-msgstr "Send to Multi-device"
+msgstr "Enviar a multidispositivo"
msgid "Preparing print job"
msgstr "Preparando el trabajo de impresión"
@@ -3467,19 +3477,19 @@ msgid "The number of printers in use simultaneously cannot be equal to 0."
msgstr "El número de impresoras en uso simultáneamente no puede ser igual a 0."
msgid "Use External Spool"
-msgstr "Use External Spool"
+msgstr "Utilizar carrete externo"
msgid "Use AMS"
-msgstr "Use AMS"
+msgstr "Usar AMS"
msgid "Select Printers"
-msgstr "Select Printers"
+msgstr "Seleccionar impresoras"
msgid "Ams Status"
-msgstr "AMS Status"
+msgstr "Estado del AMS"
msgid "Printing Options"
-msgstr "Printing Options"
+msgstr "Opciones de impresión"
msgid "Bed Leveling"
msgstr "Nivelación de la cama"
@@ -3491,25 +3501,25 @@ msgid "Flow Dynamic Calibration"
msgstr "Calibración dinámica del caudal"
msgid "Send Options"
-msgstr "Send Options"
+msgstr "Opciones de envío"
msgid "Send to"
-msgstr ""
+msgstr "Mandar a"
msgid ""
"printers at the same time.(It depends on how many devices can undergo "
"heating at the same time.)"
msgstr ""
-"printers at the same time. (It depends on how many devices can undergo "
-"heating at the same time.)"
+"impresoras al mismo tiempo.(Depende de cuántos aparatos puedan calentarse al "
+"mismo tiempo)."
msgid "Wait"
-msgstr "Wait"
+msgstr "Espere"
msgid ""
"minute each batch.(It depends on how long it takes to complete the heating.)"
msgstr ""
-"minute each batch. (It depends on how long it takes to complete heating.)"
+"minuto cada tanda. (Depende de lo que tarde en terminar de calentarse)."
msgid "Send"
msgstr "Enviar"
@@ -3533,7 +3543,7 @@ msgid "The name is not allowed to end with space character."
msgstr "No se permite que el nombre termine con un espacio."
msgid "The name length exceeds the limit."
-msgstr "The name length exceeds the limit."
+msgstr "La longitud del nombre supera el límite."
msgid "Origin"
msgstr "Origen"
@@ -3618,8 +3628,8 @@ msgid ""
"The recommended minimum temperature cannot be higher than the recommended "
"maximum temperature.\n"
msgstr ""
-"The recommended minimum temperature cannot be higher than the recommended "
-"maximum temperature.\n"
+"La temperatura mínima recomendada no puede ser superior a la temperatura "
+"máxima recomendada.\\n\n"
msgid "Please check.\n"
msgstr "Por favor, compruébalo.\n"
@@ -4087,7 +4097,7 @@ msgstr "Validación de parámetros"
#, c-format, boost-format
msgid "Value %s is out of range. The valid range is from %d to %d."
-msgstr "Value %s is out of range. The valid range is from %d to %d."
+msgstr "El valor %s está fuera de rango. El rango válido es de %d a %d."
msgid "Value is out of range."
msgstr "El valor está fuera de rango."
@@ -4107,12 +4117,14 @@ msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
msgstr ""
+"Formato de entrada no válido. Se espera un vector de dimensiones con el "
+"siguiente formato: \"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "Valor de entrada fuera de rango"
msgid "Some extension in the input is invalid"
-msgstr ""
+msgstr "Alguna extensión de la entrada no es válida"
#, boost-format
msgid "Invalid format. Expected vector format: \"%1%\""
@@ -4290,10 +4302,10 @@ msgid "Normal mode"
msgstr "Modo normal"
msgid "Total Filament"
-msgstr "Total Filament"
+msgstr "Filamento total"
msgid "Model Filament"
-msgstr "Model Filament"
+msgstr "Modelo Filamento"
msgid "Prepare time"
msgstr "Planificar tiempo"
@@ -4389,7 +4401,7 @@ msgid "Spacing"
msgstr "Separación"
msgid "0 means auto spacing."
-msgstr "0 means auto spacing."
+msgstr "0 significa auto separación."
msgid "Auto rotate for arrangement"
msgstr "Rotación automática para el posicionamiento"
@@ -4876,7 +4888,7 @@ msgid "Show &Overhang"
msgstr "Show &Overhang"
msgid "Show object overhang highlight in 3D scene"
-msgstr "Show object overhang highlight in 3D scene"
+msgstr "Mostrar resalte de voladizos de objeto en escena 3D"
msgid "Preferences"
msgstr "Preferencias"
@@ -4936,7 +4948,7 @@ msgid "Open a G-code file"
msgstr "Abrir un archivo G-Code"
msgid "Re&load from Disk"
-msgstr "Re&cargar desde el Disco"
+msgstr "Recargar desde el Disco"
msgid "Reload the plater from disk"
msgstr "Cargar la base del disco"
@@ -5176,7 +5188,7 @@ msgid "Switch to video files."
msgstr "Cambiar a archivos de video."
msgid "Switch to 3mf model files."
-msgstr "Switch to 3mf model files."
+msgstr "Cambiar a archivos de modelos 3mf."
msgid "Delete selected files from printer."
msgstr "Borrar archivos seleccionados desde la impresora."
@@ -5197,7 +5209,7 @@ msgid "Refresh"
msgstr "Actualizar"
msgid "Reload file list from printer."
-msgstr "Reload file list from printer."
+msgstr "Recarga la lista de archivos desde la impresora."
msgid "No printers."
msgstr "No hay impresoras."
@@ -5213,17 +5225,17 @@ msgid "No files"
msgstr "No hay archivos"
msgid "Load failed"
-msgstr "Load failed"
+msgstr "Carga fallida"
msgid "Initialize failed (Device connection not ready)!"
-msgstr "Initialization failed (Device connection not ready)!"
+msgstr "Error de inicialización (conexión del dispositivo no preparada)."
msgid ""
"Browsing file in SD card is not supported in current firmware. Please update "
"the printer firmware."
msgstr ""
-"Browsing file in SD card is not supported in current firmware. Please update "
-"the printer firmware."
+"La búsqueda de archivos en la tarjeta SD no es compatible con el firmware "
+"actual. Actualice el firmware de la impresora."
msgid "Initialize failed (Storage unavailable, insert SD card.)!"
msgstr ""
@@ -5231,10 +5243,11 @@ msgstr ""
"SD)."
msgid "LAN Connection Failed (Failed to view sdcard)"
-msgstr "LAN Connection Failed (Failed to view sdcard)"
+msgstr "Conexión LAN fallida (no se puede ver la tarjeta sdcard)"
msgid "Browsing file in SD card is not supported in LAN Only Mode."
-msgstr "Browsing file in SD card is not supported in LAN Only Mode."
+msgstr ""
+"La búsqueda de archivos en la tarjeta SD no es posible en el modo Sólo LAN."
#, c-format, boost-format
msgid "Initialize failed (%s)!"
@@ -5252,13 +5265,13 @@ msgstr "Borrar archivos"
#, c-format, boost-format
msgid "Do you want to delete the file '%s' from printer?"
-msgstr "Do you want to delete the file '%s' from printer?"
+msgstr "¿Desea eliminar el fichero '%s' de la impresora?"
msgid "Delete file"
-msgstr "Delete file"
+msgstr "Borrar archivo"
msgid "Fetching model infomations ..."
-msgstr "Fetching model information..."
+msgstr "Obteniendo información sobre el modelo ..."
msgid "Failed to fetch model information from printer."
msgstr "No se pudo recuperar la información del modelo de la impresora."
@@ -5305,8 +5318,8 @@ msgid ""
"Reconnecting the printer, the operation cannot be completed immediately, "
"please try again later."
msgstr ""
-"Reconnecting the printer, the operation cannot be completed immediately, "
-"please try again later."
+"Al volver a conectar la impresora, la operación no puede completarse "
+"inmediatamente, inténtelo de nuevo más tarde."
msgid "File does not exist."
msgstr "El archivo no existe."
@@ -5411,7 +5424,7 @@ msgid "Control"
msgstr "Control"
msgid "Printer Parts"
-msgstr "Printer Parts"
+msgstr "Partes de la Impresora"
msgid "Print Options"
msgstr "Opciones de Impresora"
@@ -5540,10 +5553,10 @@ msgid "Number of images successfully uploaded"
msgstr "Número de imágenes cargadas satisfactoriamente"
msgid " upload failed"
-msgstr " carga fallida"
+msgstr " Carga fallida"
msgid " upload config prase failed\n"
-msgstr " error en la carga de configuración\n"
+msgstr " Error en la carga de configuración\n"
msgid " No corresponding storage bucket\n"
msgstr " Sin cubo de almacenamiento correspondiente\n"
@@ -5585,7 +5598,7 @@ msgstr ""
" código de error: "
msgid "error message: "
-msgstr "mensaje de error: "
+msgstr "Mensaje de error: "
msgid ""
"\n"
@@ -5872,13 +5885,15 @@ msgid "Filament Tangle Detect"
msgstr "Detección de Enredos de Filamentos"
msgid "Nozzle Clumping Detection"
-msgstr "Nozzle Clumping Detection"
+msgstr "Detección de Atascos de Boquilla"
msgid "Check if the nozzle is clumping by filament or other foreign objects."
-msgstr "Check if the nozzle is clumping by filament or other foreign objects."
+msgstr ""
+"Compruebe si la boquilla está atascada por el filamento u otros objetos "
+"extraños."
msgid "Nozzle Type"
-msgstr "Nozzle Type"
+msgstr "Tipo de Boquilla"
msgid "Stainless Steel"
msgstr "Acero Inoxidable"
@@ -6415,7 +6430,7 @@ msgid "Can not add models when in preview mode!"
msgstr "No se pueden añadir modelos en el modo de vista previa!"
msgid "All objects will be removed, continue?"
-msgstr "Todos los objetos serán eliminados, deseas continuar?"
+msgstr "Todos los objetos serán eliminados, ¿desea continuar?"
msgid "The current project has unsaved changes, save it before continue?"
msgstr ""
@@ -6455,24 +6470,25 @@ msgid ""
"Unable to perform boolean operation on model meshes. Only positive parts "
"will be kept. You may fix the meshes and try agian."
msgstr ""
-"Unable to perform boolean operation on model meshes. Only positive parts "
-"will be kept. You may fix the meshes and try agian."
+"No se pueden realizar operaciones booleanas en las mallas del modelo. Sólo "
+"se conservarán las partes positivas. Puede arreglar las mallas e intentarlo "
+"de nuevo."
#, boost-format
msgid "Reason: part \"%1%\" is empty."
-msgstr "Reason: part \"%1%\" is empty."
+msgstr "Razón: la parte \"%1%\" está vacía."
#, boost-format
msgid "Reason: part \"%1%\" does not bound a volume."
-msgstr "Reason: part \"%1%\" does not bound a volume."
+msgstr "Motivo: La pieza \"%1%\" no tiene volumen."
#, boost-format
msgid "Reason: part \"%1%\" has self intersection."
-msgstr "Reason: part \"%1%\" has self intersection."
+msgstr "Razón: la parte \"%1%\" se ha intersecado."
#, boost-format
msgid "Reason: \"%1%\" and another part have no intersection."
-msgstr "Reason: \"%1%\" and another part have no intersection."
+msgstr "Razón: \"%1%\" y otra parte no tienen intersección."
msgid ""
"Are you sure you want to store original SVGs with their local paths into the "
@@ -6522,7 +6538,7 @@ msgstr "Configuración de Bandeja"
#, boost-format
msgid "Number of currently selected parts: %1%\n"
-msgstr "Number of currently selected parts: %1%\n"
+msgstr "Número de piezas seleccionadas actualmente: %1%.\n"
#, boost-format
msgid "Number of currently selected objects: %1%\n"
@@ -6747,10 +6763,13 @@ msgstr "Si está activado, auto calcula en cada cambio de color."
msgid ""
"Flushing volumes: Auto-calculate every time when the filament is changed."
-msgstr "Flushing volumes: Auto-calculate every time the filament is changed."
+msgstr ""
+"Volúmenes de descarga: Cálculo automático cada vez que se cambia el "
+"filamento."
msgid "If enabled, auto-calculate every time when filament is changed"
-msgstr "If enabled, auto-calculate every time filament is changed"
+msgstr ""
+"Si está activada, calcula automáticamente cada vez que se cambia el filamento"
msgid "Remember printer configuration"
msgstr "Recordar la configuración de la impresora"
@@ -6769,8 +6788,8 @@ msgid ""
"With this option enabled, you can send a task to multiple devices at the "
"same time and manage multiple devices."
msgstr ""
-"With this option enabled, you can send a task to multiple devices at the "
-"same time and manage multiple devices."
+"Con esta opción activada, puede enviar una tarea a varios dispositivos al "
+"mismo tiempo y gestionar varios dispositivos."
msgid "Network"
msgstr "Red"
@@ -6883,7 +6902,7 @@ msgstr ""
"ocasional."
msgid "every"
-msgstr "todo"
+msgstr "Todo"
msgid "The peroid of backup in seconds."
msgstr "El periodo de copia de seguridad en segundos."
@@ -7036,16 +7055,16 @@ msgid "The selected preset is null!"
msgstr "¡El ajuste seleccionado es nulo!"
msgid "End"
-msgstr "End"
+msgstr "Final"
msgid "Customize"
msgstr "Personalizar"
msgid "Other layer filament sequence"
-msgstr "Other layer filament sequence"
+msgstr "Secuencia de filamentos de otras capas"
msgid "Please input layer value (>= 2)."
-msgstr "Please input layer value (>= 2)."
+msgstr "Introduzca el valor de la capa (>= 2)."
msgid "Plate name"
msgstr "Nombre de Bandeja"
@@ -7057,10 +7076,10 @@ msgid "Print sequence"
msgstr "Secuencia de impresión"
msgid "Same as Global"
-msgstr "Same as Global"
+msgstr "Igual que Global"
msgid "Disable"
-msgstr "Disable"
+msgstr "Desactivar"
msgid "Spiral vase"
msgstr "Vaso en espiral"
@@ -7069,7 +7088,7 @@ msgid "First layer filament sequence"
msgstr "Secuencia de primera capa de filamento"
msgid "Same as Global Plate Type"
-msgstr "Same as Global Plate Type"
+msgstr "Igual que el tipo de placa global"
msgid "Same as Global Bed Type"
msgstr "Lo mismo que el Tipo de Cama Global"
@@ -7088,7 +7107,7 @@ msgstr "Desconectarse"
msgid "Slice all plate to obtain time and filament estimation"
msgstr ""
-"Rebana todas las piezas para obtener una estimación del tiempo y del "
+"Lamina todas las piezas para obtener una estimación del tiempo y del "
"filamento"
msgid "Packing project data into 3mf file"
@@ -7111,7 +7130,7 @@ msgid "Publish was cancelled"
msgstr "La publicación fue cancelada"
msgid "Slicing Plate 1"
-msgstr "Bandeja de corte 1"
+msgstr "Bandeja de Laminado 1"
msgid "Packing data to 3mf"
msgstr "Empaquetando datos a 3mf"
@@ -7199,7 +7218,7 @@ msgid "Input access code"
msgstr "Introducir el código de acceso"
msgid "Can't find my devices?"
-msgstr "No puedo encontrar mis dispositivos?"
+msgstr "¿No puedo encontrar mis dispositivos?"
msgid "Log out successful."
msgstr "Cierre de sesión con éxito."
@@ -7211,7 +7230,7 @@ msgid "Bambu Cool Plate"
msgstr "Bandeja frío Bambu"
msgid "PLA Plate"
-msgstr "PLA Plate"
+msgstr "Bandeja PLA"
msgid "Bambu Engineering Plate"
msgstr "Bandeja de Ingeniería Bambú"
@@ -7235,13 +7254,10 @@ msgid "Click here if you can't connect to the printer"
msgstr "Presione aquí si no puede conectar a la impresora"
msgid "send completed"
-msgstr "envío completo"
+msgstr "Envío completo"
msgid "Error code"
-msgstr "Error code"
-
-msgid "Printer local connection failed, please try again."
-msgstr "Printer local connection failed; please try again."
+msgstr "Código de error"
msgid "No login account, only printers in LAN mode are displayed"
msgstr "Sin cuenta de acceso, sólo se muestran las impresoras en modo LAN"
@@ -7330,8 +7346,8 @@ msgid ""
"The selected printer (%s) is incompatible with the chosen printer profile in "
"the slicer (%s)."
msgstr ""
-"The selected printer (%s) is incompatible with the chosen printer profile in "
-"the slicer (%s)."
+"La impresora seleccionada (%s) es incompatible con el perfil de impresora "
+"elegido en la cortadora (%s)."
msgid "An SD card needs to be inserted to record timelapse."
msgstr "Es necesario insertar una tarjeta SD para guardar el timelapse."
@@ -7383,8 +7399,8 @@ msgid ""
"start printing."
msgstr ""
"Hay algunos filamentos desconocidos en los mapeados AMS. Por favor, "
-"compruebe si son los filamentos requeriso. Si lo son, presione \"Confirmar\" "
-"para empezar a imprimir."
+"compruebe si son los filamentos requeridos. Si lo son, presione "
+"\"Confirmar\" para empezar a imprimir."
#, c-format, boost-format
msgid "nozzle in preset: %s %s"
@@ -7399,20 +7415,22 @@ msgid ""
"If you changed your nozzle lately, please go to Device > Printer Parts to "
"change settings."
msgstr ""
-"Your nozzle diameter in sliced file is not consistent with the saved nozzle. "
-"If you changed your nozzle lately, please go to Device > Printer Parts to "
-"change settings."
+"El diámetro de la boquilla en el archivo laminado no coincide con la "
+"boquilla guardada. Si ha cambiado la boquilla últimamente, vaya a "
+"Dispositivo > Piezas de la impresora para cambiar la configuración."
#, c-format, boost-format
msgid ""
"Printing high temperature material(%s material) with %s may cause nozzle "
"damage"
msgstr ""
-"Printing high temperature material(%s material) with %s may cause nozzle "
-"damage"
+"La impresión de material de alta temperatura (%s material) con %s puede "
+"causar daños en la boquilla"
msgid "Please fix the error above, otherwise printing cannot continue."
-msgstr "Please fix the error above, otherwise printing cannot continue."
+msgstr ""
+"Por favor, corrija el error anterior, de lo contrario la impresión no podrá "
+"continuar."
msgid ""
"Please click the confirm button if you still want to proceed with printing."
@@ -7428,17 +7446,17 @@ msgid ""
"Caution to use! Flow calibration on Textured PEI Plate may fail due to the "
"scattered surface."
msgstr ""
-"¡Precaución! La calibración del caudal en la bandeja PEI texturizada puede "
+"¡Precaución! La calibración del flujo en la bandeja PEI texturizada puede "
"fallar debido a la superficie dispersa."
msgid "Automatic flow calibration using Micro Lidar"
-msgstr "Calibración automática de caudal usando Micro Lidar"
+msgstr "Calibración automática de flujo usando Micro Lidar"
msgid "Modifying the device name"
msgstr "Modificar el nombre del dispositivo"
msgid "Bind with Pin Code"
-msgstr "Bind with Pin Code"
+msgstr "Vincular con código PIN"
msgid "Send to Printer SD card"
msgstr "Enviar a la tarjeta SD de la impresora"
@@ -7471,28 +7489,28 @@ msgid "View all Daily tips"
msgstr "Mostrar todos los consejos del día"
msgid "Failed to create socket"
-msgstr "Failed to create socket"
+msgstr "Fallo al crear socket"
msgid "Failed to connect socket"
-msgstr "Failed to connect socket"
+msgstr "Error al conectar el socket"
msgid "Failed to publish login request"
-msgstr "Failed to publish login request"
+msgstr "Error al publicar la solicitud de inicio de sesión"
msgid "Get ticket from device timeout"
-msgstr "Timeout getting ticket from device"
+msgstr "Tiempo de espera para obtener el ticket del dispositivo"
msgid "Get ticket from server timeout"
-msgstr "Timeout getting ticket from server"
+msgstr "Tiempo de espera para obtener el ticket del servidor"
msgid "Failed to post ticket to server"
-msgstr "Failed to post ticket to server"
+msgstr "Error al enviar el ticket al servidor"
msgid "Failed to parse login report reason"
-msgstr "Failed to parse login report reason"
+msgstr "Error al analizar el motivo del informe de inicio de sesión"
msgid "Receive login report timeout"
-msgstr "Receive login report timeout"
+msgstr "Tiempo de espera para recibir el informe de inicio de sesión"
msgid "Unknown Failure"
msgstr "Error Desconocido"
@@ -7501,23 +7519,23 @@ msgid ""
"Please Find the Pin Code in Account page on printer screen,\n"
" and type in the Pin Code below."
msgstr ""
-"Please Find the Pin Code in Account page on printer screen,\n"
-" and type in the Pin Code below."
+"Busque el código PIN en la página Cuenta en la pantalla de la impresora \n"
+"e introdúzcalo a continuación."
msgid "Can't find Pin Code?"
-msgstr "Can't find Pin Code?"
+msgstr "¿No encuentra el código PIN?"
msgid "Pin Code"
-msgstr "Pin Code"
+msgstr "Código Pin"
msgid "Binding..."
-msgstr "Binding..."
+msgstr "Vinculando..."
msgid "Please confirm on the printer screen"
-msgstr "Please confirm on the printer screen"
+msgstr "Confirme en la pantalla de la impresora"
msgid "Log in failed. Please check the Pin Code."
-msgstr "Log in failed. Please check the Pin Code."
+msgstr "No se ha podido iniciar sesión. Por favor, compruebe el código PIN."
msgid "Log in printer"
msgstr "Iniciar sesión en la impresora"
@@ -7526,13 +7544,13 @@ msgid "Would you like to log in this printer with current account?"
msgstr "¿Desea iniciar sesión en esta impresora con la cuenta actual?"
msgid "Check the reason"
-msgstr "Check the reason"
+msgstr "Compruebe el motivo"
msgid "Read and accept"
-msgstr "Read and accept"
+msgstr "Leer y aceptar"
msgid "Terms and Conditions"
-msgstr "Terms and Conditions"
+msgstr "Condiciones generales"
msgid ""
"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab "
@@ -7541,23 +7559,24 @@ msgid ""
"Use(collectively, the \"Terms\"). If you do not comply with or agree to the "
"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services."
msgstr ""
-"Thank you for purchasing a Bambu Lab device. Before using your Bambu Lab "
-"device, please read the terms and conditions. By clicking to agree to use "
-"your Bambu Lab device, you agree to abide by the Privacy Policy and Terms of "
-"Use (collectively, the \"Terms\"). If you do not comply with or agree to the "
-"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services."
+"Gracias por adquirir un dispositivo Bambu Lab. Antes de utilizar su "
+"dispositivo Bambu Lab, lea los términos y condiciones. Al hacer clic para "
+"aceptar el uso de su dispositivo Bambu Lab, acepta cumplir la Política de "
+"privacidad y las Condiciones de uso (colectivamente, las \"Condiciones\"). "
+"Si no cumple o no acepta la Política de privacidad de Bambu Lab, le rogamos "
+"que no utilice los equipos y servicios de Bambu Lab."
msgid "and"
-msgstr "and"
+msgstr "y"
msgid "Privacy Policy"
-msgstr "Privacy Policy"
+msgstr "Política de privacidad"
msgid "We ask for your help to improve everyone's printer"
-msgstr "We ask for your help to improve everyone's printer"
+msgstr "Te pedimos ayuda para mejorar las impresoras de todos"
msgid "Statement about User Experience Improvement Program"
-msgstr "Statement about User Experience Improvement Program"
+msgstr "Declaración sobre el Programa de Mejora de la Experiencia del Usuario"
#, c-format, boost-format
msgid ""
@@ -7573,20 +7592,21 @@ msgid ""
"payment information, or phone numbers. By enabling this service, you agree "
"to these terms and the statement about Privacy Policy."
msgstr ""
-"In the 3D Printing community, we learn from each other's successes and "
-"failures to adjust our own slicing parameters and settings. %s follows the "
-"same principle and uses machine learning to improve its performance from the "
-"successes and failures of the vast number of prints by our users. We are "
-"training %s to be smarter by feeding them the real-world data. If you are "
-"willing, this service will access information from your error logs and usage "
-"logs, which may include information described in Privacy Policy. We will "
-"not collect any Personal Data by which an individual can be identified "
-"directly or indirectly, including without limitation names, addresses, "
-"payment information, or phone numbers. By enabling this service, you agree "
-"to these terms and the statement about Privacy Policy."
+"En la comunidad de impresión 3D, aprendemos de los éxitos y fracasos de los "
+"demás para ajustar nuestros propios parámetros y ajustes de corte. %s sigue "
+"el mismo principio y utiliza el aprendizaje automático para mejorar su "
+"rendimiento a partir de los éxitos y fracasos del gran número de impresiones "
+"de nuestros usuarios. Estamos entrenando a %s para que sea más inteligente "
+"alimentándole con los datos del mundo real. Si usted lo desea, este servicio "
+"accederá a la información de sus registros de errores y de uso, que pueden "
+"incluir información descrita en la Política de Privacidad. No recopilaremos "
+"ningún Dato Personal por el cual un individuo pueda ser identificado directa "
+"o indirectamente, incluyendo sin limitación nombres, direcciones, "
+"información de pago o números de teléfono. Al habilitar este servicio, usted "
+"acepta estos términos y la declaración sobre la Política de Privacidad."
msgid "Statement on User Experience Improvement Plan"
-msgstr "Statement on User Experience Improvement Plan"
+msgstr "Declaración sobre el Plan de mejora de la experiencia de los usuarios"
msgid "Log in successful."
msgstr "Inicio de sesión con éxito."
@@ -7677,7 +7697,7 @@ msgid ""
msgstr ""
"Cuando se use material de soporte para las interfaces de soporte, "
"recomendamos los siguientes ajustes:\n"
-"distancia z0, espaciado de interfaz 0, patrón concéntrico y desactivar "
+"distancia z0, separación de interfaz 0, patrón concéntrico y desactivar "
"altura de soporte independiente de altura de capa"
msgid ""
@@ -7725,10 +7745,10 @@ msgid ""
"reduce flush, it may also elevate the risk of nozzle clogs or other "
"printing complications."
msgstr ""
-"Experimental feature: Retracting and cutting off the filament at a greater "
-"distance during filament changes to minimize flush. Although it can notably "
-"reduce flush, it may also elevate the risk of nozzle clogs or other "
-"printing complications."
+"Característica experimental: Retraer y cortar el filamento a mayor distancia "
+"durante los cambios de filamento para minimizar el flujo. Aunque puede "
+"reducir notablemente el flujo, también puede elevar el riesgo de atascos de "
+"boquillas u otras complicaciones de impresión."
msgid ""
"Experimental feature: Retracting and cutting off the filament at a greater "
@@ -7736,16 +7756,17 @@ msgid ""
"reduce flush, it may also elevate the risk of nozzle clogs or other printing "
"complications.Please use with the latest printer firmware."
msgstr ""
-"Experimental feature: Retracting and cutting off the filament at a greater "
-"distance during filament changes to minimize flush. Although it can notably "
-"reduce flush, it may also elevate the risk of nozzle clogs or other printing "
-"complications. Please use with the latest printer firmware."
+"Característica experimental: Retraer y cortar el filamento a mayor distancia "
+"durante los cambios de filamento para minimizar el flujo. Aunque puede "
+"reducir notablemente el flujo, también puede elevar el riesgo de atascos de "
+"la boquilla u otras complicaciones de impresión. Utilizar con el último "
+"firmware de la impresora."
msgid ""
"When recording timelapse without toolhead, it is recommended to add a "
"\"Timelapse Wipe Tower\" \n"
-"by right-click the empty position of build plate and choose \"Add Primitive"
-"\"->\"Timelapse Wipe Tower\"."
+"by right-click the empty position of build plate and choose \"Add "
+"Primitive\"->\"Timelapse Wipe Tower\"."
msgstr ""
"Cuando grabamos timelapse sin cabezal de impresión, es recomendable añadir "
"un \"Torre de Purga de Intervalo\" \n"
@@ -7814,7 +7835,7 @@ msgid "Jerk(XY)"
msgstr "Jerk(XY)"
msgid "Raft"
-msgstr "Base de impresión"
+msgstr "Balsa/capa base de impresión"
msgid "Support filament"
msgstr "Filamento de soporte"
@@ -8004,7 +8025,7 @@ msgid "Toolchange parameters with single extruder MM printers"
msgstr "Parámetros de cambio de herramienta para impresoras de 1 extrusor MM"
msgid "Ramming settings"
-msgstr "Parámetros de Ramming"
+msgstr "Parámetros de Moldeado de Extremo"
msgid "Toolchange parameters with multi extruder MM printers"
msgstr ""
@@ -8016,10 +8037,10 @@ msgstr "Espacio imprimible"
#. TRN: First argument is parameter name, the second one is the value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
-msgstr ""
+msgstr "Valor no válido proporcionado para el parámetro %1%: %2%"
msgid "G-code flavor is switched"
-msgstr ""
+msgstr "Se cambia tipo de G-Code"
msgid "Cooling Fan"
msgstr "Ventilador de enfriamento"
@@ -8158,7 +8179,7 @@ msgid "Are you sure to %1% the selected preset?"
msgstr "¿Está seguro de %1% el perfil seleccionado?"
msgid "All"
-msgstr "Todo"
+msgstr "Todas"
msgid "Set"
msgstr "Ajuste"
@@ -8255,14 +8276,14 @@ msgstr ""
#, boost-format
msgid "You have changed some settings of preset \"%1%\". "
-msgstr "You have changed some settings of preset \"%1%\". "
+msgstr "Ha cambiado algunos ajustes del preajuste \"%1%\"."
msgid ""
"\n"
"You can save or discard the preset values you have modified."
msgstr ""
"\n"
-"You can save or discard the preset values you have modified."
+"Puede guardar o descartar los valores preestablecidos que haya modificado."
msgid ""
"\n"
@@ -8274,7 +8295,7 @@ msgstr ""
"elegir transferir los valores que ha modificado al nuevo preestablecido."
msgid "You have previously modified your settings."
-msgstr "You have previously modified your settings."
+msgstr "Ha modificado previamente su configuración."
msgid ""
"\n"
@@ -8401,8 +8422,62 @@ msgstr "No hay actualizaciones disponibles."
msgid "The configuration is up to date."
msgstr "La configuración está actualizada."
+msgid "Obj file Import color"
+msgstr "Archivo Obj Importar color"
+
+msgid "Specify number of colors:"
+msgstr "Especifique el número de colores:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "El recuento de colores debe estar en el rango [%d, %d]."
+
+msgid "Recommended "
+msgstr "Recomendado "
+
+msgid "Current filament colors:"
+msgstr "Colores de filamento actuales:"
+
+msgid "Quick set:"
+msgstr "Configurar rápido:"
+
+msgid "Color match"
+msgstr "Combinación de colores"
+
+msgid "Approximate color matching."
+msgstr "Coincidencia de color aproximada."
+
+msgid "Append"
+msgstr "Añada"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "Añadir extrusora consumible después de las extrusoras existentes."
+
+msgid "Reset mapped extruders."
+msgstr "Restablecer extrusoras mapeadas."
+
+msgid "Cluster colors"
+msgstr "Colores de los grupos"
+
+msgid "Map Filament"
+msgstr "Mapear Filamento"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"Nota: Una vez seleccionado el color, puede seleccionar OK \n"
+" para continuar o ajustarlo manualmente."
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"Advertencia: El número de extrusoras añadidas y \n"
+"actuales supera los 16."
+
msgid "Ramming customization"
-msgstr "Personalización de Ramming"
+msgstr "Personalización de Moldeado de Extremo"
msgid ""
"Ramming denotes the rapid extrusion just before a tool change in a single-"
@@ -8422,7 +8497,7 @@ msgstr ""
"posteriormente."
msgid "Total ramming time"
-msgstr "Tiempo total de Ramming"
+msgstr "Tiempo total de Moldeado de Extremo"
msgid "s"
msgstr "s"
@@ -8431,10 +8506,10 @@ msgid "Total rammed volume"
msgstr "Volumen de moldeado de extremo total"
msgid "Ramming line width"
-msgstr "Ancho de línea de Ramming"
+msgstr "Ancho de línea de Moldeado de Extremo"
msgid "Ramming line spacing"
-msgstr "Espaciado de línea de moldeado de extremo"
+msgstr "Separación de línea de moldeado de extremo"
msgid "Auto-Calc"
msgstr "Auto-Calc"
@@ -8470,10 +8545,10 @@ msgid "Multiplier"
msgstr "Multiplicador"
msgid "unloaded"
-msgstr "descargado"
+msgstr "Descargado"
msgid "loaded"
-msgstr "cargado"
+msgstr "Cargado"
msgid "Filament #"
msgstr "Filamento #"
@@ -8488,27 +8563,38 @@ msgid ""
"Windows Media Player is required for this task! Do you want to enable "
"'Windows Media Player' for your operation system?"
msgstr ""
+"Para esta tarea se necesita el Reproductor de Windows Media. ¿Desea activar "
+"el \"Reproductor de Windows Media\" en su sistema operativo?"
msgid ""
"BambuSource has not correctly been registered for media playing! Press Yes "
"to re-register it. You will be promoted twice"
msgstr ""
+"BambuSource no se ha registrado correctamente para la reproducción "
+"multimedia. Pulse Sí para volver a registrarlo. Será promocionado dos veces"
msgid ""
"Missing BambuSource component registered for media playing! Please re-"
"install BambuStutio or seek after-sales help."
msgstr ""
+"Falta el componente BambuSource registrado para la reproducción multimedia. "
+"Vuelva a instalar BambuStudio o solicite ayuda posventa."
msgid ""
"Using a BambuSource from a different install, video play may not work "
"correctly! Press Yes to fix it."
msgstr ""
+"Si utiliza una BambuSource de una instalación diferente, es posible que la "
+"reproducción de vídeo no funcione correctamente. Pulsa Sí para solucionarlo."
msgid ""
"Your system is missing H.264 codecs for GStreamer, which are required to "
"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-"
"libav packages, then restart Orca Slicer?)"
msgstr ""
+"A tu sistema le faltan los codecs H.264 para GStreamer, necesarios para "
+"reproducir vídeo. (Prueba a instalar los paquetes gstreamer1.0-plugins-bad "
+"o gstreamer1.0-libav y, a continuación, reinicia Orca Slicer...)."
msgid "Bambu Network plug-in not detected."
msgstr "Plugin Red Bambú no detectado."
@@ -8704,16 +8790,16 @@ msgid "Gizmo Text emboss / engrave"
msgstr "Gizmo Texto en relieve / grabado"
msgid "Zoom in"
-msgstr "Acercarse"
+msgstr "Acercar"
msgid "Zoom out"
-msgstr "Alejarse"
+msgstr "Alejar"
msgid "Switch between Prepare/Preview"
msgstr "Cambiar entre Preparar/Previsualizar"
msgid "Plater"
-msgstr "Plataforma"
+msgstr "Bandeja"
msgid "Move: press to snap by 1mm"
msgstr "Mover: pulsar para ajustar 1mm"
@@ -8822,40 +8908,40 @@ msgid "Done"
msgstr "Hecho"
msgid "resume"
-msgstr "resume"
+msgstr "Continuar"
msgid "Resume Printing"
-msgstr "Resume Printing"
+msgstr "Continuar Imprimiendo"
msgid "Resume Printing(defects acceptable)"
-msgstr "Resume Printing (defects acceptable)"
+msgstr "Continuar Imprimiendo (defectos aceptables)"
msgid "Resume Printing(problem solved)"
-msgstr "Resume Printing (problem solved)"
+msgstr "Continuar Imprimiendo (problema solucionado)"
msgid "Stop Printing"
-msgstr "Stop Printing"
+msgstr "Dejar de imprimir"
msgid "Check Assistant"
-msgstr "Check Assistant"
+msgstr "Asistente de Pruebas"
msgid "Filament Extruded, Continue"
-msgstr "Filament Extruded, Continue"
+msgstr "Filamento extruido, Continuar"
msgid "Not Extruded Yet, Retry"
-msgstr "Not Extruded Yet, Retry"
+msgstr "Aún no extruido, reintentar"
msgid "Finished, Continue"
-msgstr "Finished, Continue"
+msgstr "Terminado, Continuar"
msgid "Load Filament"
msgstr "Cargar"
msgid "Filament Loaded, Resume"
-msgstr "Filament Loaded, Resume"
+msgstr "Filamento cargado, reanudar"
msgid "View Liveview"
-msgstr "View Liveview"
+msgstr "Ver Vista en Directo"
msgid "Confirm and Update Nozzle"
msgstr "Confirmar y Actualizar la Boquilla"
@@ -9023,7 +9109,7 @@ msgid "Configuration package: "
msgstr "Paquete de configuración: "
msgid " updated to "
-msgstr " actualizado a "
+msgstr " Actualizado a "
msgid "Open G-code file:"
msgstr "Abrir archivo G-Code:"
@@ -9115,8 +9201,8 @@ msgid ""
"Invalid spacing supplied to Flow::with_spacing(), check your layer height "
"and extrusion width"
msgstr ""
-"Espaciado no válido suministrado a Flow::with_spacing(), comprueba la altura "
-"de su capa y el ancho de extrusión."
+"Separación no válido suministrado a Flow::with_spacing(), comprueba la "
+"altura de su capa y el ancho de extrusión."
msgid "undefined error"
msgstr "error no definido"
@@ -9352,7 +9438,7 @@ msgid ""
"of raft layers"
msgstr ""
"La torre de purga requiere que todos los objetos se impriman sobre el mismo "
-"número de capas de base de impresión"
+"número de capas de balsa( base de impresión)"
msgid ""
"The prime tower requires that all objects are sliced with the same layer "
@@ -9521,7 +9607,7 @@ msgid "Bed custom model"
msgstr "Modelo personalizado de cama"
msgid "Elephant foot compensation"
-msgstr "Compensación del pie de elefante"
+msgstr "Compensación del pata de elefante"
msgid ""
"Shrink the initial layer on build plate to compensate for elephant foot "
@@ -9590,7 +9676,7 @@ msgid ""
msgstr ""
"OrcaSlicer puede subir archivos G-Code a una impresora. Este campo debería "
"contener el nombre de host, la dirección IP o la URL de la instancia de la "
-"impresora. Se puede acceder a la impresora detrás de un proxy con la "
+"impresora. Se puede acceder a la impresora detrás de un proX-Y con la "
"autenticación básica activada por un nombre de usuario y contraseña en la "
"URL en el siguiente formato: https://nombredeusuario:"
"contraseña@tudirecciondeoctopi/"
@@ -9770,19 +9856,19 @@ msgid "First layer print sequence"
msgstr "Secuencia de impresión de primera capa"
msgid "Other layers print sequence"
-msgstr "Other layers print sequence"
+msgstr "Secuencia de impresión de otras capas"
msgid "The number of other layers print sequence"
-msgstr "The number of other layers print sequence"
+msgstr "El número de secuencias de impresión de otras capas"
msgid "Other layers filament sequence"
-msgstr "Other layers filament sequence"
+msgstr "Secuencia de filamentos de otras capas"
msgid "This G-code is inserted at every layer change before lifting z"
msgstr "Este G-Code se inserta en cada cambio de capa antes de levantar z"
msgid "Bottom shell layers"
-msgstr "Cubiertas inferiores de cubierta"
+msgstr "Capas inferiores de cubierta"
msgid ""
"This is the number of solid layers of bottom shell, including the bottom "
@@ -9911,7 +9997,7 @@ msgid ""
"material for bridge, to improve sag"
msgstr ""
"Disminuya este valor ligeramente (por ejemplo 0,9) para reducir la cantidad "
-"de material para el puente, para mejorar el hundimiento"
+"de material para mejorar o evitar el hundimiento de puentes."
msgid "Internal bridge flow ratio"
msgstr "Ratio de flujo de puentes internos"
@@ -9922,9 +10008,9 @@ msgid ""
"0.9) to improve surface quality over sparse infill."
msgstr ""
"Este valor regula el grosor de la capa puente interna. Es la primera capa "
-"sobre el relleno poco denso. Disminuya ligeramente este valor (por ejemplo, "
-"0,9) para mejorar la calidad de la superficie sobre el relleno de baja "
-"densidad."
+"sobre el relleno de baja densidad. Disminuya ligeramente este valor (por "
+"ejemplo, 0,9) para mejorar la calidad de la superficie sobre el relleno de "
+"baja densidad."
msgid "Top surface flow ratio"
msgstr "Ratio de caudal en superficie superior"
@@ -9953,7 +10039,7 @@ msgid ""
"Note: This setting will only take effect if the wall sequence is configured "
"to Inner-Outer"
msgstr ""
-"Mejore la precisión de la cubierta ajustando el espaciado entre perímetros "
+"Mejore la precisión de la cubierta ajustando la separación entre perímetros "
"exteriores. Esto también mejora la consistencia de la capa. \n"
"Nota: Este ajuste sólo tendrá efecto si la secuencia de el perímetro está "
"configurada como Interior-Exterior"
@@ -10081,8 +10167,7 @@ msgstr ""
" 1. Ninguno: No se crea ningún puente. \n"
"2. Parcialmente Puenteado: Sólo se puentea una parte de la zona sin "
"soporte. \n"
-"3. Capa de Sacrificio: Se crea una capa de sacrificio. Capa de sacrificio: "
-"Se crea una capa de puente de sacrificio completa."
+"3. Capa de Sacrificio: Se crea una capa de sacrificio completa."
msgid "Partially bridged"
msgstr "Parcialmente puenteado"
@@ -10325,8 +10410,8 @@ msgid ""
"Don't support the whole bridge area which make support very large. Bridge "
"usually can be printing directly without support if not very long"
msgstr ""
-"No apoye todo el área del puente que hace el apoyo muy grande. El puente "
-"normalmente puede imprimirse directamente sin soporte si no es muy largo"
+"No crear soportes en toda el área de los puentes. Los puentes normalmente "
+"pueden imprimirse directamente sin soporte si no son muy largos"
msgid "Thick bridges"
msgstr "Puentes gruesos"
@@ -10407,7 +10492,7 @@ msgstr ""
"evitando crear puentes internos innecesarios. Funciona bien en la mayoría de "
"los modelos difíciles.\n"
"\n"
-"Sin filtro: crea puentes interiores en todos los posibles salientes "
+"Sin filtro: crea puentes interiores en todos los posibles voladizos "
"interiores. Esta opción es útil para modelos de superficie superior muy "
"inclinada. Sin embargo, en la mayoría de los casos crea demasiados puentes "
"innecesarios."
@@ -10453,7 +10538,7 @@ msgid "End G-code when finish the printing of this filament"
msgstr "Terminar el G-Code cuando se termine de imprimir este filamento"
msgid "Ensure vertical shell thickness"
-msgstr "Detección de cubiertas delgadas"
+msgstr "Detección de perímetros delgados"
msgid ""
"Add solid infill near sloping surfaces to guarantee the vertical shell "
@@ -10466,13 +10551,14 @@ msgid ""
"Default value is All."
msgstr ""
"Añadir relleno sólido cerca de superficies inclinadas para garantizar el "
-"grosor vertical de la cubierta (capas sólidas superior+inferior)\n"
+"grosor vertical del perímetro (capas sólidas superior+inferior)\n"
"Ninguno: No se añadirá relleno sólido en ninguna parte.\n"
"Precaución: Utilice esta opción con cuidado si su modelo tiene superficies "
"inclinadas\n"
"Sólo crítico: Evite añadir relleno sólido en perímetros\n"
-"Moderado: Añadir relleno sólido sólo para superficies muy inclinadas Todas: "
-"Añadir relleno sólido para todas las superficies inclinadas adecuadas\n"
+"Moderado: Añadir relleno sólido sólo para superficies muy inclinadas \n"
+"Todas: Añadir relleno sólido para todas las superficies inclinadas "
+"adecuadas\n"
"El valor por defecto es Todas."
msgid "Critical Only"
@@ -10482,7 +10568,7 @@ msgid "Moderate"
msgstr "Moderado"
msgid "Top surface pattern"
-msgstr "Patrón de relleno superior"
+msgstr "Patrón de relleno cubierta superior"
msgid "Line pattern of top surface infill"
msgstr "Patrón de líneas del relleno de la superficie superior"
@@ -10497,7 +10583,7 @@ msgid "Monotonic"
msgstr "Monotónico"
msgid "Monotonic line"
-msgstr "Linea continua"
+msgstr "Línea Contínua"
msgid "Aligned Rectilinear"
msgstr "Alineación Rectilinea"
@@ -10506,18 +10592,18 @@ msgid "Hilbert Curve"
msgstr "Curva Hilbert"
msgid "Archimedean Chords"
-msgstr "Arcodes de Arquímedes"
+msgstr "Acordes de Arquímedes"
msgid "Octagram Spiral"
msgstr "Octograma en Espiral"
msgid "Bottom surface pattern"
-msgstr "Patrón de la superficie inferior"
+msgstr "Patrón de relleno de cubierta inferior"
msgid "Line pattern of bottom surface infill, not bridge infill"
msgstr ""
-"Patrón de líneas del relleno de la superficie inferior, no del relleno del "
-"puente"
+"Patrón de líneas del relleno de la superficie de la cubierta inferior, no "
+"del relleno del puente"
msgid "Internal solid infill pattern"
msgstr "Patrón de relleno sólido interno"
@@ -10840,6 +10926,32 @@ msgstr ""
"Si se activa este ajuste, el ventilador nunca se detendrá y funcionará al "
"menos a la velocidad mínima para reducir la frecuencia de arranque y parada"
+msgid "Don't slow down outer walls"
+msgstr "No frenar en los perímetros externos"
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+"Si está activada, esta configuración garantizará que los perímetros externos "
+"no se ralenticen para cumplir el tiempo de capa mínimo. Esto es "
+"especialmente útil en los siguientes escenarios:\n"
+"\n"
+" 1. Para evitar cambios de brillo al imprimir filamentos brillantes\n"
+"2. Para evitar cambios en la velocidad de la pared externa que pueden crear "
+"ligeros artefactos de pared que aparecen como z banding\n"
+"3. Para evitar imprimir a velocidades que provoquen VFA (artefactos finos) "
+"en las paredes externas\n"
+"\n"
+
msgid "Layer time"
msgstr "Tiempo de capa"
@@ -10924,7 +11036,7 @@ msgid ""
msgstr ""
"Introduzca el porcentaje de encogimiento que tendrá el filamento después de "
"enfriarse ('94% i' si mide 94mm en lugar de 100mm). La pieza se escalará en "
-"xy para compensar. Sólo se tiene en cuenta el filamento utilizado para el "
+"X-Y para compensar. Sólo se tiene en cuenta el filamento utilizado para el "
"perímetro.\n"
"Asegúrese de dejar suficiente espacio entre los objetos, ya que esta "
"compensación se realiza después de las comprobaciones."
@@ -11031,8 +11143,8 @@ msgid ""
"This string is edited by RammingDialog and contains ramming specific "
"parameters."
msgstr ""
-"El RammingDialog edita esta cadena y contiene los parámetros específicos de "
-"moldeado de extremo."
+"El Moldeado de ExtremoDialog edita esta cadena y contiene los parámetros "
+"específicos de moldeado de extremo."
msgid ""
"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a "
@@ -11061,17 +11173,18 @@ msgstr ""
"torre de purga está activada."
msgid "Multitool ramming volume"
-msgstr "Volumen de Ramming multiherramienta"
+msgstr "Volumen de Moldeado de Extremo multiherramienta"
msgid "The volume to be rammed before the toolchange."
-msgstr "El volumen de Ramming antes del cambio de herramienta."
+msgstr "El volumen de Moldeado de Extremo antes del cambio de herramienta."
msgid "Multitool ramming flow"
-msgstr "Flujo de Ramming multiherramienta"
+msgstr "Flujo de Moldeado de Extremo multiherramienta"
msgid "Flow used for ramming the filament before the toolchange."
msgstr ""
-"Flujo usado por el Ramming de filamento antes del cambio de herramienta."
+"Flujo usado por el Moldeado de Extremo de filamento antes del cambio de "
+"herramienta."
msgid "Density"
msgstr "Densidad"
@@ -11154,13 +11267,13 @@ msgstr ""
"dirección principal de la línea"
msgid "Rotate solid infill direction"
-msgstr "Girar la dirección del relleno sólido"
+msgstr "Cambiar la dirección del relleno sólido"
msgid "Rotate the solid infill direction by 90° for each layer."
-msgstr "Gire 90° la dirección del relleno sólido para cada capa."
+msgstr "Cambiar 90° la dirección del relleno sólido para cada capa."
msgid "Sparse infill density"
-msgstr "Densidad de relleno"
+msgstr "Densidad de relleno de baja densidad"
#, no-c-format, no-boost-format
msgid ""
@@ -11208,7 +11321,7 @@ msgid "Lightning"
msgstr "Rayo"
msgid "Cross Hatch"
-msgstr "Cross Hatch"
+msgstr "Escotilla Transversal"
msgid "Sparse infill anchor length"
msgstr "Longitud del anclaje de relleno de baja densidad"
@@ -11243,7 +11356,7 @@ msgid "1000 (unlimited)"
msgstr "1000 (ilimitada)"
msgid "Maximum length of the infill anchor"
-msgstr "Máxima longitud del relleno del anclaje"
+msgstr "Máxima longitud de relleno del anclaje"
msgid ""
"Connect an infill line to an internal perimeter with a short segment of an "
@@ -11414,10 +11527,10 @@ msgstr "Velocidad máxima del ventilador en la capa"
msgid ""
"Fan speed will be ramped up linearly from zero at layer "
-"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer"
-"\". \"full_fan_speed_layer\" will be ignored if lower than "
-"\"close_fan_the_first_x_layers\", in which case the fan will be running at "
-"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
+"\"close_fan_the_first_x_layers\" to maximum at layer "
+"\"full_fan_speed_layer\". \"full_fan_speed_layer\" will be ignored if lower "
+"than \"close_fan_the_first_x_layers\", in which case the fan will be running "
+"at maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
msgstr ""
"La velocidad de ventilador se incrementará linealmente de cero a "
"\"close_fan_the_first_x_layers\" al máximo de capa \"full_fan_speed_layer\". "
@@ -11426,7 +11539,7 @@ msgstr ""
"máximo permitido de capa \"close_fan_the_first_x_layers\" + 1."
msgid "layer"
-msgstr ""
+msgstr "Capa"
msgid "Support interface fan speed"
msgstr "Velocidad de ventilador de interfaz de soporte"
@@ -11502,16 +11615,16 @@ msgstr ""
"irregular y debe imprimirse más lentamente"
msgid "Precise Z height"
-msgstr "Precise Z height"
+msgstr "Altura Z Precisa (Experimental)"
msgid ""
"Enable this to get precise z height of object after slicing. It will get the "
"precise object height by fine-tuning the layer heights of the last few "
"layers. Note that this is an experimental parameter."
msgstr ""
-"Enable this to get precise z height of object after slicing. It will get the "
-"precise object height by fine-tuning the layer heights of the last few "
-"layers. Note that this is an experimental parameter."
+"Habilite esta opción para obtener la altura Z precisa del objeto después del "
+"corte. Obtendrá la altura precisa del objeto ajustando las alturas de las "
+"últimas capas. Tenga en cuenta que se trata de un parámetro experimental."
msgid "Arc fitting"
msgstr "Activar movimientos en arco"
@@ -11792,26 +11905,26 @@ msgid ""
"appearance of pinholes. The percentage value is relative to line width of "
"sparse infill"
msgstr ""
-"El área de relleno sólido superior se amplía ligeramente para solaparse con "
-"la pared y mejorar la adherencia y minimizar la aparición de agujeros de "
-"alfiler donde el relleno superior se une a las paredes. Un valor del 25-30% "
-"es un buen punto de partida para minimizar la aparición de agujeros. El "
-"valor porcentual es relativo a la anchura de la línea de relleno de baja "
-"densidad"
+"El área de relleno sólido de cubierta superior se amplía ligeramente para "
+"solaparse con la pared y mejorar la adherencia y minimizar la aparición de "
+"agujeros de alfiler donde el relleno de cubierta superior se une a las "
+"paredes. Un valor del 25-30% es un buen punto de partida para minimizar la "
+"aparición de agujeros. El valor porcentual es relativo a la anchura de la "
+"línea de relleno de baja densidad"
msgid "Speed of internal sparse infill"
-msgstr "Velocidad del relleno interno disperso"
+msgstr "Velocidad del relleno interno de baja densidad"
msgid "Interface shells"
-msgstr "Cubiertas de interfaz"
+msgstr "Perímetros de interfaz"
msgid ""
"Force the generation of solid shells between adjacent materials/volumes. "
"Useful for multi-extruder prints with translucent materials or manual "
"soluble support material"
msgstr ""
-"Fuerza la generación de cubiertas sólidas entre materiales/volúmenes "
-"adyacentes. Útil para impresiones multiextrusoras con materiales "
+"Fuerza la generación de perímetro sólidos entre materiales/volúmenes "
+"adyacentes. Útil para impresiones con varios extrusores, con materiales "
"translúcidos o material de soporte soluble manualmente"
msgid "Maximum width of a segmented region"
@@ -11933,7 +12046,7 @@ msgid "Small area flow compensation (beta)"
msgstr "Compensación de flujo en áreas pequeñas (beta)"
msgid "Enable flow compensation for small infill areas"
-msgstr "Permitir la compensación de flujos en pequeñas zonas de relleno"
+msgstr "Permitir la compensación de flujo en zonas con poco relleno"
msgid "Flow Compensation Model"
msgstr "Modelo de compensación de caudal"
@@ -12107,10 +12220,10 @@ msgstr ""
"(alta velocidad/ancho mayor) a una extrusión de menor caudal (menor "
"velocidad/ancho menor) y viceversa.\n"
"\n"
-"Define la velocidad máxima a la que el flujo volumétrico extruido en mm3/seg "
-"puede cambiar con el tiempo. Valores más altos significan que se permiten "
-"cambios de velocidad de extrusión más altos, lo que resulta en transiciones "
-"de velocidad más rápidas.\n"
+"Define la velocidad máxima a la que el flujo volumétrico extruido en mm3/"
+"seg2 puede cambiar con el tiempo. Valores más altos significan que se "
+"permiten cambios de velocidad de extrusión más altos, lo que resulta en "
+"transiciones de velocidad más rápidas.\n"
"\n"
"Un valor de 0 desactiva la función. \n"
"\n"
@@ -12118,7 +12231,7 @@ msgstr ""
"(como la Bambu lab o la Voron) este valor no suele ser necesario. Sin "
"embargo, puede proporcionar algún beneficio marginal en ciertos casos en los "
"que las velocidades de las características varían mucho. Por ejemplo, cuando "
-"hay ralentizaciones agresivas debidas a salientes. En estos casos, se "
+"hay ralentizaciones agresivas debidas a voladizos. En estos casos, se "
"recomienda un valor alto de alrededor de 300-350 mm3/s2, ya que esto permite "
"el suavizado suficiente para ayudar al avance de presión a lograr una "
"transición de flujo más suave.\n"
@@ -12384,10 +12497,10 @@ msgstr ""
"resultado impresiones más resistentes.\n"
"\n"
"Cuando esta opción está activada, es necesario desactivar la opción de "
-"asegurar el grosor de la cubierta vertical.\n"
+"asegurar el grosor del perímetro vertical.\n"
"\n"
-"No se recomienda utilizar el relleno relámpago junto con esta opción, ya que "
-"el relleno es limitado para anclar los perímetros adicionales."
+"No se recomienda utilizar el relleno rayo junto con esta opción, ya que el "
+"relleno es limitado para anclar los perímetros adicionales."
msgid ""
"If you want to process the output G-code through custom scripts, just list "
@@ -12409,42 +12522,42 @@ msgid "You can put your notes regarding the printer here."
msgstr "Puede colocar sus notas acerca de la impresora aquí."
msgid "Raft contact Z distance"
-msgstr "Distancia Z de contacto de la base de impresión"
+msgstr "Distancia Z de contacto de la balsa(base de impresión)"
msgid "Z gap between object and raft. Ignored for soluble interface"
msgstr ""
-"Espacio Z entre el objeto y la base de impresión. Se ignora para la interfaz "
-"soluble"
+"Espacio Z entre el objeto y la balsa(base de impresión). Se ignora para la "
+"interfaz soluble"
msgid "Raft expansion"
-msgstr "Expansión de la base de impresión"
+msgstr "Expansión de la balsa(base de impresión)"
msgid "Expand all raft layers in XY plane"
-msgstr "Expandir todas las capas de la base de impresión en el plano XY"
+msgstr "Expandir todas las capas de la balsa(base de impresión) en el plano XY"
msgid "Initial layer density"
msgstr "Densidad de la primera capa"
msgid "Density of the first raft or support layer"
-msgstr "Densidad de la primera base de impresión o capa de soporte"
+msgstr "Densidad de la balsa(base de impresión)"
msgid "Initial layer expansion"
msgstr "Expansión de la primera capa"
msgid "Expand the first raft or support layer to improve bed plate adhesion"
msgstr ""
-"Expandir la primera base de impresión o capa de soporte para mejorar la "
+"Expandir la primera base de impresión o capa de soporte base para mejorar la "
"adherencia de la cama de la bandeja"
msgid "Raft layers"
-msgstr "Capas de base de impresión"
+msgstr "Capas de balsa (base de impresión)"
msgid ""
"Object will be raised by this number of support layers. Use this function to "
"avoid wrapping when print ABS"
msgstr ""
"El objeto será elevado por este número de capas de soporte. Utilice esta "
-"función para evitar la envoltura al imprimir ABS"
+"función para evitar deformaciones al imprimir ABS"
msgid ""
"G-code path is genereated after simplifing the contour of model to avoid too "
@@ -12466,7 +12579,7 @@ msgstr ""
"este umbral"
msgid "Retract amount before wipe"
-msgstr "Retracta cantidad antes de limpiar"
+msgstr "Retrae cantidad antes de limpiar"
msgid ""
"The length of fast retraction before wipe, relative to retraction length"
@@ -12492,7 +12605,7 @@ msgstr ""
"retracción"
msgid "Long retraction when cut(experimental)"
-msgstr "Long retraction when cut (experimental)"
+msgstr "Retracción larga al cortar (experimental)"
msgid ""
"Experimental feature.Retracting and cutting off the filament at a longer "
@@ -12500,20 +12613,20 @@ msgid ""
"significantly, it may also raise the risk of nozzle clogs or other printing "
"problems."
msgstr ""
-"Experimental feature: Retracting and cutting off the filament at a longer "
-"distance during changes to minimize purge.While this reduces flush "
-"significantly, it may also raise the risk of nozzle clogs or other printing "
-"problems."
+"Característica experimental. Retraer y cortar el filamento a mayor distancia "
+"durante los cambios para minimizar la purga. Si bien esto reduce "
+"significativamente la purga, también puede aumentar el riesgo de atascos de "
+"boquillas u otros problemas de impresión."
msgid "Retraction distance when cut"
-msgstr "Retraction distance when cut"
+msgstr "Distancia de retracción al cortar"
msgid ""
"Experimental feature.Retraction length before cutting off during filament "
"change"
msgstr ""
-"Experimental feature. Retraction length before cutting off during filament "
-"change"
+"Característica experimental. Longitud de retracción antes del corte durante "
+"el cambio de filamento"
msgid "Z hop when retract"
msgstr "Salto en Z al retraerse"
@@ -12862,23 +12975,13 @@ msgstr ""
"perímetro externo al imprimir con el orden de impresión de perímetro "
"Exterior/Interior o Interior/Exterior/Interior, la desretracción se realiza "
"ligeramente en el interior desde el inicio del perímetro externo. De esta "
-"manera, cualquier potencial de sobreextrusión queda oculto desde la "
-"superficie exterior.\n"
+"forma, cualquier posible sobreextrusión queda oculta desde la superficie "
+"exterior.\n"
"\n"
-"Esto es útil cuando se imprime con el orden de impresión de perímetro "
-"Exterior/Interior o Interior/Exterior/Interior, ya que en estos modos es más "
-"probable que se imprima un perímetro externo inmediatamente después de un "
-"movimiento de destracción.Para minimizar la visibilidad de una posible "
-"sobreextrusión al inicio de un perímetro exterior cuando se imprime con "
-"orden de impresión Exterior/Interior o Interior/Exterior/Interior, la "
-"desetracción se realiza ligeramente en el interior desde el inicio del "
-"perímetro exterior. De esta forma, cualquier posible sobreextrusión queda "
-"oculta desde la superficie exterior.\n"
-"\n"
-"Esto es útil cuando se imprime con orden de impresión exterior/interior o "
-"interior/exterior/perímetro interior, ya que en estos modos es más probable "
-"que se imprima un perímetro exterior inmediatamente después de un movimiento "
-"de desetracción."
+"Esto es útil cuando se imprime con orden de impresión Exterior/Interior o "
+"Interior/Exterior/Interior ya que en estos modos es más probable que se "
+"imprima un perímetro exterior inmediatamente después de un movimiento de "
+"desretracción."
msgid "Wipe speed"
msgstr "Velocidad de limpieza"
@@ -13099,7 +13202,7 @@ msgid "Enable filament ramming"
msgstr "Activar el moldeado de extremo del filamento"
msgid "No sparse layers (beta)"
-msgstr "Sin capas dispersas (beta)"
+msgstr "Sin capas de baja densidad (beta)"
msgid ""
"If enabled, the wipe tower will not be printed on layers with no "
@@ -13196,7 +13299,7 @@ msgid "tree(manual)"
msgstr "Árbol(manual)"
msgid "Support/object xy distance"
-msgstr "Distancia soporte/objeto xy"
+msgstr "Distancia soporte/objeto X-Y"
msgid "XY separation between an object and its support"
msgstr "Separación XY entre un objeto y su soporte"
@@ -13244,13 +13347,13 @@ msgid "The z gap between the bottom support interface and object"
msgstr "La distancia z entre la interfaz de apoyo inferior y el objeto"
msgid "Support/raft base"
-msgstr "Soporte/plataforma base"
+msgstr "Capa base/balsa"
msgid ""
"Filament to print support base and raft. \"Default\" means no specific "
"filament for support and current filament is used"
msgstr ""
-"Filamento para imprimir la base de soporte y la base de impresión. \"Por "
+"Filamento para imprimir la base de soporte y la balsa de impresión. \"Por "
"defecto\" significa que no hay filamento específico para el soporte y se "
"utiliza el filamento actual"
@@ -13280,7 +13383,7 @@ msgstr ""
"por defecto."
msgid "Support/raft interface"
-msgstr "Interfaz de soporte/base de impresión"
+msgstr "Interfaz de soporte/balsa"
msgid ""
"Filament to print support interface. \"Default\" means no specific filament "
@@ -13351,19 +13454,19 @@ msgid "Rectilinear Interlaced"
msgstr "Entrelazado rectilíneo"
msgid "Base pattern spacing"
-msgstr "Espaciamiento del patrón base"
+msgstr "Separación del patrón base"
msgid "Spacing between support lines"
msgstr "Espacio entre las líneas de apoyo"
msgid "Normal Support expansion"
-msgstr "Expasión de Soporte Normal"
+msgstr "Expansión de Soporte Normal"
msgid "Expand (+) or shrink (-) the horizontal span of normal support"
msgstr "Ampliar (+) o reducir (-) la expansión horizontal del soporte normal"
msgid "Speed of support"
-msgstr "Velocidad de la asistencia"
+msgstr "Velocidad en soportes"
msgid ""
"Style and shape of the support. For normal support, projecting the supports "
@@ -13399,7 +13502,7 @@ msgid "Organic"
msgstr "Orgánico"
msgid "Independent support layer height"
-msgstr "Altura de la capa de soporte independiente"
+msgstr "Altura independiente de la capa de soporte "
msgid ""
"Support layer uses layer height independent with object layer. This is to "
@@ -13547,7 +13650,7 @@ msgid "This setting specify the count of walls around support"
msgstr "Este ajuste especifica el número de perímetros alrededor del soporte"
msgid "Tree support with infill"
-msgstr "Soporte para árboles con relleno"
+msgstr "Soporte de árbol con relleno"
msgid ""
"This setting specifies whether to add infill inside large hollows of tree "
@@ -13598,9 +13701,9 @@ msgid ""
"Detect thin wall which can't contain two line width. And use single line to "
"print. Maybe printed not very well, because it's not closed loop"
msgstr ""
-"Detectar los perímetros delgados que no puede contener dos líneas de ancho. "
-"Y utilizar una sola línea para imprimir. Tal vez no se imprime muy bien, "
-"porque no es de bucle cerrado"
+"Detectar los perímetros delgados que no pueden contener dos líneas de ancho, "
+"y utilizar una sola línea para imprimir. Tal vez no se imprima muy bien, "
+"debido a que no es de bucle cerrado"
msgid ""
"This gcode is inserted when change filament, including T command to trigger "
@@ -13741,10 +13844,10 @@ msgstr ""
"Un angulo mayor significa una base más ancha."
msgid "Wipe tower purge lines spacing"
-msgstr "Espaciado de las líneas de la torre de purga"
+msgstr "Separación de las líneas de la torre de purga"
msgid "Spacing of purge lines on the wipe tower."
-msgstr "Espaciado de las líneas de la torre de purga."
+msgstr "Separación de las líneas de la torre de purga."
msgid "Maximum wipe tower print speed"
msgstr "Velocidad máxima de impresión de la torre de purga"
@@ -13966,7 +14069,7 @@ msgid "Classic"
msgstr "Clásico"
msgid "Arachne"
-msgstr "Aracne"
+msgstr "Arachne"
msgid "Wall transition length"
msgstr "Anchura de transición de perímetro"
@@ -14056,16 +14159,13 @@ msgid ""
"top-surface. 'One wall threshold' is only visibile if this setting is set "
"above the default value of 0.5, or if single-wall top surfaces is enabled."
msgstr ""
-"Ajuste este valor para evitar que se impriman perímetros cortas y no "
-"cerradas, lo que podría aumentar el tiempo de impresión. Los valores más "
+"Ajuste este valor para evitar que se impriman perímetros cortos y no "
+"cerrados, lo que podría aumentar el tiempo de impresión. Los valores más "
"altos eliminan más perímetros y más largos.\n"
"\n"
"NOTA: Las superficies inferior y superior no se verán afectadas por este "
"valor para evitar huecos visuales en el exterior del modelo. Ajuste \"Umbral "
-"de una perímetro\" en la configuración avanzada para ajustar la sensibilidad "
-"de lo que se considera una superficie superior. El \"Umbral de una perímetro"
-"\" sólo es visible si este valor es superior al valor predeterminado de 0,5, "
-"o si las superficies superiores de una soel perímetro están activadas."
+"de perímetro\" en la configuración avanzada para ajustar la sensibilidad de "
msgid "First layer minimum wall width"
msgstr "Ancho mínimo del perímetro de la primera capa"
@@ -14508,9 +14608,9 @@ msgid ""
"painted.\n"
"XY Size compensation can not be combined with color-painting."
msgstr ""
-"An object's XY size compensation will not be used because it is also color-"
-"painted.\n"
-"XY Size compensation can not be combined with color-painting."
+"La compensación de tamaño XY de un objeto no se utilizará porque también "
+"está pintado en color.\n"
+"La compensación de tamaño XY no puede combinarse con el pintado en color."
#, c-format, boost-format
msgid "Support: generate toolpath at layer %d"
@@ -14546,38 +14646,40 @@ msgstr "Soporte: propagar ramas en la capa %d"
msgid ""
"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension."
msgstr ""
-"Unknown file format: input file must have .stl, .obj, or .amf(.xml) "
-"extension."
+"Formato de archivo desconocido: el archivo de entrada debe tener extensión ."
+"stl, .obj o .amf(.xml)."
msgid "Loading of a model file failed."
-msgstr "Loading of model file failed."
+msgstr "Error en la carga del fichero modelo."
msgid "The supplied file couldn't be read because it's empty"
msgstr "El archivo proporcionado no puede ser leído debido a que está vacío"
msgid "Unknown file format. Input file must have .3mf or .zip.amf extension."
-msgstr "Unknown file format: input file must have .3mf or .zip.amf extension."
+msgstr ""
+"Formato de archivo desconocido: el archivo de entrada debe tener "
+"extensión .3mf o .zip.amf."
msgid "Canceled"
-msgstr "Canceled"
+msgstr "Cancelado"
msgid "load_obj: failed to parse"
-msgstr "load_obj: failed to parse"
+msgstr "load_obj: fallo al parsear"
msgid "load mtl in obj: failed to parse"
-msgstr "load mtl in obj: failed to parse"
+msgstr "load mtl in obj: fallo parseando"
msgid "The file contains polygons with more than 4 vertices."
-msgstr "The file contains polygons with more than 4 vertices."
+msgstr "El archivo contiene polígonos con más de 4 vértices."
msgid "The file contains polygons with less than 2 vertices."
-msgstr "The file contains polygons with less than 2 vertices."
+msgstr "El archivo contiene polígonos con menos de 2 vértices."
msgid "The file contains invalid vertex index."
-msgstr "The file contains invalid vertex index."
+msgstr "El archivo contiene un índice de vértices no válido."
msgid "This OBJ file couldn't be read because it's empty."
-msgstr "This OBJ file couldn't be read because it's empty."
+msgstr "Este archivo OBJ no se ha podido leer porque está vacío."
msgid "Flow Rate Calibration"
msgstr "Calibración de Ratio de Flujo"
@@ -14786,36 +14888,36 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"Consulte los detalles de la Calibración de las Dinámicas de Flujo en nuestra "
+"Consulte los detalles de la Calibración de la Dinámica de Flujo en nuestra "
"wiki.\n"
"\n"
"Normalmente la calibración es innecesaria. Cuando se inicia una impresión de "
-"un solo color/material, con la opción \"Calibración de la dinámica de caudal"
-"\" marcada en el menú de inicio de impresión, la impresora seguirá el método "
-"antiguo, calibrar el filamento antes de la impresión; Cuando se inicia una "
-"impresión de varios colores/materiales, la impresora utilizará el parámetro "
-"de compensación por defecto para el filamento durante cada cambio de "
-"filamento que tendrá un buen resultado en la mayoría de los casos.\n"
+"un solo color/material, con la opción \"calibración de la dinámica de "
+"flujo\" marcada en el menú de inicio de impresión, la impresora seguirá el "
+"camino antiguo, calibrar el filamento antes de la impresión; cuando se "
+"inicia una impresión de varios colores/materiales, la impresora utilizará el "
+"parámetro de compensación por defecto para el filamento durante cada cambio "
+"de filamento que tendrá un buen resultado en la mayoría de los casos.\n"
"\n"
-"Tenga en cuenta que hay algunos casos en los que el resultado de la "
-"calibración no es fiable: el uso de una placa de textura para hacer la "
-"calibración; la bandeja no tiene buena adherencia (por favor, lave la "
-"bandeja o aplique pegamento) ... Puede encontrar más información en nuestra "
-"wiki.\n"
+"Tenga en cuenta que hay algunos casos que pueden hacer que los resultados de "
+"la calibración no sean fiables, como una adhesión insuficiente en la placa "
+"de impresión. Se puede mejorar la adherencia lavando la placa de impresión o "
+"aplicando pegamento. Para obtener más información sobre este tema, consulte "
+"nuestra Wiki.\n"
"\n"
"Los resultados de la calibración tienen alrededor de un 10 por ciento de "
"fluctuación en nuestra prueba, lo que puede causar que el resultado no sea "
-"exactamente el mismo en cada calibración. Todavía estamos investigando la "
-"causa raíz para hacer mejoras con nuevas actualizaciones."
+"exactamente el mismo en cada calibración. Seguimos investigando la causa "
+"para realizar mejoras con nuevas actualizaciones."
msgid "When to use Flow Rate Calibration"
msgstr "Cuando usar la Calibración de Ratio de Flujo"
@@ -14948,26 +15050,16 @@ msgstr "El nombre no puede exceder de 40 caracteres."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
-"Solo se va a guardar uno de los resultados con el mismo nombre. ¿Está seguro "
-"que desea sobrescribir el otro resultado?"
-
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Hay ya un resultado histórico de calibración con el mismo nombre: %s. Solo "
-"se guardará uno de los resultados con el mismo nombre. ¿·Está seguro que "
-"quiere sobrescribir el resultado histórico?"
+"Sólo se guardará uno de los resultados con el mismo nombre. ¿Está seguro de "
+"que desea reemplazar los otros resultados?"
msgid "Please find the best line on your plate"
msgstr "Por favor encuentre la mejor línea en su bandeja"
-msgid "Please find the cornor with perfect degree of extrusion"
-msgstr "Por favor, encuentre la esquina con ángulo perfecto para la extrusión"
+msgid "Please find the corner with perfect degree of extrusion"
+msgstr "Encuentre la esquina con el grado de extrusión perfecto"
msgid "Input Value"
msgstr "Valor de entrada"
@@ -15047,7 +15139,7 @@ msgid "Printing Parameters"
msgstr "Parámetros de Impresión"
msgid "Plate Type"
-msgstr "Plate Type"
+msgstr "Tipo de Bandeja"
msgid "filament position"
msgstr "posición de filamento"
@@ -15127,19 +15219,21 @@ msgstr "Acción"
#, c-format, boost-format
msgid "This machine type can only hold %d history results per nozzle."
-msgstr "This machine type can only hold %d historical results per nozzle."
+msgstr ""
+"Este tipo de máquina sólo puede almacenar %d resultados históricos por "
+"boquilla."
msgid "Edit Flow Dynamics Calibration"
msgstr "Editar Calibración de Dinámicas de Flujo"
msgid "New Flow Dynamic Calibration"
-msgstr "New Flow Dynamic Calibration"
+msgstr "Nueva Calibración Dinámica del Caudal"
msgid "Ok"
msgstr "Ok"
msgid "The filament must be selected."
-msgstr "The filament must be selected."
+msgstr "Debe seleccionarse el filamento."
msgid "Network lookup"
msgstr "Búsqueda de red"
@@ -15229,6 +15323,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU"
@@ -15327,6 +15424,9 @@ msgstr ""
msgid "Upload to storage"
msgstr "Subir a almacenamiento"
+msgid "Switch to Device tab after upload."
+msgstr "Cambie a la pestaña Dispositivo después de la carga."
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr ""
@@ -15562,8 +15662,8 @@ msgstr ""
"¿Quieres reescribirlo?"
msgid ""
-"We would rename the presets as \"Vendor Type Serial @printer you selected"
-"\". \n"
+"We would rename the presets as \"Vendor Type Serial @printer you "
+"selected\". \n"
"To add preset for more printers, Please go to printer selection"
msgstr ""
"Cambiaríamos el nombre de los preajustes a \"Número de serie del Vendedor "
@@ -15845,7 +15945,7 @@ msgid ""
"Printer and all the filament&&process presets that belongs to the printer. \n"
"Can be shared with others."
msgstr ""
-"Impresora y todos los perfiles de filamento&proceso que pertenecen a la "
+"Impresora y todos los perfiles de filamento y proceso que pertenecen a la "
"impresora. \n"
"Se puede compartir con otros."
@@ -16025,6 +16125,12 @@ msgstr "¿Estás seguro de cerrar la sesión?"
msgid "Refresh Printers"
msgstr "Refrescar Impresoras"
+msgid "View print host webui in Device tab"
+msgstr "Ver el host de impresión webui en la pestaña Dispositivo"
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr "Sustituir la pestaña de dispositivos de BambuLab por print host webui"
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -16200,43 +16306,47 @@ msgid ""
"It has a small layer height, and results in almost negligible layer lines "
"and high printing quality. It is suitable for most general printing cases."
msgstr ""
-"It has a small layer height, and results in almost negligible layer lines "
-"and high print quality. It is suitable for most general printing cases."
+"Tiene una altura de capa pequeña, y da como resultado unas líneas de capa "
+"casi inapreciables y una alta calidad de impresión. Es adecuado para la "
+"mayoría de los casos generales de impresión."
msgid ""
"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds "
"and acceleration, and the sparse infill pattern is Gyroid. So, it results in "
"much higher printing quality, but a much longer printing time."
msgstr ""
-"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds "
-"and acceleration, and the sparse infill pattern is Gyroid. This results in "
-"much higher print quality but a much longer print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,2 mm, tiene "
+"velocidades y aceleraciones más bajas, y el patrón de relleno disperso es "
+"Gyroide. Esto da como resultado una calidad de impresión mucho mayor, pero "
+"un tiempo de impresión mucho más largo."
msgid ""
"Compared with the default profile of a 0.2 mm nozzle, it has a slightly "
"bigger layer height, and results in almost negligible layer lines, and "
"slightly shorter printing time."
msgstr ""
-"Compared with the default profile of a 0.2 mm nozzle, it has a slightly "
-"bigger layer height. This results in almost negligible layer lines and "
-"slightly longer print time."
+"Comparado con el perfil por defecto de una boquilla de 0,2 mm, tiene una "
+"altura de capa ligeramente mayor, y da como resultado líneas de capa casi "
+"inapreciables, y un tiempo de impresión ligeramente menor."
msgid ""
"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer "
"height, and results in slightly visible layer lines, but shorter printing "
"time."
msgstr ""
-"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer "
-"height. This results in slightly visible layer lines but shorter print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,2 mm, tiene "
+"una mayor altura de capa. Esto se traduce en líneas de capa ligeramente "
+"visibles, pero en un tiempo de impresión más corto."
msgid ""
"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer "
"height, and results in almost invisible layer lines and higher printing "
"quality, but shorter printing time."
msgstr ""
-"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer "
-"height. This results in almost invisible layer lines and higher print "
-"quality but longer print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,2 mm, tiene "
+"una altura de capa menor. Esto da como resultado líneas de capa casi "
+"invisibles y una mayor calidad de impresión, pero un tiempo de impresión más "
+"largo."
msgid ""
"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer "
@@ -16244,19 +16354,20 @@ msgid ""
"Gyroid. So, it results in almost invisible layer lines and much higher "
"printing quality, but much longer printing time."
msgstr ""
-"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer "
-"lines, lower speeds and acceleration, and the sparse infill pattern is "
-"Gyroid. This results in almost invisible layer lines and much higher print "
-"quality but much longer print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,2 mm, tiene "
+"unas líneas de capa más pequeñas, velocidades y aceleraciones más bajas, y "
+"el patrón de relleno disperso es Gyroid. Esto da como resultado líneas de "
+"capa casi invisibles y una calidad de impresión mucho mayor, pero un tiempo "
+"de impresión mucho más largo."
msgid ""
"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer "
"height, and results in minimal layer lines and higher printing quality, but "
"shorter printing time."
msgstr ""
-"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer "
-"height. This results in minimal layer lines and higher print quality but "
-"longer print time."
+"En comparación con el perfil predeterminado de boquilla de 0,2 mm, tiene una "
+"altura de capa menor, y da como resultado líneas de capa mínimas y una mayor "
+"calidad de impresión, pero un tiempo de impresión más corto."
msgid ""
"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer "
@@ -16264,53 +16375,57 @@ msgid ""
"Gyroid. So, it results in minimal layer lines and much higher printing "
"quality, but much longer printing time."
msgstr ""
-"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer "
-"lines, lower speeds and acceleration, and the sparse infill pattern is "
-"Gyroid. This results in minimal layer lines and much higher print quality "
-"but much longer print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,2 mm, tiene "
+"unas líneas de capa más pequeñas, velocidades y aceleraciones más bajas, y "
+"el patrón de relleno disperso es Gyroid. Por lo tanto, da como resultado "
+"líneas de capa mínimas y una calidad de impresión mucho mayor, pero un "
+"tiempo de impresión mucho más largo."
msgid ""
"It has a general layer height, and results in general layer lines and "
"printing quality. It is suitable for most general printing cases."
msgstr ""
-"It has a normal layer height, and results in average layer lines and print "
-"quality. It is suitable for most printing cases."
+"Tiene una altura de capa normal, y da como resultado unas líneas de capa y "
+"una calidad de impresión medias. Es adecuado para la mayoría de los casos de "
+"impresión."
msgid ""
"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops "
"and a higher sparse infill density. So, it results in higher strength of the "
"prints, but more filament consumption and longer printing time."
msgstr ""
-"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops "
-"and a higher sparse infill density. This results in higher print strength "
-"but more filament consumption and longer print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene "
+"más bucles de pared y una mayor densidad de relleno disperso. Esto se "
+"traduce en una mayor resistencia de impresión, pero un mayor consumo de "
+"filamento y un tiempo de impresión más largo."
msgid ""
"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer "
"height, and results in more apparent layer lines and lower printing quality, "
"but slightly shorter printing time."
msgstr ""
-"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer "
-"height. This results in more apparent layer lines and lower print quality "
-"but slightly shorter print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene "
+"una mayor altura de capa. Esto da lugar a líneas de capa más aparentes y a "
+"una menor calidad de impresión, pero a un tiempo de impresión ligeramente "
+"inferior."
msgid ""
"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer "
"height, and results in more apparent layer lines and lower printing quality, "
"but shorter printing time."
msgstr ""
-"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer "
-"height. This results in more apparent layer lines and lower print quality "
-"but shorter print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene "
+"una mayor altura de capa, y da como resultado líneas de capa más aparentes y "
+"una menor calidad de impresión, pero un tiempo de impresión más corto."
msgid ""
"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer "
"height, and results in less apparent layer lines and higher printing "
"quality, but longer printing time."
msgstr ""
-"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer "
-"height. This results in less apparent layer lines and higher print quality "
-"but longer print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene "
+"una altura de capa menor. Esto se traduce en menos líneas de capa aparentes "
+"y mayor calidad de impresión, pero mayor tiempo de impresión."
msgid ""
"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer "
@@ -16318,19 +16433,21 @@ msgid ""
"Gyroid. So, it results in less apparent layer lines and much higher printing "
"quality, but much longer printing time."
msgstr ""
-"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer "
-"height, lower speeds and acceleration, and the sparse infill pattern is "
-"Gyroid. This results in less apparent layer lines and much higher print "
-"quality but much longer print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene "
+"una altura de capa menor, velocidades y aceleraciones más bajas, y el patrón "
+"de relleno disperso es Gyroide. Por lo tanto, da como resultado menos líneas "
+"de capa aparentes y una calidad de impresión mucho mayor, pero un tiempo de "
+"impresión mucho más largo."
msgid ""
"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer "
"height, and results in almost negligible layer lines and higher printing "
"quality, but longer printing time."
msgstr ""
-"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer "
-"height. This results in almost negligible layer lines and higher print "
-"quality but longer print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene "
+"una altura de capa menor. Esto se traduce en unas líneas de capa casi "
+"inapreciables y una mayor calidad de impresión, pero un tiempo de impresión "
+"más largo."
msgid ""
"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer "
@@ -16338,95 +16455,103 @@ msgid ""
"Gyroid. So, it results in almost negligible layer lines and much higher "
"printing quality, but much longer printing time."
msgstr ""
-"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer "
-"height, lower speeds and acceleration, and the sparse infill pattern is "
-"Gyroid. This results in almost negligible layer lines and much higher print "
-"quality but much longer print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene "
+"una altura de capa menor, velocidades y aceleraciones más bajas, y el patrón "
+"de relleno disperso es Gyroide. Por lo tanto, resulta en líneas de capa casi "
+"insignificantes y una calidad de impresión mucho mayor, pero un tiempo de "
+"impresión mucho más largo."
msgid ""
"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer "
"height, and results in almost negligible layer lines and longer printing "
"time."
msgstr ""
-"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer "
-"height. This results in almost negligible layer lines and longer print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene "
+"una altura de capa menor. Esto se traduce en unas líneas de capa casi "
+"inapreciables y un mayor tiempo de impresión."
msgid ""
"It has a big layer height, and results in apparent layer lines and ordinary "
"printing quality and printing time."
msgstr ""
-"It has a big layer height, and results in apparent layer lines and ordinary "
-"printing quality and printing time."
+"Tiene una gran altura de capa, y da lugar a líneas de capa aparentes y a una "
+"calidad y tiempo de impresión ordinarios."
msgid ""
"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops "
"and a higher sparse infill density. So, it results in higher strength of the "
"prints, but more filament consumption and longer printing time."
msgstr ""
-"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops "
-"and a higher sparse infill density. This results in higher print strength "
-"but more filament consumption and longer print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,6 mm, tiene "
+"más bucles de pared y una mayor densidad de relleno disperso. Esto se "
+"traduce en una mayor resistencia de impresión, pero un mayor consumo de "
+"filamento y un tiempo de impresión más largo."
msgid ""
"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer "
"height, and results in more apparent layer lines and lower printing quality, "
"but shorter printing time in some printing cases."
msgstr ""
-"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer "
-"height. This results in more apparent layer lines and lower print quality "
-"but shorter print time in some cases."
+"En comparación con el perfil predeterminado de una boquilla de 0,6 mm, tiene "
+"una mayor altura de capa. Esto da lugar a líneas de capa más aparentes y a "
+"una menor calidad de impresión, pero a un menor tiempo de impresión en "
+"algunos casos."
msgid ""
"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer "
"height, and results in much more apparent layer lines and much lower "
"printing quality, but shorter printing time in some printing cases."
msgstr ""
-"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer "
-"height. This results in much more apparent layer lines and much lower print "
-"quality, but shorter print time in some cases."
+"En comparación con el perfil predeterminado de una boquilla de 0,6 mm, tiene "
+"una mayor altura de capa. Esto da lugar a líneas de capa mucho más aparentes "
+"y a una calidad de impresión mucho menor, pero a un tiempo de impresión más "
+"corto en algunos casos."
msgid ""
"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer "
"height, and results in less apparent layer lines and slight higher printing "
"quality, but longer printing time."
msgstr ""
-"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer "
-"height. This results in less apparent layer lines and slightly higher print "
-"quality but longer print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,6 mm, tiene "
+"una altura de capa menor. Esto se traduce en menos líneas de capa aparentes "
+"y una calidad de impresión ligeramente superior, pero un tiempo de impresión "
+"más largo."
msgid ""
"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer "
"height, and results in less apparent layer lines and higher printing "
"quality, but longer printing time."
msgstr ""
-"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer "
-"height. This results in less apparent layer lines and higher print quality "
-"but longer print time."
+"En comparación con el perfil predeterminado de una boquilla de 0,6 mm, tiene "
+"una altura de capa menor, y da como resultado líneas de capa menos aparentes "
+"y una mayor calidad de impresión, pero un tiempo de impresión más largo."
msgid ""
"It has a very big layer height, and results in very apparent layer lines, "
"low printing quality and general printing time."
msgstr ""
-"It has a very big layer height, and results in very apparent layer lines, "
-"low print quality and shorter printing time."
+"Tiene una altura de capa muy grande, y da lugar a líneas de capa muy "
+"aparentes, baja calidad de impresión y menor tiempo de impresión."
msgid ""
"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer "
"height, and results in very apparent layer lines and much lower printing "
"quality, but shorter printing time in some printing cases."
msgstr ""
-"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer "
-"height. This results in very apparent layer lines and much lower print "
-"quality but shorter print time in some cases."
+"En comparación con el perfil predeterminado de una boquilla de 0,8 mm, tiene "
+"una mayor altura de capa. Esto da lugar a líneas de capa muy aparentes y a "
+"una calidad de impresión mucho menor, pero a un tiempo de impresión más "
+"corto en algunos casos."
msgid ""
"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger "
"layer height, and results in extremely apparent layer lines and much lower "
"printing quality, but much shorter printing time in some printing cases."
msgstr ""
-"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger "
-"layer height. This results in extremely apparent layer lines and much lower "
-"print quality but much shorter print time in some cases."
+"En comparación con el perfil predeterminado de una boquilla de 0,8 mm, tiene "
+"una altura de capa mucho mayor. Esto da lugar a líneas de capa "
+"extremadamente aparentes y a una calidad de impresión mucho menor, pero a un "
+"tiempo de impresión mucho más corto en algunos casos."
msgid ""
"Compared with the default profile of a 0.8 mm nozzle, it has a slightly "
@@ -16434,18 +16559,20 @@ msgid ""
"lines and slightly higher printing quality, but longer printing time in some "
"printing cases."
msgstr ""
-"Compared with the default profile of a 0.8 mm nozzle, it has a slightly "
-"smaller layer height. This results in slightly less but still apparent layer "
-"lines and slightly higher print quality, but longer print time in some cases."
+"En comparación con el perfil predeterminado de una boquilla de 0,8 mm, tiene "
+"una altura de capa ligeramente menor. Esto se traduce en líneas de capa "
+"ligeramente menores pero aún aparentes y en una calidad de impresión "
+"ligeramente superior, pero mayor tiempo de impresión en algunos casos."
msgid ""
"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer "
"height, and results in less but still apparent layer lines and slightly "
"higher printing quality, but longer printing time in some printing cases."
msgstr ""
-"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer "
-"height. This results in less but still apparent layer lines and slightly "
-"higher print quality, but longer print time in some cases."
+"En comparación con el perfil predeterminado de una boquilla de 0,8 mm, tiene "
+"una altura de capa menor. Esto se traduce en menos líneas de capa, aunque "
+"aparentes, y en una calidad de impresión ligeramente superior, pero con un "
+"tiempo de impresión más largo en algunos casos."
msgid "Connected to Obico successfully!"
msgstr "¡Conectado a Obico con éxito!"
@@ -16459,21 +16586,17 @@ msgstr "¡Se ha conectado correctamente a SimplyPrint!"
msgid "Could not connect to SimplyPrint"
msgstr "No se ha podido conectar con SimplyPrint"
+msgid "Internal error"
+msgstr "Error interno"
+
+msgid "Unknown error"
+msgstr "Error desconocido"
+
msgid "SimplyPrint account not linked. Go to Connect options to set it up."
msgstr ""
"La cuenta SimplyPrint no está vinculada. Vaya a Opciones de conexión para "
"configurarla."
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
-msgstr ""
-"El tamaño del archivo supera el límite de carga de 100 MB. Por favor, cargue "
-"su archivo a través del panel."
-
-msgid "Unknown error"
-msgstr "Error desconocido"
-
msgid "Connection to Flashforge works correctly."
msgstr "La conexión con Flashforge funciona correctamente."
@@ -16883,6 +17006,96 @@ msgstr ""
"aumentar adecuadamente la temperatura del lecho térmico puede reducir la "
"probabilidad de deformaciones."
+#~ msgid ""
+#~ "File size exceeds the 100MB upload limit. Please upload your file through "
+#~ "the panel."
+#~ msgstr ""
+#~ "El tamaño del archivo supera el límite de carga de 100 MB. Por favor, "
+#~ "cargue su archivo a través del panel."
+
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "Por favor, introduzca un valor válido (K en 0~0.3)"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr "Por favor, introduzca un valor válido (K en 0~0.3, N en 0.6~2.0))"
+
+#~ msgid "Select connected printetrs (0/6)"
+#~ msgstr "Seleccionar impresoras conectadas (0/6)"
+
+#, c-format, boost-format
+#~ msgid "Select Connected Printetrs (%d/6)"
+#~ msgstr "Seleccionar impresoras conectadas (%d/6)"
+
+#~ msgid "PrintingPause"
+#~ msgstr "Impresión Pausada"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr "Printer local connection failed; please try again."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "Consulte los detalles de la Calibración de las Dinámicas de Flujo en "
+#~ "nuestra wiki.\n"
+#~ "\n"
+#~ "Normalmente la calibración es innecesaria. Cuando se inicia una impresión "
+#~ "de un solo color/material, con la opción \"Calibración de la dinámica de "
+#~ "caudal\" marcada en el menú de inicio de impresión, la impresora seguirá "
+#~ "el método antiguo, calibrar el filamento antes de la impresión; Cuando se "
+#~ "inicia una impresión de varios colores/materiales, la impresora utilizará "
+#~ "el parámetro de compensación por defecto para el filamento durante cada "
+#~ "cambio de filamento que tendrá un buen resultado en la mayoría de los "
+#~ "casos.\n"
+#~ "\n"
+#~ "Tenga en cuenta que hay algunos casos en los que el resultado de la "
+#~ "calibración no es fiable: el uso de una placa de textura para hacer la "
+#~ "calibración; la bandeja no tiene buena adherencia (por favor, lave la "
+#~ "bandeja o aplique pegamento) ... Puede encontrar más información en "
+#~ "nuestra wiki.\n"
+#~ "\n"
+#~ "Los resultados de la calibración tienen alrededor de un 10 por ciento de "
+#~ "fluctuación en nuestra prueba, lo que puede causar que el resultado no "
+#~ "sea exactamente el mismo en cada calibración. Todavía estamos "
+#~ "investigando la causa raíz para hacer mejoras con nuevas actualizaciones."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr ""
+#~ "Solo se va a guardar uno de los resultados con el mismo nombre. ¿Está "
+#~ "seguro que desea sobrescribir el otro resultado?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "Hay ya un resultado histórico de calibración con el mismo nombre: %s. "
+#~ "Solo se guardará uno de los resultados con el mismo nombre. ¿·Está seguro "
+#~ "que quiere sobrescribir el resultado histórico?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr ""
+#~ "Por favor, encuentre la esquina con ángulo perfecto para la extrusión"
+
#~ msgid "X"
#~ msgstr "X"
@@ -17238,8 +17451,8 @@ msgstr ""
#~ msgstr "Capas de baja densidad (EXPERIMENTAL)"
#~ msgid ""
-#~ "We would rename the presets as \"Vendor Type Serial @printer you selected"
-#~ "\". \n"
+#~ "We would rename the presets as \"Vendor Type Serial @printer you "
+#~ "selected\". \n"
#~ "To add preset for more prinetrs, Please go to printer selection"
#~ msgstr ""
#~ "Cambiaremos el nombre de los perfiles a \"Tipo Número de Serie @impresora "
diff --git a/localization/i18n/fr/OrcaSlicer_fr.po b/localization/i18n/fr/OrcaSlicer_fr.po
index 5de488169d..f467b5b13b 100644
--- a/localization/i18n/fr/OrcaSlicer_fr.po
+++ b/localization/i18n/fr/OrcaSlicer_fr.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: Guislain Cyril, Thomas Lété\n"
@@ -2896,12 +2896,14 @@ msgstr "Êtes-vous sûr de vouloir effacer les informations du filament ?"
msgid "You need to select the material type and color first."
msgstr "Vous devez d'abord sélectionner le type de matériau et sa couleur."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Veuillez saisir une valeur valide (K entre 0 et 0,3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr "Veuillez saisir une valeur valide (K entre %.1f~%.1f)"
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
msgstr ""
-"Veuillez saisir une valeur valide (K entre 0 et 0,3, N entre 0,6 et 2,0)."
+"Veuillez saisir une valeur valide (K entre %.1f~%.1f, N entre %.1f~%.1f)"
msgid "Other Color"
msgstr "Autre couleur"
@@ -3339,12 +3341,12 @@ msgstr "Tâche envoyée"
msgid "Edit multiple printers"
msgstr "Modifier plusieurs imprimantes"
-msgid "Select connected printetrs (0/6)"
-msgstr "Sélectionner les imprimantes connectées (0/6)"
+msgid "Select connected printers (0/6)"
+msgstr "Sélection des imprimantes connectées (0/6)"
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
-msgstr "Sélectionner les imprimantes connectées (%d/6)"
+msgid "Select Connected Printers (%d/6)"
+msgstr "Sélection des imprimantes connectées (%d/6)"
#, c-format, boost-format
msgid "The maximum number of printers that can be selected is %d"
@@ -3407,8 +3409,8 @@ msgstr "Impression terminée"
msgid "Printing Failed"
msgstr "Échec de l’impression"
-msgid "PrintingPause"
-msgstr "Pause de l’impression"
+msgid "Printing Pause"
+msgstr "Impression en pause"
msgid "Prepare"
msgstr "Préparer"
@@ -3508,7 +3510,7 @@ msgid "Send Options"
msgstr "Options d’envoi"
msgid "Send to"
-msgstr ""
+msgstr "Envoyer à"
msgid ""
"printers at the same time.(It depends on how many devices can undergo "
@@ -4113,12 +4115,14 @@ msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
msgstr ""
+"Format d'entrée non valide. Vecteur de dimensions attendu dans le format "
+"suivant : \"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "La valeur entrée est hors plage"
msgid "Some extension in the input is invalid"
-msgstr ""
+msgstr "Une extension dans l'entrée n'est pas valide"
#, boost-format
msgid "Invalid format. Expected vector format: \"%1%\""
@@ -7286,9 +7290,6 @@ msgstr "envoi terminé"
msgid "Error code"
msgstr "Code erreur"
-msgid "Printer local connection failed, please try again."
-msgstr "La connexion locale de l'imprimante a échoué, veuillez réessayer."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr ""
"Pas de connexion au cloud, seules les imprimantes en mode LAN sont affichées"
@@ -7813,8 +7814,8 @@ msgstr ""
msgid ""
"When recording timelapse without toolhead, it is recommended to add a "
"\"Timelapse Wipe Tower\" \n"
-"by right-click the empty position of build plate and choose \"Add Primitive"
-"\"->\"Timelapse Wipe Tower\"."
+"by right-click the empty position of build plate and choose \"Add "
+"Primitive\"->\"Timelapse Wipe Tower\"."
msgstr ""
"Lorsque vous enregistrez un timelapse sans tête d’outil, il est recommandé "
"d’ajouter une \"Tour d’essuyage timelapse\".\n"
@@ -7969,9 +7970,9 @@ msgid ""
"Bed temperature when cool plate is installed. Value 0 means the filament "
"does not support to print on the Cool Plate"
msgstr ""
-"Il s'agit de la température du plateau lorsque le plateau froid (\"Cool plate"
-"\") est installé. Une valeur à 0 signifie que ce filament ne peut pas être "
-"imprimé sur le plateau froid."
+"Il s'agit de la température du plateau lorsque le plateau froid (\"Cool "
+"plate\") est installé. Une valeur à 0 signifie que ce filament ne peut pas "
+"être imprimé sur le plateau froid."
msgid "Engineering plate"
msgstr "Plaque Engineering"
@@ -8087,10 +8088,10 @@ msgstr "Espace imprimable"
#. TRN: First argument is parameter name, the second one is the value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
-msgstr ""
+msgstr "Valeur non valide fournie pour le réglage %1% : %2%"
msgid "G-code flavor is switched"
-msgstr ""
+msgstr "La version du G-code est modifiée"
msgid "Cooling Fan"
msgstr "Ventilateur de refroidissement"
@@ -8485,6 +8486,60 @@ msgstr "Aucune mise à jour disponible."
msgid "The configuration is up to date."
msgstr "La configuration est à jour."
+msgid "Obj file Import color"
+msgstr "Obj file Import color"
+
+msgid "Specify number of colors:"
+msgstr "Specify number of colors:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "The color count should be in range [%d, %d]."
+
+msgid "Recommended "
+msgstr "Recommended "
+
+msgid "Current filament colors:"
+msgstr "Current filament colors:"
+
+msgid "Quick set:"
+msgstr "Quick set:"
+
+msgid "Color match"
+msgstr "Color match"
+
+msgid "Approximate color matching."
+msgstr "Approximate color matching."
+
+msgid "Append"
+msgstr "Append"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "Add consumable extruder after existing extruders."
+
+msgid "Reset mapped extruders."
+msgstr "Reset mapped extruders."
+
+msgid "Cluster colors"
+msgstr "Cluster colors"
+
+msgid "Map Filament"
+msgstr "Map Filament"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"Warning: The count of newly added and \n"
+" current extruders exceeds 16."
+
msgid "Ramming customization"
msgstr "Personnalisation du pilonnage"
@@ -8576,27 +8631,40 @@ msgid ""
"Windows Media Player is required for this task! Do you want to enable "
"'Windows Media Player' for your operation system?"
msgstr ""
+"Windows Media Player est nécessaire pour cette tâche ! Voulez-vous activer "
+"‘Windows Media Player’ pour votre système d’exploitation ?"
msgid ""
"BambuSource has not correctly been registered for media playing! Press Yes "
"to re-register it. You will be promoted twice"
msgstr ""
+"BambuSource n’a pas été correctement enregistré pour la lecture de médias ! "
+"Appuyez sur Oui pour le réenregistrer. Vous recevrez deux fois la demande de "
+"permission."
msgid ""
"Missing BambuSource component registered for media playing! Please re-"
"install BambuStutio or seek after-sales help."
msgstr ""
+"Composant BambuSource manquant enregistré pour la lecture des médias ! "
+"Veuillez réinstaller OrcaSlicer ou demander de l’aide au service après-vente."
msgid ""
"Using a BambuSource from a different install, video play may not work "
"correctly! Press Yes to fix it."
msgstr ""
+"Si vous utilisez une BambuSource provenant d’une autre installation, la "
+"lecture de la vidéo peut ne pas fonctionner correctement ! Appuyez sur Oui "
+"pour résoudre le problème."
msgid ""
"Your system is missing H.264 codecs for GStreamer, which are required to "
"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-"
"libav packages, then restart Orca Slicer?)"
msgstr ""
+"Il manque à votre système les codecs H.264 pour GStreamer, qui sont "
+"nécessaires pour lire la vidéo. (Essayez d’installer les paquets "
+"gstreamer1.0-plugins-bad ou gstreamer1.0-libav, puis redémarrez Orca Slicer)."
msgid "Bambu Network plug-in not detected."
msgstr "Le plug-in Bambu Network n’a pas été détecté."
@@ -10958,6 +11026,32 @@ msgstr ""
"sera jamais arrêté et fonctionnera au moins à la vitesse minimale pour "
"réduire la fréquence de démarrage et d'arrêt"
+msgid "Don't slow down outer walls"
+msgstr "Ne pas ralentir sur les parois extérieures"
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+"S’il est activé, ce paramètre garantit que les périmètres externes ne sont "
+"pas ralentis pour respecter la durée minimale de la couche. Ceci est "
+"particulièrement utile dans les scénarios suivants :\n"
+"\n"
+" 1. Pour éviter les changements de brillance lors de l’impression de "
+"filaments brillants \n"
+"2. Pour éviter les changements de vitesse des parois externes qui peuvent "
+"créer de légers artefacts de paroi qui apparaissent comme des bandes en z. \n"
+"3. Pour éviter d’imprimer à des vitesses qui provoquent des VFA (artefacts "
+"fins) sur les parois externes.\n"
+
msgid "Layer time"
msgstr "Temps de couche"
@@ -11536,10 +11630,10 @@ msgstr "Ventilateur à pleine vitesse à la couche"
msgid ""
"Fan speed will be ramped up linearly from zero at layer "
-"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer"
-"\". \"full_fan_speed_layer\" will be ignored if lower than "
-"\"close_fan_the_first_x_layers\", in which case the fan will be running at "
-"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
+"\"close_fan_the_first_x_layers\" to maximum at layer "
+"\"full_fan_speed_layer\". \"full_fan_speed_layer\" will be ignored if lower "
+"than \"close_fan_the_first_x_layers\", in which case the fan will be running "
+"at maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
msgstr ""
"La vitesse du ventilateur augmentera de manière linéaire à partir de zéro à "
"la couche \"close_fan_the_first_x_layers\" jusqu’au maximum à la couche "
@@ -11549,7 +11643,7 @@ msgstr ""
"\"close_fan_the_first_x_layers\" + 1."
msgid "layer"
-msgstr ""
+msgstr "couche"
msgid "Support interface fan speed"
msgstr "Vitesse du ventilateur"
@@ -13276,8 +13370,8 @@ msgid ""
"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to "
"close all holes in the model."
msgstr ""
-"Utilisez « Pair-impair » pour les modèles d'avion 3DLabPrint. Utilisez « "
-"Fermer les trous » pour fermer tous les trous du modèle."
+"Utilisez « Pair-impair » pour les modèles d'avion 3DLabPrint. Utilisez "
+"« Fermer les trous » pour fermer tous les trous du modèle."
msgid "Regular"
msgstr "Standard"
@@ -14086,8 +14180,8 @@ msgid ""
"Wipe tower is only compatible with relative mode. It is recommended on most "
"printers. Default is checked"
msgstr ""
-"L’extrusion relative est recommandée lors de l’utilisation de l’option « "
-"label_objects ». Certains extrudeurs fonctionnent mieux avec cette option "
+"L’extrusion relative est recommandée lors de l’utilisation de l’option "
+"« label_objects ». Certains extrudeurs fonctionnent mieux avec cette option "
"non verrouillée (mode d’extrusion absolu). La tour d’essuyage n’est "
"compatible qu’avec le mode relatif. Il est recommandé sur la plupart des "
"imprimantes. L’option par défaut est cochée"
@@ -14937,46 +15031,37 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"Veuillez trouver les détails de la calibration dynamique du débit sur notre "
-"Wiki.\n"
+"Vous trouverez les détails de l'étalonnage de la dynamique des flux dans "
+"notre wiki.\n"
"\n"
-"Habituellement, la calibration est inutile. Lorsque vous démarrez une "
-"impression d'une seule couleur/matériau, avec l'option \"Calibration du débit"
-"\" cochée dans le menu de démarrage de l'impression, l'imprimante suivra "
-"l'ancienne méthode de calibration du filament avant l'impression.\n"
-"Lorsque vous démarrez une impression multi-couleurs/matériaux, l'imprimante "
-"utilise le paramètre de compensation par défaut pour le filament lors de "
-"chaque changement de filament, ce qui donne un bon résultat dans la plupart "
-"des cas.\n"
+"En général, la calibration n’est pas nécessaire. Lorsque vous démarrez une "
+"impression mono-couleur/matériau, avec l’option « calibration de la "
+"dynamique de flux » cochée dans le menu de démarrage de l’impression, "
+"l’imprimante suivra l’ancienne méthode, en calibrant le filament avant "
+"l’impression ; Lorsque vous démarrez une impression multi-couleur/matériau, "
+"l’imprimante utilisera le paramètre de compensation par défaut pour le "
+"filament lors de chaque changement de filament, ce qui donnera un bon "
+"résultat dans la plupart des cas.\n"
"\n"
-"Veuillez noter qu'il y a quelques cas qui rendront le résultat de "
-"calibration non fiable : utiliser un plateau texturé pour faire la "
-"calibration, utiliser un plateau qui n'a pas une bonne adhérence (veuillez "
-"dans ce cas laver la plaque de construction ou appliquer de la colle)… Vous "
-"pouvez trouver d'autres cas sur notre Wiki.\n"
-"Veuillez noter qu'il y a quelques cas qui rendront le résultat de "
-"calibration non fiable : utiliser un plateau texturé pour faire la "
-"calibration, utiliser un plateau qui n'a pas une bonne adhérence (veuillez "
-"dans ce cas laver la plaque de construction ou appliquer de la colle)… Vous "
-"pouvez trouver d'autres cas sur notre Wiki.\n"
+"Veuillez noter qu’il existe quelques cas qui peuvent rendre les résultats de "
+"la calibration peu fiables, tels qu’une adhérence insuffisante sur le "
+"plateau. Il est possible d’améliorer l’adhérence en lavant la plaque de "
+"construction ou en appliquant de la colle. Pour plus d’informations à ce "
+"sujet, veuillez consulter notre Wiki.\n"
"\n"
-"Les résultats de calibration ont environ 10 % d'écart dans nos tests, ce qui "
-"peut faire en sorte que le résultat ne soit pas exactement le même à chaque "
-"calibration. Nous enquêtons toujours sur la cause première pour apporter des "
-"améliorations avec de nouvelles mises à jour.Les résultats de calibration "
-"ont environ 10 % d'écart dans nos tests, ce qui peut faire en sorte que le "
-"résultat ne soit pas exactement le même à chaque calibration. Nous enquêtons "
-"toujours sur la cause première pour apporter des améliorations avec de "
-"nouvelles mises à jour."
+"Les résultats de la calibration présentent une fluctuation d’environ 10 % "
+"dans notre test, ce qui peut entraîner une différence entre les résultats de "
+"chaque calibration. Nous continuons d’étudier la cause première afin "
+"d’apporter des améliorations lors des nouvelles mises à jour."
msgid "When to use Flow Rate Calibration"
msgstr "Nécessité de la calibration du débit"
@@ -15115,26 +15200,16 @@ msgstr "Le nom ne peut pas dépasser 40 caractères."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
-"Un seul des résultats portant le même nom sera enregistré. Voulez-vous "
-"vraiment remplacer les autres résultats ?"
-
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Il existe déjà un résultat de calibration portant le même nom : %s. Un seul "
-"des résultats portant le même nom est enregistré. Voulez-vous vraiment "
-"remplacer le résultat précédent ?"
+"Seul un des résultats portant le même nom sera enregistré. Êtes-vous sûr de "
+"vouloir annuler les autres résultats ?"
msgid "Please find the best line on your plate"
msgstr "Veuillez trouver la meilleure ligne sur votre plateau"
-msgid "Please find the cornor with perfect degree of extrusion"
-msgstr "Veuillez trouver le coin avec un degré d’extrusion parfait"
+msgid "Please find the corner with perfect degree of extrusion"
+msgstr "Veuillez trouver l'angle avec le degré d'extrusion parfait"
msgid "Input Value"
msgstr "Valeur d’entrée"
@@ -15394,6 +15469,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr "PCTG"
+
msgid "TPU"
msgstr "TPU"
@@ -15492,6 +15570,9 @@ msgstr ""
msgid "Upload to storage"
msgstr "Envoyer vers le stockage"
+msgid "Switch to Device tab after upload."
+msgstr "Passer à l’onglet Appareil après le téléchargement."
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr ""
@@ -15731,8 +15812,8 @@ msgstr ""
"Voulez-vous le réécrire ?"
msgid ""
-"We would rename the presets as \"Vendor Type Serial @printer you selected"
-"\". \n"
+"We would rename the presets as \"Vendor Type Serial @printer you "
+"selected\". \n"
"To add preset for more printers, Please go to printer selection"
msgstr ""
"Nous renommerions les préréglages en « Vendor Type Serial @printer you "
@@ -16204,6 +16285,13 @@ msgstr "Êtes-vous sûr de pouvoir vous déconnecter ?"
msgid "Refresh Printers"
msgstr "Actualiser les imprimantes"
+msgid "View print host webui in Device tab"
+msgstr ""
+"Afficher l’interface web de l’hôte d’impression dans l’onglet Périphérique"
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr "Remplacer l’onglet device de BambuLab par print host webui"
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -16668,21 +16756,17 @@ msgstr "Connexion à SimplyPrint réussie !"
msgid "Could not connect to SimplyPrint"
msgstr "Impossible de se connecter à SimplyPrint"
+msgid "Internel error"
+msgstr "Erreur interne"
+
+msgid "Unknown error"
+msgstr "Erreur inconnue"
+
msgid "SimplyPrint account not linked. Go to Connect options to set it up."
msgstr ""
"Le compte SimplyPrint n’est pas lié. Allez dans les options de connexion "
"pour le configurer."
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
-msgstr ""
-"La taille du fichier dépasse la limite de téléchargement de 100 Mo. Veuillez "
-"télécharger votre fichier via le panneau."
-
-msgid "Unknown error"
-msgstr "Erreur inconnue"
-
msgid "Connection to Flashforge works correctly."
msgstr "La connexion à Flashforge fonctionne correctement."
@@ -17101,6 +17185,105 @@ msgstr ""
"déformer, tels que l’ABS, une augmentation appropriée de la température du "
"plateau chauffant peut réduire la probabilité de déformation."
+#~ msgid ""
+#~ "File size exceeds the 100MB upload limit. Please upload your file through "
+#~ "the panel."
+#~ msgstr ""
+#~ "La taille du fichier dépasse la limite de téléchargement de 100 Mo. "
+#~ "Veuillez télécharger votre fichier via le panneau."
+
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "Veuillez saisir une valeur valide (K entre 0 et 0,3)"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr ""
+#~ "Veuillez saisir une valeur valide (K entre 0 et 0,3, N entre 0,6 et 2,0)."
+
+#~ msgid "Select connected printetrs (0/6)"
+#~ msgstr "Sélectionner les imprimantes connectées (0/6)"
+
+#, c-format, boost-format
+#~ msgid "Select Connected Printetrs (%d/6)"
+#~ msgstr "Sélectionner les imprimantes connectées (%d/6)"
+
+#~ msgid "PrintingPause"
+#~ msgstr "Pause de l’impression"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr "La connexion locale de l'imprimante a échoué, veuillez réessayer."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "Veuillez trouver les détails de la calibration dynamique du débit sur "
+#~ "notre Wiki.\n"
+#~ "\n"
+#~ "Habituellement, la calibration est inutile. Lorsque vous démarrez une "
+#~ "impression d'une seule couleur/matériau, avec l'option \"Calibration du "
+#~ "débit\" cochée dans le menu de démarrage de l'impression, l'imprimante "
+#~ "suivra l'ancienne méthode de calibration du filament avant l'impression.\n"
+#~ "Lorsque vous démarrez une impression multi-couleurs/matériaux, "
+#~ "l'imprimante utilise le paramètre de compensation par défaut pour le "
+#~ "filament lors de chaque changement de filament, ce qui donne un bon "
+#~ "résultat dans la plupart des cas.\n"
+#~ "\n"
+#~ "Veuillez noter qu'il y a quelques cas qui rendront le résultat de "
+#~ "calibration non fiable : utiliser un plateau texturé pour faire la "
+#~ "calibration, utiliser un plateau qui n'a pas une bonne adhérence "
+#~ "(veuillez dans ce cas laver la plaque de construction ou appliquer de la "
+#~ "colle)… Vous pouvez trouver d'autres cas sur notre Wiki.\n"
+#~ "Veuillez noter qu'il y a quelques cas qui rendront le résultat de "
+#~ "calibration non fiable : utiliser un plateau texturé pour faire la "
+#~ "calibration, utiliser un plateau qui n'a pas une bonne adhérence "
+#~ "(veuillez dans ce cas laver la plaque de construction ou appliquer de la "
+#~ "colle)… Vous pouvez trouver d'autres cas sur notre Wiki.\n"
+#~ "\n"
+#~ "Les résultats de calibration ont environ 10 % d'écart dans nos tests, ce "
+#~ "qui peut faire en sorte que le résultat ne soit pas exactement le même à "
+#~ "chaque calibration. Nous enquêtons toujours sur la cause première pour "
+#~ "apporter des améliorations avec de nouvelles mises à jour.Les résultats "
+#~ "de calibration ont environ 10 % d'écart dans nos tests, ce qui peut faire "
+#~ "en sorte que le résultat ne soit pas exactement le même à chaque "
+#~ "calibration. Nous enquêtons toujours sur la cause première pour apporter "
+#~ "des améliorations avec de nouvelles mises à jour."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr ""
+#~ "Un seul des résultats portant le même nom sera enregistré. Voulez-vous "
+#~ "vraiment remplacer les autres résultats ?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "Il existe déjà un résultat de calibration portant le même nom : %s. Un "
+#~ "seul des résultats portant le même nom est enregistré. Voulez-vous "
+#~ "vraiment remplacer le résultat précédent ?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "Veuillez trouver le coin avec un degré d’extrusion parfait"
+
#~ msgid "X"
#~ msgstr "X"
@@ -17550,8 +17733,8 @@ msgstr ""
#~ "thickness (top+bottom solid layers)"
#~ msgstr ""
#~ "Ajoutez du remplissage solide à proximité des surfaces inclinées pour "
-#~ "garantir l'épaisseur verticale de la coque (couches solides supérieure"
-#~ "+inférieure)."
+#~ "garantir l'épaisseur verticale de la coque (couches solides "
+#~ "supérieure+inférieure)."
#~ msgid "Further reduce solid infill on walls (beta)"
#~ msgstr "Réduire davantage le remplissage solide des parois (expérimental)"
diff --git a/localization/i18n/hu/OrcaSlicer_hu.po b/localization/i18n/hu/OrcaSlicer_hu.po
index 9be24742e0..4e624875e6 100644
--- a/localization/i18n/hu/OrcaSlicer_hu.po
+++ b/localization/i18n/hu/OrcaSlicer_hu.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"Language: hu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -2812,11 +2812,13 @@ msgstr "Are you sure you want to clear the filament information?"
msgid "You need to select the material type and color first."
msgstr "You need to select the material type and color first."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Kérjük, adj meg egy érvényes értéket (K 0-0,3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr ""
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "Kérjük, adj meg egy érvényes értéket (K 0-0,3; N 0,6-2,0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr ""
msgid "Other Color"
msgstr "Other Color"
@@ -3241,11 +3243,11 @@ msgstr "Task Sent"
msgid "Edit multiple printers"
msgstr ""
-msgid "Select connected printetrs (0/6)"
+msgid "Select connected printers (0/6)"
msgstr ""
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
+msgid "Select Connected Printers (%d/6)"
msgstr ""
#, c-format, boost-format
@@ -3307,7 +3309,7 @@ msgstr ""
msgid "Printing Failed"
msgstr ""
-msgid "PrintingPause"
+msgid "Printing Pause"
msgstr ""
msgid "Prepare"
@@ -3995,9 +3997,11 @@ msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
msgstr ""
+"Érvénytelen bemeneti formátum. A méretek vektora a következő formátumban "
+"lenne érvényes: \"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "A bemeneti érték kívül esik a tartományon"
msgid "Some extension in the input is invalid"
msgstr ""
@@ -7051,9 +7055,6 @@ msgstr "küldés befejezve"
msgid "Error code"
msgstr "Error code"
-msgid "Printer local connection failed, please try again."
-msgstr "Printer local connection failed; please try again."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr ""
"Nincs bejelentkezési fiók, csak a LAN módban lévő nyomtatók jelennek meg"
@@ -8185,6 +8186,60 @@ msgstr "Nincs elérhető frissítés."
msgid "The configuration is up to date."
msgstr "A konfiguráció naprakész."
+msgid "Obj file Import color"
+msgstr "Obj file Import color"
+
+msgid "Specify number of colors:"
+msgstr "Specify number of colors:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "The color count should be in range [%d, %d]."
+
+msgid "Recommended "
+msgstr "Recommended "
+
+msgid "Current filament colors:"
+msgstr "Current filament colors:"
+
+msgid "Quick set:"
+msgstr "Quick set:"
+
+msgid "Color match"
+msgstr "Color match"
+
+msgid "Approximate color matching."
+msgstr "Approximate color matching."
+
+msgid "Append"
+msgstr "Append"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "Add consumable extruder after existing extruders."
+
+msgid "Reset mapped extruders."
+msgstr "Reset mapped extruders."
+
+msgid "Cluster colors"
+msgstr "Cluster colors"
+
+msgid "Map Filament"
+msgstr "Map Filament"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"Warning: The count of newly added and \n"
+" current extruders exceeds 16."
+
msgid "Ramming customization"
msgstr "Tömörítés testreszabása"
@@ -10365,6 +10420,22 @@ msgstr ""
"és legalább a minimális fordulatszámon fog járni, hogy csökkentse az indítás "
"és leállítás gyakoriságát"
+msgid "Don't slow down outer walls"
+msgstr ""
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+
msgid "Layer time"
msgstr "Rétegidő"
@@ -13853,33 +13924,15 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"Az áramlásdinamikai kalibráció részleteit a wikiben találod.\n"
-"\n"
-"Általában nincs szükség a kalibrálásra. Ha egyszínű / egy anyagból álló "
-"nyomtatást indítasz, és a nyomtatás indítása menüben be van jelölve az "
-"„Áramlásdinamika kalibrálás“ opció, a nyomtató a nyomtatás előtt kalibrálja "
-"a filamenteket. Ha többszínű / több anyagból álló nyomtatást indítasz, a "
-"nyomtató minden filamentváltáskor az alapértelmezett kompenzációs paramétert "
-"használja a filamentekhez, ami a legtöbb esetben jó eredményt ad.\n"
-"\n"
-"Felhívjuk a figyelmed, hogy néhány esetben a kalibrálás eredménye "
-"megbízhatatlan lehet: texturált tálcát / rossz tapadású tálcát használsz a "
-"kalibráláshoz. (Kérjük, mosd le a tálcát vagy használj ragasztót!) További "
-"információkat a wikiben találhatsz.\n"
-"\n"
-"A kalibrációs eredmények körülbelül 10 százalékos szórást mutatnak a "
-"tesztjeinkben, ami miatt előfordulhat, hogy az eredmények nem azonosak "
-"minden kalibrációnál. Még vizsgáljuk a kiváltó okot, hogy a jövőbeni "
-"frissítésekkel tovább javíthassuk ezt a funkciót."
msgid "When to use Flow Rate Calibration"
msgstr "Mikor van szükség az anyagáramlás kalibrálására?"
@@ -14011,25 +14064,15 @@ msgstr "A név nem haladhatja meg a 40 karaktert."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
"Az azonos nevű eredmények közül csak az egyik kerül elmentésre. Biztos, hogy "
"felül akarod írni a többi eredményt?"
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Már létezik egy ugyanilyen nevű, korábbi kalibrálási eredmény: %s. Csak egy "
-"azonos nevű eredményt lehet elmenteni. Biztos, hogy felül akarod írni a "
-"korábbi eredményeket?"
-
msgid "Please find the best line on your plate"
msgstr "Keresd meg a legjobb vonalat a tálcán"
-msgid "Please find the cornor with perfect degree of extrusion"
+msgid "Please find the corner with perfect degree of extrusion"
msgstr "Keresd meg a tökéletesen extrudált sarkot"
msgid "Input Value"
@@ -14283,6 +14326,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU"
@@ -14367,6 +14413,9 @@ msgstr "Ha szükséges, használj perjeleket ( / ) könyvtárelválasztóként."
msgid "Upload to storage"
msgstr ""
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "A feltöltendő fájlnév nem végződik „%s”-ra. Folytatod?"
@@ -14984,7 +15033,7 @@ msgstr "Napi tippek"
#, c-format, boost-format
msgid "nozzle memorized: %.1f %s"
-msgstr ""
+msgstr "eltárolt fúvóka: %.1f %s"
msgid ""
"Your nozzle diameter in preset is not consistent with memorized nozzle "
@@ -15028,6 +15077,12 @@ msgstr ""
msgid "Refresh Printers"
msgstr "Nyomtatók frissítése"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -15459,17 +15514,15 @@ msgstr ""
msgid "Could not connect to SimplyPrint"
msgstr ""
-msgid "SimplyPrint account not linked. Go to Connect options to set it up."
-msgstr ""
-
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
+msgid "Internal error"
msgstr ""
msgid "Unknown error"
msgstr ""
+msgid "SimplyPrint account not linked. Go to Connect options to set it up."
+msgstr ""
+
msgid "Connection to Flashforge works correctly."
msgstr ""
@@ -15829,6 +15882,75 @@ msgstr ""
"Tudtad, hogy a vetemedésre hajlamos anyagok (például ABS) nyomtatásakor a "
"tárgyasztal hőmérsékletének növelése csökkentheti a vetemedés valószínűségét?"
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "Kérjük, adj meg egy érvényes értéket (K 0-0,3)"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr "Kérjük, adj meg egy érvényes értéket (K 0-0,3; N 0,6-2,0)"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr "Printer local connection failed; please try again."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "Az áramlásdinamikai kalibráció részleteit a wikiben találod.\n"
+#~ "\n"
+#~ "Általában nincs szükség a kalibrálásra. Ha egyszínű / egy anyagból álló "
+#~ "nyomtatást indítasz, és a nyomtatás indítása menüben be van jelölve az "
+#~ "„Áramlásdinamika kalibrálás“ opció, a nyomtató a nyomtatás előtt "
+#~ "kalibrálja a filamenteket. Ha többszínű / több anyagból álló nyomtatást "
+#~ "indítasz, a nyomtató minden filamentváltáskor az alapértelmezett "
+#~ "kompenzációs paramétert használja a filamentekhez, ami a legtöbb esetben "
+#~ "jó eredményt ad.\n"
+#~ "\n"
+#~ "Felhívjuk a figyelmed, hogy néhány esetben a kalibrálás eredménye "
+#~ "megbízhatatlan lehet: texturált tálcát / rossz tapadású tálcát használsz "
+#~ "a kalibráláshoz. (Kérjük, mosd le a tálcát vagy használj ragasztót!) "
+#~ "További információkat a wikiben találhatsz.\n"
+#~ "\n"
+#~ "A kalibrációs eredmények körülbelül 10 százalékos szórást mutatnak a "
+#~ "tesztjeinkben, ami miatt előfordulhat, hogy az eredmények nem azonosak "
+#~ "minden kalibrációnál. Még vizsgáljuk a kiváltó okot, hogy a jövőbeni "
+#~ "frissítésekkel tovább javíthassuk ezt a funkciót."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr ""
+#~ "Az azonos nevű eredmények közül csak az egyik kerül elmentésre. Biztos, "
+#~ "hogy felül akarod írni a többi eredményt?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "Már létezik egy ugyanilyen nevű, korábbi kalibrálási eredmény: %s. Csak "
+#~ "egy azonos nevű eredményt lehet elmenteni. Biztos, hogy felül akarod írni "
+#~ "a korábbi eredményeket?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "Keresd meg a tökéletesen extrudált sarkot"
+
#~ msgid "V"
#~ msgstr "V"
diff --git a/localization/i18n/it/OrcaSlicer_it.po b/localization/i18n/it/OrcaSlicer_it.po
index c53a7cdc79..5263750835 100644
--- a/localization/i18n/it/OrcaSlicer_it.po
+++ b/localization/i18n/it/OrcaSlicer_it.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -2885,11 +2885,13 @@ msgstr "Sei sicuro di voler cancellare le informazioni del filamento?"
msgid "You need to select the material type and color first."
msgstr "Devi prima selezionare il tipo e il colore del materiale."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Immettere un valore valido (K in 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr ""
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "Immettere un valore valido (K in 0~0.3, N in 0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr ""
msgid "Other Color"
msgstr "Altro colore"
@@ -3324,11 +3326,11 @@ msgstr "Task Sent"
msgid "Edit multiple printers"
msgstr ""
-msgid "Select connected printetrs (0/6)"
+msgid "Select connected printers (0/6)"
msgstr ""
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
+msgid "Select Connected Printers (%d/6)"
msgstr ""
#, c-format, boost-format
@@ -3390,7 +3392,7 @@ msgstr ""
msgid "Printing Failed"
msgstr ""
-msgid "PrintingPause"
+msgid "Printing Pause"
msgstr ""
msgid "Prepare"
@@ -4094,12 +4096,14 @@ msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
msgstr ""
+"Formato di input non valido. Vettore di dimensioni previsto nel seguente "
+"formato: \"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "Valore input fuori portata"
msgid "Some extension in the input is invalid"
-msgstr ""
+msgstr "Alcune estensioni nell'input non sono valide"
#, boost-format
msgid "Invalid format. Expected vector format: \"%1%\""
@@ -7193,9 +7197,6 @@ msgstr "Invio completo"
msgid "Error code"
msgstr "Codice di errore"
-msgid "Printer local connection failed, please try again."
-msgstr "Connessione locale della stampante fallita; Si prega di riprovare."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr ""
"Nessun account di login, vengono visualizzate solo le stampanti in modalità "
@@ -7962,10 +7963,10 @@ msgstr "Spazio di stampa"
#. TRN: First argument is parameter name, the second one is the value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
-msgstr ""
+msgstr "Valore non valido fornito per il parametro %1%: %2%"
msgid "G-code flavor is switched"
-msgstr ""
+msgstr "La variante del G-Code è stata commutata"
msgid "Cooling Fan"
msgstr "Velocità minima ventola di raffreddamento"
@@ -8349,6 +8350,60 @@ msgstr "Nessun aggiornamento disponibile."
msgid "The configuration is up to date."
msgstr "Configurazione aggiornata."
+msgid "Obj file Import color"
+msgstr "Obj file Import color"
+
+msgid "Specify number of colors:"
+msgstr "Specify number of colors:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "The color count should be in range [%d, %d]."
+
+msgid "Recommended "
+msgstr "Recommended "
+
+msgid "Current filament colors:"
+msgstr "Current filament colors:"
+
+msgid "Quick set:"
+msgstr "Quick set:"
+
+msgid "Color match"
+msgstr "Color match"
+
+msgid "Approximate color matching."
+msgstr "Approximate color matching."
+
+msgid "Append"
+msgstr "Append"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "Add consumable extruder after existing extruders."
+
+msgid "Reset mapped extruders."
+msgstr "Reset mapped extruders."
+
+msgid "Cluster colors"
+msgstr "Cluster colors"
+
+msgid "Map Filament"
+msgstr "Map Filament"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"Warning: The count of newly added and \n"
+" current extruders exceeds 16."
+
msgid "Ramming customization"
msgstr "Personalizzazione del ramming"
@@ -10794,6 +10849,22 @@ msgstr ""
"arresterà mai del tutto, ma funzionerà almeno alla velocità minima per "
"ridurre la frequenza di avvio e arresto."
+msgid "Don't slow down outer walls"
+msgstr ""
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+
msgid "Layer time"
msgstr "Layer time"
@@ -14691,36 +14762,15 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"I dettagli della calibrazione dinamica del flusso sono disponibili nel "
-"nostro wiki.\n"
-"\n"
-"Di solito la calibrazione non è necessaria. Quando si avvia una stampa a "
-"singolo colore/materiale, con l'opzione \"calibrazione dinamica del flusso\" "
-"selezionata nel menu di avvio della stampa, la stampante seguirà il vecchio "
-"modo, calibrando il filamento prima della stampa; Quando si avvia una stampa "
-"multicolore/materiale, la stampante utilizzerà il parametro di compensazione "
-"predefinito per il filamento durante ogni cambio di filamento, che avrà un "
-"buon risultato nella maggior parte dei casi.\n"
-"\n"
-"Si prega di notare che ci sono alcuni casi che renderanno il risultato della "
-"calibrazione non affidabile: utilizzo di una piastra di texture per eseguire "
-"la calibrazione; Il piano di stampa non ha una buona adesione (è consigliato "
-"lavarlo o applicare della colla stick!) ... Puoi trovare di più dal nostro "
-"wiki.\n"
-"\n"
-"I risultati della calibrazione hanno un jitter di circa il 10% nel nostro "
-"test, il che potrebbe causare un risultato non esattamente lo stesso in ogni "
-"calibrazione. Stiamo ancora indagando sulla causa principale per apportare "
-"miglioramenti con i nuovi aggiornamenti."
msgid "When to use Flow Rate Calibration"
msgstr "Quando utilizzare la calibrazione della portata"
@@ -14857,26 +14907,16 @@ msgstr "Il nome non può superare i 40 caratteri."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
-"Verrà salvato solo uno dei risultati con lo stesso nome. Si è sicuri di "
-"voler sovrascrivere gli altri risultati?"
-
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Esiste già un risultato di calibrazione storico con lo stesso nome: %s. "
-"Viene salvato solo uno dei risultati con lo stesso nome. Si è sicuri di "
-"voler eseguire l'override del risultato cronologico?"
+"Verrà salvato solo uno dei risultati con lo stesso nome. Sei sicuro di voler "
+"sostituire gli altri risultati?"
msgid "Please find the best line on your plate"
msgstr "Trova la linea migliore nel tuo piatto"
-msgid "Please find the cornor with perfect degree of extrusion"
-msgstr "Si prega di trovare il cornor con il perfetto grado di estrusione"
+msgid "Please find the corner with perfect degree of extrusion"
+msgstr "Prego Individua l'angolo con il grado di estrusione ideale"
msgid "Input Value"
msgstr "Valore di input"
@@ -15136,6 +15176,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU (TPU)"
@@ -15232,6 +15275,9 @@ msgstr "Usa la barra ( / ) come separatore di cartella se necessario."
msgid "Upload to storage"
msgstr "Carica nello spazio di archiviazione"
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "Il nome del file caricato non finisce con \"%s\". Vuoi continuare?"
@@ -15882,7 +15928,7 @@ msgstr "Consigli giornalieri"
#, c-format, boost-format
msgid "nozzle memorized: %.1f %s"
-msgstr ""
+msgstr "nozzle memorizzato: %.1f %s"
msgid ""
"Your nozzle diameter in preset is not consistent with memorized nozzle "
@@ -15926,6 +15972,12 @@ msgstr "Sei sicuro di voler effettuare il logout?"
msgid "Refresh Printers"
msgstr "Aggiorna Stampanti"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -16359,17 +16411,15 @@ msgstr ""
msgid "Could not connect to SimplyPrint"
msgstr ""
-msgid "SimplyPrint account not linked. Go to Connect options to set it up."
-msgstr ""
-
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
+msgid "Internal error"
msgstr ""
msgid "Unknown error"
msgstr ""
+msgid "SimplyPrint account not linked. Go to Connect options to set it up."
+msgstr ""
+
msgid "Connection to Flashforge works correctly."
msgstr ""
@@ -16776,6 +16826,77 @@ msgstr ""
"aumentare in modo appropriato la temperatura del piano riscaldato può "
"ridurre la probabilità di deformazione."
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "Immettere un valore valido (K in 0~0.3)"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr "Immettere un valore valido (K in 0~0.3, N in 0.6~2.0)"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr "Connessione locale della stampante fallita; Si prega di riprovare."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "I dettagli della calibrazione dinamica del flusso sono disponibili nel "
+#~ "nostro wiki.\n"
+#~ "\n"
+#~ "Di solito la calibrazione non è necessaria. Quando si avvia una stampa a "
+#~ "singolo colore/materiale, con l'opzione \"calibrazione dinamica del flusso"
+#~ "\" selezionata nel menu di avvio della stampa, la stampante seguirà il "
+#~ "vecchio modo, calibrando il filamento prima della stampa; Quando si avvia "
+#~ "una stampa multicolore/materiale, la stampante utilizzerà il parametro di "
+#~ "compensazione predefinito per il filamento durante ogni cambio di "
+#~ "filamento, che avrà un buon risultato nella maggior parte dei casi.\n"
+#~ "\n"
+#~ "Si prega di notare che ci sono alcuni casi che renderanno il risultato "
+#~ "della calibrazione non affidabile: utilizzo di una piastra di texture per "
+#~ "eseguire la calibrazione; Il piano di stampa non ha una buona adesione (è "
+#~ "consigliato lavarlo o applicare della colla stick!) ... Puoi trovare di "
+#~ "più dal nostro wiki.\n"
+#~ "\n"
+#~ "I risultati della calibrazione hanno un jitter di circa il 10% nel nostro "
+#~ "test, il che potrebbe causare un risultato non esattamente lo stesso in "
+#~ "ogni calibrazione. Stiamo ancora indagando sulla causa principale per "
+#~ "apportare miglioramenti con i nuovi aggiornamenti."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr ""
+#~ "Verrà salvato solo uno dei risultati con lo stesso nome. Si è sicuri di "
+#~ "voler sovrascrivere gli altri risultati?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "Esiste già un risultato di calibrazione storico con lo stesso nome: %s. "
+#~ "Viene salvato solo uno dei risultati con lo stesso nome. Si è sicuri di "
+#~ "voler eseguire l'override del risultato cronologico?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "Si prega di trovare il cornor con il perfetto grado di estrusione"
+
#~ msgid "X"
#~ msgstr "X"
diff --git a/localization/i18n/ja/OrcaSlicer_ja.po b/localization/i18n/ja/OrcaSlicer_ja.po
index f1bb4114aa..9ae5f190ec 100644
--- a/localization/i18n/ja/OrcaSlicer_ja.po
+++ b/localization/i18n/ja/OrcaSlicer_ja.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -2795,11 +2795,13 @@ msgstr "Are you sure you want to clear the filament information?"
msgid "You need to select the material type and color first."
msgstr "You need to select the material type and color first."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Please input a valid value (K in 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr ""
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr ""
msgid "Other Color"
msgstr "Other Color"
@@ -3204,11 +3206,11 @@ msgstr "Task Sent"
msgid "Edit multiple printers"
msgstr ""
-msgid "Select connected printetrs (0/6)"
+msgid "Select connected printers (0/6)"
msgstr ""
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
+msgid "Select Connected Printers (%d/6)"
msgstr ""
#, c-format, boost-format
@@ -3270,7 +3272,7 @@ msgstr ""
msgid "Printing Failed"
msgstr ""
-msgid "PrintingPause"
+msgid "Printing Pause"
msgstr ""
msgid "Prepare"
@@ -3937,13 +3939,13 @@ msgstr ""
msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
-msgstr ""
+msgstr "入力形式が無効です。 次の形式の次元の予想されるベクトル:\"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "入力値が範囲を超えています"
msgid "Some extension in the input is invalid"
-msgstr ""
+msgstr "入力の一部の拡張子が無効"
#, boost-format
msgid "Invalid format. Expected vector format: \"%1%\""
@@ -6956,9 +6958,6 @@ msgstr "送信完了"
msgid "Error code"
msgstr "Error code"
-msgid "Printer local connection failed, please try again."
-msgstr "Printer local connection failed; please try again."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr "アカウント無し、ローカルモードのプリンターのみが表示されます"
@@ -7669,10 +7668,10 @@ msgstr "造形可能領域"
#. TRN: First argument is parameter name, the second one is the value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
-msgstr ""
+msgstr "パラメータ %1% に無効な値が指定されました: %2%"
msgid "G-code flavor is switched"
-msgstr ""
+msgstr "Gコードフレーバーが切り替わる"
msgid "Cooling Fan"
msgstr ""
@@ -8034,6 +8033,60 @@ msgstr "利用可能なアップデートはありません"
msgid "The configuration is up to date."
msgstr "構成データが最新です"
+msgid "Obj file Import color"
+msgstr "Obj file Import color"
+
+msgid "Specify number of colors:"
+msgstr "Specify number of colors:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "The color count should be in range [%d, %d]."
+
+msgid "Recommended "
+msgstr "Recommended "
+
+msgid "Current filament colors:"
+msgstr "Current filament colors:"
+
+msgid "Quick set:"
+msgstr "Quick set:"
+
+msgid "Color match"
+msgstr "Color match"
+
+msgid "Approximate color matching."
+msgstr "Approximate color matching."
+
+msgid "Append"
+msgstr "Append"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "Add consumable extruder after existing extruders."
+
+msgid "Reset mapped extruders."
+msgstr "Reset mapped extruders."
+
+msgid "Cluster colors"
+msgstr "Cluster colors"
+
+msgid "Map Filament"
+msgstr "Map Filament"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"Warning: The count of newly added and \n"
+" current extruders exceeds 16."
+
msgid "Ramming customization"
msgstr "ラミングのカスタマイズ"
@@ -10141,6 +10194,22 @@ msgstr ""
"この設定により、パーツ冷却ファンを停止しなく、最低速度で回転します。頻繁に回"
"転・停止の頻度を減らします。"
+msgid "Don't slow down outer walls"
+msgstr ""
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+
msgid "Layer time"
msgstr "積層時間"
@@ -13556,33 +13625,15 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"Please find the details of Flow Dynamics Calibration from our wiki.\n"
-"\n"
-"Usually the calibration is unnecessary. When you start a single color/"
-"material print, with the \"flow dynamics calibration\" option checked in the "
-"print start menu, the printer will calibrate the filament before the print; "
-"When you start a multi color/material print, the printer will use the "
-"default compensation parameter for the filament during every filament switch "
-"which will have a good result in most cases.\n"
-"\n"
-"Please note there are a few cases that may make the calibration result "
-"unreliable: using a texture plate to do the calibration; using a build plate "
-"with poor adhesion. (please wash the build plate or apply gluestick!) You "
-"can find more on our wiki.\n"
-"\n"
-"The calibration results have about 10 percent variation in our test, which "
-"may cause the results to not be identical for each calibration. We are still "
-"investigating the root cause to further improve this calibration in future "
-"updates."
msgid "When to use Flow Rate Calibration"
msgstr "When to use Flow Rate Calibration"
@@ -13710,25 +13761,15 @@ msgstr "The name cannot exceed 40 characters."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to override the other results?"
-
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one set of results with the same name is saved. Are you sure you want "
-"to override the previous results?"
+"want to replace the other results?"
msgid "Please find the best line on your plate"
msgstr "Please find the best line on your plate."
-msgid "Please find the cornor with perfect degree of extrusion"
+msgid "Please find the corner with perfect degree of extrusion"
msgstr "Please find the corner with the perfect degree of extrusion"
msgid "Input Value"
@@ -13983,6 +14024,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU"
@@ -14067,6 +14111,9 @@ msgstr "Use forward slashes ( / ) as a directory separator if needed."
msgid "Upload to storage"
msgstr "ストレージへのアップロード"
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "Filename to upload doesn't end with \"%s\". Do you want to continue?"
@@ -14681,7 +14728,7 @@ msgstr "Daily Tips"
#, c-format, boost-format
msgid "nozzle memorized: %.1f %s"
-msgstr ""
+msgstr "nozzle memorized: %.1f %s"
msgid ""
"Your nozzle diameter in preset is not consistent with memorized nozzle "
@@ -14725,6 +14772,12 @@ msgstr ""
msgid "Refresh Printers"
msgstr "Refresh Printers"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -15155,17 +15208,15 @@ msgstr ""
msgid "Could not connect to SimplyPrint"
msgstr ""
-msgid "SimplyPrint account not linked. Go to Connect options to set it up."
-msgstr ""
-
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
+msgid "Internal error"
msgstr ""
msgid "Unknown error"
msgstr ""
+msgid "SimplyPrint account not linked. Go to Connect options to set it up."
+msgstr ""
+
msgid "Connection to Flashforge works correctly."
msgstr ""
@@ -15505,6 +15556,74 @@ msgstr ""
"ABS, appropriately increasing the heatbed temperature can reduce the "
"probability of warping?"
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "Please input a valid value (K in 0~0.3)"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr "Printer local connection failed; please try again."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will calibrate the filament before the "
+#~ "print; When you start a multi color/material print, the printer will use "
+#~ "the default compensation parameter for the filament during every filament "
+#~ "switch which will have a good result in most cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that may make the calibration result "
+#~ "unreliable: using a texture plate to do the calibration; using a build "
+#~ "plate with poor adhesion. (please wash the build plate or apply "
+#~ "gluestick!) You can find more on our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent variation in our test, "
+#~ "which may cause the results to not be identical for each calibration. We "
+#~ "are still investigating the root cause to further improve this "
+#~ "calibration in future updates."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to override the other results?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one set of results with the same name is saved. Are you sure you "
+#~ "want to override the previous results?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "Please find the corner with the perfect degree of extrusion"
+
#~ msgid "V"
#~ msgstr "V"
diff --git a/localization/i18n/ko/OrcaSlicer_ko.po b/localization/i18n/ko/OrcaSlicer_ko.po
index 735e4d1b56..ff906f43b0 100644
--- a/localization/i18n/ko/OrcaSlicer_ko.po
+++ b/localization/i18n/ko/OrcaSlicer_ko.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: 2024-05-31 23:33+0900\n"
"Last-Translator: Hotsolidinfill <138652683+Hotsolidinfill@users.noreply."
"github.com>, crwusiz \n"
@@ -1504,8 +1504,7 @@ msgstr "사용자가 로그아웃됨"
msgid "new or open project file is not allowed during the slicing process!"
msgstr ""
-"슬라이싱 프로세스 중에는 새 프로젝트 파일이나 열린 프로젝트 파일이 허용되지 "
-"않습니다!"
+"슬라이싱 중에는 새 프로젝트를 만들거나 프로젝트 파일을 열 수 없습니다!"
msgid "Open Project"
msgstr "프로젝트 열기"
@@ -1778,10 +1777,10 @@ msgid "Reload the selected parts from disk"
msgstr "선택한 부품을 디스크에서 다시 불러오기"
msgid "Replace with STL"
-msgstr "STL파일로 교체"
+msgstr "STL 파일로 교체"
msgid "Replace the selected part with new STL"
-msgstr "선택한 부품을 새 STL파일로 교체"
+msgstr "선택한 부품을 새 STL 파일로 교체"
msgid "Change filament"
msgstr "필라멘트 변경"
@@ -2814,11 +2813,13 @@ msgstr "정말 필라멘트 정보를 삭제하시겠습니까?"
msgid "You need to select the material type and color first."
msgstr "재료 유형과 색상을 먼저 선택해야 합니다."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "유효한 값을 입력하세요(K는 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr "유효한 값을 입력하세요 (%.1f~%.1f 사이의 K)"
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "유효한 값을 입력하세요(K는 0~0.3, N은 0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr "유효한 값을 입력하세요 (%.1f~%.1f 사이의 K, %.1f~%.1f 사이의 N)"
msgid "Other Color"
msgstr "기타 색상"
@@ -2984,10 +2985,10 @@ msgstr ""
"(현재 동일한 브랜드, 재질, 색상의 소모품 자동 공급 지원)"
msgid "DRY"
-msgstr "DRY"
+msgstr "건조함"
msgid "WET"
-msgstr "WET"
+msgstr "습함"
msgid "AMS Settings"
msgstr "AMS 설정"
@@ -3218,20 +3219,20 @@ msgid "Device"
msgstr "장치"
msgid "Task Sending"
-msgstr "Task Sending"
+msgstr "작업 전송중"
msgid "Task Sent"
-msgstr "Task Sent"
+msgstr "작업 전송됨"
msgid "Edit multiple printers"
msgstr "여러 프린터 편집"
-msgid "Select connected printetrs (0/6)"
-msgstr "연결된 프린터 선택(0/6)"
+msgid "Select connected printers (0/6)"
+msgstr "연결된 프린터 선택 (0/6)"
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
-msgstr "연결된 프린터 (%d/6)를 선택합니다"
+msgid "Select Connected Printers (%d/6)"
+msgstr "연결된 프린터 선택 (%d/6)"
#, c-format, boost-format
msgid "The maximum number of printers that can be selected is %d"
@@ -3241,7 +3242,7 @@ msgid "Offline"
msgstr "오프라인"
msgid "No task"
-msgstr "No task"
+msgstr "작업 없음"
msgid "View"
msgstr "시점"
@@ -3253,20 +3254,20 @@ msgid "Edit Printers"
msgstr "프린터 편집"
msgid "Device Name"
-msgstr "Device Name"
+msgstr "장치 이름"
msgid "Task Name"
-msgstr "Task Name"
+msgstr "작업 이름"
msgid "Device Status"
-msgstr "Device Status"
+msgstr "장치 상태"
msgid "Actions"
-msgstr "Actions"
+msgstr "동작"
msgid ""
"Please select the devices you would like to manage here (up to 6 devices)"
-msgstr "여기에서 관리할 장치를 선택하세요(최대 6개 장치)"
+msgstr "여기에서 관리할 장치를 선택하세요 (최대 6개 장치)"
msgid "Add"
msgstr "추가"
@@ -3292,8 +3293,8 @@ msgstr "인쇄 완료"
msgid "Printing Failed"
msgstr "인쇄 실패"
-msgid "PrintingPause"
-msgstr "인쇄 일시 중지"
+msgid "Printing Pause"
+msgstr "인쇄 일시중지"
msgid "Prepare"
msgstr "준비 하기"
@@ -3332,22 +3333,22 @@ msgid "Stop"
msgstr "정지"
msgid "Task Status"
-msgstr "Task Status"
+msgstr "작업 상태"
msgid "Sent Time"
-msgstr "Sent Time"
+msgstr "전송한 시간"
msgid "There are no tasks to be sent!"
-msgstr "There are no tasks to be sent!"
+msgstr "전송할 작업이 없습니다!"
msgid "No historical tasks!"
-msgstr "No historical tasks!"
+msgstr "작업 내역이 없습니다!"
msgid "Loading..."
msgstr "로딩 중..."
msgid "No AMS"
-msgstr "No AMS"
+msgstr "AMS 없음"
msgid "Send to Multi-device"
msgstr "여러 장치로 보내기"
@@ -3365,19 +3366,19 @@ msgid "The number of printers in use simultaneously cannot be equal to 0."
msgstr "동시에 사용 중인 프린터의 수는 0과 같을 수 없습니다."
msgid "Use External Spool"
-msgstr "Use External Spool"
+msgstr "외부 스풀 사용"
msgid "Use AMS"
-msgstr "Use AMS"
+msgstr "AMS 사용"
msgid "Select Printers"
-msgstr "Select Printers"
+msgstr "프린터 선택"
msgid "Ams Status"
-msgstr "AMS Status"
+msgstr "AMS 상태"
msgid "Printing Options"
-msgstr "Printing Options"
+msgstr "인쇄 옵션"
msgid "Bed Leveling"
msgstr "베드 레벨링"
@@ -3386,10 +3387,10 @@ msgid "Timelapse"
msgstr "타임랩스"
msgid "Flow Dynamic Calibration"
-msgstr "흐름 동적 보정"
+msgstr "유량 동적 보정"
msgid "Send Options"
-msgstr "Send Options"
+msgstr "전송 옵션"
msgid "Send to"
msgstr ""
@@ -3876,7 +3877,7 @@ msgid "Edit Custom G-code (%1%)"
msgstr "사용자 지정 G코드 편집 (%1%)"
msgid "Built-in placeholders (Double click item to add to G-code)"
-msgstr "기본 제공 플레이스홀더(항목을 두 번 클릭하여 G코드에 추가)"
+msgstr "기본 제공 플레이스홀더 (항목을 두 번 클릭하여 G코드에 추가)"
msgid "Search gcode placeholders"
msgstr "G코드 자리 표시자 검색"
@@ -3968,10 +3969,10 @@ msgstr ""
msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
-msgstr ""
+msgstr "잘못된 입력 형식. 다음과 같은 벡터 형식의 치수를 입력하십시오: \"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "입력된 값이 범위를 벗어납니다"
msgid "Some extension in the input is invalid"
msgstr ""
@@ -4002,7 +4003,7 @@ msgid "Layer Time"
msgstr "레이어 시간"
msgid "Layer Time (log)"
-msgstr "레이어 시간(log)"
+msgstr "레이어 시간 (log)"
msgid "Height: "
msgstr "높이: "
@@ -4325,7 +4326,7 @@ msgid ""
"separate the conflicted objects farther (%s <-> %s)."
msgstr ""
"레이어 %d, z = %.2lf mm에서 G코드 경로 충돌이 발견되었습니다. 충돌하는 개체"
-"를 더 멀리 분리하세요(%s <-> %s)."
+"를 더 멀리 분리하세요 (%s <-> %s)."
msgid "An object is layed over the boundary of plate."
msgstr "개체가 플레이트 경계 위에 놓여 있습니다."
@@ -4808,17 +4809,17 @@ msgid "Export toolpaths as OBJ"
msgstr "툴 경로를 OBJ로 내보내기"
msgid "Open &Slicer"
-msgstr "Studio 열기 (&O)"
+msgstr "&Slicer 열기 (&O)"
msgid "Open Slicer"
-msgstr "Studio 열기"
+msgstr "Slicer 열기"
msgid "&Quit"
msgstr "종료 (&Q)"
#, c-format, boost-format
msgid "Quit %s"
-msgstr "종료 %s"
+msgstr "%s 종료"
msgid "&File"
msgstr "파일 (&F)"
@@ -4972,7 +4973,7 @@ msgid ""
"Do you want to stop this virtual camera?"
msgstr ""
"다른 가상 카메라가 실행 중입니다.\n"
-"Orca Slicer는 단일 가상 카메라만 지원합니다.\n"
+"Orca Slicer는 하나의 가상 카메라만 지원합니다.\n"
"이 가상 카메라를 중지하시겠습니까?"
#, c-format, boost-format
@@ -5070,7 +5071,7 @@ msgstr ""
"초기화에 실패했습니다(저장소를 사용할 수 없습니다. SD 카드를 삽입하세요.)!"
msgid "LAN Connection Failed (Failed to view sdcard)"
-msgstr "LAN 연결 실패(sdcard를 볼 수 없음)"
+msgstr "LAN 연결 실패 (sdcard를 볼 수 없음)"
msgid "Browsing file in SD card is not supported in LAN Only Mode."
msgstr "LAN 전용 모드에서는 SD 카드의 파일 탐색이 지원되지 않습니다."
@@ -5272,10 +5273,10 @@ msgid "Debug Info"
msgstr "디버그 정보"
msgid "No SD Card"
-msgstr "SD카드 없음"
+msgstr "SD 카드 없음"
msgid "SD Card Abnormal"
-msgstr "SD카드 이상"
+msgstr "SD 카드 이상"
msgid "Cancel print"
msgstr "출력 취소"
@@ -5336,7 +5337,7 @@ msgid "Sport"
msgstr "스포츠"
msgid "Ludicrous"
-msgstr "루더크러스"
+msgstr "루디크러스"
msgid "Can't start this without SD card."
msgstr "SD 카드가 없으면 시작할 수 없습니다."
@@ -5902,18 +5903,17 @@ msgid "Loading file: %s"
msgstr "파일 로드 중: %s"
msgid "The 3mf is not supported by OrcaSlicer, load geometry data only."
-msgstr "이 3mf는 OrcaSlicer에서 지원되지 않습니다. 형상 데이터만 로드합니다."
+msgstr "이 3mf는 OrcaSlicer에서 지원되지 않습니다. 형상 데이터만 불러옵니다."
msgid "Load 3mf"
-msgstr "3mf 로드"
+msgstr "3mf 불러오기"
#, c-format, boost-format
msgid ""
"The 3mf's version %s is newer than %s's version %s, Found following keys "
"unrecognized:"
msgstr ""
-"3mf의 버전 %s이(가) %s의 버전 %s보다 최신입니다. 인식할 수 없는 다음 키를 찾"
-"았습니다:"
+"3mf의 버전 %s이(가) %s의 버전 %s보다 높습니다. 다음 키를 인식할 수 없습니다:"
msgid "You'd better upgrade your software.\n"
msgstr "소프트웨어를 업그레이드하는 것이 좋습니다.\n"
@@ -6017,7 +6017,7 @@ msgid "Object too large"
msgstr "개체가 너무 큼"
msgid "Export STL file:"
-msgstr "STL파일 내보내기:"
+msgstr "STL 파일 내보내기:"
msgid "Export AMF file:"
msgstr "AMF 파일 내보내기:"
@@ -6160,9 +6160,7 @@ msgstr "다운로드에 실패했습니다. 파일 크기 예외입니다."
#, c-format, boost-format
msgid "Project downloaded %d%%"
-msgstr ""
-"프로젝트 다운로드 %d%%Bambu Studio로 가져오는 데 실패했습니다. 파일을 다운로"
-"드하여 수동으로 가져오세요."
+msgstr "프로젝트 %d%% 다운로드됨"
msgid ""
"Importing to Orca Slicer failed. Please download the file and manually "
@@ -6231,7 +6229,7 @@ msgstr ""
"습니까?"
msgid "Number of copies:"
-msgstr "복제 수:"
+msgstr "복제본 수:"
msgid "Copies of the selected object"
msgstr "선택한 개체의 복제본"
@@ -6436,7 +6434,7 @@ msgid ""
"This stops the transmission of data to Bambu's cloud services. Users who "
"don't use BBL machines or use LAN mode only can safely turn on this function."
msgstr ""
-"이 기능은 밤부의 클라우드 서비스로의 데이터 전송을 중지합니다. BBL 머신을 사"
+"이 기능은 뱀부의 클라우드 서비스로의 데이터 전송을 중지합니다. BBL 머신을 사"
"용하지 않거나 LAN 모드만 사용하는 사용자는 이 기능을 안전하게 켤 수 있습니다."
msgid "Enable network plugin"
@@ -6530,7 +6528,7 @@ msgid "Show \"Tip of the day\" notification after start"
msgstr "시작 후 \"오늘의 팁\" 알림 표시"
msgid "If enabled, useful hints are displayed at startup."
-msgstr "활성화된 경우 시작 시 유용한 힌트가 표시됩니다."
+msgstr "활성화하면 시작 시 유용한 힌트가 표시됩니다."
msgid "Flushing volumes: Auto-calculate everytime the color changed."
msgstr "플러시 볼륨: 색상이 변경될 때마다 자동 계산됩니다."
@@ -6552,17 +6550,17 @@ msgid ""
"If enabled, Orca will remember and switch filament/process configuration for "
"each printer automatically."
msgstr ""
-"활성화된 경우 Orca는 각 프린터의 필라멘트/프로세스 구성을 자동으로 기억하고 "
+"활성화하면 Orca는 각 프린터의 필라멘트/프로세스 구성을 자동으로 기억하고 "
"전환합니다."
msgid "Multi-device Management(Take effect after restarting Orca)."
-msgstr "다중 장치 관리(Studio를 다시 시작한 후 적용)."
+msgstr "다중 장치 관리 (Orca를 다시 시작한 후 적용됨)."
msgid ""
"With this option enabled, you can send a task to multiple devices at the "
"same time and manage multiple devices."
msgstr ""
-"이 옵션을 활성화하면 동시에 여러 장치에 작업을 보내고 여러 장치를 관리할 수 "
+"활성화하면 여러 장치에 동시에 작업을 보내고 여러 장치를 관리할 수 "
"있습니다."
msgid "Network"
@@ -6618,7 +6616,7 @@ msgid "Current association: "
msgstr "현재 연결:"
msgid "Associate prusaslicer://"
-msgstr "프루사슬라이서://"
+msgstr "prusaslicer:// 연결"
msgid "Not associated to any application"
msgstr "어떤 애플리케이션과도 연결되지 않음"
@@ -6627,27 +6625,27 @@ msgid ""
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
"from Printable.com"
msgstr ""
-"Orca가 Printable.com에서 모델을 열 수 있도록 OrcaSlicer를 prusaslicer:// 링크"
+"OrcaSlicer가 Printable.com에서 모델을 열 수 있도록 OrcaSlicer를 prusaslicer:// 링크"
"와 연결합니다."
msgid "Associate bambustudio://"
-msgstr "연결 bambustudio://"
+msgstr "bambustudio:// 연결"
msgid ""
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
"from makerworld.com"
msgstr ""
-"Orca가 makerworld.com에서 모델을 열 수 있도록 OrcaSlicer를 bambustudio:// 링"
-"크와 연결하세요."
+"OrcaSlicer가 makerworld.com에서 모델을 열 수 있도록 OrcaSlicer를 bambustudio:// 링"
+"크와 연결합니다."
msgid "Associate cura://"
-msgstr "연결 cura://"
+msgstr "cura:// 연결"
msgid ""
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
"thingiverse.com"
msgstr ""
-"Orca가 thingiverse.com에서 모델을 열 수 있도록 OrcaSlicer를 cura:// 링크와 연"
+"OOrcaSlicer가 thingiverse.com에서 모델을 열 수 있도록 OrcaSlicer를 cura:// 링크와 연"
"결합니다."
msgid "Maximum recent projects"
@@ -6886,7 +6884,7 @@ msgid "Jump to model publish web page"
msgstr "모델 게시 웹 페이지로 이동"
msgid "Note: The preparation may takes several minutes. Please be patiant."
-msgstr "참고: 준비하는 데 몇 분 정도 걸릴 수 있습니다. 조금만 기다려주십시오."
+msgstr "참고: 준비하는 데 몇 분 정도 걸릴 수 있습니다. 조금만 기다려 주십시오."
msgid "Publish"
msgstr "게시"
@@ -7023,9 +7021,6 @@ msgstr "전송 완료"
msgid "Error code"
msgstr "오류 코드"
-msgid "Printer local connection failed, please try again."
-msgstr "프린터 로컬 연결에 실패했습니다. 다시 시도하세요."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr "로그인 계정이 없으며 LAN 모드의 프린터만 표시됩니다"
@@ -7276,7 +7271,7 @@ msgid "Please confirm on the printer screen"
msgstr "프린터 화면에서 확인해주세요"
msgid "Log in failed. Please check the Pin Code."
-msgstr "로그인 실패. 핀코드를 확인해주세요."
+msgstr "로그인 실패. 핀 코드를 확인해주세요."
msgid "Log in printer"
msgstr "프린터 로그인"
@@ -7744,10 +7739,10 @@ msgstr "출력 가능 공간"
#. TRN: First argument is parameter name, the second one is the value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
-msgstr ""
+msgstr "%1% 매개변수에 잘못된 값이 입력됨: %2%"
msgid "G-code flavor is switched"
-msgstr ""
+msgstr "G코드 유형이 변경됨"
msgid "Cooling Fan"
msgstr "냉각 팬"
@@ -8017,7 +8012,7 @@ msgid "Capabilities"
msgstr "성능"
msgid "Show all presets (including incompatible)"
-msgstr "모든 사전 설정 표시(미 호환 포함)"
+msgstr "모든 사전 설정 표시(호환되지 않는 설정 포함)"
msgid "Select presets to compare"
msgstr "비교할 사전 설정 선택"
@@ -8122,6 +8117,60 @@ msgstr "사용 가능한 업데이트가 없습니다."
msgid "The configuration is up to date."
msgstr "구성이 최신 상태입니다."
+msgid "Obj file Import color"
+msgstr "Obj 파일 가져오기 색상"
+
+msgid "Specify number of colors:"
+msgstr "색상 수 지정:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "색상 개수는 [%d, %d] 범위 내에 있어야 합니다."
+
+msgid "Recommended "
+msgstr "추천"
+
+msgid "Current filament colors:"
+msgstr "현재 필라멘트 색상:"
+
+msgid "Quick set:"
+msgstr "빠른 설정:"
+
+msgid "Color match"
+msgstr "색상 일치"
+
+msgid "Approximate color matching."
+msgstr "대략적인 색상 일치."
+
+msgid "Append"
+msgstr "추가"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "기존 압출기 뒤에 소모성 압출기를 추가합니다."
+
+msgid "Reset mapped extruders."
+msgstr "매핑된 압출기를 재설정합니다."
+
+msgid "Cluster colors"
+msgstr "클러스터 색상"
+
+msgid "Map Filament"
+msgstr "지도 필라멘트"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"참고: 색상이 선택되었습니다. 확인을 선택할 수 있습니다.\n"
+" 계속하거나 수동으로 조정하려면"
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"경고: 새로 추가된 개수와\n"
+" 현재 압출기는 16개를 초과합니다."
+
msgid "Ramming customization"
msgstr "래밍 사용자 정의"
@@ -8149,7 +8198,7 @@ msgid "Total ramming time"
msgstr "총 래밍 시간"
msgid "s"
-msgstr "s"
+msgstr "초"
msgid "Total rammed volume"
msgstr "총 래밍 부피"
@@ -8208,7 +8257,8 @@ msgstr "으로"
msgid ""
"Windows Media Player is required for this task! Do you want to enable "
"'Windows Media Player' for your operation system?"
-msgstr ""
+msgstr "이 작업에는 Windows Media Player가 필요합니다! 운영 체제에서 Windows Media Player를 "
+"활성화하시겠습니까?"
msgid ""
"BambuSource has not correctly been registered for media playing! Press Yes "
@@ -8605,7 +8655,7 @@ msgid "Test"
msgstr "테스트"
msgid "IP and Access Code Verified! You may close the window"
-msgstr "IP 및 접속코드가 확인되었습니다. 창을 닫아도 됩니다"
+msgstr "IP 및 액세스 코드가 확인되었습니다. 창을 닫아도 됩니다"
msgid "Connection failed, please double check IP and Access Code"
msgstr "연결에 실패했습니다. IP와 액세스 코드를 다시 확인하세요"
@@ -9020,8 +9070,8 @@ msgid ""
"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, "
"RepRapFirmware and Repetier G-code flavors."
msgstr ""
-"프라임 타워는 현재 Marlin, RepRap/Sprinter에만 지원됩니다.RepRapFirmware 및 "
-"Repetier G코드 유형."
+"프라임 타워는 현재 Marlin, RepRap/Sprinter, RepRapFirmware 및 Repetier G코드 "
+"유형에서만 지원됩니다."
msgid "The prime tower is not supported in \"By object\" print."
msgstr "프라임 타워는 \"개체별\" 출력에서 지원되지 않습니다."
@@ -9203,7 +9253,7 @@ msgid ""
"Shrink the initial layer on build plate to compensate for elephant foot "
"effect"
msgstr ""
-"코끼리 발 효과를 보정하기 위해 빌드 플레이트의 초기 레이어를 축소합니다"
+"코끼리 발 효과를 보정하기 위해 빌드 플레이트에 닿는 첫 레이어를 축소합니다"
msgid "Elephant foot compensation layers"
msgstr "코끼리 발 보정 레이어"
@@ -9214,7 +9264,7 @@ msgid ""
"the next layers will be linearly shrunk less, up to the layer indicated by "
"this value."
msgstr ""
-"코끼리 발 보정이 활성화될 레이어 수입니다. 첫 번째 레이어는 코끼리 발 보정 값"
+"코끼리 발 보정을 적용할 레이어의 수입니다. 첫 번째 레이어는 코끼리 발 보정 값"
"만큼 축소되고, 다음 레이어부터 이 값으로 표시된 레이어까지 선형적으로 덜 축소"
"됩니다."
@@ -9324,7 +9374,7 @@ msgid "API key"
msgstr "API 키"
msgid "HTTP digest"
-msgstr "HTTP digest"
+msgstr "HTTP 다이제스트"
msgid "Avoid crossing wall"
msgstr "벽 가로지름 방지"
@@ -9343,10 +9393,10 @@ msgid ""
msgstr ""
"벽 가로지름 방지를 위한 최대 우회 거리. 우회 거리가 이 값보다 크면 우회하지 "
"않습니다. 우회 길이는 절대값 또는 직접 이동 경로의 백분율(예: 50%)로 지정할 "
-"수 있습니다. 0으로 비활성화"
+"수 있습니다. 값 0으로 비활성화할 수 있습니다"
msgid "mm or %"
-msgstr "mm or %"
+msgstr "mm 또는 %"
msgid "Other layers"
msgstr "다른 레이어"
@@ -9438,7 +9488,7 @@ msgid "Other layers filament sequence"
msgstr "다른 층 필라멘트 순서"
msgid "This G-code is inserted at every layer change before lifting z"
-msgstr "이 G코드는 Z올리기 전에 모든 레이어 변경에 삽입됩니다"
+msgstr "이 G코드는 Z좌표를 올리기 전 모든 레이어 변경에 삽입됩니다"
msgid "Bottom shell layers"
msgstr "하단 쉘 레이어"
@@ -9485,7 +9535,7 @@ msgstr ""
"옵션:\n"
"1. 어디에서나: 상단, 하단 및 내부 솔리드 표면에 간격 채우기를 적용합니다.\n"
"2. 상단 및 하단 표면: 상단 및 하단 표면에만 간격 채우기를 적용합니다.\n"
-"3. Nowhere: 간격 채우기를 비활성화합니다.\n"
+"3. 아무데도: 간격 채우기를 비활성화합니다.\n"
msgid "Everywhere"
msgstr "어디에나"
@@ -9540,7 +9590,7 @@ msgid ""
"calculated automatically. Otherwise the provided angle will be used for "
"external bridges. Use 180°for zero angle."
msgstr ""
-"브릿지출력 각도 재정의. 0°으로 두면 브릿지 출력 각도가 자동으로 계산됩니다. "
+"브릿지 출력 각도 재정의. 0°으로 두면 브릿지 출력 각도가 자동으로 계산됩니다. "
"그렇지 않으면 제공된 각도가 외부 브릿지 출력에 사용됩니다. 0도에는 180°를 사"
"용합니다."
@@ -9760,7 +9810,7 @@ msgstr ""
"하세요"
msgid "mm/s or %"
-msgstr "mm/s or %"
+msgstr "mm/s 또는 %"
msgid "External"
msgstr "외부"
@@ -10051,14 +10101,13 @@ msgid "End G-code when finish the whole printing"
msgstr "전체 출력이 끝날때의 종료 G코드"
msgid "Between Object Gcode"
-msgstr "개체와 G코드 사이"
+msgstr "개체 사이의 G코드"
msgid ""
"Insert Gcode between objects. This parameter will only come into effect when "
"you print your models object by object"
msgstr ""
-"개체 사이에 G코드를 삽입하세요. 이 매개변수는 다음 경우에만 적용됩니다.모델 "
-"개체를 개체별로 출력합니다"
+"개체 사이에 G코드를 삽입하세요. 이 매개변수는 개체별 출력을 사용할 때만 적용됩니다."
msgid "End G-code when finish the printing of this filament"
msgstr "이 필라멘트의 출력이 끝날때의 종료 G코드"
@@ -10260,8 +10309,8 @@ msgid ""
msgstr ""
"위에서 아래를 내려다볼 때 벽 루프가 돌출되는 방향입니다.\n"
"\n"
-"홀수 방향 반전이 활성화되지 않은 경우 기본적으로 모든 벽은 시계 반대 방향으"
-"로 돌출됩니다. 이것을 Auto 이외의 옵션으로 설정하면 Reverse on 홀수에 관계없"
+"홀수에 반전 설정이 활성화되지 않은 경우 기본적으로 모든 벽은 시계 반대 방향으"
+"로 출력됩니다. 이것을 Auto 이외의 옵션으로 설정하면 홀수에 반전 설정과 관계없"
"이 벽 방향이 강제됩니다.\n"
"\n"
"나선형 꽃병 모드가 활성화된 경우 이 옵션은 비활성화됩니다."
@@ -10316,7 +10365,7 @@ msgstr ""
"이 옵션은 허용되는 배드 메쉬 영역의 최소 지점을 설정합니다. 프로브의 XY 옵셋"
"으로 인해 대부분의 프린터는 전체 베드를 프로브할 수 없습니다. 프로브 포인트"
"가 베드 영역 밖으로 나가지 않도록 하려면 베드 메쉬의 최소 및 최대 지점을 적절"
-"하게 설정해야 합니다. OrcaSlicer는adaptive_bed_mesh_min/"
+"하게 설정해야 합니다. OrcaSlicer는 adaptive_bed_mesh_min/"
"adaptive_bed_mesh_max 값이 이러한 최소/최대 포인트를 초과하지 않도록 보장합니"
"다. 이 정보는 일반적으로 프린터 제조업체로부터 얻을 수 있습니다. 기본 설정은 "
"(-99999, -99999)입니다. 이는 제한이 없으므로 전체 베드에 걸쳐 프로빙이 가능함"
@@ -10338,7 +10387,7 @@ msgstr ""
"이 옵션은 허용되는 침대 메쉬 영역의 최대 지점을 설정합니다. 프로브의 XY 옵셋"
"으로 인해 대부분의 프린터는 전체 베드를 프로브할 수 없습니다. 프로브 포인트"
"가 베드 영역 밖으로 나가지 않도록 하려면 베드 메쉬의 최소 및 최대 지점을 적절"
-"하게 설정해야 합니다. OrcaSlicer는adaptive_bed_mesh_min/"
+"하게 설정해야 합니다. OrcaSlicer는 adaptive_bed_mesh_min/"
"adaptive_bed_mesh_max 값이 이러한 최소/최대 포인트를 초과하지 않도록 보장합니"
"다. 이 정보는 일반적으로 프린터 제조업체로부터 얻을 수 있습니다. 기본 설정은 "
"(99999, 99999)입니다. 이는 제한이 없으므로 전체 베드에 걸쳐 프로빙이 가능함"
@@ -10384,7 +10433,7 @@ msgid ""
"has slight overflow or underflow"
msgstr ""
"재료는 용융 상태와 결정 상태 사이를 전환한 후 부피 변화가 있을 수 있습니다. "
-"이 설정은 이 필라멘트 코드의 모든 압출 흐름을 비례적으로 변경합니다. 권장 값 "
+"이 설정은 이 필라멘트 코드의 모든 압출 유량을 비례적으로 변경합니다. 권장 값 "
"범위는 0.95와 1.05 사이입니다. 약간의 과대압출 또는 과소압출이 있을 때 이 값"
"을 조정하여 평평한 표면을 얻을 수 있습니다"
@@ -10417,6 +10466,30 @@ msgstr ""
"이 설정을 활성화하면 출력물 냉각 팬이 정지되지 않으며 팬을 최소 속도로 가동하"
"여 시동 및 정지 빈도를 줄입니다"
+msgid "Don't slow down outer walls"
+msgstr "외벽 감속하지 않기"
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+"활성화되면 최소 레이어 시간을 충족하기 위한 외벽의 출력 속도 감속을 적용하지 "
+"않습니다. 이 기능은 아래의 경우에 도움이 될 수 있습니다:\n"
+"\n"
+"1. 유광 필라멘트로 인쇄할 때 일정한 광택을 유지하기 위한 경우 \n"
+"2. 외벽 출력 속도의 변화로 인한 외벽의 Z밴딩처럼 보이는 형상이 생성되는 것을 "
+"방지하기 위한 경우 \n"
+"3. 외벽을 VFA를 발생시키는 속도로 출력하는 것을 방지하기 위한 경우\n"
+"\n"
+
msgid "Layer time"
msgstr "레이어 시간"
@@ -10466,19 +10539,19 @@ msgid "Filament load time"
msgstr "필라멘트 넣기 시간"
msgid "Time to load new filament when switch filament. For statistics only"
-msgstr "필라멘트 교체 시 새 필라멘트를 넣는 시간입니다. 통계 전용"
+msgstr "필라멘트 교체 시 새 필라멘트를 넣는 시간입니다. 통계에만 사용됩니다"
msgid "Filament unload time"
msgstr "필라멘트 빼기 시간"
msgid "Time to unload old filament when switch filament. For statistics only"
-msgstr "필라멘트를 교체할 때 기존 필라멘트를 빼는 시간입니다. 통계 전용"
+msgstr "필라멘트를 교체할 때 기존 필라멘트를 빼는 시간입니다. 통계에만 사용됩니다"
msgid ""
"Filament diameter is used to calculate extrusion in gcode, so it's important "
"and should be accurate"
msgstr ""
-"필라멘트 직경은 G코드에서 압출을 계산하는데 사용되므로 중요하며 정확해야 합니"
+"필라멘트 직경은 G코드에서 압출량을 계산하는데 사용되므로 중요하며 정확해야 합니"
"다"
msgid "Shrinkage"
@@ -10493,7 +10566,7 @@ msgid ""
"after the checks."
msgstr ""
"냉각 후 필라멘트가 얻게 될 수축률을 입력합니다(100mm 대신 94mm를 측정하는 경"
-"우 94% i). 출력물은 xy로 보정됩니다. 외벽에 사용되는 필라멘트만 고려됩니다.\n"
+"우 94%). 출력물은 xy 방향으로 보정됩니다. 외벽에 사용되는 필라멘트에만 적용됩니다.\n"
"이 보정은 확인 후 수행되므로 개체 사이에 충분한 공간을 허용해야 합니다."
msgid "Loading speed"
@@ -10840,7 +10913,7 @@ msgstr ""
"니다."
msgid "mm/s² or %"
-msgstr "mm/s² or %"
+msgstr "mm/s² 또는 %"
msgid ""
"Acceleration of sparse infill. If the value is expressed as a percentage (e."
@@ -10958,7 +11031,7 @@ msgstr ""
"\"close_fan_the_first_x_layers\" + 1 에서 최대 허용 속도로 가도됩니다."
msgid "layer"
-msgstr ""
+msgstr "레이어"
msgid "Support interface fan speed"
msgstr "지지대 접점 팬 속도"
@@ -11089,16 +11162,16 @@ msgstr ""
"수 있는지를 결정합니다"
msgid "Undefine"
-msgstr "알수없음"
+msgstr "알 수 없음"
msgid "Hardened steel"
-msgstr "경화강"
+msgstr "경화강 노즐"
msgid "Stainless steel"
msgstr "스테인레스강 노즐"
msgid "Brass"
-msgstr "동 노즐"
+msgstr "황동 노즐"
msgid "Nozzle HRC"
msgstr "노즐 록웰 경도"
@@ -11431,13 +11504,13 @@ msgid "This G-code will be used as a custom code"
msgstr "이 G코드는 사용자 정의 코드로 사용됩니다"
msgid "Small area flow compensation (beta)"
-msgstr "작은영역 유량 보상(베타)"
+msgstr "작은 영역 유량 보상 (베타)"
msgid "Enable flow compensation for small infill areas"
-msgstr "작은 채우기 영역에 대한 흐름 보상 활성화"
+msgstr "작은 채우기 영역에 대한 유량 보상 활성화"
msgid "Flow Compensation Model"
-msgstr "흐름 보상 모델"
+msgstr "유량 보상 모델"
msgid ""
"Flow Compensation Model, used to adjust the flow for small infill areas. The "
@@ -11445,8 +11518,8 @@ msgid ""
"and flow correction factors, one per line, in the following format: "
"\"1.234,5.678\""
msgstr ""
-"작은 채우기 영역의 흐름을 조정하는 데 사용되는 흐름 보상 모델. 모델은 "
-"\"1.234,5.678\" 형식으로 한 줄에 하나씩 압출 길이 및 흐름 수정 계수에 대한 쉼"
+"작은 채우기 영역의 유량을 조정하는 데 사용되는 유량 보상 모델. 모델은 "
+"\"1.234,5.678\" 형식으로 한 줄에 하나씩 압출 길이 및 유량 수정 계수에 대한 쉼"
"표로 구분된 값 쌍으로 표현됩니다."
msgid "Maximum speed X"
@@ -12224,7 +12297,7 @@ msgstr ""
"습니다."
msgid "Scarf joint flow ratio"
-msgstr "스카프 조인트 흐름 비율"
+msgstr "스카프 조인트 유량 비율"
msgid "This factor affects the amount of material for scarf joints."
msgstr "이 요소는 스카프 조인트의 재료 양에 영향을 미칩니다."
@@ -13290,7 +13363,7 @@ msgstr ""
"기"
msgid "Format of G-code thumbnails"
-msgstr "G코드 미리보기 포맷"
+msgstr "G코드 미리보기 형식"
msgid ""
"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, "
@@ -13605,7 +13678,7 @@ msgid "Number of toolchanges during the print."
msgstr "출력 중 도구 교환 횟수."
msgid "Total volume"
-msgstr "총량"
+msgstr "총 부피"
msgid "Total volume of filament used during the entire print."
msgstr "전체 프린트 중에 사용된 필라멘트의 총량입니다."
@@ -14094,31 +14167,15 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"우리 위키에서 동적 유량 교정에 대한 자세한 내용을 찾아보세요.\n"
-"\n"
-"일반적으로 교정은 필요하지 않습니다. 출력 시작 메뉴에서 \"동적 유량 교정\" 옵"
-"션을 선택한 상태에서 단일 색상/재료 출력을 시작하면 프린터는 이전 방식을 따르"
-"며 출력 전에 필라멘트를 교정합니다. 다중 색상/재료 출력을 시작하면 프린터는 "
-"모든 필라멘트 전환 중에 필라멘트에 대한 기본 보상 매개변수를 사용하므로 대부"
-"분의 경우 좋은 결과를 얻을 수 있습니다.\n"
-"\n"
-"교정 결과를 신뢰할 수 없게 만드는 몇 가지 경우가 있습니다. 텍스처 플레이트를 "
-"사용하여 보정을 수행합니다. 빌드 플레이트의 접착력이 좋지 않습니다. (빌드 플"
-"레이트를 세척하거나 풀을 바르십시오!) ...위키에서 자세한 내용을 확인할 수 있"
-"습니다.\n"
-"\n"
-"테스트에서 교정 결과에는 약 10%의 오차가 있으며, 이로 인해 각 교정에서 결과"
-"가 정확히 동일하지 않을 수 있습니다. 새로운 업데이트로 개선하기 위해 근본 원"
-"인을 계속 조사하고 있습니다."
msgid "When to use Flow Rate Calibration"
msgstr "유량 교정을 사용해야 하는 경우"
@@ -14240,24 +14297,15 @@ msgstr "이름은 40자를 초과할 수 없습니다."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
-"동일한 이름을 가진 결과 중 하나만 저장됩니다. 다른 결과에 덮어쓰겠습니까?"
-
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"동일한 이름을 가진 교정 기록 결과가 이미 있습니다: %s. 동일한 이름의 결과 중 "
-"하나만 저장됩니다. 과거 결과에 덮어쓰겠습니까?"
+"단 하나의 결과만을 같은 이름으로 저장할 수 있습니다. 다른 결과들을 덮어쓸까요?"
msgid "Please find the best line on your plate"
msgstr "당신의 플레이트에서 가장 좋은 선을 찾아보세요"
-msgid "Please find the cornor with perfect degree of extrusion"
-msgstr "완벽한 압출각도를 가진 모서리를 찾아주세요"
+msgid "Please find the corner with perfect degree of extrusion"
+msgstr "사출 품질이 제일 좋은 모서리를 찾아보세요"
msgid "Input Value"
msgstr "입력값"
@@ -14414,7 +14462,7 @@ msgid "Edit Flow Dynamics Calibration"
msgstr "동적 유량 교정 편집"
msgid "New Flow Dynamic Calibration"
-msgstr "새로운 흐름 동적 교정"
+msgstr "새로운 유량 동적 교정"
msgid "Ok"
msgstr "확인"
@@ -14423,7 +14471,7 @@ msgid "The filament must be selected."
msgstr "필라멘트를 선택해야 합니다."
msgid "Network lookup"
-msgstr "네트워크 조회"
+msgstr "네트워크 검색"
msgid "Address"
msgstr "주소"
@@ -14510,6 +14558,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr "PCTG"
+
msgid "TPU"
msgstr "TPU"
@@ -14606,6 +14657,9 @@ msgstr "필요한 경우 슬래시( / )를 디렉토리 구분 기호로 사용
msgid "Upload to storage"
msgstr "저장소에 업로드"
+msgid "Switch to Device tab after upload."
+msgstr "업로드 후 기기 탭으로 전환"
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "업로드 파일 이름이 \"%s\"로 끝나지 않습니다. 계속하시겠습니까?"
@@ -14885,13 +14939,13 @@ msgid "Hot Bed STL"
msgstr "베드 STL"
msgid "Load stl"
-msgstr "STL 로드"
+msgstr "STL 불러오기"
msgid "Hot Bed SVG"
msgstr "베드 SVG"
msgid "Load svg"
-msgstr "SVG 로드"
+msgstr "SVG 불러오기"
msgid "Max Print Height"
msgstr "최대 출력 높이"
@@ -15043,8 +15097,8 @@ msgid ""
msgstr ""
"\n"
"\n"
-"Studio에서는 사용자 사전 설정 동기화 기능이 활성화되어 있지 않아 장치 페이지"
-"에서 필라멘트 설정이 실패할 수 있음을 감지했습니다.\n"
+"Orca에서는 사용자 사전 설정 동기화 기능이 활성화되어 있지 않아 장치 페이지에"
+"서 필라멘트 설정이 실패할 수 있음을 감지했습니다.\n"
"동기화 기능을 활성화하려면 \"사용자 사전 설정 동기화\"를 클릭하세요."
msgid "Printer Setting"
@@ -15104,7 +15158,7 @@ msgid ""
"User's fillment preset set. \n"
"Can be shared with others."
msgstr ""
-"사용자 채우기 사전 설정입니다.\n"
+"사용자의 필라멘트 사전 설정입니다.\n"
"다른 사람과 공유할 수 있습니다."
msgid ""
@@ -15271,6 +15325,12 @@ msgstr "정말 로그아웃하시겠습니까?"
msgid "Refresh Printers"
msgstr "프린터 새로 고침"
+msgid "View print host webui in Device tab"
+msgstr "기기 탭에서 출력 호스트의 웹UI 표시"
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr "뱀부랩의 기기 탭을 출력 호스트의 웹UI로 교체"
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -15345,7 +15405,8 @@ msgid ""
"Note: FlashAir with firmware 2.00.02 or newer and activated upload function "
"is required."
msgstr ""
-"참고: 펌웨어 2.00.02 이상이 있고 업로드 기능이 활성화된 FlashAir필수입니다."
+"참고: 펌웨어 2.00.02 또는 이후 버전을 사용중이며 업로드 기능이 활성화된 "
+"FlashAir가 필요합니다."
msgid "Connection to MKS works correctly."
msgstr "MKS에 대한 연결이 올바르게 작동합니다."
@@ -15684,20 +15745,16 @@ msgstr "SimplyPrint에 성공적으로 연결되었습니다!"
msgid "Could not connect to SimplyPrint"
msgstr "SimplyPrint에 연결할 수 없습니다"
-msgid "SimplyPrint account not linked. Go to Connect options to set it up."
-msgstr ""
-"SimplyPrint 계정이 연결되지 않았습니다. 연결 옵션으로 이동하여 설정합니다."
-
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
-msgstr ""
-"파일 크기가 업로드 제한인 100MB를 초과했습니다. 패널을 통해 파일을 업로드하세"
-"요."
+msgid "Internal error"
+msgstr "내부 오류"
msgid "Unknown error"
msgstr "알 수 없는 오류"
+msgid "SimplyPrint account not linked. Go to Connect options to set it up."
+msgstr ""
+"SimplyPrint 계정이 연결되지 않았습니다. 연결 옵션으로 이동하여 설정합니다."
+
msgid "Connection to Flashforge works correctly."
msgstr "플래시포지 연결이 정상적으로 작동합니다."
@@ -15724,8 +15781,7 @@ msgid ""
"consistency?"
msgstr ""
"정밀한 벽\n"
-"정확한 벽을 켜면 정밀도와 레이어 일관성이 향상될 수 있다는 사실을 알고 계셨습"
-"니까?"
+"정밀한 벽을 켜면 정밀도와 레이어 일관성이 향상될 수 있다는 사실을 알고 계셨나요?"
#: resources/data/hints.ini: [hint:Sandwich mode]
msgid ""
@@ -15736,7 +15792,7 @@ msgid ""
msgstr ""
"샌드위치 모드\n"
"모델에 가파른 돌출부가 없는 경우 샌드위치 모드(내부-외부-내부)를 사용하여 정"
-"밀도와 레이어 일관성을 향상시킬 수 있다는 것을 알고 계셨습니까?"
+"밀도와 레이어 일관성을 향상시킬 수 있다는 것을 알고 계셨나요?"
#: resources/data/hints.ini: [hint:Chamber temperature]
msgid ""
@@ -15744,7 +15800,7 @@ msgid ""
"Did you know that OrcaSlicer supports chamber temperature?"
msgstr ""
"챔버 온도\n"
-"OrcaSlicer가 챔버 온도를 지원한다는 사실을 알고 계셨나요?"
+"OrcaSlicer가 챔버 온도 설정을 지원한다는 사실을 알고 계셨나요?"
#: resources/data/hints.ini: [hint:Calibration]
msgid ""
@@ -15770,7 +15826,7 @@ msgid ""
"Did you know that OrcaSlicer can support Air filtration/Exhaust Fan?"
msgstr ""
"공기 여과/배기 팬\n"
-"오르카 슬라이서가 공기 여과/배기 팬을 지원할 수 있다는 사실을 알고 계셨나요?"
+"오르카 슬라이서가 공기 여과/배기 팬을 지원한다는 사실을 알고 계셨나요?"
#: resources/data/hints.ini: [hint:G-code window]
msgid ""
@@ -15797,7 +15853,7 @@ msgid ""
"3D scene operations."
msgstr ""
"키보드 단축키를 사용하는 방법\n"
-"Orca Slicer가 다양한 키보드 단축키와 3D 장면 작업을 제공합니다."
+"Orca Slicer는 다양한 키보드 단축키와 3D 장면 작업을 제공합니다."
#: resources/data/hints.ini: [hint:Reverse on odd]
msgid ""
@@ -15806,8 +15862,8 @@ msgid ""
"the surface quality of your overhangs?"
msgstr ""
"홀수에 반전\n"
-"홀수면 반전 기능이 오버행의 표면 품질을 크게 향상시킬 수 있다는 사실"
-"을 알고 계셨습니까?"
+"홀수에 반전 기능이 오버행의 표면 품질을 크게 향상시킬 수 있다는 사실"
+"을 알고 계셨나요?"
#: resources/data/hints.ini: [hint:Cut Tool]
msgid ""
@@ -15816,7 +15872,7 @@ msgid ""
"cutting tool?"
msgstr ""
"절단 도구\n"
-"커팅 툴로 원하는 각도와 위치에서 모델을 커팅할 수 있다는 사실을 알고 계셨나"
+"절단 도구로 원하는 각도와 위치에서 모델을 자를 수 있다는 사실을 알고 계셨나"
"요?"
#: resources/data/hints.ini: [hint:Fix Model]
@@ -15827,7 +15883,7 @@ msgid ""
msgstr ""
"모델 수정\n"
"Windows 시스템에서 많은 슬라이싱 문제를 피하기 위해 손상된 3D 모델을 수정할 "
-"수 있다는 것을 알고 계셨습니까?"
+"수 있다는 것을 알고 계섰나요?"
#: resources/data/hints.ini: [hint:Timelapse]
msgid ""
@@ -15835,7 +15891,7 @@ msgid ""
"Did you know that you can generate a timelapse video during each print?"
msgstr ""
"타임랩스\n"
-"각 출력 중에 타임랩스 비디오를 생성할 수 있다는 것을 알고 계셨습니까?"
+"각 출력 중에 타임랩스 비디오를 생성할 수 있다는 것을 알고 계섰나요?"
#: resources/data/hints.ini: [hint:Auto-Arrange]
msgid ""
@@ -15843,7 +15899,7 @@ msgid ""
"Did you know that you can auto-arrange all objects in your project?"
msgstr ""
"자동 정렬\n"
-"프로젝트의 모든 개체를 자동 정렬할 수 있다는 것을 알고 계셨습니까?"
+"프로젝트의 모든 개체를 자동 정렬할 수 있다는 것을 알고 계섰나요?"
#: resources/data/hints.ini: [hint:Auto-Orient]
msgid ""
@@ -15853,7 +15909,7 @@ msgid ""
msgstr ""
"자동 방향 지정\n"
"간단한 클릭만으로 개체를 최적의 출력 방향으로 회전할 수 있다는 것을 알고 계셨"
-"습니까?"
+"나요?"
#: resources/data/hints.ini: [hint:Lay on Face]
msgid ""
@@ -15864,7 +15920,7 @@ msgid ""
msgstr ""
"면에 위치\n"
"모델의 바닥 표면을 빠르게 지정하여 출력 베드에 놓을 수 있다는 것을 알고 계셨"
-"습니까? 면에 배치 기능을 선택하십시오. 또는F 키를 누르세요."
+"나요? 면에 배치 기능을 선택하십시오. 또는F 키를 누르세요."
#: resources/data/hints.ini: [hint:Object List]
msgid ""
@@ -15874,7 +15930,7 @@ msgid ""
msgstr ""
"개체 목록\n"
"목록의 모든 개체/부품을 보고 각 개체/부품에 대한 설정을 변경할 수 있다는 것"
-"을 알고 있습니까?"
+"을 알고 계섰나요?"
#: resources/data/hints.ini: [hint:Search Functionality]
msgid ""
@@ -15883,8 +15939,8 @@ msgid ""
"Slicer setting?"
msgstr ""
"검색 기능\n"
-"특정 Orca Slicer 설정을 빠르게 찾기 위해 검색 도구를 사용한다는 사실을 알고 "
-"계셨습니까?"
+"검색 도구를 사용하여 원하는 Orca Slicer 설정을 빠르게 찾을 수 있다는 사실을 알고 "
+"계섰나요?"
#: resources/data/hints.ini: [hint:Simplify Model]
msgid ""
@@ -15894,7 +15950,7 @@ msgid ""
msgstr ""
"모델 단순화\n"
"메쉬 단순화 기능을 사용하여 메쉬의 삼각형 수를 줄일 수 있다는 것을 알고 계셨"
-"습니까? 모델을 마우스 오른쪽 버튼으로 클릭하고 모델 단순화를 선택합니다."
+"나요? 모델을 마우스 오른쪽 버튼으로 클릭하고 모델 단순화를 선택하세요."
#: resources/data/hints.ini: [hint:Slicing Parameter Table]
msgid ""
@@ -15904,7 +15960,7 @@ msgid ""
msgstr ""
"슬라이싱 매개변수 테이블\n"
"테이블의 모든 개체/부품을 보고 각 개체/부품에 대한 설정을 변경할 수 있다는 것"
-"을 알고 있습니까?"
+"을 알고 계섰나요?"
#: resources/data/hints.ini: [hint:Split to Objects/Parts]
msgid ""
@@ -15914,7 +15970,7 @@ msgid ""
msgstr ""
"개체/부품으로 분할\n"
"쉽게 색칠하거나 출력하기 위해 큰 개체를 작은 개체로 나눌 수 있다는 것을 알고 "
-"있습니까?"
+"계섰나요?"
#: resources/data/hints.ini: [hint:Subtract a Part]
msgid ""
@@ -15925,7 +15981,7 @@ msgid ""
msgstr ""
"부품 빼기\n"
"네거티브 부분 수정자를 사용하여 하나의 메시를 다른 메시에서 뺄 수 있다는 것"
-"을 알고 계셨습니까? 예를 들어, 이렇게 하면 Orca Slicer에서 직접 쉽게 크기 조"
+"을 알고 계섰나요? 예를 들어, 이렇게 하면 Orca Slicer에서 직접 쉽게 크기 조"
"정이 가능한 구멍을 만들 수 있습니다."
#: resources/data/hints.ini: [hint:STEP]
@@ -15938,9 +15994,9 @@ msgid ""
msgstr ""
"STEP\n"
"STL 대신 STEP 파일을 슬라이싱하여 출력 품질을 향상시킬 수 있다는 사실을 알고 "
-"있습니까?\n"
-"Orca Slicer는 STEP 파일 슬라이싱을 지원하여 저해상도 STL보다 부드러운 결과를 "
-"제공합니다. 시도해 보세요!"
+"계섰나요?\n"
+"Orca Slicer는 STEP 파일 슬라이싱을 지원하며, 저해상도 STL을 사용할 때 보다 더 "
+"부드러운 결과를 얻을 수 있습니다. 시도해 보세요!"
#: resources/data/hints.ini: [hint:Z seam location]
msgid ""
@@ -15951,7 +16007,7 @@ msgid ""
msgstr ""
"Z 솔기 위치\n"
"Z 솔기의 위치를 사용자 정의하고 출력물에 칠하여 잘 보이지 않는 위치에 배치할 "
-"수 있다는 사실을 알고 있습니까? 이렇게 하면 모델의 전반적인 모양이 향상됩니"
+"수 있다는 사실을 알고 계섰나요? 이렇게 하면 모델의 전반적인 모양이 향상됩니"
"다. 확인해 보세요!"
#: resources/data/hints.ini: [hint:Fine-tuning for flow rate]
@@ -15962,8 +16018,8 @@ msgid ""
"printed model by doing some fine-tuning."
msgstr ""
"유량 미세 조정\n"
-"더 보기 좋은 출력물을 위해 유량을 미세 조정할 수 있다는 사실을 알고 있습니"
-"까? 재료에 따라 약간의 미세 조정을 통해 출력된 모델의 전체적인 마감을 개선할 "
+"더 보기 좋은 출력물을 위해 유량을 미세 조정할 수 있다는 사실을 알고 계셨나요? "
+"재료에 따라 약간의 미세 조정을 통해 출력된 모델의 전체적인 마감을 개선할 "
"수 있습니다."
#: resources/data/hints.ini: [hint:Split your prints into plates]
@@ -15975,7 +16031,7 @@ msgid ""
msgstr ""
"출력을 플레이트로 분할\n"
"부품이 많은 모델을 출력할 준비가 된 개별 플레이트로 분할할 수 있다는 사실을 "
-"알고 있습니까? 이렇게 하면 모든 부품을 추적하는 프로세스가 간소화됩니다."
+"알고 계섰나요? 이렇게 하면 모든 부품을 추적하는 프로세스가 간소화됩니다."
#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer
#: Height]
@@ -15986,7 +16042,7 @@ msgid ""
msgstr ""
"적응형 레이어 높이로 출력 속도를 높이세요\n"
"적응형 레이어를 사용하면 모델을 더욱 빠르게 프린트할 수 있다는 사실을 알고 계"
-"셨습니까?레이어 높이 옵션을 확인해 보세요!"
+"셨나요? 레이어 높이 옵션을 확인해 보세요!"
#: resources/data/hints.ini: [hint:Support painting]
msgid ""
@@ -15996,7 +16052,7 @@ msgid ""
"model that actually need it."
msgstr ""
"지지대 칠하기\n"
-"지지대의 위치를 칠할 수 있다는 것을 알고 있습니까? 이 기능을 사용하면 실제로 "
+"지지대의 위치를 칠할 수 있다는 것을 알고 계섰나요? 이 기능을 사용하면 실제로 "
"필요한 모델 부위에만 지지대 재료를 쉽게 배치할 수 있습니다."
#: resources/data/hints.ini: [hint:Different types of supports]
@@ -16007,7 +16063,7 @@ msgid ""
"print speed. Check them out!"
msgstr ""
"다양한 유형의 지지대\n"
-"여러 유형의 지지대 중에서 선택할 수 있다는 것을 알고 있습니까? 나무 지지대는 "
+"여러 유형의 지지대 중에서 선택할 수 있다는 것을 알고 계섰나요? 나무 지지대는 "
"필라멘트를 절약하고 출력 속도를 향상시키면서 유기 모델에 적합합니다. 확인해 "
"보세요!"
@@ -16019,7 +16075,7 @@ msgid ""
"the best results."
msgstr ""
"실크 필라멘트 출력\n"
-"실크 필라멘트를 성공적으로 프린팅하려면 특별한 주의가 필요하다는 사실을 알고 "
+"실크 필라멘트를 성공적으로 출력하려면 특별한 주의가 필요하다는 사실을 알고 "
"계셨나요? 최상의 결과를 얻으려면 항상 더 높은 온도와 더 낮은 속도를 권장합니"
"다."
@@ -16031,7 +16087,7 @@ msgid ""
msgstr ""
"접착력이 더 좋아지는 브림\n"
"모델을 출력할 때 베드 표면과의 접촉면이 작을 경우 브림을 사용하는 것이 권장된"
-"다는 사실을 알고 계셨습니까?"
+"다는 사실을 알고 계섰나요?"
#: resources/data/hints.ini: [hint:Set parameters for multiple objects]
msgid ""
@@ -16041,7 +16097,7 @@ msgid ""
msgstr ""
"여러 개체에 대한 매개변수 설정\n"
"선택한 모든 개체에 대한 슬라이싱 매개변수를 한 번에 설정할 수 있다는 사실을 "
-"알고 있습니까?"
+"알고 계섰나요?"
#: resources/data/hints.ini: [hint:Stack objects]
msgid ""
@@ -16049,7 +16105,7 @@ msgid ""
"Did you know that you can stack objects as a whole one?"
msgstr ""
"개체 쌓기\n"
-"물건을 통째로 쌓을 수 있다는 사실을 알고 있습니까?"
+"물건을 통째로 쌓을 수 있다는 사실을 알고 계섰나요?"
#: resources/data/hints.ini: [hint:Flush into support/objects/infill]
msgid ""
@@ -16057,9 +16113,9 @@ msgid ""
"Did you know that you can save the wasted filament by flushing them into "
"support/objects/infill during filament change?"
msgstr ""
-"지지대/개체/채우기에 버리기\n"
-"필라멘트를 교체하는 동안 낭비되는 필라멘트를 지지대/개체/채우기에 버리기하여 "
-"절약할 수 있다는 사실을 알고 있습니까?"
+"지지대/개체/채우기에 내보내기\n"
+"필라멘트를 교체하는 동안 낭비되는 필라멘트를 지지대/개체/채우기 출력에 활용할 "
+"수 있다는 사실을 알고 계섰나요?"
#: resources/data/hints.ini: [hint:Improve strength]
msgid ""
@@ -16068,8 +16124,8 @@ msgid ""
"density to improve the strength of the model?"
msgstr ""
"강도 향상\n"
-"모델의 강도를 개선하기 위해 더 많은 벽 루프와 더 높은 드문 채우기 밀도를 사용"
-"할 수 있다는 것을 알고 있습니까?"
+"더 많은 외벽과 더 높은 드문 채우기 밀도를 사용하여 모델의 강도를 높일 수 "
+"있다는 사실을 알고 계섰나요?"
#: resources/data/hints.ini: [hint:When need to print with the printer door
#: opened]
@@ -16081,7 +16137,7 @@ msgid ""
msgstr ""
"프린터 도어를 연 상태로 출력해야 하는 경우\n"
"더 높은 프린터 내부 온도로 낮은 온도의 필라멘트를 출력할 때 프린터 도어를 열"
-"면 압출기/핫엔드가 막힐 가능성을 줄일 수 있다는 것을 알고 계셨습니까? 이에 대"
+"면 압출기/핫엔드가 막힐 가능성을 줄일 수 있다는 것을 알고 계섰나요? 이에 대"
"한 자세한 내용은 Wiki에서 확인하세요."
#: resources/data/hints.ini: [hint:Avoid warping]
@@ -16092,8 +16148,89 @@ msgid ""
"probability of warping."
msgstr ""
"뒤틀림 방지\n"
-"ABS 등 뒤틀림이 발생하기 쉬운 소재를 출력할 때, 히트베드 온도를 적절하게 높이"
-"면 뒤틀림 가능성을 줄일 수 있다는 사실을 알고 계셨나요?"
+"ABS와 같이 뒤틀림이 발생하기 쉬운 소재를 출력할 때, 히트베드 온도를 적절하게 "
+"높이면 뒤틀림 가능성을 줄일 수 있다는 사실을 알고 계셨나요?"
+
+#~ msgid ""
+#~ "File size exceeds the 100MB upload limit. Please upload your file through "
+#~ "the panel."
+#~ msgstr ""
+#~ "파일 크기가 업로드 제한인 100MB를 초과했습니다. 패널을 통해 파일을 업로드"
+#~ "하세요."
+
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "유효한 값을 입력하세요(K는 0~0.3)"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr "유효한 값을 입력하세요(K는 0~0.3, N은 0.6~2.0)"
+
+#~ msgid "Select connected printetrs (0/6)"
+#~ msgstr "연결된 프린터 선택(0/6)"
+
+#, c-format, boost-format
+#~ msgid "Select Connected Printetrs (%d/6)"
+#~ msgstr "연결된 프린터 (%d/6)를 선택합니다"
+
+#~ msgid "PrintingPause"
+#~ msgstr "인쇄 일시 중지"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr "프린터 로컬 연결에 실패했습니다. 다시 시도하세요."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "우리 위키에서 동적 유량 교정에 대한 자세한 내용을 찾아보세요.\n"
+#~ "\n"
+#~ "일반적으로 교정은 필요하지 않습니다. 출력 시작 메뉴에서 \"동적 유량 교정"
+#~ "\" 옵션을 선택한 상태에서 단일 색상/재료 출력을 시작하면 프린터는 이전 방"
+#~ "식을 따르며 출력 전에 필라멘트를 교정합니다. 다중 색상/재료 출력을 시작하"
+#~ "면 프린터는 모든 필라멘트 전환 중에 필라멘트에 대한 기본 보상 매개변수를 "
+#~ "사용하므로 대부분의 경우 좋은 결과를 얻을 수 있습니다.\n"
+#~ "\n"
+#~ "교정 결과를 신뢰할 수 없게 만드는 몇 가지 경우가 있습니다. 텍스처 플레이트"
+#~ "를 사용하여 보정을 수행합니다. 빌드 플레이트의 접착력이 좋지 않습니다. (빌"
+#~ "드 플레이트를 세척하거나 풀을 바르십시오!) ...위키에서 자세한 내용을 확인"
+#~ "할 수 있습니다.\n"
+#~ "\n"
+#~ "테스트에서 교정 결과에는 약 10%의 오차가 있으며, 이로 인해 각 교정에서 결"
+#~ "과가 정확히 동일하지 않을 수 있습니다. 새로운 업데이트로 개선하기 위해 근"
+#~ "본 원인을 계속 조사하고 있습니다."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr ""
+#~ "동일한 이름을 가진 결과 중 하나만 저장됩니다. 다른 결과에 덮어쓰겠습니까?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "동일한 이름을 가진 교정 기록 결과가 이미 있습니다: %s. 동일한 이름의 결과 "
+#~ "중 하나만 저장됩니다. 과거 결과에 덮어쓰겠습니까?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "완벽한 압출각도를 가진 모서리를 찾아주세요"
#~ msgid "X"
#~ msgstr "X"
diff --git a/localization/i18n/list.txt b/localization/i18n/list.txt
index f917dbe47c..833b06ff7c 100644
--- a/localization/i18n/list.txt
+++ b/localization/i18n/list.txt
@@ -110,6 +110,7 @@ src/slic3r/GUI/UnsavedChangesDialog.cpp
src/slic3r/GUI/Auxiliary.cpp
src/slic3r/GUI/UpdateDialogs.cpp
src/slic3r/GUI/UnsavedChangesDialog.cpp
+src/slic3r/GUI/ObjColorDialog.cpp
src/slic3r/GUI/WipeTowerDialog.cpp
src/slic3r/GUI/wxExtensions.cpp
src/slic3r/GUI/wxMediaCtrl2.cpp
diff --git a/localization/i18n/nl/OrcaSlicer_nl.po b/localization/i18n/nl/OrcaSlicer_nl.po
index 4d62311b70..03fd5710fc 100644
--- a/localization/i18n/nl/OrcaSlicer_nl.po
+++ b/localization/i18n/nl/OrcaSlicer_nl.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"Language: nl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -2834,11 +2834,13 @@ msgstr "Are you sure you want to clear the filament information?"
msgid "You need to select the material type and color first."
msgstr "You need to select the material type and color first."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Voer een geldige waarde in (K in 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr ""
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "Voer een geldige waarde in (K in 0~0,3, N in 0,6~2,0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr ""
msgid "Other Color"
msgstr "Other Color"
@@ -3264,11 +3266,11 @@ msgstr "Task Sent"
msgid "Edit multiple printers"
msgstr ""
-msgid "Select connected printetrs (0/6)"
+msgid "Select connected printers (0/6)"
msgstr ""
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
+msgid "Select Connected Printers (%d/6)"
msgstr ""
#, c-format, boost-format
@@ -3330,7 +3332,7 @@ msgstr ""
msgid "Printing Failed"
msgstr ""
-msgid "PrintingPause"
+msgid "Printing Pause"
msgstr ""
msgid "Prepare"
@@ -4026,9 +4028,10 @@ msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
msgstr ""
+"Ongeldige invoer. Verwachte waarde moet in het volgende format: \"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "Ingevoerde waarde valt buiten het bereik"
msgid "Some extension in the input is invalid"
msgstr ""
@@ -7119,9 +7122,6 @@ msgstr "Versturen gelukt"
msgid "Error code"
msgstr "Error code"
-msgid "Printer local connection failed, please try again."
-msgstr "Printer local connection failed; please try again."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr "Geen login-account, alleen printers in LAN-modus worden weergegeven"
@@ -8265,6 +8265,60 @@ msgstr "Geen updates beschikbaar."
msgid "The configuration is up to date."
msgstr "De configuratie is up to date."
+msgid "Obj file Import color"
+msgstr "Obj file Import color"
+
+msgid "Specify number of colors:"
+msgstr "Specify number of colors:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "The color count should be in range [%d, %d]."
+
+msgid "Recommended "
+msgstr "Recommended "
+
+msgid "Current filament colors:"
+msgstr "Current filament colors:"
+
+msgid "Quick set:"
+msgstr "Quick set:"
+
+msgid "Color match"
+msgstr "Color match"
+
+msgid "Approximate color matching."
+msgstr "Approximate color matching."
+
+msgid "Append"
+msgstr "Append"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "Add consumable extruder after existing extruders."
+
+msgid "Reset mapped extruders."
+msgstr "Reset mapped extruders."
+
+msgid "Cluster colors"
+msgstr "Cluster colors"
+
+msgid "Map Filament"
+msgstr "Map Filament"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"Warning: The count of newly added and \n"
+" current extruders exceeds 16."
+
msgid "Ramming customization"
msgstr "Ramming aanpassen"
@@ -10466,6 +10520,22 @@ msgstr ""
"staan op een minimale snelheid om het aantal start en stop momenten te "
"beperken"
+msgid "Don't slow down outer walls"
+msgstr ""
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+
msgid "Layer time"
msgstr "Laag tijd"
@@ -13983,34 +14053,15 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"De details van Flow Dynamics Calibration vindt u op onze wiki.\n"
-"\n"
-"Meestal is kalibratie niet nodig. Als je een print met één kleur/materiaal "
-"start en de optie \"kalibratie van de stroomdynamica\" is aangevinkt in het "
-"startmenu van de printer, dan zal de printer de oude manier volgen en het "
-"filament kalibreren voor het printen; als je een print met meerdere kleuren/"
-"materialen start, dan zal de printer de standaard compensatieparameter voor "
-"het filament gebruiken tijdens elke filamentwissel, wat in de meeste "
-"gevallen een goed resultaat zal opleveren.\n"
-"\n"
-"Let op: er zijn een paar gevallen waardoor het kalibratieresultaat niet "
-"betrouwbaar is: als je een textuurplaat gebruikt om de kalibratie uit te "
-"voeren; als de bouwplaat geen goede hechting heeft (was de bouwplaat of "
-"breng lijm aan!) ...Je kunt meer informatie vinden op onze wiki.\n"
-"\n"
-"De kalibratieresultaten hebben ongeveer 10 procent jitter in onze test, "
-"waardoor het resultaat niet bij elke kalibratie precies hetzelfde is. We "
-"onderzoeken nog steeds de oorzaak om verbeteringen aan te brengen met nieuwe "
-"updates."
msgid "When to use Flow Rate Calibration"
msgstr "Wanneer moet u Flow Rate kalibratie gebruiken"
@@ -14141,25 +14192,15 @@ msgstr "De naam mag niet langer zijn dan 40 tekens."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
"Slechts één van de resultaten met dezelfde naam wordt opgeslagen. Weet je "
-"zeker dat je de andere resultaten wilt vervangen?"
-
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Er is al een eerder kalibratieresultaat met dezelfde naam: %s. Slechts één "
-"van de resultaten met dezelfde naam wordt opgeslagen. Weet je zeker dat je "
-"het vorige resultaat wilt vervangen?"
+"zeker dat je de andere resultaten wilt overschrijven?"
msgid "Please find the best line on your plate"
msgstr "Zoek de beste regel op je bord"
-msgid "Please find the cornor with perfect degree of extrusion"
+msgid "Please find the corner with perfect degree of extrusion"
msgstr "Zoek de hoek met de perfecte extrusiegraad"
msgid "Input Value"
@@ -14414,6 +14455,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU"
@@ -14499,6 +14543,9 @@ msgstr ""
msgid "Upload to storage"
msgstr ""
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "De bestandsnaam van de upload eindigt niet op \"%s\". Wilt u doorgaan?"
@@ -15121,7 +15168,7 @@ msgstr "Dagelijkse tips"
#, c-format, boost-format
msgid "nozzle memorized: %.1f %s"
-msgstr ""
+msgstr "mondstuk onthouden: %.1f %s"
msgid ""
"Your nozzle diameter in preset is not consistent with memorized nozzle "
@@ -15165,6 +15212,12 @@ msgstr ""
msgid "Refresh Printers"
msgstr "Printers vernieuwen"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -15594,17 +15647,15 @@ msgstr ""
msgid "Could not connect to SimplyPrint"
msgstr ""
-msgid "SimplyPrint account not linked. Go to Connect options to set it up."
-msgstr ""
-
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
+msgid "Internal error"
msgstr ""
msgid "Unknown error"
msgstr ""
+msgid "SimplyPrint account not linked. Go to Connect options to set it up."
+msgstr ""
+
msgid "Connection to Flashforge works correctly."
msgstr ""
@@ -15966,6 +16017,76 @@ msgstr ""
"kromtrekken, zoals ABS, een juiste verhoging van de temperatuur van het "
"warmtebed de kans op kromtrekken kan verkleinen?"
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "Voer een geldige waarde in (K in 0~0.3)"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr "Voer een geldige waarde in (K in 0~0,3, N in 0,6~2,0)"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr "Printer local connection failed; please try again."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "De details van Flow Dynamics Calibration vindt u op onze wiki.\n"
+#~ "\n"
+#~ "Meestal is kalibratie niet nodig. Als je een print met één kleur/"
+#~ "materiaal start en de optie \"kalibratie van de stroomdynamica\" is "
+#~ "aangevinkt in het startmenu van de printer, dan zal de printer de oude "
+#~ "manier volgen en het filament kalibreren voor het printen; als je een "
+#~ "print met meerdere kleuren/materialen start, dan zal de printer de "
+#~ "standaard compensatieparameter voor het filament gebruiken tijdens elke "
+#~ "filamentwissel, wat in de meeste gevallen een goed resultaat zal "
+#~ "opleveren.\n"
+#~ "\n"
+#~ "Let op: er zijn een paar gevallen waardoor het kalibratieresultaat niet "
+#~ "betrouwbaar is: als je een textuurplaat gebruikt om de kalibratie uit te "
+#~ "voeren; als de bouwplaat geen goede hechting heeft (was de bouwplaat of "
+#~ "breng lijm aan!) ...Je kunt meer informatie vinden op onze wiki.\n"
+#~ "\n"
+#~ "De kalibratieresultaten hebben ongeveer 10 procent jitter in onze test, "
+#~ "waardoor het resultaat niet bij elke kalibratie precies hetzelfde is. We "
+#~ "onderzoeken nog steeds de oorzaak om verbeteringen aan te brengen met "
+#~ "nieuwe updates."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr ""
+#~ "Slechts één van de resultaten met dezelfde naam wordt opgeslagen. Weet je "
+#~ "zeker dat je de andere resultaten wilt vervangen?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "Er is al een eerder kalibratieresultaat met dezelfde naam: %s. Slechts "
+#~ "één van de resultaten met dezelfde naam wordt opgeslagen. Weet je zeker "
+#~ "dat je het vorige resultaat wilt vervangen?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "Zoek de hoek met de perfecte extrusiegraad"
+
#~ msgid "V"
#~ msgstr "V"
diff --git a/localization/i18n/pl/OrcaSlicer_pl.po b/localization/i18n/pl/OrcaSlicer_pl.po
index 9ec8cbe41a..a2ea07e5b7 100644
--- a/localization/i18n/pl/OrcaSlicer_pl.po
+++ b/localization/i18n/pl/OrcaSlicer_pl.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: OrcaSlicer 2.1\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: \n"
"Last-Translator: Krzysztof Morga \n"
"Language-Team: \n"
@@ -1772,10 +1772,10 @@ msgid "Set as individual objects"
msgstr "Ustaw jako osobne obiekty"
msgid "Fill bed with copies"
-msgstr "Wypełnij stół kopiami modelu"
+msgstr "Wypełnij stół kopią modelu"
msgid "Fill the remaining area of bed with copies of the selected object"
-msgstr "Uzupełnij pozostałą powierzchnię stołu kopiami wybranego obiektu"
+msgstr "Uzupełnij pozostałą powierzchnię stołu kopią wybranego obiektu"
msgid "Printable"
msgstr "Do druku"
@@ -2504,8 +2504,8 @@ msgid ""
"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically "
"load or unload filaments."
msgstr ""
-"Wybierz gniazdo AMS, a następnie naciśnij przycisk \"Ładuj\" lub "
-"\"Wyładuj\" ,aby automatycznie załadować lub wyładować filamenty."
+"Wybierz gniazdo AMS, a następnie naciśnij przycisk \"Ładuj\" lub \"Wyładuj"
+"\" ,aby automatycznie załadować lub wyładować filamenty."
msgid "Edit"
msgstr "Edytuj"
@@ -2870,13 +2870,14 @@ msgstr "Czy na pewno chcesz usunąć informacje o filamentach?"
msgid "You need to select the material type and color first."
msgstr "Najpierw musisz wybrać typ i kolor filamentu."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Proszę podać prawidłową wartość (K w zakresie od 0 do 0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr "Proszę podać prawidłową wartość (K w zakresie %.1f~%.1f)"
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
msgstr ""
-"Proszę podać prawidłową wartość (K w zakresie od 0 do 0.3, N w zakresie od "
-"0.6 do 2.0)"
+"Proszę podać prawidłową wartość (K w zakresie %.1f~%.1f, N in %.1f~%.1f)"
msgid "Other Color"
msgstr "Inny kolor"
@@ -3309,11 +3310,11 @@ msgstr "Wysłane do druku"
msgid "Edit multiple printers"
msgstr "Edycja drukarek"
-msgid "Select connected printetrs (0/6)"
+msgid "Select connected printers (0/6)"
msgstr "Wybierz podłączone drukarki (0/6)"
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
+msgid "Select Connected Printers (%d/6)"
msgstr "Wybierz Podłączone Drukarki (%d/6)"
#, c-format, boost-format
@@ -3376,8 +3377,8 @@ msgstr "Drukowanie zakończone"
msgid "Printing Failed"
msgstr "Drukowanie nie powiodło się"
-msgid "PrintingPause"
-msgstr "Drukowanie zatrzymane"
+msgid "Printing Pause"
+msgstr "Drukowanie wstrzymane"
msgid "Prepare"
msgstr "Przygotowanie"
@@ -4874,7 +4875,7 @@ msgid "Flow rate"
msgstr "Natężenie przepływu"
msgid "Pressure advance"
-msgstr "Kalibracja PA"
+msgstr "Wzrost ciśnienia (PA)"
msgid "Retraction test"
msgstr "Test Retrakcji"
@@ -7210,10 +7211,6 @@ msgstr "wysłanie zakończone"
msgid "Error code"
msgstr "Kod błędu"
-msgid "Printer local connection failed, please try again."
-msgstr ""
-"Nie udało się nawiązać lokalnego połączenia z drukarką, spróbuj ponownie."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr "Bez logowania na koncie, wyświetlane są tylko drukarki w trybie LAN"
@@ -7705,8 +7702,8 @@ msgstr ""
msgid ""
"When recording timelapse without toolhead, it is recommended to add a "
"\"Timelapse Wipe Tower\" \n"
-"by right-click the empty position of build plate and choose \"Add "
-"Primitive\"->\"Timelapse Wipe Tower\"."
+"by right-click the empty position of build plate and choose \"Add Primitive"
+"\"->\"Timelapse Wipe Tower\"."
msgstr ""
"Podczas nagrywania timelapse'a bez głowicy drukującej zaleca się dodanie "
"\"Timelaps - Wieża Czyszcząca\" \n"
@@ -8362,6 +8359,60 @@ msgstr "Brak dostępnych aktualizacji."
msgid "The configuration is up to date."
msgstr "Konfiguracja jest aktualna."
+msgid "Obj file Import color"
+msgstr "Importuj kolory z pliku .OBJ"
+
+msgid "Specify number of colors:"
+msgstr "Podaj liczbę kolorów:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "Liczba kolorów powinna mieścić się w zakresie [%d, %d]."
+
+msgid "Recommended "
+msgstr "Zalecane "
+
+msgid "Current filament colors:"
+msgstr "Aktualne kolory filamentów:"
+
+msgid "Quick set:"
+msgstr "Szybkie ustawienie:"
+
+msgid "Color match"
+msgstr "Dopasowanie koloru"
+
+msgid "Approximate color matching."
+msgstr "Przybliżone dopasowanie kolorów."
+
+msgid "Append"
+msgstr "Dołącz"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "Dodaj ekstruder do użycia po już istniejących ekstruderach"
+
+msgid "Reset mapped extruders."
+msgstr "Zresetuj przypisane ekstrudery."
+
+msgid "Cluster colors"
+msgstr "Klasteryzacja kolorów"
+
+msgid "Map Filament"
+msgstr "Przypisz filament"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"Uwaga: Kolor został wybrany. Możesz kliknąć OK \n"
+"aby kontynuować, lub dostosować go ręcznie."
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"Ostrzeżenie: Suma nowo dodanych i \n"
+" obecnych ekstruderów przekracza 16."
+
msgid "Ramming customization"
msgstr "Dostosowanie wyciskania"
@@ -8466,8 +8517,8 @@ msgid ""
"install BambuStutio or seek after-sales help."
msgstr ""
"Brakujący komponent BambuSource zarejestrowany do odtwarzania mediów! Proszę "
-"ponownie zainstalować OrcaSlicer lub skonsultować się z pomocą "
-"posprzedażową."
+"ponownie zainstalować OrcaSlicer lub skonsultować się z pomocą po-"
+"sprzedażową."
msgid ""
"Using a BambuSource from a different install, video play may not work "
@@ -9646,10 +9697,10 @@ msgid ""
msgstr ""
"Unikaj ruchów nad obrysami-\n"
"Maksymalna długość objazdu przy unikaniu przejeżdżania nad obrysami. Jeśli "
-"objazd miałby wykroczyć poza tę wartość, funkcja \"unikaj ruchów nad "
-"obrysami\" zostanie zignorowana dla tej ścieżki. Długość objazdu można "
-"zdefiniować jako wartość absolutna lub obliczona procentowo (np. 50%) z "
-"długości ruchu bezpośredniego."
+"objazd miałby wykroczyć poza tę wartość, funkcja \"unikaj ruchów nad obrysami"
+"\" zostanie zignorowana dla tej ścieżki. Długość objazdu można zdefiniować "
+"jako wartość absolutna lub obliczona procentowo (np. 50%) z długości ruchu "
+"bezpośredniego."
msgid "mm or %"
msgstr "mm lub %"
@@ -10771,19 +10822,19 @@ msgstr ""
"powierzchnię, gdy występuje lekkie przelewanie lub niedomiar"
msgid "Enable pressure advance"
-msgstr "Włącz przyspieszenie ciśnienia"
+msgstr "Włącz wzrost ciśnienia (PA)"
msgid ""
"Enable pressure advance, auto calibration result will be overwriten once "
"enabled."
msgstr ""
-"Włącz przyspieszenie ciśnienia, wynik automatycznej kalibracji zostanie "
+"Włącz wzrost ciśnienia (PA), wynik automatycznej kalibracji zostanie "
"nadpisany po włączeniu."
msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)"
msgstr ""
-"Przyspieszenie ciśnienia (Klipper), znane również jako współczynnik "
-"przyspieszenia liniowego (Marlin)."
+"Pressure advance (Klipper), znane również jako współczynnik przyspieszenia "
+"liniowego (Marlin)."
msgid ""
"Default line width if other line widths are set to 0. If expressed as a %, "
@@ -10803,6 +10854,31 @@ msgstr ""
"zatrzymany i będzie pracował przynajmniej z minimalną prędkością, aby "
"zmniejszyć częstotliwość włączania i wyłączania"
+msgid "Don't slow down outer walls"
+msgstr "Nie spowalniaj zewnętrznych ścian"
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+"Jeśli ta opcja jest włączona, zapewni to, że zewnętrzne obwody nie będą "
+"spowalniane, aby spełnić minimalny czas warstwy. Jest to szczególnie pomocne "
+"w poniższych sytuacjach:\n"
+"\n"
+"1. Aby uniknąć zmian połysku podczas drukowania filamentami z połuskiem.\n"
+"2. Aby uniknąć zmian prędkości zewnętrznych ścian, które mogą powodować "
+"drobne artefakty ścian, przypominające zygzaki.\n"
+"3. Aby uniknąć drukowania z prędkościami, które powodują powstawanie "
+"drobnych artefaktów (VFA) na zewnętrznych ścianach.\n"
+
msgid "Layer time"
msgstr "Czas warstwy"
@@ -11370,10 +11446,10 @@ msgstr "Pełna prędkość wentylatora na warstwie"
msgid ""
"Fan speed will be ramped up linearly from zero at layer "
-"\"close_fan_the_first_x_layers\" to maximum at layer "
-"\"full_fan_speed_layer\". \"full_fan_speed_layer\" will be ignored if lower "
-"than \"close_fan_the_first_x_layers\", in which case the fan will be running "
-"at maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
+"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer"
+"\". \"full_fan_speed_layer\" will be ignored if lower than "
+"\"close_fan_the_first_x_layers\", in which case the fan will be running at "
+"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
msgstr ""
"Prędkość wentylatora będzie stopniowo zwiększana liniowo od zera na warstwie "
"\"close_fan_the_first_x_layers\" do maksymalnej na warstwie "
@@ -13076,10 +13152,10 @@ msgid ""
"triangle mesh slicing. The gap closing operation may reduce the final print "
"resolution, therefore it is advisable to keep the value reasonably low."
msgstr ""
-"Szpary mniejsze niż dwukrotność wartości parametru \"promień zamykania "
-"szpar\" zostaną zamknięte przy cięciu. Operacja zamykania szpar może "
-"zmniejszyć finalną rozdzielczość wydruku, więc zalecane jest ustawienie tej "
-"wartości na rozsądnie niskim poziomie."
+"Szpary mniejsze niż dwukrotność wartości parametru \"promień zamykania szpar"
+"\" zostaną zamknięte przy cięciu. Operacja zamykania szpar może zmniejszyć "
+"finalną rozdzielczość wydruku, więc zalecane jest ustawienie tej wartości na "
+"rozsądnie niskim poziomie."
msgid "Slicing Mode"
msgstr "Tryb cięcia"
@@ -14705,10 +14781,10 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
@@ -14867,25 +14943,15 @@ msgstr "Nazwa nie może przekraczać 40 znaków."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
"Tylko jeden z wyników o tej samej nazwie zostanie zapisany. Czy na pewno "
"chcesz zastąpić inne wyniki?"
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Istnieje już historia wyników kalibracji o tej samej nazwie: %s. Tylko jeden "
-"z wyników o tej samej nazwie zostanie zapisany. Czy na pewno chcesz zastąpić "
-"ten wynik?"
-
msgid "Please find the best line on your plate"
msgstr "Znajdź najlepszą linię na swojej płycie"
-msgid "Please find the cornor with perfect degree of extrusion"
+msgid "Please find the corner with perfect degree of extrusion"
msgstr "Znajdź róg z idealnym stopniem ekstruzji"
msgid "Input Value"
@@ -15142,6 +15208,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU"
@@ -15240,6 +15309,9 @@ msgstr ""
msgid "Upload to storage"
msgstr "Prześlij do pamięci"
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr ""
@@ -15469,8 +15541,8 @@ msgstr ""
"Czy chcesz go zastąpić?"
msgid ""
-"We would rename the presets as \"Vendor Type Serial @printer you "
-"selected\". \n"
+"We would rename the presets as \"Vendor Type Serial @printer you selected"
+"\". \n"
"To add preset for more printers, Please go to printer selection"
msgstr ""
"Nazwa profilu zostanie zmieniona na \"Dostawca Typ Seria @nazwa drukarki, "
@@ -15929,6 +16001,12 @@ msgstr "Czy na pewno chcesz się wylogować?"
msgid "Refresh Printers"
msgstr "Odśwież drukarki"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -16375,21 +16453,17 @@ msgstr "Pomyślnie połączono z SimplyPrint!"
msgid "Could not connect to SimplyPrint"
msgstr "Nie można połączyć się z SimplyPrint"
+msgid "Internal error"
+msgstr ""
+
+msgid "Unknown error"
+msgstr "Nieznany błąd"
+
msgid "SimplyPrint account not linked. Go to Connect options to set it up."
msgstr ""
"Nie połączono z kontem SimplyPrint. Przejdź do opcji Połącz, aby go "
"skonfigurować."
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
-msgstr ""
-"Rozmiar pliku przekracza limit przesyłania 100 MB. Proszę przesłać plik za "
-"pomocą panelu."
-
-msgid "Unknown error"
-msgstr "Nieznany błąd"
-
msgid "Connection to Flashforge works correctly."
msgstr "Połączenie z Flashforge działa poprawnie."
@@ -16796,6 +16870,107 @@ msgstr ""
"takimi jak ABS, odpowiednie zwiększenie temperatury podgrzewanej płyty może "
"zmniejszyć prawdopodobieństwo odkształceń."
+#~ msgid ""
+#~ "File size exceeds the 100MB upload limit. Please upload your file through "
+#~ "the panel."
+#~ msgstr ""
+#~ "Rozmiar pliku przekracza limit przesyłania 100 MB. Proszę przesłać plik "
+#~ "za pomocą panelu."
+
+#~ msgid "Enable adaptive pressure advance (beta)"
+#~ msgstr "Włącz adaptacyjny wzrost ciśnienia (beta)"
+
+#~ msgid ""
+#~ "With increasing print speeds, it has been observed that the effective PA "
+#~ "value typically decreases. This means that a single PA value is not 100% "
+#~ "optimal for all features and a compromise value is usually used, that "
+#~ "does not cause too much bulging on slower features while also not causing "
+#~ "gaps on faster features.\n"
+#~ "\n"
+#~ "This feature aims to address this limitation by modeling the response of "
+#~ "your printer's extrusion system depending on the speed it is printing at. "
+#~ "Internally it generates a fitted model that can extrapolate the needed "
+#~ "pressure advance for any given print speed, which is then emmited to the "
+#~ "printer depending on the current print speed.\n"
+#~ "\n"
+#~ "When enabled the pressure advance value above is overriden. However, a "
+#~ "reasonable default value above isstrongly recomended to act as a fallback "
+#~ "in case the model calculations fail."
+#~ msgstr ""
+#~ "Wraz ze wzrostem prędkości druku zaobserwowano, że efektywna wartość PA "
+#~ "zazwyczaj maleje. Oznacza to, że pojedyncza wartość PA nie jest w 100% "
+#~ "optymalna dla wszystkich elementów i zwykle stosowana jest wartość "
+#~ "kompromisowa, która nie powoduje zbyt dużego \"wypuklenia\" na elementach "
+#~ "drukowanych wolniej, a jednocześnie nie powoduje przerw na elementach "
+#~ "drukowanych szybciej.\n"
+#~ "\n"
+#~ "Ta funkcja ma na celu rozwiązanie tego ograniczenia poprzez modelowanie "
+#~ "reakcji ekstrudera w zależności od prędkości drukowania. Wewnętrznie "
+#~ "generuje dopasowany model, który może przewidzieć jakie będzie wymagane "
+#~ "ciśnienie dla dowolnej prędkości drukowania, który jest następnie "
+#~ "przekazywany do drukarki w zależności od bieżącej prędkości druku.\n"
+#~ "\n"
+#~ "Po włączeniu powyższa wartość PA jest nadpisywana. Zdecydowanie zaleca "
+#~ "się jednak przyjęcie rozsądnej wartości domyślnej, która będzie działać "
+#~ "jako rozwiązanie awaryjne w przypadku nieprawidłowych obliczeń dla modelu."
+
+#~ msgid "Adaptive pressure advance measurements (beta)"
+#~ msgstr "Adaptacyjny pomiar ciśnienia (beta)"
+
+#~ msgid ""
+#~ "Add pairs of pressure advance values and the speed they were measured at, "
+#~ "separated by a coma. One set of values per line. For example\n"
+#~ "0.03,100\n"
+#~ "0.027,150 etc.\n"
+#~ "\n"
+#~ "How to calibrate:\n"
+#~ "1. Run the pressure advance test for at least 3 speeds per filament. It "
+#~ "is recommended that the test is runfor at least the speed of the external "
+#~ "perimeters, the speed of the internal perimeters and the fastest feature "
+#~ "print speed in your profile (usually its the sparse or solid infill\n"
+#~ "2. Take note of the optimal Pressure advance value for each speed. The PA "
+#~ "ideal PA value should be decreasing the faster the speed is. If it is "
+#~ "not, confirm that your extruder is functioning correctly3. Enter the "
+#~ "pairs of PA values and Speeds in the text box here and save your filament "
+#~ "profile"
+#~ msgstr ""
+#~ "Dodaj pary wartości przyspieszenia ciśnienia i prędkości, przy których "
+#~ "zostały zmierzone, oddzielone przecinkiem. Jeden zestaw wartości na "
+#~ "wiersz. Na przykład\n"
+#~ "0.03,100\n"
+#~ "0.027,150 itd.\n"
+#~ "\n"
+#~ "Jak skalibrować:\n"
+#~ "1. Przeprowadź test PA dla co najmniej 3 prędkości na filament. Zaleca "
+#~ "się przeprowadzenie testu PA co najmniej dla zewnętrznych obwodów, "
+#~ "wewnętrznych obwodów i najszybszej prędkości drukowania cechy w profilu "
+#~ "(zwykle jest to rzadkie lub pełne wypełnienie).\n"
+#~ "2. Zanotuj optymalną wartość PA dla każdej prędkości. Idealna wartość PA "
+#~ "powinna maleć wraz ze wzrostem prędkości. Jeśli tak nie jest, sprawdź, "
+#~ "czy ekstruder działa prawidłowo. \n"
+#~ "3.Wprowadź pary wartości PA i prędkości w polu tekstowym i zapisz profil "
+#~ "filamentu."
+
+#~ msgid "Flow ratio and Pressure Advance"
+#~ msgstr "Współczynnik przepływu i Wzrost ciśnienia (PA)"
+
+#~ msgid "param_information"
+#~ msgstr "param_information"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr ""
+#~ "Nie udało się nawiązać lokalnego połączenia z drukarką, spróbuj ponownie."
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "Istnieje już historia wyników kalibracji o tej samej nazwie: %s. Tylko "
+#~ "jeden z wyników o tej samej nazwie zostanie zapisany. Czy na pewno chcesz "
+#~ "zastąpić ten wynik?"
+
#~ msgid "X"
#~ msgstr "X"
@@ -17742,9 +17917,6 @@ msgstr ""
#~ msgid "Balanced"
#~ msgstr "Zrównoważone"
-#~ msgid "Quick"
-#~ msgstr "Szybkie"
-
#~ msgid "Movement:"
#~ msgstr "Ruch:"
@@ -17944,8 +18116,8 @@ msgstr ""
#~ "Elevation is too low for object. Use the \"Pad around object\" feature to "
#~ "print the object without elevation."
#~ msgstr ""
-#~ "Podniesienie zbyt małe dla modelu. Użyj funkcji \"Podkładka wokół "
-#~ "modelu\", aby wydrukować model bez podniesienia."
+#~ "Podniesienie zbyt małe dla modelu. Użyj funkcji \"Podkładka wokół modelu"
+#~ "\", aby wydrukować model bez podniesienia."
#~ msgid ""
#~ "The endings of the support pillars will be deployed on the gap between "
diff --git a/localization/i18n/pt_BR/OrcaSlicer_pt_BR.po b/localization/i18n/pt_BR/OrcaSlicer_pt_BR.po
index 9f2fd208d5..03dc12d167 100644
--- a/localization/i18n/pt_BR/OrcaSlicer_pt_BR.po
+++ b/localization/i18n/pt_BR/OrcaSlicer_pt_BR.po
@@ -1,7 +1,8 @@
+#
msgid ""
msgstr ""
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: 2024-06-01 21:51-0300\n"
"Last-Translator: \n"
"Language-Team: Portuguese, Brazilian\n"
@@ -10,11 +11,11 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Crowdin-Project: orcaslicer-pt-br\n"
-"X-Crowdin-Project-ID: 664934\n"
-"X-Crowdin-Language: pt-BR\n"
"X-Crowdin-File: OrcaSlicer.pot\n"
"X-Crowdin-File-ID: 10\n"
+"X-Crowdin-Language: pt-BR\n"
+"X-Crowdin-Project: orcaslicer-pt-br\n"
+"X-Crowdin-Project-ID: 664934\n"
"X-Generator: Poedit 3.4.4\n"
msgid "Supports Painting"
@@ -2870,11 +2871,13 @@ msgstr "Tem certeza de que deseja limpar as informações do filamento?"
msgid "You need to select the material type and color first."
msgstr "Você precisa selecionar o tipo e a cor do material primeiro."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Por favor, insira um valor válido (K entre 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr ""
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "Por favor, insira um valor válido (K entre 0~0.3, N entre 0.6~2.0))"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr ""
msgid "Other Color"
msgstr "Outra Cor"
@@ -3302,12 +3305,12 @@ msgstr "Tarefa Enviada"
msgid "Edit multiple printers"
msgstr "Editar múltiplas impressoras"
-msgid "Select connected printetrs (0/6)"
-msgstr "Selecione as impressoras conectadas (0/6)"
+msgid "Select connected printers (0/6)"
+msgstr ""
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
-msgstr "Selecionar as impressoras conectadas (%d/6)"
+msgid "Select Connected Printers (%d/6)"
+msgstr ""
#, c-format, boost-format
msgid "The maximum number of printers that can be selected is %d"
@@ -3370,8 +3373,8 @@ msgstr "Impressão finalizada"
msgid "Printing Failed"
msgstr "Falha na Impressão"
-msgid "PrintingPause"
-msgstr "Pausa na Impressão"
+msgid "Printing Pause"
+msgstr ""
msgid "Prepare"
msgstr "Preparar"
@@ -4075,9 +4078,11 @@ msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
msgstr ""
+"Formato de entrada inválido. Vetor de dimensões esperado no seguinte "
+"formato: \"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "Valor de entrada está fora do limite"
msgid "Some extension in the input is invalid"
msgstr ""
@@ -7193,9 +7198,6 @@ msgstr "enviado completo"
msgid "Error code"
msgstr "Código de erro"
-msgid "Printer local connection failed, please try again."
-msgstr "Falha na conexão local da impressora, por favor, tente novamente."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr "Sem conta de login, apenas as impressoras em modo LAN são exibidas"
@@ -8353,6 +8355,56 @@ msgstr "Nenhuma atualização disponível."
msgid "The configuration is up to date."
msgstr "A configuração está atualizada."
+msgid "Obj file Import color"
+msgstr ""
+
+msgid "Specify number of colors:"
+msgstr ""
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr ""
+
+msgid "Recommended "
+msgstr ""
+
+msgid "Current filament colors:"
+msgstr ""
+
+msgid "Quick set:"
+msgstr ""
+
+msgid "Color match"
+msgstr ""
+
+msgid "Approximate color matching."
+msgstr ""
+
+msgid "Append"
+msgstr ""
+
+msgid "Add consumable extruder after existing extruders."
+msgstr ""
+
+msgid "Reset mapped extruders."
+msgstr ""
+
+msgid "Cluster colors"
+msgstr ""
+
+msgid "Map Filament"
+msgstr ""
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+
msgid "Ramming customization"
msgstr "Customização de moldeamento"
@@ -10766,6 +10818,22 @@ msgstr ""
"será desligado e funcionará pelo menos na velocidade mínima para reduzir a "
"frequência de início e parada"
+msgid "Don't slow down outer walls"
+msgstr ""
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+
msgid "Layer time"
msgstr "Tempo da camada"
@@ -14668,34 +14736,15 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"Encontre os detalhes da Calibração de Dinâmica de Fluxo na nossa wiki.\n"
-"\n"
-"Normalmente, a calibração não é necessária. Quando você inicia uma impressão "
-"de cor/material única, com a opção \"calibração de dinâmica de fluxo\" "
-"ativada no menu de início da impressão, a impressora seguirá o método "
-"antigo, calibrando o filamento antes da impressão; Quando você inicia uma "
-"impressão de cor/material múltipla, a impressora usará o parâmetro de "
-"compensação padrão para o filamento durante cada troca de filamento, o que "
-"resultará em um bom resultado na maioria dos casos.\n"
-"\n"
-"Por favor, note que existem alguns casos que podem tornar o resultado da "
-"calibração não confiável: usar uma mesa texturizada para fazer a calibração; "
-"a mesa não tem boa adesão (por favor, lave a mesa ou aplique cola!) ... Você "
-"pode encontrar mais informações em nossa wiki.\n"
-"\n"
-"Os resultados da calibração têm cerca de 10 por cento de oscilação em nossos "
-"testes, o que pode fazer com que o resultado não seja exatamente o mesmo em "
-"cada calibração. Ainda estamos investigando a causa raiz para fazer "
-"melhorias com novas atualizações."
msgid "When to use Flow Rate Calibration"
msgstr "Quando usar a Calibração de Fluxo"
@@ -14828,26 +14877,14 @@ msgstr "O nome não pode ter mais de 40 caracteres."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
-"Apenas um dos resultados com o mesmo nome será salvo. Você tem certeza de "
-"que deseja substituir os outros resultados?"
-
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Já existe um resultado de calibração histórico com o mesmo nome: %s. Apenas "
-"um dos resultados com o mesmo nome é salvo. Você tem certeza de que deseja "
-"substituir o resultado histórico?"
msgid "Please find the best line on your plate"
msgstr "Por favor, encontre a melhor linha em sua mesa"
-msgid "Please find the cornor with perfect degree of extrusion"
-msgstr "Por favor, encontre o canto com o grau perfeito de extrusão"
+msgid "Please find the corner with perfect degree of extrusion"
+msgstr ""
msgid "Input Value"
msgstr "Valor de entrada"
@@ -15102,6 +15139,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU"
@@ -15199,6 +15239,9 @@ msgstr ""
msgid "Upload to storage"
msgstr "Enviar para armazenamento"
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "O nome do arquivo enviado não termina com \"%s\". Deseja continuar?"
@@ -15891,6 +15934,12 @@ msgstr "Tem certeza de que deseja sair?"
msgid "Refresh Printers"
msgstr "Atualizar Impressoras"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -16333,21 +16382,17 @@ msgstr "Conectado ao SimplyPrint com sucesso!"
msgid "Could not connect to SimplyPrint"
msgstr "Não é possível conectar a SimplyPrint"
+msgid "Internal error"
+msgstr ""
+
+msgid "Unknown error"
+msgstr "Erro desconhecido"
+
msgid "SimplyPrint account not linked. Go to Connect options to set it up."
msgstr ""
"Conta SimplyPrint não vinculada. Vá para as opções de conexão para configurá-"
"la."
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
-msgstr ""
-"O tamanho do arquivo excede o limite de envio de 100MB. Por favor, envie seu "
-"arquivo através do painel."
-
-msgid "Unknown error"
-msgstr "Erro desconhecido"
-
msgid "Connection to Flashforge works correctly."
msgstr "A conexão com a Flashforge está funcionando corretamente."
@@ -16755,6 +16800,92 @@ msgstr ""
"aumentar adequadamente a temperatura da mesa aquecida pode reduzir a "
"probabilidade de empenamento?"
+#~ msgid ""
+#~ "File size exceeds the 100MB upload limit. Please upload your file through "
+#~ "the panel."
+#~ msgstr ""
+#~ "O tamanho do arquivo excede o limite de envio de 100MB. Por favor, envie "
+#~ "seu arquivo através do painel."
+
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "Por favor, insira um valor válido (K entre 0~0.3)"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr "Por favor, insira um valor válido (K entre 0~0.3, N entre 0.6~2.0))"
+
+#~ msgid "Select connected printetrs (0/6)"
+#~ msgstr "Selecione as impressoras conectadas (0/6)"
+
+#, c-format, boost-format
+#~ msgid "Select Connected Printetrs (%d/6)"
+#~ msgstr "Selecionar as impressoras conectadas (%d/6)"
+
+#~ msgid "PrintingPause"
+#~ msgstr "Pausa na Impressão"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr "Falha na conexão local da impressora, por favor, tente novamente."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "Encontre os detalhes da Calibração de Dinâmica de Fluxo na nossa wiki.\n"
+#~ "\n"
+#~ "Normalmente, a calibração não é necessária. Quando você inicia uma "
+#~ "impressão de cor/material única, com a opção \"calibração de dinâmica de "
+#~ "fluxo\" ativada no menu de início da impressão, a impressora seguirá o "
+#~ "método antigo, calibrando o filamento antes da impressão; Quando você "
+#~ "inicia uma impressão de cor/material múltipla, a impressora usará o "
+#~ "parâmetro de compensação padrão para o filamento durante cada troca de "
+#~ "filamento, o que resultará em um bom resultado na maioria dos casos.\n"
+#~ "\n"
+#~ "Por favor, note que existem alguns casos que podem tornar o resultado da "
+#~ "calibração não confiável: usar uma mesa texturizada para fazer a "
+#~ "calibração; a mesa não tem boa adesão (por favor, lave a mesa ou aplique "
+#~ "cola!) ... Você pode encontrar mais informações em nossa wiki.\n"
+#~ "\n"
+#~ "Os resultados da calibração têm cerca de 10 por cento de oscilação em "
+#~ "nossos testes, o que pode fazer com que o resultado não seja exatamente o "
+#~ "mesmo em cada calibração. Ainda estamos investigando a causa raiz para "
+#~ "fazer melhorias com novas atualizações."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr ""
+#~ "Apenas um dos resultados com o mesmo nome será salvo. Você tem certeza de "
+#~ "que deseja substituir os outros resultados?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "Já existe um resultado de calibração histórico com o mesmo nome: %s. "
+#~ "Apenas um dos resultados com o mesmo nome é salvo. Você tem certeza de "
+#~ "que deseja substituir o resultado histórico?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "Por favor, encontre o canto com o grau perfeito de extrusão"
+
#~ msgid "X"
#~ msgstr "X"
diff --git a/localization/i18n/ru/OrcaSlicer_ru.po b/localization/i18n/ru/OrcaSlicer_ru.po
index 25731ea9fb..27f4a0f7a9 100644
--- a/localization/i18n/ru/OrcaSlicer_ru.po
+++ b/localization/i18n/ru/OrcaSlicer_ru.po
@@ -7,16 +7,16 @@ msgid ""
msgstr ""
"Project-Id-Version: OrcaSlicer V2.0.0 Official Release\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
-"PO-Revision-Date: 2024-04-12 13:49+0700\n"
+"POT-Creation-Date: 2024-06-21 21:03+0800\n"
+"PO-Revision-Date: 2024-06-19 16:50+0700\n"
"Last-Translator: \n"
"Language-Team: andylg@yandex.ru\n"
"Language: ru_RU\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"
"X-Generator: Poedit 3.4.2\n"
msgid "Supports Painting"
@@ -1508,7 +1508,7 @@ msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):"
msgstr "Выберите один или несколько файлов (3mf/step/stl/svg/obj/amf):"
msgid "Choose ZIP file"
-msgstr "Выберите ZIP файл"
+msgstr "Выберите zip-файл"
msgid "Choose one file (gcode/3mf):"
msgstr "Выберите один файл (gcode/3mf):"
@@ -1551,7 +1551,7 @@ msgstr ""
"использовать только локально."
msgid "Sync user presets"
-msgstr "\"Синхронизация пользовательских профилей"
+msgstr "Синхронизировать пользовательские профили"
msgid "Loading user preset"
msgstr "Загрузка пользовательского профиля"
@@ -1968,10 +1968,10 @@ msgid "arrange current plate"
msgstr "Расстановка моделей на текущем столе"
msgid "Reload All"
-msgstr ""
+msgstr "Перезагрузить всё"
msgid "reload all from disk"
-msgstr ""
+msgstr "Перезагрузить всё с диска"
msgid "Auto Rotate"
msgstr "Автоповорот"
@@ -2358,7 +2358,7 @@ msgid "Insert a pause command at the beginning of this layer."
msgstr "Вставить команду паузы в начале этого слоя."
msgid "Add Custom G-code"
-msgstr "Добавить пользовательской G-код"
+msgstr "Добавить пользовательский G-код"
msgid "Insert custom G-code at the beginning of this layer."
msgstr "Вставить пользовательский G-код в начале этого слоя."
@@ -2419,7 +2419,7 @@ msgid "Connection to printer failed"
msgstr "Не удалось подключиться к принтеру"
msgid "Please check the network connection of the printer and Orca."
-msgstr "Пожалуйста, проверьте сетевое подключение принтера с BambuStudio."
+msgstr "Пожалуйста, проверьте сетевое подключение принтера с OrcaSlicer."
msgid "Connecting..."
msgstr "Подключение..."
@@ -2442,11 +2442,13 @@ msgstr "Дозаправка"
msgid "AMS not connected"
msgstr "АСПП не подключена"
+# Загрузить
msgid "Load"
-msgstr "Загрузить"
+msgstr "Втянуть"
+# Выгрузить
msgid "Unload"
-msgstr "Выгруз."
+msgstr "Выдавить"
msgid "Ext Spool"
msgstr "Внеш. катушка"
@@ -2465,7 +2467,8 @@ msgstr "Калибровка АСПП..."
msgid "A problem occurred during calibration. Click to view the solution."
msgstr ""
-"Во время калибровки возникла проблема. Нажмите, чтобы просмотреть решение."
+"Во время калибровки возникла проблема. Нажмите, чтобы посмотреть способ "
+"исправления проблемы."
msgid "Calibrate again"
msgstr "Повторить калибровку"
@@ -2661,7 +2664,7 @@ msgstr ""
msgid "Print file not found, Please slice it again and send it for printing."
msgstr ""
-"Файл печати не найден. Пожалуйста, нарежьте его ещё раз и отправьте на "
+"Файл для печати не найден. Пожалуйста, нарежьте его ещё раз и отправьте на "
"печать."
msgid ""
@@ -2781,7 +2784,7 @@ msgid "GNU Affero General Public License, version 3"
msgstr "GNU Affero General Public третьей версии"
msgid "Orca Slicer is based on PrusaSlicer and BambuStudio"
-msgstr ""
+msgstr "Orca Slicer основан на PrusaSlicer и BambuStudio"
msgid "Libraries"
msgstr "Библиотеки"
@@ -2878,13 +2881,15 @@ msgstr "Вы уверены, что хотите удалить информац
msgid "You need to select the material type and color first."
msgstr "Сначала необходимо выбрать тип материала и цвет."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Пожалуйста, введите допустимое значение (K в диапазоне 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr "Пожалуйста, введите допустимое значение (K в диапазоне %.1f~%.1f)"
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
msgstr ""
-"Пожалуйста, введите допустимое значение (K в диапазоне 0~0.3, N в диапазоне "
-"0.6~2.0)"
+"Пожалуйста, введите допустимое значение (K в диапазоне %.1f~%.1f, N в "
+"диапазоне %.1f~%.1f)"
msgid "Other Color"
msgstr "Другой цвет"
@@ -3141,12 +3146,14 @@ msgstr ""
"когда текущий закончится."
msgid "Air Printing Detection"
-msgstr ""
+msgstr "Обнаружение печати в воздухе"
msgid ""
"Detects clogging and filament grinding, halting printing immediately to "
"conserve time and filament."
msgstr ""
+"При обнаружении засорения сопла или истирания прутка, печать немедленно прекращается "
+"для экономии времени и материала."
msgid "File"
msgstr "Файл"
@@ -3308,30 +3315,30 @@ msgid "Device"
msgstr "Принтер"
msgid "Task Sending"
-msgstr ""
+msgstr "Отправка заданий"
msgid "Task Sent"
-msgstr ""
+msgstr "Отправленные задания"
msgid "Edit multiple printers"
-msgstr ""
+msgstr "Редактирование нескольких принтеров"
-msgid "Select connected printetrs (0/6)"
-msgstr ""
+msgid "Select connected printers (0/6)"
+msgstr "Выберите подключённые принтеры (%d/6)"
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
-msgstr ""
+msgid "Select Connected Printers (%d/6)"
+msgstr "Выберите подключённые принтеры (%d/6)"
#, c-format, boost-format
msgid "The maximum number of printers that can be selected is %d"
-msgstr ""
+msgstr "Максимальное количество принтеров, которое можно выбрать - %d"
msgid "Offline"
msgstr "Не в сети"
msgid "No task"
-msgstr ""
+msgstr "Нет заданий"
msgid "View"
msgstr "Вид"
@@ -3340,23 +3347,24 @@ msgid "N/A"
msgstr "Н/Д"
msgid "Edit Printers"
-msgstr ""
+msgstr "Редактировать принтеры"
msgid "Device Name"
-msgstr ""
+msgstr "Имя устройства"
msgid "Task Name"
-msgstr ""
+msgstr "Имя задания"
msgid "Device Status"
-msgstr ""
+msgstr "Статус устройства"
msgid "Actions"
-msgstr ""
+msgstr "Действия"
msgid ""
"Please select the devices you would like to manage here (up to 6 devices)"
msgstr ""
+"Пожалуйста, выберите устройства, которыми хотите управлять (до 6 устройств)"
msgid "Add"
msgstr "Добавить"
@@ -3368,22 +3376,22 @@ msgid "Printing"
msgstr "Печать"
msgid "Upgrading"
-msgstr ""
+msgstr "Обновление"
msgid "Incompatible"
msgstr "Несовместимы"
msgid "syncing"
-msgstr ""
+msgstr "синхронизация"
msgid "Printing Finish"
-msgstr ""
+msgstr "Печать завершена"
msgid "Printing Failed"
-msgstr ""
+msgstr "Ошибка печати"
-msgid "PrintingPause"
-msgstr ""
+msgid "Printing Pause"
+msgstr "Пауза печати"
msgid "Prepare"
msgstr "Подготовка"
@@ -3392,28 +3400,29 @@ msgid "Slicing"
msgstr "Нарезка"
msgid "Pending"
-msgstr ""
+msgstr "Ожидание"
msgid "Sending"
-msgstr ""
+msgstr "Отправка"
msgid "Sending Finish"
-msgstr ""
+msgstr "Отправка завершена"
msgid "Sending Cancel"
-msgstr ""
+msgstr "Отправка отменена"
msgid "Sending Failed"
-msgstr ""
+msgstr "Ошибка отправки"
msgid "Print Success"
-msgstr ""
+msgstr "Успешно напечатано"
+# ??? Ошибка печати
msgid "Print Failed"
-msgstr ""
+msgstr "Печать не удалась"
msgid "Removed"
-msgstr ""
+msgstr "Удалено"
msgid "Resume"
msgstr "Продолжить"
@@ -3422,25 +3431,25 @@ msgid "Stop"
msgstr "Остановить"
msgid "Task Status"
-msgstr ""
+msgstr "Статус задания"
msgid "Sent Time"
-msgstr ""
+msgstr "Время отправки"
msgid "There are no tasks to be sent!"
-msgstr ""
+msgstr "Нет заданий для отправки!"
msgid "No historical tasks!"
-msgstr ""
+msgstr "История заданий пуста!"
msgid "Loading..."
msgstr "Загрузка..."
msgid "No AMS"
-msgstr ""
+msgstr "АСПП отсутствует"
msgid "Send to Multi-device"
-msgstr ""
+msgstr "Отправить на несколько устройств"
msgid "Preparing print job"
msgstr "Подготовка задания на печать"
@@ -3449,25 +3458,26 @@ msgid "Abnormal print file data. Please slice again"
msgstr "Неправильные данные файла печати. Пожалуйста, нарежьте ещё раз."
msgid "There is no device available to send printing."
-msgstr ""
+msgstr "Отсутствует устройство для отправки на печать."
+# ???
msgid "The number of printers in use simultaneously cannot be equal to 0."
-msgstr ""
+msgstr "Количество одновременно используемых принтеров не может быть равно 0."
msgid "Use External Spool"
-msgstr ""
+msgstr "Исп. внешнюю катушку"
msgid "Use AMS"
-msgstr ""
+msgstr "Исп. АСПП"
msgid "Select Printers"
-msgstr ""
+msgstr "Выбор принтеров"
msgid "Ams Status"
-msgstr ""
+msgstr "Статус АСПП"
msgid "Printing Options"
-msgstr ""
+msgstr "Параметры печати"
msgid "Bed Leveling"
msgstr ""
@@ -3478,26 +3488,31 @@ msgid "Timelapse"
msgstr "Таймлапсы"
msgid "Flow Dynamic Calibration"
-msgstr ""
+msgstr "Калибровка динамики потока"
msgid "Send Options"
-msgstr ""
+msgstr "Параметры отправки"
msgid "Send to"
-msgstr ""
+msgstr "Отправить на"
msgid ""
"printers at the same time.(It depends on how many devices can undergo "
"heating at the same time.)"
msgstr ""
+"принтера(-ов) одновременно (зависит от того, сколько устройств может "
+"нагреваться одновременно без перегрузки вашей электросети.)"
msgid "Wait"
-msgstr "Подождите"
+msgstr "Ждать"
msgid ""
"minute each batch.(It depends on how long it takes to complete the heating.)"
msgstr ""
+"минут для отправки каждого пакета заданий (зависит от того, сколько времени "
+"требуется для завершения нагрева перед началом печати.)"
+# ???
msgid "Send"
msgstr "Отправить G-код стола на SD-карту"
@@ -4093,12 +4108,14 @@ msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
msgstr ""
+"Неверный входной формат. Ожидаемый вектор размерности в следующем формате: "
+"\"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "Введённое значение вне диапазона"
msgid "Some extension in the input is invalid"
-msgstr ""
+msgstr "Недопустимое расширение на входе"
#, boost-format
msgid "Invalid format. Expected vector format: \"%1%\""
@@ -4521,6 +4538,7 @@ msgstr "Автозапись мониторинга"
msgid "Go Live"
msgstr "Запустить трансляцию"
+# ??? Повторить попытку просмотра в реальном времени
msgid "Liveview Retry"
msgstr "Повторить попытку просмотра"
@@ -4581,7 +4599,7 @@ msgid "Preview"
msgstr "Предпросмотр нарезки"
msgid "Multi-device"
-msgstr ""
+msgstr "Управ. устройствами"
msgid "Project"
msgstr "Проект"
@@ -4728,10 +4746,10 @@ msgid "Load a model"
msgstr "Загрузка модели"
msgid "Import Zip Archive"
-msgstr ""
+msgstr "Импорт zip-архива"
msgid "Load models contained within a zip archive"
-msgstr ""
+msgstr "Загрузка моделей, содержащихся в zip-архиве"
msgid "Import Configs"
msgstr "Импортировать конфигурацию"
@@ -4767,7 +4785,7 @@ msgid "Export current plate as G-code"
msgstr "Экспортировать текущие модели со стола в G-код"
msgid "Export Preset Bundle"
-msgstr ""
+msgstr "Экспорт пакетов конфигурации"
msgid "Export current configuration to files"
msgstr "Экспортировать текущую конфигурацию в файл"
@@ -4887,7 +4905,6 @@ msgstr "Проход 2"
msgid "Flow rate test - Pass 2"
msgstr "Тест скорости потока - 2-ой проход"
-# ???
msgid "Flow rate"
msgstr "Скорость потока"
@@ -4937,10 +4954,10 @@ msgid "Export toolpaths as OBJ"
msgstr "Экспортировать траекторию инструмента в OBJ"
msgid "Open &Slicer"
-msgstr "Открыть &Studio"
+msgstr "Открыть &слайсер"
msgid "Open Slicer"
-msgstr "Открыть Studio"
+msgstr "Открыть слайсер"
msgid "&Quit"
msgstr "В&ыход"
@@ -5029,9 +5046,9 @@ msgid ""
msgstr ""
"Вы хотите синхронизировать свои данные с Bambu Cloud? \n"
"В облаке содержится следующая информация:\n"
-"1. Профили процесса\n"
+"1. Профили процессов печати\n"
"2. Профили пластиковых нитей\n"
-"3. Профили принтера"
+"3. Профили принтеров"
msgid "Synchronization"
msgstr "Синхронизация"
@@ -5056,11 +5073,7 @@ msgstr "Пожалуйста, проверьте, подключен ли при
msgid ""
"The printer is currently busy downloading. Please try again after it "
"finishes."
-msgstr ""
-"Принтер в настоящее время занят загрузкой. Пожалуйста, повторите попытку "
-"после завершения.\n"
-"\n"
-"Сейчас идёт загрузка. Пожалуйста, повторите попытку после завершения."
+msgstr "Сейчас идёт загрузка. Пожалуйста, повторите попытку после завершения."
msgid "Printer camera is malfunctioning."
msgstr "Камера принтера неисправна."
@@ -5070,6 +5083,7 @@ msgstr ""
"Возникла проблема. Пожалуйста, обновите прошивку принтера и повторите "
"попытку."
+# ??? Просмотр в режиме «Только LAN» отключён
msgid ""
"LAN Only Liveview is off. Please turn on the liveview on printer screen."
msgstr ""
@@ -5094,6 +5108,7 @@ msgstr ""
"Пожалуйста, проверьте сеть и повторите попытку. Если проблема не устранена, "
"попробуйте перезагрузить или обновить принтер."
+# ??? Принтер разлогинился и не может подключиться.
msgid "The printer has been logged out and cannot connect."
msgstr "Принтер вышел из системы и не может подключиться."
@@ -5199,7 +5214,7 @@ msgid "Loading file list..."
msgstr "Загрузка списка файлов..."
msgid "No files"
-msgstr "Файлы отсутствуют "
+msgstr "Файлы отсутствуют"
msgid "Load failed"
msgstr "Ошибка загрузки"
@@ -5214,13 +5229,12 @@ msgstr ""
"На текущей версии прошивки просмотр файлов на SD-карте не поддерживается. "
"Пожалуйста, обновите прошивку принтера."
+# ??? Ошибка загрузки (хранилище недоступно, вставьте SD-карту)!
msgid "Initialize failed (Storage unavailable, insert SD card.)!"
-msgstr ""
+msgstr "Ошибка инициализации (хранилище недоступно, вставьте SD-карту)!"
msgid "LAN Connection Failed (Failed to view sdcard)"
-msgstr ""
-"LAN Connection Failed (Failed to start liveview)\"\n"
-"Сбой подключения к локальной сети (не удалось просмотреть sd-карту)"
+msgstr "Сбой подключения к локальной сети (не удалось просмотреть sd-карту)"
msgid "Browsing file in SD card is not supported in LAN Only Mode."
msgstr "Просмотр файлов на SD-карте не поддерживается в режиме «Только LAN»."
@@ -5650,18 +5664,22 @@ msgid ""
"The 3mf file version is in Beta and it is newer than the current OrcaSlicer "
"version."
msgstr ""
+"Версия этого 3mf файла сохранена в бета-версии приложения и она новее вашей "
+"текущей версии OrcaSlicer."
msgid "If you would like to try Orca Slicer Beta, you may click to"
-msgstr ""
+msgstr "Если хотите попробовать бета-версию Orca Slicer, вы можете нажать на"
msgid "Download Beta Version"
msgstr "Скачать бета-версию"
msgid "The 3mf file version is newer than the current Orca Slicer version."
-msgstr ""
+msgstr "Версия файла 3mf новее, чем ваша текущая версия Orca Slicer."
msgid "Update your Orca Slicer could enable all functionality in the 3mf file."
msgstr ""
+"Обновите Orca Slicer, чтобы включить все функции сохранённые в этом 3mf "
+"файле."
msgid "Current Version: "
msgstr "Текущая версия: "
@@ -5860,11 +5878,14 @@ msgstr "Разрешить звуковые уведомления"
msgid "Filament Tangle Detect"
msgstr "Обнаружение запутывания прутка"
+# ??? Обнаружение засорения сопла, протечки, Обнаружение образование сгустков на сопле
msgid "Nozzle Clumping Detection"
-msgstr ""
+msgstr "Обнаружение сгустков на сопле"
msgid "Check if the nozzle is clumping by filament or other foreign objects."
msgstr ""
+"Обнаружение накапливания на сопле материала в результате засорения/протечки "
+"сопла, или других причин."
msgid "Nozzle Type"
msgstr "Тип сопла"
@@ -5974,7 +5995,7 @@ msgid ""
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
msgstr ""
"АСПП недоступна. Пожалуйста, выберите принтер \n"
-"на странице «Принтер», чтобы загрузить информацию о АСПП."
+"на вкладке «Принтер», чтобы загрузить информацию о АСПП."
msgid "Sync filaments with AMS"
msgstr "Синхронизация прутка с АСПП"
@@ -6125,7 +6146,7 @@ msgid ""
"Please confirm that the G-codes within these presets are safe to prevent any "
"damage to the machine!"
msgstr ""
-"Во избежании повреждения принтера убедитесь, что G-код в этих профилях "
+"Во избежание повреждение принтера убедитесь, что G-код в этих профилях "
"безопасен!"
msgid "Customized Preset"
@@ -6363,7 +6384,7 @@ msgstr "Ошибка при загрузке файла G-кода"
#. TRN %1% is archive path
#, boost-format
msgid "Loading of a ZIP archive on path %1% has failed."
-msgstr "Не удалось загрузить ZIP-архив расположенный по пути %1%."
+msgstr "Не удалось загрузить zip-архив расположенный по пути %1%."
#. TRN: First argument = path to file, second argument = error description
#, boost-format
@@ -6582,7 +6603,7 @@ msgid "Region selection"
msgstr "Выделение области"
msgid "Second"
-msgstr "Секунда"
+msgstr "секунд"
msgid "Browse"
msgstr "Обзор"
@@ -6618,6 +6639,9 @@ msgid ""
"This stops the transmission of data to Bambu's cloud services. Users who "
"don't use BBL machines or use LAN mode only can safely turn on this function."
msgstr ""
+"Это остановит передачу данных в облачные сервисы Bambu. Пользователи, "
+"которые не используют принтеры BBL или используют режим «Только LAN», могут "
+"безопасно включить эту функцию."
msgid "Enable network plugin"
msgstr "Включить сетевой плагин"
@@ -6637,7 +6661,7 @@ msgstr ""
"измерения"
msgid "Allow only one OrcaSlicer instance"
-msgstr ""
+msgstr "Запускать только один экземпляр программы"
msgid ""
"On OSX there is always only one instance of app running by default. However "
@@ -6654,9 +6678,11 @@ msgid ""
"same OrcaSlicer is already running, that instance will be reactivated "
"instead."
msgstr ""
+"Если включено, разрешена работа только одного экземпляра той же самой версии "
+"программы."
msgid "Home"
-msgstr "Домашняя страница"
+msgstr "Home"
msgid "Default Page"
msgstr ""
@@ -6667,19 +6693,26 @@ msgid "Set the page opened on startup."
msgstr "Задание страницы, открываемой при запуске приложения."
msgid "Touchpad"
-msgstr ""
+msgstr "Тачпад"
msgid "Camera style"
msgstr ""
+"Стиль управ-\n"
+"ления камерой"
msgid ""
"Select camera navigation style.\n"
"Default: LMB+move for rotation, RMB/MMB+move for panning.\n"
"Touchpad: Alt+move for rotation, Shift+move for panning."
msgstr ""
+"Выбор стиля управления камерой.\n"
+"По умолчанию: Лев. кн. мыши+перемещение для вращения, Прав./Сред. кн. мыши "
+"для перемещения камеры.\n"
+"Сенсорная панель: Alt+перемещение для вращения, Shift+перемещение для "
+"перемещения камеры."
msgid "Zoom to mouse position"
-msgstr "Приближать к положению курсор"
+msgstr "Приближать к положению курсора"
msgid ""
"Zoom in towards the mouse pointer's position in the 3D view, rather than the "
@@ -6697,10 +6730,12 @@ msgstr ""
"используется вращение камера с ограничениями."
msgid "Reverse mouse zoom"
-msgstr ""
+msgstr "Инвертировать управление масштабом"
msgid "If enabled, reverses the direction of zoom with mouse wheel."
msgstr ""
+"Если включено, направление масштабирования с помощью колесика мыши будет "
+"инвертировано."
msgid "Show splash screen"
msgstr "Показывать заставку при запуске программы"
@@ -6717,7 +6752,7 @@ msgstr ""
"приложения."
msgid "Flushing volumes: Auto-calculate everytime the color changed."
-msgstr "Объём очистки: автопересчёт при каждом изменении цвета."
+msgstr "Объём очистки: автопересчёт при каждом изменении цвета"
msgid "If enabled, auto-calculate everytime the color changed."
msgstr ""
@@ -6726,7 +6761,7 @@ msgstr ""
msgid ""
"Flushing volumes: Auto-calculate every time when the filament is changed."
-msgstr "Объём очистки: автопересчёт при каждой смене прутка."
+msgstr "Объём очистки: автопересчёт при каждой смене прутка"
msgid "If enabled, auto-calculate every time when filament is changed"
msgstr ""
@@ -6734,20 +6769,24 @@ msgstr ""
"каждой смене прутка."
msgid "Remember printer configuration"
-msgstr ""
+msgstr "Запоминать конфигурацию принтера"
msgid ""
"If enabled, Orca will remember and switch filament/process configuration for "
"each printer automatically."
msgstr ""
+"Если включено, программа автоматически запоминает и переключает конфигурацию "
+"материала/процесса печати для каждого принтера."
msgid "Multi-device Management(Take effect after restarting Orca)."
-msgstr ""
+msgstr "Управление несколькими принтерами (требуется перезапуск программы)"
msgid ""
"With this option enabled, you can send a task to multiple devices at the "
"same time and manage multiple devices."
msgstr ""
+"Если включено, вы сможете управлять несколькими устройствами и отправлять "
+"задания на печать на несколько устройств одновременно."
msgid "Network"
msgstr "Сеть"
@@ -6795,40 +6834,49 @@ msgstr ""
"открытия .step файлов."
msgid "Associate web links to OrcaSlicer"
-msgstr ""
+msgstr "Сопоставление веб-ссылок с OrcaSlicer"
msgid "Associate URLs to OrcaSlicer"
-msgstr ""
+msgstr "Ассоциировать URL-адреса с OrcaSlicer"
-msgid "Current association: "
-msgstr ""
+msgid "Current Association: "
+msgstr "Текущая ассоциация: "
+
+msgid "Associate"
+msgstr "Ассоциация"
msgid "Associate prusaslicer://"
-msgstr ""
+msgstr "Ассоциация c prusaslicer://"
msgid "Not associated to any application"
-msgstr ""
+msgstr "Нет ассоциации ни с одним приложением"
msgid ""
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
"from Printable.com"
msgstr ""
+"Ассоциировать OrcaSlicer с ссылками prusaslicer://, чтобы она могла "
+"открывать модели сразу с printable.com"
msgid "Associate bambustudio://"
-msgstr ""
+msgstr "Ассоциация c bambustudio://"
msgid ""
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
"from makerworld.com"
msgstr ""
+"Ассоциировать OrcaSlicer с ссылками bambustudio://, чтобы она могла "
+"открывать модели сразу с makerworld.com"
msgid "Associate cura://"
-msgstr ""
+msgstr "Ассоциация c cura://"
msgid ""
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
"thingiverse.com"
msgstr ""
+"Ассоциировать OrcaSlicer с ссылками bambustudio://, чтобы она могла "
+"открывать модели сразу с thingiverse.com"
msgid "Maximum recent projects"
msgstr "Максимальное количество недавних проектов"
@@ -7005,14 +7053,16 @@ msgstr "Создать принтер"
msgid "The selected preset is null!"
msgstr "Выбранный профиль пуст!"
+# ??? Только клавиша?
msgid "End"
-msgstr "Последний"
+msgstr "End"
msgid "Customize"
msgstr "Настроить"
+# ??? layer?
msgid "Other layer filament sequence"
-msgstr "Последовательность прутков на остальных слоях"
+msgstr "Последовательность прутков на других слоях"
msgid "Please input layer value (>= 2)."
msgstr "Пожалуйста, введите значение слоя (>= 2)."
@@ -7213,10 +7263,6 @@ msgstr "отправка завершена"
msgid "Error code"
msgstr "Код ошибки"
-msgid "Printer local connection failed, please try again."
-msgstr ""
-"Не удалось установить локальное соединение с принтером, попробуйте ещё раз."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr ""
"Без входа в учётную запись, отображаются только \n"
@@ -7300,6 +7346,7 @@ msgstr ""
msgid "An SD card needs to be inserted before printing."
msgstr "Перед печатью необходимо вставить SD-карту."
+# ??? Выбранный принтер (%s) несовместим с выбранным профилем принтера в слайсере (%s)
#, c-format, boost-format
msgid ""
"The selected printer (%s) is incompatible with the chosen printer profile in "
@@ -7374,7 +7421,7 @@ msgid ""
"change settings."
msgstr ""
"Диаметр сопла в нарезанном файле не соответствует сохранённому. Если вы "
-"недавно меняли сопло, перейдите в раздел Принтер > Части принтера, чтобы "
+"недавно меняли сопло, перейдите на вкладку Принтер > Части принтера, чтобы "
"изменить настройки."
#, c-format, boost-format
@@ -7412,8 +7459,9 @@ msgstr "Автокалибровка потока с помощью микрол
msgid "Modifying the device name"
msgstr "Изменение имени принтера"
+# # не длинно?
msgid "Bind with Pin Code"
-msgstr ""
+msgstr "Привязать с помощью пин-кода"
msgid "Send to Printer SD card"
msgstr "Отправить на SD-карту принтера"
@@ -7470,21 +7518,23 @@ msgid ""
"Please Find the Pin Code in Account page on printer screen,\n"
" and type in the Pin Code below."
msgstr ""
+"Найдите пин-код на экране принтера на странице учётной записи и введите его "
+"ниже."
msgid "Can't find Pin Code?"
-msgstr ""
+msgstr "Не можете найти пин-код?"
msgid "Pin Code"
-msgstr ""
+msgstr "Пин-код"
msgid "Binding..."
-msgstr ""
+msgstr "Привязка..."
msgid "Please confirm on the printer screen"
-msgstr ""
+msgstr "Пожалуйста, подтвердите привязку на экране принтера."
msgid "Log in failed. Please check the Pin Code."
-msgstr ""
+msgstr "Не удалось выполнить вход в систему. Пожалуйста, проверьте пин-код."
msgid "Log in printer"
msgstr "Войти в принтер"
@@ -7509,8 +7559,8 @@ msgid ""
"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services."
msgstr ""
"Перед использованием устройства Bambu Lab ознакомьтесь с правилами и "
-"условиями. Нажимая на кнопку \"Согласие на использование устройства Bambu Lab"
-"\", вы соглашаетесь соблюдать Политику конфиденциальности и Условия "
+"условиями. Нажимая на кнопку \"Согласие на использование устройства Bambu "
+"Lab\", вы соглашаетесь соблюдать Политику конфиденциальности и Условия "
"использования (далее - \"Условия\"). Если вы не соблюдаете или не согласны с "
"Политикой конфиденциальности Bambu Lab, пожалуйста, не пользуйтесь "
"оборудованием и услугами Bambu Lab."
@@ -7714,8 +7764,8 @@ msgstr ""
msgid ""
"When recording timelapse without toolhead, it is recommended to add a "
"\"Timelapse Wipe Tower\" \n"
-"by right-click the empty position of build plate and choose \"Add Primitive"
-"\"->\"Timelapse Wipe Tower\"."
+"by right-click the empty position of build plate and choose \"Add "
+"Primitive\"->\"Timelapse Wipe Tower\"."
msgstr ""
"При записи таймлапса без видимости головы рекомендуется добавить «Черновая "
"башня таймлапса». \n"
@@ -7990,10 +8040,10 @@ msgstr "Область печати"
#. TRN: First argument is parameter name, the second one is the value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
-msgstr ""
+msgstr "Указано недопустимое значение параметра %1%: %2%"
msgid "G-code flavor is switched"
-msgstr ""
+msgstr "Тип G-кода переключён"
msgid "Cooling Fan"
msgstr "Вентилятор обдува модели"
@@ -8103,8 +8153,7 @@ msgstr ""
msgid "Presets inherited by other presets can not be deleted!"
msgstr "Профили на которых основаны другие профили не могут быть удалены!"
-# ???The following preset inherits this preset. - Нижеуказанный профиль
-# наследуется от текущего профиля
+# ???The following preset inherits this preset. - Нижеуказанный профиль наследуется от текущего профиля
msgid "The following presets inherit this preset."
msgid_plural "The following preset inherits this preset."
msgstr[0] "Профиль указанный ниже, наследуется от текущего профиля."
@@ -8233,6 +8282,7 @@ msgstr ""
msgid "You have changed some settings of preset \"%1%\". "
msgstr "Вы изменили некоторые параметры профиля \"%1%\". "
+# ???
msgid ""
"\n"
"You can save or discard the preset values you have modified."
@@ -8245,6 +8295,9 @@ msgid ""
"You can save or discard the preset values you have modified, or choose to "
"transfer the values you have modified to the new preset."
msgstr ""
+"\n"
+"Вы можете сохранить или сбросить изменённые вами значения профиля, или "
+"перенести их в новый профиль."
msgid "You have previously modified your settings."
msgstr "Ранее вы изменили свои настройки."
@@ -8254,6 +8307,9 @@ msgid ""
"You can discard the preset values you have modified, or choose to transfer "
"the modified values to the new project"
msgstr ""
+"\n"
+"Вы можете сбросить изменённые вами значения профиля, или перенести их в "
+"новый проект."
msgid "Extruders count"
msgstr "Количество экструдеров"
@@ -8371,6 +8427,69 @@ msgstr "Обновления отсутствуют."
msgid "The configuration is up to date."
msgstr "Текущая конфигурация не требует обновления."
+msgid "Obj file Import color"
+msgstr "Импорт цветного obj-файла"
+
+msgid "Specify number of colors:"
+msgstr "Укажите количество цветов:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "Количество цветов должно быть в диапазоне [%d, %d]."
+
+msgid "Recommended "
+msgstr "рекомендуется"
+
+msgid "Current filament colors:"
+msgstr "Текущие цвета прутков:"
+
+# ??? Быстрый набор
+msgid "Quick set:"
+msgstr "Быстрый выбор:"
+
+# ??? Цветовая схема
+msgid "Color match"
+msgstr "Подбор цвета"
+
+# ??? Приблизительное сопоставление по цвету.
+msgid "Approximate color matching."
+msgstr "Приблизительный подбор по цвету."
+
+# ???
+msgid "Append"
+msgstr "Добавить"
+
+# ???
+msgid "Add consumable extruder after existing extruders."
+msgstr ""
+"Добавить экструдер с расходными материалами после существующих экструдеров."
+
+# ???
+msgid "Reset mapped extruders."
+msgstr "Сброс сопоставленных экструдеров."
+
+# кластер цветов
+msgid "Cluster colors"
+msgstr "Цветовой кластер"
+
+# ??? Карта прутка, Цвет прутков, цветовая карта прутков, выбранные цвета прутков, цветовая карта, раскладка материалов, Выбранная раскладка цветов
+msgid "Map Filament"
+msgstr "Выбранные цвета"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"Примечание: цвета уже выбраны, вы можете нажать «OK» \n"
+" для продолжения или подобрать его вручную."
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"Предупреждение: Количество новых \n"
+" и текущих экструдеров превышает 16."
+
msgid "Ramming customization"
msgstr "Настройки рэмминга"
@@ -8463,27 +8582,39 @@ msgid ""
"Windows Media Player is required for this task! Do you want to enable "
"'Windows Media Player' for your operation system?"
msgstr ""
+"Для этой задачи требуется Windows Media Player! Хотите включить его в своей "
+"ОС?"
msgid ""
"BambuSource has not correctly been registered for media playing! Press Yes "
"to re-register it. You will be promoted twice"
msgstr ""
+"Компонент BambuSource неправильно зарегистрирован для воспроизведения "
+"медиафайлов! Нажмите «Да», чтобы повторно зарегистрировать его."
msgid ""
"Missing BambuSource component registered for media playing! Please re-"
"install BambuStutio or seek after-sales help."
msgstr ""
+"Отсутствует компонент BambuSource зарегистрированный для воспроизведения "
+"медиафайлов! Переустановите BambuStutio или обратитесь за помощью в службу "
+"поддержки."
msgid ""
"Using a BambuSource from a different install, video play may not work "
"correctly! Press Yes to fix it."
msgstr ""
+"Используя компоненты BambuSource из другого инсталлятора воспроизведение "
+"видео может работать некорректно! Нажмите кнопку «Да», чтобы исправить это."
msgid ""
"Your system is missing H.264 codecs for GStreamer, which are required to "
"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-"
"libav packages, then restart Orca Slicer?)"
msgstr ""
+"В вашей системе отсутствуют кодеки H.264 для GStreamer, которые необходимы "
+"для воспроизведения видео. Попробуйте установить пакеты gstreamer1.0-plugins-"
+"bad или gstreamer1.0-libav, а затем перезапустите Orca Slicer."
msgid "Bambu Network plug-in not detected."
msgstr "Сетевой плагин Bambu не обнаружен."
@@ -8556,9 +8687,7 @@ msgid ""
"objects, it just orientates the selected ones.Otherwise, it will orientates "
"all objects in the current disk."
msgstr ""
-"Автоориентация выбранных или всех моделей. При выбранных моделях, "
-"ориентируются только они, противном случае ориентируются все модели на "
-"текущем столе."
+"Автоориентация моделей: ориентируются выбранные, иначе все на текущем столе."
msgid "Shift+Tab"
msgstr "Shift+Tab"
@@ -8760,10 +8889,10 @@ msgid "Shift+Mouse wheel"
msgstr "Shift + Колесо мыши"
msgid "Horizontal slider - Move to start position"
-msgstr ""
+msgstr "Горизонтальный ползунок - Перемещение в начальную позицию"
msgid "Horizontal slider - Move to last position"
-msgstr ""
+msgstr "Горизонтальный ползунок - Перемещение в конечную позицию"
msgid "Release Note"
msgstr "Информация о версии"
@@ -8788,7 +8917,7 @@ msgid "New version of Orca Slicer"
msgstr "Доступна новая версия Orca Slicer"
msgid "Skip this Version"
-msgstr "Пропустите эту версию"
+msgstr "Пропустить эту версию"
msgid "Done"
msgstr "Готово"
@@ -8797,37 +8926,39 @@ msgid "resume"
msgstr "Продолжить"
msgid "Resume Printing"
-msgstr ""
+msgstr "Возобновить печать"
msgid "Resume Printing(defects acceptable)"
-msgstr ""
+msgstr "Возобновить печать (допустимы дефекты)"
msgid "Resume Printing(problem solved)"
-msgstr ""
+msgstr "Возобновить печать (проблема решена)"
msgid "Stop Printing"
-msgstr ""
+msgstr "Остановить печать"
+# ??? Перейти к помощнику, Помощник по проверке
msgid "Check Assistant"
-msgstr ""
+msgstr "Помощник проверки"
msgid "Filament Extruded, Continue"
-msgstr ""
+msgstr "Пруток выдавлен, Продолжить"
msgid "Not Extruded Yet, Retry"
-msgstr ""
+msgstr "Пруток ещё не выдавлен, Повторить"
msgid "Finished, Continue"
-msgstr ""
+msgstr "Готово, Продолжить"
msgid "Load Filament"
msgstr "Загрузить"
msgid "Filament Loaded, Resume"
-msgstr ""
+msgstr "Пруток загружен, Повторить"
+# ??? Просморт камеры, Посмотреть прямую трансляцию
msgid "View Liveview"
-msgstr ""
+msgstr "Открыть прямую трансляцию"
msgid "Confirm and Update Nozzle"
msgstr "Подтвердить и обновить сопло"
@@ -9254,7 +9385,7 @@ msgstr ""
#, boost-format
msgid "The object %1% exceeds the maximum build volume height."
-msgstr "Высота модели %1% превышает максимально допустимую."
+msgstr "Высота модели %1% превышает максимально допустимую области построения."
#, boost-format
msgid ""
@@ -9741,11 +9872,12 @@ msgstr "Последовательность печати первого сло
msgid "Other layers print sequence"
msgstr "Последовательность печати других слоёв"
+# ???? Количество слоёв при последовательной печати остальных слоёв, Количество других слоёв последовательной печати, Количество других слоёв в последовательной печати
msgid "The number of other layers print sequence"
-msgstr "Количество слоёв при последовательности печати остальных слоёв"
+msgstr "Количество других слоёв при последовательной печати"
msgid "Other layers filament sequence"
-msgstr "Последовательность прутков на остальных слоях"
+msgstr "Последовательность прутков на других слоях"
msgid "This G-code is inserted at every layer change before lifting z"
msgstr ""
@@ -9826,7 +9958,7 @@ msgstr ""
"нависаний и мостов для обеспечения лучшего их охлаждения."
msgid "Fan speed for overhang"
-msgstr "Скорость вентилятора на нависанияx"
+msgstr "Скорость вентилятора на нависаниях"
msgid ""
"Force part cooling fan to be this speed when printing bridge or overhang "
@@ -9840,7 +9972,6 @@ msgstr ""
msgid "Cooling overhang threshold"
msgstr "Порог включения обдува на нависаниях"
-#, fuzzy, c-format
msgid ""
"Force cooling fan to be specific speed when overhang degree of printed part "
"exceeds this value. Expressed as percentage which indicides how much width "
@@ -10083,13 +10214,13 @@ msgid "Enable this option to use classic mode"
msgstr "Включите эту опцию для использования классического режима."
msgid "Slow down for overhang"
-msgstr "Замедляться при печати нависаний"
+msgstr "Замедляться на нависаниях"
msgid "Enable this option to slow printing down for different overhang degree"
msgstr "Включение динамического управления скоростью печати нависаний."
msgid "Slow down for curled perimeters"
-msgstr "Снижение скорости на изогнутых периметрах"
+msgstr "Замедляться на изогнутых периметрах"
msgid ""
"Enable this option to slow printing down in areas where potential curled "
@@ -10204,8 +10335,7 @@ msgstr "По очереди"
msgid "Intra-layer order"
msgstr "Порядок печати слоёв"
-# ??? Указания порядка печати слоёв внутри каждого слоя, Последовательность
-# печати слоёв внутри каждого слоя
+# ??? Указания порядка печати слоёв внутри каждого слоя, Последовательность печати слоёв внутри каждого слоя
msgid "Print order within a single layer"
msgstr "Последовательность печати слоёв в пределах одного слоя."
@@ -10419,7 +10549,6 @@ msgstr "Завершающий G-код при окончании печати
msgid "Ensure vertical shell thickness"
msgstr "Обеспечивать верт. толщину оболочки"
-# ???
msgid ""
"Add solid infill near sloping surfaces to guarantee the vertical shell "
"thickness (top+bottom solid layers)\n"
@@ -10578,7 +10707,9 @@ msgstr ""
"то же качество внешних периметров и точность размеров, что и при "
"использовании варианта «Внутренний/Внешний/Внутренний». Однако, поскольку "
"первая экструзия нового слоя начинается на видимой поверхности, швы по оси Z "
-"будут выглядеть менее равномерными."
+"будут выглядеть менее равномерными.\n"
+"\n"
+" "
msgid "Inner/Outer"
msgstr "Внутренний/Внешний"
@@ -10592,6 +10723,7 @@ msgstr "Внутренний/Внешний/Внутренний"
msgid "Print infill first"
msgstr "Сначала печатать заполнение"
+# ???
msgid ""
"Order of wall/infill. When the tickbox is unchecked the walls are printed "
"first, which works best in most cases.\n"
@@ -10602,6 +10734,15 @@ msgid ""
"external surface finish. It can also cause the infill to shine through the "
"external surfaces of the part."
msgstr ""
+"Последовательность печати периметров/заполнения. Когда отключено, сначала "
+"печатаются периметры, что в большинстве случаев работает лучше всего.\n"
+"\n"
+"Печать заполнения первым может помочь при экстремальных нависаниях, "
+"поскольку периметры будут прилегать к соседнему заполнению. Однако в этом "
+"случае последующее заполнение будет слегка выдавливать напечатанные "
+"периметры в местах примыкания к ним, что приводит к ухудшению качества "
+"внешней поверхности. Кроме того, это может приводить к тому, что заполнение "
+"будет просвечиваться через внешнюю поверхность детали."
msgid "Wall loop direction"
msgstr "Направление петель периметров"
@@ -10793,6 +10934,32 @@ msgstr ""
"и будет работать на минимальной скорости, чтобы сократить частоту его "
"запуска и остановки."
+msgid "Don't slow down outer walls"
+msgstr "Не замедляться на внешнем периметре"
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+"Если включено, то скорость печати внешних периметров не будет снижаться, "
+"чтобы уложиться в минимальное время печати слоя. Это особенно полезно при "
+"следующих сценариях:\n"
+"\n"
+"1. Чтобы при печати глянцевыми материалами избежать изменения блеска \n"
+"2. Чтобы избежать появления небольших дефектов, которые возникают при "
+"изменении скорости и выглядят как горизонтальные полосы \n"
+"3. Чтобы избежать печати на скоростях, при которых на внешних периметрах "
+"возникают вертикальные артефакты (VFA)\n"
+"\n"
+
msgid "Layer time"
msgstr "Время слоя"
@@ -10875,7 +11042,7 @@ msgid ""
msgstr ""
"Введите процент усадки пластиковой нити, которую получит она после "
"охлаждения (пишите 94%, если вы намерили 94 мм, вместо 100 мм). Для "
-"компенсации усадки деталь будет отмасштабированна по оси XY. При этом "
+"компенсации усадки деталь будет отмасштабирована по оси XY. При этом "
"учитывается только пластиковая нить, используемая для печати внешнего "
"\"периметра.\n"
"Убедитесь, что между моделями достаточно места, так как эта компенсация "
@@ -11079,28 +11246,30 @@ msgid "(Undefined)"
msgstr "(Не указано)"
msgid "Sparse infill direction"
-msgstr ""
+msgstr "Направление разреженного заполнения"
msgid ""
"Angle for sparse infill pattern, which controls the start or main direction "
"of line"
msgstr ""
-"Базовый угол для ориентации шаблона заполнения, который определяет начало "
+"Угол ориентации шаблона разреженного заполнения, который определяет начало "
"или основное направление линий."
msgid "Solid infill direction"
-msgstr ""
+msgstr "Направление сплошного заполнения"
msgid ""
"Angle for solid infill pattern, which controls the start or main direction "
"of line"
msgstr ""
+"Угол ориентации шаблона сплошного заполнения, который определяет начало или "
+"основное направление линий."
msgid "Rotate solid infill direction"
-msgstr ""
+msgstr "Поворот сплошного заполнения"
msgid "Rotate the solid infill direction by 90° for each layer."
-msgstr ""
+msgstr "Разрешить поворот шаблона сплошного заполнение на 90° на каждом слое."
msgid "Sparse infill density"
msgstr "Плотность заполнения"
@@ -11149,8 +11318,9 @@ msgstr "Динам. куб. поддержка"
msgid "Lightning"
msgstr "Молния"
+# Перекрестная штриховка, Решётка???
msgid "Cross Hatch"
-msgstr ""
+msgstr "Перекрестная решётка"
msgid "Sparse infill anchor length"
msgstr "Длина привязок разреженного заполнения"
@@ -11278,9 +11448,7 @@ msgstr ""
"Параметр предназначен для ограничения влияния экстремальных переходов от "
"ускорения к замедлению, типичных для коротких зигзагообразных перемещений."
-# ??? Ускорение к замедлению, Ускорение торможения, Скорость торможения,
-# Скорость торможения перед поворотом, Соотношение ускорения к замедлению,
-# Скорость движения при переходе от ускорения к замедлению и наоборот
+# ??? Ускорение к замедлению, Ускорение торможения, Скорость торможения, Скорость торможения перед поворотом, Соотношение ускорения к замедлению, Скорость движения при переходе от ускорения к замедлению и наоборот
msgid "accel_to_decel"
msgstr "Ограничение ускорение зигзагов"
@@ -11364,20 +11532,20 @@ msgstr "Полная скорость вентилятора на слое"
msgid ""
"Fan speed will be ramped up linearly from zero at layer "
-"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer"
-"\". \"full_fan_speed_layer\" will be ignored if lower than "
-"\"close_fan_the_first_x_layers\", in which case the fan will be running at "
-"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
+"\"close_fan_the_first_x_layers\" to maximum at layer "
+"\"full_fan_speed_layer\". \"full_fan_speed_layer\" will be ignored if lower "
+"than \"close_fan_the_first_x_layers\", in which case the fan will be running "
+"at maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
msgstr ""
"Скорость вентилятора будет нарастать линейно от нуля на слое "
-"\"close_fan_the_first_x_layers\" до максимума на слое \"full_fan_speed_layer"
-"\". Значение \"full_fan_speed_layer\" будет игнорироваться, если оно меньше "
-"значения \"close_fan_the_first_x_layers\", в этом случае вентилятор будет "
-"работать на максимально допустимой скорости на слое "
-"\"close_fan_the_first_x_layers\" + 1."
+"\"close_fan_the_first_x_layers\" до максимума на слое "
+"\"full_fan_speed_layer\". Значение \"full_fan_speed_layer\" будет "
+"игнорироваться, если оно меньше значения \"close_fan_the_first_x_layers\", в "
+"этом случае вентилятор будет работать на максимально допустимой скорости на "
+"слое \"close_fan_the_first_x_layers\" + 1."
msgid "layer"
-msgstr ""
+msgstr "слой"
msgid "Support interface fan speed"
msgstr "Скорость вентилятора на связующем слое"
@@ -11477,6 +11645,15 @@ msgid ""
"quality as line segments are converted to arcs by the slicer and then back "
"to line segments by the firmware."
msgstr ""
+"Включите, если хотите использовать в G-коде команды перемещения по дуге "
+"окружности G2/G3. Значение допуска траектории такое же как разрешение G-кода "
+"выше.\n"
+"\n"
+"Примечание: для устройств с прошивкой Klipper рекомендуется отключить эту "
+"опцию. Klipper не получает преимуществ от этой опции, поскольку прошивка "
+"снова разбивает дуги на линейные сегменты. Это приводит к снижению качества "
+"поверхности, поскольку линейные сегменты сначала преобразуются в дуги с "
+"помощью слайсера, а затем снова в линейные сегменты с помощью прошивки."
msgid "Add line number"
msgstr "Добавить номер строки"
@@ -11707,8 +11884,9 @@ msgstr ""
"Ширина экструзии для заполнения. Если задано в процентах, то значение "
"вычисляться относительно диаметра сопла."
+# ??? придется сократить Перекрытие линий заполнения с линиями периметра
msgid "Infill/Wall overlap"
-msgstr "Перекрытие линий заполнения с линиями периметра"
+msgstr "Перекрытие заполнения с периметром"
#, no-c-format, no-boost-format
msgid ""
@@ -11717,9 +11895,13 @@ msgid ""
"value to ~10-15% to minimize potential over extrusion and accumulation of "
"material resulting in rough top surfaces."
msgstr ""
+"Параметр указывает на сколько процентов заполнение будет перекрываться с "
+"периметром для лучшего соединения друг с другом. Установите значение равным "
+"~10-15%, чтобы свести к минимуму вероятность чрезмерной экструзии и "
+"накопления материала приводящее к шероховатости поверхности."
msgid "Top/Bottom solid infill/wall overlap"
-msgstr ""
+msgstr "Перекрытие заполнения с периметром на верхней /нижней поверхностях"
#, no-c-format, no-boost-format
msgid ""
@@ -11729,6 +11911,10 @@ msgid ""
"appearance of pinholes. The percentage value is relative to line width of "
"sparse infill"
msgstr ""
+"Площадь верхнего сплошного заполнения немного увеличивается, чтобы перекрыть "
+"периметр для лучшего сцепления и минимизировать появление мелких отверстий в "
+"местах соединения верхнего заполнения с периметрами. Значение 25-30% "
+"является хорошей отправной точкой, минимизирующей появление таких отверстий."
msgid "Speed of internal sparse infill"
msgstr "Скорость заполнения"
@@ -12639,14 +12825,10 @@ msgstr ""
"Использование клиновидного шва для минимизации его видимости и повышения "
"прочности."
-# ???
msgid "Conditional scarf joint"
msgstr "Условие для клиновидного шва"
-# ??? Будет использоваться клиновидный шов, когда на стене нет достаточно
-# острого угла для эффективного скрытия шва.
-# Использовать клиновидный шов только на гладких периметрах, где традиционные
-# швы не могут быть эффективно скрыты.
+# ??? Использовать клиновидный шов только на гладких периметрах, где традиционные швы не могут быть эффективно скрыты.
msgid ""
"Apply scarf joints only to smooth perimeters where traditional seams do not "
"conceal the seams at sharp corners effectively."
@@ -12664,7 +12846,7 @@ msgid ""
"(indicating the absence of sharp corners), a scarf joint seam will be used. "
"The default value is 155°."
msgstr ""
-"Этот параметр задаёт пороговое значение угола для применения клиновидного "
+"Этот параметр задаёт пороговое значение угла для применения клиновидного "
"шва.\n"
"Если максимальный угол в контуре периметра превышает это значение (что "
"указывает на отсутствие острых углов), будет использован клиновидный шов. "
@@ -12842,6 +13024,18 @@ msgid ""
"distance from the object. Therefore, if brims are active it may intersect "
"with them. To avoid this, increase the skirt distance value.\n"
msgstr ""
+"Защитный кожух полезен для защиты материалов типа ABS, ASA от деформации "
+"и отрыва от стола из-за внешнего воздушного потока. Обычно защитный кожух "
+"необходим только для принтеров без камеры.\n"
+"\n"
+"Опции:\n"
+"Включено - высота юбки равна высоте самой высокой модели.\n"
+"Ограничено - высота юбки задается параметром «Слоёв юбки».\n"
+"\n"
+"Примечание: при включённом защитном кожухе, юбка будет печататься на "
+"расстоянии от модели, которое задаётся параметром «Расстояние до юбки». Если "
+"активны кайма, она может пересекаться с юбкой. Чтобы избежать этого, "
+"увеличьте значение «Расстояние до юбки».\n"
msgid "Limited"
msgstr "Ограничено"
@@ -12862,7 +13056,7 @@ msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed."
msgstr "Скорость печати юбки (мм/с). 0 - скорость экструзии слоя по умолчанию."
msgid "Skirt minimum extrusion length"
-msgstr ""
+msgstr "Мин. длина экструзии юбки"
msgid ""
"Minimum filament extrusion length in mm when printing the skirt. Zero means "
@@ -12871,14 +13065,18 @@ msgid ""
"Using a non zero value is useful if the printer is set up to print without a "
"prime line."
msgstr ""
+"Минимальная длина экструзии в мм при печати юбки. 0 - функция отключена.\n"
+"\n"
+"Использование ненулевого значения полезно, если принтер настроен на печать "
+"без стартовой линии очистки сопла."
msgid ""
"The printing speed in exported gcode will be slowed down, when the estimated "
"layer time is shorter than this value, to get better cooling for these layers"
msgstr ""
"Скорость печати в экспортированном G-коде будет замедлена, если расчётное "
-"время печати слоя меньше этого значения, для обеспечения лучшего охлаждения "
-"этих слоёв."
+"время печати слоя меньше заданного здесь значения, для обеспечения лучшего "
+"охлаждения этих слоёв."
msgid "Minimum sparse infill threshold"
msgstr "Мин. порог разреженного заполнения"
@@ -13668,7 +13866,7 @@ msgid "Spacing of purge lines on the wipe tower."
msgstr "Расстояние между линиями очистки на черновой башне."
msgid "Maximum wipe tower print speed"
-msgstr ""
+msgstr "Максимальная скорость печати черновой башни"
msgid ""
"The maximum print speed when purging in the wipe tower and printing the wipe "
@@ -13691,6 +13889,17 @@ msgid ""
"For the wipe tower external perimeters the internal perimeter speed is used "
"regardless of this setting."
msgstr ""
+"Максимальная скорость печати при очистке в черновую башню и печати "
+"разреженных слоёв черновой башни. \n"
+"\n"
+"Увеличение этой скорости может повлиять на устойчивость башни, а также "
+"увеличить силу столкновения сопла с каплями, которые могут образовываться на "
+"черновой башне.\n"
+"\n"
+"Прежде чем увеличивать этот параметр выше установленного по умолчанию "
+"значения 90 мм/с, убедитесь, что ваш принтер способен работать на повышенных "
+"скоростях и что образование соплей при смене инструмента хорошо "
+"контролируется."
msgid "Wipe tower extruder"
msgstr "Экструдер черновой башни"
@@ -14467,7 +14676,7 @@ msgid "load_obj: failed to parse"
msgstr "load_obj: ошибка обработки"
msgid "load mtl in obj: failed to parse"
-msgstr ""
+msgstr "Загрузка mtl в obj: не удалось обработать"
msgid "The file contains polygons with more than 4 vertices."
msgstr "Файл содержит многоугольники с более чем 4 вершинами."
@@ -14595,6 +14804,7 @@ msgstr "Пожалуйста, выберите пруток для калибр
msgid "The input value size must be 3."
msgstr "Размер входного значения должен быть равен 3."
+# ???
msgid ""
"This machine type can only hold 16 history results per nozzle. You can "
"delete the existing historical results and then start calibration. Or you "
@@ -14602,6 +14812,11 @@ msgid ""
"historical results. \n"
"Do you still want to continue the calibration?"
msgstr ""
+"Этот тип машины может хранить для каждого сопла только 16 последних "
+"результатов. Вы можете удалить существующие результаты, а затем запустить "
+"калибровку. Или вы можете продолжить калибровку, но результаты калибровки не "
+"будут сохранены. \n"
+"Хотите продолжить калибровку?"
msgid "Connecting to printer..."
msgstr "Подключение к принтеру..."
@@ -14626,6 +14841,8 @@ msgid ""
"This machine type can only hold %d history results per nozzle. This result "
"will not be saved."
msgstr ""
+"Этот тип машины может хранить для каждого сопла только %d последних "
+"результатов. Этот результат не будет сохранён."
msgid "Internal Error"
msgstr "Внутренняя ошибка"
@@ -14675,10 +14892,10 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
@@ -14696,9 +14913,9 @@ msgstr ""
"смене, что в большинстве случаев позволяет получить хороший результат.\n"
"\n"
"Обратите внимание, что есть несколько случаев, когда результат калибровки "
-"будет недостоверным. Это использование для калибровки текстурированной "
-"печатной пластины и когда у печатной пластины плохая адгезия с материалом. "
-"Более подробную информацию можно найти на нашем вики-сайте.\n"
+"будет недостоверным, например, когда у печатной пластины плохая адгезия с "
+"материалом. Улучшить адгезию можно, помыв печатную пластину или нанеся на "
+"неё клей. Более подробную информацию можно найти на нашем вики-сайте.\n"
"\n"
"По нашим тестам, результаты калибровки имеют погрешность примерно 10%, что "
"может приводить к разным результатам при каждой калибровке. Мы продолжаем "
@@ -14838,26 +15055,16 @@ msgstr "Максимальная длина имени 40 символов."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
-"Будет сохранен только один из результатов с таким же именем. Вы уверены, что "
+"Будет сохранён только один из результатов с таким же именем. Вы уверены, что "
"хотите перезаписать другие результаты?"
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Результат калибровки с таким именем уже существует: %s. Будет сохранён "
-"только один результат с таким же именем. Вы уверены, что хотите перезаписать "
-"текущий результат?"
-
msgid "Please find the best line on your plate"
msgstr "Пожалуйста, найдите лучшую линию на столе"
-msgid "Please find the cornor with perfect degree of extrusion"
-msgstr "Пожалуйста, найдите угол с идеальной степенью экструзии"
+msgid "Please find the corner with perfect degree of extrusion"
+msgstr "Пожалуйста, найдите угол с идеальной экструзией"
msgid "Input Value"
msgstr "Входное значение"
@@ -15011,6 +15218,8 @@ msgstr "Действие"
#, c-format, boost-format
msgid "This machine type can only hold %d history results per nozzle."
msgstr ""
+"Этот тип машины может хранить для каждого сопла только %d последних "
+"результатов."
msgid "Edit Flow Dynamics Calibration"
msgstr "Редактировать калибровку динамики потока"
@@ -15112,6 +15321,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr "PCTG"
+
msgid "TPU"
msgstr "TPU"
@@ -15208,6 +15420,9 @@ msgstr "В качестве разделителя каталогов испол
msgid "Upload to storage"
msgstr "Загрузить в хранилище"
+msgid "Switch to Device tab after upload."
+msgstr "После загрузки переключиться на вкладку «Принтер»."
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "Имя загружаемого файла не заканчивается на \"%s\". Хотите продолжить?"
@@ -15436,8 +15651,8 @@ msgstr ""
"Хотите перезаписать его?"
msgid ""
-"We would rename the presets as \"Vendor Type Serial @printer you selected"
-"\". \n"
+"We would rename the presets as \"Vendor Type Serial @printer you "
+"selected\". \n"
"To add preset for more printers, Please go to printer selection"
msgstr ""
"Мы переименуем профиль в \"Производитель Тип Серия @выбранный принтер\".\n"
@@ -15642,8 +15857,9 @@ msgstr ""
"При необходимости перейдите в настройку прутка для редактирования настроек "
"профиля.\n"
"Обратите внимание, что температура сопла, температура нагреваемого стола и "
-"максимальная объёмная скорость существенно влияют на качество печати. "
-"Пожалуйста, тщательнее подбирайте настройки."
+"максимальная объёмная \n"
+"скорость существенно влияют на качество печати. Пожалуйста, тщательнее "
+"подбирайте настройки."
msgid ""
"\n"
@@ -15653,12 +15869,19 @@ msgid ""
"page. \n"
"Click \"Sync user presets\" to enable the synchronization function."
msgstr ""
+"\n"
+"\n"
+"Программа обнаружила, что функция синхронизации пользовательских профилей "
+"отключена, \n"
+"что может привести к неудачной настройке прутка на вкладке «Принтер». \n"
+"Нажмите «Синхронизировать пользовательские профили», чтобы включить функцию "
+"синхронизации."
msgid "Printer Setting"
msgstr "Настройка принтера"
msgid "Printer config bundle(.orca_printer)"
-msgstr "Printer config bundle(.orca_printer) - Пакет конфигурации принтеров"
+msgstr "Printer config bundle(.orca_printer) - Пакет конфигурации принтера"
msgid "Filament bundle(.orca_filament)"
msgstr "Filament bundle(.orca_filament) - Пакет конфигурации прутка"
@@ -15667,7 +15890,7 @@ msgid "Printer presets(.zip)"
msgstr "Printer presets(.zip) - Профили принтера"
msgid "Filament presets(.zip)"
-msgstr "Filament presets (.zip) - Профили прутков"
+msgstr "Filament presets (.zip) - Профили прутка"
msgid "Process presets(.zip)"
msgstr "Process presets (.zip) - Профили процесса"
@@ -15704,8 +15927,8 @@ msgid ""
"Printer and all the filament&&process presets that belongs to the printer. \n"
"Can be shared with others."
msgstr ""
-"Принтер и все профили процесса относящиеся к принтеру. \n"
-"Можно поделиться с другими пользователями."
+"Принтер и все профили прутка и процесса печати относящиеся к принтеру. \n"
+"Можно поделиться с другими пользователями"
msgid ""
"User's fillment preset set. \n"
@@ -15838,7 +16061,7 @@ msgstr "Ежедневные советы "
#, c-format, boost-format
msgid "nozzle memorized: %.1f %s"
-msgstr ""
+msgstr "сопло сохранённое: %.1f %s"
msgid ""
"Your nozzle diameter in preset is not consistent with memorized nozzle "
@@ -15883,12 +16106,20 @@ msgstr "Вы уверены, что хотите выйти из системы?
msgid "Refresh Printers"
msgstr "Обновить принтеры"
+# ???
+msgid "View print host webui in Device tab"
+msgstr "Веб-интерфейс хоста печати на вкладке «Принтер»"
+
+# ???
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr "Заменить вкладку устройств BambuLab на веб-интерфейс хоста печати"
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
msgstr ""
-"Файл корневого сертификата HTTPS не обязателен. Он необходим только при "
-"использовании HTTPS с самоподписанным сертификатом."
+"Файл корневого сертификата HTTPS не обязателен. Он необходим только \n"
+"при использовании HTTPS с самоподписанным сертификатом."
msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*"
msgstr "Файлы сертификатов (*.crt, *.pem)|*.crt;*.pem|Все файлы|*.*"
@@ -16320,21 +16551,17 @@ msgstr "Соединение с SimplyPrint успешно установлен
msgid "Could not connect to SimplyPrint"
msgstr "Не удалось подключиться к SimplyPrint"
+msgid "Internal error"
+msgstr "Внутренняя ошибка"
+
+msgid "Unknown error"
+msgstr "Неизвестная ошибка"
+
msgid "SimplyPrint account not linked. Go to Connect options to set it up."
msgstr ""
"Учётная запись SimplyPrint не привязана. Перейдите в раздел подключения для "
"настройки."
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
-msgstr ""
-"Размер файла превышает лимит загрузки в 100 МБ. Пожалуйста, загрузите файл "
-"через панель."
-
-msgid "Unknown error"
-msgstr "Неизвестная ошибка"
-
msgid "Connection to Flashforge works correctly."
msgstr "Соединение с Flashforge успешно установлено."
@@ -16743,239 +16970,3 @@ msgstr ""
"Знаете ли вы, что при печати материалами, склонными к короблению, таких как "
"ABS, повышение температуры подогреваемого стола может снизить эту "
"вероятность?"
-
-#~ msgid "X"
-#~ msgstr "X"
-
-#~ msgid "Y"
-#~ msgstr "Y"
-
-#~ msgid ""
-#~ "Order of wall/infill. When the tickbox is unchecked the walls are printed "
-#~ "first, which works best in most cases.\n"
-#~ "\n"
-#~ "Printing walls first may help with extreme overhangs as the walls have "
-#~ "the neighbouring infill to adhere to. However, the infill will slighly "
-#~ "push out the printed walls where it is attached to them, resulting in a "
-#~ "worse external surface finish. It can also cause the infill to shine "
-#~ "through the external surfaces of the part."
-#~ msgstr ""
-#~ "Последовательность печати периметров/заполнения. Когда отключено, сначала "
-#~ "печатаются периметры, что в большинстве случаев работает лучше всего.\n"
-#~ "\n"
-#~ "Печать периметров первыми может помочь при экстремальных нависаниях, "
-#~ "поскольку периметры должны прилегать к соседнему заполнению. Однако в "
-#~ "этом случае последующее заполнение будет слегка выдавливать напечатанные "
-#~ "периметры в местах примыкания к ним, что приводит к ухудшению качества "
-#~ "внешней поверхности. Кроме того, это может приводить к тому, что "
-#~ "заполнение будет просвечиваться через внешнюю поверхность детали."
-
-#~ msgid "V"
-#~ msgstr "V"
-
-#~ msgid ""
-#~ "Orca Slicer is based on BambuStudio by Bambulab, which is from "
-#~ "PrusaSlicer by Prusa Research. PrusaSlicer is from Slic3r by Alessandro "
-#~ "Ranellucci and the RepRap community"
-#~ msgstr ""
-#~ "Orca Slicer основан на BambuStudio от компании Bambulab, которая взяла за "
-#~ "основу PrusaSlicer от компании Prusa Research. PrusaSlicer же основан на "
-#~ "Slic3r от Alessandro Ranellucci и разработках сообщества RepRap."
-
-#~ msgid "Export &Configs"
-#~ msgstr "Экспорт конфигурации"
-
-#~ msgid "Infill direction"
-#~ msgstr "Угол печати заполнения"
-
-#~ msgid ""
-#~ "Enable this to get a G-code file which has G2 and G3 moves. And the "
-#~ "fitting tolerance is same with resolution"
-#~ msgstr ""
-#~ "Включите, если хотите использовать в G-коде команды перемещения по дуге "
-#~ "окружности G2/G3. Значение допуска траектории такое же как разрешение G-"
-#~ "кода выше."
-
-#~ msgid ""
-#~ "Infill area is enlarged slightly to overlap with wall for better bonding. "
-#~ "The percentage value is relative to line width of sparse infill"
-#~ msgstr ""
-#~ "Параметр указывает на сколько процентов заполнение будет перекрываться с "
-#~ "периметром для лучшего соединения друг с другом."
-
-#~ msgid "Export Configs"
-#~ msgstr "Экспорт конфигураций"
-
-#~ msgid "Unload Filament"
-#~ msgstr "Выгрузить"
-
-#~ msgid ""
-#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to "
-#~ "automatically load or unload filiament."
-#~ msgstr ""
-#~ "Выберите слот АСПП, затем нажмите кнопку «Загрузить» или «Выгрузить» для "
-#~ "автоматической загрузки или выгрузки прутка."
-
-#~ msgid "MC"
-#~ msgstr "Плата управления"
-
-#~ msgid "MainBoard"
-#~ msgstr "Материнская плата"
-
-#~ msgid "TH"
-#~ msgstr "TH"
-
-#~ msgid "XCam"
-#~ msgstr "XCam"
-
-#~ msgid "HMS"
-#~ msgstr "Здоровье принтера"
-
-#~ msgid "- ℃"
-#~ msgstr "- ℃"
-
-#~ msgid "0.5"
-#~ msgstr "0.5"
-
-#~ msgid "0.005"
-#~ msgstr "0.005"
-
-#~ msgid "active"
-#~ msgstr "активный"
-
-#~ msgid "Jump to layer"
-#~ msgstr "Перейти к слою"
-
-#~ msgid "Cabin humidity"
-#~ msgstr "Влажность внутри"
-
-#~ msgid ""
-#~ "Green means that AMS humidity is normal, orange represent humidity is "
-#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)"
-#~ msgstr ""
-#~ "Зелёный цвет означает, что влажность в системе АСПП нормальная, оранжевый "
-#~ "- высокая, красный - слишком высокая. Чем ниже значение гигрометра, тем "
-#~ "лучше."
-
-#~ msgid "Desiccant status"
-#~ msgstr "Состояние влагопоглотителя"
-
-#~ msgid ""
-#~ "A desiccant status lower than two bars indicates that desiccant may be "
-#~ "inactive. Please change the desiccant.(The bars: higher the better.)"
-#~ msgstr ""
-#~ "Состояние влагопоглотителя (силикагеля) ниже двух делений указывает на "
-#~ "то, что он может уже не выполнять свою функцию. Пожалуйста, замените его. "
-#~ "Чем больше делений на индикаторе, тем лучше."
-
-#~ msgid ""
-#~ "Note: When the lid is open or the desiccant pack is changed, it can take "
-#~ "hours or a night to absorb the moisture. Low temperatures also slow down "
-#~ "the process. During this time, the indicator may not represent the "
-#~ "chamber accurately."
-#~ msgstr ""
-#~ "Примечание: при открытой крышке или заменённом влагопоглотителе, может "
-#~ "потребоваться несколько часов или ночь для поглощения влаги. Кроме того, "
-#~ "процесс может замедлиться из-за низкой температуры окружающей среды. В "
-#~ "течение этого времени значения индикатора могут быть неточными."
-
-#~ msgid ""
-#~ "Note: if new filament is inserted during printing, the AMS will not "
-#~ "automatically read any information until printing is completed."
-#~ msgstr ""
-#~ "Примечание: если во время печати вставляется новая пластиковая нить, АСПП "
-#~ "автоматически считает информацию о ней только по завершению печати."
-
-#, boost-format
-#~ msgid "Succeed to export G-code to %1%"
-#~ msgstr "Файл G-кода экспортирован в %1%"
-
-#~ msgid "Initialize failed (No Device)!"
-#~ msgstr "Ошибка инициализации (устройство не обнаружено)!"
-
-#~ msgid "Initialize failed (No Camera Device)!"
-#~ msgstr "Ошибка инициализации (камера не обнаружена)!"
-
-#~ msgid ""
-#~ "Printer is busy downloading, Please wait for the downloading to finish."
-#~ msgstr "Принтер занят загрузкой. Дождитесь завершения загрузки."
-
-#~ msgid "Initialize failed (Not supported on the current printer version)!"
-#~ msgstr "Ошибка инициализации (не поддерживается в текущей версии принтера)!"
-
-#~ msgid "Initialize failed (Not accessible in LAN-only mode)!"
-#~ msgstr "Ошибка инициализации (Недоступно в режиме «Только LAN»)!"
-
-#~ msgid "Initialize failed (Missing LAN ip of printer)!"
-#~ msgstr ""
-#~ "Ошибка инициализации (отсутствует IP-адрес принтера в локальной сети)!"
-
-#, c-format, boost-format
-#~ msgid "Stopped [%d]!"
-#~ msgstr "Остановлено [%d]!"
-
-#, c-format, boost-format
-#~ msgid "Load failed [%d]!"
-#~ msgstr "Ошибка загрузки [%d]!"
-
-#, c-format, boost-format
-#~ msgid "No files [%d]"
-#~ msgstr "Файлы отсутствуют [%d]"
-
-#, c-format, boost-format
-#~ msgid "Load failed [%d]"
-#~ msgstr "Ошибка загрузки [%d]"
-
-#~ msgid "Failed to fetching model infomations from printer."
-#~ msgstr "Не удалось получить информацию о модели с принтера."
-
-#~ msgid "Failed to parse model infomations."
-#~ msgstr "Не удалось проанализировать информацию о модели."
-
-#~ msgid "Connection lost. Please retry."
-#~ msgstr "Соединение потеряно. Пожалуйста, повторите попытку."
-
-#~ msgid "File not exists."
-#~ msgstr "Файл не существует."
-
-#~ msgid ""
-#~ "Unable to perform boolean operation on model meshes. Only positive parts "
-#~ "will be exported."
-#~ msgstr ""
-#~ "Невозможно выполнить булевы операции над сетками модели. Будут "
-#~ "экспортированы только положительные части."
-
-#, boost-format
-#~ msgid ""
-#~ "You have changed some settings of preset \"%1%\". \n"
-#~ "Would you like to keep these changed settings (new value) after switching "
-#~ "preset?"
-#~ msgstr ""
-#~ "Вы изменили некоторые параметры профиля \"%1%\". \n"
-#~ "Хотите сохранить эти изменения (новые значения)?"
-
-#~ msgid ""
-#~ "You have changed some preset settings. \n"
-#~ "Would you like to keep these changed settings (new value) after switching "
-#~ "preset?"
-#~ msgstr ""
-#~ "Вы изменили некоторые параметры профиля.\n"
-#~ "Хотите сохранить эти изменения (новые значения)?"
-
-#~ msgid " ℃"
-#~ msgstr " ℃"
-
-#~ msgid ""
-#~ "Please go to filament setting to edit your presets if you need.\n"
-#~ "Please note that nozzle temperature, hot bed temperature, and maximum "
-#~ "volumetric speed have a significant impact on printing quality. Please "
-#~ "set them carefully."
-#~ msgstr ""
-#~ "При необходимости перейдите в настройку прутка для редактирования "
-#~ "настроек профиля.\n"
-#~ "Пожалуйста, обратите внимание, что температура сопла, температура "
-#~ "нагреваемого стола и максимальная объёмная скорость существенно влияют на "
-#~ "качество печати. Пожалуйста, тщательнее подбирайте настройки."
-
-#~ msgid "AMS %s"
-#~ msgstr "АСПП №%s"
diff --git a/localization/i18n/sv/OrcaSlicer_sv.po b/localization/i18n/sv/OrcaSlicer_sv.po
index 7ac6e1d28e..dd1af9b303 100644
--- a/localization/i18n/sv/OrcaSlicer_sv.po
+++ b/localization/i18n/sv/OrcaSlicer_sv.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"Language: sv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -2799,11 +2799,13 @@ msgstr "Är du säker på att du vill rensa filament informationen?"
msgid "You need to select the material type and color first."
msgstr "Du måste först välja materialtyp och färg."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Ange ett giltigt värde (K i 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr ""
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "Ange ett giltigt värde (K i 0~0.3, N i 0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr ""
msgid "Other Color"
msgstr "Annan färg"
@@ -3214,11 +3216,11 @@ msgstr "Task Sent"
msgid "Edit multiple printers"
msgstr ""
-msgid "Select connected printetrs (0/6)"
+msgid "Select connected printers (0/6)"
msgstr ""
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
+msgid "Select Connected Printers (%d/6)"
msgstr ""
#, c-format, boost-format
@@ -3280,7 +3282,7 @@ msgstr ""
msgid "Printing Failed"
msgstr ""
-msgid "PrintingPause"
+msgid "Printing Pause"
msgstr ""
msgid "Prepare"
@@ -7007,9 +7009,6 @@ msgstr "Skicka komplett"
msgid "Error code"
msgstr "Felkod"
-msgid "Printer local connection failed, please try again."
-msgstr "Den lokala anslutningen till skrivaren misslyckades; försök igen."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr "Inget inloggningskonto, bara skrivare i LAN-läge visas"
@@ -8139,6 +8138,60 @@ msgstr "Inga uppdateringar tillgängliga."
msgid "The configuration is up to date."
msgstr "Konfigurationen är aktuell."
+msgid "Obj file Import color"
+msgstr "Obj file Import color"
+
+msgid "Specify number of colors:"
+msgstr "Specify number of colors:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "The color count should be in range [%d, %d]."
+
+msgid "Recommended "
+msgstr "Recommended "
+
+msgid "Current filament colors:"
+msgstr "Current filament colors:"
+
+msgid "Quick set:"
+msgstr "Quick set:"
+
+msgid "Color match"
+msgstr "Color match"
+
+msgid "Approximate color matching."
+msgstr "Approximate color matching."
+
+msgid "Append"
+msgstr "Append"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "Add consumable extruder after existing extruders."
+
+msgid "Reset mapped extruders."
+msgstr "Reset mapped extruders."
+
+msgid "Cluster colors"
+msgstr "Cluster colors"
+
+msgid "Map Filament"
+msgstr "Map Filament"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"Warning: The count of newly added and \n"
+" current extruders exceeds 16."
+
msgid "Ramming customization"
msgstr ""
@@ -10268,6 +10321,22 @@ msgstr ""
"och den kommer att åtminstone gå på lägsta hastighet för att minska "
"frekvensen av start och stopp"
+msgid "Don't slow down outer walls"
+msgstr ""
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+
msgid "Layer time"
msgstr "Lager tid"
@@ -13688,34 +13757,15 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"Information om Flow Dynamics Calibration finns i vår wiki.\n"
-"\n"
-"Vanligtvis är kalibreringen onödig. När du startar en utskrift i en färg/"
-"material, med alternativet \"flödesdynamisk kalibrering\" markerat i "
-"startmenyn, kommer skrivaren att följa det gamla sättet, kalibrera "
-"filamentet före utskriften; När du startar en utskrift i flera färger/"
-"material kommer skrivaren att använda standard kompensations parametern för "
-"filamentet vid varje filamentbyte, vilket ger ett bra resultat i de flesta "
-"fall.\n"
-"\n"
-"Observera att det finns några fall som gör att kalibreringsresultatet inte "
-"blir tillförlitligt: använd en strukturplatta för att göra kalibreringen; "
-"byggplattan har inte bra vidhäftning (tvätta byggplattan eller applicera "
-"lim!) ...Du kan hitta mer från vår wiki.\n"
-"\n"
-"Kalibreringsresultaten har cirka 10 procent fel i vårt test, vilket kan "
-"orsaka att resultatet inte är exakt detsamma i varje kalibrering. Vi "
-"undersöker fortfarande grundorsaken för att kunna göra förbättringar med nya "
-"uppdateringar."
msgid "When to use Flow Rate Calibration"
msgstr "När ska man använda kalibrering av flödes hastighet?"
@@ -13845,25 +13895,15 @@ msgstr "Namnet får inte innehålla mer än 40 tecken."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
"Endast ett av resultaten med samma namn kommer att sparas. Är du säker på "
"att du vill ersätta de andra resultaten?"
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Det finns redan ett tidigare kalibreringsresultat med samma namn: %s. Endast "
-"ett av resultaten med samma namn sparas. Är du säker på att du vill ersätta "
-"det tidigare resultatet?"
-
msgid "Please find the best line on your plate"
msgstr "Hitta den bästa linjen på din platta."
-msgid "Please find the cornor with perfect degree of extrusion"
+msgid "Please find the corner with perfect degree of extrusion"
msgstr "Hitta hörnet med den perfekta graden av extrudering"
msgid "Input Value"
@@ -14116,6 +14156,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU"
@@ -14200,6 +14243,9 @@ msgstr "Använd snedstreck ( / ) som katalog avgränsare om det behövs."
msgid "Upload to storage"
msgstr ""
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "Filnamnet slutar inte med \"%s\". Vill du fortsätta?"
@@ -14820,7 +14866,7 @@ msgstr "Dagliga tips"
#, c-format, boost-format
msgid "nozzle memorized: %.1f %s"
-msgstr ""
+msgstr "nozzel memorerat: %.1f %s"
msgid ""
"Your nozzle diameter in preset is not consistent with memorized nozzle "
@@ -14864,6 +14910,12 @@ msgstr ""
msgid "Refresh Printers"
msgstr "Uppdatera skrivare"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -15294,17 +15346,15 @@ msgstr ""
msgid "Could not connect to SimplyPrint"
msgstr ""
-msgid "SimplyPrint account not linked. Go to Connect options to set it up."
-msgstr ""
-
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
+msgid "Internal error"
msgstr ""
msgid "Unknown error"
msgstr ""
+msgid "SimplyPrint account not linked. Go to Connect options to set it up."
+msgstr ""
+
msgid "Connection to Flashforge works correctly."
msgstr ""
@@ -15665,6 +15715,75 @@ msgstr ""
"ABS, kan en lämplig ökning av värmebäddens temperatur minska sannolikheten "
"för vridning."
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "Ange ett giltigt värde (K i 0~0.3)"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr "Ange ett giltigt värde (K i 0~0.3, N i 0.6~2.0)"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr "Den lokala anslutningen till skrivaren misslyckades; försök igen."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "Information om Flow Dynamics Calibration finns i vår wiki.\n"
+#~ "\n"
+#~ "Vanligtvis är kalibreringen onödig. När du startar en utskrift i en färg/"
+#~ "material, med alternativet \"flödesdynamisk kalibrering\" markerat i "
+#~ "startmenyn, kommer skrivaren att följa det gamla sättet, kalibrera "
+#~ "filamentet före utskriften; När du startar en utskrift i flera färger/"
+#~ "material kommer skrivaren att använda standard kompensations parametern "
+#~ "för filamentet vid varje filamentbyte, vilket ger ett bra resultat i de "
+#~ "flesta fall.\n"
+#~ "\n"
+#~ "Observera att det finns några fall som gör att kalibreringsresultatet "
+#~ "inte blir tillförlitligt: använd en strukturplatta för att göra "
+#~ "kalibreringen; byggplattan har inte bra vidhäftning (tvätta byggplattan "
+#~ "eller applicera lim!) ...Du kan hitta mer från vår wiki.\n"
+#~ "\n"
+#~ "Kalibreringsresultaten har cirka 10 procent fel i vårt test, vilket kan "
+#~ "orsaka att resultatet inte är exakt detsamma i varje kalibrering. Vi "
+#~ "undersöker fortfarande grundorsaken för att kunna göra förbättringar med "
+#~ "nya uppdateringar."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr ""
+#~ "Endast ett av resultaten med samma namn kommer att sparas. Är du säker på "
+#~ "att du vill ersätta de andra resultaten?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "Det finns redan ett tidigare kalibreringsresultat med samma namn: %s. "
+#~ "Endast ett av resultaten med samma namn sparas. Är du säker på att du "
+#~ "vill ersätta det tidigare resultatet?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "Hitta hörnet med den perfekta graden av extrudering"
+
#~ msgid "V"
#~ msgstr "V"
diff --git a/localization/i18n/tr/OrcaSlicer_tr.po b/localization/i18n/tr/OrcaSlicer_tr.po
index 5461f97d1b..c77f305adb 100644
--- a/localization/i18n/tr/OrcaSlicer_tr.po
+++ b/localization/i18n/tr/OrcaSlicer_tr.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
-"PO-Revision-Date: 2024-06-02 22:13+0300\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
+"PO-Revision-Date: 2024-06-23 19:21+0300\n"
"Last-Translator: Olcay ÖREN\n"
"Language-Team: \n"
"Language: tr\n"
@@ -15,7 +15,7 @@ msgstr ""
"X-Generator: Poedit 3.4.4\n"
msgid "Supports Painting"
-msgstr "Destek Boyama"
+msgstr "Destek boyama"
msgid "Alt + Mouse wheel"
msgstr "Alt + Fare tekerleği"
@@ -276,7 +276,7 @@ msgid "Planar"
msgstr "Düzlemsel"
msgid "Dovetail"
-msgstr "Kırlangıç Kuyruğu"
+msgstr "Kırlangıç kuyruğu"
msgid "Auto"
msgstr "Otomatik"
@@ -339,10 +339,10 @@ msgid "Width"
msgstr "Genişlik"
msgid "Flap Angle"
-msgstr "Kanat Açısı"
+msgstr "Kanat açısı"
msgid "Groove Angle"
-msgstr "Oluk Açısı"
+msgstr "Oluk açısı"
msgid "Part"
msgstr "Parça"
@@ -436,7 +436,7 @@ msgid "Cancel"
msgstr "İptal"
msgid "Build Volume"
-msgstr "Birim Oluştur"
+msgstr "Birim oluştur"
msgid "Flip cut plane"
msgstr "Kesim düzlemini çevir"
@@ -728,8 +728,8 @@ msgid ""
"The text cannot be written using the selected font. Please try choosing a "
"different font."
msgstr ""
-"Metin seçilen yazı tipi kullanılarak yazılamıyor. Lütfen farklı bir yazı "
-"tipi seçmeyi deneyin."
+"Metin seçilen yazı tipi kullanılarak yazılamıyor. Lütfen farklı bir yazı tipi "
+"seçmeyi deneyin."
msgid "Embossed text cannot contain only white spaces."
msgstr "Kabartmalı metin yalnızca beyaz boşluklardan oluşamaz."
@@ -1010,12 +1010,12 @@ msgstr "Metni kameraya doğru yönlendirin."
#, boost-format
msgid ""
-"Can't load exactly same font(\"%1%\"). Aplication selected a similar "
-"one(\"%2%\"). You have to specify font for enable edit text."
+"Can't load exactly same font(\"%1%\"). Aplication selected a similar one(\"%2%"
+"\"). You have to specify font for enable edit text."
msgstr ""
-"Tam olarak aynı yazı tipi yüklenemiyor(\"%1%\"). Uygulama benzer bir "
-"uygulama seçti(\"%2%\"). Metni düzenlemeyi etkinleştirmek için yazı tipini "
-"belirtmeniz gerekir."
+"Tam olarak aynı yazı tipi yüklenemiyor(\"%1%\"). Uygulama benzer bir uygulama "
+"seçti(\"%2%\"). Metni düzenlemeyi etkinleştirmek için yazı tipini belirtmeniz "
+"gerekir."
msgid "No symbol"
msgstr "Sembol yok"
@@ -1270,7 +1270,7 @@ msgid "Vertex"
msgstr "Tepe noktası"
msgid "Edge"
-msgstr "Edge"
+msgstr "Kenar"
msgid "Plane"
msgstr "Düzlem"
@@ -1467,8 +1467,8 @@ msgstr "Bilgi"
msgid ""
"The OrcaSlicer configuration file may be corrupted and cannot be parsed.\n"
"OrcaSlicer has attempted to recreate the configuration file.\n"
-"Please note, application settings will be lost, but printer profiles will "
-"not be affected."
+"Please note, application settings will be lost, but printer profiles will not "
+"be affected."
msgstr ""
"OrcaSlicer konfigürasyon dosyası bozulmuş olabilir ve ayrıştırılamayabilir.\n"
"OrcaSlicer, konfigürasyon dosyasını yeniden oluşturmayı denedi.\n"
@@ -1749,7 +1749,7 @@ msgid "Text"
msgstr "Metin"
msgid "Height range Modifier"
-msgstr "Yükseklik aralığı Değiştirici"
+msgstr "Yükseklik aralığı değiştirici"
msgid "Add settings"
msgstr "Ayar ekle"
@@ -1828,7 +1828,7 @@ msgid "Flush into objects' support"
msgstr "Nesnelerin desteğine hizalayın"
msgid "Edit in Parameter Table"
-msgstr "Parametre Tablosunda Düzenle"
+msgstr "Parametre tablosunda düzenle"
msgid "Convert from inch"
msgstr "İnçten dönüştür"
@@ -1972,16 +1972,16 @@ msgid "Remove the selected plate"
msgstr "Seçilen plakayı kaldır"
msgid "Clone"
-msgstr "Klon"
+msgstr "Klon oluştur"
msgid "Simplify Model"
-msgstr "Modeli Basitleştir"
+msgstr "Modeli basitleştir"
msgid "Center"
msgstr "Merkez"
msgid "Edit Process Settings"
-msgstr "İşlem Ayarlarını Düzenle"
+msgstr "İşlem ayarlarını düzenle"
msgid "Edit print parameters for a single object"
msgstr "Tek bir nesne için yazdırma parametrelerini düzenleme"
@@ -2097,8 +2097,8 @@ msgid ""
"This action will break a cut correspondence.\n"
"After that model consistency can't be guaranteed .\n"
"\n"
-"To manipulate with solid parts or negative volumes you have to invalidate "
-"cut infornation first."
+"To manipulate with solid parts or negative volumes you have to invalidate cut "
+"infornation first."
msgstr ""
"Bu eylem kesilmiş bir yazışmayı bozacaktır.\n"
"Bundan sonra model tutarlılığı garanti edilemez.\n"
@@ -2161,8 +2161,7 @@ msgstr "İlk seçilen öğe bir nesne ise ikincisi de nesne olmalıdır."
msgid ""
"If first selected item is a part, the second one should be part in the same "
"object."
-msgstr ""
-"İlk seçilen öğe bir parça ise ikincisi aynı nesnenin parçası olmalıdır."
+msgstr "İlk seçilen öğe bir parça ise ikincisi aynı nesnenin parçası olmalıdır."
msgid "The type of the last solid object part is not to be changed."
msgstr "Son katı nesne parçasının tipi değiştirilNozullidir."
@@ -2519,16 +2518,14 @@ msgstr ""
msgid "Arranging done."
msgstr "Hizalama tamamlandı."
-msgid ""
-"Arrange failed. Found some exceptions when processing object geometries."
+msgid "Arrange failed. Found some exceptions when processing object geometries."
msgstr ""
"Hizalama başarısız oldu. Nesne geometrilerini işlerken bazı istisnalar "
"bulundu."
#, c-format, boost-format
msgid ""
-"Arrangement ignored the following objects which can't fit into a single "
-"bed:\n"
+"Arrangement ignored the following objects which can't fit into a single bed:\n"
"%s"
msgstr ""
"Hizalama tek tablaya sığmayan aşağıdaki nesneler göz ardı edildi:\n"
@@ -2628,8 +2625,7 @@ msgstr ""
"deneyin."
msgid "Print file not found, Please slice it again and send it for printing."
-msgstr ""
-"Yazdırma dosyası bulunamadı. Lütfen tekrar dilimleyip baskıya gönderin."
+msgstr "Yazdırma dosyası bulunamadı. Lütfen tekrar dilimleyip baskıya gönderin."
msgid ""
"Failed to upload print file to FTP. Please check the network status and try "
@@ -2685,8 +2681,8 @@ msgid "Importing SLA archive"
msgstr "SLA arşivi içe aktarılıyor"
msgid ""
-"The SLA archive doesn't contain any presets. Please activate some SLA "
-"printer preset first before importing that SLA archive."
+"The SLA archive doesn't contain any presets. Please activate some SLA printer "
+"preset first before importing that SLA archive."
msgstr ""
"SLA arşivi herhangi bir ön ayar içermez. Lütfen SLA arşivini içe aktarmadan "
"önce bazı SLA yazıcı ön ayarlarını etkinleştirin."
@@ -2698,8 +2694,8 @@ msgid "Importing done."
msgstr "İçe aktarma tamamlandı."
msgid ""
-"The imported SLA archive did not contain any presets. The current SLA "
-"presets were used as fallback."
+"The imported SLA archive did not contain any presets. The current SLA presets "
+"were used as fallback."
msgstr ""
"İçe aktarılan SLA arşivi herhangi bir ön ayar içermiyordu. Geçerli SLA ön "
"ayarları geri dönüş olarak kullanıldı."
@@ -2756,8 +2752,8 @@ msgid ""
"This software uses open source components whose copyright and other "
"proprietary rights belong to their respective owners"
msgstr ""
-"Bu yazılım, telif hakkı ve diğer mülkiyet hakları ilgili sahiplerine ait "
-"olan açık kaynaklı bileşenleri kullanır"
+"Bu yazılım, telif hakkı ve diğer mülkiyet hakları ilgili sahiplerine ait olan "
+"açık kaynaklı bileşenleri kullanır"
#, c-format, boost-format
msgid "About %s"
@@ -2771,8 +2767,7 @@ msgstr "OrcaSlicer, BambuStudio, PrusaSlicer ve SuperSlicer'ı temel alır."
msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch."
msgstr ""
-"BambuStudio orijinal olarak PrusaResearch'ün PrusaSlicer'ını temel "
-"almaktadır."
+"BambuStudio orijinal olarak PrusaResearch'ün PrusaSlicer'ını temel almaktadır."
msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci."
msgstr ""
@@ -2845,11 +2840,13 @@ msgstr "Filament bilgisini temizlemek istediğinizden emin misiniz?"
msgid "You need to select the material type and color first."
msgstr "Önce malzeme türünü ve rengini seçmeniz gerekir."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Lütfen geçerli bir değer girin (K in 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr "Lütfen geçerli bir değer girin (K %.1f~%.1f içinde)"
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "Lütfen geçerli bir değer girin (K in 0~0.3, N in 0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr "Lütfen geçerli bir değer girin (K %.1f~%.1f içinde, N %.1f~%.1f içinde)"
msgid "Other Color"
msgstr "Diğer renk"
@@ -2861,9 +2858,9 @@ msgid "Dynamic flow calibration"
msgstr "Dinamik akış kalibrasyonu"
msgid ""
-"The nozzle temp and max volumetric speed will affect the calibration "
-"results. Please fill in the same values as the actual printing. They can be "
-"auto-filled by selecting a filament preset."
+"The nozzle temp and max volumetric speed will affect the calibration results. "
+"Please fill in the same values as the actual printing. They can be auto-"
+"filled by selecting a filament preset."
msgstr ""
"Nozul sıcaklığı ve maksimum hacimsel hız kalibrasyon sonuçlarını "
"etkileyecektir. Lütfen gerçek yazdırmayla aynı değerleri girin. Bir filament "
@@ -2998,8 +2995,7 @@ msgid ""
"When the current material run out, the printer will continue to print in the "
"following order."
msgstr ""
-"Mevcut malzeme bittiğinde yazıcı aşağıdaki sırayla yazdırmaya devam "
-"edecektir."
+"Mevcut malzeme bittiğinde yazıcı aşağıdaki sırayla yazdırmaya devam edecektir."
msgid "Group"
msgstr "Grup"
@@ -3037,8 +3033,8 @@ msgid "Insertion update"
msgstr "Ekleme güncellemesi"
msgid ""
-"The AMS will automatically read the filament information when inserting a "
-"new Bambu Lab filament. This takes about 20 seconds."
+"The AMS will automatically read the filament information when inserting a new "
+"Bambu Lab filament. This takes about 20 seconds."
msgstr ""
"AMS, yeni bir Bambu Lab filamenti takıldığında filament bilgilerini otomatik "
"olarak okuyacaktır. Bu yaklaşık 20 saniye sürer."
@@ -3061,17 +3057,16 @@ msgid "Power on update"
msgstr "Güncellemeyi aç"
msgid ""
-"The AMS will automatically read the information of inserted filament on "
-"start-up. It will take about 1 minute.The reading process will roll filament "
-"spools."
+"The AMS will automatically read the information of inserted filament on start-"
+"up. It will take about 1 minute.The reading process will roll filament spools."
msgstr ""
"AMS, başlangıçta takılan filamentin bilgilerini otomatik olarak okuyacaktır. "
"Yaklaşık 1 dakika sürecektir. Okuma işlemi filament makaralarını saracaktır."
msgid ""
-"The AMS will not automatically read information from inserted filament "
-"during startup and will continue to use the information recorded before the "
-"last shutdown."
+"The AMS will not automatically read information from inserted filament during "
+"startup and will continue to use the information recorded before the last "
+"shutdown."
msgstr ""
"AMS, başlatma sırasında takılan filamentden bilgileri otomatik olarak okumaz "
"ve son kapatmadan önce kaydedilen bilgileri kullanmaya devam eder."
@@ -3085,8 +3080,8 @@ msgid ""
"automatically."
msgstr ""
"AMS, filament bilgisi güncellendikten sonra Bambu filamentin kalan "
-"kapasitesini tahmin edecek. Yazdırma sırasında kalan kapasite otomatik "
-"olarak güncellenecektir."
+"kapasitesini tahmin edecek. Yazdırma sırasında kalan kapasite otomatik olarak "
+"güncellenecektir."
msgid "AMS filament backup"
msgstr "AMS filament yedeklemesi"
@@ -3118,8 +3113,8 @@ msgid ""
"Failed to download the plug-in. Please check your firewall settings and vpn "
"software, check and retry."
msgstr ""
-"Eklenti indirilemedi. Lütfen güvenlik duvarı ayarlarınızı ve vpn "
-"yazılımınızı kontrol edin, kontrol edip yeniden deneyin."
+"Eklenti indirilemedi. Lütfen güvenlik duvarı ayarlarınızı ve vpn yazılımınızı "
+"kontrol edin, kontrol edip yeniden deneyin."
msgid ""
"Failed to install the plug-in. Please check whether it is blocked or deleted "
@@ -3207,8 +3202,8 @@ msgid ""
"device. The corrupted output G-code is at %1%.tmp."
msgstr ""
"Geçici G kodunun çıkış G koduna kopyalanması başarısız oldu. Hedef cihazda "
-"sorun olabilir, lütfen tekrar dışa aktarmayı veya farklı bir cihaz "
-"kullanmayı deneyin. Bozuk çıktı G kodu %1%.tmp konumunda."
+"sorun olabilir, lütfen tekrar dışa aktarmayı veya farklı bir cihaz kullanmayı "
+"deneyin. Bozuk çıktı G kodu %1%.tmp konumunda."
#, boost-format
msgid ""
@@ -3272,11 +3267,11 @@ msgstr "Görev Gönderildi"
msgid "Edit multiple printers"
msgstr "Birden fazla yazıcıyı düzenleme"
-msgid "Select connected printetrs (0/6)"
+msgid "Select connected printers (0/6)"
msgstr "Bağlı yazıcıları seçin (0/6)"
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
+msgid "Select Connected Printers (%d/6)"
msgstr "Bağlı Yazıcıları Seçin (%d/6)"
#, c-format, boost-format
@@ -3338,7 +3333,7 @@ msgstr "Yazdırma Bitti"
msgid "Printing Failed"
msgstr "Yazdırma Başarısız"
-msgid "PrintingPause"
+msgid "Printing Pause"
msgstr "Yazdırma Duraklatıldı"
msgid "Prepare"
@@ -3438,11 +3433,11 @@ msgid "Send Options"
msgstr "Gönderme Seçenekleri"
msgid "Send to"
-msgstr ""
+msgstr "Gönderildi"
msgid ""
-"printers at the same time.(It depends on how many devices can undergo "
-"heating at the same time.)"
+"printers at the same time.(It depends on how many devices can undergo heating "
+"at the same time.)"
msgstr ""
"aynı anda kaç yazıcının ısıtma işleminden geçebileceği, aynı anda "
"ısıtılabilecek cihaz sayısına bağlıdır."
@@ -3549,8 +3544,8 @@ msgid ""
"The recommended minimum temperature is less than 190 degree or the "
"recommended maximum temperature is greater than 300 degree.\n"
msgstr ""
-"Önerilen minimum sıcaklık 190 dereceden azdır veya önerilen maksimum "
-"sıcaklık 300 dereceden yüksektir.\n"
+"Önerilen minimum sıcaklık 190 dereceden azdır veya önerilen maksimum sıcaklık "
+"300 dereceden yüksektir.\n"
msgid ""
"The recommended minimum temperature cannot be higher than the recommended "
@@ -3587,13 +3582,13 @@ msgstr ""
#, c-format, boost-format
msgid ""
-"Current chamber temperature is higher than the material's safe temperature,"
-"it may result in material softening and clogging.The maximum safe "
-"temperature for the material is %d"
+"Current chamber temperature is higher than the material's safe temperature,it "
+"may result in material softening and clogging.The maximum safe temperature "
+"for the material is %d"
msgstr ""
-"Mevcut hazne sıcaklığı malzemenin güvenli sıcaklığından yüksektir, "
-"malzemenin yumuşamasına ve tıkanmasına neden olabilir Malzeme için maksimum "
-"güvenli sıcaklık %d'dir"
+"Mevcut hazne sıcaklığı malzemenin güvenli sıcaklığından yüksektir, malzemenin "
+"yumuşamasına ve tıkanmasına neden olabilir Malzeme için maksimum güvenli "
+"sıcaklık %d'dir"
msgid ""
"Too small layer height.\n"
@@ -3647,16 +3642,16 @@ msgstr ""
"Değer 0'a sıfırlanacaktır."
msgid ""
-"Alternate extra wall does't work well when ensure vertical shell thickness "
-"is set to All. "
+"Alternate extra wall does't work well when ensure vertical shell thickness is "
+"set to All. "
msgstr ""
-"Alternatif ekstra duvar, dikey kabuk kalınlığının Tümü olarak "
-"ayarlandığından emin olunduğunda iyi çalışmaz. "
+"Alternatif ekstra duvar, dikey kabuk kalınlığının Tümü olarak ayarlandığından "
+"emin olunduğunda iyi çalışmaz. "
msgid ""
"Change these settings automatically? \n"
-"Yes - Change ensure vertical shell thickness to Moderate and enable "
-"alternate extra wall\n"
+"Yes - Change ensure vertical shell thickness to Moderate and enable alternate "
+"extra wall\n"
"No - Dont use alternate extra wall"
msgstr ""
"Bu ayarlar otomatik olarak değiştirilsin mi? \n"
@@ -3733,8 +3728,7 @@ msgid ""
"No - Give up using spiral mode this time"
msgstr ""
"Bu ayarlar otomatik olarak değiştirilsin mi?\n"
-"Evet - Bu ayarları değiştirin ve spiral modunu otomatik olarak "
-"etkinleştirin\n"
+"Evet - Bu ayarları değiştirin ve spiral modunu otomatik olarak etkinleştirin\n"
"Hayır - Bu sefer spiral modunu kullanmaktan vazgeçin"
msgid "Auto bed leveling"
@@ -3867,9 +3861,9 @@ msgid "Update failed."
msgstr "Güncelleme başarısız."
msgid ""
-"The current chamber temperature or the target chamber temperature exceeds "
-"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/"
-"TPU) is not allowed to be loaded."
+"The current chamber temperature or the target chamber temperature exceeds 45℃."
+"In order to avoid extruder clogging,low temperature filament(PLA/PETG/TPU) is "
+"not allowed to be loaded."
msgstr ""
"Mevcut hazne sıcaklığı veya hedef hazne sıcaklığı 45 ° C'yi aşıyor Ekstruder "
"tıkanmasını önlemek için düşük sıcaklıkta filament (PLA / PETG / TPU) "
@@ -3896,8 +3890,7 @@ msgstr ""
msgid "Failed to start printing job"
msgstr "Yazdırma işi başlatılamadı"
-msgid ""
-"This calibration does not support the currently selected nozzle diameter"
+msgid "This calibration does not support the currently selected nozzle diameter"
msgstr "Bu kalibrasyon, şu anda seçilen nozzle çapını desteklememektedir"
msgid "Current flowrate cali param is invalid"
@@ -3922,12 +3915,12 @@ msgid ""
"Damp PVA will become flexible and get stuck inside AMS,please take care to "
"dry it before use."
msgstr ""
-"Nemli PVA esnekleşecek ve AMS'nin içine sıkışacaktır, lütfen kullanmadan "
-"önce kurutmaya dikkat edin."
+"Nemli PVA esnekleşecek ve AMS'nin içine sıkışacaktır, lütfen kullanmadan önce "
+"kurutmaya dikkat edin."
msgid ""
-"CF/GF filaments are hard and brittle, It's easy to break or get stuck in "
-"AMS, please use with caution."
+"CF/GF filaments are hard and brittle, It's easy to break or get stuck in AMS, "
+"please use with caution."
msgstr ""
"CF/GF filamentleri sert ve kırılgandır. AMS'de kırılması veya sıkışması "
"kolaydır, lütfen dikkatli kullanın."
@@ -4032,13 +4025,13 @@ msgstr ""
msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
-msgstr ""
+msgstr "Geçersiz giriş biçimi. Beklenen boyut vektörü biçimi: \"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "Girilen değer limit dışı"
msgid "Some extension in the input is invalid"
-msgstr ""
+msgstr "Girilen bazı uzantılar geçersiz"
#, boost-format
msgid "Invalid format. Expected vector format: \"%1%\""
@@ -4141,7 +4134,7 @@ msgid "Percent"
msgstr "Yüzde"
msgid "Used filament"
-msgstr "Kullanılan filament"
+msgstr "Kullanılan"
msgid "Layer Height (mm)"
msgstr "Katman Yüksekliği (mm)"
@@ -4216,7 +4209,7 @@ msgid "Normal mode"
msgstr "Normal mod"
msgid "Total Filament"
-msgstr "Total Filament"
+msgstr "Toplam filament"
msgid "Model Filament"
msgstr "Model Filament"
@@ -4348,7 +4341,7 @@ msgid "Split to parts"
msgstr "Parçalara bölme"
msgid "Assembly View"
-msgstr "Montaj Görünümü"
+msgstr "Montaj görünümü"
msgid "Select Plate"
msgstr "Plaka Seç"
@@ -4835,7 +4828,7 @@ msgid "Retraction test"
msgstr "Geri çekme testi"
msgid "Orca Tolerance Test"
-msgstr "Orca Tolerans Testi"
+msgstr "Orca tolerans testi"
msgid "Max flowrate"
msgstr "Maksimum akış hızı"
@@ -4942,8 +4935,8 @@ msgstr[1] ""
msgid ""
"\n"
-"Hint: Make sure you have added the corresponding printer before importing "
-"the configs."
+"Hint: Make sure you have added the corresponding printer before importing the "
+"configs."
msgstr ""
"\n"
"İpucu: Yapılandırmaları içe aktarmadan önce ilgili yazıcıyı eklediğinizden "
@@ -4992,8 +4985,7 @@ msgid "Please confirm if the printer is connected."
msgstr "Lütfen yazıcının bağlı olup olmadığını onaylayın."
msgid ""
-"The printer is currently busy downloading. Please try again after it "
-"finishes."
+"The printer is currently busy downloading. Please try again after it finishes."
msgstr ""
"Yazıcı şu anda indirmeyle meşgul. Lütfen bittikten sonra tekrar deneyin."
@@ -5004,8 +4996,7 @@ msgid "Problem occured. Please update the printer firmware and try again."
msgstr ""
"Sorun oluştu. Lütfen yazıcının ürün yazılımını güncelleyin ve tekrar deneyin."
-msgid ""
-"LAN Only Liveview is off. Please turn on the liveview on printer screen."
+msgid "LAN Only Liveview is off. Please turn on the liveview on printer screen."
msgstr ""
"Yalnızca LAN Canlı İzleme kapalı. Lütfen yazıcı ekranındaki canlı "
"görüntülemeyi açın."
@@ -5020,8 +5011,8 @@ msgid "Connection Failed. Please check the network and try again"
msgstr "Bağlantı Başarısız. Lütfen ağı kontrol edip tekrar deneyin"
msgid ""
-"Please check the network and try again, You can restart or update the "
-"printer if the issue persists."
+"Please check the network and try again, You can restart or update the printer "
+"if the issue persists."
msgstr ""
"Lütfen ağı kontrol edip tekrar deneyin. Sorun devam ederse yazıcıyı yeniden "
"başlatabilir veya güncelleyebilirsiniz."
@@ -5164,8 +5155,7 @@ msgid_plural ""
"You are going to delete %u files from printer. Are you sure to continue?"
msgstr[0] ""
"%u dosyasını yazıcıdan sileceksiniz. Devam edeceğinizden emin misiniz?"
-msgstr[1] ""
-"%u dosyayı yazıcıdan sileceksiniz. Devam edeceğinizden emin misiniz?"
+msgstr[1] "%u dosyayı yazıcıdan sileceksiniz. Devam edeceğinizden emin misiniz?"
msgid "Delete files"
msgstr "Dosyaları sil"
@@ -5225,8 +5215,8 @@ msgid ""
"Reconnecting the printer, the operation cannot be completed immediately, "
"please try again later."
msgstr ""
-"Yazıcıyı yeniden bağladığınızda işlem hemen tamamlanamıyor, lütfen daha "
-"sonra tekrar deneyin."
+"Yazıcıyı yeniden bağladığınızda işlem hemen tamamlanamıyor, lütfen daha sonra "
+"tekrar deneyin."
msgid "File does not exist."
msgstr "Dosya bulunmuyor."
@@ -5309,8 +5299,8 @@ msgid ""
"(The model has already been rated. Your rating will overwrite the previous "
"rating.)"
msgstr ""
-"(Model zaten derecelendirilmiştir. Derecelendirmeniz önceki "
-"derecelendirmenin üzerine yazılacaktır)"
+"(Model zaten derecelendirilmiştir. Derecelendirmeniz önceki derecelendirmenin "
+"üzerine yazılacaktır)"
msgid "Rate"
msgstr "Derecelendir"
@@ -5900,8 +5890,8 @@ msgstr "Arama plakası, nesne ve parça."
msgid ""
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
msgstr ""
-"AMS filamentleri yok. AMS bilgilerini yüklemek için lütfen 'Cihaz' "
-"sayfasında bir yazıcı seçin."
+"AMS filamentleri yok. AMS bilgilerini yüklemek için lütfen 'Cihaz' sayfasında "
+"bir yazıcı seçin."
msgid "Sync filaments with AMS"
msgstr "Filamentleri AMS ile senkronize et"
@@ -5914,8 +5904,7 @@ msgstr ""
"ayarlarını ve renklerini kaldıracaktır. Devam etmek istiyor musun?"
msgid ""
-"Already did a synchronization, do you want to sync only changes or resync "
-"all?"
+"Already did a synchronization, do you want to sync only changes or resync all?"
msgstr ""
"Zaten bir senkronizasyon yaptınız. Yalnızca değişiklikleri senkronize etmek "
"mi yoksa tümünü yeniden senkronize etmek mi istiyorsunuz?"
@@ -5930,13 +5919,13 @@ msgid "There are no compatible filaments, and sync is not performed."
msgstr "Uyumlu filament yok ve senkronizasyon gerçekleştirilmiyor."
msgid ""
-"There are some unknown filaments mapped to generic preset. Please update "
-"Orca Slicer or restart Orca Slicer to check if there is an update to system "
+"There are some unknown filaments mapped to generic preset. Please update Orca "
+"Slicer or restart Orca Slicer to check if there is an update to system "
"presets."
msgstr ""
-"Genel ön ayara eşlenen bazı bilinmeyen filamentler var. Sistem ön "
-"ayarlarında bir güncelleme olup olmadığını kontrol etmek için lütfen Orca "
-"Slicer'ı güncelleyin veya Orca Slicer'ı yeniden başlatın."
+"Genel ön ayara eşlenen bazı bilinmeyen filamentler var. Sistem ön ayarlarında "
+"bir güncelleme olup olmadığını kontrol etmek için lütfen Orca Slicer'ı "
+"güncelleyin veya Orca Slicer'ı yeniden başlatın."
#, boost-format
msgid "Do you want to save changes to \"%1%\"?"
@@ -5961,13 +5950,13 @@ msgid "Restore"
msgstr "Geri Yükleme"
msgid ""
-"The current hot bed temperature is relatively high. The nozzle may be "
-"clogged when printing this filament in a closed enclosure. Please open the "
-"front door and/or remove the upper glass."
+"The current hot bed temperature is relatively high. The nozzle may be clogged "
+"when printing this filament in a closed enclosure. Please open the front door "
+"and/or remove the upper glass."
msgstr ""
-"Mevcut sıcak yatak sıcaklığı oldukça yüksek. Bu filamenti kapalı bir "
-"muhafaza içinde bastırırken nozzle tıkanabilir. Lütfen ön kapağı açın ve/"
-"veya üst camı çıkarın."
+"Mevcut sıcak yatak sıcaklığı oldukça yüksek. Bu filamenti kapalı bir muhafaza "
+"içinde bastırırken nozzle tıkanabilir. Lütfen ön kapağı açın ve/veya üst camı "
+"çıkarın."
msgid ""
"The nozzle hardness required by the filament is higher than the default "
@@ -6030,8 +6019,8 @@ msgstr "Lütfen bunları parametre sekmelerinde düzeltin"
msgid "The 3mf has following modified G-codes in filament or printer presets:"
msgstr ""
-"3mf dosyasında filament veya yazıcı ön ayarlarında şu değiştirilmiş G-"
-"kodları bulunmaktadır:"
+"3mf dosyasında filament veya yazıcı ön ayarlarında şu değiştirilmiş G-kodları "
+"bulunmaktadır:"
msgid ""
"Please confirm that these modified G-codes are safe to prevent any damage to "
@@ -6181,7 +6170,7 @@ msgid "Do you want to replace it"
msgstr "Değiştirmek istiyor musun"
msgid "Message"
-msgstr "Mesah"
+msgstr "Mesaj"
msgid "Reload from:"
msgstr "Yeniden yükle:"
@@ -6265,8 +6254,8 @@ msgstr ""
"dosyayı indirin ve manuel olarak içe aktarın."
msgid ""
-"Importing to Orca Slicer failed. Please download the file and manually "
-"import it."
+"Importing to Orca Slicer failed. Please download the file and manually import "
+"it."
msgstr ""
"Orca Slicer'ya aktarma başarısız oldu. Lütfen dosyayı indirin ve manuel "
"olarak İçe aktarın."
@@ -6354,15 +6343,15 @@ msgstr "Dilimlenmiş dosyayı şu şekilde kaydedin:"
#, c-format, boost-format
msgid ""
-"The file %s has been sent to the printer's storage space and can be viewed "
-"on the printer."
+"The file %s has been sent to the printer's storage space and can be viewed on "
+"the printer."
msgstr ""
"%s dosyası yazıcının depolama alanına gönderildi ve yazıcıda "
"görüntülenebiliyor."
msgid ""
-"Unable to perform boolean operation on model meshes. Only positive parts "
-"will be kept. You may fix the meshes and try agian."
+"Unable to perform boolean operation on model meshes. Only positive parts will "
+"be kept. You may fix the meshes and try agian."
msgstr ""
"Model ağlarında boole işlemi gerçekleştirilemiyor. Yalnızca olumlu kısımlar "
"tutulacaktır. Kafesleri düzeltip tekrar deneyebilirsiniz."
@@ -6476,8 +6465,8 @@ msgstr ""
#, c-format, boost-format
msgid ""
"Plate% d: %s is not suggested to be used to print filament %s(%s). If you "
-"still want to do this printing, please set this filament's bed temperature "
-"to non zero."
+"still want to do this printing, please set this filament's bed temperature to "
+"non zero."
msgstr ""
"Plaka% d: %s'nin %s(%s) filamentinı yazdırmak için kullanılması önerilmez. "
"Eğer yine de bu baskıyı yapmak istiyorsanız, lütfen bu filamentin yatak "
@@ -6565,8 +6554,8 @@ msgstr "Yalnızca bir OrcaSlicer örneğine izin ver"
msgid ""
"On OSX there is always only one instance of app running by default. However "
-"it is allowed to run multiple instances of same app from the command line. "
-"In such case this settings will allow only one instance."
+"it is allowed to run multiple instances of same app from the command line. In "
+"such case this settings will allow only one instance."
msgstr ""
"OSX’te her zaman varsayılan olarak çalışan tek bir uygulama örneği vardır. "
"Ancak aynı uygulamanın birden fazla örneğinin komut satırından "
@@ -6574,9 +6563,8 @@ msgstr ""
"örneğe izin verecektir."
msgid ""
-"If this is enabled, when starting OrcaSlicer and another instance of the "
-"same OrcaSlicer is already running, that instance will be reactivated "
-"instead."
+"If this is enabled, when starting OrcaSlicer and another instance of the same "
+"OrcaSlicer is already running, that instance will be reactivated instead."
msgstr ""
"Bu etkinleştirilirse, OrcaSlicer başlatıldığında ve aynı OrcaSlicer’ın başka "
"bir örneği zaten çalışıyorken, bunun yerine bu örnek yeniden "
@@ -6668,12 +6656,11 @@ msgstr ""
"hatırlayacak ve otomatik olarak değiştirecektir."
msgid "Multi-device Management(Take effect after restarting Orca)."
-msgstr ""
-"Çoklu Cihaz Yönetimi(Studio yeniden başlatıldıktan sonra geçerli olur)."
+msgstr "Çoklu Cihaz Yönetimi(Studio yeniden başlatıldıktan sonra geçerli olur)."
msgid ""
-"With this option enabled, you can send a task to multiple devices at the "
-"same time and manage multiple devices."
+"With this option enabled, you can send a task to multiple devices at the same "
+"time and manage multiple devices."
msgstr ""
"Bu seçenek etkinleştirildiğinde, aynı anda birden fazla cihaza bir görev "
"gönderebilir ve birden fazla cihazı yönetebilirsiniz."
@@ -6724,10 +6711,10 @@ msgstr ""
"uygulama olarak ayarlar"
msgid "Associate web links to OrcaSlicer"
-msgstr ""
+msgstr "Web bağlantılarını OrcaSlicer ile ilişkilendirin"
msgid "Associate URLs to OrcaSlicer"
-msgstr ""
+msgstr "URL’leri OrcaSlicer ile ilişkilendirin"
msgid "Current association: "
msgstr "Mevcut dernek:"
@@ -6742,22 +6729,28 @@ msgid ""
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
"from Printable.com"
msgstr ""
+"Orca’nın Printable.com’daki modelleri açabilmesi için OrcaSlicer’ı "
+"prusaslicer:// bağlantılarıyla ilişkilendirin"
msgid "Associate bambustudio://"
-msgstr ""
+msgstr "Bambstudio’yu ilişkilendirin://"
msgid ""
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
"from makerworld.com"
msgstr ""
+"Orca’nın makerworld.com’daki modelleri açabilmesi için OrcaSlicer’ı "
+"bambustudio:// bağlantılarıyla ilişkilendirin"
msgid "Associate cura://"
-msgstr ""
+msgstr "Cura’yı ilişkilendirin://"
msgid ""
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
"thingiverse.com"
msgstr ""
+"Orca’nın thingiverse.com’daki modelleri açabilmesi için OrcaSlicer’ı cura:// "
+"bağlantılarıyla ilişkilendirin"
msgid "Maximum recent projects"
msgstr "Maksimum yeni proje"
@@ -6777,8 +6770,8 @@ msgstr "Otomatik yedekleme"
msgid ""
"Backup your project periodically for restoring from the occasional crash."
msgstr ""
-"Ara sıra meydana gelen çökmelerden sonra geri yüklemek için projenizi "
-"düzenli aralıklarla yedekleyin."
+"Ara sıra meydana gelen çökmelerden sonra geri yüklemek için projenizi düzenli "
+"aralıklarla yedekleyin."
msgid "every"
msgstr "her"
@@ -7134,12 +7127,8 @@ msgstr "gönderme tamamlandı"
msgid "Error code"
msgstr "Hata kodu"
-msgid "Printer local connection failed, please try again."
-msgstr "Yazıcının yerel bağlantısı başarısız oldu, lütfen tekrar deneyin."
-
msgid "No login account, only printers in LAN mode are displayed"
-msgstr ""
-"Oturum açma hesabı yok, yalnızca LAN modundaki yazıcılar görüntüleniyor"
+msgstr "Oturum açma hesabı yok, yalnızca LAN modundaki yazıcılar görüntüleniyor"
msgid "Connecting to server"
msgstr "Sunucuya baglanıyor"
@@ -7207,8 +7196,7 @@ msgstr ""
"desteklemek için lütfen yazıcının ürün yazılımını güncelleyin."
msgid ""
-"The printer firmware only supports sequential mapping of filament => AMS "
-"slot."
+"The printer firmware only supports sequential mapping of filament => AMS slot."
msgstr ""
"Yazıcı ürün yazılımı yalnızca filament => AMS yuvasının sıralı eşlemesini "
"destekler."
@@ -7269,8 +7257,8 @@ msgstr ""
msgid ""
"There are some unknown filaments in the AMS mappings. Please check whether "
-"they are the required filaments. If they are okay, press \"Confirm\" to "
-"start printing."
+"they are the required filaments. If they are okay, press \"Confirm\" to start "
+"printing."
msgstr ""
"AMS eşlemelerinde bazı bilinmeyen filamentler var. Lütfen bunların gerekli "
"filamentler olup olmadığını kontrol edin. Sorun yoksa, yazdırmayı başlatmak "
@@ -7302,8 +7290,7 @@ msgstr ""
"hasarına neden olabilir"
msgid "Please fix the error above, otherwise printing cannot continue."
-msgstr ""
-"Lütfen yukarıdaki hatayı düzeltin, aksi takdirde yazdırma devam edemez."
+msgstr "Lütfen yukarıdaki hatayı düzeltin, aksi takdirde yazdırma devam edemez."
msgid ""
"Please click the confirm button if you still want to proceed with printing."
@@ -7454,11 +7441,11 @@ msgid ""
"successes and failures of the vast number of prints by our users. We are "
"training %s to be smarter by feeding them the real-world data. If you are "
"willing, this service will access information from your error logs and usage "
-"logs, which may include information described in Privacy Policy. We will "
-"not collect any Personal Data by which an individual can be identified "
-"directly or indirectly, including without limitation names, addresses, "
-"payment information, or phone numbers. By enabling this service, you agree "
-"to these terms and the statement about Privacy Policy."
+"logs, which may include information described in Privacy Policy. We will not "
+"collect any Personal Data by which an individual can be identified directly "
+"or indirectly, including without limitation names, addresses, payment "
+"information, or phone numbers. By enabling this service, you agree to these "
+"terms and the statement about Privacy Policy."
msgstr ""
"3D Baskı topluluğunda, kendi dilimleme parametrelerimizi ve ayarlarımızı "
"düzenlerken birbirimizin başarılarından ve başarısızlıklarından öğreniyoruz. "
@@ -7509,16 +7496,16 @@ msgid "Click to reset all settings to the last saved preset."
msgstr "Tüm ayarları en son kaydedilen ön ayara sıfırlamak için tıklayın."
msgid ""
-"Prime tower is required for smooth timeplase. There may be flaws on the "
-"model without prime tower. Are you sure you want to disable prime tower?"
+"Prime tower is required for smooth timeplase. There may be flaws on the model "
+"without prime tower. Are you sure you want to disable prime tower?"
msgstr ""
"Sorunsuz timeplace için Prime Tower gereklidir. Prime tower olmayan modelde "
"kusurlar olabilir. Prime tower'ı devre dışı bırakmak istediğinizden emin "
"misiniz?"
msgid ""
-"Prime tower is required for smooth timelapse. There may be flaws on the "
-"model without prime tower. Do you want to enable prime tower?"
+"Prime tower is required for smooth timelapse. There may be flaws on the model "
+"without prime tower. Do you want to enable prime tower?"
msgstr ""
"Sorunsuz hızlandırılmış çekim için Prime Tower gereklidir. Prime tower "
"olmayan modelde kusurlar olabilir. Prime tower'ı etkinleştirmek istiyor "
@@ -7547,11 +7534,11 @@ msgstr ""
msgid ""
"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following "
-"settings: at least 2 interface layers, at least 0.1mm top z distance or "
-"using support materials on interface."
+"settings: at least 2 interface layers, at least 0.1mm top z distance or using "
+"support materials on interface."
msgstr ""
-"\"Güçlü Ağaç\" ve \"Ağaç Hibrit\" stilleri için şu ayarları öneriyoruz: en "
-"az 2 arayüz katmanı, en az 0,1 mm üst z mesafesi veya arayüzde destek "
+"\"Güçlü Ağaç\" ve \"Ağaç Hibrit\" stilleri için şu ayarları öneriyoruz: en az "
+"2 arayüz katmanı, en az 0,1 mm üst z mesafesi veya arayüzde destek "
"malzemeleri kullanılması."
msgid ""
@@ -7590,8 +7577,8 @@ msgid ""
"height limits ,this may cause printing quality issues."
msgstr ""
"Katman yüksekliği, Yazıcı Ayarları -> Ekstruder -> Katman yüksekliği "
-"sınırları bölümündeki sınırı aşıyor bu durum baskı kalitesi sorunlarına "
-"neden olabilir."
+"sınırları bölümündeki sınırı aşıyor bu durum baskı kalitesi sorunlarına neden "
+"olabilir."
msgid "Adjust to the set range automatically? \n"
msgstr "Ayarlanan aralığa otomatik olarak ayarlansın mı? \n"
@@ -7605,8 +7592,8 @@ msgstr "Atla"
msgid ""
"Experimental feature: Retracting and cutting off the filament at a greater "
"distance during filament changes to minimize flush.Although it can notably "
-"reduce flush, it may also elevate the risk of nozzle clogs or other "
-"printing complications."
+"reduce flush, it may also elevate the risk of nozzle clogs or other printing "
+"complications."
msgstr ""
"Deneysel özellik: Filament değişiklikleri sırasında, floşu en aza indirmek "
"için filamanı daha büyük bir mesafeden geri çekmek ve kesmek. Flush’u önemli "
@@ -7628,8 +7615,8 @@ msgstr ""
msgid ""
"When recording timelapse without toolhead, it is recommended to add a "
"\"Timelapse Wipe Tower\" \n"
-"by right-click the empty position of build plate and choose \"Add Primitive"
-"\"->\"Timelapse Wipe Tower\"."
+"by right-click the empty position of build plate and choose \"Add Primitive\"-"
+">\"Timelapse Wipe Tower\"."
msgstr ""
"Araç başlığı olmadan timelapse kaydederken, bir \"Timelapse Wipe Tower\" "
"eklenmesi önerilir.\n"
@@ -7678,8 +7665,8 @@ msgid ""
"the overhang degree range and wall speed is used"
msgstr ""
"Bu, çeşitli sarkma dereceleri için hızdır. Çıkıntı dereceleri çizgi "
-"genişliğinin yüzdesi olarak ifade edilir. 0 hız, sarkma derecesi aralığı "
-"için yavaşlamanın olmadığı anlamına gelir ve duvar hızı kullanılır"
+"genişliğinin yüzdesi olarak ifade edilir. 0 hız, sarkma derecesi aralığı için "
+"yavaşlamanın olmadığı anlamına gelir ve duvar hızı kullanılır"
msgid "Bridge"
msgstr "Köprü"
@@ -7779,11 +7766,11 @@ msgid "Cool plate"
msgstr "Soğuk plaka"
msgid ""
-"Bed temperature when cool plate is installed. Value 0 means the filament "
-"does not support to print on the Cool Plate"
+"Bed temperature when cool plate is installed. Value 0 means the filament does "
+"not support to print on the Cool Plate"
msgstr ""
-"Soğutma plakası takıldığında yatak sıcaklığı. 0 değeri, filamentin Cool "
-"Plate üzerine yazdırmayı desteklemediği anlamına gelir"
+"Soğutma plakası takıldığında yatak sıcaklığı. 0 değeri, filamentin Cool Plate "
+"üzerine yazdırmayı desteklemediği anlamına gelir"
msgid "Engineering plate"
msgstr "Mühendislik plakası"
@@ -7892,10 +7879,10 @@ msgstr "Tabla Ayarı"
#. TRN: First argument is parameter name, the second one is the value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
-msgstr ""
+msgstr "%1% parametresi için geçersiz değer sağlandı: %2%"
msgid "G-code flavor is switched"
-msgstr ""
+msgstr "G-kod çeşidi değiştirildi"
msgid "Cooling Fan"
msgstr "Soğutucu Fan"
@@ -7983,12 +7970,12 @@ msgid ""
"\n"
"Shall I disable it in order to enable Firmware Retraction?"
msgstr ""
-"Firmware Geri Çekme modunu kullanırken Temizleme seçeneği kullanılamaz.\n"
+"Yazılımsal Geri Çekme modunu kullanırken Temizleme seçeneği kullanılamaz.\n"
"\n"
-"Firmware Geri Çekmeyi etkinleştirmek için bunu devre dışı bırakmalı mıyım?"
+"Yazılımsal Geri Çekmeyi etkinleştirmek için bunu devre dışı bırakmalı mıyım?"
msgid "Firmware Retraction"
-msgstr "Firmware Geri Çekme"
+msgstr "Yazılımsal Geri Çekme"
msgid "Detached"
msgstr "Söküldü"
@@ -8112,16 +8099,16 @@ msgstr "\"%1%\" ön ayarı aşağıdaki kaydedilmemiş değişiklikleri içeriyo
#, boost-format
msgid ""
-"Preset \"%1%\" is not compatible with the new printer profile and it "
-"contains the following unsaved changes:"
+"Preset \"%1%\" is not compatible with the new printer profile and it contains "
+"the following unsaved changes:"
msgstr ""
"Ön ayar \"%1%\", yeni yazıcı profiliyle uyumlu değil ve aşağıdaki "
"kaydedilmemiş değişiklikleri içeriyor:"
#, boost-format
msgid ""
-"Preset \"%1%\" is not compatible with the new process profile and it "
-"contains the following unsaved changes:"
+"Preset \"%1%\" is not compatible with the new process profile and it contains "
+"the following unsaved changes:"
msgstr ""
"Ön ayar \"%1%\", yeni işlem profiliyle uyumlu değil ve aşağıdaki "
"kaydedilmemiş değişiklikleri içeriyor:"
@@ -8155,8 +8142,8 @@ msgid ""
"the modified values to the new project"
msgstr ""
"\n"
-"Değiştirdiğiniz ön ayar değerlerini atabilir veya değiştirilen değerleri "
-"yeni projeye aktarmayı seçebilirsiniz."
+"Değiştirdiğiniz ön ayar değerlerini atabilir veya değiştirilen değerleri yeni "
+"projeye aktarmayı seçebilirsiniz."
msgid "Extruders count"
msgstr "Ekstruder sayısı"
@@ -8180,19 +8167,19 @@ msgstr ""
msgid ""
"Transfer the selected options from left preset to the right.\n"
-"Note: New modified presets will be selected in settings tabs after close "
-"this dialog."
+"Note: New modified presets will be selected in settings tabs after close this "
+"dialog."
msgstr ""
"Seçilen seçenekleri sol ön ayardan sağa aktarın.\n"
-"Not: Bu iletişim kutusunu kapattıktan sonra ayarlar sekmelerinde "
-"değiştirilen yeni ön ayarlar seçilecektir."
+"Not: Bu iletişim kutusunu kapattıktan sonra ayarlar sekmelerinde değiştirilen "
+"yeni ön ayarlar seçilecektir."
msgid "Transfer values from left to right"
msgstr "Değerleri soldan sağa aktarın"
msgid ""
-"If enabled, this dialog can be used for transfer selected values from left "
-"to right preset."
+"If enabled, this dialog can be used for transfer selected values from left to "
+"right preset."
msgstr ""
"Etkinleştirilirse, bu iletişim kutusu seçilen değerleri soldan sağa ön ayara "
"aktarmak için kullanılabilir."
@@ -8274,16 +8261,70 @@ msgstr "Güncelleme mevcut değil."
msgid "The configuration is up to date."
msgstr "Yapılandırma güncel."
+msgid "Obj file Import color"
+msgstr "Obj dosyası renkli olarak içe aktar"
+
+msgid "Specify number of colors:"
+msgstr "Renk sayısını belirtin:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "Renk sayısı aralıkta olmalıdır [%d, %d]."
+
+msgid "Recommended "
+msgstr "Tavsiye edilir "
+
+msgid "Current filament colors:"
+msgstr "Mevcut filament renkleri:"
+
+msgid "Quick set:"
+msgstr "Hızlı ayar:"
+
+msgid "Color match"
+msgstr "Renk uyumu"
+
+msgid "Approximate color matching."
+msgstr "Yaklaşık renk eşleşmesi."
+
+msgid "Append"
+msgstr "Ekle"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "Mevcut ekstrüderlerden sonra yeni sarf malzemesi ekstrüderi ekleyin."
+
+msgid "Reset mapped extruders."
+msgstr "Eşlenmiş ekstrüderleri sıfırlayın."
+
+msgid "Cluster colors"
+msgstr "Küme renkleri"
+
+msgid "Map Filament"
+msgstr "Filamenti Eşle"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"Not: Renk seçildi, devam etmek için Tamam'ı seçebilirsiniz\n"
+" veya manuel olarak ayarlayabilirsiniz."
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"Uyarı: Yeni eklenen ve\n"
+" mevcut ekstrüderlerin sayısı 16'yı aşıyor."
+
msgid "Ramming customization"
msgstr "Sıkıştırma özelleştirme"
msgid ""
"Ramming denotes the rapid extrusion just before a tool change in a single-"
-"extruder MM printer. Its purpose is to properly shape the end of the "
-"unloaded filament so it does not prevent insertion of the new filament and "
-"can itself be reinserted later. This phase is important and different "
-"materials can require different extrusion speeds to get the good shape. For "
-"this reason, the extrusion rates during ramming are adjustable.\n"
+"extruder MM printer. Its purpose is to properly shape the end of the unloaded "
+"filament so it does not prevent insertion of the new filament and can itself "
+"be reinserted later. This phase is important and different materials can "
+"require different extrusion speeds to get the good shape. For this reason, "
+"the extrusion rates during ramming are adjustable.\n"
"\n"
"This is an expert-level setting, incorrect adjustment will likely lead to "
"jams, extruder wheel grinding into filament etc."
@@ -8364,27 +8405,38 @@ msgid ""
"Windows Media Player is required for this task! Do you want to enable "
"'Windows Media Player' for your operation system?"
msgstr ""
+"Bu görev için Windows Media Player gereklidir! İşletim sisteminiz için "
+"‘Windows Media Player’ı etkinleştirmek istiyor musunuz?"
msgid ""
-"BambuSource has not correctly been registered for media playing! Press Yes "
-"to re-register it. You will be promoted twice"
+"BambuSource has not correctly been registered for media playing! Press Yes to "
+"re-register it. You will be promoted twice"
msgstr ""
+"BambuSource medya oynatımı için doğru şekilde kaydedilmemiş! Yeniden "
+"kaydetmek için Evet’e basın."
msgid ""
-"Missing BambuSource component registered for media playing! Please re-"
-"install BambuStutio or seek after-sales help."
+"Missing BambuSource component registered for media playing! Please re-install "
+"BambuStutio or seek after-sales help."
msgstr ""
+"Medya oynatma için kayıtlı BambuSource bileşeni eksik! Lütfen BambuStutio’yu "
+"yeniden yükleyin veya satış sonrası yardım isteyin."
msgid ""
"Using a BambuSource from a different install, video play may not work "
"correctly! Press Yes to fix it."
msgstr ""
+"Farklı bir kurulumdan bir BambuSource kullanıyorsunuz, video oynatma doğru "
+"çalışmayabilir! Düzeltmek için Evet’e basın."
msgid ""
-"Your system is missing H.264 codecs for GStreamer, which are required to "
-"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-"
-"libav packages, then restart Orca Slicer?)"
+"Your system is missing H.264 codecs for GStreamer, which are required to play "
+"video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav "
+"packages, then restart Orca Slicer?)"
msgstr ""
+"Sisteminizde video oynatmak için gerekli olan GStreamer H.264 codec "
+"bileşenleri eksik. (gstreamer1.0-plugins-bad veya gstreamer1.0-libav "
+"paketlerini kurmayı deneyin, ardından Orca Slicer’ı yeniden başlatın)"
msgid "Bambu Network plug-in not detected."
msgstr "Bambu Ağı eklentisi algılanmadı."
@@ -8675,15 +8727,15 @@ msgstr "Ağ eklentisi güncellemesi"
msgid ""
"Click OK to update the Network plug-in when Orca Slicer launches next time."
msgstr ""
-"Orca Slicer bir sonraki sefer başlatıldığında Ağ eklentisini güncellemek "
-"için Tamam'a tıklayın."
+"Orca Slicer bir sonraki sefer başlatıldığında Ağ eklentisini güncellemek için "
+"Tamam'a tıklayın."
#, c-format, boost-format
msgid "A new Network plug-in(%s) available, Do you want to install it?"
msgstr "Yeni bir Ağ eklentisi(%s) mevcut, Yüklemek istiyor musunuz?"
msgid "New version of Orca Slicer"
-msgstr "Orca Slicer'nun yeni versiyonu"
+msgstr "Orca Slicer’ın yeni versiyonu"
msgid "Skip this Version"
msgstr "Bu versiyonu atla"
@@ -8733,8 +8785,7 @@ msgstr "Nozulu Onaylayın ve Güncelleyin"
msgid "LAN Connection Failed (Sending print file)"
msgstr "LAN Bağlantısı Başarısız (Yazdırma dosyası gönderiliyor)"
-msgid ""
-"Step 1, please confirm Orca Slicer and your printer are in the same LAN."
+msgid "Step 1, please confirm Orca Slicer and your printer are in the same LAN."
msgstr ""
"Adım 1, lütfen Orca Slicer ile yazıcınızın aynı LAN'da olduğunu doğrulayın."
@@ -8803,8 +8854,8 @@ msgid "Updating successful"
msgstr "Güncelleme başarılı"
msgid ""
-"Are you sure you want to update? This will take about 10 minutes. Do not "
-"turn off the power while the printer is updating."
+"Are you sure you want to update? This will take about 10 minutes. Do not turn "
+"off the power while the printer is updating."
msgstr ""
"Güncellemek istediğinizden emin misiniz? Bu yaklaşık 10 dakika sürecektir. "
"Yazıcı güncellenirken gücü kapatmayın."
@@ -8823,10 +8874,9 @@ msgid ""
"printing. Do you want to update now? You can also update later on printer or "
"update next time starting Orca."
msgstr ""
-"Ürün yazılımı sürümü anormal. Yazdırmadan önce onarım ve güncelleme "
-"yapılması gerekir. Şimdi güncellemek istiyor musunuz? Ayrıca daha sonra "
-"yazıcıda güncelleyebilir veya stüdyoyu bir sonraki başlatışınızda "
-"güncelleyebilirsiniz."
+"Ürün yazılımı sürümü anormal. Yazdırmadan önce onarım ve güncelleme yapılması "
+"gerekir. Şimdi güncellemek istiyor musunuz? Ayrıca daha sonra yazıcıda "
+"güncelleyebilir veya stüdyoyu bir sonraki başlatışınızda güncelleyebilirsiniz."
msgid "Extension Board"
msgstr "Uzatma Kartı"
@@ -8978,8 +9028,8 @@ msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" "
msgstr "%1% çizgi genişliği hesaplanamadı. \"%2%\" değeri alınamıyor "
msgid ""
-"Invalid spacing supplied to Flow::with_spacing(), check your layer height "
-"and extrusion width"
+"Invalid spacing supplied to Flow::with_spacing(), check your layer height and "
+"extrusion width"
msgstr ""
"Flow::with_spacing()'e sağlanan geçersiz boşluk, kat yüksekliğinizi ve "
"ekstrüzyon genişliğinizi kontrol edin"
@@ -9112,8 +9162,8 @@ msgstr " dışlama alanına çok yakın ve çarpışmalara neden olacak.\n"
msgid ""
"Can not print multiple filaments which have large difference of temperature "
-"together. Otherwise, the extruder and nozzle may be blocked or damaged "
-"during printing"
+"together. Otherwise, the extruder and nozzle may be blocked or damaged during "
+"printing"
msgstr ""
"Birlikte büyük sıcaklık farkına sahip birden fazla filament basılamaz. Aksi "
"takdirde baskı sırasında ekstruder ve nozul tıkanabilir veya hasar görebilir"
@@ -9132,8 +9182,8 @@ msgid ""
"Please select \"By object\" print sequence to print multiple objects in "
"spiral vase mode."
msgstr ""
-"Birden fazla nesneyi spiral vazo modunda yazdırmak için lütfen \"Nesneye göre"
-"\" yazdırma sırasını seçin."
+"Birden fazla nesneyi spiral vazo modunda yazdırmak için lütfen \"Nesneye "
+"göre\" yazdırma sırasını seçin."
msgid ""
"The spiral vase mode does not work when an object contains more than one "
@@ -9146,8 +9196,8 @@ msgstr "%1% nesnesi maksimum yapı hacmi yüksekliğini aşıyor."
#, boost-format
msgid ""
-"While the object %1% itself fits the build volume, its last layer exceeds "
-"the maximum build volume height."
+"While the object %1% itself fits the build volume, its last layer exceeds the "
+"maximum build volume height."
msgstr ""
"%1% nesnesinin kendisi yapı hacmine uysa da, son katmanı maksimum yapı hacmi "
"yüksekliğini aşıyor."
@@ -9176,8 +9226,7 @@ msgstr ""
"Temizleme Kulesi şu anda yalnızca ilgili ekstruder adreslemesiyle "
"desteklenmektedir (use_relative_e_distances=1)."
-msgid ""
-"Ooze prevention is currently not supported with the prime tower enabled."
+msgid "Ooze prevention is currently not supported with the prime tower enabled."
msgstr "Sızıntı önleme şu anda ana kule etkinken desteklenmemektedir."
msgid ""
@@ -9194,8 +9243,8 @@ msgid ""
"The prime tower is not supported when adaptive layer height is on. It "
"requires that all objects have the same layer height."
msgstr ""
-"Uyarlanabilir katman yüksekliği açıkken ana kule desteklenmez. Tüm "
-"nesnelerin aynı katman yüksekliğine sahip olmasını gerektirir."
+"Uyarlanabilir katman yüksekliği açıkken ana kule desteklenmez. Tüm nesnelerin "
+"aynı katman yüksekliğine sahip olmasını gerektirir."
msgid "The prime tower requires \"support gap\" to be multiple of layer height"
msgstr ""
@@ -9203,12 +9252,11 @@ msgstr ""
msgid "The prime tower requires that all objects have the same layer heights"
msgstr ""
-"Prime tower, tüm nesnelerin aynı katman yüksekliğine sahip olmasını "
-"gerektirir"
+"Prime tower, tüm nesnelerin aynı katman yüksekliğine sahip olmasını gerektirir"
msgid ""
-"The prime tower requires that all objects are printed over the same number "
-"of raft layers"
+"The prime tower requires that all objects are printed over the same number of "
+"raft layers"
msgstr ""
"Ana kule, tüm nesnelerin aynı sayıda sal katmanı üzerine yazdırılmasını "
"gerektirir"
@@ -9221,8 +9269,8 @@ msgstr ""
"gerektirir."
msgid ""
-"The prime tower is only supported if all objects have the same variable "
-"layer height"
+"The prime tower is only supported if all objects have the same variable layer "
+"height"
msgstr ""
"Prime tower yalnızca tüm nesnelerin aynı değişken katman yüksekliğine sahip "
"olması durumunda desteklenir"
@@ -9236,8 +9284,7 @@ msgstr "Çok büyük çizgi genişliği"
msgid ""
"The prime tower requires that support has the same layer height with object."
msgstr ""
-"Prime kulesi için, destek, nesne ile aynı katman yüksekliğine sahip "
-"olmalıdır."
+"Prime kulesi için, destek, nesne ile aynı katman yüksekliğine sahip olmalıdır."
msgid ""
"Organic support tree tip diameter must not be smaller than support material "
@@ -9250,8 +9297,8 @@ msgid ""
"Organic support branch diameter must not be smaller than 2x support material "
"extrusion width."
msgstr ""
-"Organik destek dalı çapı, destek malzemesi ekstrüzyon genişliğinin 2 "
-"katından daha küçük olamaz."
+"Organik destek dalı çapı, destek malzemesi ekstrüzyon genişliğinin 2 katından "
+"daha küçük olamaz."
msgid ""
"Organic support branch diameter must not be smaller than support tree tip "
@@ -9268,20 +9315,20 @@ msgid "Layer height cannot exceed nozzle diameter"
msgstr "Katman yüksekliği nozul çapını aşamaz"
msgid ""
-"Relative extruder addressing requires resetting the extruder position at "
-"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to "
+"Relative extruder addressing requires resetting the extruder position at each "
+"layer to prevent loss of floating point accuracy. Add \"G92 E0\" to "
"layer_gcode."
msgstr ""
-"Göreceli ekstruder adreslemesi, kayan nokta doğruluğunun kaybını önlemek "
-"için her katmandaki ekstruder konumunun sıfırlanmasını gerektirir. "
-"Layer_gcode'a \"G92 E0\" ekleyin."
+"Göreceli ekstruder adreslemesi, kayan nokta doğruluğunun kaybını önlemek için "
+"her katmandaki ekstruder konumunun sıfırlanmasını gerektirir. Layer_gcode'a "
+"\"G92 E0\" ekleyin."
msgid ""
"\"G92 E0\" was found in before_layer_gcode, which is incompatible with "
"absolute extruder addressing."
msgstr ""
-"Before_layer_gcode'da \"G92 E0\" bulundu ve bu, mutlak ekstruder "
-"adreslemeyle uyumsuzdu."
+"Before_layer_gcode'da \"G92 E0\" bulundu ve bu, mutlak ekstruder adreslemeyle "
+"uyumsuzdu."
msgid ""
"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute "
@@ -9320,8 +9367,8 @@ msgid ""
"(machine_max_acceleration_extruding).\n"
"Orca will automatically cap the acceleration speed to ensure it doesn't "
"surpass the printer's capabilities.\n"
-"You can adjust the machine_max_acceleration_extruding value in your "
-"printer's configuration to get higher speeds."
+"You can adjust the machine_max_acceleration_extruding value in your printer's "
+"configuration to get higher speeds."
msgstr ""
"Hızlanma ayarı yazıcının maksimum hızlanmasını aşıyor "
"(machine_max_acceleration_extruding).\n"
@@ -9382,8 +9429,7 @@ msgid "Elephant foot compensation"
msgstr "Fil ayağı telafi oranı"
msgid ""
-"Shrink the initial layer on build plate to compensate for elephant foot "
-"effect"
+"Shrink the initial layer on build plate to compensate for elephant foot effect"
msgstr ""
"Fil ayağı etkisini telafi etmek için baskı plakasındaki ilk katmanı küçültün"
@@ -9401,7 +9447,7 @@ msgstr ""
"lineer olarak küçültülecek, bu değer tarafından belirtilen katmana kadar."
msgid "layers"
-msgstr "katmanlar"
+msgstr "katman"
msgid ""
"Slicing height for each layer. Smaller layer height means more accurate and "
@@ -9442,15 +9488,15 @@ msgid ""
"Orca Slicer can upload G-code files to a printer host. This field should "
"contain the hostname, IP address or URL of the printer host instance. Print "
"host behind HAProxy with basic auth enabled can be accessed by putting the "
-"user name and password into the URL in the following format: https://"
-"username:password@your-octopi-address/"
+"user name and password into the URL in the following format: https://username:"
+"password@your-octopi-address/"
msgstr ""
-"Orca Slicer, G kodu dosyalarını bir yazıcı ana bilgisayarına yükleyebilir. "
-"Bu alan, yazıcı ana bilgisayar örneğinin ana bilgisayar adını, IP adresini "
-"veya URL'sini içermelidir. Temel kimlik doğrulamanın etkin olduğu "
-"HAProxy'nin arkasındaki yazdırma ana bilgisayarına, kullanıcı adı ve "
-"parolanın aşağıdaki biçimdeki URL'ye girilmesiyle erişilebilir: https://"
-"username:password@your-octopi-address/"
+"Orca Slicer, G kodu dosyalarını bir yazıcı ana bilgisayarına yükleyebilir. Bu "
+"alan, yazıcı ana bilgisayar örneğinin ana bilgisayar adını, IP adresini veya "
+"URL'sini içermelidir. Temel kimlik doğrulamanın etkin olduğu HAProxy'nin "
+"arkasındaki yazdırma ana bilgisayarına, kullanıcı adı ve parolanın aşağıdaki "
+"biçimdeki URL'ye girilmesiyle erişilebilir: https://username:password@your-"
+"octopi-address/"
msgid "Device UI"
msgstr "Cihaz kullanıcı arayüzü"
@@ -9458,8 +9504,7 @@ msgstr "Cihaz kullanıcı arayüzü"
msgid ""
"Specify the URL of your device user interface if it's not same as print_host"
msgstr ""
-"Print_Host ile aynı değilse cihazınızın kullanıcı arayüzünün URL'sini "
-"belirtin"
+"Print_Host ile aynı değilse cihazınızın kullanıcı arayüzünün URL'sini belirtin"
msgid "API Key / Password"
msgstr "API Anahtarı / Şifre"
@@ -9468,9 +9513,8 @@ msgid ""
"Orca Slicer can upload G-code files to a printer host. This field should "
"contain the API Key or the password required for authentication."
msgstr ""
-"Orca Slicer, G kodu dosyalarını bir yazıcı ana bilgisayarına yükleyebilir. "
-"Bu alan, kimlik doğrulama için gereken API Anahtarını veya şifreyi "
-"içermelidir."
+"Orca Slicer, G kodu dosyalarını bir yazıcı ana bilgisayarına yükleyebilir. Bu "
+"alan, kimlik doğrulama için gereken API Anahtarını veya şifreyi içermelidir."
msgid "Name of the printer"
msgstr "Yazıcı adı"
@@ -9480,8 +9524,8 @@ msgstr "HTTPS CA Dosyası"
msgid ""
"Custom CA certificate file can be specified for HTTPS OctoPrint connections, "
-"in crt/pem format. If left blank, the default OS CA certificate repository "
-"is used."
+"in crt/pem format. If left blank, the default OS CA certificate repository is "
+"used."
msgstr ""
"HTTPS OctoPrint bağlantıları için crt/pem formatında özel CA sertifika "
"dosyası belirtilebilir. Boş bırakılırsa varsayılan OS CA sertifika deposu "
@@ -9532,10 +9576,10 @@ msgid ""
"either as an absolute value or as percentage (for example 50%) of a direct "
"travel path. Zero to disable"
msgstr ""
-"Duvarı geçmekten kaçınmak için maksimum sapma mesafesi. Yoldan sapma "
-"mesafesi bu değerden büyükse yoldan sapmayın. Yol uzunluğu, mutlak bir değer "
-"olarak veya doğrudan seyahat yolunun yüzdesi (örneğin %50) olarak "
-"belirtilebilir. Devre dışı bırakmak için sıfır"
+"Duvarı geçmekten kaçınmak için maksimum sapma mesafesi. Yoldan sapma mesafesi "
+"bu değerden büyükse yoldan sapmayın. Yol uzunluğu, mutlak bir değer olarak "
+"veya doğrudan seyahat yolunun yüzdesi (örneğin %50) olarak belirtilebilir. "
+"Devre dışı bırakmak için sıfır"
msgid "mm or %"
msgstr "mm veya %"
@@ -9544,8 +9588,8 @@ msgid "Other layers"
msgstr "Diğer katmanlar"
msgid ""
-"Bed temperature for layers except the initial one. Value 0 means the "
-"filament does not support to print on the Cool Plate"
+"Bed temperature for layers except the initial one. Value 0 means the filament "
+"does not support to print on the Cool Plate"
msgstr ""
"İlk katman dışındaki katmanlar için yatak sıcaklığı. 0 değeri, filamentin "
"Cool Plate üzerine yazdırmayı desteklemediği anlamına gelir"
@@ -9554,22 +9598,22 @@ msgid "°C"
msgstr "°C"
msgid ""
-"Bed temperature for layers except the initial one. Value 0 means the "
-"filament does not support to print on the Engineering Plate"
+"Bed temperature for layers except the initial one. Value 0 means the filament "
+"does not support to print on the Engineering Plate"
msgstr ""
"İlk katman dışındaki katmanlar için yatak sıcaklığı. Değer 0, filamentin "
"Mühendislik Plakasına yazdırmayı desteklemediği anlamına gelir"
msgid ""
-"Bed temperature for layers except the initial one. Value 0 means the "
-"filament does not support to print on the High Temp Plate"
+"Bed temperature for layers except the initial one. Value 0 means the filament "
+"does not support to print on the High Temp Plate"
msgstr ""
"İlk katman dışındaki katmanlar için yatak sıcaklığı. 0 değeri, filamentin "
"Yüksek Sıcaklık Plakasına yazdırmayı desteklemediği anlamına gelir"
msgid ""
-"Bed temperature for layers except the initial one. Value 0 means the "
-"filament does not support to print on the Textured PEI Plate"
+"Bed temperature for layers except the initial one. Value 0 means the filament "
+"does not support to print on the Textured PEI Plate"
msgstr ""
"İlk katman dışındaki katmanlar için yatak sıcaklığı. 0 Değeri, filamentin "
"Dokulu PEI Plaka üzerine yazdırmayı desteklemediği anlamına gelir"
@@ -9651,11 +9695,11 @@ msgid ""
"The number of bottom solid layers is increased when slicing if the thickness "
"calculated by bottom shell layers is thinner than this value. This can avoid "
"having too thin shell when layer height is small. 0 means that this setting "
-"is disabled and thickness of bottom shell is absolutely determained by "
-"bottom shell layers"
+"is disabled and thickness of bottom shell is absolutely determained by bottom "
+"shell layers"
msgstr ""
-"Alt kabuk katmanları tarafından hesaplanan kalınlık bu değerden daha ince "
-"ise dilimleme sırasında alt katı katmanların sayısı arttırılır. Bu, katman "
+"Alt kabuk katmanları tarafından hesaplanan kalınlık bu değerden daha ince ise "
+"dilimleme sırasında alt katı katmanların sayısı arttırılır. Bu, katman "
"yüksekliği küçük olduğunda kabuğun çok ince olmasını önleyebilir. 0, bu "
"ayarın devre dışı olduğu ve alt kabuğun kalınlığının mutlaka alt kabuk "
"katmanları tarafından belirlendiği anlamına gelir"
@@ -9669,8 +9713,7 @@ msgid ""
"\n"
"Options:\n"
"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n"
-"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces "
-"only\n"
+"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces only\n"
"3. Nowhere: Disables gap fill\n"
msgstr ""
"Seçilen yüzeyler için boşluk doldurmayı etkinleştirir. Doldurulacak minimum "
@@ -9696,19 +9739,19 @@ msgid "Force cooling for overhang and bridge"
msgstr "Çıkıntı ve köprüler için soğutmayı zorla"
msgid ""
-"Enable this option to optimize part cooling fan speed for overhang and "
-"bridge to get better cooling"
+"Enable this option to optimize part cooling fan speed for overhang and bridge "
+"to get better cooling"
msgstr ""
-"Daha iyi soğutma elde etmek amacıyla çıkıntı ve köprü için parça soğutma "
-"fanı hızını optimize etmek amacıyla bu seçeneği etkinleştirin"
+"Daha iyi soğutma elde etmek amacıyla çıkıntı ve köprü için parça soğutma fanı "
+"hızını optimize etmek amacıyla bu seçeneği etkinleştirin"
msgid "Fan speed for overhang"
msgstr "Çıkıntılar için fan hızı"
msgid ""
-"Force part cooling fan to be this speed when printing bridge or overhang "
-"wall which has large overhang degree. Forcing cooling for overhang and "
-"bridge can get better quality for these part"
+"Force part cooling fan to be this speed when printing bridge or overhang wall "
+"which has large overhang degree. Forcing cooling for overhang and bridge can "
+"get better quality for these part"
msgstr ""
"Çıkıntı derecesi büyük olan köprü veya çıkıntılı duvara baskı yaparken parça "
"soğutma fanını bu hızda olmaya zorlayın. Çıkıntı ve köprü için soğutmayı "
@@ -9720,9 +9763,9 @@ msgstr "Çıkıntı soğutması"
#, c-format
msgid ""
"Force cooling fan to be specific speed when overhang degree of printed part "
-"exceeds this value. Expressed as percentage which indicides how much width "
-"of the line without support from lower layer. 0% means forcing cooling for "
-"all outer wall no matter how much overhang degree"
+"exceeds this value. Expressed as percentage which indicides how much width of "
+"the line without support from lower layer. 0% means forcing cooling for all "
+"outer wall no matter how much overhang degree"
msgstr ""
"Yazdırılan parçanın çıkıntı derecesi bu değeri aştığında soğutma fanını "
"belirli bir hıza zorlar. Alt katmandan destek almadan çizginin ne kadar "
@@ -9756,8 +9799,8 @@ msgid ""
"Decrease this value slightly(for example 0.9) to reduce the amount of "
"material for bridge, to improve sag"
msgstr ""
-"Köprü için malzeme miktarını azaltmak ve sarkmayı iyileştirmek için bu "
-"değeri biraz azaltın (örneğin 0,9)"
+"Köprü için malzeme miktarını azaltmak ve sarkmayı iyileştirmek için bu değeri "
+"biraz azaltın (örneğin 0,9)"
msgid "Internal bridge flow ratio"
msgstr "İç köprü akış oranı"
@@ -9825,11 +9868,11 @@ msgid ""
"on the next layer, like letters. Set this setting to 0 to remove these "
"artifacts."
msgstr ""
-"Eğer bir üst yüzey basılacaksa ve kısmen başka bir katman tarafından "
-"kaplıysa layer genişliği bu değerin altında olan bir üst katman olarak "
+"Eğer bir üst yüzey basılacaksa ve kısmen başka bir katman tarafından kaplıysa "
+"layer genişliği bu değerin altında olan bir üst katman olarak "
"değerlendirilmeyecek. Yalnızca çevrelerle kaplanması gereken yüzeyde 'bir "
-"çevre üstte' tetiklemesine izin vermemek yararlı olabilir. Bu değer mm veya "
-"a % çevre ekstrüzyon genişliğinin bir yüzdesi olabilir.\n"
+"çevre üstte' tetiklemesine izin vermemek yararlı olabilir. Bu değer mm veya a "
+"% çevre ekstrüzyon genişliğinin bir yüzdesi olabilir.\n"
"Uyarı: Etkinleştirilirse bir sonraki katmanda harfler gibi bazı ince "
"özelliklerin olması durumunda yapay yapılar oluşturulabilir. Bu yapıları "
"kaldırmak için bu ayarı 0 olarak ayarlayın."
@@ -9855,15 +9898,15 @@ msgstr ""
"yolları (perimeter) oluşturun. "
msgid "Reverse on odd"
-msgstr "Tek sayıyı tersine çevir"
+msgstr "Tersine çevir"
msgid "Overhang reversal"
msgstr "Çıkıntıyı tersine çevir"
msgid ""
-"Extrude perimeters that have a part over an overhang in the reverse "
-"direction on odd layers. This alternating pattern can drastically improve "
-"steep overhangs.\n"
+"Extrude perimeters that have a part over an overhang in the reverse direction "
+"on odd layers. This alternating pattern can drastically improve steep "
+"overhangs.\n"
"\n"
"This setting can also help reduce part warping due to the reduction of "
"stresses in the part walls."
@@ -9885,8 +9928,7 @@ msgid ""
"alternating directions. This should reduce part warping while also "
"maintaining external wall quality. This feature can be very useful for warp "
"prone material, like ABS/ASA, and also for elastic filaments, like TPU and "
-"Silk PLA. It can also help reduce warping on floating regions over "
-"supports.\n"
+"Silk PLA. It can also help reduce warping on floating regions over supports.\n"
"\n"
"For this setting to be the most effective, it is recomended to set the "
"Reverse Threshold to 0 so that all internal walls print in alternating "
@@ -9918,8 +9960,7 @@ msgstr ""
"Bu seçenek, havşa delikleri için köprüler oluşturarak bunların desteksiz "
"yazdırılmasına olanak tanır. Mevcut modlar şunları içerir:\n"
"1. Yok: Köprü oluşturulmaz.\n"
-"2. Kısmen Köprülendi: Desteklenmeyen alanın yalnızca bir kısmı "
-"köprülenecek.\n"
+"2. Kısmen Köprülendi: Desteklenmeyen alanın yalnızca bir kısmı köprülenecek.\n"
"3. Feda Katman: Tam bir feda köprü katmanı oluşturulur."
msgid "Partially bridged"
@@ -10039,8 +10080,8 @@ msgid "Brim ear detection radius"
msgstr "Kenar kulak algılama yarıçapı"
msgid ""
-"The geometry will be decimated before dectecting sharp angles. This "
-"parameter indicates the minimum length of the deviation for the decimation.\n"
+"The geometry will be decimated before dectecting sharp angles. This parameter "
+"indicates the minimum length of the deviation for the decimation.\n"
"0 to deactivate"
msgstr ""
"Keskin açılar tespit edilmeden önce geometrinin büyük bir kısmı yok "
@@ -10089,10 +10130,10 @@ msgid ""
"that layer can be cooled for longer time. This can improve the cooling "
"quality for needle and small details"
msgstr ""
-"Son katman süresinin \"Maksimum fan hızı eşiği\"ndeki katman süresi "
-"eşiğinden kısa olmamasını sağlamak amacıyla yazdırma hızını yavaşlatmak için "
-"bu seçeneği etkinleştirin, böylece katman daha uzun süre soğutulabilir. Bu, "
-"iğne ve küçük detaylar için soğutma kalitesini artırabilir"
+"Son katman süresinin \"Maksimum fan hızı eşiği\"ndeki katman süresi eşiğinden "
+"kısa olmamasını sağlamak amacıyla yazdırma hızını yavaşlatmak için bu "
+"seçeneği etkinleştirin, böylece katman daha uzun süre soğutulabilir. Bu, iğne "
+"ve küçük detaylar için soğutma kalitesini artırabilir"
msgid "Normal printing"
msgstr "Normal baskı"
@@ -10101,8 +10142,7 @@ msgid ""
"The default acceleration of both normal printing and travel except initial "
"layer"
msgstr ""
-"İlk katman dışında hem normal yazdırmanın hem de ilerlemenin varsayılan "
-"ivmesi"
+"İlk katman dışında hem normal yazdırmanın hem de ilerlemenin varsayılan ivmesi"
msgid "mm/s²"
msgstr "mm/s²"
@@ -10146,8 +10186,8 @@ msgid ""
"Close all cooling fan for the first certain layers. Cooling fan of the first "
"layer used to be closed to get better build plate adhesion"
msgstr ""
-"İlk belirli katmanlar için tüm soğutma fanını kapatın. Daha iyi baskı "
-"plakası yapışması sağlamak için ilk katmanın soğutma fanı kapatılırdı"
+"İlk belirli katmanlar için tüm soğutma fanını kapatın. Daha iyi baskı plakası "
+"yapışması sağlamak için ilk katmanın soğutma fanı kapatılırdı"
msgid "Don't support bridges"
msgstr "Köprülerde destek olmasın"
@@ -10188,8 +10228,8 @@ msgid "Don't filter out small internal bridges (beta)"
msgstr "Küçük iç köprüleri filtrelemeyin (deneysel)"
msgid ""
-"This option can help reducing pillowing on top surfaces in heavily slanted "
-"or curved models.\n"
+"This option can help reducing pillowing on top surfaces in heavily slanted or "
+"curved models.\n"
"\n"
"By default, small internal bridges are filtered out and the internal solid "
"infill is printed directly over the sparse infill. This works well in most "
@@ -10204,16 +10244,16 @@ msgid ""
"unsupported internal solid infill. The options below control the amount of "
"filtering, i.e. the amount of internal bridges created.\n"
"\n"
-"Disabled - Disables this option. This is the default behaviour and works "
-"well in most cases.\n"
+"Disabled - Disables this option. This is the default behaviour and works well "
+"in most cases.\n"
"\n"
"Limited filtering - Creates internal bridges on heavily slanted surfaces, "
-"while avoiding creating uncessesary interal bridges. This works well for "
-"most difficult models.\n"
+"while avoiding creating uncessesary interal bridges. This works well for most "
+"difficult models.\n"
"\n"
-"No filtering - Creates internal bridges on every potential internal "
-"overhang. This option is useful for heavily slanted top surface models. "
-"However, in most cases it creates too many unecessary bridges."
+"No filtering - Creates internal bridges on every potential internal overhang. "
+"This option is useful for heavily slanted top surface models. However, in "
+"most cases it creates too many unecessary bridges."
msgstr ""
"Bu seçenek, aşırı eğimli veya kavisli modellerde üst yüzeylerdeki "
"yastıklamanın azaltılmasına yardımcı olabilir.\n"
@@ -10297,13 +10337,13 @@ msgstr ""
"dolgu ekleyin (üst + alt katı katmanlar)\n"
"Yok: Hiçbir yere katı dolgu eklenmez. Dikkat: Modelinizin eğimli yüzeyleri "
"varsa bu seçeneği dikkatli kullanın.\n"
-"Yalnızca Kritik: Duvarlar için katı dolgu eklemekten kaçının\n"
+"Yalnızca kritik: Duvarlar için katı dolgu eklemekten kaçının\n"
"Orta: Yalnızca çok eğimli yüzeyler için katı dolgu ekleyin\n"
"Hepsi: Tüm uygun eğimli yüzeyler için katı dolgu ekleyin\n"
"Varsayılan değer Tümü'dür."
msgid "Critical Only"
-msgstr "Yalnızca Kritik"
+msgstr "Yalnızca kritik"
msgid "Moderate"
msgstr "Orta"
@@ -10365,8 +10405,8 @@ msgid ""
"Speed of outer wall which is outermost and visible. It's used to be slower "
"than inner wall speed to get better quality."
msgstr ""
-"En dışta görünen ve görünen dış duvarın hızı. Daha iyi kalite elde etmek "
-"için iç duvar hızından daha yavaş olması kullanılır."
+"En dışta görünen ve görünen dış duvarın hızı. Daha iyi kalite elde etmek için "
+"iç duvar hızından daha yavaş olması kullanılır."
msgid "Small perimeters"
msgstr "Küçük çevre (perimeter)"
@@ -10395,8 +10435,8 @@ msgstr "Duvar baskı sırası"
msgid ""
"Print sequence of the internal (inner) and external (outer) walls. \n"
"\n"
-"Use Inner/Outer for best overhangs. This is because the overhanging walls "
-"can adhere to a neighouring perimeter while printing. However, this option "
+"Use Inner/Outer for best overhangs. This is because the overhanging walls can "
+"adhere to a neighouring perimeter while printing. However, this option "
"results in slightly reduced surface quality as the external perimeter is "
"deformed by being squashed to the internal perimeter.\n"
"\n"
@@ -10427,14 +10467,14 @@ msgstr ""
"kalitesi ve boyutsal doğruluk için İç/Dış/İç seçeneğini kullanın. Ancak, dış "
"duvarın üzerine baskı yapılacak bir iç çevre olmadığından sarkma performansı "
"düşecektir. Bu seçenek, önce 3. çevreden itibaren iç duvarları, ardından dış "
-"çevreyi ve son olarak da birinci iç çevreyi yazdırdığından etkili olması "
-"için en az 3 duvar gerektirir. Bu seçenek çoğu durumda Dış/İç seçeneğine "
-"karşı önerilir. \n"
+"çevreyi ve son olarak da birinci iç çevreyi yazdırdığından etkili olması için "
+"en az 3 duvar gerektirir. Bu seçenek çoğu durumda Dış/İç seçeneğine karşı "
+"önerilir. \n"
"\n"
"İç/Dış/İç seçeneğinin aynı dış duvar kalitesi ve boyutsal doğruluk "
"avantajları için Dış/İç seçeneğini kullanın. Bununla birlikte, yeni bir "
-"katmanın ilk ekstrüzyonu görünür bir yüzey üzerinde başladığından z "
-"dikişleri daha az tutarlı görünecektir.\n"
+"katmanın ilk ekstrüzyonu görünür bir yüzey üzerinde başladığından z dikişleri "
+"daha az tutarlı görünecektir.\n"
"\n"
" "
@@ -10456,10 +10496,18 @@ msgid ""
"\n"
"Printing infill first may help with extreme overhangs as the walls have the "
"neighbouring infill to adhere to. However, the infill will slighly push out "
-"the printed walls where it is attached to them, resulting in a worse "
-"external surface finish. It can also cause the infill to shine through the "
-"external surfaces of the part."
+"the printed walls where it is attached to them, resulting in a worse external "
+"surface finish. It can also cause the infill to shine through the external "
+"surfaces of the part."
msgstr ""
+"Duvar/dolgu sırası. Onay kutusu işaretlenmediğinde duvarlar önce yazdırılır, "
+"bu çoğu durumda en iyi şekilde çalışır.\n"
+"\n"
+"Dolgunun önce yazdırılması, aşırı sarkmalarda yardımcı olabilir, çünkü "
+"duvarlar komşu dolgulara yapışır. Ancak, dolgu duvarlara bağlı olduğu "
+"yerlerde onları biraz dışarı iterek daha kötü bir dış yüzey bitişine neden "
+"olabilir. Ayrıca, dolgunun parçanın dış yüzeylerinden parlamasına da sebep "
+"olabilir."
msgid "Wall loop direction"
msgstr "Duvar döngüsü yönü"
@@ -10468,8 +10516,8 @@ msgid ""
"The direction which the wall loops are extruded when looking down from the "
"top.\n"
"\n"
-"By default all walls are extruded in counter-clockwise, unless Reverse on "
-"odd is enabled. Set this to any option other than Auto will force the wall "
+"By default all walls are extruded in counter-clockwise, unless Reverse on odd "
+"is enabled. Set this to any option other than Auto will force the wall "
"direction regardless of the Reverse on odd.\n"
"\n"
"This option will be disabled if sprial vase mode is enabled."
@@ -10477,8 +10525,8 @@ msgstr ""
"Yukarıdan aşağıya bakıldığında duvar döngülerinin ekstrüzyona uğradığı yön.\n"
"\n"
"Tek sayıyı ters çevir seçeneği etkinleştirilmedikçe, varsayılan olarak tüm "
-"duvarlar saat yönünün tersine ekstrüde edilir. Bunu Otomatik dışında "
-"herhangi bir seçeneğe ayarlayın, Ters açıklığa bakılmaksızın duvar yönünü "
+"duvarlar saat yönünün tersine ekstrüde edilir. Bunu Otomatik dışında herhangi "
+"bir seçeneğe ayarlayın, Ters açıklığa bakılmaksızın duvar yönünü "
"zorlayacaktır.\n"
"\n"
"Spiral vazo modu etkinse bu seçenek devre dışı bırakılacaktır."
@@ -10506,8 +10554,8 @@ msgid ""
"Distance of the nozzle tip to the lid. Used for collision avoidance in by-"
"object printing."
msgstr ""
-"Nozul ucunun kapağa olan mesafesi. Nesneye göre yazdırmada çarpışmayı "
-"önlemek için kullanılır."
+"Nozul ucunun kapağa olan mesafesi. Nesneye göre yazdırmada çarpışmayı önlemek "
+"için kullanılır."
msgid ""
"Clearance radius around extruder. Used for collision avoidance in by-object "
@@ -10530,20 +10578,19 @@ msgid ""
"probe's XY offset, most printers are unable to probe the entire bed. To "
"ensure the probe point does not go outside the bed area, the minimum and "
"maximum points of the bed mesh should be set appropriately. OrcaSlicer "
-"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not "
-"exceed these min/max points. This information can usually be obtained from "
-"your printer manufacturer. The default setting is (-99999, -99999), which "
-"means there are no limits, thus allowing probing across the entire bed."
+"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not exceed "
+"these min/max points. This information can usually be obtained from your "
+"printer manufacturer. The default setting is (-99999, -99999), which means "
+"there are no limits, thus allowing probing across the entire bed."
msgstr ""
-"Bu seçenek, izin verilen yatak ağ alanı için minimum noktayı ayarlar. Prob "
-"XY ofseti nedeniyle çoğu yazıcı yatağın tamamını tarayamaz. Prob noktasının "
-"yatak alanı dışına çıkmamasını sağlamak için yatak ağının minimum ve "
-"maksimum noktaları uygun şekilde ayarlanmalıdır. OrcaSlicer, "
-"adaptive_bed_mesh_min/adaptive_bed_mesh_max değerlerinin bu min/maks "
-"noktalarını aşmamasını sağlar. Bu bilgi genellikle yazıcınızın üreticisinden "
-"edinilebilir. Varsayılan ayar (-99999, -99999) şeklindedir; bu, herhangi bir "
-"sınırın olmadığı anlamına gelir, dolayısıyla yatağın tamamında problamaya "
-"izin verilir."
+"Bu seçenek, izin verilen yatak ağ alanı için minimum noktayı ayarlar. Prob XY "
+"ofseti nedeniyle çoğu yazıcı yatağın tamamını tarayamaz. Prob noktasının "
+"yatak alanı dışına çıkmamasını sağlamak için yatak ağının minimum ve maksimum "
+"noktaları uygun şekilde ayarlanmalıdır. OrcaSlicer, adaptive_bed_mesh_min/"
+"adaptive_bed_mesh_max değerlerinin bu min/maks noktalarını aşmamasını sağlar. "
+"Bu bilgi genellikle yazıcınızın üreticisinden edinilebilir. Varsayılan ayar "
+"(-99999, -99999) şeklindedir; bu, herhangi bir sınırın olmadığı anlamına "
+"gelir, dolayısıyla yatağın tamamında problamaya izin verilir."
msgid "Bed mesh max"
msgstr "Maksimum yatak ağı"
@@ -10553,20 +10600,19 @@ msgid ""
"probe's XY offset, most printers are unable to probe the entire bed. To "
"ensure the probe point does not go outside the bed area, the minimum and "
"maximum points of the bed mesh should be set appropriately. OrcaSlicer "
-"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not "
-"exceed these min/max points. This information can usually be obtained from "
-"your printer manufacturer. The default setting is (99999, 99999), which "
-"means there are no limits, thus allowing probing across the entire bed."
+"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not exceed "
+"these min/max points. This information can usually be obtained from your "
+"printer manufacturer. The default setting is (99999, 99999), which means "
+"there are no limits, thus allowing probing across the entire bed."
msgstr ""
-"Bu seçenek, izin verilen yatak ağ alanı için maksimum noktayı ayarlar. "
-"Probun XY ofseti nedeniyle çoğu yazıcı yatağın tamamını tarayamaz. Prob "
-"noktasının yatak alanı dışına çıkmamasını sağlamak için yatak ağının minimum "
-"ve maksimum noktaları uygun şekilde ayarlanmalıdır. OrcaSlicer, "
-"adaptive_bed_mesh_min/adaptive_bed_mesh_max değerlerinin bu min/maks "
-"noktalarını aşmamasını sağlar. Bu bilgi genellikle yazıcınızın üreticisinden "
-"edinilebilir. Varsayılan ayar (99999, 99999) şeklindedir; bu, herhangi bir "
-"sınırın olmadığı anlamına gelir, dolayısıyla yatağın tamamında problamaya "
-"izin verilir."
+"Bu seçenek, izin verilen yatak ağ alanı için maksimum noktayı ayarlar. Probun "
+"XY ofseti nedeniyle çoğu yazıcı yatağın tamamını tarayamaz. Prob noktasının "
+"yatak alanı dışına çıkmamasını sağlamak için yatak ağının minimum ve maksimum "
+"noktaları uygun şekilde ayarlanmalıdır. OrcaSlicer, adaptive_bed_mesh_min/"
+"adaptive_bed_mesh_max değerlerinin bu min/maks noktalarını aşmamasını sağlar. "
+"Bu bilgi genellikle yazıcınızın üreticisinden edinilebilir. Varsayılan ayar "
+"(99999, 99999) şeklindedir; bu, herhangi bir sınırın olmadığı anlamına gelir, "
+"dolayısıyla yatağın tamamında problamaya izin verilir."
msgid "Probe point distance"
msgstr "Prob noktası mesafesi"
@@ -10583,8 +10629,8 @@ msgid "Mesh margin"
msgstr "Yatak ağı boşluğu"
msgid ""
-"This option determines the additional distance by which the adaptive bed "
-"mesh area should be expanded in the XY directions."
+"This option determines the additional distance by which the adaptive bed mesh "
+"area should be expanded in the XY directions."
msgstr ""
"Bu seçenek, uyarlanabilir yatak ağ alanının XY yönlerinde genişletilmesi "
"gereken ek mesafeyi belirler."
@@ -10604,9 +10650,9 @@ msgstr "Akış oranı"
msgid ""
"The material may have volumetric change after switching between molten state "
"and crystalline state. This setting changes all extrusion flow of this "
-"filament in gcode proportionally. Recommended value range is between 0.95 "
-"and 1.05. Maybe you can tune this value to get nice flat surface when there "
-"has slight overflow or underflow"
+"filament in gcode proportionally. Recommended value range is between 0.95 and "
+"1.05. Maybe you can tune this value to get nice flat surface when there has "
+"slight overflow or underflow"
msgstr ""
"Malzeme, erimiş hal ile kristal hal arasında geçiş yaptıktan sonra hacimsel "
"değişime sahip olabilir. Bu ayar, bu filamentin gcode'daki tüm ekstrüzyon "
@@ -10628,8 +10674,8 @@ msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)"
msgstr "Basınç avansı (Klipper) Doğrusal ilerleme faktörü (Marlin)"
msgid ""
-"Default line width if other line widths are set to 0. If expressed as a %, "
-"it will be computed over the nozzle diameter."
+"Default line width if other line widths are set to 0. If expressed as a %, it "
+"will be computed over the nozzle diameter."
msgstr ""
"Diğer çizgi genişlikleri 0'a ayarlanmışsa varsayılan çizgi genişliği. % "
"olarak ifade edilirse nozul çapı üzerinden hesaplanacaktır."
@@ -10638,13 +10684,39 @@ msgid "Keep fan always on"
msgstr "Fanı her zaman açık tut"
msgid ""
-"If enable this setting, part cooling fan will never be stoped and will run "
-"at least at minimum speed to reduce the frequency of starting and stoping"
+"If enable this setting, part cooling fan will never be stoped and will run at "
+"least at minimum speed to reduce the frequency of starting and stoping"
msgstr ""
"Bu ayarı etkinleştirirseniz, parça soğutma fanı hiçbir zaman durdurulmayacak "
"ve başlatma ve durdurma sıklığını azaltmak için en azından minimum hızda "
"çalışacaktır"
+msgid "Don't slow down outer walls"
+msgstr "Dış duvarları yavaşlatma"
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+"Bu ayar etkinleştirildiğinde, dış çevrelerin minimum katman süresine uyması "
+"için yavaşlatılmamasını sağlar. Bu, özellikle aşağıdaki durumlarda yardımcı "
+"olur:\n"
+"\n"
+"1. Parlak filamentler yazdırırken parlaklıktaki değişikliklerden kaçınmak "
+"için\n"
+"2. Z bantlanması gibi görünen hafif duvar kusurları yaratabilecek dış duvar "
+"hızındaki değişikliklerden kaçınmak için\n"
+"3. Dış duvarlarda VFAs (ince kusurlar) oluşturan hızlarda yazdırmaktan "
+"kaçınmak için\n"
+
msgid "Layer time"
msgstr "Katman süresi"
@@ -10725,11 +10797,11 @@ msgid ""
"Be sure to allow enough space between objects, as this compensation is done "
"after the checks."
msgstr ""
-"Filamentin soğuduktan sonra alacağı büzülme yüzdesini girin (100 mm yerine "
-"94 mm ölçerseniz 94%). Parça, telafi etmek için xy'de ölçeklendirilecektir. "
+"Filamentin soğuduktan sonra alacağı büzülme yüzdesini girin (100 mm yerine 94 "
+"mm ölçerseniz 94%). Parça, telafi etmek için xy'de ölçeklendirilecektir. "
"Yalnızca çevre için kullanılan filament dikkate alınır.\n"
-"Bu telafi kontrollerden sonra yapıldığından, nesneler arasında yeterli "
-"boşluk bıraktığınızdan emin olun."
+"Bu telafi kontrollerden sonra yapıldığından, nesneler arasında yeterli boşluk "
+"bıraktığınızdan emin olun."
msgid "Loading speed"
msgstr "Yükleme hızı"
@@ -10780,8 +10852,8 @@ msgid ""
"Filament is cooled by being moved back and forth in the cooling tubes. "
"Specify desired number of these moves."
msgstr ""
-"Filament, soğutma tüpleri içinde ileri geri hareket ettirilerek soğutulur. "
-"Bu sayısını belirtin."
+"Filament, soğutma tüpleri içinde ileri geri hareket ettirilerek soğutulur. Bu "
+"sayısını belirtin."
msgid "Speed of the first cooling move"
msgstr "İlk soğutma hareketi hızı"
@@ -10795,9 +10867,9 @@ msgstr "Silme kulesi üzerinde minimum boşaltım"
msgid ""
"After a tool change, the exact position of the newly loaded filament inside "
"the nozzle may not be known, and the filament pressure is likely not yet "
-"stable. Before purging the print head into an infill or a sacrificial "
-"object, Orca Slicer will always prime this amount of material into the wipe "
-"tower to produce successive infill or sacrificial object extrusions reliably."
+"stable. Before purging the print head into an infill or a sacrificial object, "
+"Orca Slicer will always prime this amount of material into the wipe tower to "
+"produce successive infill or sacrificial object extrusions reliably."
msgstr ""
"Bir takım değişiminden sonra, yeni yüklenen filamentin nozul içindeki kesin "
"konumu bilinmeyebilir ve filament basıncı muhtemelen henüz stabil değildir. "
@@ -10814,13 +10886,12 @@ msgstr "Soğutma hareketleri bu hıza doğru giderek hızlanır."
msgid ""
"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new "
-"filament during a tool change (when executing the T code). This time is "
-"added to the total print time by the G-code time estimator."
+"filament during a tool change (when executing the T code). This time is added "
+"to the total print time by the G-code time estimator."
msgstr ""
"Yazıcı donanım yazılımının (veya Çoklu Malzeme Ünitesi 2.0'ın) takım "
-"değişikliği sırasında (T kodu yürütülürken) yeni bir filament yükleme "
-"süresi. Bu süre, G kodu zaman tahmincisi tarafından toplam baskı süresine "
-"eklenir."
+"değişikliği sırasında (T kodu yürütülürken) yeni bir filament yükleme süresi. "
+"Bu süre, G kodu zaman tahmincisi tarafından toplam baskı süresine eklenir."
msgid "Ramming parameters"
msgstr "Sıkıştırma parametreleri"
@@ -10834,8 +10905,8 @@ msgstr ""
msgid ""
"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a "
-"filament during a tool change (when executing the T code). This time is "
-"added to the total print time by the G-code time estimator."
+"filament during a tool change (when executing the T code). This time is added "
+"to the total print time by the G-code time estimator."
msgstr ""
"Yazıcı ürün yazılımının (veya Çoklu Malzeme Ünitesi 2.0'ın) takım değişimi "
"sırasında (T kodu yürütülürken) filamenti boşaltma süresi. Bu süre, G kodu "
@@ -10883,8 +10954,7 @@ msgstr "Filament malzeme türü"
msgid "Soluble material"
msgstr "Çözünür malzeme"
-msgid ""
-"Soluble material is commonly used to print support and support interface"
+msgid "Soluble material is commonly used to print support and support interface"
msgstr ""
"Çözünür malzeme genellikle destek ve destek arayüzünü yazdırmak için "
"kullanılır"
@@ -10892,8 +10962,7 @@ msgstr ""
msgid "Support material"
msgstr "Destek malzemesi"
-msgid ""
-"Support material is commonly used to print support and support interface"
+msgid "Support material is commonly used to print support and support interface"
msgstr ""
"Destek malzemesi yaygın olarak destek ve destek arayüzünü yazdırmak için "
"kullanılır"
@@ -10917,7 +10986,7 @@ msgid "Filament price. For statistics only"
msgstr "Filament fiyatı. Yalnızca istatistikler için"
msgid "money/kg"
-msgstr "para/kg"
+msgstr "ücret/kg"
msgid "Vendor"
msgstr "Satıcı"
@@ -10941,8 +11010,8 @@ msgid "Solid infill direction"
msgstr "Katı dolgu yönü"
msgid ""
-"Angle for solid infill pattern, which controls the start or main direction "
-"of line"
+"Angle for solid infill pattern, which controls the start or main direction of "
+"line"
msgstr ""
"Hattın başlangıcını veya ana yönünü kontrol eden katı dolgu deseni açısı"
@@ -10960,8 +11029,8 @@ msgid ""
"Density of internal sparse infill, 100% turns all sparse infill into solid "
"infill and internal solid infill pattern will be used"
msgstr ""
-"İç seyrek dolgunun yoğunluğu, %100 tüm seyrek dolguyu katı dolguya "
-"dönüştürür ve iç katı dolgu modeli kullanılacaktır"
+"İç seyrek dolgunun yoğunluğu, %100 tüm seyrek dolguyu katı dolguya dönüştürür "
+"ve iç katı dolgu modeli kullanılacaktır"
msgid "Sparse infill pattern"
msgstr "Dolgu deseni"
@@ -11009,23 +11078,22 @@ msgid ""
"Connect an infill line to an internal perimeter with a short segment of an "
"additional perimeter. If expressed as percentage (example: 15%) it is "
"calculated over infill extrusion width. Orca Slicer tries to connect two "
-"close infill lines to a short perimeter segment. If no such perimeter "
-"segment shorter than infill_anchor_max is found, the infill line is "
-"connected to a perimeter segment at just one side and the length of the "
-"perimeter segment taken is limited to this parameter, but no longer than "
-"anchor_length_max. \n"
+"close infill lines to a short perimeter segment. If no such perimeter segment "
+"shorter than infill_anchor_max is found, the infill line is connected to a "
+"perimeter segment at just one side and the length of the perimeter segment "
+"taken is limited to this parameter, but no longer than anchor_length_max. \n"
"Set this parameter to zero to disable anchoring perimeters connected to a "
"single infill line."
msgstr ""
"Bir dolgu hattını, ek bir çevrenin kısa bir bölümü ile bir iç çevreye "
-"bağlayın. Yüzde olarak ifade edilirse (örnek: %15) dolgu ekstrüzyon "
-"genişliği üzerinden hesaplanır. Orca Slicer iki yakın dolgu hattını kısa bir "
-"çevre segmentine bağlamaya çalışıyor. infill_anchor_max'tan daha kısa böyle "
-"bir çevre segmenti bulunamazsa, dolgu hattı yalnızca bir taraftaki bir çevre "
+"bağlayın. Yüzde olarak ifade edilirse (örnek: %15) dolgu ekstrüzyon genişliği "
+"üzerinden hesaplanır. Orca Slicer iki yakın dolgu hattını kısa bir çevre "
+"segmentine bağlamaya çalışıyor. infill_anchor_max'tan daha kısa böyle bir "
+"çevre segmenti bulunamazsa, dolgu hattı yalnızca bir taraftaki bir çevre "
"segmentine bağlanır ve alınan çevre segmentinin uzunluğu bu parametreyle "
"sınırlıdır, ancak çapa_uzunluk_max'tan uzun olamaz.\n"
-"Tek bir dolgu hattına bağlı sabitleme çevrelerini devre dışı bırakmak için "
-"bu parametreyi sıfıra ayarlayın."
+"Tek bir dolgu hattına bağlı sabitleme çevrelerini devre dışı bırakmak için bu "
+"parametreyi sıfıra ayarlayın."
msgid "0 (no open anchors)"
msgstr "0 (açık bağlantı yok)"
@@ -11040,23 +11108,22 @@ msgid ""
"Connect an infill line to an internal perimeter with a short segment of an "
"additional perimeter. If expressed as percentage (example: 15%) it is "
"calculated over infill extrusion width. Orca Slicer tries to connect two "
-"close infill lines to a short perimeter segment. If no such perimeter "
-"segment shorter than this parameter is found, the infill line is connected "
-"to a perimeter segment at just one side and the length of the perimeter "
-"segment taken is limited to infill_anchor, but no longer than this "
-"parameter. \n"
+"close infill lines to a short perimeter segment. If no such perimeter segment "
+"shorter than this parameter is found, the infill line is connected to a "
+"perimeter segment at just one side and the length of the perimeter segment "
+"taken is limited to infill_anchor, but no longer than this parameter. \n"
"If set to 0, the old algorithm for infill connection will be used, it should "
"create the same result as with 1000 & 0."
msgstr ""
"Bir dolgu hattını, ek bir çevrenin kısa bir bölümü ile bir iç çevreye "
-"bağlayın. Yüzde olarak ifade edilirse (örnek: %15) dolgu ekstrüzyon "
-"genişliği üzerinden hesaplanır. Orca Slicer iki yakın dolgu hattını kısa bir "
-"çevre segmentine bağlamaya çalışıyor. Bu parametreden daha kısa bir çevre "
-"segmenti bulunamazsa, dolgu hattı sadece bir kenardaki bir çevre segmentine "
-"bağlanır ve alınan çevre segmentinin uzunluğu infill_anchor ile sınırlıdır "
-"ancak bu parametreden daha uzun olamaz.\n"
-"0'a ayarlanırsa dolgu bağlantısı için eski algoritma kullanılacaktır; 1000 "
-"ve 0 ile aynı sonucu oluşturmalıdır."
+"bağlayın. Yüzde olarak ifade edilirse (örnek: %15) dolgu ekstrüzyon genişliği "
+"üzerinden hesaplanır. Orca Slicer iki yakın dolgu hattını kısa bir çevre "
+"segmentine bağlamaya çalışıyor. Bu parametreden daha kısa bir çevre segmenti "
+"bulunamazsa, dolgu hattı sadece bir kenardaki bir çevre segmentine bağlanır "
+"ve alınan çevre segmentinin uzunluğu infill_anchor ile sınırlıdır ancak bu "
+"parametreden daha uzun olamaz.\n"
+"0'a ayarlanırsa dolgu bağlantısı için eski algoritma kullanılacaktır; 1000 ve "
+"0 ile aynı sonucu oluşturmalıdır."
msgid "0 (Simple connect)"
msgstr "0 (Basit bağlantı)"
@@ -11074,8 +11141,8 @@ msgid ""
"Acceleration of top surface infill. Using a lower value may improve top "
"surface quality"
msgstr ""
-"Üst yüzey dolgusunun hızlandırılması. Daha düşük bir değerin kullanılması "
-"üst yüzey kalitesini iyileştirebilir"
+"Üst yüzey dolgusunun hızlandırılması. Daha düşük bir değerin kullanılması üst "
+"yüzey kalitesini iyileştirebilir"
msgid "Acceleration of outer wall. Using a lower value can improve quality"
msgstr ""
@@ -11085,8 +11152,8 @@ msgid ""
"Acceleration of bridges. If the value is expressed as a percentage (e.g. "
"50%), it will be calculated based on the outer wall acceleration."
msgstr ""
-"Köprülerin hızlandırılması. Değer yüzde olarak ifade edilirse (örn. %50), "
-"dış duvar ivmesine göre hesaplanacaktır."
+"Köprülerin hızlandırılması. Değer yüzde olarak ifade edilirse (örn. %50), dış "
+"duvar ivmesine göre hesaplanacaktır."
msgid "mm/s² or %"
msgstr "mm/s² veya %"
@@ -11123,8 +11190,7 @@ msgid "accel_to_decel"
msgstr "Accel_to_decel"
#, c-format, boost-format
-msgid ""
-"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration"
+msgid "Klipper's max_accel_to_decel will be adjusted to this %% of acceleration"
msgstr ""
"Klipper'ın max_accel_to_decel değeri ivmenin bu %%'sine göre ayarlanacak"
@@ -11157,8 +11223,8 @@ msgid "Initial layer height"
msgstr "Başlangıç katman yüksekliği"
msgid ""
-"Height of initial layer. Making initial layer height to be thick slightly "
-"can improve build plate adhension"
+"Height of initial layer. Making initial layer height to be thick slightly can "
+"improve build plate adhension"
msgstr ""
"İlk katmanın yüksekliği. İlk katman yüksekliğini biraz kalın yapmak, baskı "
"plakasının yapışmasını iyileştirebilir"
@@ -11199,19 +11265,19 @@ msgstr "Maksimum fan hızı"
msgid ""
"Fan speed will be ramped up linearly from zero at layer "
-"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer"
-"\". \"full_fan_speed_layer\" will be ignored if lower than "
-"\"close_fan_the_first_x_layers\", in which case the fan will be running at "
-"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
+"\"close_fan_the_first_x_layers\" to maximum at layer "
+"\"full_fan_speed_layer\". \"full_fan_speed_layer\" will be ignored if lower "
+"than \"close_fan_the_first_x_layers\", in which case the fan will be running "
+"at maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
msgstr ""
"Fan hızı, \"close_fan_the_first_x_layers\" katmanında sıfırdan "
"\"ful_fan_speed_layer\" katmanında maksimuma doğrusal olarak artırılacaktır. "
-"\"full_fan_speed_layer\", \"close_fan_the_first_x_layers\" değerinden "
-"düşükse göz ardı edilecektir; bu durumda fan, \"close_fan_the_first_x_layers"
-"\" + 1 katmanında izin verilen maksimum hızda çalışacaktır."
+"\"full_fan_speed_layer\", \"close_fan_the_first_x_layers\" değerinden düşükse "
+"göz ardı edilecektir; bu durumda fan, \"close_fan_the_first_x_layers\" + 1 "
+"katmanında izin verilen maksimum hızda çalışacaktır."
msgid "layer"
-msgstr ""
+msgstr "katman"
msgid "Support interface fan speed"
msgstr "Destekler için fan hızı"
@@ -11285,7 +11351,7 @@ msgstr ""
"ve daha yavaş yazdırılmalıdır"
msgid "Precise Z height"
-msgstr "Hassas Z yüksekliği"
+msgstr "Hassas z yüksekliği"
msgid ""
"Enable this to get precise z height of object after slicing. It will get the "
@@ -11304,11 +11370,11 @@ msgid ""
"Enable this to get a G-code file which has G2 and G3 moves. The fitting "
"tolerance is same as the resolution. \n"
"\n"
-"Note: For klipper machines, this option is recomended to be disabled. "
-"Klipper does not benefit from arc commands as these are split again into "
-"line segments by the firmware. This results in a reduction in surface "
-"quality as line segments are converted to arcs by the slicer and then back "
-"to line segments by the firmware."
+"Note: For klipper machines, this option is recomended to be disabled. Klipper "
+"does not benefit from arc commands as these are split again into line "
+"segments by the firmware. This results in a reduction in surface quality as "
+"line segments are converted to arcs by the slicer and then back to line "
+"segments by the firmware."
msgstr ""
"G2 ve G3 hareketlerine sahip bir G kodu dosyası elde etmek için bunu "
"etkinleştirin. Montaj toleransı çözünürlükle aynıdır. \n"
@@ -11345,8 +11411,8 @@ msgid ""
"The metallic material of nozzle. This determines the abrasive resistance of "
"nozzle, and what kind of filament can be printed"
msgstr ""
-"Nozulnin metalik malzemesi. Bu, nozulun aşınma direncini ve ne tür "
-"filamentin basılabileceğini belirler"
+"Nozulnin metalik malzemesi. Bu, nozulun aşınma direncini ve ne tür filamentin "
+"basılabileceğini belirler"
msgid "Undefine"
msgstr "Tanımsız"
@@ -11398,8 +11464,8 @@ msgid "Best auto arranging position in range [0,1] w.r.t. bed shape."
msgstr "Yatak şekline göre [0,1] aralığında en iyi otomatik düzenleme konumu."
msgid ""
-"Enable this option if machine has auxiliary part cooling fan. G-code "
-"command: M106 P2 S(0-255)."
+"Enable this option if machine has auxiliary part cooling fan. G-code command: "
+"M106 P2 S(0-255)."
msgstr ""
"Makinede yardımcı parça soğutma fanı varsa bu seçeneği etkinleştirin. G-code "
"komut: M106 P2 S(0-255)."
@@ -11442,8 +11508,8 @@ msgid ""
msgstr ""
"Soğutma fanını başlatmak için hedef hıza düşmeden önce bu süre boyunca "
"maksimum fan hızı komutunu verin.\n"
-"Bu, düşük PWM/gücün fanın durma noktasından dönmeye başlaması veya fanın "
-"daha hızlı hızlanması için yetersiz olabileceği fanlar için kullanışlıdır.\n"
+"Bu, düşük PWM/gücün fanın durma noktasından dönmeye başlaması veya fanın daha "
+"hızlı hızlanması için yetersiz olabileceği fanlar için kullanışlıdır.\n"
"Devre dışı bırakmak için 0'a ayarlayın."
msgid "Time cost"
@@ -11453,7 +11519,7 @@ msgid "The printer cost per hour"
msgstr "Yazıcı saat başına maliyeti"
msgid "money/h"
-msgstr "para/h"
+msgstr "ücret/sa"
msgid "Support control chamber temperature"
msgstr "Destek kontrol ortam sıcaklığı"
@@ -11497,21 +11563,20 @@ msgstr "Nesneleri etiketle"
msgid ""
"Enable this to add comments into the G-Code labeling print moves with what "
-"object they belong to, which is useful for the Octoprint CancelObject "
-"plugin. This settings is NOT compatible with Single Extruder Multi Material "
-"setup and Wipe into Object / Wipe into Infill."
+"object they belong to, which is useful for the Octoprint CancelObject plugin. "
+"This settings is NOT compatible with Single Extruder Multi Material setup and "
+"Wipe into Object / Wipe into Infill."
msgstr ""
"G-Code etiketleme yazdırma hareketlerine ait oldukları nesneyle ilgili "
"yorumlar eklemek için bunu etkinleştirin; bu, Octoprint CancelObject "
-"eklentisi için kullanışlıdır. Bu ayarlar Tek Ekstruder Çoklu Malzeme "
-"kurulumu ve Nesneye Temizleme / Dolguya Temizleme ile uyumlu DEĞİLDİR."
+"eklentisi için kullanışlıdır. Bu ayarlar Tek Ekstruder Çoklu Malzeme kurulumu "
+"ve Nesneye Temizleme / Dolguya Temizleme ile uyumlu DEĞİLDİR."
msgid "Exclude objects"
msgstr "Nesneleri hariç tut"
msgid "Enable this option to add EXCLUDE OBJECT command in g-code"
-msgstr ""
-"G koduna EXCLUDE OBJECT komutunu eklemek için bu seçeneği etkinleştirin"
+msgstr "G koduna EXCLUDE OBJECT komutunu eklemek için bu seçeneği etkinleştirin"
msgid "Verbose G-code"
msgstr "Ayrıntılı G kodu"
@@ -11551,10 +11616,10 @@ msgstr "Dolgu/Duvar örtüşmesi"
#, no-c-format, no-boost-format
msgid ""
-"Infill area is enlarged slightly to overlap with wall for better bonding. "
-"The percentage value is relative to line width of sparse infill. Set this "
-"value to ~10-15% to minimize potential over extrusion and accumulation of "
-"material resulting in rough top surfaces."
+"Infill area is enlarged slightly to overlap with wall for better bonding. The "
+"percentage value is relative to line width of sparse infill. Set this value "
+"to ~10-15% to minimize potential over extrusion and accumulation of material "
+"resulting in rough top surfaces."
msgstr ""
"Daha iyi yapışma için dolgu alanı duvarla örtüşecek şekilde hafifçe "
"genişletilir. Yüzde değeri seyrek dolgunun çizgi genişliğine göredir. Aşırı "
@@ -11567,8 +11632,8 @@ msgstr "Üst/Alt katı dolgu/Duvar örtüşmesi"
#, no-c-format, no-boost-format
msgid ""
"Top solid infill area is enlarged slightly to overlap with wall for better "
-"bonding and to minimize the appearance of pinholes where the top infill "
-"meets the walls. A value of 25-30% is a good starting point, minimising the "
+"bonding and to minimize the appearance of pinholes where the top infill meets "
+"the walls. A value of 25-30% is a good starting point, minimising the "
"appearance of pinholes. The percentage value is relative to line width of "
"sparse infill"
msgstr ""
@@ -11586,12 +11651,12 @@ msgstr "Arayüz kabukları"
msgid ""
"Force the generation of solid shells between adjacent materials/volumes. "
-"Useful for multi-extruder prints with translucent materials or manual "
-"soluble support material"
+"Useful for multi-extruder prints with translucent materials or manual soluble "
+"support material"
msgstr ""
"Bitişik malzemeler/hacimler arasında katı kabuk oluşumunu zorlayın. Yarı "
-"saydam malzemelerle veya elle çözülebilen destek malzemesiyle çoklu "
-"ekstruder baskıları için kullanışlıdır"
+"saydam malzemelerle veya elle çözülebilen destek malzemesiyle çoklu ekstruder "
+"baskıları için kullanışlıdır"
msgid "Maximum width of a segmented region"
msgstr "Bölümlere ayrılmış bir bölgenin maksimum genişliği"
@@ -11606,8 +11671,8 @@ msgstr "Bölümlere ayrılmış bir bölgenin birbirine kenetlenen derinliği"
msgid "Interlocking depth of a segmented region. Zero disables this feature."
msgstr ""
-"Bölümlere ayrılmış bir bölgenin birbirine kenetlenen derinliği. 0 bu "
-"özelliği devre dışı bırakır."
+"Bölümlere ayrılmış bir bölgenin birbirine kenetlenen derinliği. 0 bu özelliği "
+"devre dışı bırakır."
msgid "Ironing Type"
msgstr "Ütüleme tipi"
@@ -11685,7 +11750,7 @@ msgstr ""
"destekleyip desteklemediği"
msgid "Emit limits to G-code"
-msgstr "G-code sınırları"
+msgstr "G-kod sınırları"
msgid "Machine limits"
msgstr "Yazıcı sınırları"
@@ -11698,8 +11763,8 @@ msgstr ""
"G kodu tadı Klipper olarak ayarlandığında bu seçenek göz ardı edilecektir."
msgid ""
-"This G-code will be used as a code for the pause print. User can insert "
-"pause G-code in gcode viewer"
+"This G-code will be used as a code for the pause print. User can insert pause "
+"G-code in gcode viewer"
msgstr ""
"Bu G kodu duraklatma yazdırması için bir kod olarak kullanılacaktır. "
"Kullanıcı gcode görüntüleyiciye duraklatma G kodunu ekleyebilir"
@@ -11830,8 +11895,8 @@ msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2"
msgstr "Seyahat için maksimum ivme (M204 T), yalnızca Marlin 2 için geçerlidir"
msgid ""
-"Part cooling fan speed may be increased when auto cooling is enabled. This "
-"is the maximum speed limitation of part cooling fan"
+"Part cooling fan speed may be increased when auto cooling is enabled. This is "
+"the maximum speed limitation of part cooling fan"
msgstr ""
"Otomatik soğutma etkinleştirildiğinde parça soğutma fanı hızı artırılabilir. "
"Bu, parça soğutma fanının maksimum hız sınırlamasıdır"
@@ -11851,8 +11916,8 @@ msgid "Extrusion rate smoothing"
msgstr "Ekstrüzyon hızını yumuşatma"
msgid ""
-"This parameter smooths out sudden extrusion rate changes that happen when "
-"the printer transitions from printing a high flow (high speed/larger width) "
+"This parameter smooths out sudden extrusion rate changes that happen when the "
+"printer transitions from printing a high flow (high speed/larger width) "
"extrusion to a lower flow (lower speed/smaller width) extrusion and vice "
"versa.\n"
"\n"
@@ -11863,12 +11928,11 @@ msgid ""
"A value of 0 disables the feature. \n"
"\n"
"For a high speed, high flow direct drive printer (like the Bambu lab or "
-"Voron) this value is usually not needed. However it can provide some "
-"marginal benefit in certain cases where feature speeds vary greatly. For "
-"example, when there are aggressive slowdowns due to overhangs. In these "
-"cases a high value of around 300-350mm3/s2 is recommended as this allows for "
-"just enough smoothing to assist pressure advance achieve a smoother flow "
-"transition.\n"
+"Voron) this value is usually not needed. However it can provide some marginal "
+"benefit in certain cases where feature speeds vary greatly. For example, when "
+"there are aggressive slowdowns due to overhangs. In these cases a high value "
+"of around 300-350mm3/s2 is recommended as this allows for just enough "
+"smoothing to assist pressure advance achieve a smoother flow transition.\n"
"\n"
"For slower printers without pressure advance, the value should be set much "
"lower. A value of 10-15mm3/s2 is a good starting point for direct drive "
@@ -11890,13 +11954,13 @@ msgstr ""
"\n"
"0 değeri özelliği devre dışı bırakır. \n"
"\n"
-"Yüksek hızlı, yüksek akışlı doğrudan tahrikli bir yazıcı için (Bambu lab "
-"veya Voron gibi) bu değer genellikle gerekli değildir. Ancak özellik "
-"hızlarının büyük ölçüde değiştiği bazı durumlarda marjinal bir fayda "
-"sağlayabilir. Örneğin, çıkıntılar nedeniyle agresif yavaşlamalar olduğunda. "
-"Bu durumlarda 300-350mm3/s2 civarında yüksek bir değer önerilir çünkü bu, "
-"basınç ilerlemesinin daha yumuşak bir akış geçişi elde etmesine yardımcı "
-"olmak için yeterli yumuşatmaya izin verir.\n"
+"Yüksek hızlı, yüksek akışlı doğrudan tahrikli bir yazıcı için (Bambu lab veya "
+"Voron gibi) bu değer genellikle gerekli değildir. Ancak özellik hızlarının "
+"büyük ölçüde değiştiği bazı durumlarda marjinal bir fayda sağlayabilir. "
+"Örneğin, çıkıntılar nedeniyle agresif yavaşlamalar olduğunda. Bu durumlarda "
+"300-350mm3/s2 civarında yüksek bir değer önerilir çünkü bu, basınç "
+"ilerlemesinin daha yumuşak bir akış geçişi elde etmesine yardımcı olmak için "
+"yeterli yumuşatmaya izin verir.\n"
"\n"
"Basınç avansı olmayan daha yavaş yazıcılar için değer çok daha düşük "
"ayarlanmalıdır. Doğrudan tahrikli ekstruderler için 10-15mm3/s2 ve Bowden "
@@ -11993,8 +12057,8 @@ msgid ""
"Orca Slicer can upload G-code files to a printer host. This field must "
"contain the kind of the host."
msgstr ""
-"Orca Slicer, G kodu dosyalarını bir yazıcı ana bilgisayarına yükleyebilir. "
-"Bu alan ana bilgisayarın türünü içermelidir."
+"Orca Slicer, G kodu dosyalarını bir yazıcı ana bilgisayarına yükleyebilir. Bu "
+"alan ana bilgisayarın türünü içermelidir."
msgid "Nozzle volume"
msgstr "Nozul hacmi"
@@ -12035,8 +12099,8 @@ msgid ""
"Distance of the extruder tip from the position where the filament is parked "
"when unloaded. This should match the value in printer firmware."
msgstr ""
-"Ekstruder ucunun, boşaltıldığında filamentin park edildiği konumdan "
-"uzaklığı. Bu ayar yazıcı ürün yazılımındaki değerle eşleşmelidir."
+"Ekstruder ucunun, boşaltıldığında filamentin park edildiği konumdan uzaklığı. "
+"Bu ayar yazıcı ürün yazılımındaki değerle eşleşmelidir."
msgid "Extra loading distance"
msgstr "Ekstra yükleme mesafesi"
@@ -12063,8 +12127,8 @@ msgstr "Dolguda geri çekmeyi azalt"
msgid ""
"Don't retract when the travel is in infill area absolutely. That means the "
-"oozing can't been seen. This can reduce times of retraction for complex "
-"model and save printing time, but make slicing and G-code generating slower"
+"oozing can't been seen. This can reduce times of retraction for complex model "
+"and save printing time, but make slicing and G-code generating slower"
msgstr ""
"Hareket kesinlikle dolgu alanına girdiğinde geri çekilmeyin. Bu, sızıntının "
"görülemeyeceği anlamına gelir. Bu, karmaşık model için geri çekme sürelerini "
@@ -12101,11 +12165,11 @@ msgid "Make overhangs printable - Hole area"
msgstr "Yazdırılabilir çıkıntı delik alanı oluşturun"
msgid ""
-"Maximum area of a hole in the base of the model before it's filled by "
-"conical material.A value of 0 will fill all the holes in the model base."
+"Maximum area of a hole in the base of the model before it's filled by conical "
+"material.A value of 0 will fill all the holes in the model base."
msgstr ""
-"Modelin tabanındaki bir deliğin, konik malzemeyle doldurulmadan önce "
-"maksimum alanı. 0 değeri, model tabanındaki tüm delikleri dolduracaktır."
+"Modelin tabanındaki bir deliğin, konik malzemeyle doldurulmadan önce maksimum "
+"alanı. 0 değeri, model tabanındaki tüm delikleri dolduracaktır."
msgid "mm²"
msgstr "mm²"
@@ -12115,11 +12179,11 @@ msgstr "Çıkıntılı duvarı algıla"
#, c-format, boost-format
msgid ""
-"Detect the overhang percentage relative to line width and use different "
-"speed to print. For 100%% overhang, bridge speed is used."
+"Detect the overhang percentage relative to line width and use different speed "
+"to print. For 100%% overhang, bridge speed is used."
msgstr ""
-"Çizgi genişliğine göre çıkıntı yüzdesini tespit edin ve yazdırmak için "
-"farklı hızlar kullanın. %%100 çıkıntı için köprü hızı kullanılır."
+"Çizgi genişliğine göre çıkıntı yüzdesini tespit edin ve yazdırmak için farklı "
+"hızlar kullanın. %%100 çıkıntı için köprü hızı kullanılır."
msgid ""
"Line width of inner wall. If expressed as a %, it will be computed over the "
@@ -12141,8 +12205,8 @@ msgid ""
"This setting adds an extra wall to every other layer. This way the infill "
"gets wedged vertically between the walls, resulting in stronger prints. \n"
"\n"
-"When this option is enabled, the ensure vertical shell thickness option "
-"needs to be disabled. \n"
+"When this option is enabled, the ensure vertical shell thickness option needs "
+"to be disabled. \n"
"\n"
"Using lightning infill together with this option is not recommended as there "
"is limited infill to anchor the extra perimeters to."
@@ -12163,11 +12227,10 @@ msgid ""
"argument, and they can access the Orca Slicer config settings by reading "
"environment variables."
msgstr ""
-"Çıktı G-kodunu özel komut dosyaları aracılığıyla işlemek istiyorsanız, "
-"mutlak yollarını burada listeleyin. Birden fazla betiği noktalı virgülle "
-"ayırın. Betiklere ilk argüman olarak G-code dosyasının mutlak yolu aktarılır "
-"ve ortam değişkenlerini okuyarak Orca Slicer yapılandırma ayarlarına "
-"erişebilirler."
+"Çıktı G-kodunu özel komut dosyaları aracılığıyla işlemek istiyorsanız, mutlak "
+"yollarını burada listeleyin. Birden fazla betiği noktalı virgülle ayırın. "
+"Betiklere ilk argüman olarak G-code dosyasının mutlak yolu aktarılır ve ortam "
+"değişkenlerini okuyarak Orca Slicer yapılandırma ayarlarına erişebilirler."
msgid "Printer notes"
msgstr "Yazıcı notları"
@@ -12179,8 +12242,7 @@ msgid "Raft contact Z distance"
msgstr "Raft kontak Z mesafesi"
msgid "Z gap between object and raft. Ignored for soluble interface"
-msgstr ""
-"Nesne ve raft arasındaki Z boşluğu. Çözünür arayüz için göz ardı edildi"
+msgstr "Nesne ve raft arasındaki Z boşluğu. Çözünür arayüz için göz ardı edildi"
msgid "Raft expansion"
msgstr "Raft genişletme"
@@ -12209,8 +12271,8 @@ msgid ""
"Object will be raised by this number of support layers. Use this function to "
"avoid wrapping when print ABS"
msgstr ""
-"Nesne bu sayıdaki destek katmanı tarafından yükseltilecektir. ABS "
-"yazdırırken sarmayı önlemek için bu işlevi kullanın"
+"Nesne bu sayıdaki destek katmanı tarafından yükseltilecektir. ABS yazdırırken "
+"sarmayı önlemek için bu işlevi kullanın"
msgid ""
"G-code path is genereated after simplifing the contour of model to avoid too "
@@ -12225,8 +12287,7 @@ msgid "Travel distance threshold"
msgstr "Seyahat mesafesi"
msgid ""
-"Only trigger retraction when the travel distance is longer than this "
-"threshold"
+"Only trigger retraction when the travel distance is longer than this threshold"
msgstr ""
"Geri çekmeyi yalnızca hareket mesafesi bu eşikten daha uzun olduğunda "
"tetikleyin"
@@ -12234,8 +12295,7 @@ msgstr ""
msgid "Retract amount before wipe"
msgstr "Temizleme işlemi öncesi geri çekme miktarı"
-msgid ""
-"The length of fast retraction before wipe, relative to retraction length"
+msgid "The length of fast retraction before wipe, relative to retraction length"
msgstr ""
"Geri çekme uzunluğuna göre, temizlemeden önce hızlı geri çekilmenin uzunluğu"
@@ -12398,7 +12458,7 @@ msgstr ""
"anlamına gelir"
msgid "Use firmware retraction"
-msgstr "Yazılımsal geri çekme (firmware retraction)"
+msgstr "Yazılımsal geri çekme"
msgid ""
"This experimental setting uses G10 and G11 commands to have the firmware "
@@ -12452,13 +12512,13 @@ msgid "Seam gap"
msgstr "Dikiş boşluğu"
msgid ""
-"In order to reduce the visibility of the seam in a closed loop extrusion, "
-"the loop is interrupted and shortened by a specified amount.\n"
-"This amount can be specified in millimeters or as a percentage of the "
-"current extruder diameter. The default value for this parameter is 10%."
+"In order to reduce the visibility of the seam in a closed loop extrusion, the "
+"loop is interrupted and shortened by a specified amount.\n"
+"This amount can be specified in millimeters or as a percentage of the current "
+"extruder diameter. The default value for this parameter is 10%."
msgstr ""
-"Kapalı döngü ekstrüzyonda dikişin görünürlüğünü azaltmak için döngü "
-"kesintiye uğrar ve belirli bir miktarda kısaltılır.\n"
+"Kapalı döngü ekstrüzyonda dikişin görünürlüğünü azaltmak için döngü kesintiye "
+"uğrar ve belirli bir miktarda kısaltılır.\n"
"Bu miktar milimetre cinsinden veya mevcut ekstruder çapının yüzdesi olarak "
"belirtilebilir. Bu parametrenin varsayılan değeri %10'dur."
@@ -12467,8 +12527,8 @@ msgstr "Atkı birleşim dikişi (beta)"
msgid "Use scarf joint to minimize seam visibility and increase seam strength."
msgstr ""
-"Dikiş görünürlüğünü en aza indirmek ve dikiş mukavemetini arttırmak için "
-"atkı birleşimini kullanın."
+"Dikiş görünürlüğünü en aza indirmek ve dikiş mukavemetini arttırmak için atkı "
+"birleşimini kullanın."
msgid "Conditional scarf joint"
msgstr "Koşullu atkı birleşimi"
@@ -12486,9 +12546,9 @@ msgstr "Koşullu açı eşiği"
msgid ""
"This option sets the threshold angle for applying a conditional scarf joint "
"seam.\n"
-"If the maximum angle within the perimeter loop exceeds this value "
-"(indicating the absence of sharp corners), a scarf joint seam will be used. "
-"The default value is 155°."
+"If the maximum angle within the perimeter loop exceeds this value (indicating "
+"the absence of sharp corners), a scarf joint seam will be used. The default "
+"value is 155°."
msgstr ""
"Bu seçenek, koşullu bir atkı eklem dikişi uygulamak için eşik açısını "
"ayarlar.\n"
@@ -12503,8 +12563,8 @@ msgstr "Koşullu çıkıntı eşiği"
msgid ""
"This option determines the overhang threshold for the application of scarf "
"joint seams. If the unsupported portion of the perimeter is less than this "
-"threshold, scarf joint seams will be applied. The default threshold is set "
-"at 40% of the external wall's width. Due to performance considerations, the "
+"threshold, scarf joint seams will be applied. The default threshold is set at "
+"40% of the external wall's width. Due to performance considerations, the "
"degree of overhang is estimated."
msgstr ""
"Bu seçenek, atkı bağlantı dikişlerinin uygulanması için sarkma eşiğini "
@@ -12518,22 +12578,22 @@ msgstr "Atkı birleşim hızı"
msgid ""
"This option sets the printing speed for scarf joints. It is recommended to "
-"print scarf joints at a slow speed (less than 100 mm/s). It's also "
-"advisable to enable 'Extrusion rate smoothing' if the set speed varies "
-"significantly from the speed of the outer or inner walls. If the speed "
-"specified here is higher than the speed of the outer or inner walls, the "
-"printer will default to the slower of the two speeds. When specified as a "
-"percentage (e.g., 80%), the speed is calculated based on the respective "
-"outer or inner wall speed. The default value is set to 100%."
+"print scarf joints at a slow speed (less than 100 mm/s). It's also advisable "
+"to enable 'Extrusion rate smoothing' if the set speed varies significantly "
+"from the speed of the outer or inner walls. If the speed specified here is "
+"higher than the speed of the outer or inner walls, the printer will default "
+"to the slower of the two speeds. When specified as a percentage (e.g., 80%), "
+"the speed is calculated based on the respective outer or inner wall speed. "
+"The default value is set to 100%."
msgstr ""
"Bu seçenek, atkı bağlantılarının yazdırma hızını ayarlar. Atkı "
"bağlantılarının yavaş bir hızda (100 mm/s'den az) yazdırılması tavsiye "
"edilir. Ayarlanan hızın dış veya iç duvarların hızından önemli ölçüde farklı "
-"olması durumunda 'Ekstrüzyon hızı yumuşatma' seçeneğinin etkinleştirilmesi "
-"de tavsiye edilir. Burada belirtilen hız, dış veya iç duvarların hızından "
-"daha yüksekse, yazıcı varsayılan olarak iki hızdan daha yavaş olanı "
-"seçecektir. Yüzde olarak belirtildiğinde (örn. %80), hız, ilgili dış veya iç "
-"duvar hızına göre hesaplanır. Varsayılan değer %100 olarak ayarlanmıştır."
+"olması durumunda 'Ekstrüzyon hızı yumuşatma' seçeneğinin etkinleştirilmesi de "
+"tavsiye edilir. Burada belirtilen hız, dış veya iç duvarların hızından daha "
+"yüksekse, yazıcı varsayılan olarak iki hızdan daha yavaş olanı seçecektir. "
+"Yüzde olarak belirtildiğinde (örn. %80), hız, ilgili dış veya iç duvar hızına "
+"göre hesaplanır. Varsayılan değer %100 olarak ayarlanmıştır."
msgid "Scarf joint flow ratio"
msgstr "Atkı birleşimi akış oranı"
@@ -12547,8 +12607,8 @@ msgstr "Atkı başlangıç yüksekliği"
msgid ""
"Start height of the scarf.\n"
-"This amount can be specified in millimeters or as a percentage of the "
-"current layer height. The default value for this parameter is 0."
+"This amount can be specified in millimeters or as a percentage of the current "
+"layer height. The default value for this parameter is 0."
msgstr ""
"Atkı başlangıç yüksekliği.\n"
"Bu miktar milimetre cinsinden veya geçerli katman yüksekliğinin yüzdesi "
@@ -12567,8 +12627,8 @@ msgid ""
"Length of the scarf. Setting this parameter to zero effectively disables the "
"scarf."
msgstr ""
-"Atkının uzunluğu. Bu parametrenin 0 a ayarlanması atkıyı dolaylı yoldan "
-"devre dışı bırakır."
+"Atkının uzunluğu. Bu parametrenin 0 a ayarlanması atkıyı dolaylı yoldan devre "
+"dışı bırakır."
msgid "Scarf steps"
msgstr "Atkı kademesi"
@@ -12609,15 +12669,15 @@ msgid "Wipe before external loop"
msgstr "Harici döngüden önce silin"
msgid ""
-"To minimise visibility of potential overextrusion at the start of an "
-"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall "
-"print order, the deretraction is performed slightly on the inside from the "
-"start of the external perimeter. That way any potential over extrusion is "
-"hidden from the outside surface. \n"
+"To minimise visibility of potential overextrusion at the start of an external "
+"perimeter when printing with Outer/Inner or Inner/Outer/Inner wall print "
+"order, the deretraction is performed slightly on the inside from the start of "
+"the external perimeter. That way any potential over extrusion is hidden from "
+"the outside surface. \n"
"\n"
-"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall "
-"print order as in these modes it is more likely an external perimeter is "
-"printed immediately after a deretraction move."
+"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall print "
+"order as in these modes it is more likely an external perimeter is printed "
+"immediately after a deretraction move."
msgstr ""
"Dış/İç veya İç/Dış/İç duvar baskı sırası ile yazdırırken, dış çevrenin "
"başlangıcında olası aşırı çıkıntının görünürlüğünü en aza indirmek için, "
@@ -12626,8 +12686,8 @@ msgstr ""
"yüzeyden gizlenir. \n"
"\n"
"Bu, Dış/İç veya İç/Dış/İç duvar yazdırma sırası ile yazdırırken "
-"kullanışlıdır, çünkü bu modlarda, bir geri çekilme hareketinin hemen "
-"ardından bir dış çevrenin yazdırılması daha olasıdır."
+"kullanışlıdır, çünkü bu modlarda, bir geri çekilme hareketinin hemen ardından "
+"bir dış çevrenin yazdırılması daha olasıdır."
msgid "Wipe speed"
msgstr "Temizleme hızı"
@@ -12693,8 +12753,7 @@ msgid "Skirt loops"
msgstr "Etek sayısı"
msgid "Number of loops for the skirt. Zero means disabling skirt"
-msgstr ""
-"Etek için ilmek sayısı. Sıfır, eteği devre dışı bırakmak anlamına gelir"
+msgstr "Etek için ilmek sayısı. Sıfır, eteği devre dışı bırakmak anlamına gelir"
msgid "Skirt speed"
msgstr "Etek hızı"
@@ -12739,8 +12798,8 @@ msgstr ""
"bırakmıştır"
msgid ""
-"Line width of internal solid infill. If expressed as a %, it will be "
-"computed over the nozzle diameter."
+"Line width of internal solid infill. If expressed as a %, it will be computed "
+"over the nozzle diameter."
msgstr ""
"İç katı dolgunun çizgi genişliği. % olarak ifade edilirse Nozul çapı "
"üzerinden hesaplanacaktır."
@@ -12754,8 +12813,8 @@ msgid ""
"generated model has no seam"
msgstr ""
"Spiralleştirme, dış konturun z hareketlerini yumuşatır. Ve katı bir modeli, "
-"katı alt katmanlara sahip tek duvarlı bir baskıya dönüştürür. Oluşturulan "
-"son modelde dikiş yok."
+"katı alt katmanlara sahip tek duvarlı bir baskıya dönüştürür. Oluşturulan son "
+"modelde dikiş yok."
msgid "Smooth Spiral"
msgstr "Pürüzsüz spiral"
@@ -12780,12 +12839,11 @@ msgstr ""
msgid ""
"If smooth or traditional mode is selected, a timelapse video will be "
"generated for each print. After each layer is printed, a snapshot is taken "
-"with the chamber camera. All of these snapshots are composed into a "
-"timelapse video when printing completes. If smooth mode is selected, the "
-"toolhead will move to the excess chute after each layer is printed and then "
-"take a snapshot. Since the melt filament may leak from the nozzle during the "
-"process of taking a snapshot, prime tower is required for smooth mode to "
-"wipe nozzle."
+"with the chamber camera. All of these snapshots are composed into a timelapse "
+"video when printing completes. If smooth mode is selected, the toolhead will "
+"move to the excess chute after each layer is printed and then take a "
+"snapshot. Since the melt filament may leak from the nozzle during the process "
+"of taking a snapshot, prime tower is required for smooth mode to wipe nozzle."
msgstr ""
"Düzgün veya geleneksel mod seçilirse her baskı için bir hızlandırılmış video "
"oluşturulacaktır. Her katman basıldıktan sonra oda kamerasıyla anlık görüntü "
@@ -12846,10 +12904,9 @@ msgid "No sparse layers (beta)"
msgstr "Seyrek katman yok (beta)"
msgid ""
-"If enabled, the wipe tower will not be printed on layers with no "
-"toolchanges. On layers with a toolchange, extruder will travel downward to "
-"print the wipe tower. User is responsible for ensuring there is no collision "
-"with the print."
+"If enabled, the wipe tower will not be printed on layers with no toolchanges. "
+"On layers with a toolchange, extruder will travel downward to print the wipe "
+"tower. User is responsible for ensuring there is no collision with the print."
msgstr ""
"Etkinleştirilirse, silme kulesi araç değişimi olmayan katmanlarda "
"yazdırılmayacaktır. Araç değişimi olan katmanlarda, ekstruder silme kulesini "
@@ -12874,16 +12931,16 @@ msgid ""
"triangle mesh slicing. The gap closing operation may reduce the final print "
"resolution, therefore it is advisable to keep the value reasonably low."
msgstr ""
-"Üçgen mesh dilimleme sırasında 2x boşluk kapatma yarıçapından küçük "
-"çatlaklar doldurulmaktadır. Boşluk kapatma işlemi son yazdırma çözünürlüğünü "
+"Üçgen mesh dilimleme sırasında 2x boşluk kapatma yarıçapından küçük çatlaklar "
+"doldurulmaktadır. Boşluk kapatma işlemi son yazdırma çözünürlüğünü "
"düşürebilir, bu nedenle değerin oldukça düşük tutulması tavsiye edilir."
msgid "Slicing Mode"
msgstr "Dilimleme modu"
msgid ""
-"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to "
-"close all holes in the model."
+"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to close "
+"all holes in the model."
msgstr ""
"3DLabPrint uçak modelleri için \"Çift-tek\" seçeneğini kullanın. Modeldeki "
"tüm delikleri kapatmak için \"Delikleri kapat\"ı kullanın."
@@ -12907,10 +12964,9 @@ msgid ""
"print bed, set this to -0.3 (or fix your endstop)."
msgstr ""
"Bu değer, çıkış G-kodu içindeki tüm Z koordinatlarına eklenir (veya "
-"çıkarılır).Bu, kötü Z endstop konumunu telafi etmek için kullanılır: "
-"örneğin, endstop sıfır noktanız aslında nozulu baskı tablasından 0.3mm "
-"uzakta bırakıyorsa, bu değeri -0.3 olarak ayarlayın (veya endstop'unuzu "
-"düzeltin)."
+"çıkarılır).Bu, kötü Z endstop konumunu telafi etmek için kullanılır: örneğin, "
+"endstop sıfır noktanız aslında nozulu baskı tablasından 0.3mm uzakta "
+"bırakıyorsa, bu değeri -0.3 olarak ayarlayın (veya endstop'unuzu düzeltin)."
msgid "Enable support"
msgstr "Desteği etkinleştir"
@@ -12964,8 +13020,7 @@ msgid ""
"Only create support for critical regions including sharp tail, cantilever, "
"etc."
msgstr ""
-"Yalnızca keskin kuyruk, konsol vb. gibi kritik bölgeler için destek "
-"oluşturun."
+"Yalnızca keskin kuyruk, konsol vb. gibi kritik bölgeler için destek oluşturun."
msgid "Remove small overhangs"
msgstr "Küçük çıkıntıları kaldır"
@@ -13002,8 +13057,7 @@ msgstr "Taban için arayüz filamentini azaltın"
msgid ""
"Avoid using support interface filament to print support base if possible."
msgstr ""
-"Destek tabanını yazdırmak için destek arayüzü filamentini kullanmaktan "
-"kaçının"
+"Destek tabanını yazdırmak için destek arayüzü filamentini kullanmaktan kaçının"
msgid ""
"Line width of support. If expressed as a %, it will be computed over the "
@@ -13078,8 +13132,8 @@ msgstr "Arayüz deseni"
msgid ""
"Line pattern of support interface. Default pattern for non-soluble support "
-"interface is Rectilinear, while default pattern for soluble support "
-"interface is Concentric"
+"interface is Rectilinear, while default pattern for soluble support interface "
+"is Concentric"
msgstr ""
"Destek arayüzünün çizgi deseni. Çözünmeyen destek arayüzü için varsayılan "
"model Doğrusaldır, çözünebilir destek arayüzü için varsayılan model ise "
@@ -13108,12 +13162,11 @@ msgid ""
"into a regular grid will create more stable supports (default), while snug "
"support towers will save material and reduce object scarring.\n"
"For tree support, slim and organic style will merge branches more "
-"aggressively and save a lot of material (default organic), while hybrid "
-"style will create similar structure to normal support under large flat "
-"overhangs."
+"aggressively and save a lot of material (default organic), while hybrid style "
+"will create similar structure to normal support under large flat overhangs."
msgstr ""
-"Destek stil ve şekli. Normal destek için, destekleri düzenli bir ızgara "
-"içine projelendirmek daha stabil destekler oluşturacaktır (varsayılan), aynı "
+"Destek stil ve şekli. Normal destek için, destekleri düzenli bir ızgara içine "
+"projelendirmek daha stabil destekler oluşturacaktır (varsayılan), aynı "
"zamanda sıkı destek kuleleri malzeme tasarrufu sağlar ve nesne üzerindeki "
"izleri azaltır.\n"
"Ağaç destek için, ince ve organik tarz, dalları daha etkili bir şekilde "
@@ -13162,8 +13215,8 @@ msgid "Tree support branch angle"
msgstr "Ağaç desteği dal açısı"
msgid ""
-"This setting determines the maximum overhang angle that t he branches of "
-"tree support allowed to make.If the angle is increased, the branches can be "
+"This setting determines the maximum overhang angle that t he branches of tree "
+"support allowed to make.If the angle is increased, the branches can be "
"printed more horizontally, allowing them to reach farther."
msgstr ""
"Bu ayar, ağaç desteğinin dallarının oluşmasına izin verilen maksimum çıkıntı "
@@ -13195,11 +13248,10 @@ msgstr "Dal Yoğunluğu"
#. TRN PrintSettings: "Organic supports" > "Branch Density"
msgid ""
-"Adjusts the density of the support structure used to generate the tips of "
-"the branches. A higher value results in better overhangs but the supports "
-"are harder to remove, thus it is recommended to enable top support "
-"interfaces instead of a high branch density value if dense interfaces are "
-"needed."
+"Adjusts the density of the support structure used to generate the tips of the "
+"branches. A higher value results in better overhangs but the supports are "
+"harder to remove, thus it is recommended to enable top support interfaces "
+"instead of a high branch density value if dense interfaces are needed."
msgstr ""
"Dalların uçlarını oluşturmak için kullanılan destek yapısının yoğunluğunu "
"ayarlar. Daha yüksek bir değer daha iyi çıkıntılarla sonuçlanır, ancak "
@@ -13211,8 +13263,8 @@ msgid "Adaptive layer height"
msgstr "Uyarlanabilir katman yüksekliği"
msgid ""
-"Enabling this option means the height of tree support layer except the "
-"first will be automatically calculated "
+"Enabling this option means the height of tree support layer except the first "
+"will be automatically calculated "
msgstr ""
"Bu seçeneğin etkinleştirilmesi, ilki hariç ağaç destek katmanının "
"yüksekliğinin otomatik olarak hesaplanacağı anlamına gelir "
@@ -13267,8 +13319,8 @@ msgstr "Çift duvarlı dal çapı"
#. TRN PrintSettings: "Organic supports" > "Branch Diameter"
msgid ""
"Branches with area larger than the area of a circle of this diameter will be "
-"printed with double walls for stability. Set this value to zero for no "
-"double walls."
+"printed with double walls for stability. Set this value to zero for no double "
+"walls."
msgstr ""
"Bu çaptaki bir dairenin alanından daha büyük alana sahip dallar, stabilite "
"için çift duvarlı olarak basılacaktır. Çift duvar olmaması için bu değeri "
@@ -13298,8 +13350,8 @@ msgid ""
"added before \"machine_start_gcode\"\n"
"G-code commands: M141/M191 S(0-255)"
msgstr ""
-"Hazne sıcaklığı kontrolü için bu seçeneği etkinleştirin. Önce bir M191 "
-"komutu eklenecek \"machine_start_gcode\"\n"
+"Hazne sıcaklığı kontrolü için bu seçeneği etkinleştirin. Önce bir M191 komutu "
+"eklenecek \"machine_start_gcode\"\n"
"G-code komut: M141/M191 S(0-255)"
msgid "Chamber temperature"
@@ -13377,11 +13429,11 @@ msgid ""
"The number of top solid layers is increased when slicing if the thickness "
"calculated by top shell layers is thinner than this value. This can avoid "
"having too thin shell when layer height is small. 0 means that this setting "
-"is disabled and thickness of top shell is absolutely determained by top "
-"shell layers"
+"is disabled and thickness of top shell is absolutely determained by top shell "
+"layers"
msgstr ""
-"Üst kabuk katmanları tarafından hesaplanan kalınlık bu değerden daha ince "
-"ise dilimleme sırasında üst katı katmanların sayısı artırılır. Bu, katman "
+"Üst kabuk katmanları tarafından hesaplanan kalınlık bu değerden daha ince ise "
+"dilimleme sırasında üst katı katmanların sayısı artırılır. Bu, katman "
"yüksekliği küçük olduğunda kabuğun çok ince olmasını önleyebilir. 0, bu "
"ayarın devre dışı olduğu ve üst kabuğun kalınlığının kesinlikle üst kabuk "
"katmanları tarafından belirlendiği anlamına gelir"
@@ -13404,12 +13456,11 @@ msgid "Wipe Distance"
msgstr "Temizleme mesafesi"
msgid ""
-"Discribe how long the nozzle will move along the last path when "
-"retracting. \n"
+"Discribe how long the nozzle will move along the last path when retracting. \n"
"\n"
"Depending on how long the wipe operation lasts, how fast and long the "
-"extruder/filament retraction settings are, a retraction move may be needed "
-"to retract the remaining filament. \n"
+"extruder/filament retraction settings are, a retraction move may be needed to "
+"retract the remaining filament. \n"
"\n"
"Setting a value in the retract amount before wipe setting below will perform "
"any excess retraction before the wipe, else it will be performed after."
@@ -13417,9 +13468,9 @@ msgstr ""
"Geri çekilirken nozulun son yol boyunca ne kadar süre hareket edeceğini "
"açıklayın. \n"
"\n"
-"Silme işleminin ne kadar sürdüğüne, ekstruder/filament geri çekme "
-"ayarlarının ne kadar hızlı ve uzun olduğuna bağlı olarak, kalan filamanı "
-"geri çekmek için bir geri çekme hareketine ihtiyaç duyulabilir. \n"
+"Silme işleminin ne kadar sürdüğüne, ekstruder/filament geri çekme ayarlarının "
+"ne kadar hızlı ve uzun olduğuna bağlı olarak, kalan filamanı geri çekmek için "
+"bir geri çekme hareketine ihtiyaç duyulabilir. \n"
"\n"
"Aşağıdaki silme ayarından önce geri çekme miktarına bir değer ayarlamak, "
"silme işleminden önce aşırı geri çekme işlemini gerçekleştirecektir, aksi "
@@ -13469,8 +13520,8 @@ msgid ""
"Angle at the apex of the cone that is used to stabilize the wipe tower. "
"Larger angle means wider base."
msgstr ""
-"Silme kulesini stabilize etmek için kullanılan koninin tepe noktasındaki "
-"açı. Daha büyük açı daha geniş taban anlamına gelir."
+"Silme kulesini stabilize etmek için kullanılan koninin tepe noktasındaki açı. "
+"Daha büyük açı daha geniş taban anlamına gelir."
msgid "Wipe tower purge lines spacing"
msgstr "Silme kulesi temizleme hatları aralığı"
@@ -13541,8 +13592,8 @@ msgid ""
"volumes below."
msgstr ""
"Bu vektör, silme kulesinde kullanılan her bir araçtan/araca geçiş için "
-"gerekli hacimleri kaydeder. Bu değerler, aşağıdaki tam temizleme "
-"hacimlerinin oluşturulmasını basitleştirmek için kullanılır."
+"gerekli hacimleri kaydeder. Bu değerler, aşağıdaki tam temizleme hacimlerinin "
+"oluşturulmasını basitleştirmek için kullanılır."
msgid ""
"Purging after filament change will be done inside objects' infills. This may "
@@ -13566,13 +13617,13 @@ msgstr ""
msgid ""
"This object will be used to purge the nozzle after a filament change to save "
-"filament and decrease the print time. Colours of the objects will be mixed "
-"as a result. It will not take effect, unless the prime tower is enabled."
+"filament and decrease the print time. Colours of the objects will be mixed as "
+"a result. It will not take effect, unless the prime tower is enabled."
msgstr ""
-"Bu nesne, filamentten tasarruf etmek ve baskı süresini azaltmak için "
-"filament değişiminden sonra nozulu temizlemek için kullanılacaktır. Sonuç "
-"olarak nesnelerin renkleri karıştırılacaktır. Prime tower "
-"etkinleştirilmediği sürece etkili olmayacaktır."
+"Bu nesne, filamentten tasarruf etmek ve baskı süresini azaltmak için filament "
+"değişiminden sonra nozulu temizlemek için kullanılacaktır. Sonuç olarak "
+"nesnelerin renkleri karıştırılacaktır. Prime tower etkinleştirilmediği sürece "
+"etkili olmayacaktır."
msgid "Maximal bridging distance"
msgstr "Maksimum köprüleme mesafesi"
@@ -13581,8 +13632,8 @@ msgid "Maximal distance between supports on sparse infill sections."
msgstr ""
"Bu nesne, filamentten tasarruf etmek ve baskı süresini azaltmak için bir "
"filament değişiminden sonra nozulu temizlemek için kullanılacaktır. Sonuç "
-"olarak nesnelerin renkleri karıştırılacaktır. Prime tower "
-"etkinleştirilmediği sürece etkili olmayacaktır."
+"olarak nesnelerin renkleri karıştırılacaktır. Prime tower etkinleştirilmediği "
+"sürece etkili olmayacaktır."
msgid "X-Y hole compensation"
msgstr "X-Y delik dengeleme"
@@ -13607,8 +13658,8 @@ msgid ""
"assembling issue"
msgstr ""
"Nesnenin konturu XY düzleminde yapılandırılan değer kadar büyütülür veya "
-"küçültülür. Pozitif değer konturu büyütür. Negatif değer konturu küçültür. "
-"Bu fonksiyon, nesnenin montaj sorunu olduğunda boyutu hafifçe ayarlamak için "
+"küçültülür. Pozitif değer konturu büyütür. Negatif değer konturu küçültür. Bu "
+"fonksiyon, nesnenin montaj sorunu olduğunda boyutu hafifçe ayarlamak için "
"kullanılır"
msgid "Convert holes to polyholes"
@@ -13632,14 +13683,14 @@ msgstr "Çokgen delik tespiti marjı"
msgid ""
"Maximum defection of a point to the estimated radius of the circle.\n"
"As cylinders are often exported as triangles of varying size, points may not "
-"be on the circle circumference. This setting allows you some leway to "
-"broaden the detection.\n"
+"be on the circle circumference. This setting allows you some leway to broaden "
+"the detection.\n"
"In mm or in % of the radius."
msgstr ""
"Bir noktanın dairenin tahmini yarıçapına göre maksimum sapması.\n"
"Silindirler genellikle farklı boyutlarda üçgenler olarak ihraç edildiğinden, "
-"noktalar daire çevresinde olmayabilir. Bu ayar, algılamayı genişletmeniz "
-"için size biraz alan sağlar.\n"
+"noktalar daire çevresinde olmayabilir. Bu ayar, algılamayı genişletmeniz için "
+"size biraz alan sağlar.\n"
"inc mm cinsinden veya yarıçapın %'si cinsinden."
msgid "Polyhole twist"
@@ -13662,8 +13713,8 @@ msgid "Format of G-code thumbnails"
msgstr "G kodu küçük resimlerinin formatı"
msgid ""
-"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, "
-"QOI for low memory firmware"
+"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, QOI "
+"for low memory firmware"
msgstr ""
"G kodu küçük resimlerinin formatı: En iyi kalite için PNG, en küçük boyut "
"için JPG, düşük bellekli donanım yazılımı için QOI"
@@ -13684,11 +13735,11 @@ msgstr ""
msgid ""
"Classic wall generator produces walls with constant extrusion width and for "
-"very thin areas is used gap-fill. Arachne engine produces walls with "
-"variable extrusion width"
+"very thin areas is used gap-fill. Arachne engine produces walls with variable "
+"extrusion width"
msgstr ""
-"Klasik duvar oluşturucu sabit ekstrüzyon genişliğine sahip duvarlar üretir "
-"ve çok ince alanlar için boşluk doldurma kullanılır. Arachne motoru değişken "
+"Klasik duvar oluşturucu sabit ekstrüzyon genişliğine sahip duvarlar üretir ve "
+"çok ince alanlar için boşluk doldurma kullanılır. Arachne motoru değişken "
"ekstrüzyon genişliğine sahip duvarlar üretir"
msgid "Classic"
@@ -13715,20 +13766,19 @@ msgstr "Duvar geçiş filtresi oranı"
msgid ""
"Prevent transitioning back and forth between one extra wall and one less. "
"This margin extends the range of extrusion widths which follow to [Minimum "
-"wall width - margin, 2 * Minimum wall width + margin]. Increasing this "
-"margin reduces the number of transitions, which reduces the number of "
-"extrusion starts/stops and travel time. However, large extrusion width "
-"variation can lead to under- or overextrusion problems. It's expressed as a "
-"percentage over nozzle diameter"
+"wall width - margin, 2 * Minimum wall width + margin]. Increasing this margin "
+"reduces the number of transitions, which reduces the number of extrusion "
+"starts/stops and travel time. However, large extrusion width variation can "
+"lead to under- or overextrusion problems. It's expressed as a percentage over "
+"nozzle diameter"
msgstr ""
-"Fazladan bir duvar ile bir eksik arasında ileri geri geçişi önleyin. Bu "
-"kenar boşluğu, [Minimum duvar genişliği - kenar boşluğu, 2 * Minimum duvar "
+"Fazladan bir duvar ile bir eksik arasında ileri geri geçişi önleyin. Bu kenar "
+"boşluğu, [Minimum duvar genişliği - kenar boşluğu, 2 * Minimum duvar "
"genişliği + kenar boşluğu] şeklinde takip eden ekstrüzyon genişlikleri "
"aralığını genişletir. Bu marjın arttırılması geçiş sayısını azaltır, bu da "
"ekstrüzyonun başlama/durma sayısını ve seyahat süresini azaltır. Bununla "
-"birlikte, büyük ekstrüzyon genişliği değişimi, yetersiz veya aşırı "
-"ekstrüzyon sorunlarına yol açabilir. Nozul çapına göre yüzde olarak ifade "
-"edilir"
+"birlikte, büyük ekstrüzyon genişliği değişimi, yetersiz veya aşırı ekstrüzyon "
+"sorunlarına yol açabilir. Nozul çapına göre yüzde olarak ifade edilir"
msgid "Wall transitioning threshold angle"
msgstr "Duvar geçiş açısı"
@@ -13740,11 +13790,11 @@ msgid ""
"this setting reduces the number and length of these center walls, but may "
"leave gaps or overextrude"
msgstr ""
-"Çift ve tek sayıdaki duvarlar arasında geçişler ne zaman oluşturulmalıdır? "
-"Bu ayardan daha büyük bir açıya sahip bir kama şeklinin geçişleri olmayacak "
-"ve kalan alanı dolduracak şekilde ortada hiçbir duvar basılmayacaktır. Bu "
-"ayarın düşürülmesi, bu merkez duvarların sayısını ve uzunluğunu azaltır "
-"ancak boşluklara veya aşırı çıkıntıya neden olabilir"
+"Çift ve tek sayıdaki duvarlar arasında geçişler ne zaman oluşturulmalıdır? Bu "
+"ayardan daha büyük bir açıya sahip bir kama şeklinin geçişleri olmayacak ve "
+"kalan alanı dolduracak şekilde ortada hiçbir duvar basılmayacaktır. Bu ayarın "
+"düşürülmesi, bu merkez duvarların sayısını ve uzunluğunu azaltır ancak "
+"boşluklara veya aşırı çıkıntıya neden olabilir"
msgid "Wall distribution count"
msgstr "Duvar dağılım sayısı"
@@ -13760,9 +13810,9 @@ msgid "Minimum feature size"
msgstr "Minimum özellik boyutu"
msgid ""
-"Minimum thickness of thin features. Model features that are thinner than "
-"this value will not be printed, while features thicker than the Minimum "
-"feature size will be widened to the Minimum wall width. It's expressed as a "
+"Minimum thickness of thin features. Model features that are thinner than this "
+"value will not be printed, while features thicker than the Minimum feature "
+"size will be widened to the Minimum wall width. It's expressed as a "
"percentage over nozzle diameter"
msgstr ""
"İnce özellikler için minimum kalınlık. Bu değerden daha ince olan model "
@@ -13779,28 +13829,27 @@ msgid ""
"\n"
"NOTE: Bottom and top surfaces will not be affected by this value to prevent "
"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the "
-"Advanced settings below to adjust the sensitivity of what is considered a "
-"top-surface. 'One wall threshold' is only visibile if this setting is set "
-"above the default value of 0.5, or if single-wall top surfaces is enabled."
+"Advanced settings below to adjust the sensitivity of what is considered a top-"
+"surface. 'One wall threshold' is only visibile if this setting is set above "
+"the default value of 0.5, or if single-wall top surfaces is enabled."
msgstr ""
"Yazdırma süresini artırabilecek kısa, kapatılmamış duvarların yazdırılmasını "
"önlemek için bu değeri ayarlayın. Daha yüksek değerler daha fazla ve daha "
"uzun duvarları kaldırır.\n"
"\n"
-"NOT: Modelin dış kısmında görsel boşluk kalmaması için alt ve üst yüzeyler "
-"bu değerden etkilenmeyecektir. Üst yüzey olarak kabul edilen şeyin "
-"hassasiyetini ayarlamak için aşağıdaki Gelişmiş ayarlarda 'Tek duvar "
-"eşiği'ni ayarlayın. 'Tek duvar eşiği' yalnızca bu ayar varsayılan değer olan "
-"0,5'in üzerine ayarlandığında veya tek duvarlı üst yüzeyler "
-"etkinleştirildiğinde görünür."
+"NOT: Modelin dış kısmında görsel boşluk kalmaması için alt ve üst yüzeyler bu "
+"değerden etkilenmeyecektir. Üst yüzey olarak kabul edilen şeyin hassasiyetini "
+"ayarlamak için aşağıdaki Gelişmiş ayarlarda 'Tek duvar eşiği'ni ayarlayın. "
+"'Tek duvar eşiği' yalnızca bu ayar varsayılan değer olan 0,5'in üzerine "
+"ayarlandığında veya tek duvarlı üst yüzeyler etkinleştirildiğinde görünür."
msgid "First layer minimum wall width"
msgstr "İlk katman minimum duvar genişliği"
msgid ""
-"The minimum wall width that should be used for the first layer is "
-"recommended to be set to the same size as the nozzle. This adjustment is "
-"expected to enhance adhesion."
+"The minimum wall width that should be used for the first layer is recommended "
+"to be set to the same size as the nozzle. This adjustment is expected to "
+"enhance adhesion."
msgstr ""
"İlk katman için kullanılması gereken minimum duvar genişliğinin nozul ile "
"aynı boyuta ayarlanması tavsiye edilir. Bu ayarlamanın yapışmayı artırması "
@@ -13825,8 +13874,8 @@ msgstr "Dar iç katı dolguyu tespit et"
msgid ""
"This option will auto detect narrow internal solid infill area. If enabled, "
-"concentric pattern will be used for the area to speed printing up. "
-"Otherwise, rectilinear pattern is used defaultly."
+"concentric pattern will be used for the area to speed printing up. Otherwise, "
+"rectilinear pattern is used defaultly."
msgstr ""
"Bu seçenek dar dahili katı dolgu alanını otomatik olarak algılayacaktır. "
"Etkinleştirilirse, yazdırmayı hızlandırmak amacıyla alanda eşmerkezli desen "
@@ -13872,8 +13921,7 @@ msgstr "Yönlendirme Seçenekleri"
msgid "Orient options: 0-disable, 1-enable, others-auto"
msgstr ""
-"Yönlendirme seçenekleri: 0-devre dışı bırak, 1-etkinleştir, diğerleri-"
-"otomatik"
+"Yönlendirme seçenekleri: 0-devre dışı bırak, 1-etkinleştir, diğerleri-otomatik"
msgid "Rotation angle around the Z axis in degrees."
msgstr "Z ekseni etrafında derece cinsinden dönüş açısı."
@@ -13918,13 +13966,13 @@ msgstr ""
"ettiğini bilmesi için bu değişkene yazması gerekir."
msgid ""
-"Retraction state at the beginning of the custom G-code block. If the custom "
-"G-code moves the extruder axis, it should write to this variable so "
-"PrusaSlicer deretracts correctly when it gets control back."
+"Retraction state at the beginning of the custom G-code block. If the custom G-"
+"code moves the extruder axis, it should write to this variable so PrusaSlicer "
+"deretracts correctly when it gets control back."
msgstr ""
"Özel G kodu bloğunun başlangıcındaki geri çekilme durumu. Özel G kodu "
-"ekstruder eksenini hareket ettirirse, Slicer'ın kontrolü geri aldığında "
-"doğru şekilde geri çekme yapması için bu değişkene yazması gerekir."
+"ekstruder eksenini hareket ettirirse, Slicer'ın kontrolü geri aldığında doğru "
+"şekilde geri çekme yapması için bu değişkene yazması gerekir."
msgid "Extra deretraction"
msgstr "Ekstra deretraksiyon"
@@ -14009,18 +14057,18 @@ msgid ""
"Weight per extruder extruded during the entire print. Calculated from "
"filament_density value in Filament Settings."
msgstr ""
-"Baskının tamamı boyunca ekstrüzyon yapılan ekstruder başına ağırlık. "
-"Filament Ayarlarındaki filaman yoğunluğu değerinden hesaplanır."
+"Baskının tamamı boyunca ekstrüzyon yapılan ekstruder başına ağırlık. Filament "
+"Ayarlarındaki filaman yoğunluğu değerinden hesaplanır."
msgid "Total weight"
msgstr "Toplam ağırlık"
msgid ""
-"Total weight of the print. Calculated from filament_density value in "
-"Filament Settings."
+"Total weight of the print. Calculated from filament_density value in Filament "
+"Settings."
msgstr ""
-"Baskının toplam ağırlığı. Filament Ayarlarındaki filaman yoğunluğu "
-"değerinden hesaplanır."
+"Baskının toplam ağırlığı. Filament Ayarlarındaki filaman yoğunluğu değerinden "
+"hesaplanır."
msgid "Total layer count"
msgstr "Toplam katman sayısı"
@@ -14069,8 +14117,8 @@ msgstr ""
"cinsindendir."
msgid ""
-"The vector has two elements: x and y dimension of the bounding box. Values "
-"in mm."
+"The vector has two elements: x and y dimension of the bounding box. Values in "
+"mm."
msgstr ""
"Vektörün iki öğesi vardır: sınırlayıcı kutunun x ve y boyutu. Değerler mm "
"cinsindendir."
@@ -14082,8 +14130,8 @@ msgid ""
"Vector of points of the first layer convex hull. Each element has the "
"following format:'[x, y]' (x and y are floating-point numbers in mm)."
msgstr ""
-"Birinci katmanın dışbükey gövdesinin noktalarının vektörü. Her öğe şu "
-"formata sahiptir:'[x, y]' (x ve y, mm cinsinden kayan noktalı sayılardır)."
+"Birinci katmanın dışbükey gövdesinin noktalarının vektörü. Her öğe şu formata "
+"sahiptir:'[x, y]' (x ve y, mm cinsinden kayan noktalı sayılardır)."
msgid "Bottom-left corner of first layer bounding box"
msgstr "İlk katman sınırlayıcı kutusunun sol alt köşesi"
@@ -14279,8 +14327,7 @@ msgstr "Sağlanan dosya boş olduğundan okunamadı"
msgid "Unknown file format. Input file must have .3mf or .zip.amf extension."
msgstr ""
-"Bilinmeyen dosya formatı. Giriş dosyası .3mf veya .zip.amf uzantılı "
-"olmalıdır."
+"Bilinmeyen dosya formatı. Giriş dosyası .3mf veya .zip.amf uzantılı olmalıdır."
msgid "Canceled"
msgstr "İptal edildi"
@@ -14402,8 +14449,7 @@ msgstr "yeni ön ayar oluşturma başarısız oldu."
msgid ""
"Are you sure to cancel the current calibration and return to the home page?"
msgstr ""
-"Mevcut kalibrasyonu iptal edip ana sayfaya dönmek istediğinizden emin "
-"misiniz?"
+"Mevcut kalibrasyonu iptal edip ana sayfaya dönmek istediğinizden emin misiniz?"
msgid "No Printer Connected!"
msgstr "Yazıcı Bağlı Değil!"
@@ -14418,16 +14464,16 @@ msgid "The input value size must be 3."
msgstr "Giriş değeri boyutu 3 olmalıdır."
msgid ""
-"This machine type can only hold 16 history results per nozzle. You can "
-"delete the existing historical results and then start calibration. Or you "
-"can continue the calibration, but you cannot create new calibration "
-"historical results. \n"
+"This machine type can only hold 16 history results per nozzle. You can delete "
+"the existing historical results and then start calibration. Or you can "
+"continue the calibration, but you cannot create new calibration historical "
+"results. \n"
"Do you still want to continue the calibration?"
msgstr ""
"Bu makine tipi, püskürtme ucu başına yalnızca 16 geçmiş sonucu tutabilir. "
-"Mevcut geçmiş sonuçları silebilir ve ardından kalibrasyona "
-"başlayabilirsiniz. Veya kalibrasyona devam edebilirsiniz ancak yeni "
-"kalibrasyon geçmişi sonuçları oluşturamazsınız.\n"
+"Mevcut geçmiş sonuçları silebilir ve ardından kalibrasyona başlayabilirsiniz. "
+"Veya kalibrasyona devam edebilirsiniz ancak yeni kalibrasyon geçmişi "
+"sonuçları oluşturamazsınız.\n"
"Hala kalibrasyona devam etmek istiyor musunuz?"
msgid "Connecting to printer..."
@@ -14441,9 +14487,9 @@ msgstr "Akış Dinamiği Kalibrasyonu sonucu yazıcıya kaydedildi"
#, c-format, boost-format
msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to override the historical result?"
+"There is already a historical calibration result with the same name: %s. Only "
+"one of the results with the same name is saved. Are you sure you want to "
+"override the historical result?"
msgstr ""
"Aynı ada sahip geçmiş bir kalibrasyon sonucu zaten var: %s. Aynı ada sahip "
"sonuçlardan yalnızca biri kaydedilir. Geçmiş sonucu geçersiz kılmak "
@@ -14454,8 +14500,8 @@ msgid ""
"This machine type can only hold %d history results per nozzle. This result "
"will not be saved."
msgstr ""
-"Bu makine türü püskürtme ucu başına yalnızca %d geçmiş sonucunu tutabilir. "
-"Bu sonuç kaydedilmeyecek."
+"Bu makine türü püskürtme ucu başına yalnızca %d geçmiş sonucunu tutabilir. Bu "
+"sonuç kaydedilmeyecek."
msgid "Internal Error"
msgstr "İç hata"
@@ -14474,10 +14520,10 @@ msgstr "Akış Dinamiği Kalibrasyonuna ne zaman ihtiyacınız olur"
msgid ""
"We now have added the auto-calibration for different filaments, which is "
-"fully automated and the result will be saved into the printer for future "
-"use. You only need to do the calibration in the following limited cases:\n"
-"1. If you introduce a new filament of different brands/models or the "
-"filament is damp;\n"
+"fully automated and the result will be saved into the printer for future use. "
+"You only need to do the calibration in the following limited cases:\n"
+"1. If you introduce a new filament of different brands/models or the filament "
+"is damp;\n"
"2. if the nozzle is worn out or replaced with a new one;\n"
"3. If the max volumetric speed or print temperature is changed in the "
"filament setting."
@@ -14499,39 +14545,38 @@ msgid ""
"\n"
"Usually the calibration is unnecessary. When you start a single color/"
"material print, with the \"flow dynamics calibration\" option checked in the "
-"print start menu, the printer will follow the old way, calibrate the "
-"filament before the print; When you start a multi color/material print, the "
-"printer will use the default compensation parameter for the filament during "
-"every filament switch which will have a good result in most cases.\n"
+"print start menu, the printer will follow the old way, calibrate the filament "
+"before the print; When you start a multi color/material print, the printer "
+"will use the default compensation parameter for the filament during every "
+"filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"Lütfen Akış Dinamiği Kalibrasyonunun ayrıntılarını wiki'mizden "
-"bulabilirsiniz.\n"
+"Akış Dinamiği Kalibrasyonu ile ilgili detayları Wiki'mizden bulabilirsiniz.\n"
"\n"
-"Genellikle kalibrasyon gereksizdir. Yazdırma başlat menüsündeki \"akış "
-"dinamiği kalibrasyonu\" seçeneği işaretliyken tek renkli/malzeme baskısını "
-"başlattığınızda, yazıcı eski yöntemi izleyecek, yazdırmadan önce filamenti "
-"kalibre edecektir; Çok renkli/malzeme baskısını başlattığınızda, yazıcı her "
-"filament değişiminde filament için varsayılan dengeleme parametresini "
-"kullanacaktır ve bu çoğu durumda iyi bir sonuç verecektir.\n"
+"Genellikle kalibrasyon gereksizdir. Baskı başlatma menüsünde \"akış "
+"dinamikleri kalibrasyonu\" seçeneği işaretliyken tek renkli/malzemeli bir "
+"baskı başlattığınızda, yazıcı eski yolu izleyecek, baskıdan önce filamenti "
+"kalibre edecektir; Çok renkli/malzemeli bir baskı başlattığınızda, yazıcı her "
+"filament değişimi sırasında filament için varsayılan telafi parametresini "
+"kullanacaktır ve bu da çoğu durumda iyi bir sonuç verecektir.\n"
"\n"
-"Kalibrasyon sonucunun güvenilir olmamasına yol açacak birkaç durum olduğunu "
-"lütfen unutmayın: kalibrasyonu yapmak için doku plakası kullanmak; baskı "
-"plakasının yapışması iyi değil (lütfen baskı plakasını yıkayın veya "
-"yapıştırıcı uygulayın!) ...Daha fazlasını wiki'mizden bulabilirsiniz.\n"
+"Yapı plakası üzerinde yetersiz yapışma gibi kalibrasyon sonuçlarını "
+"güvenilmez hale getirebilecek birkaç durum olduğunu lütfen unutmayın. "
+"Yapıştırma plakası yıkanarak veya yapıştırıcı uygulanarak yapışmanın "
+"iyileştirilmesi sağlanabilir. Bu konu hakkında daha fazla bilgi için lütfen "
+"Wiki sayfamıza bakın.\n"
"\n"
-"Testimizde kalibrasyon sonuçlarında yaklaşık yüzde 10'luk bir titreşim var "
-"ve bu da sonucun her kalibrasyonda tam olarak aynı olmamasına neden "
-"olabilir. Yeni güncellemelerle iyileştirmeler yapmak için hâlâ temel nedeni "
-"araştırıyoruz."
+"Kalibrasyon sonuçları testimizde yaklaşık yüzde 10 titremeye sahiptir, bu da "
+"sonucun her kalibrasyonda tam olarak aynı olmamasına neden olabilir. Yeni "
+"güncellemelerle iyileştirmeler yapmak için hala temel nedeni araştırıyoruz."
msgid "When to use Flow Rate Calibration"
msgstr "Akış Hızı Kalibrasyonu ne zaman kullanılmalı"
@@ -14571,10 +14616,10 @@ msgstr ""
msgid ""
"Flow Rate Calibration measures the ratio of expected to actual extrusion "
"volumes. The default setting works well in Bambu Lab printers and official "
-"filaments as they were pre-calibrated and fine-tuned. For a regular "
-"filament, you usually won't need to perform a Flow Rate Calibration unless "
-"you still see the listed defects after you have done other calibrations. For "
-"more details, please check out the wiki article."
+"filaments as they were pre-calibrated and fine-tuned. For a regular filament, "
+"you usually won't need to perform a Flow Rate Calibration unless you still "
+"see the listed defects after you have done other calibrations. For more "
+"details, please check out the wiki article."
msgstr ""
"Akış Hızı Kalibrasyonu, beklenen ekstrüzyon hacimlerinin gerçek ekstrüzyon "
"hacimlerine oranını ölçer. Varsayılan ayar, önceden kalibre edilmiş ve ince "
@@ -14589,13 +14634,12 @@ msgid ""
"directly measuring the calibration patterns. However, please be advised that "
"the efficacy and accuracy of this method may be compromised with specific "
"types of materials. Particularly, filaments that are transparent or semi-"
-"transparent, sparkling-particled, or have a high-reflective finish may not "
-"be suitable for this calibration and can produce less-than-desirable "
-"results.\n"
+"transparent, sparkling-particled, or have a high-reflective finish may not be "
+"suitable for this calibration and can produce less-than-desirable results.\n"
"\n"
-"The calibration results may vary between each calibration or filament. We "
-"are still improving the accuracy and compatibility of this calibration "
-"through firmware updates over time.\n"
+"The calibration results may vary between each calibration or filament. We are "
+"still improving the accuracy and compatibility of this calibration through "
+"firmware updates over time.\n"
"\n"
"Caution: Flow Rate Calibration is an advanced process, to be attempted only "
"by those who fully understand its purpose and implications. Incorrect usage "
@@ -14606,8 +14650,8 @@ msgstr ""
"kullanarak kalibrasyon modellerini doğrudan ölçer. Ancak, bu yöntemin "
"etkinliğinin ve doğruluğunun belirli malzeme türleriyle tehlikeye "
"girebileceğini lütfen unutmayın. Özellikle şeffaf veya yarı şeffaf, parlak "
-"parçacıklı veya yüksek yansıtıcı yüzeye sahip filamentler bu kalibrasyon "
-"için uygun olmayabilir ve arzu edilenden daha az sonuçlar üretebilir.\n"
+"parçacıklı veya yüksek yansıtıcı yüzeye sahip filamentler bu kalibrasyon için "
+"uygun olmayabilir ve arzu edilenden daha az sonuçlar üretebilir.\n"
"\n"
"Kalibrasyon sonuçları her kalibrasyon veya filament arasında farklılık "
"gösterebilir. Zaman içinde ürün yazılımı güncellemeleriyle bu kalibrasyonun "
@@ -14616,8 +14660,8 @@ msgstr ""
"Dikkat: Akış Hızı Kalibrasyonu, yalnızca amacını ve sonuçlarını tam olarak "
"anlayan kişiler tarafından denenmesi gereken gelişmiş bir işlemdir. Yanlış "
"kullanım, ortalamanın altında baskılara veya yazıcının zarar görmesine neden "
-"olabilir. Lütfen işlemi yapmadan önce işlemi dikkatlice okuyup "
-"anladığınızdan emin olun."
+"olabilir. Lütfen işlemi yapmadan önce işlemi dikkatlice okuyup anladığınızdan "
+"emin olun."
msgid "When you need Max Volumetric Speed Calibration"
msgstr "Maksimum Hacimsel Hız Kalibrasyonuna ihtiyaç duyduğunuzda"
@@ -14639,15 +14683,15 @@ msgid "We found the best Flow Dynamics Calibration Factor"
msgstr "En iyi Akış Dinamiği Kalibrasyon Faktörünü bulduk"
msgid ""
-"Part of the calibration failed! You may clean the plate and retry. The "
-"failed test result would be dropped."
+"Part of the calibration failed! You may clean the plate and retry. The failed "
+"test result would be dropped."
msgstr ""
"Kalibrasyonun bir kısmı başarısız oldu! Plakayı temizleyip tekrar "
"deneyebilirsiniz. Başarısız olan test sonucu görmezden gelinir."
msgid ""
-"*We recommend you to add brand, materia, type, and even humidity level in "
-"the Name"
+"*We recommend you to add brand, materia, type, and even humidity level in the "
+"Name"
msgstr "*İsme marka, malzeme, tür ve hatta nem seviyesini eklemenizi öneririz"
msgid "Failed"
@@ -14661,25 +14705,15 @@ msgstr "Ad 40 karakteri aşamaz."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
"Aynı ada sahip sonuçlardan yalnızca biri kaydedilecektir. Diğer sonuçları "
"geçersiz kılmak istediğinizden emin misiniz?"
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Aynı ada sahip geçmiş bir kalibrasyon sonucu zaten var: %s. Aynı ada sahip "
-"sonuçlardan yalnızca biri kaydedilir. Geçmiş sonucu geçersiz kılmak "
-"istediğinizden emin misiniz?"
-
msgid "Please find the best line on your plate"
msgstr "Lütfen plakadaki en iyi çizgiyi bulun"
-msgid "Please find the cornor with perfect degree of extrusion"
+msgid "Please find the corner with perfect degree of extrusion"
msgstr "Lütfen mükemmel ekstrüzyon derecesine sahip köşeyi bulun"
msgid "Input Value"
@@ -14934,6 +14968,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU"
@@ -15030,6 +15067,9 @@ msgstr "Gerekirse dizin ayırıcısı olarak eğik çizgileri ( / ) kullanın."
msgid "Upload to storage"
msgstr "Depolama alanına yükle"
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "Yüklenen dosya adı \"%s\" ile bitmiyor. Devam etmek istiyor musunuz?"
@@ -15165,7 +15205,7 @@ msgid "Basic Information"
msgstr "Temel Bilgiler"
msgid "Add Filament Preset under this filament"
-msgstr "Bu filamanın altına Filament Ön Ayarını ekleyin"
+msgstr "Bu filamentin altına Filament Ön Ayarını ekleyin"
msgid "We could create the filament presets for your following printer:"
msgstr "Aşağıdaki yazıcınız için filament ön ayarlarını oluşturabiliriz:"
@@ -15240,8 +15280,8 @@ msgid ""
"name. Do you want to continue?"
msgstr ""
"Oluşturduğunuz %s Filament adı zaten mevcut.\n"
-"Oluşturmaya devam ederseniz oluşturulan ön ayar tam adıyla "
-"görüntülenecektir. Devam etmek istiyor musun?"
+"Oluşturmaya devam ederseniz oluşturulan ön ayar tam adıyla görüntülenecektir. "
+"Devam etmek istiyor musun?"
msgid "Some existing presets have failed to be created, as follows:\n"
msgstr "Aşağıdaki gibi bazı mevcut ön ayarlar oluşturulamadı:\n"
@@ -15254,8 +15294,8 @@ msgstr ""
"Yeniden yazmak ister misin?"
msgid ""
-"We would rename the presets as \"Vendor Type Serial @printer you selected"
-"\". \n"
+"We would rename the presets as \"Vendor Type Serial @printer you "
+"selected\". \n"
"To add preset for more printers, Please go to printer selection"
msgstr ""
"Ön ayarları şu şekilde yeniden adlandırırdık: \"Satıcı Türü Seçtiğiniz Seri "
@@ -15357,15 +15397,15 @@ msgid ""
"You have not yet chosen which printer preset to create based on. Please "
"choose the vendor and model of the printer"
msgstr ""
-"Hangi yazıcı ön ayarının temel alınacağını henüz seçmediniz. Lütfen "
-"yazıcının satıcısını ve modelini seçin"
+"Hangi yazıcı ön ayarının temel alınacağını henüz seçmediniz. Lütfen yazıcının "
+"satıcısını ve modelini seçin"
msgid ""
"You have entered an illegal input in the printable area section on the first "
"page. Please check before creating it."
msgstr ""
-"İlk sayfadaki yazdırılabilir alan kısmına geçersiz bir giriş yaptınız. "
-"Lütfen oluşturmadan önce kontrol edin."
+"İlk sayfadaki yazdırılabilir alan kısmına geçersiz bir giriş yaptınız. Lütfen "
+"oluşturmadan önce kontrol edin."
msgid "The custom printer or model is not inputed, place input."
msgstr "Özel yazıcı veya model girilmedi lütfen giriş yapın."
@@ -15382,8 +15422,7 @@ msgstr ""
"Oluşturduğunuz yazıcı ön ayarının zaten aynı ada sahip bir ön ayarı var. "
"Üzerine yazmak istiyor musunuz?\n"
"\tEvet: Aynı adı taşıyan yazıcı ön ayarının üzerine yazın; aynı ön ayar adı "
-"taşıyan filaman ve proses ön ayarları yeniden oluşturulacak ve aynı ön "
-"ayar \n"
+"taşıyan filaman ve proses ön ayarları yeniden oluşturulacak ve aynı ön ayar \n"
"adı olmayan filament ve işlem ön ayarları rezerve edilecektir.\n"
"\tİptal: Ön ayar oluşturmayın, oluşturma arayüzüne dönün."
@@ -15429,8 +15468,7 @@ msgstr ""
msgid ""
"You have not yet selected the printer to replace the nozzle, please choose."
-msgstr ""
-"Hala nozulu değiştirmek için yazıcı seçmediniz, lütfen bir seçim yapın."
+msgstr "Hala nozulu değiştirmek için yazıcı seçmediniz, lütfen bir seçim yapın."
msgid "Create Printer Successful"
msgstr "Yazıcı Oluşturma Başarılı"
@@ -15513,8 +15551,8 @@ msgstr "Dışa aktarma başarılı"
#, c-format, boost-format
msgid ""
-"The '%s' folder already exists in the current directory. Do you want to "
-"clear it and rebuild it.\n"
+"The '%s' folder already exists in the current directory. Do you want to clear "
+"it and rebuild it.\n"
"If not, a time suffix will be added, and you can modify the name after "
"creation."
msgstr ""
@@ -15553,8 +15591,8 @@ msgid ""
"Only printer names with user printer presets will be displayed, and each "
"preset you choose will be exported as a zip."
msgstr ""
-"Yalnızca kullanıcı yazıcı ön ayarlarına sahip yazıcı adları görüntülenecek "
-"ve seçtiğiniz her ön ayar zip olarak dışa aktarılacaktır."
+"Yalnızca kullanıcı yazıcı ön ayarlarına sahip yazıcı adları görüntülenecek ve "
+"seçtiğiniz her ön ayar zip olarak dışa aktarılacaktır."
msgid ""
"Only the filament names with user filament presets will be displayed, \n"
@@ -15562,13 +15600,13 @@ msgid ""
"exported as a zip."
msgstr ""
"Yalnızca kullanıcı filamenti ön ayarlarına sahip filament adları \n"
-"görüntülenecek ve seçtiğiniz her filament adındaki tüm kullanıcı filamenti "
-"ön ayarları zip olarak dışa aktarılacaktır."
+"görüntülenecek ve seçtiğiniz her filament adındaki tüm kullanıcı filamenti ön "
+"ayarları zip olarak dışa aktarılacaktır."
msgid ""
"Only printer names with changed process presets will be displayed, \n"
-"and all user process presets in each printer name you select will be "
-"exported as a zip."
+"and all user process presets in each printer name you select will be exported "
+"as a zip."
msgstr ""
"Yalnızca işlem ön ayarları değiştirilen yazıcı adları görüntülenecek \n"
"ve seçtiğiniz her yazıcı adındaki tüm kullanıcı işlem ön ayarları zip olarak "
@@ -15592,8 +15630,8 @@ msgid "Filament presets under this filament"
msgstr "Bu filamentin altındaki filament ön ayarları"
msgid ""
-"Note: If the only preset under this filament is deleted, the filament will "
-"be deleted after exiting the dialog."
+"Note: If the only preset under this filament is deleted, the filament will be "
+"deleted after exiting the dialog."
msgstr ""
"Not: Bu filamentin altındaki tek ön ayar silinirse, diyalogdan çıkıldıktan "
"sonra filament silinecektir."
@@ -15662,7 +15700,7 @@ msgstr "Günlük İpuçları"
#, c-format, boost-format
msgid "nozzle memorized: %.1f %s"
-msgstr ""
+msgstr "hafızaya alınan nozul: %.1f %s"
msgid ""
"Your nozzle diameter in preset is not consistent with memorized nozzle "
@@ -15706,6 +15744,12 @@ msgstr "Çıkış yaptığınızdan emin misiniz?"
msgid "Refresh Printers"
msgstr "Yazıcıları Yenile"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -15724,8 +15768,8 @@ msgid ""
"On this system, %s uses HTTPS certificates from the system Certificate Store "
"or Keychain."
msgstr ""
-"Bu sistemde %s, sistem Sertifika Deposu veya Anahtar Zincirinden alınan "
-"HTTPS sertifikalarını kullanıyor."
+"Bu sistemde %s, sistem Sertifika Deposu veya Anahtar Zincirinden alınan HTTPS "
+"sertifikalarını kullanıyor."
msgid ""
"To use a custom CA file, please import your CA file into Certificate Store / "
@@ -15875,31 +15919,30 @@ msgstr ""
"Hata: \"%2%\""
msgid ""
-"It has a small layer height, and results in almost negligible layer lines "
-"and high printing quality. It is suitable for most general printing cases."
+"It has a small layer height, and results in almost negligible layer lines and "
+"high printing quality. It is suitable for most general printing cases."
msgstr ""
"Küçük bir katman yüksekliğine sahiptir ve neredeyse ihmal edilebilir katman "
"çizgileri ve yüksek baskı kalitesi sağlar. Çoğu genel yazdırma durumu için "
"uygundur."
msgid ""
-"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds "
-"and acceleration, and the sparse infill pattern is Gyroid. So, it results in "
-"much higher printing quality, but a much longer printing time."
+"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds and "
+"acceleration, and the sparse infill pattern is Gyroid. So, it results in much "
+"higher printing quality, but a much longer printing time."
msgstr ""
"0,2 mm’lik nozülün varsayılan profiliyle karşılaştırıldığında daha düşük hız "
-"ve ivmeye sahiptir ve seyrek dolgu deseni Gyroid’dir. Böylece çok daha "
-"yüksek baskı kalitesi elde edilir, ancak çok daha uzun baskı süresi elde "
-"edilir."
+"ve ivmeye sahiptir ve seyrek dolgu deseni Gyroid’dir. Böylece çok daha yüksek "
+"baskı kalitesi elde edilir, ancak çok daha uzun baskı süresi elde edilir."
msgid ""
"Compared with the default profile of a 0.2 mm nozzle, it has a slightly "
"bigger layer height, and results in almost negligible layer lines, and "
"slightly shorter printing time."
msgstr ""
-"0,2 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, "
-"biraz daha büyük katman yüksekliğine sahiptir ve neredeyse ihmal edilebilir "
-"düzeyde katman çizgileri ve biraz daha kısa yazdırma süresi sağlar."
+"0,2 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, biraz "
+"daha büyük katman yüksekliğine sahiptir ve neredeyse ihmal edilebilir düzeyde "
+"katman çizgileri ve biraz daha kısa yazdırma süresi sağlar."
msgid ""
"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer "
@@ -15937,8 +15980,8 @@ msgid ""
"shorter printing time."
msgstr ""
"Varsayılan 0,2 mm püskürtme ucu profiliyle karşılaştırıldığında, daha küçük "
-"katman yüksekliğine sahiptir ve minimum katman çizgileri ve daha yüksek "
-"baskı kalitesi sağlar, ancak daha kısa yazdırma süresi sağlar."
+"katman yüksekliğine sahiptir ve minimum katman çizgileri ve daha yüksek baskı "
+"kalitesi sağlar, ancak daha kısa yazdırma süresi sağlar."
msgid ""
"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer "
@@ -15989,12 +16032,12 @@ msgstr ""
msgid ""
"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer "
-"height, and results in less apparent layer lines and higher printing "
-"quality, but longer printing time."
+"height, and results in less apparent layer lines and higher printing quality, "
+"but longer printing time."
msgstr ""
"0,4 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha "
-"küçük bir katman yüksekliğine sahiptir ve daha az görünür katman çizgileri "
-"ve daha yüksek baskı kalitesi sağlar, ancak daha uzun yazdırma süresi sağlar."
+"küçük bir katman yüksekliğine sahiptir ve daha az görünür katman çizgileri ve "
+"daha yüksek baskı kalitesi sağlar, ancak daha uzun yazdırma süresi sağlar."
msgid ""
"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer "
@@ -16032,8 +16075,7 @@ msgstr ""
msgid ""
"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer "
-"height, and results in almost negligible layer lines and longer printing "
-"time."
+"height, and results in almost negligible layer lines and longer printing time."
msgstr ""
"0,4 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, "
"katman yüksekliği daha küçüktür ve neredeyse göz ardı edilebilecek düzeyde "
@@ -16068,8 +16110,8 @@ msgstr ""
msgid ""
"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer "
-"height, and results in much more apparent layer lines and much lower "
-"printing quality, but shorter printing time in some printing cases."
+"height, and results in much more apparent layer lines and much lower printing "
+"quality, but shorter printing time in some printing cases."
msgstr ""
"0,6 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha "
"büyük bir katman yüksekliğine sahiptir ve çok daha belirgin katman çizgileri "
@@ -16088,16 +16130,16 @@ msgstr ""
msgid ""
"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer "
-"height, and results in less apparent layer lines and higher printing "
-"quality, but longer printing time."
+"height, and results in less apparent layer lines and higher printing quality, "
+"but longer printing time."
msgstr ""
"0,6 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha "
-"küçük bir katman yüksekliğine sahiptir ve daha az görünür katman çizgileri "
-"ve daha yüksek baskı kalitesi sağlar, ancak daha uzun yazdırma süresi sağlar."
+"küçük bir katman yüksekliğine sahiptir ve daha az görünür katman çizgileri ve "
+"daha yüksek baskı kalitesi sağlar, ancak daha uzun yazdırma süresi sağlar."
msgid ""
-"It has a very big layer height, and results in very apparent layer lines, "
-"low printing quality and general printing time."
+"It has a very big layer height, and results in very apparent layer lines, low "
+"printing quality and general printing time."
msgstr ""
"Çok büyük bir katman yüksekliğine sahiptir ve çok belirgin katman "
"çizgilerine, düşük baskı kalitesine ve genel yazdırma süresine neden olur."
@@ -16109,8 +16151,8 @@ msgid ""
msgstr ""
"0,8 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha "
"büyük bir katman yüksekliğine sahiptir ve çok belirgin katman çizgileri ve "
-"çok daha düşük baskı kalitesiyle sonuçlanır, ancak bazı yazdırma "
-"durumlarında daha kısa yazdırma süresi sağlar."
+"çok daha düşük baskı kalitesiyle sonuçlanır, ancak bazı yazdırma durumlarında "
+"daha kısa yazdırma süresi sağlar."
msgid ""
"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger "
@@ -16119,8 +16161,8 @@ msgid ""
msgstr ""
"0,8 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, çok "
"daha büyük bir katman yüksekliğine sahiptir ve son derece belirgin katman "
-"çizgileri ve çok daha düşük baskı kalitesiyle sonuçlanır, ancak bazı "
-"yazdırma durumlarında çok daha kısa yazdırma süresi sağlar."
+"çizgileri ve çok daha düşük baskı kalitesiyle sonuçlanır, ancak bazı yazdırma "
+"durumlarında çok daha kısa yazdırma süresi sağlar."
msgid ""
"Compared with the default profile of a 0.8 mm nozzle, it has a slightly "
@@ -16128,10 +16170,10 @@ msgid ""
"lines and slightly higher printing quality, but longer printing time in some "
"printing cases."
msgstr ""
-"0,8 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, "
-"biraz daha küçük bir katman yüksekliğine sahiptir ve biraz daha az ama yine "
-"de görünür katman çizgileri ve biraz daha yüksek baskı kalitesi sağlar, "
-"ancak bazı yazdırma durumlarında daha uzun yazdırma süresi sağlar."
+"0,8 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, biraz "
+"daha küçük bir katman yüksekliğine sahiptir ve biraz daha az ama yine de "
+"görünür katman çizgileri ve biraz daha yüksek baskı kalitesi sağlar, ancak "
+"bazı yazdırma durumlarında daha uzun yazdırma süresi sağlar."
msgid ""
"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer "
@@ -16155,20 +16197,16 @@ msgstr "SimplyPrint'e başarıyla bağlanıldı!"
msgid "Could not connect to SimplyPrint"
msgstr "SimplyPrint'e bağlanılamadı"
-msgid "SimplyPrint account not linked. Go to Connect options to set it up."
+msgid "Internal error"
msgstr ""
-"SimplyPrint hesabı bağlı değil. Ayarlamak için Bağlantı seçeneklerine gidin."
-
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
-msgstr ""
-"Dosya boyutu 100 MB yükleme sınırını aşıyor. Lütfen dosyanızı panel "
-"üzerinden yükleyiniz."
msgid "Unknown error"
msgstr "Bilinmeyen hata"
+msgid "SimplyPrint account not linked. Go to Connect options to set it up."
+msgstr ""
+"SimplyPrint hesabı bağlı değil. Ayarlamak için Bağlantı seçeneklerine gidin."
+
msgid "Connection to Flashforge works correctly."
msgstr "Flashforge bağlantısı düzgün çalışıyor."
@@ -16207,8 +16245,7 @@ msgid ""
msgstr ""
"Sandviç modu\n"
"Modelinizde çok dik çıkıntılar yoksa hassasiyeti ve katman tutarlılığını "
-"artırmak için sandviç modunu (iç-dış-iç) kullanabileceğinizi biliyor "
-"muydunuz?"
+"artırmak için sandviç modunu (iç-dış-iç) kullanabileceğinizi biliyor muydunuz?"
#: resources/data/hints.ini: [hint:Chamber temperature]
msgid ""
@@ -16270,18 +16307,18 @@ msgid ""
"3D scene operations."
msgstr ""
"Klavye kısayolları nasıl kullanılır?\n"
-"Orca Slicer'ın çok çeşitli klavye kısayolları ve 3B sahne işlemleri "
-"sunduğunu biliyor muydunuz?"
+"Orca Slicer'ın çok çeşitli klavye kısayolları ve 3B sahne işlemleri sunduğunu "
+"biliyor muydunuz?"
#: resources/data/hints.ini: [hint:Reverse on odd]
msgid ""
"Reverse on odd\n"
-"Did you know that Reverse on odd feature can significantly improve "
-"the surface quality of your overhangs?"
+"Did you know that Reverse on odd feature can significantly improve the "
+"surface quality of your overhangs?"
msgstr ""
-"Tek sayıyı tersine çevir\n"
-"Tek sayıyı ters çevir özelliğinin çıkıntılarınızın yüzey kalitesini "
-"önemli ölçüde artırabileceğini biliyor muydunuz?"
+"Tersine çevir\n"
+"Tersine çevir özelliğinin çıkıntılarınızın yüzey kalitesini önemli "
+"ölçüde artırabileceğini biliyor muydunuz?"
#: resources/data/hints.ini: [hint:Cut Tool]
msgid ""
@@ -16300,8 +16337,8 @@ msgid ""
"problems on the Windows system?"
msgstr ""
"Modeli Düzelt\n"
-"Windows sisteminde birçok dilimleme sorununu önlemek için bozuk bir 3D "
-"modeli düzeltebileceğinizi biliyor muydunuz?"
+"Windows sisteminde birçok dilimleme sorununu önlemek için bozuk bir 3D modeli "
+"düzeltebileceğinizi biliyor muydunuz?"
#: resources/data/hints.ini: [hint:Timelapse]
msgid ""
@@ -16434,9 +16471,9 @@ msgstr ""
#: resources/data/hints.ini: [hint:Fine-tuning for flow rate]
msgid ""
"Fine-tuning for flow rate\n"
-"Did you know that flow rate can be fine-tuned for even better-looking "
-"prints? Depending on the material, you can improve the overall finish of the "
-"printed model by doing some fine-tuning."
+"Did you know that flow rate can be fine-tuned for even better-looking prints? "
+"Depending on the material, you can improve the overall finish of the printed "
+"model by doing some fine-tuning."
msgstr ""
"Akış hızı için ince ayar\n"
"Baskıların daha da iyi görünmesi için akış hızına ince ayar yapılabileceğini "
@@ -16470,8 +16507,8 @@ msgstr ""
msgid ""
"Support painting\n"
"Did you know that you can paint the location of your supports? This feature "
-"makes it easy to place the support material only on the sections of the "
-"model that actually need it."
+"makes it easy to place the support material only on the sections of the model "
+"that actually need it."
msgstr ""
"Destek boyama\n"
"Desteklerinizin yerini boyayabileceğinizi biliyor muydunuz? Bu özellik, "
@@ -16576,6 +16613,92 @@ msgstr ""
"sıcaklığının uygun şekilde arttırılmasının bükülme olasılığını "
"azaltabileceğini biliyor muydunuz?"
+#~ msgid ""
+#~ "File size exceeds the 100MB upload limit. Please upload your file through "
+#~ "the panel."
+#~ msgstr ""
+#~ "Dosya boyutu 100 MB yükleme sınırını aşıyor. Lütfen dosyanızı panel "
+#~ "üzerinden yükleyiniz."
+
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "Lütfen geçerli bir değer girin (K in 0~0.3)"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr "Lütfen geçerli bir değer girin (K in 0~0.3, N in 0.6~2.0)"
+
+#~ msgid "Select connected printetrs (0/6)"
+#~ msgstr "Bağlı yazıcıları seçin (0/6)"
+
+#, c-format, boost-format
+#~ msgid "Select Connected Printetrs (%d/6)"
+#~ msgstr "Bağlı Yazıcıları Seçin (%d/6)"
+
+#~ msgid "PrintingPause"
+#~ msgstr "Yazdırma Duraklatıldı"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr "Yazıcının yerel bağlantısı başarısız oldu, lütfen tekrar deneyin."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build plate "
+#~ "does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "Lütfen Akış Dinamiği Kalibrasyonunun ayrıntılarını wiki'mizden "
+#~ "bulabilirsiniz.\n"
+#~ "\n"
+#~ "Genellikle kalibrasyon gereksizdir. Yazdırma başlat menüsündeki \"akış "
+#~ "dinamiği kalibrasyonu\" seçeneği işaretliyken tek renkli/malzeme baskısını "
+#~ "başlattığınızda, yazıcı eski yöntemi izleyecek, yazdırmadan önce filamenti "
+#~ "kalibre edecektir; Çok renkli/malzeme baskısını başlattığınızda, yazıcı "
+#~ "her filament değişiminde filament için varsayılan dengeleme parametresini "
+#~ "kullanacaktır ve bu çoğu durumda iyi bir sonuç verecektir.\n"
+#~ "\n"
+#~ "Kalibrasyon sonucunun güvenilir olmamasına yol açacak birkaç durum "
+#~ "olduğunu lütfen unutmayın: kalibrasyonu yapmak için doku plakası "
+#~ "kullanmak; baskı plakasının yapışması iyi değil (lütfen baskı plakasını "
+#~ "yıkayın veya yapıştırıcı uygulayın!) ...Daha fazlasını wiki'mizden "
+#~ "bulabilirsiniz.\n"
+#~ "\n"
+#~ "Testimizde kalibrasyon sonuçlarında yaklaşık yüzde 10'luk bir titreşim var "
+#~ "ve bu da sonucun her kalibrasyonda tam olarak aynı olmamasına neden "
+#~ "olabilir. Yeni güncellemelerle iyileştirmeler yapmak için hâlâ temel "
+#~ "nedeni araştırıyoruz."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure you "
+#~ "want to overrides the other results?"
+#~ msgstr ""
+#~ "Aynı ada sahip sonuçlardan yalnızca biri kaydedilecektir. Diğer sonuçları "
+#~ "geçersiz kılmak istediğinizden emin misiniz?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you want "
+#~ "to overrides the historical result?"
+#~ msgstr ""
+#~ "Aynı ada sahip geçmiş bir kalibrasyon sonucu zaten var: %s. Aynı ada sahip "
+#~ "sonuçlardan yalnızca biri kaydedilir. Geçmiş sonucu geçersiz kılmak "
+#~ "istediğinizden emin misiniz?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "Lütfen mükemmel ekstrüzyon derecesine sahip köşeyi bulun"
+
#~ msgid "X"
#~ msgstr "X"
@@ -16593,11 +16716,11 @@ msgstr ""
#~ "Order of wall/infill. When the tickbox is unchecked the walls are printed "
#~ "first, which works best in most cases.\n"
#~ "\n"
-#~ "Printing walls first may help with extreme overhangs as the walls have "
-#~ "the neighbouring infill to adhere to. However, the infill will slighly "
-#~ "push out the printed walls where it is attached to them, resulting in a "
-#~ "worse external surface finish. It can also cause the infill to shine "
-#~ "through the external surfaces of the part."
+#~ "Printing walls first may help with extreme overhangs as the walls have the "
+#~ "neighbouring infill to adhere to. However, the infill will slighly push "
+#~ "out the printed walls where it is attached to them, resulting in a worse "
+#~ "external surface finish. It can also cause the infill to shine through the "
+#~ "external surfaces of the part."
#~ msgstr ""
#~ "Duvar/dolgu sırası. Onay kutusunun işareti kaldırıldığında ilk olarak "
#~ "duvarlar yazdırılır ve bu çoğu durumda en iyi sonucu verir.\n"
@@ -16612,9 +16735,9 @@ msgstr ""
#~ msgstr "V"
#~ msgid ""
-#~ "Orca Slicer is based on BambuStudio by Bambulab, which is from "
-#~ "PrusaSlicer by Prusa Research. PrusaSlicer is from Slic3r by Alessandro "
-#~ "Ranellucci and the RepRap community"
+#~ "Orca Slicer is based on BambuStudio by Bambulab, which is from PrusaSlicer "
+#~ "by Prusa Research. PrusaSlicer is from Slic3r by Alessandro Ranellucci "
+#~ "and the RepRap community"
#~ msgstr ""
#~ "Orca Slicer, Prusa Research'ün PrusaSlicer'ından Bambulab'ın "
#~ "BambuStudio'sunu temel alıyor. PrusaSlicer, Alessandro Ranellucci ve "
@@ -16685,16 +16808,15 @@ msgstr ""
#~ "değer) korumak ister misiniz?"
#~ msgid ""
-#~ "You have previously modified your settings and are about to overwrite "
-#~ "them with new ones."
+#~ "You have previously modified your settings and are about to overwrite them "
+#~ "with new ones."
#~ msgstr ""
-#~ "Ayarlarınızı daha önce değiştirdiniz ve bunların üzerine yenilerini "
-#~ "yazmak üzeresiniz."
+#~ "Ayarlarınızı daha önce değiştirdiniz ve bunların üzerine yenilerini yazmak "
+#~ "üzeresiniz."
#~ msgid ""
#~ "\n"
-#~ "Do you want to keep your current modified settings, or use preset "
-#~ "settings?"
+#~ "Do you want to keep your current modified settings, or use preset settings?"
#~ msgstr ""
#~ "\n"
#~ "Geçerli değiştirilen ayarlarınızı korumak mı yoksa önceden ayarlanmış "
@@ -16714,8 +16836,8 @@ msgstr ""
#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to "
#~ "automatically load or unload filiament."
#~ msgstr ""
-#~ "Filamenti otomatik olarak yüklemek veya çıkarmak için bir AMS yuvası "
-#~ "seçin ve ardından \"Yükle\" veya \"Boşalt\" düğmesine basın."
+#~ "Filamenti otomatik olarak yüklemek veya çıkarmak için bir AMS yuvası seçin "
+#~ "ve ardından \"Yükle\" veya \"Boşalt\" düğmesine basın."
#~ msgid "MC"
#~ msgstr "MC"
@@ -16755,8 +16877,8 @@ msgstr ""
#~ "The 3mf file version is in Beta and it is newer than the current Bambu "
#~ "Studio version."
#~ msgstr ""
-#~ "3mf dosya sürümü Beta aşamasındadır ve mevcut Bambu Studio sürümünden "
-#~ "daha yenidir."
+#~ "3mf dosya sürümü Beta aşamasındadır ve mevcut Bambu Studio sürümünden daha "
+#~ "yenidir."
#~ msgid "If you would like to try Bambu Studio Beta, you may click to"
#~ msgstr "Bambu Studio Beta’yı denemek isterseniz tıklayabilirsiniz."
@@ -16783,9 +16905,9 @@ msgstr ""
#~ "Green means that AMS humidity is normal, orange represent humidity is "
#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)"
#~ msgstr ""
-#~ "Yeşil, AMS neminin normal olduğunu, turuncu nemin yüksek olduğunu, "
-#~ "kırmızı ise nemin çok yüksek olduğunu gösterir.(Higrometre: ne kadar "
-#~ "düşükse o kadar iyidir.)"
+#~ "Yeşil, AMS neminin normal olduğunu, turuncu nemin yüksek olduğunu, kırmızı "
+#~ "ise nemin çok yüksek olduğunu gösterir.(Higrometre: ne kadar düşükse o "
+#~ "kadar iyidir.)"
#~ msgid "Desiccant status"
#~ msgstr "Kurutucu durumu"
@@ -16795,14 +16917,14 @@ msgstr ""
#~ "inactive. Please change the desiccant.(The bars: higher the better.)"
#~ msgstr ""
#~ "İki çubuktan daha düşük bir kurutucu durumu, kurutucunun etkin olmadığını "
-#~ "gösterir. Lütfen kurutucuyu değiştirin.(Çubuklar: ne kadar yüksek olursa "
-#~ "o kadar iyidir.)"
+#~ "gösterir. Lütfen kurutucuyu değiştirin.(Çubuklar: ne kadar yüksek olursa o "
+#~ "kadar iyidir.)"
#~ msgid ""
#~ "Note: When the lid is open or the desiccant pack is changed, it can take "
#~ "hours or a night to absorb the moisture. Low temperatures also slow down "
-#~ "the process. During this time, the indicator may not represent the "
-#~ "chamber accurately."
+#~ "the process. During this time, the indicator may not represent the chamber "
+#~ "accurately."
#~ msgstr ""
#~ "Not: Kapak açıkken veya kurutucu paketi değiştirildiğinde, nemin emilmesi "
#~ "saatler veya bir gece sürebilir. Düşük sıcaklıklar da süreci yavaşlatır. "
@@ -16900,14 +17022,14 @@ msgstr ""
#~ msgid ""
#~ "Please go to filament setting to edit your presets if you need.\n"
#~ "Please note that nozzle temperature, hot bed temperature, and maximum "
-#~ "volumetric speed have a significant impact on printing quality. Please "
-#~ "set them carefully."
+#~ "volumetric speed have a significant impact on printing quality. Please set "
+#~ "them carefully."
#~ msgstr ""
-#~ "İhtiyacınız olursa ön ayarlarınızı düzenlemek için lütfen filament "
-#~ "ayarına gidin.\n"
+#~ "İhtiyacınız olursa ön ayarlarınızı düzenlemek için lütfen filament ayarına "
+#~ "gidin.\n"
#~ "Lütfen püskürtme ucu sıcaklığının, sıcak yatak sıcaklığının ve maksimum "
-#~ "hacimsel hızın yazdırma kalitesi üzerinde önemli bir etkiye sahip "
-#~ "olduğunu unutmayın. Lütfen bunları dikkatlice ayarlayın."
+#~ "hacimsel hızın yazdırma kalitesi üzerinde önemli bir etkiye sahip olduğunu "
+#~ "unutmayın. Lütfen bunları dikkatlice ayarlayın."
#~ msgid "Studio Version:"
#~ msgstr "Stüdyo Sürümü:"
@@ -16952,8 +17074,8 @@ msgstr ""
#~ msgstr "Depolama Yüklemesini Test Etme"
#~ msgid ""
-#~ "The speed setting exceeds the printer's maximum speed "
-#~ "(machine_max_speed_x/machine_max_speed_y).\n"
+#~ "The speed setting exceeds the printer's maximum speed (machine_max_speed_x/"
+#~ "machine_max_speed_y).\n"
#~ "Orca will automatically cap the print speed to ensure it doesn't surpass "
#~ "the printer's capabilities.\n"
#~ "You can adjust the maximum speed setting in your printer's configuration "
@@ -16961,8 +17083,8 @@ msgstr ""
#~ msgstr ""
#~ "Hız ayarı yazıcının maksimum hızını aşıyor (machine_max_speed_x/"
#~ "machine_max_speed_y).\n"
-#~ "Orca, yazıcının yeteneklerini aşmadığından emin olmak için yazdırma "
-#~ "hızını otomatik olarak sınırlayacaktır.\n"
+#~ "Orca, yazıcının yeteneklerini aşmadığından emin olmak için yazdırma hızını "
+#~ "otomatik olarak sınırlayacaktır.\n"
#~ "Daha yüksek hızlar elde etmek için yazıcınızın yapılandırmasındaki "
#~ "maksimum hız ayarını yapabilirsiniz."
@@ -16988,8 +17110,8 @@ msgstr ""
#~ "Add solid infill near sloping surfaces to guarantee the vertical shell "
#~ "thickness (top+bottom solid layers)"
#~ msgstr ""
-#~ "Dikey kabuk kalınlığını garanti etmek için eğimli yüzeylerin yakınına "
-#~ "katı dolgu ekleyin (üst + alt katı katmanlar)"
+#~ "Dikey kabuk kalınlığını garanti etmek için eğimli yüzeylerin yakınına katı "
+#~ "dolgu ekleyin (üst + alt katı katmanlar)"
#~ msgid "Further reduce solid infill on walls (beta)"
#~ msgstr "Duvarlardaki katı dolguyu daha da azaltın (deneysel)"
@@ -17043,19 +17165,19 @@ msgstr ""
#~ "are not specified explicitly."
#~ msgstr ""
#~ "Daha iyi katman soğutması için yavaşlama etkinleştirildiğinde, yazdırma "
-#~ "çıkıntıları olduğunda ve özellik hızları açıkça belirtilmediğinde "
-#~ "filament için minimum yazdırma hızı."
+#~ "çıkıntıları olduğunda ve özellik hızları açıkça belirtilmediğinde filament "
+#~ "için minimum yazdırma hızı."
#~ msgid "No sparse layers (EXPERIMENTAL)"
#~ msgstr "Seyrek katman yok (DENEYSEL)"
#~ msgid ""
-#~ "We would rename the presets as \"Vendor Type Serial @printer you selected"
-#~ "\". \n"
+#~ "We would rename the presets as \"Vendor Type Serial @printer you "
+#~ "selected\". \n"
#~ "To add preset for more prinetrs, Please go to printer selection"
#~ msgstr ""
-#~ "We would rename the presets as \"Vendor Type Serial @printer you selected"
-#~ "\". \n"
+#~ "We would rename the presets as \"Vendor Type Serial @printer you "
+#~ "selected\". \n"
#~ "To add preset for more prinetrs, Please go to printer selection"
#~ msgid "The Config can not be loaded."
@@ -17070,8 +17192,8 @@ msgstr ""
#~ msgstr "wiki"
#~ msgid ""
-#~ "Relative extrusion is recommended when using \"label_objects\" option."
-#~ "Some extruders work better with this option unckecked (absolute extrusion "
+#~ "Relative extrusion is recommended when using \"label_objects\" option.Some "
+#~ "extruders work better with this option unckecked (absolute extrusion "
#~ "mode). Wipe tower is only compatible with relative mode. It is always "
#~ "enabled on BambuLab printers. Default is checked"
#~ msgstr ""
@@ -17201,8 +17323,8 @@ msgstr ""
#~ "Bir Parçayı Çıkar\n"
#~ "Negatif parça değiştiriciyi kullanarak bir ağı diğerinden "
#~ "çıkarabileceğinizi biliyor muydunuz? Bu şekilde örneğin doğrudan Orca "
-#~ "Slicer'da kolayca yeniden boyutlandırılabilen delikler "
-#~ "oluşturabilirsiniz. Daha fazlasını belgelerde okuyun."
+#~ "Slicer'da kolayca yeniden boyutlandırılabilen delikler oluşturabilirsiniz. "
+#~ "Daha fazlasını belgelerde okuyun."
#~ msgid "Filling bed "
#~ msgstr "Yatak doldurma "
@@ -17218,8 +17340,7 @@ msgstr ""
#~ msgstr ""
#~ "Doğrusal desene geçilsin mi?\n"
#~ "Evet - otomatik olarak doğrusal desene geçin\n"
-#~ "Hayır - yoğunluğu otomatik olarak %100 olmayan varsayılan değere "
-#~ "sıfırlayın"
+#~ "Hayır - yoğunluğu otomatik olarak %100 olmayan varsayılan değere sıfırlayın"
#~ msgid "Please heat the nozzle to above 170 degree before loading filament."
#~ msgstr ""
@@ -17460,8 +17581,8 @@ msgstr ""
#~ "load uptodate process/machine settings from the specified file when using "
#~ "uptodate"
#~ msgstr ""
-#~ "güncellemeyi kullanırken belirtilen dosyadan güncel işlem/"
-#~ "yazıcıayarlarını yükle"
+#~ "güncellemeyi kullanırken belirtilen dosyadan güncel işlem/yazıcıayarlarını "
+#~ "yükle"
#~ msgid "Output directory"
#~ msgstr "Çıkış dizini"
@@ -17508,8 +17629,8 @@ msgstr ""
#~ "OrcaSlicer configuration file may be corrupted and is not abled to be "
#~ "parsed.Please delete the file and try again."
#~ msgstr ""
-#~ "OrcaSlicer yapılandırma dosyası bozulmuş olabilir ve ayrıştırılması "
-#~ "mümkün olmayabilir. Lütfen dosyayı silin ve tekrar deneyin."
+#~ "OrcaSlicer yapılandırma dosyası bozulmuş olabilir ve ayrıştırılması mümkün "
+#~ "olmayabilir. Lütfen dosyayı silin ve tekrar deneyin."
#~ msgid "Online Models"
#~ msgstr "Çevrimiçi Modeller"
@@ -17523,8 +17644,8 @@ msgstr ""
#~ msgid ""
#~ "There are currently no identical spare consumables available, and "
#~ "automatic replenishment is currently not possible. \n"
-#~ "(Currently supporting automatic supply of consumables with the same "
-#~ "brand, material type, and color)"
+#~ "(Currently supporting automatic supply of consumables with the same brand, "
+#~ "material type, and color)"
#~ msgstr ""
#~ "Şu anda aynı yedek sarf malzemesi mevcut değildir ve otomatik yenileme şu "
#~ "anda mümkün değildir.\n"
@@ -17556,8 +17677,7 @@ msgstr ""
#~ "daha sıcak olamaz"
#~ msgid "Enable this option if machine has auxiliary part cooling fan"
-#~ msgstr ""
-#~ "Makinede yardımcı parça soğutma fanı varsa bu seçeneği etkinleştirin"
+#~ msgstr "Makinede yardımcı parça soğutma fanı varsa bu seçeneği etkinleştirin"
#~ msgid ""
#~ "This option is enabled if machine support controlling chamber temperature"
@@ -17585,8 +17705,7 @@ msgstr ""
#~ "katmanları etkilemez"
#~ msgid "Empty layers around bottom are replaced by nearest normal layers."
-#~ msgstr ""
-#~ "Alt kısımdaki boş katmanların yerini en yakın normal katmanlar alır."
+#~ msgstr "Alt kısımdaki boş katmanların yerini en yakın normal katmanlar alır."
#~ msgid "The model has too many empty layers."
#~ msgstr "Modelde çok fazla boş katman var."
@@ -17604,9 +17723,8 @@ msgstr ""
#~ "Bed temperature when high temperature plate is installed. Value 0 means "
#~ "the filament does not support to print on the High Temp Plate"
#~ msgstr ""
-#~ "Yüksek sıcaklık plakası takıldığında yatak sıcaklığı. 0 değeri, "
-#~ "filamentin Yüksek Sıcaklık Plakasına yazdırmayı desteklemediği anlamına "
-#~ "gelir"
+#~ "Yüksek sıcaklık plakası takıldığında yatak sıcaklığı. 0 değeri, filamentin "
+#~ "Yüksek Sıcaklık Plakasına yazdırmayı desteklemediği anlamına gelir"
#~ msgid ""
#~ "Klipper's max_accel_to_decel will be adjusted to this % of acceleration"
@@ -17626,8 +17744,7 @@ msgstr ""
#~ msgstr ""
#~ "Desteğin stili ve şekli. Normal destek için, desteklerin düzenli bir "
#~ "ızgaraya yansıtılması daha sağlam destekler oluşturur (varsayılan), rahat "
-#~ "destek kuleleri ise malzemeden tasarruf sağlar ve nesne izlerini "
-#~ "azaltır.\n"
+#~ "destek kuleleri ise malzemeden tasarruf sağlar ve nesne izlerini azaltır.\n"
#~ "Ağaç desteği için, ince stil, dalları daha agresif bir şekilde "
#~ "birleştirecek ve çok fazla malzeme tasarrufu sağlayacak (varsayılan), "
#~ "hibrit stil ise büyük düz çıkıntılar altında normal desteğe benzer yapı "
diff --git a/localization/i18n/uk/OrcaSlicer_uk.po b/localization/i18n/uk/OrcaSlicer_uk.po
index dce8ef31b2..207549d5fd 100644
--- a/localization/i18n/uk/OrcaSlicer_uk.po
+++ b/localization/i18n/uk/OrcaSlicer_uk.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: 2024-05-30 12:35+0300\n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -2862,11 +2862,13 @@ msgstr "Ви впевнені, що хочете видалити інформа
msgid "You need to select the material type and color first."
msgstr "Спочатку потрібно вибрати тип матеріалу та колір."
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "Введіть допустиме значення (K в діапазоні 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr ""
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "Будь ласка, введіть допустиме значення (K від 0~0.3, N від 0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr ""
msgid "Other Color"
msgstr "Інший колір"
@@ -3296,12 +3298,12 @@ msgstr "Завдання надіслане"
msgid "Edit multiple printers"
msgstr "Редагувати кілька принтерів"
-msgid "Select connected printetrs (0/6)"
-msgstr "Вибір підключених принтерів (0/6)"
+msgid "Select connected printers (0/6)"
+msgstr ""
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
-msgstr "Виберіть Підключені принтери (%d/6)"
+msgid "Select Connected Printers (%d/6)"
+msgstr ""
#, c-format, boost-format
msgid "The maximum number of printers that can be selected is %d"
@@ -3363,8 +3365,8 @@ msgstr "Друк завершено"
msgid "Printing Failed"
msgstr "Помилка друку"
-msgid "PrintingPause"
-msgstr "Пауза друку"
+msgid "Printing Pause"
+msgstr ""
msgid "Prepare"
msgstr "Підготувати"
@@ -4063,9 +4065,11 @@ msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
msgstr ""
+"Недійсний формат введення. Очікується вектор розмірів у наступному форматі: "
+"\"%1%\""
msgid "Input value is out of range"
-msgstr ""
+msgstr "Вхідне значення виходить за межі діапазону"
msgid "Some extension in the input is invalid"
msgstr ""
@@ -7189,10 +7193,6 @@ msgstr "відправлення завершено"
msgid "Error code"
msgstr "Код помилки"
-msgid "Printer local connection failed, please try again."
-msgstr ""
-"Не вдалося встановити локальне підключення до принтера; спробуйте ще раз."
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr ""
"Немає облікового запису для входу, відображаються лише принтери в режимі LAN"
@@ -8341,6 +8341,60 @@ msgstr "Оновлення відсутні."
msgid "The configuration is up to date."
msgstr "Конфігурація є актуальною."
+msgid "Obj file Import color"
+msgstr "Імпорт кольору файлу OBJ"
+
+msgid "Specify number of colors:"
+msgstr "Вкажіть кількість кольорів:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "Кількість кольорів повинна бути в діапазоні [%d, %d]."
+
+msgid "Recommended "
+msgstr "Рекомендовано "
+
+msgid "Current filament colors:"
+msgstr "Поточні кольори філаменту:"
+
+msgid "Quick set:"
+msgstr "Швидке встановлення:"
+
+msgid "Color match"
+msgstr "Відповідність кольору"
+
+msgid "Approximate color matching."
+msgstr "Приблизне відповідання кольору."
+
+msgid "Append"
+msgstr "Додати"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "Додати споживчий екструдер після існуючих екструдерів."
+
+msgid "Reset mapped extruders."
+msgstr "Скинути відображені екструдери."
+
+msgid "Cluster colors"
+msgstr "Згрупувати кольори"
+
+msgid "Map Filament"
+msgstr "Відображення філаменту"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"Примітка: Колір вже вибрано. Ви можете вибрати ОК \n"
+" щоб продовжити або вручну відкоригувати його."
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"Попередження: Кількість новостворених та \n"
+" поточних екструдерів перевищує 16."
+
msgid "Ramming customization"
msgstr "Налаштування раммінгу"
@@ -10723,6 +10777,22 @@ msgstr ""
"будезупинятиметься і працюватиме\n"
"хоча б на мінімальній швидкості для зменшення частоти пусків та зупинок"
+msgid "Don't slow down outer walls"
+msgstr ""
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+
msgid "Layer time"
msgstr "Час шару"
@@ -14584,34 +14654,15 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"Будь ласка, знайдіть докладну інформацію щодо калібрування “Flow Dynamics "
-"Calibration” у нашому вікі.\n"
-"\n"
-"Зазвичай калібрування не є необхідним. Коли ви розпочинаєте друк з одним "
-"кольором/матеріалом, з опцією “калібрування динаміки потоку” включеною у "
-"меню початку друку, принтер буде використовувати старий спосіб калібрування "
-"філаменту перед початком друку; Коли ви розпочинаєте друк з декількома "
-"кольорами/матеріалами, принтер використовуватиме стандартні параметри "
-"компенсації для філаменту під час кожного перемикання філаменту, що в "
-"більшості випадків дає гарний результат.\n"
-"\n"
-"Зверніть увагу, що є деякі випадки, коли результат калібрування може бути "
-"ненадійним: використання текстурної підкладки для калібрування; слабка "
-"адгезія підкладки (будь ласка, вимийте підкладку або нанесіть клей!) … "
-"Більше інформації можна знайти у нашому вікі.\n"
-"\n"
-"Результати калібрування мають приблизно 10-відсотковий шум у наших тестах, "
-"що може призвести до незначних відмінностей у кожному калібруванні. Ми все "
-"ще вивчаємо кореневу причину, щоб внести поліпшення в майбутніх оновленнях."
msgid "When to use Flow Rate Calibration"
msgstr "Коли використовувати калібрування рівня потоку"
@@ -14747,26 +14798,16 @@ msgstr "Ім’я не може перевищувати 40 символів."
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr ""
-"Збережено буде лише один із результатів з однаковою назвою. Ви впевнені,що "
-"хочете перезаписати інші результати?"
-
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"Вже існує історичний результат калібрування з такою самою назвою: %s. "
-"Зберігається лише один результат з такою самою назвою. Ви впевнені, що "
-"хочете замінити історичний результат?"
+"Тільки один із результатів з однаковою назвою буде збережено. Ви впевнені, "
+"що хочете перезаписати інші результати?"
msgid "Please find the best line on your plate"
msgstr "Будь ласка, знайдіть найкращу лінію на вашій пластині"
-msgid "Please find the cornor with perfect degree of extrusion"
-msgstr "Будь ласка, знайдіть кут із ідеальним ступенем екструзії"
+msgid "Please find the corner with perfect degree of extrusion"
+msgstr "Будь ласка, знайдіть кут з ідеальним ступенем витіснення"
msgid "Input Value"
msgstr "Введіть значення"
@@ -15022,6 +15063,9 @@ msgstr "ABS/ASA"
msgid "PETG"
msgstr "PETG"
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr "TPU"
@@ -15119,6 +15163,9 @@ msgstr ""
msgid "Upload to storage"
msgstr "Завантажити до сховища"
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr ""
@@ -15820,6 +15867,12 @@ msgstr "Ви впевнені, що вийшли?"
msgid "Refresh Printers"
msgstr "Оновити принтери"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -16260,21 +16313,17 @@ msgstr "Успішне підключення до SimplyPrint!"
msgid "Could not connect to SimplyPrint"
msgstr "Не вдалося підключитися до SimplyPrint"
+msgid "Internal error"
+msgstr ""
+
+msgid "Unknown error"
+msgstr "Невідома помилка"
+
msgid "SimplyPrint account not linked. Go to Connect options to set it up."
msgstr ""
"Обліковий запис SimplyPrint не пов’язано. Щоб налаштувати його, перейдіть до "
"параметрів підключення."
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
-msgstr ""
-"Розмір файлу перевищує ліміт завантаження в 100 Мб. Будь ласка, завантажте "
-"свій файл через панель."
-
-msgid "Unknown error"
-msgstr "Невідома помилка"
-
msgid "Connection to Flashforge works correctly."
msgstr "Підключення до Flashforge працює правильно."
@@ -16679,6 +16728,94 @@ msgstr ""
"ABS, відповідне підвищення температури гарячого ліжка може зменшити "
"ймовірність деформації."
+#~ msgid ""
+#~ "File size exceeds the 100MB upload limit. Please upload your file through "
+#~ "the panel."
+#~ msgstr ""
+#~ "Розмір файлу перевищує ліміт завантаження в 100 Мб. Будь ласка, "
+#~ "завантажте свій файл через панель."
+
+#~ msgid "Please input a valid value (K in 0~0.3)"
+#~ msgstr "Введіть допустиме значення (K в діапазоні 0~0.3)"
+
+#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#~ msgstr "Будь ласка, введіть допустиме значення (K від 0~0.3, N від 0.6~2.0)"
+
+#~ msgid "Select connected printetrs (0/6)"
+#~ msgstr "Вибір підключених принтерів (0/6)"
+
+#, c-format, boost-format
+#~ msgid "Select Connected Printetrs (%d/6)"
+#~ msgstr "Виберіть Підключені принтери (%d/6)"
+
+#~ msgid "PrintingPause"
+#~ msgstr "Пауза друку"
+
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr ""
+#~ "Не вдалося встановити локальне підключення до принтера; спробуйте ще раз."
+
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "Будь ласка, знайдіть докладну інформацію щодо калібрування “Flow Dynamics "
+#~ "Calibration” у нашому вікі.\n"
+#~ "\n"
+#~ "Зазвичай калібрування не є необхідним. Коли ви розпочинаєте друк з одним "
+#~ "кольором/матеріалом, з опцією “калібрування динаміки потоку” включеною у "
+#~ "меню початку друку, принтер буде використовувати старий спосіб "
+#~ "калібрування філаменту перед початком друку; Коли ви розпочинаєте друк з "
+#~ "декількома кольорами/матеріалами, принтер використовуватиме стандартні "
+#~ "параметри компенсації для філаменту під час кожного перемикання "
+#~ "філаменту, що в більшості випадків дає гарний результат.\n"
+#~ "\n"
+#~ "Зверніть увагу, що є деякі випадки, коли результат калібрування може бути "
+#~ "ненадійним: використання текстурної підкладки для калібрування; слабка "
+#~ "адгезія підкладки (будь ласка, вимийте підкладку або нанесіть клей!) … "
+#~ "Більше інформації можна знайти у нашому вікі.\n"
+#~ "\n"
+#~ "Результати калібрування мають приблизно 10-відсотковий шум у наших "
+#~ "тестах, що може призвести до незначних відмінностей у кожному "
+#~ "калібруванні. Ми все ще вивчаємо кореневу причину, щоб внести поліпшення "
+#~ "в майбутніх оновленнях."
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr ""
+#~ "Збережено буде лише один із результатів з однаковою назвою. Ви впевнені,"
+#~ "що хочете перезаписати інші результати?"
+
+#, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "Вже існує історичний результат калібрування з такою самою назвою: %s. "
+#~ "Зберігається лише один результат з такою самою назвою. Ви впевнені, що "
+#~ "хочете замінити історичний результат?"
+
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "Будь ласка, знайдіть кут із ідеальним ступенем екструзії"
+
#~ msgid ""
#~ "Associate OrcaSlicer with prusaslicer:// links so that Orca can open "
#~ "PrusaSlicer links from Printable.com"
diff --git a/localization/i18n/zh_CN/OrcaSlicer_zh_CN.po b/localization/i18n/zh_CN/OrcaSlicer_zh_CN.po
index 607e24b36b..8d8d44456c 100644
--- a/localization/i18n/zh_CN/OrcaSlicer_zh_CN.po
+++ b/localization/i18n/zh_CN/OrcaSlicer_zh_CN.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Slic3rPE\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: 2023-04-01 13:21+0800\n"
"Last-Translator: SoftFever \n"
"Language-Team: \n"
@@ -2748,11 +2748,13 @@ msgstr "您确定要清除耗材丝信息吗?"
msgid "You need to select the material type and color first."
msgstr "您需要先选择材料类型和颜色。"
-msgid "Please input a valid value (K in 0~0.3)"
-msgstr "请输入有效的数值 (K的范围为0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
+msgstr "请输入有效的数值(K的范围为%.1f~%.1f)"
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
-msgstr "请输入有效的数值 (K的范围为0~0.3,N的范围为0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
+msgstr "请输入有效的数值(K的范围为%.1f~%.1f,N的范围为%.1f~%.1f)"
msgid "Other Color"
msgstr "其他颜色"
@@ -3144,11 +3146,11 @@ msgstr "已发送的任务"
msgid "Edit multiple printers"
msgstr "编辑多个打印机"
-msgid "Select connected printetrs (0/6)"
+msgid "Select connected printers (0/6)"
msgstr "选择已连接的打印机 (0/6)"
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
+msgid "Select Connected Printers (%d/6)"
msgstr "选择已连接的打印机 (%d/6)"
#, c-format, boost-format
@@ -3202,16 +3204,16 @@ msgid "Incompatible"
msgstr "不兼容的预设"
msgid "syncing"
-msgstr ""
+msgstr "同步中"
msgid "Printing Finish"
-msgstr ""
+msgstr "打印成功"
msgid "Printing Failed"
-msgstr ""
+msgstr "打印失败"
-msgid "PrintingPause"
-msgstr ""
+msgid "Printing Pause"
+msgstr "打印暂停"
msgid "Prepare"
msgstr "准备"
@@ -3220,28 +3222,28 @@ msgid "Slicing"
msgstr "正在切片"
msgid "Pending"
-msgstr ""
+msgstr "等待中"
msgid "Sending"
msgstr "发送中"
msgid "Sending Finish"
-msgstr ""
+msgstr "发送成功"
msgid "Sending Cancel"
-msgstr ""
+msgstr "取消发送"
msgid "Sending Failed"
-msgstr ""
+msgstr "发送失败"
msgid "Print Success"
-msgstr ""
+msgstr "打印成功"
msgid "Print Failed"
-msgstr ""
+msgstr "打印失败"
msgid "Removed"
-msgstr ""
+msgstr "移除"
msgid "Resume"
msgstr "继续"
@@ -3869,10 +3871,10 @@ msgstr ""
msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
-msgstr ""
+msgstr "输入格式无效。应为以下格式的维度向量:“%1%”"
msgid "Input value is out of range"
-msgstr ""
+msgstr "输入值超出范围外"
msgid "Some extension in the input is invalid"
msgstr ""
@@ -5363,19 +5365,19 @@ msgstr "较新的3mf版本"
msgid ""
"The 3mf file version is in Beta and it is newer than the current OrcaSlicer "
"version."
-msgstr ""
+msgstr "3mf文件版本处于Beta测试阶段,比当前OrcaSlicer版本更新。"
msgid "If you would like to try Orca Slicer Beta, you may click to"
-msgstr ""
+msgstr "如果您想尝试Orca Slicer Beta,您可以点击"
msgid "Download Beta Version"
msgstr "下载Beta版本"
msgid "The 3mf file version is newer than the current Orca Slicer version."
-msgstr ""
+msgstr "3mf文件版本比当前Orca Slicer版本更新。"
msgid "Update your Orca Slicer could enable all functionality in the 3mf file."
-msgstr ""
+msgstr "更新你的Orca Slicer以启用3mf文件中的所有功能。"
msgid "Current Version: "
msgstr "当前版本:"
@@ -6008,7 +6010,7 @@ msgstr "项目已下载%d%%"
msgid ""
"Importing to Orca Slicer failed. Please download the file and manually "
"import it."
-msgstr ""
+msgstr "导入到Orca Slicer失败。请下载文件并手动导入。"
msgid "Import SLA archive"
msgstr "导入 SLA 存档"
@@ -6030,7 +6032,7 @@ msgstr "加载路径为%1%的ZIP档案失败。"
#. TRN: First argument = path to file, second argument = error description
#, boost-format
msgid "Failed to unzip file to %1%: %2%"
-msgstr ""
+msgstr "解压文件到%1%失败:%2%"
#, boost-format
msgid "Failed to find unzipped file at %1%. Unzipping of file has failed."
@@ -6120,9 +6122,11 @@ msgid ""
"3MF file?\n"
"If you hit 'NO', all SVGs in the project will not be editable any more."
msgstr ""
+"您确定要将原始SVG文件与其本地路径存储到3MF文件中吗?\n"
+"如果选择“否”,项目中的所有SVG文件将不再可编辑。"
msgid "Private protection"
-msgstr ""
+msgstr "隐私保护"
msgid "Is the printer ready? Is the print sheet in place, empty and clean?"
msgstr "打印机是否就绪?打印平台是否在正确的位置、有没有异物、是否干净?"
@@ -6147,7 +6151,7 @@ msgid "Custom supports and color painting were removed before repairing."
msgstr "自定义的支撑和涂色在模型修复之前将被清除。"
msgid "Optimize Rotation"
-msgstr ""
+msgstr "优化旋转"
msgid "Invalid number"
msgstr "无效数字"
@@ -6830,9 +6834,6 @@ msgstr "发送完成"
msgid "Error code"
msgstr "错误代码"
-msgid "Printer local connection failed, please try again."
-msgstr "打印机局域网连接失败,请重试。"
-
msgid "No login account, only printers in LAN mode are displayed"
msgstr "未登录账号,仅显示局域网模式的打印机"
@@ -7220,14 +7221,18 @@ msgid ""
"precise dimensions or is part of an assembly, it's important to double-check "
"whether this change in geometry impacts the functionality of your print."
msgstr ""
+"启用此选项将改变模型的形状。如果您的打印件需要精确的尺寸或是装配体的一部分,"
+"请务必仔细检查这种形状的变化是否影响了最终功能。"
msgid "Are you sure you want to enable this option?"
-msgstr ""
+msgstr "您确定要启用此选项吗?"
msgid ""
"Layer height is too small.\n"
"It will set to min_layer_height\n"
msgstr ""
+"层高太小。\n"
+"将自动设置为min_layer_height的值\n"
msgid ""
"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer "
@@ -7513,7 +7518,7 @@ msgid "Invalid value provided for parameter %1%: %2%"
msgstr ""
msgid "G-code flavor is switched"
-msgstr ""
+msgstr "G-code风格已切换"
msgid "Cooling Fan"
msgstr "冷却风扇"
@@ -7555,7 +7560,7 @@ msgid "Change filament G-code"
msgstr "耗材丝更换G-code"
msgid "Change extrusion role G-code"
-msgstr ""
+msgstr "挤出类型更换G-code"
msgid "Pause G-code"
msgstr "暂停 G-code"
@@ -7873,6 +7878,60 @@ msgstr "没有可用的更新。"
msgid "The configuration is up to date."
msgstr "当前配置已经是最新版本。"
+msgid "Obj file Import color"
+msgstr "Obj文件导入颜色"
+
+msgid "Specify number of colors:"
+msgstr "指定颜色数量:"
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr "颜色数量范围应该是[%d, %d]。"
+
+msgid "Recommended "
+msgstr "推荐"
+
+msgid "Current filament colors:"
+msgstr "当前耗材丝颜色:"
+
+msgid "Quick set:"
+msgstr "快捷设置:"
+
+msgid "Color match"
+msgstr "颜色匹配"
+
+msgid "Approximate color matching."
+msgstr "近似的颜色匹配。"
+
+msgid "Append"
+msgstr "追加"
+
+msgid "Add consumable extruder after existing extruders."
+msgstr "近似的颜色匹配。"
+
+msgid "Reset mapped extruders."
+msgstr "重置匹配的耗材丝。"
+
+msgid "Cluster colors"
+msgstr "重置匹配的耗材丝"
+
+msgid "Map Filament"
+msgstr "匹配耗材丝"
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+"注意:颜色已经选好了,您可以选中确认 \n"
+" 继续或手动修改它。"
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+"警告:新增追加耗材丝数量 \n"
+" 和已有耗材丝数量超过了16."
+
msgid "Ramming customization"
msgstr "自定义尖端成型"
@@ -10020,6 +10079,29 @@ msgstr ""
"如果勾选这个选项,部件冷却风扇将永远不会停止,并且会至少运行在最小风扇转速值"
"以减少风扇的启停频次"
+msgid "Don't slow down outer walls"
+msgstr "不减速外墙"
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+"如果启用,此设置将确保外墙不会为了满足最小层时间而减速。这在以下情况下特别有"
+"帮助:\n"
+"\n"
+"1. 避免在打印光滑耗材时改变光泽\n"
+"2. 避免改变外墙速度,可能会产生轻微的墙壁伪影,看起来像z条纹\n"
+"3. 避免以会在外墙上产生VFAs(细微伪影)的速度打印\n"
+"\n"
+
msgid "Layer time"
msgstr "层时间"
@@ -12379,7 +12461,7 @@ msgid ""
msgstr "换料时插入的G-code,包括T命令。"
msgid "This gcode is inserted when the extrusion role is changed"
-msgstr ""
+msgstr "当挤出类型改变时会插入此G-code"
msgid ""
"Line width for top surfaces. If expressed as a %, it will be computed over "
@@ -13409,24 +13491,24 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"请从我们的wiki中找到流量动态校准的详细信息。\n"
+"请从我们的wiki中找到动态流量校准的详细信息。\n"
"\n"
"通常情况下,校准是不必要的。当您开始单色/单材料打印,并在打印开始菜单中勾选"
-"了“流量动态校准”选项时,打印机将按照旧的方式,在打印前校准丝料;当您开始多色/"
+"了“动态流量校准”选项时,打印机将按照旧的方式,在打印前校准丝料;当您开始多色/"
"多材料打印时,打印机将在每次换丝料时使用默认的补偿参数,这在大多数情况下会产"
"生良好的效果。\n"
"\n"
-"请注意,有几种情况会导致校准结果不可靠:使用纹理板进行校准;建模平台粘附效果"
-"不好(请清洗建模平台或涂抹胶棒)... 您可以在我们的wiki中找到更多信息。\n"
+"有几种情况可能导致校准结果不可靠,例如打印板的的附着力不足。清洗打印板或者使"
+"用胶水可以增强打印板附着力。您可以在我们的维基上找到更多相关信息。\n"
"\n"
"在我们的测试中,校准结果有约10%的波动,这可能导致每次校准的结果略有不同。我们"
"仍在调查根本原因,并通过新的更新进行改进。"
@@ -13542,23 +13624,14 @@ msgstr "名称不能超过40个字符。"
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
+"want to override the other results?"
msgstr "相同名称的结果只会保存一个。您确定要覆盖其他结果吗?"
-#, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
-msgstr ""
-"已经存在一个具有相同名称的历史校准结果:%s。相同名称的结果只会保存一个。您确"
-"定要覆盖历史结果吗?"
-
msgid "Please find the best line on your plate"
msgstr "请在您的打印板上找到最佳线条"
-msgid "Please find the cornor with perfect degree of extrusion"
-msgstr "请找出最佳挤出角度"
+msgid "Please find the corner with perfect degree of extrusion"
+msgstr "请找到具有完美挤出度的角落"
msgid "Input Value"
msgstr "输入值"
@@ -13809,6 +13882,9 @@ msgstr ""
msgid "PETG"
msgstr ""
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr ""
@@ -13905,6 +13981,9 @@ msgstr "如有需要,请使用正斜杠( / )作为目录分隔符。"
msgid "Upload to storage"
msgstr "上传到存储单位"
+msgid "Switch to Device tab after upload."
+msgstr "上传后跳转到设备页。"
+
#, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "上传文件名不以\"%s\"结尾。您是否要继续?"
@@ -14492,7 +14571,7 @@ msgstr "每日贴士"
#, c-format, boost-format
msgid "nozzle memorized: %.1f %s"
-msgstr ""
+msgstr "记忆中的喷嘴:%.1f %s"
msgid ""
"Your nozzle diameter in preset is not consistent with memorized nozzle "
@@ -14532,6 +14611,12 @@ msgstr ""
msgid "Refresh Printers"
msgstr "刷新打印机"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
@@ -14917,17 +15002,15 @@ msgstr ""
msgid "Could not connect to SimplyPrint"
msgstr ""
-msgid "SimplyPrint account not linked. Go to Connect options to set it up."
-msgstr ""
-
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
+msgid "Internal error"
msgstr ""
msgid "Unknown error"
msgstr ""
+msgid "SimplyPrint account not linked. Go to Connect options to set it up."
+msgstr ""
+
msgid "Connection to Flashforge works correctly."
msgstr ""
diff --git a/localization/i18n/zh_TW/OrcaSlicer_zh_TW.po b/localization/i18n/zh_TW/OrcaSlicer_zh_TW.po
index dfaa298bf0..0ac7a58a7c 100644
--- a/localization/i18n/zh_TW/OrcaSlicer_zh_TW.po
+++ b/localization/i18n/zh_TW/OrcaSlicer_zh_TW.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-06-05 22:05+0200\n"
+"POT-Creation-Date: 2024-06-21 20:03+0800\n"
"PO-Revision-Date: 2023-11-06 14:37+0800\n"
"Last-Translator: ablegods \n"
"Language-Team: \n"
@@ -2839,10 +2839,12 @@ msgstr "您確定要清除線材資訊嗎?"
msgid "You need to select the material type and color first."
msgstr "您需要先選擇線材類型和顏色。"
-msgid "Please input a valid value (K in 0~0.3)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f)"
msgstr ""
-msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)"
+#, c-format, boost-format
+msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)"
msgstr ""
msgid "Other Color"
@@ -3249,11 +3251,11 @@ msgstr ""
msgid "Edit multiple printers"
msgstr ""
-msgid "Select connected printetrs (0/6)"
+msgid "Select connected printers (0/6)"
msgstr ""
#, c-format, boost-format
-msgid "Select Connected Printetrs (%d/6)"
+msgid "Select Connected Printers (%d/6)"
msgstr ""
#, c-format, boost-format
@@ -3315,7 +3317,7 @@ msgstr ""
msgid "Printing Failed"
msgstr ""
-msgid "PrintingPause"
+msgid "Printing Pause"
msgstr ""
msgid "Prepare"
@@ -3997,10 +3999,10 @@ msgstr ""
msgid ""
"Invalid input format. Expected vector of dimensions in the following format: "
"\"%1%\""
-msgstr ""
+msgstr "輸入格式無效。預期向量應使用以下格式:“%1%”"
msgid "Input value is out of range"
-msgstr ""
+msgstr "輸入值超出範圍"
msgid "Some extension in the input is invalid"
msgstr ""
@@ -7086,10 +7088,6 @@ msgstr "傳送完成"
msgid "Error code"
msgstr "錯誤代碼"
-#, fuzzy
-msgid "Printer local connection failed, please try again."
-msgstr "列印設備區域網路連接失敗,請重試。"
-
#, fuzzy
msgid "No login account, only printers in LAN mode are displayed"
msgstr "未登入帳號,僅顯示區域網路模式的列印設備"
@@ -8201,6 +8199,56 @@ msgstr "以更新到最新。"
msgid "The configuration is up to date."
msgstr "目前設定檔已經是最新版本。"
+msgid "Obj file Import color"
+msgstr ""
+
+msgid "Specify number of colors:"
+msgstr ""
+
+#, c-format, boost-format
+msgid "The color count should be in range [%d, %d]."
+msgstr ""
+
+msgid "Recommended "
+msgstr ""
+
+msgid "Current filament colors:"
+msgstr ""
+
+msgid "Quick set:"
+msgstr ""
+
+msgid "Color match"
+msgstr ""
+
+msgid "Approximate color matching."
+msgstr ""
+
+msgid "Append"
+msgstr ""
+
+msgid "Add consumable extruder after existing extruders."
+msgstr ""
+
+msgid "Reset mapped extruders."
+msgstr ""
+
+msgid "Cluster colors"
+msgstr ""
+
+msgid "Map Filament"
+msgstr ""
+
+msgid ""
+"Note:The color has been selected, you can choose OK \n"
+" to continue or manually adjust it."
+msgstr ""
+
+msgid ""
+"Waring:The count of newly added and \n"
+" current extruders exceeds 16."
+msgstr ""
+
#, fuzzy
msgid "Ramming customization"
msgstr "自訂尖端成型"
@@ -10376,6 +10424,22 @@ msgstr ""
"如果勾選這個選項,部件冷卻風扇將永遠不會停止,並且會以最小風扇轉速設定值持運"
"運轉以減少風扇的頻繁開關"
+msgid "Don't slow down outer walls"
+msgstr ""
+
+msgid ""
+"If enabled, this setting will ensure external perimeters are not slowed down "
+"to meet the minimum layer time. This is particularly helpful in the below "
+"scenarios:\n"
+"\n"
+" 1. To avoid changes in shine when printing glossy filaments \n"
+"2. To avoid changes in external wall speed which may create slight wall "
+"artefacts that appear like z banding \n"
+"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the "
+"external walls\n"
+"\n"
+msgstr ""
+
msgid "Layer time"
msgstr "層時間"
@@ -13804,7 +13868,6 @@ msgstr ""
msgid "About this calibration"
msgstr "關於此校準"
-#, fuzzy
msgid ""
"Please find the details of Flow Dynamics Calibration from our wiki.\n"
"\n"
@@ -13815,27 +13878,15 @@ msgid ""
"printer will use the default compensation parameter for the filament during "
"every filament switch which will have a good result in most cases.\n"
"\n"
-"Please note there are a few cases that will make the calibration result not "
-"reliable: using a texture plate to do the calibration; the build plate does "
-"not have good adhesion (please wash the build plate or apply gluestick!) ..."
-"You can find more from our wiki.\n"
+"Please note that there are a few cases that can make the calibration results "
+"unreliable, such as insufficient adhesion on the build plate. Improving "
+"adhesion can be achieved by washing the build plate or applying glue. For "
+"more information on this topic, please refer to our Wiki.\n"
"\n"
"The calibration results have about 10 percent jitter in our test, which may "
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
-"請從我們的wiki中找到流量動態校準的詳細資訊。\n"
-"\n"
-"通常情況下,校準是不必要的。當您開始單色/單線材列印,並在列印開始選單中勾選"
-"了“流量動態校準”選項時,列印設備將按照舊的方式,在列印前校準絲料;當您開始多"
-"色/多線材列印時,列印設備將在每次換絲料時使用預設的補償參數,這在大多數情況下"
-"會產生良好的效果。\n"
-"\n"
-"請注意,有幾種情況會導致校準結果不可靠:使用紋理板進行校準;建模平台黏附效果"
-"不好(請清洗建模平台或塗抹膠棒)... 您可以在我們的wiki中找到更多資訊。\n"
-"\n"
-"在我們的測試中,校準結果有約 10% 的波動,這可能導致每次校準的結果略有不同。我"
-"們仍在調查根本原因,並通過新的更新進行改進。"
msgid "When to use Flow Rate Calibration"
msgstr "何時使用流量率校準"
@@ -13953,24 +14004,14 @@ msgstr "名稱不能超過40個字元。"
msgid ""
"Only one of the results with the same name will be saved. Are you sure you "
-"want to overrides the other results?"
-msgstr "相同名稱的結果只會儲存一個。確定要覆蓋其他結果嗎?"
-
-#, fuzzy, c-format, boost-format
-msgid ""
-"There is already a historical calibration result with the same name: %s. "
-"Only one of the results with the same name is saved. Are you sure you want "
-"to overrides the historical result?"
+"want to override the other results?"
msgstr ""
-"已經存在一個具有相同名稱的校準結果:%s。相同名稱的結果只會儲存一個。確定要覆"
-"蓋嗎?"
msgid "Please find the best line on your plate"
msgstr "請在您的列印板上找到最佳線條"
-#, fuzzy
-msgid "Please find the cornor with perfect degree of extrusion"
-msgstr "請在您的列印板上找到最接近完美的直角"
+msgid "Please find the corner with perfect degree of extrusion"
+msgstr ""
msgid "Input Value"
msgstr "輸入值"
@@ -14226,6 +14267,9 @@ msgstr ""
msgid "PETG"
msgstr ""
+msgid "PCTG"
+msgstr ""
+
msgid "TPU"
msgstr ""
@@ -14326,6 +14370,9 @@ msgstr "如有需要,請使用正斜槓( / )作為目錄分隔符號。"
msgid "Upload to storage"
msgstr "上傳到儲存單位"
+msgid "Switch to Device tab after upload."
+msgstr ""
+
#, fuzzy, c-format, boost-format
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
msgstr "上傳的檔名不以 \"%s\" 結尾。確定要繼續嗎?"
@@ -14934,6 +14981,12 @@ msgstr ""
msgid "Refresh Printers"
msgstr "重新整理列印設備"
+msgid "View print host webui in Device tab"
+msgstr ""
+
+msgid "Replace the BambuLab's device tab with print host webui"
+msgstr ""
+
#, fuzzy
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
@@ -15276,17 +15329,15 @@ msgstr ""
msgid "Could not connect to SimplyPrint"
msgstr ""
-msgid "SimplyPrint account not linked. Go to Connect options to set it up."
-msgstr ""
-
-msgid ""
-"File size exceeds the 100MB upload limit. Please upload your file through "
-"the panel."
+msgid "Internal error"
msgstr ""
msgid "Unknown error"
msgstr ""
+msgid "SimplyPrint account not linked. Go to Connect options to set it up."
+msgstr ""
+
msgid "Connection to Flashforge works correctly."
msgstr ""
@@ -15635,6 +15686,62 @@ msgid ""
"probability of warping."
msgstr ""
+#, fuzzy
+#~ msgid "Printer local connection failed, please try again."
+#~ msgstr "列印設備區域網路連接失敗,請重試。"
+
+#, fuzzy
+#~ msgid ""
+#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n"
+#~ "\n"
+#~ "Usually the calibration is unnecessary. When you start a single color/"
+#~ "material print, with the \"flow dynamics calibration\" option checked in "
+#~ "the print start menu, the printer will follow the old way, calibrate the "
+#~ "filament before the print; When you start a multi color/material print, "
+#~ "the printer will use the default compensation parameter for the filament "
+#~ "during every filament switch which will have a good result in most "
+#~ "cases.\n"
+#~ "\n"
+#~ "Please note there are a few cases that will make the calibration result "
+#~ "not reliable: using a texture plate to do the calibration; the build "
+#~ "plate does not have good adhesion (please wash the build plate or apply "
+#~ "gluestick!) ...You can find more from our wiki.\n"
+#~ "\n"
+#~ "The calibration results have about 10 percent jitter in our test, which "
+#~ "may cause the result not exactly the same in each calibration. We are "
+#~ "still investigating the root cause to do improvements with new updates."
+#~ msgstr ""
+#~ "請從我們的wiki中找到流量動態校準的詳細資訊。\n"
+#~ "\n"
+#~ "通常情況下,校準是不必要的。當您開始單色/單線材列印,並在列印開始選單中勾"
+#~ "選了“流量動態校準”選項時,列印設備將按照舊的方式,在列印前校準絲料;當您開"
+#~ "始多色/多線材列印時,列印設備將在每次換絲料時使用預設的補償參數,這在大多"
+#~ "數情況下會產生良好的效果。\n"
+#~ "\n"
+#~ "請注意,有幾種情況會導致校準結果不可靠:使用紋理板進行校準;建模平台黏附效"
+#~ "果不好(請清洗建模平台或塗抹膠棒)... 您可以在我們的wiki中找到更多資訊。\n"
+#~ "\n"
+#~ "在我們的測試中,校準結果有約 10% 的波動,這可能導致每次校準的結果略有不"
+#~ "同。我們仍在調查根本原因,並通過新的更新進行改進。"
+
+#~ msgid ""
+#~ "Only one of the results with the same name will be saved. Are you sure "
+#~ "you want to overrides the other results?"
+#~ msgstr "相同名稱的結果只會儲存一個。確定要覆蓋其他結果嗎?"
+
+#, fuzzy, c-format, boost-format
+#~ msgid ""
+#~ "There is already a historical calibration result with the same name: %s. "
+#~ "Only one of the results with the same name is saved. Are you sure you "
+#~ "want to overrides the historical result?"
+#~ msgstr ""
+#~ "已經存在一個具有相同名稱的校準結果:%s。相同名稱的結果只會儲存一個。確定要"
+#~ "覆蓋嗎?"
+
+#, fuzzy
+#~ msgid "Please find the cornor with perfect degree of extrusion"
+#~ msgstr "請在您的列印板上找到最接近完美的直角"
+
#~ msgid "V"
#~ msgstr "版本:"
diff --git a/resources/images/OrcaSlicer.icns b/resources/images/OrcaSlicer.icns
index f1fb8590a9..40df0a8a26 100644
Binary files a/resources/images/OrcaSlicer.icns and b/resources/images/OrcaSlicer.icns differ
diff --git a/resources/images/gcode.icns b/resources/images/gcode.icns
index cb68519236..b33a3f1e7c 100644
Binary files a/resources/images/gcode.icns and b/resources/images/gcode.icns differ
diff --git a/resources/images/pellets.svg b/resources/images/pellets.svg
new file mode 100644
index 0000000000..047de45dfe
--- /dev/null
+++ b/resources/images/pellets.svg
@@ -0,0 +1,48 @@
+
+
+
diff --git a/resources/images/stl.icns b/resources/images/stl.icns
index a969895986..e8f65e97ae 100644
Binary files a/resources/images/stl.icns and b/resources/images/stl.icns differ
diff --git a/resources/profiles/Anker.json b/resources/profiles/Anker.json
index 5d2e9080a5..e9881de130 100644
--- a/resources/profiles/Anker.json
+++ b/resources/profiles/Anker.json
@@ -1,6 +1,6 @@
{
"name": "Anker",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Anker configurations",
"machine_model_list": [
diff --git a/resources/profiles/Anycubic.json b/resources/profiles/Anycubic.json
index aa4b1b8965..c51dfdf054 100644
--- a/resources/profiles/Anycubic.json
+++ b/resources/profiles/Anycubic.json
@@ -1,6 +1,6 @@
{
"name": "Anycubic",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Anycubic configurations",
"machine_model_list": [
diff --git a/resources/profiles/Artillery.json b/resources/profiles/Artillery.json
index e1749947f1..26c7d7b115 100644
--- a/resources/profiles/Artillery.json
+++ b/resources/profiles/Artillery.json
@@ -1,6 +1,6 @@
{
"name": "Artillery",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Artillery configurations",
"machine_model_list": [
diff --git a/resources/profiles/BBL.json b/resources/profiles/BBL.json
index 9ad3779363..775288cbd3 100644
--- a/resources/profiles/BBL.json
+++ b/resources/profiles/BBL.json
@@ -1,7 +1,7 @@
{
"name": "Bambulab",
"url": "http://www.bambulab.com/Parameters/vendor/BBL.json",
- "version": "01.09.00.11",
+ "version": "01.09.00.14",
"force_update": "0",
"description": "the initial version of BBL configurations",
"machine_model_list": [
@@ -625,6 +625,10 @@
"name": "fdm_filament_pc",
"sub_path": "filament/fdm_filament_pc.json"
},
+ {
+ "name": "fdm_filament_pctg",
+ "sub_path": "filament/fdm_filament_pctg.json"
+ },
{
"name": "fdm_filament_asa",
"sub_path": "filament/fdm_filament_asa.json"
diff --git a/resources/profiles/BBL/cli_config.json b/resources/profiles/BBL/cli_config.json
index 8fd179ecc1..2bd68647c9 100644
--- a/resources/profiles/BBL/cli_config.json
+++ b/resources/profiles/BBL/cli_config.json
@@ -1,21 +1,156 @@
{
"printer": {
"Bambu Lab A1": {
- "cli_safe_acceleration_e": "0,0",
- "cli_safe_acceleration_extruding": "0,0",
- "cli_safe_acceleration_retracting": "0,0",
- "cli_safe_acceleration_travel":"6000,6000",
- "cli_safe_acceleration_x": "6000,6000",
- "cli_safe_acceleration_y": "6000,6000",
- "cli_safe_acceleration_z": "0,0",
- "cli_safe_jerk_e": "0,0",
- "cli_safe_jerk_x": "0,0",
- "cli_safe_jerk_y": "0,0",
- "cli_safe_jerk_z": "0,0",
- "cli_safe_speed_e": "0,0",
- "cli_safe_speed_x": "0,0",
- "cli_safe_speed_y": "0,0",
- "cli_safe_speed_z": "0,0"
+ "machine_limits": {
+ "cli_safe_acceleration_e": "0,0",
+ "cli_safe_acceleration_extruding": "0,0",
+ "cli_safe_acceleration_retracting": "0,0",
+ "cli_safe_acceleration_travel": "6000,6000",
+ "cli_safe_acceleration_x": "6000,6000",
+ "cli_safe_acceleration_y": "6000,6000",
+ "cli_safe_acceleration_z": "0,0",
+ "cli_safe_jerk_e": "0,0",
+ "cli_safe_jerk_x": "0,0",
+ "cli_safe_jerk_y": "0,0",
+ "cli_safe_jerk_z": "0,0",
+ "cli_safe_speed_e": "0,0",
+ "cli_safe_speed_x": "0,0",
+ "cli_safe_speed_y": "0,0",
+ "cli_safe_speed_z": "0,0"
+ },
+ "downward_check": {
+ "Bambu Lab A1 0.2 nozzle": [
+ "Bambu Lab P1S 0.2 nozzle",
+ "Bambu Lab P1P 0.2 nozzle",
+ "Bambu Lab X1 Carbon 0.2 nozzle",
+ "Bambu Lab X1E 0.2 nozzle",
+ "Bambu Lab X1 0.2 nozzle",
+ "Bambu Lab A1 mini 0.2 nozzle"
+ ],
+ "Bambu Lab A1 0.4 nozzle": [
+ "Bambu Lab P1S 0.4 nozzle",
+ "Bambu Lab P1P 0.4 nozzle",
+ "Bambu Lab X1 Carbon 0.4 nozzle",
+ "Bambu Lab X1E 0.4 nozzle",
+ "Bambu Lab X1 0.4 nozzle",
+ "Bambu Lab A1 mini 0.4 nozzle"
+ ],
+ "Bambu Lab A1 0.6 nozzle": [
+ "Bambu Lab P1S 0.6 nozzle",
+ "Bambu Lab P1P 0.6 nozzle",
+ "Bambu Lab X1 Carbon 0.6 nozzle",
+ "Bambu Lab X1E 0.6 nozzle",
+ "Bambu Lab X1 0.6 nozzle",
+ "Bambu Lab A1 mini 0.6 nozzle"
+ ],
+ "Bambu Lab A1 0.8 nozzle": [
+ "Bambu Lab P1S 0.8 nozzle",
+ "Bambu Lab P1P 0.8 nozzle",
+ "Bambu Lab X1 Carbon 0.8 nozzle",
+ "Bambu Lab X1E 0.8 nozzle",
+ "Bambu Lab X1 0.8 nozzle",
+ "Bambu Lab A1 mini 0.8 nozzle"
+ ]
+ }
+ },
+ "Bambu Lab A1 mini": {
+ "machine_limits": {
+ "cli_safe_acceleration_e": "0,0",
+ "cli_safe_acceleration_extruding": "0,0",
+ "cli_safe_acceleration_retracting": "0,0",
+ "cli_safe_acceleration_travel": "6000,6000",
+ "cli_safe_acceleration_x": "6000,6000",
+ "cli_safe_acceleration_y": "6000,6000",
+ "cli_safe_acceleration_z": "0,0",
+ "cli_safe_jerk_e": "0,0",
+ "cli_safe_jerk_x": "0,0",
+ "cli_safe_jerk_y": "0,0",
+ "cli_safe_jerk_z": "0,0",
+ "cli_safe_speed_e": "0,0",
+ "cli_safe_speed_x": "0,0",
+ "cli_safe_speed_y": "0,0",
+ "cli_safe_speed_z": "0,0"
+ }
+ },
+ "Bambu Lab X1": {
+ "downward_check": {
+ "Bambu Lab X1 0.2 nozzle": [
+ "Bambu Lab A1 mini 0.2 nozzle"
+ ],
+ "Bambu Lab X1 0.4 nozzle": [
+ "Bambu Lab A1 mini 0.4 nozzle"
+ ],
+ "Bambu Lab X1 0.6 nozzle": [
+ "Bambu Lab A1 mini 0.6 nozzle"
+ ],
+ "Bambu Lab X1 0.8 nozzle": [
+ "Bambu Lab A1 mini 0.8 nozzle"
+ ]
+ }
+ },
+ "Bambu Lab X1 Carbon": {
+ "downward_check": {
+ "Bambu Lab X1 Carbon 0.2 nozzle": [
+ "Bambu Lab A1 mini 0.2 nozzle"
+ ],
+ "Bambu Lab X1 Carbon 0.4 nozzle": [
+ "Bambu Lab A1 mini 0.4 nozzle"
+ ],
+ "Bambu Lab X1 Carbon 0.6 nozzle": [
+ "Bambu Lab A1 mini 0.6 nozzle"
+ ],
+ "Bambu Lab X1 Carbon 0.8 nozzle": [
+ "Bambu Lab A1 mini 0.8 nozzle"
+ ]
+ }
+ },
+ "Bambu Lab X1E": {
+ "downward_check": {
+ "Bambu Lab X1E 0.2 nozzle": [
+ "Bambu Lab A1 mini 0.2 nozzle"
+ ],
+ "Bambu Lab X1E 0.4 nozzle": [
+ "Bambu Lab A1 mini 0.4 nozzle"
+ ],
+ "Bambu Lab X1E 0.6 nozzle": [
+ "Bambu Lab A1 mini 0.6 nozzle"
+ ],
+ "Bambu Lab X1E 0.8 nozzle": [
+ "Bambu Lab A1 mini 0.8 nozzle"
+ ]
+ }
+ },
+ "Bambu Lab P1P": {
+ "downward_check": {
+ "Bambu Lab P1P 0.2 nozzle": [
+ "Bambu Lab A1 mini 0.2 nozzle"
+ ],
+ "Bambu Lab P1P 0.4 nozzle": [
+ "Bambu Lab A1 mini 0.4 nozzle"
+ ],
+ "Bambu Lab P1P 0.6 nozzle": [
+ "Bambu Lab A1 mini 0.6 nozzle"
+ ],
+ "Bambu Lab P1P 0.8 nozzle": [
+ "Bambu Lab A1 mini 0.8 nozzle"
+ ]
+ }
+ },
+ "Bambu Lab P1S": {
+ "downward_check": {
+ "Bambu Lab P1S 0.2 nozzle": [
+ "Bambu Lab A1 mini 0.2 nozzle"
+ ],
+ "Bambu Lab P1S 0.4 nozzle": [
+ "Bambu Lab A1 mini 0.4 nozzle"
+ ],
+ "Bambu Lab P1S 0.6 nozzle": [
+ "Bambu Lab A1 mini 0.6 nozzle"
+ ],
+ "Bambu Lab P1S 0.8 nozzle": [
+ "Bambu Lab A1 mini 0.8 nozzle"
+ ]
+ }
}
}
-}
+}
\ No newline at end of file
diff --git a/resources/profiles/BBL/filament/Generic PCTG @base.json b/resources/profiles/BBL/filament/Generic PCTG @base.json
index ca51974e25..397fcf1691 100644
--- a/resources/profiles/BBL/filament/Generic PCTG @base.json
+++ b/resources/profiles/BBL/filament/Generic PCTG @base.json
@@ -1,7 +1,7 @@
{
"type": "filament",
"name": "Generic PCTG @base",
- "inherits": "fdm_filament_pet",
+ "inherits": "fdm_filament_pctg",
"from": "system",
"filament_id": "GFG97",
"instantiation": "false",
diff --git a/resources/profiles/BBL/filament/fdm_filament_pctg.json b/resources/profiles/BBL/filament/fdm_filament_pctg.json
new file mode 100644
index 0000000000..1b38376293
--- /dev/null
+++ b/resources/profiles/BBL/filament/fdm_filament_pctg.json
@@ -0,0 +1,64 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_pctg",
+ "inherits": "fdm_filament_common",
+ "from": "system",
+ "instantiation": "false",
+ "eng_plate_temp": [
+ "0"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "20"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_cost": [
+ "30"
+ ],
+ "filament_density": [
+ "1.27"
+ ],
+ "filament_max_volumetric_speed": [
+ "25"
+ ],
+ "filament_type": [
+ "PCTG"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "nozzle_temperature": [
+ "255"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "255"
+ ],
+ "nozzle_temperature_range_high": [
+ "260"
+ ],
+ "nozzle_temperature_range_low": [
+ "220"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "temperature_vitrification": [
+ "70"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n{if (bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S180\n{elsif (bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S255\n{endif};Prevent PLA from jamming\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/BBL/machine/Bambu Lab A1 0.4 nozzle.json b/resources/profiles/BBL/machine/Bambu Lab A1 0.4 nozzle.json
index a32bf88764..86fcc31826 100644
--- a/resources/profiles/BBL/machine/Bambu Lab A1 0.4 nozzle.json
+++ b/resources/profiles/BBL/machine/Bambu Lab A1 0.4 nozzle.json
@@ -61,9 +61,9 @@
"255"
],
"scan_first_layer": "0",
- "machine_start_gcode": ";===== machine: A1 =========================\n;===== date: 20240509 =====================\nG392 S0\nM9833.2\n;M400\n;M73 P1.717\n\n;===== start to heat heatbead&hotend==========\nM1002 gcode_claim_action : 2\nM1002 set_filament_type:{filament_type[initial_no_support_extruder]}\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\n\n;=====start printer sound ===================\nM17\nM400 S1\nM1006 S1\nM1006 A0 B10 L100 C37 D10 M60 E37 F10 N60\nM1006 A0 B10 L100 C41 D10 M60 E41 F10 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A43 B10 L100 C46 D10 M70 E39 F10 N80\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N80\nM1006 A0 B10 L100 C43 D10 M60 E39 F10 N80\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N80\nM1006 A0 B10 L100 C41 D10 M80 E41 F10 N80\nM1006 A0 B10 L100 C44 D10 M80 E44 F10 N80\nM1006 A0 B10 L100 C49 D10 M80 E49 F10 N80\nM1006 A0 B10 L100 C0 D10 M80 E0 F10 N80\nM1006 A44 B10 L100 C48 D10 M60 E39 F10 N80\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N80\nM1006 A0 B10 L100 C44 D10 M80 E39 F10 N80\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N80\nM1006 A43 B10 L100 C46 D10 M60 E39 F10 N80\nM1006 W\nM18 \n;=====start printer sound ===================\n\n;=====avoid end stop =================\nG91\nG380 S2 Z40 F1200\nG380 S3 Z-15 F1200\nG90\n\n;===== reset machine status =================\n;M290 X39 Y39 Z8\nM204 S6000\n\nM630 S0 P0\nG91\nM17 Z0.3 ; lower the z-motor current\n\nG90\nM17 X0.65 Y1.2 Z0.6 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\n;M211 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\n\n;====== cog noise reduction=================\nM982.2 S1 ; turn on cog noise reduction\n\nM1002 gcode_claim_action : 13\n\nG28 X\nG91\nG1 Z5 F1200\nG90\nG0 X128 F30000\nG0 Y254 F3000\nG91\nG1 Z-5 F1200\n\nM109 S25 H140\n\nM17 E0.3\nM83\nG1 E10 F1200\nG1 E-0.5 F30\nM17 D\n\nG28 Z P0 T140; home z with low precision,permit 300deg temperature\nM104 S{nozzle_temperature_initial_layer[initial_extruder]}\n\nM1002 judge_flag build_plate_detect_flag\nM622 S1\n G39.4\n G90\n G1 Z5 F1200\nM623\n\n;M400\n;M73 P1.717\n\n;===== prepare print temperature and material ==========\nM1002 gcode_claim_action : 24\n\nM400\n;G392 S1\nM211 X0 Y0 Z0 ;turn off soft endstop\nM975 S1 ; turn on\n\nG90\nG1 X-28.5 F30000\nG1 X-48.2 F3000\n\nM620 M ;enable remap\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M1002 gcode_claim_action : 4\n M400\n M1002 set_filament_type:UNKNOWN\n M109 S[nozzle_temperature_initial_layer]\n M104 S250\n M400\n T[initial_no_support_extruder]\n G1 X-48.2 F3000\n M400\n\n M620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n M109 S250 ;set nozzle to common flush temp\n M106 P1 S0\n G92 E0\n G1 E50 F200\n M400\n M1002 set_filament_type:{filament_type[initial_no_support_extruder]}\nM621 S[initial_no_support_extruder]A\n\nM109 S{nozzle_temperature_range_high[initial_no_support_extruder]} H300\nG92 E0\nG1 E50 F200 ; lower extrusion speed to avoid clog\nM400\nM106 P1 S178\nG92 E0\nG1 E5 F200\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG92 E0\nG1 E-0.5 F300\n\nG1 X-28.5 F30000\nG1 X-48.2 F3000\nG1 X-28.5 F30000 ;wipe and shake\nG1 X-48.2 F3000\nG1 X-28.5 F30000 ;wipe and shake\nG1 X-48.2 F3000\n\n;G392 S0\n\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n;M400\n;M73 P1.717\n\n;===== auto extrude cali start =========================\nM975 S1\n;G392 S1\n\nG90\nM83\nT1000\nG1 X-48.2 Y0 Z10 F10000\nM400\nM1002 set_filament_type:UNKNOWN\n\nM412 S1 ; ===turn on filament runout detection===\nM400 P10\nM620.3 W1; === turn on filament tangle detection===\nM400 S2\n\nM1002 set_filament_type:{filament_type[initial_no_support_extruder]}\n\n;M1002 set_flag extrude_cali_flag=1\nM1002 judge_flag extrude_cali_flag\n\nM622 J1\n M1002 gcode_claim_action : 8\n\n M109 S{nozzle_temperature[initial_extruder]}\n G1 E10 F{outer_wall_volumetric_speed/2.4*60}\n M983 F{outer_wall_volumetric_speed/2.4} A0.3 H[nozzle_diameter]; cali dynamic extrusion compensation\n\n M106 P1 S255\n M400 S5\n G1 X-28.5 F18000\n G1 X-48.2 F3000\n G1 X-28.5 F18000 ;wipe and shake\n G1 X-48.2 F3000\n G1 X-28.5 F12000 ;wipe and shake\n G1 X-48.2 F3000\n M400\n M106 P1 S0\n\n M1002 judge_last_extrude_cali_success\n M622 J0\n M983 F{outer_wall_volumetric_speed/2.4} A0.3 H[nozzle_diameter]; cali dynamic extrusion compensation\n M106 P1 S255\n M400 S5\n G1 X-28.5 F18000\n G1 X-48.2 F3000\n G1 X-28.5 F18000 ;wipe and shake\n G1 X-48.2 F3000\n G1 X-28.5 F12000 ;wipe and shake\n M400\n M106 P1 S0\n M623\n \n G1 X-48.2 F3000\n M400\n M984 A0.1 E1 S1 F{outer_wall_volumetric_speed/2.4}\n M106 P1 S178\n M400 S7\n G1 X-28.5 F18000\n G1 X-48.2 F3000\n G1 X-28.5 F18000 ;wipe and shake\n G1 X-48.2 F3000\n G1 X-28.5 F12000 ;wipe and shake\n G1 X-48.2 F3000\n M400\n M106 P1 S0\nM623 ; end of \"draw extrinsic para cali paint\"\n\n;G392 S0\n;===== auto extrude cali end ========================\n\n;M400\n;M73 P1.717\n\nM104 S170 ; prepare to wipe nozzle\nM106 S255 ; turn on fan\n\n;===== mech mode fast check start =====================\nM1002 gcode_claim_action : 3\n\nG1 X128 Y128 F20000\nG1 Z5 F1200\nM400 P200\nM970.3 Q1 A5 K0 O3\nM974 Q1 S2 P0\n\nM970.2 Q1 K1 W58 Z0.11\nM974 S2\n\nG1 X128 Y128 F20000\nG1 Z5 F1200\nM400 P200\nM970.3 Q0 A10 K0 O1\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X0 Y5\nG28 X ; re-home XY\n\nG1 Z4 F1200\n\n;===== mech mode fast check end =======================\n\n;M400\n;M73 P1.717\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\n\nM975 S1\nM106 S255 ; turn on fan (G28 has turn off fan)\nM211 S; push soft endstop status\nM211 X0 Y0 Z0 ;turn off Z axis endstop\n\n;===== remove waste by touching start =====\n\nM104 S170 ; set temp down to heatbed acceptable\n\nM83\nG1 E-1 F500\nG90\nM83\n\nM109 S170\nG0 X108 Y-0.5 F30000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X110 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X112 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X114 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X116 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X118 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X120 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X122 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X124 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X126 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X128 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X130 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X132 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X134 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X136 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X138 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X140 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X142 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X144 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X146 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X148 F10000\nG380 S3 Z-5 F1200\n\nG1 Z5 F30000\n;===== remove waste by touching end =====\n\nG1 Z10 F1200\nG0 X118 Y261 F30000\nG1 Z5 F1200\nM109 S{nozzle_temperature_initial_layer[initial_extruder]-50}\n\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nM104 S140 ; prepare to abl\nG0 Z5 F20000\n\nG0 X128 Y261 F20000 ; move to exposed steel surface\nG0 Z-1.01 F1200 ; stop the nozzle\n\nG91\nG2 I1 J0 X2 Y0 F2000.1\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\n\nG90\nG1 Z10 F1200\n\n;===== brush material wipe nozzle =====\n\nG90\nG1 Y250 F30000\nG1 X55\nG1 Z1.300 F1200\nG1 Y262.5 F6000\nG91\nG1 X-35 F30000\nG1 Y-0.5\nG1 X45\nG1 Y-0.5\nG1 X-45\nG1 Y-0.5\nG1 X45\nG1 Y-0.5\nG1 X-45\nG1 Y-0.5\nG1 X45\nG1 Z5.000 F1200\n\nG90\nG1 X30 Y250.000 F30000\nG1 Z1.300 F1200\nG1 Y262.5 F6000\nG91\nG1 X35 F30000\nG1 Y-0.5\nG1 X-45\nG1 Y-0.5\nG1 X45\nG1 Y-0.5\nG1 X-45\nG1 Y-0.5\nG1 X45\nG1 Y-0.5\nG1 X-45\nG1 Z10.000 F1200\n\n;===== brush material wipe nozzle end =====\n\nG90\n;G0 X128 Y261 F20000 ; move to exposed steel surface\nG1 Y250 F30000\nG1 X138\nG1 Y261\nG0 Z-1.01 F1200 ; stop the nozzle\n\nG91\nG2 I1 J0 X2 Y0 F2000.1\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\n\nM109 S140\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM211 R; pop softend status\n\n;===== wipe nozzle end ================================\n\n;M400\n;M73 P1.717\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\n\nG90\nG1 Z5 F1200\nG1 X0 Y0 F30000\nG29.2 S1 ; turn on ABL\n\nM190 S[bed_temperature_initial_layer_single]; ensure bed temp\nM109 S140\nM106 S0 ; turn off fan , too noisy\n\nM622 J1\n M1002 gcode_claim_action : 1\n G29 A1 X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n\n;===== home after wipe mouth end =======================\n\n;M400\n;M73 P1.717\n\nG1 X108.000 Y-0.5 F30000\nG1 Z0.300 F1200\nM400\nG2814 Z0.32\n\nM104 S{nozzle_temperature_initial_layer[initial_extruder]} ; prepare to print\n\n;===== nozzle load line ===============================\n;G90\n;M83\n;G1 Z5 F1200\n;G1 X88 Y1.0 F20000\n;G1 Z0.3 F1200\n\n;M109 S{nozzle_temperature_initial_layer[initial_extruder]}\n\n;G1 E2 F300\n;G1 X168 E4.989 F6000\n;G1 Z1 F1200\n;===== nozzle load line end ===========================\n\n;===== extrude cali test ===============================\n\nM400\n M900 S\n G90\n M83\n\n M109 S{nozzle_temperature_initial_layer[initial_extruder]}\n G0 X128 E4 F{outer_wall_volumetric_speed/(24/20) * 60}\n G0 X133 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G0 X138 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X143 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G0 X148 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X153 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G91\n G1 X1 Z-0.300\n G1 X4\n G1 Z1 F1200\n G90\n M83\n M400\n\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M900 C\n G90\n G1 X108.000 Y1.0 F30000\n G91\n G1 Z-0.700 F1200\n G90\n M83\n G0 X128 E4 F{outer_wall_volumetric_speed/(24/20) * 60}\n G0 X133 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G0 X138 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X143 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G0 X148 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X153 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G91\n G1 X1 Z-0.300\n G1 X4\n G1 Z1 F1200\n G90\n M400\n M900 R\nM623\n\nG1 Z0.2\n\n;M400\n;M73 P1.717\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.02} ; for Textured PEI Plate\n{endif}\n\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\n\nM211 X0 Y0 Z0 ;turn off soft endstop\n;G392 S1 ; turn on clog detection\nM1007 S1 ; turn on mass estimation\nG29.4\n",
+ "machine_start_gcode": ";===== machine: A1 =========================\n;===== date: 20240606 =====================\nG392 S0\nM9833.2\n;M400\n;M73 P1.717\n\n;===== start to heat heatbead&hotend==========\nM1002 gcode_claim_action : 2\nM1002 set_filament_type:{filament_type[initial_no_support_extruder]}\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\n\n;=====start printer sound ===================\nM17\nM400 S1\nM1006 S1\nM1006 A0 B10 L100 C37 D10 M60 E37 F10 N60\nM1006 A0 B10 L100 C41 D10 M60 E41 F10 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A43 B10 L100 C46 D10 M70 E39 F10 N80\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N80\nM1006 A0 B10 L100 C43 D10 M60 E39 F10 N80\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N80\nM1006 A0 B10 L100 C41 D10 M80 E41 F10 N80\nM1006 A0 B10 L100 C44 D10 M80 E44 F10 N80\nM1006 A0 B10 L100 C49 D10 M80 E49 F10 N80\nM1006 A0 B10 L100 C0 D10 M80 E0 F10 N80\nM1006 A44 B10 L100 C48 D10 M60 E39 F10 N80\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N80\nM1006 A0 B10 L100 C44 D10 M80 E39 F10 N80\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N80\nM1006 A43 B10 L100 C46 D10 M60 E39 F10 N80\nM1006 W\nM18 \n;=====start printer sound ===================\n\n;=====avoid end stop =================\nG91\nG380 S2 Z40 F1200\nG380 S3 Z-15 F1200\nG90\n\n;===== reset machine status =================\n;M290 X39 Y39 Z8\nM204 S6000\n\nM630 S0 P0\nG91\nM17 Z0.3 ; lower the z-motor current\n\nG90\nM17 X0.65 Y1.2 Z0.6 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\n;M211 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\n\n;====== cog noise reduction=================\nM982.2 S1 ; turn on cog noise reduction\n\nM1002 gcode_claim_action : 13\n\nG28 X\nG91\nG1 Z5 F1200\nG90\nG0 X128 F30000\nG0 Y254 F3000\nG91\nG1 Z-5 F1200\n\nM109 S25 H140\n\nM17 E0.3\nM83\nG1 E10 F1200\nG1 E-0.5 F30\nM17 D\n\nG28 Z P0 T140; home z with low precision,permit 300deg temperature\nM104 S{nozzle_temperature_initial_layer[initial_extruder]}\n\nM1002 judge_flag build_plate_detect_flag\nM622 S1\n G39.4\n G90\n G1 Z5 F1200\nM623\n\n;M400\n;M73 P1.717\n\n;===== prepare print temperature and material ==========\nM1002 gcode_claim_action : 24\n\nM400\n;G392 S1\nM211 X0 Y0 Z0 ;turn off soft endstop\nM975 S1 ; turn on\n\nG90\nG1 X-28.5 F30000\nG1 X-48.2 F3000\n\nM620 M ;enable remap\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M1002 gcode_claim_action : 4\n M400\n M1002 set_filament_type:UNKNOWN\n M109 S[nozzle_temperature_initial_layer]\n M104 S250\n M400\n T[initial_no_support_extruder]\n G1 X-48.2 F3000\n M400\n\n M620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n M109 S250 ;set nozzle to common flush temp\n M106 P1 S0\n G92 E0\n G1 E50 F200\n M400\n M1002 set_filament_type:{filament_type[initial_no_support_extruder]}\nM621 S[initial_no_support_extruder]A\n\nM109 S{nozzle_temperature_range_high[initial_no_support_extruder]} H300\nG92 E0\nG1 E50 F200 ; lower extrusion speed to avoid clog\nM400\nM106 P1 S178\nG92 E0\nG1 E5 F200\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG92 E0\nG1 E-0.5 F300\n\nG1 X-28.5 F30000\nG1 X-48.2 F3000\nG1 X-28.5 F30000 ;wipe and shake\nG1 X-48.2 F3000\nG1 X-28.5 F30000 ;wipe and shake\nG1 X-48.2 F3000\n\n;G392 S0\n\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n;M400\n;M73 P1.717\n\n;===== auto extrude cali start =========================\nM975 S1\n;G392 S1\n\nG90\nM83\nT1000\nG1 X-48.2 Y0 Z10 F10000\nM400\nM1002 set_filament_type:UNKNOWN\n\nM412 S1 ; ===turn on filament runout detection===\nM400 P10\nM620.3 W1; === turn on filament tangle detection===\nM400 S2\n\nM1002 set_filament_type:{filament_type[initial_no_support_extruder]}\n\n;M1002 set_flag extrude_cali_flag=1\nM1002 judge_flag extrude_cali_flag\n\nM622 J1\n M1002 gcode_claim_action : 8\n\n M109 S{nozzle_temperature[initial_extruder]}\n G1 E10 F{outer_wall_volumetric_speed/2.4*60}\n M983 F{outer_wall_volumetric_speed/2.4} A0.3 H[nozzle_diameter]; cali dynamic extrusion compensation\n\n M106 P1 S255\n M400 S5\n G1 X-28.5 F18000\n G1 X-48.2 F3000\n G1 X-28.5 F18000 ;wipe and shake\n G1 X-48.2 F3000\n G1 X-28.5 F12000 ;wipe and shake\n G1 X-48.2 F3000\n M400\n M106 P1 S0\n\n M1002 judge_last_extrude_cali_success\n M622 J0\n M983 F{outer_wall_volumetric_speed/2.4} A0.3 H[nozzle_diameter]; cali dynamic extrusion compensation\n M106 P1 S255\n M400 S5\n G1 X-28.5 F18000\n G1 X-48.2 F3000\n G1 X-28.5 F18000 ;wipe and shake\n G1 X-48.2 F3000\n G1 X-28.5 F12000 ;wipe and shake\n M400\n M106 P1 S0\n M623\n \n G1 X-48.2 F3000\n M400\n M984 A0.1 E1 S1 F{outer_wall_volumetric_speed/2.4}\n M106 P1 S178\n M400 S7\n G1 X-28.5 F18000\n G1 X-48.2 F3000\n G1 X-28.5 F18000 ;wipe and shake\n G1 X-48.2 F3000\n G1 X-28.5 F12000 ;wipe and shake\n G1 X-48.2 F3000\n M400\n M106 P1 S0\nM623 ; end of \"draw extrinsic para cali paint\"\n\n;G392 S0\n;===== auto extrude cali end ========================\n\n;M400\n;M73 P1.717\n\nM104 S170 ; prepare to wipe nozzle\nM106 S255 ; turn on fan\n\n;===== mech mode fast check start =====================\nM1002 gcode_claim_action : 3\n\nG1 X128 Y128 F20000\nG1 Z5 F1200\nM400 P200\nM970.3 Q1 A5 K0 O3\nM974 Q1 S2 P0\n\nM970.2 Q1 K1 W58 Z0.11\nM974 S2\n\nG1 X128 Y128 F20000\nG1 Z5 F1200\nM400 P200\nM970.3 Q0 A10 K0 O1\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X0 Y5\nG28 X ; re-home XY\n\nG1 Z4 F1200\n\n;===== mech mode fast check end =======================\n\n;M400\n;M73 P1.717\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\n\nM975 S1\nM106 S255 ; turn on fan (G28 has turn off fan)\nM211 S; push soft endstop status\nM211 X0 Y0 Z0 ;turn off Z axis endstop\n\n;===== remove waste by touching start =====\n\nM104 S170 ; set temp down to heatbed acceptable\n\nM83\nG1 E-1 F500\nG90\nM83\n\nM109 S170\nG0 X108 Y-0.5 F30000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X110 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X112 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X114 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X116 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X118 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X120 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X122 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X124 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X126 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X128 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X130 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X132 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X134 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X136 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X138 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X140 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X142 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X144 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X146 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X148 F10000\nG380 S3 Z-5 F1200\n\nG1 Z5 F30000\n;===== remove waste by touching end =====\n\nG1 Z10 F1200\nG0 X118 Y261 F30000\nG1 Z5 F1200\nM109 S{nozzle_temperature_initial_layer[initial_extruder]-50}\n\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nM104 S140 ; prepare to abl\nG0 Z5 F20000\n\nG0 X128 Y261 F20000 ; move to exposed steel surface\nG0 Z-1.01 F1200 ; stop the nozzle\n\nG91\nG2 I1 J0 X2 Y0 F2000.1\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\n\nG90\nG1 Z10 F1200\n\n;===== brush material wipe nozzle =====\n\nG90\nG1 Y250 F30000\nG1 X55\nG1 Z1.300 F1200\nG1 Y262.5 F6000\nG91\nG1 X-35 F30000\nG1 Y-0.5\nG1 X45\nG1 Y-0.5\nG1 X-45\nG1 Y-0.5\nG1 X45\nG1 Y-0.5\nG1 X-45\nG1 Y-0.5\nG1 X45\nG1 Z5.000 F1200\n\nG90\nG1 X30 Y250.000 F30000\nG1 Z1.300 F1200\nG1 Y262.5 F6000\nG91\nG1 X35 F30000\nG1 Y-0.5\nG1 X-45\nG1 Y-0.5\nG1 X45\nG1 Y-0.5\nG1 X-45\nG1 Y-0.5\nG1 X45\nG1 Y-0.5\nG1 X-45\nG1 Z10.000 F1200\n\n;===== brush material wipe nozzle end =====\n\nG90\n;G0 X128 Y261 F20000 ; move to exposed steel surface\nG1 Y250 F30000\nG1 X138\nG1 Y261\nG0 Z-1.01 F1200 ; stop the nozzle\n\nG91\nG2 I1 J0 X2 Y0 F2000.1\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\n\nM109 S140\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM211 R; pop softend status\n\n;===== wipe nozzle end ================================\n\n;M400\n;M73 P1.717\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\n\nG90\nG1 Z5 F1200\nG1 X0 Y0 F30000\nG29.2 S1 ; turn on ABL\n\nM190 S[bed_temperature_initial_layer_single]; ensure bed temp\nM109 S140\nM106 S0 ; turn off fan , too noisy\n\nM622 J1\n M1002 gcode_claim_action : 1\n G29 A1 X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n\n;===== home after wipe mouth end =======================\n\n;M400\n;M73 P1.717\n\nG1 X108.000 Y-0.5 F30000\nG1 Z0.300 F1200\nM400\nG2814 Z0.32\n\nM104 S{nozzle_temperature_initial_layer[initial_extruder]} ; prepare to print\n\n;===== nozzle load line ===============================\n;G90\n;M83\n;G1 Z5 F1200\n;G1 X88 Y1.0 F20000\n;G1 Z0.3 F1200\n\n;M109 S{nozzle_temperature_initial_layer[initial_extruder]}\n\n;G1 E2 F300\n;G1 X168 E4.989 F6000\n;G1 Z1 F1200\n;===== nozzle load line end ===========================\n\n;===== extrude cali test ===============================\n\nM400\n M900 S\n M900 C\n G90\n M83\n\n M109 S{nozzle_temperature_initial_layer[initial_extruder]}\n G0 X128 E8 F{outer_wall_volumetric_speed/(24/20) * 60}\n G0 X133 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G0 X138 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X143 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G0 X148 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X153 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G91\n G1 X1 Z-0.300\n G1 X4\n G1 Z1 F1200\n G90\n M83\n M400\n\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M900 R\n G90\n G1 X108.000 Y1.0 F30000\n G91\n G1 Z-0.700 F1200\n G90\n M83\n G0 X128 E4 F{outer_wall_volumetric_speed/(24/20) * 60}\n G0 X133 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G0 X138 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X143 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G0 X148 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X153 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G91\n G1 X1 Z-0.300\n G1 X4\n G1 Z1 F1200\n G90\n M400\nM623\n\nG1 Z0.2\n\n;M400\n;M73 P1.717\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.02} ; for Textured PEI Plate\n{endif}\n\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\n\nM211 X0 Y0 Z0 ;turn off soft endstop\n;G392 S1 ; turn on clog detection\nM1007 S1 ; turn on mass estimation\nG29.4\n",
"machine_end_gcode": ";===== date: 20231229 =====================\nG392 S0 ;turn off nozzle clog detect\n\nM400 ; wait for buffer to clear\nG92 E0 ; zero the extruder\nG1 E-0.8 F1800 ; retract\nG1 Z{max_layer_z + 0.5} F900 ; lower z a little\nG1 X0 Y{first_layer_center_no_wipe_tower[1]} F18000 ; move to safe pos\nG1 X-13.0 F3000 ; move to safe pos\n{if !spiral_mode && print_sequence != \"by object\"}\nM1002 judge_flag timelapse_record_flag\nM622 J1\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM991 S0 P-1 ;end timelapse at safe pos\nM623\n{endif}\n\nM140 S0 ; turn off bed\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\n\n;G1 X27 F15000 ; wipe\n\n; pull back filament to AMS\nM620 S255\nG1 X267 F15000\nT255\nG1 X-28.5 F18000\nG1 X-48.2 F3000\nG1 X-28.5 F18000\nG1 X-48.2 F3000\nM621 S255\n\nM104 S0 ; turn off hotend\n\nM400 ; wait all motion done\nM17 S\nM17 Z0.4 ; lower z motor current to reduce impact if there is something in the bottom\n{if (max_layer_z + 100.0) < 256}\n G1 Z{max_layer_z + 100.0} F600\n G1 Z{max_layer_z +98.0}\n{else}\n G1 Z256 F600\n G1 Z256\n{endif}\nM400 P100\nM17 R ; restore z current\n\nG90\nG1 X-48 Y180 F3600\n\nM220 S100 ; Reset feedrate magnitude\nM201.2 K1.0 ; Reset acc magnitude\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 0\n\n;=====printer finish sound=========\nM17\nM400 S1\nM1006 S1\nM1006 A0 B20 L100 C37 D20 M40 E42 F20 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C46 D10 M80 E46 F10 N80\nM1006 A44 B20 L100 C39 D20 M60 E48 F20 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A0 B10 L100 C39 D10 M60 E39 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A0 B10 L100 C39 D10 M60 E39 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A0 B10 L100 C48 D10 M60 E44 F10 N80\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N80\nM1006 A44 B20 L100 C49 D20 M80 E41 F20 N80\nM1006 A0 B20 L100 C0 D20 M60 E0 F20 N80\nM1006 A0 B20 L100 C37 D20 M30 E37 F20 N60\nM1006 W\n;=====printer finish sound=========\n\n;M17 X0.8 Y0.8 Z0.5 ; lower motor current to 45% power\nM400\nM18 X Y Z\n\n",
"layer_change_gcode": "; layer num/total_layer_count: {layer_num+1}/[total_layer_count]\n; update layer progress\nM73 L{layer_num+1}\nM991 S0 P{layer_num} ;notify layer change",
- "time_lapse_gcode": ";===================== date: 20231215 =====================\n{if !spiral_mode && print_sequence != \"by object\"}\n; don't support timelapse gcode in spiral_mode and by object sequence for I3 structure printer\nM622.1 S1 ; for prev firware, default turned on\nM1002 judge_flag timelapse_record_flag\nM622 J1\nG92 E0\nG17\nG2 Z{layer_z + 0.4} I0.86 J0.86 P1 F20000 ; spiral lift a little\nG1 Z{max_layer_z + 0.4}\nG1 X0 Y{first_layer_center_no_wipe_tower[1]} F18000 ; move to safe pos\nG1 X-48.2 F3000 ; move to safe pos\nM400 P300\nM971 S11 C11 O0\nG92 E0\nG1 X0 F18000\nM623\n\nM622.1 S1\nM1002 judge_flag g39_detection_flag\nM622 J1 \n ; enable nozzle clog detect at 3rd layer\n {if layer_num == 2}\n M400\n G90\n M83\n M204 S5000\n G0 Z2 F4000\n G0 X261 Y250 F20000\n M400 P200\n G39 S1\n G0 Z2 F4000\n {endif}\n\n {if !in_head_wrap_detect_zone}\n M622.1 S0\n M1002 judge_flag g39_mass_exceed_flag\n M622 J1\n {if layer_num > 2}\n G392 S0\n M400\n G90\n M83\n M204 S5000\n G0 Z{max_layer_z + 0.4} F4000\n G39.3 S1\n G0 Z{max_layer_z + 0.4} F4000\n G392 S0\n {endif}\n M623\n {endif}\nM623\n{endif}\n",
+ "time_lapse_gcode": ";===================== date: 20240606 =====================\n{if !spiral_mode && print_sequence != \"by object\"}\n; don't support timelapse gcode in spiral_mode and by object sequence for I3 structure printer\nM622.1 S1 ; for prev firware, default turned on\nM1002 judge_flag timelapse_record_flag\nM622 J1\nG92 E0\nG17\nG2 Z{layer_z + 0.4} I0.86 J0.86 P1 F20000 ; spiral lift a little\nG1 Z{max_layer_z + 0.4}\nG1 X0 Y{first_layer_center_no_wipe_tower[1]} F18000 ; move to safe pos\nG1 X-48.2 F3000 ; move to safe pos\nM400 P300\nM971 S11 C11 O0\nG92 E0\nG1 X0 F18000\nM623\n\nM622.1 S1\nM1002 judge_flag g39_3rd_layer_detect_flag\nM622 J1\n ; enable nozzle clog detect at 3rd layer\n {if layer_num == 2}\n M400\n G90\n M83\n M204 S5000\n G0 Z2 F4000\n G0 X261 Y250 F20000\n M400 P200\n G39 S1\n G0 Z2 F4000\n {endif}\n\n\n M622.1 S1\n M1002 judge_flag g39_detection_flag\n M622 J1\n {if !in_head_wrap_detect_zone}\n M622.1 S0\n M1002 judge_flag g39_mass_exceed_flag\n M622 J1\n {if layer_num > 2}\n G392 S0\n M400\n G90\n M83\n M204 S5000\n G0 Z{max_layer_z + 0.4} F4000\n G39.3 S1\n G0 Z{max_layer_z + 0.4} F4000\n G392 S0\n {endif}\n M623\n {endif}\n M623\nM623\n{endif}\n",
"change_filament_gcode": ";===== machine: A1 =========================\n;===== date: 20231225 =======================\nM1007 S0 ; turn off mass estimation\nG392 S0\nM620 S[next_extruder]A\nM204 S9000\n{if toolchange_count > 1}\nG17\nG2 Z{max_layer_z + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\n{endif}\nG1 Z{max_layer_z + 3.0} F1200\n\nM400\nM106 P1 S0\nM106 P2 S0\n{if old_filament_temp > 142 && next_extruder < 255}\nM104 S[old_filament_temp]\n{endif}\n\nG1 X267 F18000\nM620.1 E F[old_filament_e_feedrate] T{nozzle_temperature_range_high[previous_extruder]}\nM620.10 A0 F[old_filament_e_feedrate]\nT[next_extruder]\nM620.1 E F[new_filament_e_feedrate] T{nozzle_temperature_range_high[next_extruder]}\nM620.10 A1 F[new_filament_e_feedrate] L[flush_length] H[nozzle_diameter] T[nozzle_temperature_range_high]\n\nG1 Y128 F9000\n\n{if next_extruder < 255}\nM400\n\nG92 E0\nM628 S0\n\n{if flush_length_1 > 1}\n; FLUSH_START\n; always use highest temperature to flush\nM400\nM1002 set_filament_type:UNKNOWN\nM109 S[nozzle_temperature_range_high]\nM106 P1 S60\n{if flush_length_1 > 23.7}\nG1 E23.7 F{old_filament_e_feedrate} ; do not need pulsatile flushing for start part\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{old_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\n{else}\nG1 E{flush_length_1} F{old_filament_e_feedrate}\n{endif}\n; FLUSH_END\nG1 E-[old_retract_length_toolchange] F1800\nG1 E[old_retract_length_toolchange] F300\nM400\nM1002 set_filament_type:{filament_type[next_extruder]}\n{endif}\n\n{if flush_length_1 > 45 && flush_length_2 > 1}\n; WIPE\nM400\nM106 P1 S178\nM400 S3\nG1 X-38.2 F18000\nG1 X-48.2 F3000\nG1 X-38.2 F18000\nG1 X-48.2 F3000\nG1 X-38.2 F18000\nG1 X-48.2 F3000\nM400\nM106 P1 S0\n{endif}\n\n{if flush_length_2 > 1}\nM106 P1 S60\n; FLUSH_START\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_2 > 45 && flush_length_3 > 1}\n; WIPE\nM400\nM106 P1 S178\nM400 S3\nG1 X-38.2 F18000\nG1 X-48.2 F3000\nG1 X-38.2 F18000\nG1 X-48.2 F3000\nG1 X-38.2 F18000\nG1 X-48.2 F3000\nM400\nM106 P1 S0\n{endif}\n\n{if flush_length_3 > 1}\nM106 P1 S60\n; FLUSH_START\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_3 > 45 && flush_length_4 > 1}\n; WIPE\nM400\nM106 P1 S178\nM400 S3\nG1 X-38.2 F18000\nG1 X-48.2 F3000\nG1 X-38.2 F18000\nG1 X-48.2 F3000\nG1 X-38.2 F18000\nG1 X-48.2 F3000\nM400\nM106 P1 S0\n{endif}\n\n{if flush_length_4 > 1}\nM106 P1 S60\n; FLUSH_START\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\n; FLUSH_END\n{endif}\n\nM629\n\nM400\nM106 P1 S60\nM109 S[new_filament_temp]\nG1 E6 F{new_filament_e_feedrate} ;Compensate for filament spillage during waiting temperature\nM400\nG92 E0\nG1 E-[new_retract_length_toolchange] F1800\nM400\nM106 P1 S178\nM400 S3\nG1 X-38.2 F18000\nG1 X-48.2 F3000\nG1 X-38.2 F18000\nG1 X-48.2 F3000\nG1 X-38.2 F18000\nG1 X-48.2 F3000\nG1 X-38.2 F18000\nG1 X-48.2 F3000\nM400\nG1 Z{max_layer_z + 3.0} F3000\nM106 P1 S0\n{if layer_z <= (initial_layer_print_height + 0.001)}\nM204 S[initial_layer_acceleration]\n{else}\nM204 S[default_acceleration]\n{endif}\n{else}\nG1 X[x_after_toolchange] Y[y_after_toolchange] Z[z_after_toolchange] F12000\n{endif}\n\nM9833 F{outer_wall_volumetric_speed/2.4} A0.3 ; cali dynamic extrusion compensation\nM1002 judge_flag filament_need_cali_flag\nM622 J1\n M106 P1 S178\n M400 S4\n G1 X-38.2 F18000\n G1 X-48.2 F3000\n G1 X-38.2 F18000 ;wipe and shake\n G1 X-48.2 F3000\n G1 X-38.2 F12000 ;wipe and shake\n G1 X-48.2 F3000\n M400\n M106 P1 S0 \nM623\n\nM621 S[next_extruder]A\nG392 S0\n\nM1007 S1\n"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/machine/Bambu Lab A1 mini 0.4 nozzle.json b/resources/profiles/BBL/machine/Bambu Lab A1 mini 0.4 nozzle.json
index 8c69b32836..91e469d8e3 100644
--- a/resources/profiles/BBL/machine/Bambu Lab A1 mini 0.4 nozzle.json
+++ b/resources/profiles/BBL/machine/Bambu Lab A1 mini 0.4 nozzle.json
@@ -70,6 +70,6 @@
"machine_start_gcode": ";===== machine: A1 mini =========================\n;===== date: 20240204 =====================\n\n;===== start to heat heatbead&hotend==========\nM1002 gcode_claim_action : 2\nM1002 set_filament_type:{filament_type[initial_no_support_extruder]}\nM104 S170\nM140 S[bed_temperature_initial_layer_single]\nG392 S0 ;turn off clog detect\nM9833.2\n;=====start printer sound ===================\nM17\nM400 S1\nM1006 S1\nM1006 A0 B0 L100 C37 D10 M100 E37 F10 N100\nM1006 A0 B0 L100 C41 D10 M100 E41 F10 N100\nM1006 A0 B0 L100 C44 D10 M100 E44 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A43 B10 L100 C39 D10 M100 E46 F10 N100\nM1006 A0 B0 L100 C0 D10 M100 E0 F10 N100\nM1006 A0 B0 L100 C39 D10 M100 E43 F10 N100\nM1006 A0 B0 L100 C0 D10 M100 E0 F10 N100\nM1006 A0 B0 L100 C41 D10 M100 E41 F10 N100\nM1006 A0 B0 L100 C44 D10 M100 E44 F10 N100\nM1006 A0 B0 L100 C49 D10 M100 E49 F10 N100\nM1006 A0 B0 L100 C0 D10 M100 E0 F10 N100\nM1006 A44 B10 L100 C39 D10 M100 E48 F10 N100\nM1006 A0 B0 L100 C0 D10 M100 E0 F10 N100\nM1006 A0 B0 L100 C39 D10 M100 E44 F10 N100\nM1006 A0 B0 L100 C0 D10 M100 E0 F10 N100\nM1006 A43 B10 L100 C39 D10 M100 E46 F10 N100\nM1006 W\nM18\n;=====avoid end stop =================\nG91\nG380 S2 Z30 F1200\nG380 S3 Z-20 F1200\nG1 Z5 F1200\nG90\n\n;===== reset machine status =================\nM204 S6000\n\nM630 S0 P0\nG91\nM17 Z0.3 ; lower the z-motor current\n\nG90\nM17 X0.7 Y0.9 Z0.5 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM83\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\n;====== cog noise reduction=================\nM982.2 S1 ; turn on cog noise reduction\n\n;===== prepare print temperature and material ==========\nM400\nM18\nM109 S100 H170\nM104 S170\nM400\nM17\nM400\nG28 X\n\nM211 X0 Y0 Z0 ;turn off soft endstop ; turn off soft endstop to prevent protential logic problem\n\nM975 S1 ; turn on\n\nG1 X0.0 F30000\nG1 X-13.5 F3000\n\nM620 M ;enable remap\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n G392 S0 ;turn on clog detect\n M1002 gcode_claim_action : 4\n M400\n M1002 set_filament_type:UNKNOWN\n M109 S[nozzle_temperature_initial_layer]\n M104 S250\n M400\n T[initial_no_support_extruder]\n G1 X-13.5 F3000\n M400\n M620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n M109 S250 ;set nozzle to common flush temp\n M106 P1 S0\n G92 E0\n G1 E50 F200\n M400\n M1002 set_filament_type:{filament_type[initial_no_support_extruder]}\n M104 S{nozzle_temperature_range_high[initial_no_support_extruder]}\n G92 E0\n G1 E50 F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60}\n M400\n M106 P1 S178\n G92 E0\n G1 E5 F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60}\n M109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-40}\n G92 E0\n G1 E-0.5 F300\n\n G1 X0 F30000\n G1 X-13.5 F3000\n G1 X0 F30000 ;wipe and shake\n G1 X-13.5 F3000\n G1 X0 F12000 ;wipe and shake\n G1 X0 F30000\n G1 X-13.5 F3000\n M109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-40}\n G392 S0 ;turn off clog detect\nM621 S[initial_no_support_extruder]A\n\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== mech mode fast check============================\nM1002 gcode_claim_action : 3\nG0 X25 Y175 F20000 ; find a soft place to home\n;M104 S0\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nM104 S170\n\n; build plate detect\nM1002 judge_flag build_plate_detect_flag\nM622 S1\n G39.4\n M400\nM623\n\nG1 Z5 F3000\nG1 X90 Y-1 F30000\nM400 P200\nM970.3 Q1 A7 K0 O2\nM974 Q1 S2 P0\n\nG1 X90 Y0 Z5 F30000\nM400 P200\nM970 Q0 A10 B50 C90 H15 K0 M20 O3\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X-1 Y10\nG28 X ; re-home XY\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\n\nM104 S170 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\nM211 S; push soft endstop status\nM211 X0 Y0 Z0 ;turn off Z axis endstop\n\nM83\nG1 E-1 F500\nG90\nM83\n\nM109 S170\nM104 S140\nG0 X90 Y-4 F30000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X91 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X92 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X93 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X94 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X95 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X96 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X97 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X98 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X99 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X99 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X99 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X99 F10000\nG380 S3 Z-5 F1200\nG1 Z2 F1200\nG1 X99 F10000\nG380 S3 Z-5 F1200\n\nG1 Z5 F30000\n;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\nG1 X25 Y175 F30000.1 ;Brush material\nG1 Z0.2 F30000.1\nG1 Y185\nG91\nG1 X-30 F30000\nG1 Y-2\nG1 X27\nG1 Y1.5\nG1 X-28\nG1 Y-2\nG1 X30\nG1 Y1.5\nG1 X-30\nG90\nM83\n\nG1 Z5 F3000\nG0 X50 Y175 F20000 ; find a soft place to home\nG28 Z P0 T300; home z with low precision, permit 300deg temperature\nG29.2 S0 ; turn off ABL\n\nG0 X85 Y185 F10000 ;move to exposed steel surface and stop the nozzle\nG0 Z-1.01 F10000\nG91\n\nG2 I1 J0 X2 Y0 F2000.1\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\nG2 I1 J0 X2\nG2 I-0.75 J0 X-1.5\n\nG90\nG1 Z5 F30000\nG1 X25 Y175 F30000.1 ;Brush material\nG1 Z0.2 F30000.1\nG1 Y185\nG91\nG1 X-30 F30000\nG1 Y-2\nG1 X27\nG1 Y1.5\nG1 X-28\nG1 Y-2\nG1 X30\nG1 Y1.5\nG1 X-30\nG90\nM83\n\nG1 Z5\nG0 X55 Y175 F20000 ; find a soft place to home\nG28 Z P0 T300; home z with low precision, permit 300deg temperature\nG29.2 S0 ; turn off ABL\n\nG1 Z10\nG1 X85 Y185\nG1 Z-1.01\nG1 X95\nG1 X90\n\nM211 R; pop softend status\n\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n\n;===== wait heatbed ====================\nM1002 gcode_claim_action : 2\nM104 S0\nM190 S[bed_temperature_initial_layer_single];set bed temp\nM109 S140\n\nG1 Z5 F3000\nG29.2 S1\nG1 X10 Y10 F20000\n\n;===== bed leveling ==================================\n;M1002 set_flag g29_before_print_flag=1\nM1002 judge_flag g29_before_print_flag\nM622 J1\n M1002 gcode_claim_action : 1\n G29 A1 X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28 T145\n\nM623\n\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\n\nG1 X-13.5 Y0 Z10 F10000\nG1 E1.2 F500\nM400\nM1002 set_filament_type:UNKNOWN\nM109 S{nozzle_temperature[initial_extruder]}\nM400\n\nM412 S1 ; ===turn on filament runout detection===\nM400 P10\n\nG392 S0 ;turn on clog detect\n\nM620.3 W1; === turn on filament tangle detection===\nM400 S2\n\nM1002 set_filament_type:{filament_type[initial_no_support_extruder]}\n;M1002 set_flag extrude_cali_flag=1\nM1002 judge_flag extrude_cali_flag\nM622 J1\n M1002 gcode_claim_action : 8\n \n M400\n M900 K0.0 L1000.0 M1.0\n G90\n M83\n G0 X68 Y-4 F30000\n G0 Z0.3 F18000 ;Move to start position\n M400\n G0 X88 E10 F{outer_wall_volumetric_speed/(24/20) * 60}\n G0 X93 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G0 X98 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X103 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G0 X108 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X113 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\n G0 Y0 Z0 F20000\n M400\n \n G1 X-13.5 Y0 Z10 F10000\n M400\n \n G1 E10 F{outer_wall_volumetric_speed/2.4*60}\n M983 F{outer_wall_volumetric_speed/2.4} A0.3 H[nozzle_diameter]; cali dynamic extrusion compensation\n M106 P1 S178\n M400 S7\n G1 X0 F18000\n G1 X-13.5 F3000\n G1 X0 F18000 ;wipe and shake\n G1 X-13.5 F3000\n G1 X0 F12000 ;wipe and shake\n G1 X-13.5 F3000\n M400\n M106 P1 S0\n\n M1002 judge_last_extrude_cali_success\n M622 J0\n M983 F{outer_wall_volumetric_speed/2.4} A0.3 H[nozzle_diameter]; cali dynamic extrusion compensation\n M106 P1 S178\n M400 S7\n G1 X0 F18000\n G1 X-13.5 F3000\n G1 X0 F18000 ;wipe and shake\n G1 X-13.5 F3000\n G1 X0 F12000 ;wipe and shake\n M400\n M106 P1 S0\n M623\n \n G1 X-13.5 F3000\n M400\n M984 A0.1 E1 S1 F{outer_wall_volumetric_speed/2.4}\n M106 P1 S178\n M400 S7\n G1 X0 F18000\n G1 X-13.5 F3000\n G1 X0 F18000 ;wipe and shake\n G1 X-13.5 F3000\n G1 X0 F12000 ;wipe and shake\n G1 X-13.5 F3000\n M400\n M106 P1 S0\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\n;===== extrude cali test ===============================\nM104 S{nozzle_temperature_initial_layer[initial_extruder]}\nG90\nM83\nG0 X68 Y-2.5 F30000\nG0 Z0.3 F18000 ;Move to start position\nG0 X88 E10 F{outer_wall_volumetric_speed/(24/20) * 60}\nG0 X93 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\nG0 X98 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nG0 X103 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\nG0 X108 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nG0 X113 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}\nG0 X115 Z0 F20000\nG0 Z5\nM400\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\n\nM400 ; wait all motion done before implement the emprical L parameters\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.02} ; for Textured PEI Plate\n{endif}\n\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\n\nM211 X0 Y0 Z0 ;turn off soft endstop\nM1007 S1\n\n\n\n",
"machine_end_gcode": ";===== date: 20231229 =====================\n;turn off nozzle clog detect\nG392 S0\n\nM400 ; wait for buffer to clear\nG92 E0 ; zero the extruder\nG1 E-0.8 F1800 ; retract\nG1 Z{max_layer_z + 0.5} F900 ; lower z a little\nG1 X0 Y{first_layer_center_no_wipe_tower[1]} F18000 ; move to safe pos\nG1 X-13.0 F3000 ; move to safe pos\n{if !spiral_mode && print_sequence != \"by object\"}\nM1002 judge_flag timelapse_record_flag\nM622 J1\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM400 P100\nM971 S11 C11 O0\nM991 S0 P-1 ;end timelapse at safe pos\nM623\n{endif}\n\nM140 S0 ; turn off bed\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\n\n;G1 X27 F15000 ; wipe\n\n; pull back filament to AMS\nM620 S255\nG1 X181 F12000\nT255\nG1 X0 F18000\nG1 X-13.0 F3000\nG1 X0 F18000 ; wipe\nM621 S255\n\nM104 S0 ; turn off hotend\n\nM400 ; wait all motion done\nM17 S\nM17 Z0.4 ; lower z motor current to reduce impact if there is something in the bottom\n{if (max_layer_z + 100.0) < 180}\n G1 Z{max_layer_z + 100.0} F600\n G1 Z{max_layer_z +98.0}\n{else}\n G1 Z180 F600\n G1 Z180\n{endif}\nM400 P100\nM17 R ; restore z current\n\nG90\nG1 X-13 Y180 F3600\n\nG91\nG1 Z-1 F600\nG90\nM83\n\nM220 S100 ; Reset feedrate magnitude\nM201.2 K1.0 ; Reset acc magnitude\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 0\n\n;=====printer finish sound=========\nM17\nM400 S1\nM1006 S1\nM1006 A0 B20 L100 C37 D20 M100 E42 F20 N100\nM1006 A0 B10 L100 C44 D10 M100 E44 F10 N100\nM1006 A0 B10 L100 C46 D10 M100 E46 F10 N100\nM1006 A44 B20 L100 C39 D20 M100 E48 F20 N100\nM1006 A0 B10 L100 C44 D10 M100 E44 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A0 B10 L100 C39 D10 M100 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A0 B10 L100 C44 D10 M100 E44 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A0 B10 L100 C39 D10 M100 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A44 B10 L100 C0 D10 M100 E48 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A44 B20 L100 C41 D20 M100 E49 F20 N100\nM1006 A0 B20 L100 C0 D20 M100 E0 F20 N100\nM1006 A0 B20 L100 C37 D20 M100 E37 F20 N100\nM1006 W\n;=====printer finish sound=========\nM400 S1\nM18 X Y Z\n",
"layer_change_gcode": "; layer num/total_layer_count: {layer_num+1}/[total_layer_count]\n; update layer progress\nM73 L{layer_num+1}\nM991 S0 P{layer_num} ;notify layer change\n",
- "time_lapse_gcode": ";===================== date: 202312028 =====================\n{if !spiral_mode && print_sequence != \"by object\"}\n; don't support timelapse gcode in spiral_mode and by object sequence for I3 structure printer\nM622.1 S1 ; for prev firware, default turned on\nM1002 judge_flag timelapse_record_flag\nM622 J1\nG92 E0\nG17\nG2 Z{layer_z + 0.4} I0.86 J0.86 P1 F20000 ; spiral lift a little\nG1 Z{max_layer_z + 0.4}\nG1 X0 Y{first_layer_center_no_wipe_tower[1]} F18000 ; move to safe pos\nG1 X-13.0 F3000 ; move to safe pos\nM400 P300\nM971 S11 C11 O0\nG92 E0\nG1 X0 F18000\nM623\n\nM622.1 S1\nM1002 judge_flag g39_detection_flag\nM622 J1\n ; enable nozzle clog detect at 3rd layer\n {if layer_num == 2}\n M400\n G90\n M83\n M204 S5000\n G0 Z2 F4000\n G0 X-6 Y170 F20000\n G39 S1 X-6 Y170\n G0 Z2 F4000\n G0 X90 Y90 F30000\n {endif}\n\n\n {if !in_head_wrap_detect_zone}\n M622.1 S0\n M1002 judge_flag g39_mass_exceed_flag\n M622 J1\n {if layer_num > 2}\n G392 S0\n M400\n G90\n M83\n M204 S5000\n G0 Z{max_layer_z + 0.4} F4000\n G39.3 S1\n G0 Z{max_layer_z + 0.4} F4000\n G392 S0\n {endif}\n M623\n {endif}\nM623\n{endif}\n",
- "change_filament_gcode": ";===== machine: A1 mini =========================\n;===== date: 20231225 =======================\nG392 S0\nM1007 S0\nM620 S[next_extruder]A\nM204 S9000\n{if toolchange_count > 1}\nG17\nG2 Z{max_layer_z + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\n{endif}\nG1 Z{max_layer_z + 3.0} F1200\n\nM400\nM106 P1 S0\nM106 P2 S0\n{if old_filament_temp > 142 && next_extruder < 255}\nM104 S[old_filament_temp]\n{endif}\n\nG1 X180 F18000\nM620.1 E F[old_filament_e_feedrate] T{nozzle_temperature_range_high[previous_extruder]}\nM620.10 A0 F[old_filament_e_feedrate]\nT[next_extruder]\nM620.1 E F[new_filament_e_feedrate] T{nozzle_temperature_range_high[next_extruder]}\nM620.10 A1 F[new_filament_e_feedrate] L[flush_length] H[nozzle_diameter] T[nozzle_temperature_range_high]\n\nG1 Y90 F9000\n\n{if next_extruder < 255}\nM400\n\nG92 E0\nM628 S0\n\n{if flush_length_1 > 1}\n; FLUSH_START\n; always use highest temperature to flush\nM400\nM1002 set_filament_type:UNKNOWN\nM109 S[nozzle_temperature_range_high]\nM106 P1 S60\n{if flush_length_1 > 23.7}\nG1 E23.7 F{old_filament_e_feedrate} ; do not need pulsatile flushing for start part\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{old_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\n{else}\nG1 E{flush_length_1} F{old_filament_e_feedrate}\n{endif}\n; FLUSH_END\nG1 E-[old_retract_length_toolchange] F1800\nG1 E[old_retract_length_toolchange] F300\nM400\nM1002 set_filament_type:{filament_type[next_extruder]}\n{endif}\n\n{if flush_length_1 > 45 && flush_length_2 > 1}\n; WIPE\nM400\nM106 P1 S178\nM400 S3\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nM400\nM106 P1 S0\n{endif}\n\n{if flush_length_2 > 1}\nM106 P1 S60\n; FLUSH_START\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_2 > 45 && flush_length_3 > 1}\n; WIPE\nM400\nM106 P1 S178\nM400 S3\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nM400\nM106 P1 S0\n{endif}\n\n{if flush_length_3 > 1}\nM106 P1 S60\n; FLUSH_START\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_3 > 45 && flush_length_4 > 1}\n; WIPE\nM400\nM106 P1 S178\nM400 S3\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nM400\nM106 P1 S0\n{endif}\n\n{if flush_length_4 > 1}\nM106 P1 S60\n; FLUSH_START\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\n; FLUSH_END\n{endif}\n\nM629\n\nM400\nM106 P1 S60\nM109 S[new_filament_temp]\nG1 E5 F{new_filament_e_feedrate} ;Compensate for filament spillage during waiting temperature\nM400\nG92 E0\nG1 E-[new_retract_length_toolchange] F1800\nM400\nM106 P1 S178\nM400 S3\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nM400\nG1 Z{max_layer_z + 3.0} F3000\nM106 P1 S0\n{if layer_z <= (initial_layer_print_height + 0.001)}\nM204 S[initial_layer_acceleration]\n{else}\nM204 S[default_acceleration]\n{endif}\n{else}\nG1 X[x_after_toolchange] Y[y_after_toolchange] Z[z_after_toolchange] F12000\n{endif}\nM621 S[next_extruder]A\n\nM9833 F{outer_wall_volumetric_speed/2.4} A0.3 ; cali dynamic extrusion compensation\nM1002 judge_flag filament_need_cali_flag\nM622 J1\n M106 P1 S178\n M400 S7\n G1 X0 F18000\n G1 X-13.5 F3000\n G1 X0 F18000 ;wipe and shake\n G1 X-13.5 F3000\n G1 X0 F12000 ;wipe and shake\n G1 X-13.5 F3000\n M400\n M106 P1 S0 \nM623\n\nG392 S0\nM1007 S1\n\n"
+ "time_lapse_gcode": ";===================== date: 20240606 =====================\n{if !spiral_mode && print_sequence != \"by object\"}\n; don't support timelapse gcode in spiral_mode and by object sequence for I3 structure printer\nM622.1 S1 ; for prev firware, default turned on\nM1002 judge_flag timelapse_record_flag\nM622 J1\nG92 E0\nG17\nG2 Z{layer_z + 0.4} I0.86 J0.86 P1 F20000 ; spiral lift a little\nG1 Z{max_layer_z + 0.4}\nG1 X0 Y{first_layer_center_no_wipe_tower[1]} F18000 ; move to safe pos\nG1 X-13.0 F3000 ; move to safe pos\nM400 P300\nM971 S11 C11 O0\nG92 E0\nG1 X0 F18000\nM623\n\nM622.1 S1\nM1002 judge_flag g39_3rd_layer_detect_flag\nM622 J1\n ; enable nozzle clog detect at 3rd layer\n {if layer_num == 2}\n M400\n G90\n M83\n M204 S5000\n G0 Z2 F4000\n G0 X187 Y178 F20000\n G39 S1 X187 Y178\n G0 Z2 F4000\n {endif}\n\n\n M622.1 S1\n M1002 judge_flag g39_detection_flag\n M622 J1\n {if !in_head_wrap_detect_zone}\n M622.1 S0\n M1002 judge_flag g39_mass_exceed_flag\n M622 J1\n {if layer_num > 2}\n G392 S0\n M400\n G90\n M83\n M204 S5000\n G0 Z{max_layer_z + 0.4} F4000\n G39.3 S1\n G0 Z{max_layer_z + 0.4} F4000\n G392 S0\n {endif}\n M623\n {endif}\n M623\nM623\n{endif}\n\n\n",
+ "change_filament_gcode": ";===== machine: A1 mini =========================\n;===== date: 20240618 =======================\nG392 S0\nM1007 S0\nM620 S[next_extruder]A\nM204 S9000\n{if toolchange_count > 1}\nG17\nG2 Z{max_layer_z + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\n{endif}\nG1 Z{max_layer_z + 3.0} F1200\n\nM400\nM106 P1 S0\nM106 P2 S0\n{if old_filament_temp > 142 && next_extruder < 255}\nM104 S[old_filament_temp]\n{endif}\n\nG1 X180 F18000\nM620.1 E F[old_filament_e_feedrate] T{nozzle_temperature_range_high[previous_extruder]}\nM620.10 A0 F[old_filament_e_feedrate]\nT[next_extruder]\nM620.1 E F[new_filament_e_feedrate] T{nozzle_temperature_range_high[next_extruder]}\nM620.10 A1 F[new_filament_e_feedrate] L[flush_length] H[nozzle_diameter] T[nozzle_temperature_range_high]\n\nG1 Y90 F9000\n\n{if next_extruder < 255}\nM400\n\nG92 E0\nM628 S0\n\n{if flush_length_1 > 1}\n; FLUSH_START\n; always use highest temperature to flush\nM400\nM1002 set_filament_type:UNKNOWN\nM109 S[nozzle_temperature_range_high]\nM106 P1 S60\n{if flush_length_1 > 23.7}\nG1 E23.7 F{old_filament_e_feedrate} ; do not need pulsatile flushing for start part\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{old_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\n{else}\nG1 E{flush_length_1} F{old_filament_e_feedrate}\n{endif}\n; FLUSH_END\nG1 E-[old_retract_length_toolchange] F1800\nG1 E[old_retract_length_toolchange] F300\nM400\nM1002 set_filament_type:{filament_type[next_extruder]}\n{endif}\n\n{if flush_length_1 > 45 && flush_length_2 > 1}\n; WIPE\nM400\nM106 P1 S178\nM400 S3\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nM400\nM106 P1 S0\n{endif}\n\n{if flush_length_2 > 1}\nM106 P1 S60\n; FLUSH_START\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_2 > 45 && flush_length_3 > 1}\n; WIPE\nM400\nM106 P1 S178\nM400 S3\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nM400\nM106 P1 S0\n{endif}\n\n{if flush_length_3 > 1}\nM106 P1 S60\n; FLUSH_START\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_3 > 45 && flush_length_4 > 1}\n; WIPE\nM400\nM106 P1 S178\nM400 S3\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nM400\nM106 P1 S0\n{endif}\n\n{if flush_length_4 > 1}\nM106 P1 S60\n; FLUSH_START\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\n; FLUSH_END\n{endif}\n\nM629\n\nM400\nM106 P1 S60\nM109 S[new_filament_temp]\nG1 E5 F{new_filament_e_feedrate} ;Compensate for filament spillage during waiting temperature\nM400\nG92 E0\nG1 E-[new_retract_length_toolchange] F1800\nM400\nM106 P1 S178\nM400 S3\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nG1 X-3.5 F18000\nG1 X-13.5 F3000\nM400\nG1 Z{max_layer_z + 3.0} F3000\nM106 P1 S0\n{if layer_z <= (initial_layer_print_height + 0.001)}\nM204 S[initial_layer_acceleration]\n{else}\nM204 S[default_acceleration]\n{endif}\n{else}\nG1 X[x_after_toolchange] Y[y_after_toolchange] Z[z_after_toolchange] F12000\n{endif}\nM621 S[next_extruder]A\n\n\nM622.1 S0\n\nM9833 F{outer_wall_volumetric_speed/2.4} A0.3 ; cali dynamic extrusion compensation\nM1002 judge_flag filament_need_cali_flag\nM622 J1\n M106 P1 S178\n M400 S7\n G1 X0 F18000\n G1 X-13.5 F3000\n G1 X0 F18000 ;wipe and shake\n G1 X-13.5 F3000\n G1 X0 F12000 ;wipe and shake\n G1 X-13.5 F3000\n G1 X0 F12000 ;wipe and shake\n M400\n M106 P1 S0 \nM623\n\nG392 S0\nM1007 S1\n\n"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/machine/Bambu Lab X1 0.2 nozzle.json b/resources/profiles/BBL/machine/Bambu Lab X1 0.2 nozzle.json
index 782ec98d50..9c1127eec4 100644
--- a/resources/profiles/BBL/machine/Bambu Lab X1 0.2 nozzle.json
+++ b/resources/profiles/BBL/machine/Bambu Lab X1 0.2 nozzle.json
@@ -30,5 +30,5 @@
"Bambu Lab X1E 0.2 nozzle",
"Bambu Lab A1 0.2 nozzle"
],
- "machine_start_gcode": ";===== machine: X1 =========================\n;===== date: 20230707 =====================\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{+0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {elsif (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y1.0 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X240 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nG0 Y11 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\nG0 X239.5\nG0 E0.2\nG0 Y1.5 E0.700\nG0 X231 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n T1000\n\n G0 F1200.0 X231 Y15 Z0.2 E0.741\n G0 F1200.0 X226 Y15 Z0.2 E0.275\n G0 F1200.0 X226 Y8 Z0.2 E0.384\n G0 F1200.0 X216 Y8 Z0.2 E0.549\n G0 F1200.0 X216 Y1.5 Z0.2 E0.357\n\n G0 X48.0 E12.0 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E0.92 F1200.0\n G0 X35.0 Y6.0 E1.03 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n\t{if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X185.000 E9.35441 F4800\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.160\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.080\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X18 E14.3 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.080 K0.160\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.08 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*0.08}\n M623\n\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X185.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X190.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X195.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X200.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X205.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X210.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X215.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X220.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X225.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4"
+ "machine_start_gcode": ";===== machine: X1 ====================\n;===== date: 20240528 ==================\n;===== start printer sound ================\nM17\nM400 S1\nM1006 S1\nM1006 A0 B10 L100 C37 D10 M60 E37 F10 N60\nM1006 A0 B10 L100 C41 D10 M60 E41 F10 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A46 B10 L100 C43 D10 M70 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A43 B10 L100 C0 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A41 B10 L100 C0 D10 M100 E41 F10 N100\nM1006 A44 B10 L100 C0 D10 M100 E44 F10 N100\nM1006 A49 B10 L100 C0 D10 M100 E49 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A48 B10 L100 C44 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A44 B10 L100 C0 D10 M90 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A46 B10 L100 C43 D10 M60 E39 F10 N100\nM1006 W\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nM290 X40 Y40 Z2.6666666\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{+0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y1.0 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X240 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nG0 Y11 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\nG0 X239.5\nG0 E0.2\nG0 Y1.5 E0.700\nG0 X231 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n T1000\n\n G0 F1200.0 X231 Y15 Z0.2 E0.741\n G0 F1200.0 X226 Y15 Z0.2 E0.275\n G0 F1200.0 X226 Y8 Z0.2 E0.384\n G0 F1200.0 X216 Y8 Z0.2 E0.549\n G0 F1200.0 X216 Y1.5 Z0.2 E0.357\n\n G0 X48.0 E12.0 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E0.92 F1200.0\n G0 X35.0 Y6.0 E1.03 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n\t{if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X185.000 E9.35441 F4800\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.160\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.080\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X18 E14.3 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.080 K0.160\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.08 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*0.08}\n M623\n\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X185.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X190.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X195.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X200.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X205.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X210.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X215.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X220.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X225.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4\n"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/machine/Bambu Lab X1 0.4 nozzle.json b/resources/profiles/BBL/machine/Bambu Lab X1 0.4 nozzle.json
index adf2a3bc7f..9d9f5eac38 100644
--- a/resources/profiles/BBL/machine/Bambu Lab X1 0.4 nozzle.json
+++ b/resources/profiles/BBL/machine/Bambu Lab X1 0.4 nozzle.json
@@ -37,7 +37,7 @@
"Bambu Lab X1E 0.4 nozzle",
"Bambu Lab A1 0.4 nozzle"
],
- "machine_start_gcode": ";===== machine: X1 =========================\n;===== date: 20230707 =====================\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{+0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {elsif (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y1.0 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X240 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nG0 Y11 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\nG0 X239.5\nG0 E0.2\nG0 Y1.5 E0.700\nG0 X231 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n T1000\n\n G0 F1200.0 X231 Y15 Z0.2 E0.741\n G0 F1200.0 X226 Y15 Z0.2 E0.275\n G0 F1200.0 X226 Y8 Z0.2 E0.384\n G0 F1200.0 X216 Y8 Z0.2 E0.549\n G0 F1200.0 X216 Y1.5 Z0.2 E0.357\n\n G0 X48.0 E12.0 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E0.92 F1200.0\n G0 X35.0 Y6.0 E1.03 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n {if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X185.000 E9.35441 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.040\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.020\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X18 E14.3 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.020 K0.040\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.02 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*0.02}\n M623\n\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X185.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X190.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X195.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X200.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X205.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X210.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X215.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X220.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X225.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4",
- "machine_end_gcode": ";===== date: 20240402 =====================\nM400 ; wait for buffer to clear\nG92 E0 ; zero the extruder\nG1 E-0.8 F1800 ; retract\nG1 Z{max_layer_z + 0.5} F900 ; lower z a little\nG1 X65 Y245 F12000 ; move to safe pos \nG1 Y265 F3000\n\nG1 X65 Y245 F12000\nG1 Y265 F3000\nM140 S0 ; turn off bed\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\n\nG1 X100 F12000 ; wipe\n; pull back filament to AMS\nM620 S255\nG1 X20 Y50 F12000\nG1 Y-3\nT255\nG1 X65 F12000\nG1 Y265\nG1 X100 F12000 ; wipe\nM621 S255\nM104 S0 ; turn off hotend\n\nM622.1 S1 ; for prev firware, default turned on\nM1002 judge_flag timelapse_record_flag\nM622 J1\n M400 ; wait all motion done\n M991 S0 P-1 ;end smooth timelapse at safe pos\n M400 S3 ;wait for last picture to be taken\nM623; end of \"timelapse_record_flag\"\n\nM400 ; wait all motion done\nM17 S\nM17 Z0.4 ; lower z motor current to reduce impact if there is something in the bottom\n{if (max_layer_z + 100.0) < 250}\n G1 Z{max_layer_z + 100.0} F600\n G1 Z{max_layer_z +98.0}\n{else}\n G1 Z250 F600\n G1 Z248\n{endif}\nM400 P100\nM17 R ; restore z current\n\nM220 S100 ; Reset feedrate magnitude\nM201.2 K1.0 ; Reset acc magnitude\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 0\n\nM17 X0.8 Y0.8 Z0.5 ; lower motor current to 45% power\nM960 S5 P0 ; turn off logo lamp\n\n",
+ "machine_start_gcode": ";===== machine: X1 ====================\n;===== date: 20240528 ==================\n;===== start printer sound ================\nM17\nM400 S1\nM1006 S1\nM1006 A0 B10 L100 C37 D10 M60 E37 F10 N60\nM1006 A0 B10 L100 C41 D10 M60 E41 F10 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A46 B10 L100 C43 D10 M70 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A43 B10 L100 C0 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A41 B10 L100 C0 D10 M100 E41 F10 N100\nM1006 A44 B10 L100 C0 D10 M100 E44 F10 N100\nM1006 A49 B10 L100 C0 D10 M100 E49 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A48 B10 L100 C44 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A44 B10 L100 C0 D10 M90 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A46 B10 L100 C43 D10 M60 E39 F10 N100\nM1006 W\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nM290 X40 Y40 Z2.6666666\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{+0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y1.0 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X240 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nG0 Y11 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\nG0 X239.5\nG0 E0.2\nG0 Y1.5 E0.700\nG0 X231 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n T1000\n\n G0 F1200.0 X231 Y15 Z0.2 E0.741\n G0 F1200.0 X226 Y15 Z0.2 E0.275\n G0 F1200.0 X226 Y8 Z0.2 E0.384\n G0 F1200.0 X216 Y8 Z0.2 E0.549\n G0 F1200.0 X216 Y1.5 Z0.2 E0.357\n\n G0 X48.0 E12.0 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E0.92 F1200.0\n G0 X35.0 Y6.0 E1.03 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n {if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X185.000 E9.35441 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.040\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.020\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X18 E14.3 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.020 K0.040\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.02 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*0.02}\n M623\n\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X185.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X190.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X195.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X200.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X205.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X210.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X215.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X220.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X225.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4\n",
+ "machine_end_gcode": ";===== date: 20240528 =====================\nM400 ; wait for buffer to clear\nG92 E0 ; zero the extruder\nG1 E-0.8 F1800 ; retract\nG1 Z{max_layer_z + 0.5} F900 ; lower z a little\nG1 X65 Y245 F12000 ; move to safe pos\nG1 Y265 F3000\n\nG1 X65 Y245 F12000\nG1 Y265 F3000\nM140 S0 ; turn off bed\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\n\nG1 X100 F12000 ; wipe\n; pull back filament to AMS\nM620 S255\nG1 X20 Y50 F12000\nG1 Y-3\nT255\nG1 X65 F12000\nG1 Y265\nG1 X100 F12000 ; wipe\nM621 S255\nM104 S0 ; turn off hotend\n\nM622.1 S1 ; for prev firware, default turned on\nM1002 judge_flag timelapse_record_flag\nM622 J1\n M400 ; wait all motion done\n M991 S0 P-1 ;end smooth timelapse at safe pos\n M400 S3 ;wait for last picture to be taken\nM623; end of \"timelapse_record_flag\"\n\nM400 ; wait all motion done\nM17 S\nM17 Z0.4 ; lower z motor current to reduce impact if there is something in the bottom\n{if (max_layer_z + 100.0) < 250}\n G1 Z{max_layer_z + 100.0} F600\n G1 Z{max_layer_z +98.0}\n{else}\n G1 Z250 F600\n G1 Z248\n{endif}\nM400 P100\nM17 R ; restore z current\n\nM220 S100 ; Reset feedrate magnitude\nM201.2 K1.0 ; Reset acc magnitude\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 0\n;=====printer finish sound=========\nM17\nM400 S1\nM1006 S1\nM1006 A0 B20 L100 C37 D20 M40 E42 F20 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C46 D10 M80 E46 F10 N80\nM1006 A44 B20 L100 C39 D20 M60 E48 F20 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A0 B10 L100 C39 D10 M60 E39 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A0 B10 L100 C39 D10 M60 E39 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A0 B10 L100 C48 D10 M60 E44 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A49 B20 L100 C44 D20 M100 E41 F20 N100\nM1006 A0 B20 L100 C0 D20 M60 E0 F20 N100\nM1006 A0 B20 L100 C37 D20 M30 E37 F20 N60\nM1006 W\n\nM17 X0.8 Y0.8 Z0.5 ; lower motor current to 45% power\nM960 S5 P0 ; turn off logo lamp\n",
"change_filament_gcode": "M620 S[next_extruder]A\nM204 S9000\n{if toolchange_count > 1 && (z_hop_types[current_extruder] == 0 || z_hop_types[current_extruder] == 3)}\nG17\nG2 Z{z_after_toolchange + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\n{endif}\nG1 Z{max_layer_z + 3.0} F1200\n\nG1 X70 F21000\nG1 Y245\nG1 Y265 F3000\nM400\nM106 P1 S0\nM106 P2 S0\n{if old_filament_temp > 142 && next_extruder < 255}\nM104 S[old_filament_temp]\n{endif}\n{if long_retractions_when_cut[previous_extruder]}\nM620.11 S1 I[previous_extruder] E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{else}\nM620.11 S0\n{endif}\nM400\nG1 X90 F3000\nG1 Y255 F4000\nG1 X100 F5000\nG1 X120 F15000\nG1 X20 Y50 F21000\nG1 Y-3\n{if toolchange_count == 2}\n; get travel path for change filament\nM620.1 X[travel_point_1_x] Y[travel_point_1_y] F21000 P0\nM620.1 X[travel_point_2_x] Y[travel_point_2_y] F21000 P1\nM620.1 X[travel_point_3_x] Y[travel_point_3_y] F21000 P2\n{endif}\nM620.1 E F[old_filament_e_feedrate] T{nozzle_temperature_range_high[previous_extruder]}\nT[next_extruder]\nM620.1 E F[new_filament_e_feedrate] T{nozzle_temperature_range_high[next_extruder]}\n\n{if next_extruder < 255}\n{if long_retractions_when_cut[previous_extruder]}\nM620.11 S1 I[previous_extruder] E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\nM628 S1\nG92 E0\nG1 E{retraction_distances_when_cut[previous_extruder]} F[old_filament_e_feedrate]\nM400\nM629 S1\n{else}\nM620.11 S0\n{endif}\nG92 E0\n{if flush_length_1 > 1}\nM83\n; FLUSH_START\n; always use highest temperature to flush\nM400\n{if filament_type[next_extruder] == \"PETG\"}\nM109 S260\n{elsif filament_type[next_extruder] == \"PVA\"}\nM109 S210\n{else}\nM109 S[nozzle_temperature_range_high]\n{endif}\n{if flush_length_1 > 23.7}\nG1 E23.7 F{old_filament_e_feedrate} ; do not need pulsatile flushing for start part\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{old_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\n{else}\nG1 E{flush_length_1} F{old_filament_e_feedrate}\n{endif}\n; FLUSH_END\nG1 E-[old_retract_length_toolchange] F1800\nG1 E[old_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_2 > 1}\n\nG91\nG1 X3 F12000; move aside to extrude\nG90\nM83\n\n; FLUSH_START\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_3 > 1}\n\nG91\nG1 X3 F12000; move aside to extrude\nG90\nM83\n\n; FLUSH_START\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_4 > 1}\n\nG91\nG1 X3 F12000; move aside to extrude\nG90\nM83\n\n; FLUSH_START\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\n; FLUSH_END\n{endif}\n; FLUSH_START\nM400\nM109 S[new_filament_temp]\nG1 E2 F{new_filament_e_feedrate} ;Compensate for filament spillage during waiting temperature\n; FLUSH_END\nM400\nG92 E0\nG1 E-[new_retract_length_toolchange] F1800\nM106 P1 S255\nM400 S3\n\nG1 X70 F5000\nG1 X90 F3000\nG1 Y255 F4000\nG1 X105 F5000\nG1 Y265 F5000\nG1 X70 F10000\nG1 X100 F5000\nG1 X70 F10000\nG1 X100 F5000\n\nG1 X70 F10000\nG1 X80 F15000\nG1 X60\nG1 X80\nG1 X60\nG1 X80 ; shake to put down garbage\nG1 X100 F5000\nG1 X165 F15000; wipe and shake\nG1 Y256 ; move Y to aside, prevent collision\nM400\nG1 Z{max_layer_z + 3.0} F3000\n{if layer_z <= (initial_layer_print_height + 0.001)}\nM204 S[initial_layer_acceleration]\n{else}\nM204 S[default_acceleration]\n{endif}\n{else}\nG1 X[x_after_toolchange] Y[y_after_toolchange] Z[z_after_toolchange] F12000\n{endif}\nM621 S[next_extruder]A\n"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/machine/Bambu Lab X1 0.6 nozzle.json b/resources/profiles/BBL/machine/Bambu Lab X1 0.6 nozzle.json
index 732e99f8a0..ec5a3b1ea9 100644
--- a/resources/profiles/BBL/machine/Bambu Lab X1 0.6 nozzle.json
+++ b/resources/profiles/BBL/machine/Bambu Lab X1 0.6 nozzle.json
@@ -34,5 +34,5 @@
"Bambu Lab X1E 0.6 nozzle",
"Bambu Lab A1 0.6 nozzle"
],
- "machine_start_gcode": ";===== machine: X1 =========================\n;===== date: 20230707 =====================\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {elsif (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y0.5 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X129 E15 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\nG0 X240 E15\nG0 Y11 E1.364 F{outer_wall_volumetric_speed/(0.3*1.0)/ 4 * 60}\nG0 X239.5\nG0 E0.3\nG0 Y1.5 E1.300\nG0 X231 E1.160 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n G0 F1200.0 X231 Y15 Z0.2 E1.482\n G0 F1200.0 X226 Y15 Z0.2 E0.550\n G0 F1200.0 X226 Y8 Z0.2 E0.768\n G0 F1200.0 X216 Y8 Z0.2 E1.098\n G0 F1200.0 X216 Y1.5 Z0.2 E0.714\n\n G0 X48.0 E25.0 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E1.70 F1200.0\n G0 X35.0 Y6.0 E1.90 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n {if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X110.000 E9.35441 F4800\n G0 X185.000 E9.35441 F4800\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.020\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.010\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X129 E14 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G0 X18 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.010 K0.020\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.01 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14) *0.01}\n M623\n\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X185.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X190.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X195.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X200.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X205.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X210.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X215.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X220.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X225.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4"
+ "machine_start_gcode": ";===== machine: X1 =========================\n;===== date: 20240528 =====================\n;===== start printer sound ================\nM17\nM400 S1\nM1006 S1\nM1006 A0 B10 L100 C37 D10 M60 E37 F10 N60\nM1006 A0 B10 L100 C41 D10 M60 E41 F10 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A46 B10 L100 C43 D10 M70 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A43 B10 L100 C0 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A41 B10 L100 C0 D10 M100 E41 F10 N100\nM1006 A44 B10 L100 C0 D10 M100 E44 F10 N100\nM1006 A49 B10 L100 C0 D10 M100 E49 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A48 B10 L100 C44 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A44 B10 L100 C0 D10 M90 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A46 B10 L100 C43 D10 M60 E39 F10 N100\nM1006 W\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nM290 X40 Y40 Z2.6666666\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{+0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y1.0 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X240 E25 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nG0 Y15 E1.166 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\nG0 X239.5\nG0 E0.2\nG0 Y1.5 E1.166\nG0 X231 E1.166 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n G0 F1200.0 X231 Y15 Z0.2 E1.333\n G0 F1200.0 X226 Y15 Z0.2 E0.495\n G0 F1200.0 X226 Y8 Z0.2 E0.691\n G0 F1200.0 X216 Y8 Z0.2 E0.988\n G0 F1200.0 X216 Y1.5 Z0.2 E0.642\n\n G0 X48.0 E20.56 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E1.56 F1200.0\n G0 X35.0 Y6.0 E1.75 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n {if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X185.000 E16.9 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.030\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.25000 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X70.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X75.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X80.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X85.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X90.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X95.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X100.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X105.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X110.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X115.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X120.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X125.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X130.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X135.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X140.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X145.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X150.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X155.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X160.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X165.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X170.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X175.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X180.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.015\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.25000 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X70.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X75.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X80.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X85.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X90.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X95.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X100.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X105.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X110.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X115.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X120.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X125.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X130.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X135.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X140.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X145.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X150.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X155.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X160.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X165.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X170.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X175.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X180.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.25000 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X70.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X75.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X80.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X85.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X90.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X95.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X100.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X105.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X110.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X115.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X120.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X125.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X130.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X135.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X140.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X145.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X150.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X155.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X160.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X165.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X170.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X175.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X180.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X18 E23.9 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.015 K0.030\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E2.25000 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.015 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*0.015}\n M623\n\n G1 X140.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X185.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X190.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X195.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X200.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X205.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X210.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X215.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X220.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X225.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4\n"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/machine/Bambu Lab X1 0.8 nozzle.json b/resources/profiles/BBL/machine/Bambu Lab X1 0.8 nozzle.json
index c9f7e6908e..fd1aa6bf82 100644
--- a/resources/profiles/BBL/machine/Bambu Lab X1 0.8 nozzle.json
+++ b/resources/profiles/BBL/machine/Bambu Lab X1 0.8 nozzle.json
@@ -34,5 +34,5 @@
"Bambu Lab X1E 0.8 nozzle",
"Bambu Lab A1 0.8 nozzle"
],
- "machine_start_gcode": ";===== machine: X1 =========================\n;===== date: 20230707 =====================\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {elsif (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y0.5 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X129 E15 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\nG0 X240 E15\nG0 Y11 E1.364 F{outer_wall_volumetric_speed/(0.3*1.0)/ 4 * 60}\nG0 X239.5\nG0 E0.3\nG0 Y1.5 E1.300\nG0 X231 E1.160 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n G0 F1200.0 X231 Y15 Z0.2 E1.482\n G0 F1200.0 X226 Y15 Z0.2 E0.550\n G0 F1200.0 X226 Y8 Z0.2 E0.768\n G0 F1200.0 X216 Y8 Z0.2 E1.098\n G0 F1200.0 X216 Y1.5 Z0.2 E0.714\n\n G0 X48.0 E25.0 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E1.70 F1200.0\n G0 X35.0 Y6.0 E1.90 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n {if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X110.000 E9.35441 F4800\n G0 X185.000 E9.35441 F4800\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.020\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.010\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X129 E14 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G0 X18 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.010 K0.020\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.01 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14) *0.01}\n M623\n\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X185.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X190.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X195.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X200.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X205.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X210.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X215.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X220.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X225.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4"
+ "machine_start_gcode": ";===== machine: X1 ====================\n;===== date: 20240528 ==================\n;===== start printer sound ================\nM17\nM400 S1\nM1006 S1\nM1006 A0 B10 L100 C37 D10 M60 E37 F10 N60\nM1006 A0 B10 L100 C41 D10 M60 E41 F10 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A46 B10 L100 C43 D10 M70 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A43 B10 L100 C0 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A41 B10 L100 C0 D10 M100 E41 F10 N100\nM1006 A44 B10 L100 C0 D10 M100 E44 F10 N100\nM1006 A49 B10 L100 C0 D10 M100 E49 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A48 B10 L100 C44 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A44 B10 L100 C0 D10 M90 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A46 B10 L100 C43 D10 M60 E39 F10 N100\nM1006 W\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nM290 X40 Y40 Z2.6666666\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y0.5 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X129 E15 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\nG0 X240 E15\nG0 Y11 E1.364 F{outer_wall_volumetric_speed/(0.3*1.0)/ 4 * 60}\nG0 X239.5\nG0 E0.3\nG0 Y1.5 E1.300\nG0 X231 E1.160 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n G0 F1200.0 X231 Y15 Z0.2 E1.482\n G0 F1200.0 X226 Y15 Z0.2 E0.550\n G0 F1200.0 X226 Y8 Z0.2 E0.768\n G0 F1200.0 X216 Y8 Z0.2 E1.098\n G0 F1200.0 X216 Y1.5 Z0.2 E0.714\n\n G0 X48.0 E25.0 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E1.70 F1200.0\n G0 X35.0 Y6.0 E1.90 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n {if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X110.000 E9.35441 F4800\n G0 X185.000 E9.35441 F4800\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.020\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.010\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X129 E14 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G0 X18 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.010 K0.020\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.01 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14) *0.01}\n M623\n\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X185.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X190.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X195.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X200.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X205.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X210.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X215.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X220.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X225.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4\n"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.2 nozzle.json b/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.2 nozzle.json
index 0a55296780..a0b54160a5 100644
--- a/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.2 nozzle.json
+++ b/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.2 nozzle.json
@@ -31,5 +31,5 @@
"Bambu Lab X1E 0.2 nozzle",
"Bambu Lab A1 0.2 nozzle"
],
- "machine_start_gcode": ";===== machine: X1 =========================\n;===== date: 20230824 =====================\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nM290 X40 Y40 Z2.6666666\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{+0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {elsif (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y1.0 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X240 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nG0 Y11 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\nG0 X239.5\nG0 E0.2\nG0 Y1.5 E0.700\nG0 X231 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n T1000\n\n G0 F1200.0 X231 Y15 Z0.2 E0.741\n G0 F1200.0 X226 Y15 Z0.2 E0.275\n G0 F1200.0 X226 Y8 Z0.2 E0.384\n G0 F1200.0 X216 Y8 Z0.2 E0.549\n G0 F1200.0 X216 Y1.5 Z0.2 E0.357\n\n G0 X48.0 E12.0 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E0.92 F1200.0\n G0 X35.0 Y6.0 E1.03 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n\t{if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X185.000 E9.35441 F4800\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.160\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.080\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X18 E14.3 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.080 K0.160\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.08 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*0.08}\n M623\n\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X185.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X190.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X195.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X200.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X205.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X210.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X215.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X220.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X225.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4"
+ "machine_start_gcode": ";===== machine: X1 ====================\n;===== date: 20240528 ==================\n;===== start printer sound ================\nM17\nM400 S1\nM1006 S1\nM1006 A0 B10 L100 C37 D10 M60 E37 F10 N60\nM1006 A0 B10 L100 C41 D10 M60 E41 F10 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A46 B10 L100 C43 D10 M70 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A43 B10 L100 C0 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A41 B10 L100 C0 D10 M100 E41 F10 N100\nM1006 A44 B10 L100 C0 D10 M100 E44 F10 N100\nM1006 A49 B10 L100 C0 D10 M100 E49 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A48 B10 L100 C44 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A44 B10 L100 C0 D10 M90 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A46 B10 L100 C43 D10 M60 E39 F10 N100\nM1006 W\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nM290 X40 Y40 Z2.6666666\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{+0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y1.0 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X240 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nG0 Y11 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\nG0 X239.5\nG0 E0.2\nG0 Y1.5 E0.700\nG0 X231 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n T1000\n\n G0 F1200.0 X231 Y15 Z0.2 E0.741\n G0 F1200.0 X226 Y15 Z0.2 E0.275\n G0 F1200.0 X226 Y8 Z0.2 E0.384\n G0 F1200.0 X216 Y8 Z0.2 E0.549\n G0 F1200.0 X216 Y1.5 Z0.2 E0.357\n\n G0 X48.0 E12.0 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E0.92 F1200.0\n G0 X35.0 Y6.0 E1.03 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n\t{if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X185.000 E9.35441 F4800\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.160\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.080\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X18 E14.3 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.080 K0.160\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.08 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*0.08}\n M623\n\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X185.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X190.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X195.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X200.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X205.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X210.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X215.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X220.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X225.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4\n"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.4 nozzle.json b/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.4 nozzle.json
index 540fd0bb5b..c6188a2ab8 100644
--- a/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.4 nozzle.json
+++ b/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.4 nozzle.json
@@ -35,7 +35,7 @@
"Bambu Lab X1E 0.4 nozzle",
"Bambu Lab A1 0.4 nozzle"
],
- "machine_start_gcode": ";===== machine: X1 =========================\n;===== date: 20230824 =====================\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nM290 X40 Y40 Z2.6666666\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{+0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {elsif (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y1.0 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X240 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nG0 Y11 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\nG0 X239.5\nG0 E0.2\nG0 Y1.5 E0.700\nG0 X231 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n T1000\n\n G0 F1200.0 X231 Y15 Z0.2 E0.741\n G0 F1200.0 X226 Y15 Z0.2 E0.275\n G0 F1200.0 X226 Y8 Z0.2 E0.384\n G0 F1200.0 X216 Y8 Z0.2 E0.549\n G0 F1200.0 X216 Y1.5 Z0.2 E0.357\n\n G0 X48.0 E12.0 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E0.92 F1200.0\n G0 X35.0 Y6.0 E1.03 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n {if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X185.000 E9.35441 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.040\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.020\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X18 E14.3 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.020 K0.040\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.02 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*0.02}\n M623\n\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X185.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X190.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X195.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X200.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X205.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X210.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X215.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X220.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X225.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4",
- "machine_end_gcode": ";===== date: 20240402 =====================\nM400 ; wait for buffer to clear\nG92 E0 ; zero the extruder\nG1 E-0.8 F1800 ; retract\nG1 Z{max_layer_z + 0.5} F900 ; lower z a little\nG1 X65 Y245 F12000 ; move to safe pos \nG1 Y265 F3000\n\nG1 X65 Y245 F12000\nG1 Y265 F3000\nM140 S0 ; turn off bed\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\n\nG1 X100 F12000 ; wipe\n; pull back filament to AMS\nM620 S255\nG1 X20 Y50 F12000\nG1 Y-3\nT255\nG1 X65 F12000\nG1 Y265\nG1 X100 F12000 ; wipe\nM621 S255\nM104 S0 ; turn off hotend\n\nM622.1 S1 ; for prev firware, default turned on\nM1002 judge_flag timelapse_record_flag\nM622 J1\n M400 ; wait all motion done\n M991 S0 P-1 ;end smooth timelapse at safe pos\n M400 S3 ;wait for last picture to be taken\nM623; end of \"timelapse_record_flag\"\n\nM400 ; wait all motion done\nM17 S\nM17 Z0.4 ; lower z motor current to reduce impact if there is something in the bottom\n{if (max_layer_z + 100.0) < 250}\n G1 Z{max_layer_z + 100.0} F600\n G1 Z{max_layer_z +98.0}\n{else}\n G1 Z250 F600\n G1 Z248\n{endif}\nM400 P100\nM17 R ; restore z current\n\nM220 S100 ; Reset feedrate magnitude\nM201.2 K1.0 ; Reset acc magnitude\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 0\n\nM17 X0.8 Y0.8 Z0.5 ; lower motor current to 45% power\nM960 S5 P0 ; turn off logo lamp\n\n",
+ "machine_start_gcode": ";===== machine: X1 ====================\n;===== date: 20240528 ==================\n;===== start printer sound ================\nM17\nM400 S1\nM1006 S1\nM1006 A0 B10 L100 C37 D10 M60 E37 F10 N60\nM1006 A0 B10 L100 C41 D10 M60 E41 F10 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A46 B10 L100 C43 D10 M70 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A43 B10 L100 C0 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A41 B10 L100 C0 D10 M100 E41 F10 N100\nM1006 A44 B10 L100 C0 D10 M100 E44 F10 N100\nM1006 A49 B10 L100 C0 D10 M100 E49 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A48 B10 L100 C44 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A44 B10 L100 C0 D10 M90 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A46 B10 L100 C43 D10 M60 E39 F10 N100\nM1006 W\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nM290 X40 Y40 Z2.6666666\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{+0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y1.0 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X240 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nG0 Y11 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\nG0 X239.5\nG0 E0.2\nG0 Y1.5 E0.700\nG0 X231 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n T1000\n\n G0 F1200.0 X231 Y15 Z0.2 E0.741\n G0 F1200.0 X226 Y15 Z0.2 E0.275\n G0 F1200.0 X226 Y8 Z0.2 E0.384\n G0 F1200.0 X216 Y8 Z0.2 E0.549\n G0 F1200.0 X216 Y1.5 Z0.2 E0.357\n\n G0 X48.0 E12.0 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E0.92 F1200.0\n G0 X35.0 Y6.0 E1.03 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n {if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X185.000 E9.35441 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.040\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.020\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X18 E14.3 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.020 K0.040\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E1.24726 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.02 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*0.02}\n M623\n\n G1 X140.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X185.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X190.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X195.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X200.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X205.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X210.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X215.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X220.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X225.000 E0.31181 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4",
+ "machine_end_gcode": ";===== date: 20240528 =====================\nM400 ; wait for buffer to clear\nG92 E0 ; zero the extruder\nG1 E-0.8 F1800 ; retract\nG1 Z{max_layer_z + 0.5} F900 ; lower z a little\nG1 X65 Y245 F12000 ; move to safe pos\nG1 Y265 F3000\n\nG1 X65 Y245 F12000\nG1 Y265 F3000\nM140 S0 ; turn off bed\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\n\nG1 X100 F12000 ; wipe\n; pull back filament to AMS\nM620 S255\nG1 X20 Y50 F12000\nG1 Y-3\nT255\nG1 X65 F12000\nG1 Y265\nG1 X100 F12000 ; wipe\nM621 S255\nM104 S0 ; turn off hotend\n\nM622.1 S1 ; for prev firware, default turned on\nM1002 judge_flag timelapse_record_flag\nM622 J1\n M400 ; wait all motion done\n M991 S0 P-1 ;end smooth timelapse at safe pos\n M400 S3 ;wait for last picture to be taken\nM623; end of \"timelapse_record_flag\"\n\nM400 ; wait all motion done\nM17 S\nM17 Z0.4 ; lower z motor current to reduce impact if there is something in the bottom\n{if (max_layer_z + 100.0) < 250}\n G1 Z{max_layer_z + 100.0} F600\n G1 Z{max_layer_z +98.0}\n{else}\n G1 Z250 F600\n G1 Z248\n{endif}\nM400 P100\nM17 R ; restore z current\n\nM220 S100 ; Reset feedrate magnitude\nM201.2 K1.0 ; Reset acc magnitude\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 0\n;=====printer finish sound=========\nM17\nM400 S1\nM1006 S1\nM1006 A0 B20 L100 C37 D20 M40 E42 F20 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C46 D10 M80 E46 F10 N80\nM1006 A44 B20 L100 C39 D20 M60 E48 F20 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A0 B10 L100 C39 D10 M60 E39 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A0 B10 L100 C39 D10 M60 E39 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A0 B10 L100 C48 D10 M60 E44 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A49 B20 L100 C44 D20 M100 E41 F20 N100\nM1006 A0 B20 L100 C0 D20 M60 E0 F20 N100\nM1006 A0 B20 L100 C37 D20 M30 E37 F20 N60\nM1006 W\n\nM17 X0.8 Y0.8 Z0.5 ; lower motor current to 45% power\nM960 S5 P0 ; turn off logo lamp\n",
"change_filament_gcode": "M620 S[next_extruder]A\nM204 S9000\n{if toolchange_count > 1 && (z_hop_types[current_extruder] == 0 || z_hop_types[current_extruder] == 3)}\nG17\nG2 Z{z_after_toolchange + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\n{endif}\nG1 Z{max_layer_z + 3.0} F1200\n\nG1 X70 F21000\nG1 Y245\nG1 Y265 F3000\nM400\nM106 P1 S0\nM106 P2 S0\n{if old_filament_temp > 142 && next_extruder < 255}\nM104 S[old_filament_temp]\n{endif}\n{if long_retractions_when_cut[previous_extruder]}\nM620.11 S1 I[previous_extruder] E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{else}\nM620.11 S0\n{endif}\nM400\nG1 X90 F3000\nG1 Y255 F4000\nG1 X100 F5000\nG1 X120 F15000\nG1 X20 Y50 F21000\nG1 Y-3\n{if toolchange_count == 2}\n; get travel path for change filament\nM620.1 X[travel_point_1_x] Y[travel_point_1_y] F21000 P0\nM620.1 X[travel_point_2_x] Y[travel_point_2_y] F21000 P1\nM620.1 X[travel_point_3_x] Y[travel_point_3_y] F21000 P2\n{endif}\nM620.1 E F[old_filament_e_feedrate] T{nozzle_temperature_range_high[previous_extruder]}\nT[next_extruder]\nM620.1 E F[new_filament_e_feedrate] T{nozzle_temperature_range_high[next_extruder]}\n\n{if next_extruder < 255}\n{if long_retractions_when_cut[previous_extruder]}\nM620.11 S1 I[previous_extruder] E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\nM628 S1\nG92 E0\nG1 E{retraction_distances_when_cut[previous_extruder]} F[old_filament_e_feedrate]\nM400\nM629 S1\n{else}\nM620.11 S0\n{endif}\nG92 E0\n{if flush_length_1 > 1}\nM83\n; FLUSH_START\n; always use highest temperature to flush\nM400\n{if filament_type[next_extruder] == \"PETG\"}\nM109 S260\n{elsif filament_type[next_extruder] == \"PVA\"}\nM109 S210\n{else}\nM109 S[nozzle_temperature_range_high]\n{endif}\n{if flush_length_1 > 23.7}\nG1 E23.7 F{old_filament_e_feedrate} ; do not need pulsatile flushing for start part\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{old_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\nG1 E{(flush_length_1 - 23.7) * 0.02} F50\nG1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}\n{else}\nG1 E{flush_length_1} F{old_filament_e_feedrate}\n{endif}\n; FLUSH_END\nG1 E-[old_retract_length_toolchange] F1800\nG1 E[old_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_2 > 1}\n\nG91\nG1 X3 F12000; move aside to extrude\nG90\nM83\n\n; FLUSH_START\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_3 > 1}\n\nG91\nG1 X3 F12000; move aside to extrude\nG90\nM83\n\n; FLUSH_START\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\n; FLUSH_END\nG1 E-[new_retract_length_toolchange] F1800\nG1 E[new_retract_length_toolchange] F300\n{endif}\n\n{if flush_length_4 > 1}\n\nG91\nG1 X3 F12000; move aside to extrude\nG90\nM83\n\n; FLUSH_START\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\n; FLUSH_END\n{endif}\n; FLUSH_START\nM400\nM109 S[new_filament_temp]\nG1 E2 F{new_filament_e_feedrate} ;Compensate for filament spillage during waiting temperature\n; FLUSH_END\nM400\nG92 E0\nG1 E-[new_retract_length_toolchange] F1800\nM106 P1 S255\nM400 S3\n\nG1 X70 F5000\nG1 X90 F3000\nG1 Y255 F4000\nG1 X105 F5000\nG1 Y265 F5000\nG1 X70 F10000\nG1 X100 F5000\nG1 X70 F10000\nG1 X100 F5000\n\nG1 X70 F10000\nG1 X80 F15000\nG1 X60\nG1 X80\nG1 X60\nG1 X80 ; shake to put down garbage\nG1 X100 F5000\nG1 X165 F15000; wipe and shake\nG1 Y256 ; move Y to aside, prevent collision\nM400\nG1 Z{max_layer_z + 3.0} F3000\n{if layer_z <= (initial_layer_print_height + 0.001)}\nM204 S[initial_layer_acceleration]\n{else}\nM204 S[default_acceleration]\n{endif}\n{else}\nG1 X[x_after_toolchange] Y[y_after_toolchange] Z[z_after_toolchange] F12000\n{endif}\nM621 S[next_extruder]A\n"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.6 nozzle.json b/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.6 nozzle.json
index 23526c9d03..2dffc6f94c 100644
--- a/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.6 nozzle.json
+++ b/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.6 nozzle.json
@@ -33,5 +33,5 @@
"Bambu Lab X1E 0.6 nozzle",
"Bambu Lab A1 0.6 nozzle"
],
- "machine_start_gcode": ";===== machine: X1 =========================\n;===== date: 20230824 =====================\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nM290 X40 Y40 Z2.6666666\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{+0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {elsif (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y1.0 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X240 E25 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nG0 Y15 E1.166 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\nG0 X239.5\nG0 E0.2\nG0 Y1.5 E1.166\nG0 X231 E1.166 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n G0 F1200.0 X231 Y15 Z0.2 E1.333\n G0 F1200.0 X226 Y15 Z0.2 E0.495\n G0 F1200.0 X226 Y8 Z0.2 E0.691\n G0 F1200.0 X216 Y8 Z0.2 E0.988\n G0 F1200.0 X216 Y1.5 Z0.2 E0.642\n\n G0 X48.0 E20.56 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E1.56 F1200.0\n G0 X35.0 Y6.0 E1.75 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n {if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X185.000 E16.9 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.030\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.25000 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X70.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X75.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X80.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X85.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X90.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X95.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X100.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X105.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X110.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X115.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X120.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X125.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X130.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X135.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X140.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X145.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X150.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X155.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X160.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X165.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X170.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X175.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X180.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.015\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.25000 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X70.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X75.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X80.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X85.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X90.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X95.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X100.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X105.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X110.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X115.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X120.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X125.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X130.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X135.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X140.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X145.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X150.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X155.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X160.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X165.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X170.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X175.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X180.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.25000 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X70.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X75.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X80.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X85.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X90.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X95.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X100.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X105.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X110.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X115.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X120.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X125.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X130.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X135.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X140.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X145.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X150.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X155.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X160.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X165.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X170.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X175.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X180.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X18 E23.9 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.015 K0.030\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E2.25000 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.015 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*0.015}\n M623\n\n G1 X140.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X185.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X190.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X195.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X200.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X205.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X210.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X215.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X220.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X225.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4"
+ "machine_start_gcode": ";===== machine: X1 =========================\n;===== date: 20240528 =====================\n;===== start printer sound ================\nM17\nM400 S1\nM1006 S1\nM1006 A0 B10 L100 C37 D10 M60 E37 F10 N60\nM1006 A0 B10 L100 C41 D10 M60 E41 F10 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A46 B10 L100 C43 D10 M70 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A43 B10 L100 C0 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A41 B10 L100 C0 D10 M100 E41 F10 N100\nM1006 A44 B10 L100 C0 D10 M100 E44 F10 N100\nM1006 A49 B10 L100 C0 D10 M100 E49 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A48 B10 L100 C44 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A44 B10 L100 C0 D10 M90 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A46 B10 L100 C43 D10 M60 E39 F10 N100\nM1006 W\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nM290 X40 Y40 Z2.6666666\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{+0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y1.0 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X240 E25 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nG0 Y15 E1.166 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\nG0 X239.5\nG0 E0.2\nG0 Y1.5 E1.166\nG0 X231 E1.166 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n G0 F1200.0 X231 Y15 Z0.2 E1.333\n G0 F1200.0 X226 Y15 Z0.2 E0.495\n G0 F1200.0 X226 Y8 Z0.2 E0.691\n G0 F1200.0 X216 Y8 Z0.2 E0.988\n G0 F1200.0 X216 Y1.5 Z0.2 E0.642\n\n G0 X48.0 E20.56 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E1.56 F1200.0\n G0 X35.0 Y6.0 E1.75 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n {if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X185.000 E16.9 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.030\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.25000 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X70.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X75.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X80.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X85.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X90.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X95.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X100.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X105.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X110.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X115.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X120.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X125.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X130.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X135.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X140.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X145.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X150.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X155.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X160.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X165.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X170.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X175.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X180.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.015\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.25000 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X70.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X75.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X80.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X85.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X90.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X95.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X100.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X105.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X110.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X115.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X120.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X125.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X130.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X135.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X140.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X145.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X150.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X155.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X160.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X165.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X170.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X175.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X180.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.25000 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X70.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X75.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X80.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X85.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X90.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X95.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X100.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X105.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X110.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X115.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X120.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X125.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X130.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X135.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X140.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X145.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X150.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X155.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X160.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X165.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X170.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9)/ 4 * 60}\n G1 X175.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 X180.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.9) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X18 E23.9 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.015 K0.030\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E2.25000 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X70.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X75.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X80.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X85.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X90.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X95.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X100.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X105.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X110.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X115.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X120.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X125.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X130.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X135.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.015 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*0.015}\n M623\n\n G1 X140.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X145.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X150.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X155.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X160.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X165.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X170.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X175.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X180.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X185.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X190.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X195.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X200.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X205.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X210.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X215.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G1 X220.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60}\n G1 X225.000 E0.56250 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4\n"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.8 nozzle.json b/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.8 nozzle.json
index ea4e5e27a2..4e22e6bc78 100644
--- a/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.8 nozzle.json
+++ b/resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.8 nozzle.json
@@ -33,5 +33,5 @@
"Bambu Lab X1E 0.8 nozzle",
"Bambu Lab A1 0.8 nozzle"
],
- "machine_start_gcode": ";===== machine: X1 =========================\n;===== date: 20230824 =====================\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nM290 X40 Y40 Z2.6666666\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {elsif (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y0.5 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X129 E15 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\nG0 X240 E15\nG0 Y11 E1.364 F{outer_wall_volumetric_speed/(0.3*1.0)/ 4 * 60}\nG0 X239.5\nG0 E0.3\nG0 Y1.5 E1.300\nG0 X231 E1.160 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n G0 F1200.0 X231 Y15 Z0.2 E1.482\n G0 F1200.0 X226 Y15 Z0.2 E0.550\n G0 F1200.0 X226 Y8 Z0.2 E0.768\n G0 F1200.0 X216 Y8 Z0.2 E1.098\n G0 F1200.0 X216 Y1.5 Z0.2 E0.714\n\n G0 X48.0 E25.0 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E1.70 F1200.0\n G0 X35.0 Y6.0 E1.90 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n {if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X110.000 E9.35441 F4800\n G0 X185.000 E9.35441 F4800\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.020\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.010\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X129 E14 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G0 X18 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.010 K0.020\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.01 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14) *0.01}\n M623\n\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X185.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X190.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X195.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X200.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X205.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X210.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X215.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X220.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X225.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4"
+ "machine_start_gcode": ";===== machine: X1 ====================\n;===== date: 20240528 ==================\n;===== start printer sound ================\nM17\nM400 S1\nM1006 S1\nM1006 A0 B10 L100 C37 D10 M60 E37 F10 N60\nM1006 A0 B10 L100 C41 D10 M60 E41 F10 N60\nM1006 A0 B10 L100 C44 D10 M60 E44 F10 N60\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N60\nM1006 A46 B10 L100 C43 D10 M70 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A43 B10 L100 C0 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A41 B10 L100 C0 D10 M100 E41 F10 N100\nM1006 A44 B10 L100 C0 D10 M100 E44 F10 N100\nM1006 A49 B10 L100 C0 D10 M100 E49 F10 N100\nM1006 A0 B10 L100 C0 D10 M100 E0 F10 N100\nM1006 A48 B10 L100 C44 D10 M60 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A44 B10 L100 C0 D10 M90 E39 F10 N100\nM1006 A0 B10 L100 C0 D10 M60 E0 F10 N100\nM1006 A46 B10 L100 C43 D10 M60 E39 F10 N100\nM1006 W\n;===== turn on the HB fan =================\nM104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle\n;===== reset machine status =================\nM290 X40 Y40 Z2.6666666\nG91\nM17 Z0.4 ; lower the z-motor current\nG380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed\nG380 S2 Z-25 F300 ;\nG1 Z5 F300;\nG90\nM17 X1.2 Y1.2 Z0.75 ; reset motor current to default\nM960 S5 P1 ; turn on logo lamp\nG90\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 5\nM221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem\nG29.1 Z{0.0} ; clear z-trim value first\nM204 S10000 ; init ACC set to 10m/s^2\n\n;===== heatbed preheat ====================\nM1002 gcode_claim_action : 2\nM140 S[bed_temperature_initial_layer_single] ;set bed temp\nM190 S[bed_temperature_initial_layer_single] ;wait for bed temp\n\n{if scan_first_layer}\n;=========register first layer scan=====\nM977 S1 P60\n{endif}\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\n;===== prepare print temperature and material ==========\nM104 S[nozzle_temperature_initial_layer] ;set extruder temp\nG91\nG0 Z10 F1200\nG90\nG28 X\nM975 S1 ; turn on\nG1 X60 F12000\nG1 Y245\nG1 Y265 F3000\nM620 M\nM620 S[initial_no_support_extruder]A ; switch material if AMS exist\n M109 S[nozzle_temperature_initial_layer]\n G1 X120 F12000\n\n G1 X20 Y50 F12000\n G1 Y-3\n T[initial_no_support_extruder]\n G1 X54 F12000\n G1 Y265\n M400\nM621 S[initial_no_support_extruder]A\nM620.1 E F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_no_support_extruder]}\n\n\nM412 S1 ; ===turn on filament runout detection===\n\nM109 S250 ;set nozzle to common flush temp\nM106 P1 S0\nG92 E0\nG1 E50 F200\nM400\nM104 S[nozzle_temperature_initial_layer]\nG92 E0\nG1 E50 F200\nM400\nM106 P1 S255\nG92 E0\nG1 E5 F300\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20} ; drop nozzle temp, make filament shink a bit\nG92 E0\nG1 E-0.5 F300\n\nG1 X70 F9000\nG1 X76 F15000\nG1 X65 F15000\nG1 X76 F15000\nG1 X65 F15000; shake to put down garbage\nG1 X80 F6000\nG1 X95 F15000\nG1 X80 F15000\nG1 X165 F15000; wipe and shake\nM400\nM106 P1 S0\n;===== prepare print temperature and material end =====\n\n\n;===== wipe nozzle ===============================\nM1002 gcode_claim_action : 14\nM975 S1\nM106 S255\nG1 X65 Y230 F18000\nG1 Y264 F6000\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-20}\nG1 X100 F18000 ; first wipe mouth\n\nG0 X135 Y253 F20000 ; move to exposed steel surface edge\nG28 Z P0 T300; home z with low precision,permit 300deg temperature\nG29.2 S0 ; turn off ABL\nG0 Z5 F20000\n\nG1 X60 Y265\nG92 E0\nG1 E-0.5 F300 ; retrack more\nG1 X100 F5000; second wipe mouth\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X100 F5000\nG1 X70 F15000\nG1 X90 F5000\nG0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle\nM104 S140 ; set temp down to heatbed acceptable\nM106 S255 ; turn on fan (G28 has turn off fan)\n\nM221 S; push soft endstop status\nM221 Z0 ;turn off Z axis endstop\nG0 Z0.5 F20000\nG0 X125 Y259.5 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y262.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y260.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.5\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 Z0.5 F20000\nG0 X125 Y261.0\nG0 Z-1.01\nG0 X131 F211\nG0 X124\nG0 X128\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\nG2 I0.5 J0 F300\n\nM109 S140 ; wait nozzle temp down to heatbed acceptable\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\nG2 I0.5 J0 F3000\n\nM221 R; pop softend status\nG1 Z10 F1200\nM400\nG1 Z10\nG1 F30000\nG1 X128 Y128\nG29.2 S1 ; turn on ABL\n;G28 ; home again after hard wipe mouth\nM106 S0 ; turn off fan , too noisy\n;===== wipe nozzle end ================================\n\n;===== check scanner clarity ===========================\nG1 X128 Y128 F24000\nG28 Z P0\nM972 S5 P0\nG1 X230 Y15 F24000\n;===== check scanner clarity end =======================\n\n;===== bed leveling ==================================\nM1002 judge_flag g29_before_print_flag\nM622 J1\n\n M1002 gcode_claim_action : 1\n G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]}\n M400\n M500 ; save cali data\n\nM623\n;===== bed leveling end ================================\n\n;===== home after wipe mouth============================\nM1002 judge_flag g29_before_print_flag\nM622 J0\n\n M1002 gcode_claim_action : 13\n G28\n\nM623\n;===== home after wipe mouth end =======================\n\nM975 S1 ; turn on vibration supression\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n M142 P1 R35 S40\n{endif}\nM106 P2 S100 ; turn on big fan ,to cool down toolhead\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; set extrude temp earlier, to reduce wait time\n\n;===== mech mode fast check============================\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q1 A7 B30 C80 H15 K0\nM974 Q1 S2 P0\n\nG1 X128 Y128 Z10 F20000\nM400 P200\nM970.3 Q0 A7 B30 C90 Q0 H15 K0\nM974 Q0 S2 P0\n\nM975 S1\nG1 F30000\nG1 X230 Y15\nG28 X ; re-home XY\n;===== mech mode fast check============================\n\n{if scan_first_layer}\n;start heatbed scan====================================\nM976 S2 P1\nG90\nG1 X128 Y128 F20000\nM976 S3 P2 ;register void printing detection\n{endif}\n\n;===== nozzle load line ===============================\nM975 S1\nG90\nM83\nT1000\nG1 X18.0 Y0.5 Z0.8 F18000;Move to start position\nM109 S{nozzle_temperature[initial_no_support_extruder]}\nG1 Z0.2\nG0 E2 F300\nG0 X129 E15 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\nG0 X240 E15\nG0 Y11 E1.364 F{outer_wall_volumetric_speed/(0.3*1.0)/ 4 * 60}\nG0 X239.5\nG0 E0.3\nG0 Y1.5 E1.300\nG0 X231 E1.160 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM400\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n;curr_bed_type={curr_bed_type}\n{if curr_bed_type==\"Textured PEI Plate\"}\nG29.1 Z{-0.04} ; for Textured PEI Plate\n{endif}\n\n;===== draw extrinsic para cali paint =================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M1002 gcode_claim_action : 8\n\n G0 F1200.0 X231 Y15 Z0.2 E1.482\n G0 F1200.0 X226 Y15 Z0.2 E0.550\n G0 F1200.0 X226 Y8 Z0.2 E0.768\n G0 F1200.0 X216 Y8 Z0.2 E1.098\n G0 F1200.0 X216 Y1.5 Z0.2 E0.714\n\n G0 X48.0 E25.0 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\n G0 X48.0 Y14 E1.70 F1200.0\n G0 X35.0 Y6.0 E1.90 F1200.0\n\n ;=========== extruder cali extrusion ==================\n T1000\n M83\n {if default_acceleration > 0}\n {if outer_wall_acceleration > 0}\n M204 S[outer_wall_acceleration]\n {else}\n M204 S[default_acceleration]\n {endif}\n {endif}\n G0 X35.000 Y6.000 Z0.300 F30000 E0\n G1 F1500.000 E0.800\n M106 S0 ; turn off fan\n G0 X110.000 E9.35441 F4800\n G0 X185.000 E9.35441 F4800\n G0 X187 Z0\n G1 F1500.000 E-0.800\n G0 Z1\n G0 X180 Z0.3 F18000\n\n M900 L1000.0 M1.0\n M900 K0.020\n G0 X45.000 F30000\n G0 Y8.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.010\n G0 X45.000 F30000\n G0 Y10.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n M400\n\n G0 X45.000 F30000\n M900 K0.000\n G0 X45.000 F30000\n G0 Y12.000 F30000\n G1 F1500.000 E0.800\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 F1500.000 E-0.800\n G1 X183 Z0.15 F30000\n G1 X185\n G1 Z1.0\n G0 Y6.000 F30000 ; move y to clear pos\n G1 Z0.3\n\n G0 X45.000 F30000 ; move to start point\n\nM623 ; end of \"draw extrinsic para cali paint\"\n\nM1002 judge_flag extrude_cali_flag\nM622 J0\n G0 X231 Y1.5 F30000\n G0 X129 E14 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G0 X18 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}\nM623\n\nM104 S140\n\n\n;=========== laser and rgb calibration ===========\nM400\nM18 E\nM500 R\n\nM973 S3 P14\n\nG1 X120 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nT1100\nG1 X235.0 Y1.0 Z0.3 F18000.0;Move to first extrude line pos\nM400 P100\nM960 S1 P1\nM400 P100\nM973 S6 P0; use auto exposure for horizontal laser by xcam\nM960 S0 P0\n\nG1 X240.0 Y6.0 Z0.3 F18000.0;Move to vertical extrude line pos\nM960 S2 P1\nM400 P100\nM973 S6 P1; use auto exposure for vertical laser by xcam\nM960 S0 P0\n\n;=========== handeye calibration ======================\nM1002 judge_flag extrude_cali_flag\nM622 J1\n\n M973 S3 P1 ; camera start stream\n M400 P500\n M973 S1\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G0 F6000 X228.500 Y4.500 Z0.000\n M960 S0 P1\n M973 S1\n M400 P800\n M971 S6 P0\n M973 S2 P0\n M400 P500\n G0 Z0.000 F12000\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P200\n M971 S5 P1\n M973 S2 P1\n M400 P500\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P3\n G0 Z0.500 F12000\n M960 S0 P0\n M960 S2 P1\n G0 X228.5 Y11.0\n M400 P200\n M971 S5 P4\n M973 S2 P0\n M400 P500\n M960 S0 P0\n M960 S1 P1\n G0 X221.00 Y4.50\n M400 P500\n M971 S5 P2\n M963 S1\n M400 P1500\n M964\n T1100\n G1 Z3 F3000\n\n M400\n M500 ; save cali data\n\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} ; rise nozzle temp now ,to reduce temp waiting time.\n\n T1100\n M400 P400\n M960 S0 P0\n G0 F30000.000 Y10.000 X65.000 Z0.000\n M400 P400\n M960 S1 P1\n M400 P50\n\n M969 S1 N3 A2000\n G0 F360.000 X181.000 Z0.000\n M980.3 A70.000 B{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60/4} C5.000 D{outer_wall_volumetric_speed/(1.75*1.75/4*3.14)*60} E5.000 F175.000 H1.000 I0.000 J0.010 K0.020\n M400 P100\n G0 F20000\n G0 Z1 ; rise nozzle up\n T1000 ; change to nozzle space\n G0 X45.000 Y4.000 F30000 ; move to test line pos\n M969 S0 ; turn off scanning\n M960 S0 P0\n\n\n G1 Z2 F20000\n T1000\n G0 X45.000 Y4.000 F30000 E0\n M109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\n G0 Z0.3\n G1 F1500.000 E3.600\n G1 X65.000 E2.4945 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X70.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X75.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X80.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X85.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X90.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X95.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X100.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X105.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X110.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X115.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X120.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X125.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X130.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X135.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n\n ; see if extrude cali success, if not ,use default value\n M1002 judge_last_extrude_cali_success\n M622 J0\n M400\n M900 K0.01 M{outer_wall_volumetric_speed/(1.75*1.75/4*3.14) *0.01}\n M623\n\n G1 X140.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X145.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X150.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X155.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X160.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X165.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X170.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X175.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X180.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X185.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X190.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X195.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X200.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X205.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X210.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X215.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n G1 X220.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) / 4 * 60}\n G1 X225.000 E0.6236 F{outer_wall_volumetric_speed/(0.3*1.0) * 60}\n M973 S4\n\nM623\n\n;========turn off light and wait extrude temperature =============\nM1002 gcode_claim_action : 0\nM973 S4 ; turn off scanner\nM400 ; wait all motion done before implement the emprical L parameters\n;M900 L500.0 ; Empirical parameters\nM109 S[nozzle_temperature_initial_layer]\nM960 S1 P0 ; turn off laser\nM960 S2 P0 ; turn off laser\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off big fan\nM106 P3 S0 ; turn off chamber fan\n\nM975 S1 ; turn on mech mode supression\nG90\nM83\nT1000\nG1 E{-retraction_length[initial_no_support_extruder]} F1800\nG1 X128.0 Y253.0 Z0.2 F24000.0;Move to start position\nG1 E{retraction_length[initial_no_support_extruder]} F1800\nM109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\nG0 X253 E6.4 F{outer_wall_volumetric_speed/(0.3*0.6) * 60}\nG0 Y128 E6.4\nG0 X252.5\nG0 Y252.5 E6.4\nG0 X128 E6.4\n"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/process/0.10mm Standard @BBL P1P 0.2 nozzle.json b/resources/profiles/BBL/process/0.10mm Standard @BBL P1P 0.2 nozzle.json
index 37a2a12777..227fb04c57 100644
--- a/resources/profiles/BBL/process/0.10mm Standard @BBL P1P 0.2 nozzle.json
+++ b/resources/profiles/BBL/process/0.10mm Standard @BBL P1P 0.2 nozzle.json
@@ -8,6 +8,7 @@
"description": "It has a small layer height, and results in almost negligible layer lines and high printing quality. It is suitable for most general printing cases.",
"elefant_foot_compensation": "0.15",
"compatible_printers": [
- "Bambu Lab P1P 0.2 nozzle"
+ "Bambu Lab P1P 0.2 nozzle",
+ "Bambu Lab P1S 0.2 nozzle"
]
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/process/fdm_process_bbl_0.08.json b/resources/profiles/BBL/process/fdm_process_bbl_0.08.json
index 2f8723a464..61897f7a73 100644
--- a/resources/profiles/BBL/process/fdm_process_bbl_0.08.json
+++ b/resources/profiles/BBL/process/fdm_process_bbl_0.08.json
@@ -20,7 +20,7 @@
"overhang_1_4_speed": "60",
"overhang_2_4_speed": "30",
"overhang_3_4_speed": "10",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "15",
"support_top_z_distance": "0.08",
"support_bottom_z_distance": "0.08"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/process/fdm_process_bbl_0.12.json b/resources/profiles/BBL/process/fdm_process_bbl_0.12.json
index 875dd82210..e22593fb30 100644
--- a/resources/profiles/BBL/process/fdm_process_bbl_0.12.json
+++ b/resources/profiles/BBL/process/fdm_process_bbl_0.12.json
@@ -20,7 +20,7 @@
"overhang_1_4_speed": "60",
"overhang_2_4_speed": "30",
"overhang_3_4_speed": "10",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "20",
"support_top_z_distance": "0.12",
"support_bottom_z_distance": "0.12"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/process/fdm_process_bbl_0.16.json b/resources/profiles/BBL/process/fdm_process_bbl_0.16.json
index 7aee25923b..3d60b01d8b 100644
--- a/resources/profiles/BBL/process/fdm_process_bbl_0.16.json
+++ b/resources/profiles/BBL/process/fdm_process_bbl_0.16.json
@@ -20,7 +20,7 @@
"overhang_1_4_speed": "60",
"overhang_2_4_speed": "30",
"overhang_3_4_speed": "10",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "25",
"support_top_z_distance": "0.16",
"support_bottom_z_distance": "0.16"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/process/fdm_process_bbl_0.24.json b/resources/profiles/BBL/process/fdm_process_bbl_0.24.json
index 6f35be1ec1..1a0bd76e40 100644
--- a/resources/profiles/BBL/process/fdm_process_bbl_0.24.json
+++ b/resources/profiles/BBL/process/fdm_process_bbl_0.24.json
@@ -16,6 +16,6 @@
"sparse_infill_speed": "230",
"internal_solid_infill_speed": "230",
"gap_infill_speed": "230",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "35",
"top_shell_layers": "4"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/process/fdm_process_bbl_0.28.json b/resources/profiles/BBL/process/fdm_process_bbl_0.28.json
index 4a1c9fc694..efd2cc4d01 100644
--- a/resources/profiles/BBL/process/fdm_process_bbl_0.28.json
+++ b/resources/profiles/BBL/process/fdm_process_bbl_0.28.json
@@ -16,6 +16,6 @@
"sparse_infill_speed": "200",
"internal_solid_infill_speed": "200",
"gap_infill_speed": "200",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "40",
"top_shell_layers": "4"
}
\ No newline at end of file
diff --git a/resources/profiles/BBL/process/fdm_process_common.json b/resources/profiles/BBL/process/fdm_process_common.json
index a9a08f371a..fd909fd1c7 100644
--- a/resources/profiles/BBL/process/fdm_process_common.json
+++ b/resources/profiles/BBL/process/fdm_process_common.json
@@ -57,7 +57,7 @@
"support_base_pattern": "default",
"support_base_pattern_spacing": "2",
"support_speed": "40",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "40",
"support_object_xy_distance": "0.5",
"detect_thin_wall": "0",
"top_surface_line_width": "0.42",
diff --git a/resources/profiles/BIQU.json b/resources/profiles/BIQU.json
index 0b34e7888f..eb8346c248 100644
--- a/resources/profiles/BIQU.json
+++ b/resources/profiles/BIQU.json
@@ -1,6 +1,6 @@
{
"name": "BIQU",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "BIQU configurations",
"machine_model_list": [
diff --git a/resources/profiles/CONSTRUCT3D.json b/resources/profiles/CONSTRUCT3D.json
index 204e5e75eb..4c83281971 100644
--- a/resources/profiles/CONSTRUCT3D.json
+++ b/resources/profiles/CONSTRUCT3D.json
@@ -1,6 +1,6 @@
{
"name": "CONSTRUCT3D",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Construct3D configurations",
"machine_model_list": [
diff --git a/resources/profiles/CONSTRUCT3D/construct_1_buildplate_model.stl b/resources/profiles/CONSTRUCT3D/construct_1_buildplate_model.stl
index 9e4e53dcac..325909e9c5 100644
Binary files a/resources/profiles/CONSTRUCT3D/construct_1_buildplate_model.stl and b/resources/profiles/CONSTRUCT3D/construct_1_buildplate_model.stl differ
diff --git a/resources/profiles/CONSTRUCT3D/construct_1_xl_buildplate_model.stl b/resources/profiles/CONSTRUCT3D/construct_1_xl_buildplate_model.stl
index 68f903f1f8..352c0c09fc 100644
Binary files a/resources/profiles/CONSTRUCT3D/construct_1_xl_buildplate_model.stl and b/resources/profiles/CONSTRUCT3D/construct_1_xl_buildplate_model.stl differ
diff --git a/resources/profiles/Chuanying.json b/resources/profiles/Chuanying.json
new file mode 100644
index 0000000000..cbb30acd5a
--- /dev/null
+++ b/resources/profiles/Chuanying.json
@@ -0,0 +1,171 @@
+{
+ "name": "Chuanying",
+ "url": "",
+ "version": "02.01.00.01",
+ "force_update": "0",
+ "description": "Chuanying configurations",
+ "machine_model_list": [
+ {
+ "name": "Chuanying X1",
+ "sub_path": "machine/Chuanying X1.json"
+ }
+ ],
+ "process_list": [
+ {
+ "name": "fdm_process_common",
+ "sub_path": "process/fdm_process_common.json"
+ },
+ {
+ "name": "fdm_process_chuanying_common",
+ "sub_path": "process/fdm_process_chuanying_common.json"
+ },
+ {
+ "name": "fdm_process_chuanying_0.20",
+ "sub_path": "process/fdm_process_chuanying_0.20.json"
+ },
+ {
+ "name": "fdm_process_chuanying_0.30",
+ "sub_path": "process/fdm_process_chuanying_0.30.json"
+ },
+ {
+ "name": "0.20mm Standard @Chuanying X1 0.4 Nozzle",
+ "sub_path": "process/0.20mm Standard @Chuanying X1 0.4 Nozzle.json"
+ },
+ {
+ "name": "0.30mm Standard @Chuanying X1 0.6 Nozzle",
+ "sub_path": "process/0.30mm Standard @Chuanying X1 0.6 Nozzle.json"
+ },
+ {
+ "name": "0.12mm Standard @Chuanying X1 0.25 Nozzle",
+ "sub_path": "process/0.12mm Standard @Chuanying X1 0.25 Nozzle.json"
+ },
+ {
+ "name": "0.40mm Standard @Chuanying X1 0.8 Nozzle",
+ "sub_path": "process/0.40mm Standard @Chuanying X1 0.8 Nozzle.json"
+ }
+ ],
+ "filament_list": [
+ {
+ "name": "fdm_filament_common",
+ "sub_path": "filament/fdm_filament_common.json"
+ },
+ {
+ "name": "fdm_filament_abs",
+ "sub_path": "filament/fdm_filament_abs.json"
+ },
+ {
+ "name": "fdm_filament_pet",
+ "sub_path": "filament/fdm_filament_pet.json"
+ },
+ {
+ "name": "fdm_filament_pla",
+ "sub_path": "filament/fdm_filament_pla.json"
+ },
+ {
+ "name": "fdm_filament_asa",
+ "sub_path": "filament/fdm_filament_asa.json"
+ },
+ {
+ "name": "fdm_filament_tpu",
+ "sub_path": "filament/fdm_filament_tpu.json"
+ },
+ {
+ "name": "Chuanying Generic ABS",
+ "sub_path": "filament/Chuanying Generic ABS.json"
+ },
+ {
+ "name": "Chuanying ABS @Chuanying X1 0.25 Nozzle",
+ "sub_path": "filament/Chuanying ABS @Chuanying X1 0.25 Nozzle.json"
+ },
+ {
+ "name": "Chuanying Generic PETG",
+ "sub_path": "filament/Chuanying Generic PETG.json"
+ },
+ {
+ "name": "Chuanying PETG @Chuanying X1 0.25 Nozzle",
+ "sub_path": "filament/Chuanying PETG @Chuanying X1 0.25 Nozzle.json"
+ },
+ {
+ "name": "Chuanying Generic PLA",
+ "sub_path": "filament/Chuanying Generic PLA.json"
+ },
+ {
+ "name": "Chuanying PLA @Chuanying X1 0.25 Nozzle",
+ "sub_path": "filament/Chuanying PLA @Chuanying X1 0.25 Nozzle.json"
+ },
+ {
+ "name": "Chuanying Generic PLA-CF10",
+ "sub_path": "filament/Chuanying Generic PLA-CF10.json"
+ },
+ {
+ "name": "Chuanying Generic PLA-Silk",
+ "sub_path": "filament/Chuanying Generic PLA-Silk.json"
+ },
+ {
+ "name": "Chuanying PLA-SILK @Chuanying X1 0.25 Nozzle",
+ "sub_path": "filament/Chuanying PLA-SILK @Chuanying X1 0.25 Nozzle.json"
+ },
+ {
+ "name": "Chuanying Generic HS PLA",
+ "sub_path": "filament/Chuanying Generic HS PLA.json"
+ },
+ {
+ "name": "Chuanying HS PLA @Chuanying X1 0.25 Nozzle",
+ "sub_path": "filament/Chuanying HS PLA @Chuanying X1 0.25 Nozzle.json"
+ },
+ {
+ "name": "Chuanying Generic ASA",
+ "sub_path": "filament/Chuanying Generic ASA.json"
+ },
+ {
+ "name": "Chuanying ASA @Chuanying X1 0.25 Nozzle",
+ "sub_path": "filament/Chuanying ASA @Chuanying X1 0.25 Nozzle.json"
+ },
+ {
+ "name": "Chuanying Generic PETG-CF10",
+ "sub_path": "filament/Chuanying Generic PETG-CF10.json"
+ },
+ {
+ "name": "Chuanying Generic TPU",
+ "sub_path": "filament/Chuanying Generic TPU.json"
+ },
+ {
+ "name":"Chuanying Generic HIPS",
+ "sub_path":"filament/Chuanying Generic HIPS.json"
+ },
+ {
+ "name":"Chuanying Generic PVA",
+ "sub_path":"filament/Chuanying Generic PVA.json"
+ }
+ ],
+ "machine_list": [
+ {
+ "name": "fdm_machine_common",
+ "sub_path": "machine/fdm_machine_common.json"
+ },
+ {
+ "name": "fdm_chuanying_common",
+ "sub_path": "machine/fdm_chuanying_common.json"
+ },
+ {
+ "name": "fdm_x1_common",
+ "sub_path": "machine/fdm_x1_common.json"
+ },
+ {
+ "name": "Chuanying X1 0.25 Nozzle",
+ "sub_path": "machine/Chuanying X1 0.25 Nozzle.json"
+ },
+ {
+ "name": "Chuanying X1 0.4 Nozzle",
+ "sub_path": "machine/Chuanying X1 0.4 Nozzle.json"
+ },
+ {
+ "name": "Chuanying X1 0.6 Nozzle",
+ "sub_path": "machine/Chuanying X1 0.6 Nozzle.json"
+ },
+ {
+ "name": "Chuanying X1 0.8 Nozzle",
+ "sub_path": "machine/Chuanying X1 0.8 Nozzle.json"
+ }
+ ]
+}
diff --git a/resources/profiles/Chuanying/Chuanying X1_cover.png b/resources/profiles/Chuanying/Chuanying X1_cover.png
new file mode 100644
index 0000000000..cd2877fccb
Binary files /dev/null and b/resources/profiles/Chuanying/Chuanying X1_cover.png differ
diff --git a/resources/profiles/Chuanying/chuanying_x1_buildplate_model.STL b/resources/profiles/Chuanying/chuanying_x1_buildplate_model.STL
new file mode 100644
index 0000000000..ba3120726a
Binary files /dev/null and b/resources/profiles/Chuanying/chuanying_x1_buildplate_model.STL differ
diff --git a/resources/profiles/Chuanying/chuanying_x1_buildplate_texture.png b/resources/profiles/Chuanying/chuanying_x1_buildplate_texture.png
new file mode 100644
index 0000000000..32a35e0719
Binary files /dev/null and b/resources/profiles/Chuanying/chuanying_x1_buildplate_texture.png differ
diff --git a/resources/profiles/Chuanying/chuanying_x1_hotend.stl b/resources/profiles/Chuanying/chuanying_x1_hotend.stl
new file mode 100644
index 0000000000..5f65226bb2
Binary files /dev/null and b/resources/profiles/Chuanying/chuanying_x1_hotend.stl differ
diff --git a/resources/profiles/Chuanying/filament/Chuanying ABS @Chuanying X1 0.25 Nozzle.json b/resources/profiles/Chuanying/filament/Chuanying ABS @Chuanying X1 0.25 Nozzle.json
new file mode 100644
index 0000000000..be5bd43dcc
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying ABS @Chuanying X1 0.25 Nozzle.json
@@ -0,0 +1,31 @@
+{
+ "type": "filament",
+ "name": "Chuanying ABS @Chuanying X1 0.25 Nozzle",
+ "inherits": "Chuanying Generic ABS",
+ "from": "system",
+ "setting_id": "GFSA04_02",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Chuanying X1 0.25 Nozzle"
+ ],
+ "filament_id": "GFB99",
+ "filament_settings_id": [
+ "Chuanying ABS @Chuanying X1 0.25 Nozzle"
+ ],
+ "fan_max_speed": [
+ "50"
+ ],
+ "filament_cost": [
+ "40"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.1"
+ ],
+ "version": "1.8.0.0"
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying ASA @Chuanying X1 0.25 Nozzle.json b/resources/profiles/Chuanying/filament/Chuanying ASA @Chuanying X1 0.25 Nozzle.json
new file mode 100644
index 0000000000..c1f2e74016
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying ASA @Chuanying X1 0.25 Nozzle.json
@@ -0,0 +1,34 @@
+{
+ "type": "filament",
+ "name": "Chuanying ASA @Chuanying X1 0.25 Nozzle",
+ "inherits": "Chuanying Generic ASA",
+ "from": "system",
+ "setting_id": "GFSA04_05",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Chuanying X1 0.25 Nozzle"
+ ],
+ "filament_id": "GFL99",
+ "filament_settings_id": [
+ "Chuanying ASA @Chuanying X1 0.25 Nozzle"
+ ],
+ "fan_max_speed": [
+ "50"
+ ],
+ "filament_cost": [
+ "40"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n;right_extruder_material: ASA\n"
+ ],
+ "pressure_advance": [
+ "0.1"
+ ],
+ "version": "1.8.0.0"
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying Generic ABS.json b/resources/profiles/Chuanying/filament/Chuanying Generic ABS.json
new file mode 100644
index 0000000000..8dec24c5bf
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying Generic ABS.json
@@ -0,0 +1,56 @@
+{
+ "type": "filament",
+ "filament_id": "GFB99",
+ "setting_id": "GFSA04",
+ "name": "Chuanying Generic ABS",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_abs",
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_max_volumetric_speed": [
+ "15"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "support_material_interface_fan_speed": [
+ "80"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n;right_extruder_material: ABS\n"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode\n"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "pressure_advance": [
+ "0.04"
+ ],
+ "filament_density": [
+ "1.04"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "105"
+ ],
+ "hot_plate_temp": [
+ "105"
+ ],
+ "compatible_printers": [
+ "Chuanying X1 0.4 Nozzle",
+ "Chuanying X1 0.6 Nozzle",
+ "Chuanying X1 0.8 Nozzle"
+ ]
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying Generic ASA.json b/resources/profiles/Chuanying/filament/Chuanying Generic ASA.json
new file mode 100644
index 0000000000..1006010bb5
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying Generic ASA.json
@@ -0,0 +1,189 @@
+{
+ "type": "filament",
+ "filament_id": "GFL99",
+ "setting_id": "GFSA04",
+ "name": "Chuanying Generic ASA",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_asa",
+ "additional_cooling_fan_speed": [
+ "0"
+ ],
+ "bed_temperature_difference": [
+ "10"
+ ],
+ "chamber_temperature": "0",
+ "close_fan_the_first_x_layers": [
+ "2"
+ ],
+ "compatible_printers": [
+ "Chuanying X1 0.4 Nozzle",
+ "Chuanying X1 0.6 Nozzle",
+ "Chuanying X1 0.8 Nozzle"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "default_filament_colour": [
+ ""
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "eng_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "60"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "20"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_density": [
+ "1.04"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_max_volumetric_speed": [
+ "18"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_retract_before_wipe": [
+ "nil"
+ ],
+ "filament_retract_restart_extra": [
+ "nil"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_settings_id": [
+ "Chuanying ASA"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode \n;right_extruder_material:ASA"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode\n"
+ ],
+ "filament_type": [
+ "ASA"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp": [
+ "105"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "105"
+ ],
+ "nozzle_temperature": [
+ "260"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "260"
+ ],
+ "nozzle_temperature_range_high": [
+ "270"
+ ],
+ "nozzle_temperature_range_low": [
+ "230"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.04"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "5"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp": [
+ "60"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "60"
+ ]
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying Generic HIPS.json b/resources/profiles/Chuanying/filament/Chuanying Generic HIPS.json
new file mode 100644
index 0000000000..aed3ee21e9
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying Generic HIPS.json
@@ -0,0 +1,255 @@
+{
+ "type": "filament",
+ "filament_id": "GFB99",
+ "setting_id": "GFSA04",
+ "instantiation": "true",
+ "from": "system",
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "0"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "2"
+ ],
+ "compatible_printers": [
+ "Chuanying X1 0.4 Nozzle",
+ "Chuanying X1 0.6 Nozzle",
+ "Chuanying X1 0.8 Nozzle"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "complete_print_exhaust_fan_speed": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "default_filament_colour": [
+ ""
+ ],
+ "during_print_exhaust_fan_speed": [
+ "60"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "30"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_cooling_final_speed": [
+ "3.4"
+ ],
+ "filament_cooling_initial_speed": [
+ "2.2"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_density": [
+ "1.04"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode\n"
+ ],
+ "filament_flow_ratio": [
+ "1.01"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_load_time": [
+ "0"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "5"
+ ],
+ "filament_multitool_ramming": [
+ "0"
+ ],
+ "filament_multitool_ramming_flow": [
+ "10"
+ ],
+ "filament_multitool_ramming_volume": [
+ "10"
+ ],
+ "filament_notes": [
+ ""
+ ],
+ "filament_ramming_parameters": [
+ "120 100 6.6 6.8 7.2 7.6 7.9 8.2 8.7 9.4 9.9 10.0| 0.05 6.6 0.45 6.8 0.95 7.8 1.45 8.3 1.95 9.7 2.45 10 2.95 7.6 3.45 7.6 3.95 7.6 4.45 7.6 4.95 7.6"
+ ],
+ "filament_retract_before_wipe": [
+ "nil"
+ ],
+ "filament_retract_lift_above": [
+ "nil"
+ ],
+ "filament_retract_lift_below": [
+ "nil"
+ ],
+ "filament_retract_lift_enforce": [
+ "nil"
+ ],
+ "filament_retract_restart_extra": [
+ "nil"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_settings_id": [
+ "Chuanying Generic HIPS"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "HIPS"
+ ],
+ "filament_unload_time": [
+ "0"
+ ],
+ "filament_unloading_speed": [
+ "35"
+ ],
+ "filament_unloading_speed_start": [
+ "40"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp": [
+ "105"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "105"
+ ],
+ "inherits": "Chuanying Generic ABS",
+ "name": "Chuanying Generic HIPS",
+ "nozzle_temperature": [
+ "240"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "240"
+ ],
+ "nozzle_temperature_range_high": [
+ "250"
+ ],
+ "nozzle_temperature_range_low": [
+ "220"
+ ],
+ "overhang_fan_speed": [
+ "50"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.036"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "40"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "version": "1.9.0.2"
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying Generic HS PLA.json b/resources/profiles/Chuanying/filament/Chuanying Generic HS PLA.json
new file mode 100644
index 0000000000..96b6f3eeca
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying Generic HS PLA.json
@@ -0,0 +1,245 @@
+{
+ "type": "filament",
+ "filament_id": "GFL99",
+ "setting_id": "GFSA04",
+ "name": "Chuanying Generic HS PLA",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_pla",
+ "bed_temperature_difference": [
+ "10"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers": [
+ "Chuanying X1 0.4 Nozzle",
+ "Chuanying X1 0.6 Nozzle",
+ "Chuanying X1 0.8 Nozzle"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "default_filament_colour": [
+ ""
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "eng_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "60"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_cooling_final_speed": [
+ "3.4"
+ ],
+ "filament_cooling_initial_speed": [
+ "2.2"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_density": [
+ "1.24"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n"
+ ],
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_load_time": [
+ "0"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_max_volumetric_speed": [
+ "25"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "0"
+ ],
+ "filament_multitool_ramming_flow": [
+ "10"
+ ],
+ "filament_multitool_ramming_volume": [
+ "10"
+ ],
+ "filament_notes": [
+ ""
+ ],
+ "filament_ramming_parameters": [
+ "120 100 6.6 6.8 7.2 7.6 7.9 8.2 8.7 9.4 9.9 10.0| 0.05 6.6 0.45 6.8 0.95 7.8 1.45 8.3 1.95 9.7 2.45 10 2.95 7.6 3.45 7.6 3.95 7.6 4.45 7.6 4.95 7.6"
+ ],
+ "filament_retract_before_wipe": [
+ "nil"
+ ],
+ "filament_retract_lift_above": [
+ "nil"
+ ],
+ "filament_retract_lift_below": [
+ "nil"
+ ],
+ "filament_retract_lift_enforce": [
+ "nil"
+ ],
+ "filament_retract_restart_extra": [
+ "nil"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_settings_id": [
+ "Chuanying HS PLA"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n;right_extruder_material:HS PLA\n"
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unload_time": [
+ "0"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "55"
+ ],
+ "hot_plate_temp": [
+ "50"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "230"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pressure_advance": [
+ "0.025"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "temperature_vitrification": [
+ "60"
+ ],
+ "textured_plate_temp": [
+ "60"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "60"
+ ],
+ "slow_down_layer_time": [
+ "6"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "100"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ]
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying Generic PETG-CF10.json b/resources/profiles/Chuanying/filament/Chuanying Generic PETG-CF10.json
new file mode 100644
index 0000000000..3c5489aa6c
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying Generic PETG-CF10.json
@@ -0,0 +1,189 @@
+{
+ "type": "filament",
+ "filament_id": "GFG99",
+ "setting_id": "GFSA04",
+ "name": "Chuanying Generic PETG-CF10",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_pet",
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "bed_temperature_difference": [
+ "10"
+ ],
+ "chamber_temperature": "0",
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers": [
+ "Chuanying X1 0.4 Nozzle",
+ "Chuanying X1 0.6 Nozzle",
+ "Chuanying X1 0.8 Nozzle"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "default_filament_colour": [
+ ""
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "eng_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "60"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "90"
+ ],
+ "fan_min_speed": [
+ "40"
+ ],
+ "filament_cost": [
+ "30"
+ ],
+ "filament_density": [
+ "1.27"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_retract_before_wipe": [
+ "nil"
+ ],
+ "filament_retract_restart_extra": [
+ "nil"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_settings_id": [
+ "Chuanying PETG-CF10"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n;right_extruder_material:PETG-CF10\n"
+ ],
+ "filament_type": [
+ "PETG-CF"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp": [
+ "70"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "70"
+ ],
+ "nozzle_temperature": [
+ "245"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "245"
+ ],
+ "nozzle_temperature_range_high": [
+ "260"
+ ],
+ "nozzle_temperature_range_low": [
+ "220"
+ ],
+ "overhang_fan_speed": [
+ "90"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.035"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "100"
+ ],
+ "temperature_vitrification": [
+ "70"
+ ],
+ "textured_plate_temp": [
+ "60"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "60"
+ ]
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying Generic PETG.json b/resources/profiles/Chuanying/filament/Chuanying Generic PETG.json
new file mode 100644
index 0000000000..24916c8c44
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying Generic PETG.json
@@ -0,0 +1,89 @@
+{
+ "type": "filament",
+ "filament_id": "GFG99",
+ "setting_id": "GFSA04",
+ "name": "Chuanying Generic PETG",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_pet",
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "temperature_vitrification": [
+ "70"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "70"
+ ],
+ "hot_plate_temp": [
+ "70"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "slow_down_min_speed": [
+ "30"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "support_material_interface_fan_speed": [
+ "90"
+ ],
+ "additional_cooling_fan_speed": [
+ "50"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode \n;right_extruder_material:PETG"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode\n"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "pressure_advance": [
+ "0.046"
+ ],
+ "filament_density": [
+ "1.27"
+ ],
+ "nozzle_temperature_range_low": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "260"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "255"
+ ],
+ "nozzle_temperature": [
+ "255"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "90"
+ ],
+ "fan_min_speed": [
+ "40"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "compatible_printers": [
+ "Chuanying X1 0.4 Nozzle",
+ "Chuanying X1 0.6 Nozzle",
+ "Chuanying X1 0.8 Nozzle"
+ ]
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying Generic PLA-CF10.json b/resources/profiles/Chuanying/filament/Chuanying Generic PLA-CF10.json
new file mode 100644
index 0000000000..779d128083
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying Generic PLA-CF10.json
@@ -0,0 +1,246 @@
+{
+ "type": "filament",
+ "filament_id": "GFL99",
+ "setting_id": "GFSA04",
+ "name": "Chuanying Generic PLA-CF10",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_pla",
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "bed_temperature_difference": [
+ "10"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers": [
+ "Chuanying X1 0.4 Nozzle",
+ "Chuanying X1 0.6 Nozzle",
+ "Chuanying X1 0.8 Nozzle"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "default_filament_colour": [
+ ""
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "eng_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "60"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_cooling_final_speed": [
+ "3.4"
+ ],
+ "filament_cooling_initial_speed": [
+ "2.2"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_density": [
+ "1.24"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_load_time": [
+ "0"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_max_volumetric_speed": [
+ "20"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "0"
+ ],
+ "filament_multitool_ramming_flow": [
+ "10"
+ ],
+ "filament_multitool_ramming_volume": [
+ "10"
+ ],
+ "filament_notes": [
+ ""
+ ],
+ "filament_ramming_parameters": [
+ "120 100 6.6 6.8 7.2 7.6 7.9 8.2 8.7 9.4 9.9 10.0| 0.05 6.6 0.45 6.8 0.95 7.8 1.45 8.3 1.95 9.7 2.45 10 2.95 7.6 3.45 7.6 3.95 7.6 4.45 7.6 4.95 7.6"
+ ],
+ "filament_retract_before_wipe": [
+ "nil"
+ ],
+ "filament_retract_lift_above": [
+ "nil"
+ ],
+ "filament_retract_lift_below": [
+ "nil"
+ ],
+ "filament_retract_lift_enforce": [
+ "nil"
+ ],
+ "filament_retract_restart_extra": [
+ "nil"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_settings_id": [
+ "Chuanying PLA"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n;right_extruder_material:PLA-CF10\n"
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA-CF"
+ ],
+ "filament_unload_time": [
+ "0"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "55"
+ ],
+ "hot_plate_temp": [
+ "50"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "230"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pressure_advance": [
+ "0.025"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "100"
+ ],
+ "temperature_vitrification": [
+ "60"
+ ],
+ "textured_plate_temp": [
+ "60"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "60"
+ ]
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying Generic PLA-Silk.json b/resources/profiles/Chuanying/filament/Chuanying Generic PLA-Silk.json
new file mode 100644
index 0000000000..6d44d171db
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying Generic PLA-Silk.json
@@ -0,0 +1,65 @@
+{
+ "type": "filament",
+ "filament_id": "GFL99",
+ "setting_id": "GFSA04",
+ "name": "Chuanying Generic PLA-Silk",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_pla",
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "55"
+ ],
+ "hot_plate_temp": [
+ "50"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "100"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n;right_extruder_material: PLA Silk\n"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode\n"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "pressure_advance": [
+ "0.025"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "230"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "compatible_printers": [
+ "Chuanying X1 0.4 Nozzle",
+ "Chuanying X1 0.6 Nozzle",
+ "Chuanying X1 0.8 Nozzle"
+ ]
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying Generic PLA.json b/resources/profiles/Chuanying/filament/Chuanying Generic PLA.json
new file mode 100644
index 0000000000..27de0f871c
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying Generic PLA.json
@@ -0,0 +1,65 @@
+{
+ "type": "filament",
+ "filament_id": "GFL99",
+ "setting_id": "GFSA04",
+ "name": "Chuanying Generic PLA",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_pla",
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_max_volumetric_speed": [
+ "25"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "55"
+ ],
+ "hot_plate_temp": [
+ "50"
+ ],
+ "slow_down_layer_time": [
+ "6"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "100"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n;right_extruder_material: PLA\n"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode\n"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "pressure_advance": [
+ "0.025"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "230"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "compatible_printers": [
+ "Chuanying X1 0.4 Nozzle",
+ "Chuanying X1 0.6 Nozzle",
+ "Chuanying X1 0.8 Nozzle"
+ ]
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying Generic PVA.json b/resources/profiles/Chuanying/filament/Chuanying Generic PVA.json
new file mode 100644
index 0000000000..fbddc58e72
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying Generic PVA.json
@@ -0,0 +1,255 @@
+{
+ "type": "filament",
+ "filament_id": "GFB99",
+ "setting_id": "GFSA04",
+ "instantiation": "true",
+ "from": "system",
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "80"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers": [
+ "Chuanying X1 0.4 Nozzle",
+ "Chuanying X1 0.6 Nozzle",
+ "Chuanying X1 0.8 Nozzle"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "complete_print_exhaust_fan_speed": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "55"
+ ],
+ "default_filament_colour": [
+ ""
+ ],
+ "during_print_exhaust_fan_speed": [
+ "60"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "eng_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "55"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "50"
+ ],
+ "filament_cooling_final_speed": [
+ "3.4"
+ ],
+ "filament_cooling_initial_speed": [
+ "2.2"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_density": [
+ "1.2"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode\n"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_is_support": [
+ "1"
+ ],
+ "filament_load_time": [
+ "0"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_max_volumetric_speed": [
+ "5"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "5"
+ ],
+ "filament_multitool_ramming": [
+ "0"
+ ],
+ "filament_multitool_ramming_flow": [
+ "10"
+ ],
+ "filament_multitool_ramming_volume": [
+ "10"
+ ],
+ "filament_notes": [
+ ""
+ ],
+ "filament_ramming_parameters": [
+ "120 100 6.6 6.8 7.2 7.6 7.9 8.2 8.7 9.4 9.9 10.0| 0.05 6.6 0.45 6.8 0.95 7.8 1.45 8.3 1.95 9.7 2.45 10 2.95 7.6 3.45 7.6 3.95 7.6 4.45 7.6 4.95 7.6"
+ ],
+ "filament_retract_before_wipe": [
+ "nil"
+ ],
+ "filament_retract_lift_above": [
+ "nil"
+ ],
+ "filament_retract_lift_below": [
+ "nil"
+ ],
+ "filament_retract_lift_enforce": [
+ "nil"
+ ],
+ "filament_retract_restart_extra": [
+ "nil"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_settings_id": [
+ "Chuanying Generic PVA"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n;right_extruder_material: PVA"
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PVA"
+ ],
+ "filament_unload_time": [
+ "0"
+ ],
+ "filament_unloading_speed": [
+ "35"
+ ],
+ "filament_unloading_speed_start": [
+ "40"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp": [
+ "50"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "55"
+ ],
+ "inherits": "Chuanying Generic PLA",
+ "name": "Chuanying Generic PVA",
+ "nozzle_temperature": [
+ "220"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "230"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pressure_advance": [
+ "0.025"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "6"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "support_material_interface_fan_speed": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "60"
+ ],
+ "textured_plate_temp": [
+ "60"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "55"
+ ],
+ "version": "1.9.0.2"
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying Generic TPU.json b/resources/profiles/Chuanying/filament/Chuanying Generic TPU.json
new file mode 100644
index 0000000000..aa9fb1dd3f
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying Generic TPU.json
@@ -0,0 +1,196 @@
+{
+ "type": "filament",
+ "filament_id": "GFG99",
+ "setting_id": "GFSA04",
+ "name": "Chuanying Generic TPU",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_tpu",
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "bed_temperature_difference": [
+ "10"
+ ],
+ "chamber_temperature": "0",
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers": [
+ "Chuanying X1 0.4 Nozzle",
+ "Chuanying X1 0.6 Nozzle",
+ "Chuanying X1 0.8 Nozzle",
+ "Chuanying Adventurer 5M 0.4 Nozzle",
+ "Chuanying Adventurer 5M 0.6 Nozzle",
+ "Chuanying Adventurer 5M 0.8 Nozzle",
+ "Chuanying Adventurer 5M Pro 0.4 Nozzle",
+ "Chuanying Adventurer 5M Pro 0.6 Nozzle",
+ "Chuanying Adventurer 5M Pro 0.8 Nozzle"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "default_filament_colour": [
+ ""
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "eng_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "60"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_density": [
+ "1.24"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_max_volumetric_speed": [
+ "3.5"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_retract_before_wipe": [
+ "nil"
+ ],
+ "filament_retract_restart_extra": [
+ "nil"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "1.2"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_settings_id": [
+ "Chuanying TPU"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n;right_extruder_material:TPU\n"
+ ],
+ "filament_type": [
+ "TPU"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp": [
+ "45"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "45"
+ ],
+ "nozzle_temperature": [
+ "235"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "235"
+ ],
+ "nozzle_temperature_range_high": [
+ "250"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pressure_advance": [
+ "0.035"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "100"
+ ],
+ "temperature_vitrification": [
+ "60"
+ ],
+ "textured_plate_temp": [
+ "60"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "60"
+ ],
+ "version": "1.5.1.2"
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying HS PLA @Chuanying X1 0.25 Nozzle.json b/resources/profiles/Chuanying/filament/Chuanying HS PLA @Chuanying X1 0.25 Nozzle.json
new file mode 100644
index 0000000000..e5e6f40281
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying HS PLA @Chuanying X1 0.25 Nozzle.json
@@ -0,0 +1,49 @@
+{
+ "type": "filament",
+ "name": "Chuanying HS PLA @Chuanying X1 0.25 Nozzle",
+ "inherits": "Chuanying Generic HS PLA",
+ "from": "system",
+ "setting_id": "GFSA04_09",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Chuanying X1 0.25 Nozzle"
+ ],
+ "filament_id": "GFL99",
+ "filament_settings_id": [
+ "Chuanying HS PLA @Chuanying X1 0.25 Nozzle"
+ ],
+ "activate_air_filtration": [
+ "1"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "100"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "100"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n;right_extruder_material: HS PLA\n"
+ ],
+ "hot_plate_temp": [
+ "45"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "50"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "pressure_advance": [
+ "0.1"
+ ],
+ "slow_down_min_speed": [
+ "15"
+ ],
+ "version": "1.8.0.0"
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying PETG @Chuanying X1 0.25 Nozzle.json b/resources/profiles/Chuanying/filament/Chuanying PETG @Chuanying X1 0.25 Nozzle.json
new file mode 100644
index 0000000000..2f15b739d0
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying PETG @Chuanying X1 0.25 Nozzle.json
@@ -0,0 +1,28 @@
+{
+ "type": "filament",
+ "name": "Chuanying PETG @Chuanying X1 0.25 Nozzle",
+ "inherits": "Chuanying Generic PETG",
+ "from": "system",
+ "setting_id": "GFSA04_12",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Chuanying X1 0.25 Nozzle"
+ ],
+ "filament_id": "GFG99",
+ "filament_settings_id": [
+ "Chuanying PETG @Chuanying X1 0.25 Nozzle"
+ ],
+ "fan_max_speed": [
+ "80"
+ ],
+ "filament_max_volumetric_speed": [
+ "1.5"
+ ],
+ "pressure_advance": [
+ "0.1"
+ ],
+ "slow_down_min_speed": [
+ "15"
+ ],
+ "version": "1.8.0.0"
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying PLA @Chuanying X1 0.25 Nozzle.json b/resources/profiles/Chuanying/filament/Chuanying PLA @Chuanying X1 0.25 Nozzle.json
new file mode 100644
index 0000000000..e4b3f3a4d1
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying PLA @Chuanying X1 0.25 Nozzle.json
@@ -0,0 +1,48 @@
+{
+ "type": "filament",
+ "name": "Chuanying PLA @Chuanying X1 0.25 Nozzle",
+ "inherits": "Chuanying Generic PLA",
+ "from": "system",
+ "setting_id": "GFSA04_19",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Chuanying X1 0.25 Nozzle"
+ ],
+ "filament_settings_id": [
+ "Chuanying PLA @Chuanying X1 0.25 Nozzle"
+ ],
+ "activate_air_filtration": [
+ "1"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "100"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "100"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "2.8"
+ ],
+ "hot_plate_temp": [
+ "45"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "50"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.1"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "slow_down_min_speed": [
+ "15"
+ ],
+ "version": "1.8.0.0"
+}
diff --git a/resources/profiles/Chuanying/filament/Chuanying PLA-SILK @Chuanying X1 0.25 Nozzle.json b/resources/profiles/Chuanying/filament/Chuanying PLA-SILK @Chuanying X1 0.25 Nozzle.json
new file mode 100644
index 0000000000..0569b522e5
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/Chuanying PLA-SILK @Chuanying X1 0.25 Nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "filament",
+ "name": "Chuanying PLA-SILK @Chuanying X1 0.25 Nozzle",
+ "inherits": "Chuanying Generic PLA-Silk",
+ "from": "system",
+ "setting_id": "GFSA04_25",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Chuanying X1 0.25 Nozzle"
+ ],
+ "filament_id": "GFL99",
+ "filament_settings_id": [
+ "Chuanying PLA-SILK @Chuanying X1 0.25 Nozzle"
+ ],
+ "activate_air_filtration": [
+ "1"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "100"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "100"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "2.8"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n;right_extruder_material: PLA-Silk\n"
+ ],
+ "hot_plate_temp": [
+ "45"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "50"
+ ],
+ "nozzle_temperature": [
+ "217"
+ ],
+ "pressure_advance": [
+ "0.1"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "slow_down_min_speed": [
+ "15"
+ ],
+ "version": "1.8.0.0"
+}
diff --git a/resources/profiles/Chuanying/filament/fdm_filament_abs.json b/resources/profiles/Chuanying/filament/fdm_filament_abs.json
new file mode 100644
index 0000000000..8743ba8b3b
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/fdm_filament_abs.json
@@ -0,0 +1,88 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_abs",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "close_fan_the_first_x_layers": [
+ "2"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "filament_max_volumetric_speed": [
+ "15"
+ ],
+ "filament_type": [
+ "ABS"
+ ],
+ "filament_density": [
+ "1.10"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "265"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "fan_max_speed": [
+ "20"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "nozzle_temperature": [
+ "265"
+ ],
+ "temperature_vitrification": [
+ "110"
+ ],
+ "nozzle_temperature_range_low": [
+ "230"
+ ],
+ "nozzle_temperature_range_high": [
+ "270"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ]
+}
diff --git a/resources/profiles/Chuanying/filament/fdm_filament_asa.json b/resources/profiles/Chuanying/filament/fdm_filament_asa.json
new file mode 100644
index 0000000000..29a752a4ee
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/fdm_filament_asa.json
@@ -0,0 +1,82 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_asa",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "cool_plate_temp" : [
+ "105"
+ ],
+ "eng_plate_temp" : [
+ "105"
+ ],
+ "hot_plate_temp" : [
+ "105"
+ ],
+ "cool_plate_temp_initial_layer" : [
+ "105"
+ ],
+ "eng_plate_temp_initial_layer" : [
+ "105"
+ ],
+ "hot_plate_temp_initial_layer" : [
+ "105"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "fan_cooling_layer_time": [
+ "35"
+ ],
+ "filament_max_volumetric_speed": [
+ "28.6"
+ ],
+ "filament_type": [
+ "ASA"
+ ],
+ "filament_density": [
+ "1.04"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "260"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "fan_max_speed": [
+ "80"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "nozzle_temperature": [
+ "260"
+ ],
+ "temperature_vitrification": [
+ "110"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature_range_high": [
+ "270"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "slow_down_layer_time": [
+ "3"
+ ]
+}
diff --git a/resources/profiles/Chuanying/filament/fdm_filament_common.json b/resources/profiles/Chuanying/filament/fdm_filament_common.json
new file mode 100644
index 0000000000..823c736e8a
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/fdm_filament_common.json
@@ -0,0 +1,144 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_common",
+ "from": "system",
+ "instantiation": "false",
+ "cool_plate_temp" : [
+ "60"
+ ],
+ "eng_plate_temp" : [
+ "60"
+ ],
+ "hot_plate_temp" : [
+ "60"
+ ],
+ "textured_plate_temp" : [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer" : [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer" : [
+ "60"
+ ],
+ "hot_plate_temp_initial_layer" : [
+ "60"
+ ],
+ "textured_plate_temp_initial_layer" : [
+ "60"
+ ],
+ "overhang_fan_threshold": [
+ "95%"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "60"
+ ],
+ "filament_cost": [
+ "0"
+ ],
+ "filament_density": [
+ "0"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "2.85"
+ ],
+ "filament_max_volumetric_speed": [
+ "0"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retract_before_wipe": [
+ "nil"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "filament_retract_restart_extra": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_settings_id": [
+ ""
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "bed_type": [
+ "Cool Plate"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "200"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "35"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "filament_start_gcode": [
+ "; Filament gcode\n"
+ ],
+ "nozzle_temperature": [
+ "200"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ]
+}
diff --git a/resources/profiles/Chuanying/filament/fdm_filament_pet.json b/resources/profiles/Chuanying/filament/fdm_filament_pet.json
new file mode 100644
index 0000000000..0c65253151
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/fdm_filament_pet.json
@@ -0,0 +1,82 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_pet",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "cool_plate_temp" : [
+ "85"
+ ],
+ "eng_plate_temp" : [
+ "85"
+ ],
+ "hot_plate_temp" : [
+ "85"
+ ],
+ "textured_plate_temp" : [
+ "85"
+ ],
+ "cool_plate_temp_initial_layer" : [
+ "85"
+ ],
+ "eng_plate_temp_initial_layer" : [
+ "85"
+ ],
+ "hot_plate_temp_initial_layer" : [
+ "85"
+ ],
+ "textured_plate_temp_initial_layer" : [
+ "85"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "fan_cooling_layer_time": [
+ "15"
+ ],
+ "filament_max_volumetric_speed": [
+ "0"
+ ],
+ "filament_type": [
+ "PETG"
+ ],
+ "filament_density": [
+ "1.27"
+ ],
+ "filament_cost": [
+ "30"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "240"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "overhang_fan_speed": [
+ "50"
+ ],
+ "nozzle_temperature": [
+ "235"
+ ],
+ "temperature_vitrification": [
+ "80"
+ ],
+ "nozzle_temperature_range_low": [
+ "235"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ]
+}
diff --git a/resources/profiles/Chuanying/filament/fdm_filament_pla.json b/resources/profiles/Chuanying/filament/fdm_filament_pla.json
new file mode 100644
index 0000000000..1111af5b8d
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/fdm_filament_pla.json
@@ -0,0 +1,91 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_pla",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "filament_max_volumetric_speed": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_density": [
+ "1.24"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "cool_plate_temp" : [
+ "60"
+ ],
+ "eng_plate_temp" : [
+ "60"
+ ],
+ "hot_plate_temp" : [
+ "60"
+ ],
+ "textured_plate_temp" : [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer" : [
+ "55"
+ ],
+ "eng_plate_temp_initial_layer" : [
+ "55"
+ ],
+ "hot_plate_temp_initial_layer" : [
+ "55"
+ ],
+ "textured_plate_temp_initial_layer" : [
+ "55"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "205"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "temperature_vitrification": [
+ "60"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_range_high": [
+ "210"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ]
+}
diff --git a/resources/profiles/Chuanying/filament/fdm_filament_tpu.json b/resources/profiles/Chuanying/filament/fdm_filament_tpu.json
new file mode 100644
index 0000000000..d5cc57fbcc
--- /dev/null
+++ b/resources/profiles/Chuanying/filament/fdm_filament_tpu.json
@@ -0,0 +1,82 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_tpu",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "cool_plate_temp" : [
+ "30"
+ ],
+ "eng_plate_temp" : [
+ "30"
+ ],
+ "hot_plate_temp" : [
+ "35"
+ ],
+ "cool_plate_temp_initial_layer" : [
+ "30"
+ ],
+ "eng_plate_temp_initial_layer" : [
+ "30"
+ ],
+ "hot_plate_temp_initial_layer" : [
+ "35"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "filament_max_volumetric_speed": [
+ "15"
+ ],
+ "filament_type": [
+ "TPU"
+ ],
+ "filament_density": [
+ "1.24"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_retraction_length": [
+ "0.4"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "240"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "nozzle_temperature": [
+ "240"
+ ],
+ "temperature_vitrification": [
+ "60"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ],
+ "nozzle_temperature_range_high": [
+ "250"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ]
+}
diff --git a/resources/profiles/Chuanying/machine/Chuanying X1 0.25 Nozzle.json b/resources/profiles/Chuanying/machine/Chuanying X1 0.25 Nozzle.json
new file mode 100644
index 0000000000..a901b3b79f
--- /dev/null
+++ b/resources/profiles/Chuanying/machine/Chuanying X1 0.25 Nozzle.json
@@ -0,0 +1,18 @@
+{
+ "type": "machine",
+ "setting_id": "GM006",
+ "name": "Chuanying X1 0.25 Nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_x1_common",
+ "printer_model": "Chuanying X1",
+ "default_print_profile": "0.12mm Standard @Chuanying X1 0.25 Nozzle",
+ "nozzle_diameter": [ "0.25" ],
+ "printer_variant": "0.25",
+ "max_layer_height": [ "0.14" ],
+ "min_layer_height": [ "0.08" ],
+ "machine_start_gcode": "M190 S[bed_temperature_initial_layer_single]\nM104 S[nozzle_temperature_initial_layer]\nG1 Z5 F6000\nG90 E0\nM83\nG1 E-1 F600\nG1 E8 F300\nG1 X85 Y110 Z0.2 F1200\nG1 X-110 E15 F2400\nG1 Y0 E4 F2400\nG1 X-109.6 F2400\nG1 Y110 E5 F2400\nG92 E0",
+ "retraction_length": [ "1" ],
+ "z_hop": [ "0.3" ],
+ "nozzle_type": "stainless_steel"
+}
\ No newline at end of file
diff --git a/resources/profiles/Chuanying/machine/Chuanying X1 0.4 Nozzle.json b/resources/profiles/Chuanying/machine/Chuanying X1 0.4 Nozzle.json
new file mode 100644
index 0000000000..42e81da2df
--- /dev/null
+++ b/resources/profiles/Chuanying/machine/Chuanying X1 0.4 Nozzle.json
@@ -0,0 +1,16 @@
+{
+ "type": "machine",
+ "setting_id": "GM001",
+ "name": "Chuanying X1 0.4 Nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_x1_common",
+ "printer_model": "Chuanying X1",
+ "default_print_profile": "0.20mm Standard @Chuanying X1 0.4 Nozzle",
+ "nozzle_diameter": [ "0.4" ],
+ "printer_variant": "0.4",
+ "max_layer_height": [ "0.28" ],
+ "min_layer_height": [ "0.08" ],
+ "retraction_length": [ "0.8" ],
+ "nozzle_type": "stainless_steel"
+}
diff --git a/resources/profiles/Chuanying/machine/Chuanying X1 0.6 Nozzle.json b/resources/profiles/Chuanying/machine/Chuanying X1 0.6 Nozzle.json
new file mode 100644
index 0000000000..7febfe9120
--- /dev/null
+++ b/resources/profiles/Chuanying/machine/Chuanying X1 0.6 Nozzle.json
@@ -0,0 +1,18 @@
+{
+ "type": "machine",
+ "setting_id": "GM001",
+ "name": "Chuanying X1 0.6 Nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_x1_common",
+ "printer_model": "Chuanying X1",
+ "default_print_profile": "0.30mm Standard @Chuanying X1 0.6 Nozzle",
+ "nozzle_diameter": [ "0.6" ],
+ "printer_variant": "0.6",
+ "max_layer_height": [ "0.4" ],
+ "min_layer_height": [ "0.15" ],
+ "retraction_length": [ "1.2" ],
+ "nozzle_type": "hardened_steel"
+
+
+}
diff --git a/resources/profiles/Chuanying/machine/Chuanying X1 0.8 Nozzle.json b/resources/profiles/Chuanying/machine/Chuanying X1 0.8 Nozzle.json
new file mode 100644
index 0000000000..3f2feadf68
--- /dev/null
+++ b/resources/profiles/Chuanying/machine/Chuanying X1 0.8 Nozzle.json
@@ -0,0 +1,18 @@
+{
+ "type": "machine",
+ "setting_id": "GM005",
+ "name": "Chuanying X1 0.8 Nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_x1_common",
+ "printer_model": "Chuanying X1",
+ "default_print_profile": "0.40mm Standard @Chuanying X1 0.8 Nozzle",
+ "nozzle_diameter": [ "0.8" ],
+ "printer_variant": "0.8",
+ "machine_start_gcode": "M190 S[bed_temperature_initial_layer_single]\nM104 S[nozzle_temperature_initial_layer]\nG1 Z5 F6000\nG1 E-1.5 F600\nG1 E12 F800\nG1 X85 Y110 Z0.3 F1200\nG1 X-110 E30 F2400\nG1 Y0 E8 F2400\nG1 X-109.6 F2400\nG1 Y110 E10 F2400\nG92 E0",
+ "max_layer_height": [ "0.56" ],
+ "min_layer_height": [ "0.15" ],
+ "retraction_length": [ "1.5" ],
+ "nozzle_type": "hardened_steel",
+ "z_hop": ["0"]
+}
diff --git a/resources/profiles/Chuanying/machine/Chuanying X1.json b/resources/profiles/Chuanying/machine/Chuanying X1.json
new file mode 100644
index 0000000000..f45796d452
--- /dev/null
+++ b/resources/profiles/Chuanying/machine/Chuanying X1.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Chuanying X1",
+ "model_id": "Chuanying-X1",
+ "nozzle_diameter": "0.25;0.4;0.6;0.8",
+ "machine_tech": "FFF",
+ "family": "Chuanying",
+ "bed_model": "chuanying_x1_buildplate_model.STL",
+ "bed_texture": "chuanying_x1_buildplate_texture.png",
+ "hotend_model": "chuanying_x1_hotend.STL",
+ "default_materials": "Flashforge Generic PETG;Flashforge Generic PLA"
+}
diff --git a/resources/profiles/Chuanying/machine/fdm_chuanying_common.json b/resources/profiles/Chuanying/machine/fdm_chuanying_common.json
new file mode 100644
index 0000000000..b5714ff2d4
--- /dev/null
+++ b/resources/profiles/Chuanying/machine/fdm_chuanying_common.json
@@ -0,0 +1,139 @@
+{
+ "type": "machine",
+ "name": "fdm_chuanying_common",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_machine_common",
+ "gcode_flavor": "marlin",
+ "machine_max_acceleration_e": [
+ "5000",
+ "5000"
+ ],
+ "machine_max_acceleration_extruding": [
+ "500",
+ "500"
+ ],
+ "machine_max_acceleration_retracting": [
+ "1000",
+ "1000"
+ ],
+ "machine_max_acceleration_travel": [
+ "500",
+ "500"
+ ],
+ "machine_max_acceleration_x": [
+ "500",
+ "500"
+ ],
+ "machine_max_acceleration_y": [
+ "500",
+ "500"
+ ],
+ "machine_max_acceleration_z": [
+ "100",
+ "100"
+ ],
+ "machine_max_speed_e": [
+ "60",
+ "60"
+ ],
+ "machine_max_speed_x": [
+ "500",
+ "500"
+ ],
+ "machine_max_speed_y": [
+ "500",
+ "500"
+ ],
+ "machine_max_speed_z": [
+ "10",
+ "10"
+ ],
+ "machine_max_jerk_e": [
+ "5",
+ "5"
+ ],
+ "machine_max_jerk_x": [
+ "8",
+ "8"
+ ],
+ "machine_max_jerk_y": [
+ "8",
+ "8"
+ ],
+ "machine_max_jerk_z": [
+ "0.4",
+ "0.4"
+ ],
+ "machine_min_extruding_rate": [
+ "0",
+ "0"
+ ],
+ "machine_min_travel_rate": [
+ "0",
+ "0"
+ ],
+ "max_layer_height": [
+ "0.32"
+ ],
+ "min_layer_height": [
+ "0.08"
+ ],
+ "printable_height": "250",
+ "extruder_clearance_radius": "47",
+ "extruder_clearance_height_to_rod": "34",
+ "extruder_clearance_height_to_lid": "34",
+ "printer_settings_id": "",
+ "printer_technology": "FFF",
+ "printer_variant": "0.4",
+ "retraction_minimum_travel": [
+ "2"
+ ],
+ "retract_before_wipe": [
+ "70%"
+ ],
+ "retract_when_changing_layer": [
+ "1"
+ ],
+ "retraction_length": [
+ "5"
+ ],
+ "retract_length_toolchange": [
+ "2"
+ ],
+ "z_hop": [
+ "0.4"
+ ],
+ "retract_restart_extra": [
+ "0"
+ ],
+ "retract_restart_extra_toolchange": [
+ "0"
+ ],
+ "retraction_speed": [
+ "60"
+ ],
+ "deretraction_speed": [
+ "40"
+ ],
+ "silent_mode": "0",
+ "single_extruder_multi_material": "1",
+ "change_filament_gcode": "",
+ "machine_pause_gcode": "M25",
+ "wipe": [
+ "1"
+ ],
+ "default_filament_profile": [
+ "Flashforge Generic PLA"
+ ],
+ "default_print_profile": "0.20mm Standard @Chuanying X1",
+ "bed_exclude_area": [
+ "0x0"
+ ],
+ "machine_start_gcode": "G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM140 S[bed_temperature_initial_layer] ; set final bed temp\nM104 S150 ; set temporary nozzle temp to prevent oozing during homing\nG4 S10 ; allow partial nozzle warmup\nG28 ; home all axis\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[nozzle_temperature_initial_layer] ; set final nozzle temp\nM190 S[bed_temperature_initial_layer] ; wait for bed temp to stabilize\nM109 S[nozzle_temperature_initial_layer] ; wait for nozzle temp to stabilize\nG1 Z0.28 F240\nG92 E0\nG1 Y140 E10 F1500 ; prime the nozzle\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E10 F1200 ; prime the nozzle\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < printable_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "layer_change_gcode": "",
+ "scan_first_layer": "0",
+ "nozzle_type": "undefine",
+ "auxiliary_fan": "0"
+}
diff --git a/resources/profiles/Chuanying/machine/fdm_klipper_common.json b/resources/profiles/Chuanying/machine/fdm_klipper_common.json
new file mode 100644
index 0000000000..673135bc4f
--- /dev/null
+++ b/resources/profiles/Chuanying/machine/fdm_klipper_common.json
@@ -0,0 +1,141 @@
+{
+ "type": "machine",
+ "name": "fdm_klipper_common",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_machine_common",
+ "gcode_flavor": "klipper",
+ "machine_max_acceleration_e": [
+ "20000",
+ "20000"
+ ],
+ "machine_max_acceleration_extruding": [
+ "50000",
+ "50000"
+ ],
+ "machine_max_acceleration_retracting": [
+ "10000",
+ "10000"
+ ],
+ "machine_max_acceleration_travel": [
+ "50000",
+ "50000"
+ ],
+ "machine_max_acceleration_x": [
+ "50000",
+ "50000"
+ ],
+ "machine_max_acceleration_y": [
+ "50000",
+ "50000"
+ ],
+ "machine_max_acceleration_z": [
+ "1000",
+ "500"
+ ],
+ "machine_max_speed_e": [
+ "100",
+ "100"
+ ],
+ "machine_max_speed_x": [
+ "2000",
+ "2000"
+ ],
+ "machine_max_speed_y": [
+ "2000",
+ "2000"
+ ],
+ "machine_max_speed_z": [
+ "15",
+ "15"
+ ],
+ "machine_max_jerk_e": [
+ "0",
+ "0"
+ ],
+ "machine_max_jerk_x": [
+ "0",
+ "0"
+ ],
+ "machine_max_jerk_y": [
+ "0",
+ "0"
+ ],
+ "machine_max_jerk_z": [
+ "0",
+ "0"
+ ],
+ "machine_min_extruding_rate": [
+ "0",
+ "0"
+ ],
+ "machine_min_travel_rate": [
+ "0",
+ "0"
+ ],
+ "max_layer_height": [
+ "0.32"
+ ],
+ "min_layer_height": [
+ "0.08"
+ ],
+ "printable_height": "200",
+ "extruder_clearance_radius": "45",
+ "extruder_clearance_height_to_rod": "36",
+ "extruder_clearance_height_to_lid": "140",
+ "printer_settings_id": "",
+ "printer_technology": "FFF",
+ "printer_variant": "0.4",
+ "retraction_minimum_travel": [
+ "1"
+ ],
+ "retract_before_wipe": [
+ "70%"
+ ],
+ "retract_when_changing_layer": [
+ "1"
+ ],
+ "retraction_length": [
+ "0.5"
+ ],
+ "retract_length_toolchange": [
+ "2"
+ ],
+ "z_hop": [
+ "0"
+ ],
+ "retract_restart_extra": [
+ "0"
+ ],
+ "retract_restart_extra_toolchange": [
+ "0"
+ ],
+ "retraction_speed": [
+ "30"
+ ],
+ "deretraction_speed": [
+ "80"
+ ],
+ "z_lift_type": "NormalLift",
+ "silent_mode": "0",
+ "single_extruder_multi_material": "1",
+ "change_filament_gcode": "",
+ "machine_pause_gcode": "M25",
+ "wipe": [
+ "1"
+ ],
+ "default_filament_profile": [
+ "Flashforge Generic ABS"
+ ],
+ "default_print_profile": "0.20mm Standard @Chuanying X1",
+ "bed_exclude_area": [
+ "0x0"
+ ],
+ "machine_start_gcode": "BED_MESH_PROFILE LOAD=default \nM190 S[bed_temperature_initial_layer_single] ;set bed temp \nG28; \nG1 X2 Y2 Z0 F9000 ; move to corner \nM109 S[nozzle_temperature_initial_layer] ; set nozzle temp \nG1 Z0.2 F300 ; raise nozzle to 0.2\nG92 E0.0 ; reset extruder distance position\nG1 X60.0 E9.0 F1000.0 ; intro line\nG1 X100.0 E21.5 F1000.0 ; intro line\nG0 Z2\n\nG92 E0.0 ; reset extruder distance position",
+ "machine_end_gcode": "G91; //rel pos\nG1 E-5 f2000\nG1 Z10 F600 ; lift nozzle 10mm/s\nG1 E-29 f600\nM104 S0\nM140 S0 ; turn off bed\n\nM107\nG90\nG0 X117 Y200 F6000; move to back\nM84 ; disable motors\nDSLR_SNAPSHOT\nRSCS_off\n\nexhaustfan_on\nTIMELAPSE_RENDER\n\nG4 P60000 ; //Dwell for 1min\nM107 \nexhaustfan_off\n\nG4 P120000\n\npower_off ; //this is with moonraker",
+ "layer_change_gcode": ";DSLR_SNAPSHOT\nTIMELAPSE_TAKE_FRAME",
+ "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n",
+ "scan_first_layer": "0",
+ "nozzle_type": "undefine",
+ "auxiliary_fan": "0"
+}
diff --git a/resources/profiles/Chuanying/machine/fdm_machine_common.json b/resources/profiles/Chuanying/machine/fdm_machine_common.json
new file mode 100644
index 0000000000..540d0f62cc
--- /dev/null
+++ b/resources/profiles/Chuanying/machine/fdm_machine_common.json
@@ -0,0 +1,118 @@
+{
+ "type": "machine",
+ "name": "fdm_machine_common",
+ "from": "system",
+ "instantiation": "false",
+ "printer_technology": "FFF",
+ "deretraction_speed": [
+ "40"
+ ],
+ "extruder_colour": [
+ "#FCE94F"
+ ],
+ "extruder_offset": [
+ "0x0"
+ ],
+ "gcode_flavor": "klipper",
+ "silent_mode": "0",
+ "machine_max_acceleration_e": [
+ "5000"
+ ],
+ "machine_max_acceleration_extruding": [
+ "500"
+ ],
+ "machine_max_acceleration_retracting": [
+ "1000"
+ ],
+ "machine_max_acceleration_x": [
+ "500"
+ ],
+ "machine_max_acceleration_y": [
+ "500"
+ ],
+ "machine_max_acceleration_z": [
+ "100"
+ ],
+ "machine_max_speed_e": [
+ "60"
+ ],
+ "machine_max_speed_x": [
+ "500"
+ ],
+ "machine_max_speed_y": [
+ "500"
+ ],
+ "machine_max_speed_z": [
+ "10"
+ ],
+ "machine_max_jerk_e": [
+ "5"
+ ],
+ "machine_max_jerk_x": [
+ "8"
+ ],
+ "machine_max_jerk_y": [
+ "8"
+ ],
+ "machine_max_jerk_z": [
+ "0.4"
+ ],
+ "machine_min_extruding_rate": [
+ "0"
+ ],
+ "machine_min_travel_rate": [
+ "0"
+ ],
+ "max_layer_height": [
+ "0.32"
+ ],
+ "min_layer_height": [
+ "0.08"
+ ],
+ "printable_height": "250",
+ "extruder_clearance_radius": "65",
+ "extruder_clearance_height_to_rod": "36",
+ "extruder_clearance_height_to_lid": "140",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "printer_settings_id": "",
+ "printer_variant": "0.4",
+ "retraction_minimum_travel": [
+ "2"
+ ],
+ "retract_before_wipe": [
+ "70%"
+ ],
+ "retract_when_changing_layer": [
+ "1"
+ ],
+ "retraction_length": [
+ "5"
+ ],
+ "retract_length_toolchange": [
+ "1"
+ ],
+ "z_hop": [
+ "0"
+ ],
+ "retract_restart_extra": [
+ "0"
+ ],
+ "retract_restart_extra_toolchange": [
+ "0"
+ ],
+ "retraction_speed": [
+ "60"
+ ],
+ "single_extruder_multi_material": "1",
+ "change_filament_gcode": "",
+ "wipe": [
+ "1"
+ ],
+ "z_lift_type": "NormalLift",
+ "default_print_profile": "0.20mm Standard @Chuanying X1",
+ "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n",
+ "machine_start_gcode": "",
+ "machine_end_gcode": ""
+}
diff --git a/resources/profiles/Chuanying/machine/fdm_x1_common.json b/resources/profiles/Chuanying/machine/fdm_x1_common.json
new file mode 100644
index 0000000000..d90c39cff5
--- /dev/null
+++ b/resources/profiles/Chuanying/machine/fdm_x1_common.json
@@ -0,0 +1,57 @@
+{
+ "type": "machine",
+ "name": "fdm_x1_common",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_chuanying_common",
+ "gcode_flavor": "klipper",
+ "printable_area": [
+ "-110x-110",
+ "110x-110",
+ "110x110",
+ "-110x110"
+ ],
+ "printable_height": "220",
+ "auxiliary_fan": "1",
+ "machine_max_acceleration_e": [ "5000", "5000" ],
+ "machine_max_acceleration_extruding": [ "20000", "20000" ],
+ "machine_max_acceleration_retracting": [ "5000", "5000" ],
+ "machine_max_acceleration_travel": [ "20000", "20000" ],
+ "machine_max_acceleration_x": [ "20000", "20000" ],
+ "machine_max_acceleration_y": [ "20000", "20000" ],
+ "machine_max_acceleration_z": [ "500", "500" ],
+ "machine_max_speed_e": [ "30", "30" ],
+ "machine_max_speed_x": [ "600", "600" ],
+ "machine_max_speed_y": [ "600", "600" ],
+ "machine_max_speed_z": [ "20", "20" ],
+ "machine_max_jerk_e": [ "2.5", "2.5" ],
+ "machine_max_jerk_x": [ "9", "9" ],
+ "machine_max_jerk_y": [ "9", "9" ],
+ "machine_max_jerk_z": [ "3", "3" ],
+ "printer_settings_id": "Chuanying",
+ "retraction_minimum_travel": [ "1" ],
+ "retract_before_wipe": [ "100%" ],
+ "retract_length_toolchange": [ "2" ],
+ "deretraction_speed": [ "35" ],
+ "z_hop": [ "0.4" ],
+ "single_extruder_multi_material": "0",
+ "change_filament_gcode": "",
+ "machine_pause_gcode": "M25",
+ "default_filament_profile": [ "Flashforge Generic PLA" ],
+ "machine_start_gcode": "M190 S[bed_temperature_initial_layer_single]\nM104 S[nozzle_temperature_initial_layer]\nG90\nM83\nG1 Z5 F6000\nG1 E-0.2 F800\nG1 X110 Y-110 F6000\nG1 E2 F800\nG1 Y-110 X55 Z0.25 F4800\nG1 X-55 E8 F2400\nG1 Y-109.6 F2400\nG1 X55 E5 F2400\nG1 Y-110 X55 Z0.45 F4800\nG1 X-55 E8 F2400\nG1 Y-109.6 F2400\nG1 X55 E5 F2400\nG92 E0",
+ "machine_end_gcode": "G1 E-3 F3600\nG0 X50 Y50 F30000\nM104 S0 ; turn off temperature",
+ "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]",
+ "scan_first_layer": "0",
+ "thumbnails": [
+ "140x110"
+ ],
+ "use_relative_e_distances": "1",
+ "z_hop_types": "Auto Lift",
+ "retraction_speed": [ "35" ],
+ "wipe_distance": "2",
+ "extruder_clearance_radius": [ "76" ],
+ "extruder_clearance_height_to_rod": [ "27" ],
+ "extruder_clearance_height_to_lid": [ "150" ],
+ "version": "1.8.0.0"
+}
diff --git a/resources/profiles/Chuanying/process/0.12mm Standard @Chuanying X1 0.25 Nozzle.json b/resources/profiles/Chuanying/process/0.12mm Standard @Chuanying X1 0.25 Nozzle.json
new file mode 100644
index 0000000000..c085d5f965
--- /dev/null
+++ b/resources/profiles/Chuanying/process/0.12mm Standard @Chuanying X1 0.25 Nozzle.json
@@ -0,0 +1,45 @@
+{
+ "type": "process",
+ "name": "0.12mm Standard @Chuanying X1 0.25 Nozzle",
+ "inherits": "0.20mm Standard @Chuanying X1 0.4 Nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Chuanying X1 0.25 Nozzle"
+ ],
+ "setting_id": "GP012",
+ "print_settings_id": "0.12mm Standard @Chuanying X1 0.25 Nozzle",
+ "bottom_shell_layers": "4",
+ "brim_width": "3",
+ "elefant_foot_compensation": "0",
+ "gap_infill_speed": "150",
+ "initial_layer_acceleration": "1000",
+ "initial_layer_infill_speed": "70",
+ "initial_layer_line_width": "0.3",
+ "initial_layer_print_height": "0.15",
+ "initial_layer_speed": "35",
+ "inner_wall_line_width": "0.3",
+ "inner_wall_speed": "150",
+ "internal_solid_infill_line_width": "0.3",
+ "internal_solid_infill_speed": "150",
+ "layer_height": "0.12",
+ "line_width": "0.25",
+ "outer_wall_line_width": "0.25",
+ "outer_wall_speed": "60",
+ "skirt_loops": "0",
+ "sparse_infill_line_width": "0.3",
+ "sparse_infill_speed": "100",
+ "support_bottom_z_distance": "0.12",
+ "support_interface_spacing": "0.25",
+ "support_line_width": "0.25",
+ "support_object_xy_distance": "0.2",
+ "support_speed": "80",
+ "support_top_z_distance": "0.12",
+ "top_shell_layers": "7",
+ "top_shell_thickness": "0.8",
+ "top_surface_line_width": "0.3",
+ "top_surface_speed": "150",
+ "tree_support_tip_diameter": "1.2",
+ "version": "1.8.0.0",
+ "wipe_speed": "80%"
+}
\ No newline at end of file
diff --git a/resources/profiles/Chuanying/process/0.20mm Standard @Chuanying X1 0.4 Nozzle.json b/resources/profiles/Chuanying/process/0.20mm Standard @Chuanying X1 0.4 Nozzle.json
new file mode 100644
index 0000000000..ca2824c639
--- /dev/null
+++ b/resources/profiles/Chuanying/process/0.20mm Standard @Chuanying X1 0.4 Nozzle.json
@@ -0,0 +1,13 @@
+{
+ "type": "process",
+ "name": "0.20mm Standard @Chuanying X1 0.4 Nozzle",
+ "inherits": "fdm_process_chuanying_0.20",
+ "from": "system",
+ "setting_id": "GP001",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Chuanying X1 0.4 Nozzle"
+ ],
+ "only_one_wall_top": "0",
+ "infill_wall_overlap": "50%"
+}
\ No newline at end of file
diff --git a/resources/profiles/Chuanying/process/0.30mm Standard @Chuanying X1 0.6 Nozzle.json b/resources/profiles/Chuanying/process/0.30mm Standard @Chuanying X1 0.6 Nozzle.json
new file mode 100644
index 0000000000..a344a7a1ac
--- /dev/null
+++ b/resources/profiles/Chuanying/process/0.30mm Standard @Chuanying X1 0.6 Nozzle.json
@@ -0,0 +1,13 @@
+{
+ "type": "process",
+ "name": "0.30mm Standard @Chuanying X1 0.6 Nozzle",
+ "inherits": "fdm_process_chuanying_0.30",
+ "from": "system",
+ "setting_id": "GP003",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Chuanying X1 0.6 Nozzle"
+ ],
+ "only_one_wall_top": "0",
+ "infill_wall_overlap": "50%"
+}
\ No newline at end of file
diff --git a/resources/profiles/Chuanying/process/0.40mm Standard @Chuanying X1 0.8 Nozzle.json b/resources/profiles/Chuanying/process/0.40mm Standard @Chuanying X1 0.8 Nozzle.json
new file mode 100644
index 0000000000..7d6225a800
--- /dev/null
+++ b/resources/profiles/Chuanying/process/0.40mm Standard @Chuanying X1 0.8 Nozzle.json
@@ -0,0 +1,36 @@
+{
+ "type": "process",
+ "name": "0.40mm Standard @Chuanying X1 0.8 Nozzle",
+ "inherits": "0.30mm Standard @Chuanying X1 0.6 Nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Chuanying X1 0.8 Nozzle"
+ ],
+ "setting_id": "GP002",
+ "print_settings_id": "0.40mm Standard @Chuanying X1 0.8 Nozzle",
+ "elefant_foot_compensation": "0",
+ "initial_layer_infill_speed": "55",
+ "initial_layer_line_width": "0.85",
+ "initial_layer_speed": "35",
+ "inner_wall_line_width": "0.85",
+ "internal_solid_infill_acceleration": "5000",
+ "internal_solid_infill_line_width": "0.82",
+ "layer_height": "0.4",
+ "line_width": "0.82",
+ "outer_wall_line_width": "0.82",
+ "skirt_loops": "0",
+ "sparse_infill_line_width": "0.85",
+ "support_bottom_interface_spacing": "0.4",
+ "support_bottom_z_distance": "0.22",
+ "support_interface_spacing": "0.4",
+ "support_line_width": "0.82",
+ "support_object_xy_distance": "0.4",
+ "support_top_z_distance": "0.22",
+ "top_shell_layers": "4",
+ "top_shell_thickness": "0.8",
+ "top_surface_line_width": "0.82",
+ "tree_support_tip_diameter": "1.2",
+ "version": "1.8.0.0",
+ "wipe_speed": "60%"
+}
\ No newline at end of file
diff --git a/resources/profiles/Chuanying/process/fdm_process_chuanying_0.20.json b/resources/profiles/Chuanying/process/fdm_process_chuanying_0.20.json
new file mode 100644
index 0000000000..a4602e48ff
--- /dev/null
+++ b/resources/profiles/Chuanying/process/fdm_process_chuanying_0.20.json
@@ -0,0 +1,22 @@
+{
+ "type": "process",
+ "name": "fdm_process_chuanying_0.20",
+ "inherits": "fdm_process_chuanying_common",
+ "from": "system",
+ "instantiation": "false",
+ "initial_layer_infill_speed": "80",
+ "outer_wall_speed": "200",
+ "inner_wall_speed": "300",
+ "internal_solid_infill_speed": "250",
+ "gap_infill_speed": "200",
+ "sparse_infill_speed": "270",
+ "small_perimeter_speed": "50%",
+ "overhang_speed_classic": "0",
+ "internal_bridge_speed": "50",
+ "internal_solid_infill_acceleration": "7000",
+ "accel_to_decel_enable": "0",
+ "filter_out_gap_fill": "0.5",
+ "gcode_label_objects": "0",
+ "slow_down_layers": "1",
+ "wipe_speed": "200"
+}
\ No newline at end of file
diff --git a/resources/profiles/Chuanying/process/fdm_process_chuanying_0.30.json b/resources/profiles/Chuanying/process/fdm_process_chuanying_0.30.json
new file mode 100644
index 0000000000..e052ec84fc
--- /dev/null
+++ b/resources/profiles/Chuanying/process/fdm_process_chuanying_0.30.json
@@ -0,0 +1,30 @@
+{
+ "type": "process",
+ "name": "fdm_process_chuanying_0.30",
+ "inherits": "fdm_process_chuanying_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.3",
+ "initial_layer_print_height": "0.3",
+ "line_width": "0.62",
+ "outer_wall_line_width": "0.62",
+ "initial_layer_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "inner_wall_line_width": "0.62",
+ "internal_solid_infill_line_width": "0.62",
+ "support_line_width": "0.62",
+ "top_surface_line_width": "0.62",
+ "initial_layer_speed": "45",
+ "inner_wall_speed": "150",
+ "top_surface_speed": "120",
+ "gap_infill_speed": "150",
+ "small_perimeter_speed": "50%",
+ "overhang_speed_classic": "0",
+ "internal_bridge_speed": "50",
+ "internal_solid_infill_acceleration": "7000",
+ "accel_to_decel_enable": "0",
+ "filter_out_gap_fill": "0.5",
+ "gcode_label_objects": "0",
+ "slow_down_layers": "1",
+ "wipe_speed": "200"
+}
\ No newline at end of file
diff --git a/resources/profiles/Chuanying/process/fdm_process_chuanying_common.json b/resources/profiles/Chuanying/process/fdm_process_chuanying_common.json
new file mode 100644
index 0000000000..cb58a9812e
--- /dev/null
+++ b/resources/profiles/Chuanying/process/fdm_process_chuanying_common.json
@@ -0,0 +1,72 @@
+{
+ "type": "process",
+ "name": "fdm_process_chuanying_common",
+ "inherits": "fdm_process_common",
+ "from": "system",
+ "instantiation": "false",
+ "max_travel_detour_distance": "0",
+ "bottom_surface_pattern": "monotonic",
+ "bottom_shell_layers": "3",
+ "bottom_shell_thickness": "0",
+ "bridge_flow": "1",
+ "brim_object_gap": "0.1",
+ "compatible_printers_condition": "",
+ "draft_shield": "disabled",
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "1",
+ "outer_wall_acceleration": "5000",
+ "wall_infill_order": "inner wall/outer wall/infill",
+ "line_width": "0.42",
+ "internal_bridge_support_thickness": "0.8",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "10000",
+ "inner_wall_acceleration": "5000",
+ "initial_layer_line_width": "0.50",
+ "sparse_infill_speed": "100",
+ "ironing_flow": "15%",
+ "ironing_spacing": "0.1",
+ "ironing_speed": "15",
+ "ironing_type": "no ironing",
+ "layer_height": "0.2",
+ "reduce_infill_retraction": "1",
+ "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode",
+ "detect_overhang_wall": "1",
+ "overhang_1_4_speed": "0",
+ "overhang_2_4_speed": "40",
+ "overhang_3_4_speed": "20",
+ "overhang_4_4_speed": "10",
+ "only_one_wall_top": "1",
+ "seam_position": "aligned",
+ "skirt_height": "1",
+ "skirt_loops": "2",
+ "brim_type": "no_brim",
+ "exclude_object": "0",
+ "wall_generator": "classic",
+ "minimum_sparse_infill_area": "15",
+ "internal_solid_infill_line_width": "0.42",
+ "resolution": "0.012",
+ "support_type": "normal(auto)",
+ "support_style": "default",
+ "support_top_z_distance": "0.18",
+ "support_bottom_z_distance": "0.18",
+ "support_interface_bottom_layers": "2",
+ "support_interface_spacing": "0.5",
+ "support_base_pattern": "rectilinear",
+ "support_base_pattern_spacing": "2.5",
+ "support_speed": "150",
+ "support_threshold_angle": "30",
+ "support_object_xy_distance": "0.3",
+ "tree_support_branch_angle": "45",
+ "tree_support_wall_count": "0",
+ "top_surface_pattern": "monotonicline",
+ "top_surface_acceleration": "2000",
+ "top_shell_layers": "5",
+ "top_shell_thickness": "1",
+ "initial_layer_speed": "50",
+ "initial_layer_infill_speed": "65",
+ "internal_solid_infill_speed": "150",
+ "top_surface_speed": "200",
+ "travel_speed": "500",
+ "wipe_tower_no_sparse_layers": "0",
+ "compatible_printers": []
+}
\ No newline at end of file
diff --git a/resources/profiles/Chuanying/process/fdm_process_common.json b/resources/profiles/Chuanying/process/fdm_process_common.json
new file mode 100644
index 0000000000..a9a08f371a
--- /dev/null
+++ b/resources/profiles/Chuanying/process/fdm_process_common.json
@@ -0,0 +1,71 @@
+{
+ "type": "process",
+ "name": "fdm_process_common",
+ "from": "system",
+ "instantiation": "false",
+ "adaptive_layer_height": "0",
+ "reduce_crossing_wall": "0",
+ "bridge_flow": "0.95",
+ "bridge_speed": "25",
+ "brim_width": "5",
+ "print_sequence": "by layer",
+ "default_acceleration": "10000",
+ "bridge_no_support": "0",
+ "elefant_foot_compensation": "0.1",
+ "outer_wall_line_width": "0.42",
+ "outer_wall_speed": "120",
+ "line_width": "0.45",
+ "infill_direction": "45",
+ "sparse_infill_density": "15%",
+ "sparse_infill_pattern": "crosshatch",
+ "initial_layer_line_width": "0.42",
+ "initial_layer_print_height": "0.2",
+ "initial_layer_speed": "20",
+ "gap_infill_speed": "30",
+ "infill_combination": "0",
+ "sparse_infill_line_width": "0.45",
+ "infill_wall_overlap": "15%",
+ "sparse_infill_speed": "50",
+ "interface_shells": "0",
+ "detect_overhang_wall": "0",
+ "reduce_infill_retraction": "0",
+ "filename_format": "{input_filename_base}.gcode",
+ "wall_loops": "2",
+ "inner_wall_line_width": "0.45",
+ "inner_wall_speed": "40",
+ "print_settings_id": "",
+ "raft_layers": "0",
+ "seam_position": "nearest",
+ "skirt_distance": "2",
+ "skirt_height": "2",
+ "minimum_sparse_infill_area": "0",
+ "internal_solid_infill_line_width": "0.45",
+ "internal_solid_infill_speed": "40",
+ "spiral_mode": "0",
+ "standby_temperature_delta": "-5",
+ "enable_support": "0",
+ "support_filament": "0",
+ "support_line_width": "0.42",
+ "support_interface_filament": "0",
+ "support_on_build_plate_only": "0",
+ "support_top_z_distance": "0.15",
+ "support_interface_loop_pattern": "0",
+ "support_interface_top_layers": "2",
+ "support_interface_spacing": "0",
+ "support_interface_speed": "80",
+ "support_interface_pattern": "auto",
+ "support_base_pattern": "default",
+ "support_base_pattern_spacing": "2",
+ "support_speed": "40",
+ "support_threshold_angle": "30",
+ "support_object_xy_distance": "0.5",
+ "detect_thin_wall": "0",
+ "top_surface_line_width": "0.42",
+ "top_surface_speed": "30",
+ "travel_speed": "400",
+ "enable_prime_tower": "0",
+ "prime_tower_width": "60",
+ "xy_hole_compensation": "0",
+ "xy_contour_compensation": "0",
+ "compatible_printers": []
+}
\ No newline at end of file
diff --git a/resources/profiles/Comgrow.json b/resources/profiles/Comgrow.json
index dd962a7e20..fe962fd705 100644
--- a/resources/profiles/Comgrow.json
+++ b/resources/profiles/Comgrow.json
@@ -1,6 +1,6 @@
{
"name": "Comgrow",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Comgrow configurations",
"machine_model_list": [
diff --git a/resources/profiles/Creality.json b/resources/profiles/Creality.json
index a175399367..bf28a04f94 100644
--- a/resources/profiles/Creality.json
+++ b/resources/profiles/Creality.json
@@ -1,6 +1,6 @@
{
"name": "Creality",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Creality configurations",
"machine_model_list": [
diff --git a/resources/profiles/Creality/Creality Ender-3 S1 Plus_cover.png b/resources/profiles/Creality/Creality Ender-3 S1 Plus_cover.png
index 65fc0b6b12..2f3cd3a71c 100644
Binary files a/resources/profiles/Creality/Creality Ender-3 S1 Plus_cover.png and b/resources/profiles/Creality/Creality Ender-3 S1 Plus_cover.png differ
diff --git a/resources/profiles/Creality/creality_cr10se_buildplate_model.stl b/resources/profiles/Creality/creality_cr10se_buildplate_model.stl
index 5ea81d6e08..4adf120a87 100644
Binary files a/resources/profiles/Creality/creality_cr10se_buildplate_model.stl and b/resources/profiles/Creality/creality_cr10se_buildplate_model.stl differ
diff --git a/resources/profiles/Creality/creality_ender3s1plus_buildplate_model.stl b/resources/profiles/Creality/creality_ender3s1plus_buildplate_model.stl
index f2baabf4ba..73adc1efc6 100644
Binary files a/resources/profiles/Creality/creality_ender3s1plus_buildplate_model.stl and b/resources/profiles/Creality/creality_ender3s1plus_buildplate_model.stl differ
diff --git a/resources/profiles/Creality/creality_ender3s1pro_buildplate_model.stl b/resources/profiles/Creality/creality_ender3s1pro_buildplate_model.stl
index a3837d2b59..b44c071e0c 100644
Binary files a/resources/profiles/Creality/creality_ender3s1pro_buildplate_model.stl and b/resources/profiles/Creality/creality_ender3s1pro_buildplate_model.stl differ
diff --git a/resources/profiles/Creality/machine/Creality Ender-3 V3 0.4 nozzle.json b/resources/profiles/Creality/machine/Creality Ender-3 V3 0.4 nozzle.json
index 4eac0521a5..4edd30d70c 100644
--- a/resources/profiles/Creality/machine/Creality Ender-3 V3 0.4 nozzle.json
+++ b/resources/profiles/Creality/machine/Creality Ender-3 V3 0.4 nozzle.json
@@ -33,8 +33,8 @@
"20000"
],
"machine_max_acceleration_retracting": [
- "5000",
- "5000"
+ "6000",
+ "6000"
],
"machine_max_acceleration_travel": [
"20000",
@@ -45,57 +45,57 @@
"20000"
],
"machine_max_acceleration_y": [
- "20000",
- "20000"
+ "5000",
+ "5000"
],
"machine_max_acceleration_z": [
- "500",
- "500"
+ "20000",
+ "20000"
],
"machine_max_speed_e": [
"100",
"100"
],
"machine_max_speed_x": [
- "800",
- "800"
+ "600",
+ "600"
],
"machine_max_speed_y": [
- "800",
- "800"
+ "600",
+ "600"
],
"machine_max_speed_z": [
- "30",
- "30"
+ "500",
+ "500"
],
"machine_max_jerk_e": [
- "2.5",
- "2.5"
+ "10",
+ "10"
],
"machine_max_jerk_x": [
- "12",
- "12"
+ "20",
+ "20"
],
"machine_max_jerk_y": [
- "12",
- "12"
+ "10",
+ "10"
],
"machine_max_jerk_z": [
- "2",
- "2"
+ "20",
+ "20"
],
"max_layer_height": [
- "0.3"
+ "0.35"
],
"min_layer_height": [
- "0.08"
+ "0.1"
],
"printer_settings_id": "Creality",
"retraction_minimum_travel": [
- "2"
+ "1"
],
"retract_before_wipe": [
- "0%"
+ "70%"
],
"retraction_length": [
"0.6"
@@ -109,11 +109,14 @@
"deretraction_speed": [
"40"
],
- "extruder_clearance_height_to_lid": "101",
- "extruder_clearance_height_to_rod": "45",
- "extruder_clearance_radius": "45",
+ "extruder_clearance_height_to_lid": "250",
+ "extruder_clearance_height_to_rod": "14",
+ "extruder_clearance_radius": "70",
"z_hop": [
- "0.12"
+ "0.2"
+ ],
+ "z_hop_types": [
+ "Auto Lift"
],
"wipe_distance": [
"2"
@@ -129,6 +132,6 @@
"machine_end_gcode": "END_PRINT",
"scan_first_layer": "0",
"thumbnails": [
- "320x320"
+ "96x96/PNG, 300x300/PNG"
]
}
\ No newline at end of file
diff --git a/resources/profiles/Creality/machine/Creality Ender-3 V3 0.6 nozzle.json b/resources/profiles/Creality/machine/Creality Ender-3 V3 0.6 nozzle.json
index 7f4795ee2a..3e15a76a5a 100644
--- a/resources/profiles/Creality/machine/Creality Ender-3 V3 0.6 nozzle.json
+++ b/resources/profiles/Creality/machine/Creality Ender-3 V3 0.6 nozzle.json
@@ -33,8 +33,8 @@
"20000"
],
"machine_max_acceleration_retracting": [
- "5000",
- "5000"
+ "6000",
+ "6000"
],
"machine_max_acceleration_travel": [
"20000",
@@ -45,57 +45,57 @@
"20000"
],
"machine_max_acceleration_y": [
- "20000",
- "20000"
+ "5000",
+ "5000"
],
"machine_max_acceleration_z": [
- "500",
- "500"
+ "20000",
+ "20000"
],
"machine_max_speed_e": [
"100",
"100"
],
"machine_max_speed_x": [
- "800",
- "800"
+ "600",
+ "600"
],
"machine_max_speed_y": [
- "800",
- "800"
+ "600",
+ "600"
],
"machine_max_speed_z": [
- "30",
- "30"
+ "500",
+ "500"
],
"machine_max_jerk_e": [
- "2.5",
- "2.5"
+ "10",
+ "10"
],
"machine_max_jerk_x": [
- "12",
- "12"
+ "20",
+ "20"
],
"machine_max_jerk_y": [
- "12",
- "12"
+ "10",
+ "10"
],
"machine_max_jerk_z": [
- "2",
- "2"
+ "20",
+ "20"
],
"max_layer_height": [
- "0.3"
+ "0.35"
],
"min_layer_height": [
- "0.08"
+ "0.1"
],
"printer_settings_id": "Creality",
"retraction_minimum_travel": [
- "2"
+ "1"
],
"retract_before_wipe": [
- "0%"
+ "70%"
],
"retraction_length": [
"0.6"
@@ -109,11 +109,14 @@
"deretraction_speed": [
"40"
],
- "extruder_clearance_height_to_lid": "101",
- "extruder_clearance_height_to_rod": "45",
- "extruder_clearance_radius": "45",
+ "extruder_clearance_height_to_lid": "250",
+ "extruder_clearance_height_to_rod": "14",
+ "extruder_clearance_radius": "70",
"z_hop": [
- "0.12"
+ "0.2"
+ ],
+ "z_hop_types": [
+ "Auto Lift"
],
"wipe_distance": [
"2"
@@ -129,6 +132,6 @@
"machine_end_gcode": "END_PRINT",
"scan_first_layer": "0",
"thumbnails": [
- "320x320"
+ "96x96/PNG, 300x300/PNG"
]
}
\ No newline at end of file
diff --git a/resources/profiles/Creality/machine/Creality Ender-3 V3 KE 0.4 nozzle.json b/resources/profiles/Creality/machine/Creality Ender-3 V3 KE 0.4 nozzle.json
index df750e458d..d2253ed382 100644
--- a/resources/profiles/Creality/machine/Creality Ender-3 V3 KE 0.4 nozzle.json
+++ b/resources/profiles/Creality/machine/Creality Ender-3 V3 KE 0.4 nozzle.json
@@ -114,7 +114,7 @@
],
"single_extruder_multi_material": "1",
"manual_filament_change": "1",
- "change_filament_gcode": "PAUSE",
+ "change_filament_gcode": "M600",
"machine_pause_gcode": "PAUSE",
"default_filament_profile": [
"Creality Generic PLA @Ender-3V3-all"
diff --git a/resources/profiles/Creality/process/0.12mm Fine @Creality Ender3V3KE.json b/resources/profiles/Creality/process/0.12mm Fine @Creality Ender3V3KE.json
index 874f19f3ce..8e3b8b6b27 100644
--- a/resources/profiles/Creality/process/0.12mm Fine @Creality Ender3V3KE.json
+++ b/resources/profiles/Creality/process/0.12mm Fine @Creality Ender3V3KE.json
@@ -12,7 +12,7 @@
"bottom_surface_pattern": "monotonic",
"bottom_shell_layers": "5",
"bottom_shell_thickness": "0",
- "bridge_flow": "0.95",
+ "bridge_flow": "1",
"bridge_speed": "65",
"brim_type": "no_brim",
"brim_width": "5",
@@ -23,17 +23,17 @@
"top_surface_acceleration": "5000",
"bridge_no_support": "0",
"draft_shield": "disabled",
- "elefant_foot_compensation": "0",
+ "elefant_foot_compensation": "0.05",
"outer_wall_line_width": "0.42",
"wall_infill_order": "inner wall/outer wall/infill",
- "line_width": "0.45",
+ "line_width": "0.42",
"infill_direction": "45",
"sparse_infill_density": "15%",
"sparse_infill_pattern": "crosshatch",
"initial_layer_acceleration": "1000",
"travel_acceleration": "5000",
"inner_wall_acceleration": "5000",
- "outer_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
"initial_layer_line_width": "0.5",
"initial_layer_print_height": "0.2",
"infill_combination": "1",
@@ -60,7 +60,7 @@
"skirt_height": "2",
"skirt_loops": "0",
"minimum_sparse_infill_area": "10",
- "internal_solid_infill_line_width": "0.42",
+ "internal_solid_infill_line_width": "0.45",
"spiral_mode": "0",
"standby_temperature_delta": "-5",
"enable_support": "0",
@@ -104,7 +104,7 @@
"role_based_wipe_speed" : "0",
"wipe_speed": "200",
"prime_tower_width": "60",
- "xy_hole_compensation": "0",
+ "xy_hole_compensation": "0.025",
"xy_contour_compensation": "0",
"default_jerk": "7",
"outer_wall_jerk": "7",
diff --git a/resources/profiles/Creality/process/0.16mm Optimal @Creality Ender3V3KE.json b/resources/profiles/Creality/process/0.16mm Optimal @Creality Ender3V3KE.json
index f11c3340cf..d0357c0246 100644
--- a/resources/profiles/Creality/process/0.16mm Optimal @Creality Ender3V3KE.json
+++ b/resources/profiles/Creality/process/0.16mm Optimal @Creality Ender3V3KE.json
@@ -12,7 +12,7 @@
"bottom_surface_pattern": "monotonic",
"bottom_shell_layers": "4",
"bottom_shell_thickness": "0",
- "bridge_flow": "0.95",
+ "bridge_flow": "1",
"bridge_speed": "65",
"brim_type": "no_brim",
"brim_width": "5",
@@ -23,17 +23,17 @@
"top_surface_acceleration": "5000",
"bridge_no_support": "0",
"draft_shield": "disabled",
- "elefant_foot_compensation": "0",
+ "elefant_foot_compensation": "0.05",
"outer_wall_line_width": "0.42",
"wall_infill_order": "inner wall/outer wall/infill",
- "line_width": "0.45",
+ "line_width": "0.42",
"infill_direction": "45",
"sparse_infill_density": "15%",
"sparse_infill_pattern": "crosshatch",
"initial_layer_acceleration": "1000",
"travel_acceleration": "5000",
"inner_wall_acceleration": "5000",
- "outer_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
"initial_layer_line_width": "0.5",
"initial_layer_print_height": "0.2",
"infill_combination": "1",
@@ -60,7 +60,7 @@
"skirt_height": "2",
"skirt_loops": "0",
"minimum_sparse_infill_area": "10",
- "internal_solid_infill_line_width": "0.42",
+ "internal_solid_infill_line_width": "0.45",
"spiral_mode": "0",
"standby_temperature_delta": "-5",
"enable_support": "0",
@@ -104,7 +104,7 @@
"role_based_wipe_speed" : "0",
"wipe_speed": "200",
"prime_tower_width": "60",
- "xy_hole_compensation": "0",
+ "xy_hole_compensation": "0.025",
"xy_contour_compensation": "0",
"default_jerk": "7",
"outer_wall_jerk": "7",
diff --git a/resources/profiles/Creality/process/0.20mm Standard @Creality Ender3V3KE.json b/resources/profiles/Creality/process/0.20mm Standard @Creality Ender3V3KE.json
index 2fe93ca40b..6321b57e8b 100644
--- a/resources/profiles/Creality/process/0.20mm Standard @Creality Ender3V3KE.json
+++ b/resources/profiles/Creality/process/0.20mm Standard @Creality Ender3V3KE.json
@@ -13,7 +13,7 @@
"bottom_surface_pattern": "monotonic",
"bottom_shell_layers": "4",
"bottom_shell_thickness": "0",
- "bridge_flow": "0.95",
+ "bridge_flow": "1",
"bridge_speed": "65",
"brim_type": "no_brim",
"brim_width": "5",
@@ -24,17 +24,17 @@
"top_surface_acceleration": "5000",
"bridge_no_support": "0",
"draft_shield": "disabled",
- "elefant_foot_compensation": "0",
+ "elefant_foot_compensation": "0.05",
"outer_wall_line_width": "0.42",
"wall_infill_order": "inner wall/outer wall/infill",
- "line_width": "0.45",
+ "line_width": "0.42",
"infill_direction": "45",
"sparse_infill_density": "15%",
"sparse_infill_pattern": "crosshatch",
"initial_layer_acceleration": "1000",
"travel_acceleration": "5000",
"inner_wall_acceleration": "5000",
- "outer_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
"initial_layer_line_width": "0.5",
"initial_layer_print_height": "0.2",
"infill_combination": "0",
@@ -61,7 +61,7 @@
"skirt_height": "2",
"skirt_loops": "0",
"minimum_sparse_infill_area": "10",
- "internal_solid_infill_line_width": "0.42",
+ "internal_solid_infill_line_width": "0.45",
"spiral_mode": "0",
"standby_temperature_delta": "-5",
"enable_support": "0",
@@ -105,7 +105,7 @@
"role_based_wipe_speed": "0",
"wipe_speed": "200",
"prime_tower_width": "60",
- "xy_hole_compensation": "0",
+ "xy_hole_compensation": "0.025",
"xy_contour_compensation": "0",
"default_jerk": "7",
"outer_wall_jerk": "7",
diff --git a/resources/profiles/Creality/process/0.24mm Draft @Creality Ender3V3KE.json b/resources/profiles/Creality/process/0.24mm Draft @Creality Ender3V3KE.json
index a58e7726dc..12a55c48b3 100644
--- a/resources/profiles/Creality/process/0.24mm Draft @Creality Ender3V3KE.json
+++ b/resources/profiles/Creality/process/0.24mm Draft @Creality Ender3V3KE.json
@@ -12,7 +12,7 @@
"bottom_surface_pattern": "monotonic",
"bottom_shell_layers": "4",
"bottom_shell_thickness": "0",
- "bridge_flow": "0.95",
+ "bridge_flow": "1",
"bridge_speed": "65",
"brim_type": "no_brim",
"brim_width": "5",
@@ -23,17 +23,17 @@
"top_surface_acceleration": "5000",
"bridge_no_support": "0",
"draft_shield": "disabled",
- "elefant_foot_compensation": "0",
+ "elefant_foot_compensation": "0.05",
"outer_wall_line_width": "0.42",
"wall_infill_order": "inner wall/outer wall/infill",
- "line_width": "0.45",
+ "line_width": "0.42",
"infill_direction": "45",
"sparse_infill_density": "15%",
"sparse_infill_pattern": "crosshatch",
"initial_layer_acceleration": "1000",
"travel_acceleration": "5000",
"inner_wall_acceleration": "5000",
- "outer_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
"initial_layer_line_width": "0.5",
"initial_layer_print_height": "0.2",
"infill_combination": "0",
@@ -60,7 +60,7 @@
"skirt_height": "2",
"skirt_loops": "0",
"minimum_sparse_infill_area": "10",
- "internal_solid_infill_line_width": "0.42",
+ "internal_solid_infill_line_width": "0.45",
"spiral_mode": "0",
"standby_temperature_delta": "-5",
"enable_support": "0",
@@ -104,7 +104,7 @@
"role_based_wipe_speed" : "0",
"wipe_speed": "200",
"prime_tower_width": "60",
- "xy_hole_compensation": "0",
+ "xy_hole_compensation": "0.025",
"xy_contour_compensation": "0",
"default_jerk": "7",
"outer_wall_jerk": "7",
diff --git a/resources/profiles/Creality/process/0.24mm Optimal @Creality K1C 0.6 nozzle.json b/resources/profiles/Creality/process/0.24mm Optimal @Creality K1C 0.6 nozzle.json
index 310153318d..92bf6c50e9 100644
--- a/resources/profiles/Creality/process/0.24mm Optimal @Creality K1C 0.6 nozzle.json
+++ b/resources/profiles/Creality/process/0.24mm Optimal @Creality K1C 0.6 nozzle.json
@@ -112,6 +112,6 @@
"xy_contour_compensation": "0",
"gcode_label_objects": "0",
"compatible_printers": [
- "Creality K1C (0.6 nozzle)"
+ "Creality K1C 0.6 nozzle"
]
}
\ No newline at end of file
diff --git a/resources/profiles/Creality/process/0.30mm Standard @Creality K1C 0.6 nozzle.json b/resources/profiles/Creality/process/0.30mm Standard @Creality K1C 0.6 nozzle.json
index 28f1e62962..7cdbee7a70 100644
--- a/resources/profiles/Creality/process/0.30mm Standard @Creality K1C 0.6 nozzle.json
+++ b/resources/profiles/Creality/process/0.30mm Standard @Creality K1C 0.6 nozzle.json
@@ -112,6 +112,6 @@
"xy_contour_compensation": "0",
"gcode_label_objects": "0",
"compatible_printers": [
- "Creality K1C (0.6 nozzle)"
+ "Creality K1C 0.6 nozzle"
]
}
\ No newline at end of file
diff --git a/resources/profiles/Creality/process/0.32mm Optimal @Creality K1C 0.8 nozzle.json b/resources/profiles/Creality/process/0.32mm Optimal @Creality K1C 0.8 nozzle.json
index 2306b1b034..98fac8f582 100644
--- a/resources/profiles/Creality/process/0.32mm Optimal @Creality K1C 0.8 nozzle.json
+++ b/resources/profiles/Creality/process/0.32mm Optimal @Creality K1C 0.8 nozzle.json
@@ -112,6 +112,6 @@
"xy_contour_compensation": "0",
"gcode_label_objects": "0",
"compatible_printers": [
- "Creality K1C (0.8 nozzle)"
+ "Creality K1C 0.8 nozzle"
]
}
\ No newline at end of file
diff --git a/resources/profiles/Creality/process/0.36mm Draft @Creality K1C 0.6 nozzle.json b/resources/profiles/Creality/process/0.36mm Draft @Creality K1C 0.6 nozzle.json
index cf47b09d4c..90b3efdfdc 100644
--- a/resources/profiles/Creality/process/0.36mm Draft @Creality K1C 0.6 nozzle.json
+++ b/resources/profiles/Creality/process/0.36mm Draft @Creality K1C 0.6 nozzle.json
@@ -112,6 +112,6 @@
"xy_contour_compensation": "0",
"gcode_label_objects": "0",
"compatible_printers": [
- "Creality K1C (0.6 nozzle)"
+ "Creality K1C 0.6 nozzle"
]
}
\ No newline at end of file
diff --git a/resources/profiles/Creality/process/0.40mm Standard @Creality K1C 0.8 nozzle.json b/resources/profiles/Creality/process/0.40mm Standard @Creality K1C 0.8 nozzle.json
index aa394ac3ce..3b8a82e027 100644
--- a/resources/profiles/Creality/process/0.40mm Standard @Creality K1C 0.8 nozzle.json
+++ b/resources/profiles/Creality/process/0.40mm Standard @Creality K1C 0.8 nozzle.json
@@ -112,6 +112,6 @@
"xy_contour_compensation": "0",
"gcode_label_objects": "0",
"compatible_printers": [
- "Creality K1C (0.8 nozzle)"
+ "Creality K1C 0.8 nozzle"
]
}
\ No newline at end of file
diff --git a/resources/profiles/Creality/process/0.48mm Draft @Creality K1C 0.8 nozzle.json b/resources/profiles/Creality/process/0.48mm Draft @Creality K1C 0.8 nozzle.json
index 196eeba707..16b24325b6 100644
--- a/resources/profiles/Creality/process/0.48mm Draft @Creality K1C 0.8 nozzle.json
+++ b/resources/profiles/Creality/process/0.48mm Draft @Creality K1C 0.8 nozzle.json
@@ -1,7 +1,7 @@
{
"type": "process",
"setting_id": "GP004",
- "name": "0.48mm Draft @Creality K1C (0.8 nozzle)",
+ "name": "0.48mm Draft @Creality K1C",
"from": "system",
"inherits": "fdm_process_common_klipper",
"instantiation": "true",
@@ -112,6 +112,6 @@
"xy_contour_compensation": "0",
"gcode_label_objects": "0",
"compatible_printers": [
- "Creality K1C (0.8 nozzle)"
+ "Creality K1C 0.8 nozzle"
]
}
\ No newline at end of file
diff --git a/resources/profiles/Custom.json b/resources/profiles/Custom.json
index 8a0f2a5c86..a6015b1a4e 100644
--- a/resources/profiles/Custom.json
+++ b/resources/profiles/Custom.json
@@ -1,6 +1,6 @@
{
"name": "Custom Printer",
- "version": "02.01.00.01",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "My configurations",
"machine_model_list": [
diff --git a/resources/profiles/Dremel.json b/resources/profiles/Dremel.json
index 4a7e137f59..bd967b19ae 100644
--- a/resources/profiles/Dremel.json
+++ b/resources/profiles/Dremel.json
@@ -1,6 +1,6 @@
{
"name": "Dremel",
- "version": "02.00.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Dremel configurations",
"machine_model_list": [
diff --git a/resources/profiles/Dremel/dremel_3d45.stl b/resources/profiles/Dremel/dremel_3d45.stl
new file mode 100644
index 0000000000..8cc5a8af59
Binary files /dev/null and b/resources/profiles/Dremel/dremel_3d45.stl differ
diff --git a/resources/profiles/Dremel/filament/Dremel Generic PLA @3D45 all.json b/resources/profiles/Dremel/filament/Dremel Generic PLA @3D45 all.json
index 304a59d97e..483ccb09c4 100644
--- a/resources/profiles/Dremel/filament/Dremel Generic PLA @3D45 all.json
+++ b/resources/profiles/Dremel/filament/Dremel Generic PLA @3D45 all.json
@@ -5,28 +5,26 @@
"from": "system",
"instantiation": "true",
"inherits": "Dremel Generic PLA",
- "filament_max_volumetric_speed": ["9"],
- "slow_down_layer_time": ["10"],
+ "slow_down_min_speed": "10",
+ "close_fan_the_first_x_layers": "3",
+ "filament_loading_speed_start": "3",
+ "filament_loading_speed": "28",
+ "filament_unloading_speed_start": "100",
+ "filament_unloading_speed": "90",
+ "filament_cooling_moves": "4",
+ "filament_cooling_initial_speed": "2.2",
+ "filament_cooling_final_speed": "3.4",
"filament_retraction_length": [
"3"
],
"filament_retraction_speed": [
"60"
],
- "hot_plate_temp_initial_layer": [
- "60"
- ],
- "hot_plate_temp": [
- "60"
- ],
"nozzle_temperature": [
- "225"
+ "200"
],
"nozzle_temperature_initial_layer": [
- "225"
- ],
- "nozzle_temperature_range_high": [
- "230"
+ "200"
],
"compatible_printers": [
"Dremel 3D45 0.4 nozzle"
diff --git a/resources/profiles/Dremel/machine/Dremel 3D20 0.4 nozzle.json b/resources/profiles/Dremel/machine/Dremel 3D20 0.4 nozzle.json
index b52a2b13fe..f4b9bd04fc 100644
--- a/resources/profiles/Dremel/machine/Dremel 3D20 0.4 nozzle.json
+++ b/resources/profiles/Dremel/machine/Dremel 3D20 0.4 nozzle.json
@@ -7,7 +7,7 @@
"inherits": "fdm_dremel_common",
"printer_model": "Dremel 3D20",
"printer_variant": "0.4",
- "printer_structure": "Hbot",
+ "printer_structure": "hbot",
"gcode_flavor": "marlin",
"default_filament_profile": [
"Dremel Generic PLA @3D20 all"
@@ -52,7 +52,7 @@
"0"
],
"retract_lift_enforce": [
- "Top Surfaces"
+ "Top Only"
],
"retract_restart_extra": [
"0"
diff --git a/resources/profiles/Dremel/machine/Dremel 3D40 0.4 nozzle.json b/resources/profiles/Dremel/machine/Dremel 3D40 0.4 nozzle.json
index 12a761c782..dca7cf3012 100644
--- a/resources/profiles/Dremel/machine/Dremel 3D40 0.4 nozzle.json
+++ b/resources/profiles/Dremel/machine/Dremel 3D40 0.4 nozzle.json
@@ -7,7 +7,7 @@
"inherits": "fdm_dremel_common",
"printer_model": "Dremel 3D40",
"printer_variant": "0.4",
- "printer_structure": "Hbot",
+ "printer_structure": "hbot",
"gcode_flavor": "marlin",
"default_filament_profile": [
"Dremel Generic PLA @3D40 all"
@@ -61,7 +61,7 @@
"1"
],
"retract_lift_enforce": [
- "Top Surfaces"
+ "Top Only"
],
"wipe": [
"1"
diff --git a/resources/profiles/Dremel/machine/Dremel 3D45 0.4 nozzle.json b/resources/profiles/Dremel/machine/Dremel 3D45 0.4 nozzle.json
index ff11f45776..d02bd15274 100644
--- a/resources/profiles/Dremel/machine/Dremel 3D45 0.4 nozzle.json
+++ b/resources/profiles/Dremel/machine/Dremel 3D45 0.4 nozzle.json
@@ -7,7 +7,6 @@
"inherits": "fdm_dremel_common",
"printer_model": "Dremel 3D45",
"printer_variant": "0.4",
- "printer_structure": "Hbot",
"printer_settings_id": "Dremel",
"gcode_flavor": "marlin",
"default_filament_profile": [
@@ -18,10 +17,10 @@
"0.4"
],
"printable_area": [
- "0x0",
- "255x0",
- "255x155",
- "0x155"
+ "-127.5x-77.5",
+ "97.5x-77.5",
+ "97.5x77.5",
+ "-127.5x77.5"
],
"printable_height": "170",
"deretraction_speed": [
@@ -30,9 +29,6 @@
"emit_machine_limits_to_gcode": "1",
"enable_filament_ramming": "1",
"extra_loading_move": "-2",
- "extruder_clearance_height_to_lid": "101",
- "extruder_clearance_height_to_rod": "45",
- "extruder_clearance_radius": "45",
"wipe": [
"1"
],
@@ -42,32 +38,25 @@
"z_hop": [
"0.5"
],
- "z_hop_types": [
- "Normal Lift"
- ],
"machine_max_acceleration_e": [
- "6200",
- "5000"
+ "10000",
+ "10000"
],
"machine_max_acceleration_extruding": [
- "6200",
- "20000"
+ "1500",
+ "1500"
],
"machine_max_acceleration_retracting": [
- "5000",
- "5000"
+ "1500",
+ "1500"
],
- "machine_max_acceleration_travel": [
+ "machine_max_acceleration_x": [
"9000",
"9000"
],
- "machine_max_acceleration_x": [
- "6200",
- "20000"
- ],
"machine_max_acceleration_y": [
- "6200",
- "20000"
+ "9000",
+ "9000"
],
"machine_max_acceleration_z": [
"500",
@@ -78,65 +67,51 @@
"2.5"
],
"machine_max_jerk_x": [
- "12",
- "12"
+ "10",
+ "10"
],
"machine_max_jerk_y": [
- "12",
- "12"
+ "10",
+ "10"
],
"machine_max_jerk_z": [
- "2",
- "2"
+ "0.2",
+ "0.2"
],
"machine_max_speed_e": [
- "3000",
- "100"
+ "120",
+ "120"
],
"machine_max_speed_x": [
- "1000",
- "1000"
+ "500",
+ "500"
],
"machine_max_speed_y": [
- "1000",
- "1000"
+ "500",
+ "500"
],
"machine_max_speed_z": [
- "30",
- "30"
+ "12",
+ "12"
],
"max_layer_height": [
"0.34"
],
"min_layer_height": [
- "0.05"
- ],
- "retract_before_wipe": [
- "70%"
- ],
- "retract_length_toolchange": [
- "1"
- ],
- "retract_lift_enforce": [
- "Top Surfaces"
- ],
- "retract_when_changing_layer": [
- "1"
+ "0.07"
],
"retraction_length": [
- "3"
+ "1"
],
"retraction_minimum_travel": [
- "5"
+ "2"
],
"retraction_speed": [
- "60"
+ "40"
],
- "machine_start_gcode": "G28\nG1 Z50.00 F400\nG92 E0\nG1 F200 E3\nG92 E0\nM132 X Y Z A\nM907 X100 Y100 Z50 A100",
- "machine_end_gcode": "M104 S0\nM140 S0\nG92 E1\nG1 E-1 F300\nG162 Z F600\nG162 X Y F2000\nM84",
- "thumbnails_format": "PNG",
- "thumbnails": [
- "96x96",
- "300x300"
- ]
+ "use_relative_e_distances": "0",
+ "machine_start_gcode": "G28; home printer\nG1 Z50.00 F400; pruge line\nG1 F200 E3\nM132 X Y Z A; prepare printer\nM907 X100 Y100 Z50 A100",
+ "machine_end_gcode": "M104 S0; turn off nozzle\nM140 S0; turn off bed\nG92 E1; return print head to home\nG1 E-1 F300\nG162 Z F600\nG162 X Y F2000\nM84; disable stepper motors",
+ "machine_pause_gcode": "G5",
+ "change_filament_gcode": "G5"
}
diff --git a/resources/profiles/Dremel/machine/Dremel 3D45.json b/resources/profiles/Dremel/machine/Dremel 3D45.json
index 0ce708033f..3ae1226c6b 100644
--- a/resources/profiles/Dremel/machine/Dremel 3D45.json
+++ b/resources/profiles/Dremel/machine/Dremel 3D45.json
@@ -3,7 +3,7 @@
"name": "Dremel 3D45",
"nozzle_diameter": "0.4",
"family": "Dremel",
- "bed_model": "dremel_3d40_3d45_buildplate_model.stl",
+ "bed_model": "dremel_3d45.stl",
"bed_texture": "",
"hotend_model": "",
"machine_tech": "FFF",
diff --git a/resources/profiles/Elegoo.json b/resources/profiles/Elegoo.json
index 734cc1262c..6fc0fe8af0 100644
--- a/resources/profiles/Elegoo.json
+++ b/resources/profiles/Elegoo.json
@@ -1,6 +1,6 @@
{
"name": "Elegoo",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Elegoo configurations",
"machine_model_list": [
diff --git a/resources/profiles/FLSun.json b/resources/profiles/FLSun.json
index 8abcdd15ec..3eece7ab8b 100644
--- a/resources/profiles/FLSun.json
+++ b/resources/profiles/FLSun.json
@@ -1,6 +1,6 @@
{
"name": "FLSun",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "FLSun configurations",
"machine_model_list": [
diff --git a/resources/profiles/FLSun/flsun_SR_buildplate_model.stl b/resources/profiles/FLSun/flsun_SR_buildplate_model.stl
index 55650a8ee9..166e59c372 100644
Binary files a/resources/profiles/FLSun/flsun_SR_buildplate_model.stl and b/resources/profiles/FLSun/flsun_SR_buildplate_model.stl differ
diff --git a/resources/profiles/Flashforge.json b/resources/profiles/Flashforge.json
index 559bb5ed38..20c5ba7324 100644
--- a/resources/profiles/Flashforge.json
+++ b/resources/profiles/Flashforge.json
@@ -1,7 +1,7 @@
{
"name": "Flashforge",
"url": "",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Flashforge configurations",
"machine_model_list": [
diff --git a/resources/profiles/Flashforge/Flashforge Guider 3 Ultra_cover.png b/resources/profiles/Flashforge/Flashforge Guider 3 Ultra_cover.png
index 20186e597d..17db7a37e6 100644
Binary files a/resources/profiles/Flashforge/Flashforge Guider 3 Ultra_cover.png and b/resources/profiles/Flashforge/Flashforge Guider 3 Ultra_cover.png differ
diff --git a/resources/profiles/Flashforge/filament/FusRock Generic NexPA-CF25.json b/resources/profiles/Flashforge/filament/FusRock Generic NexPA-CF25.json
index 44df1f319c..3b5a961265 100644
--- a/resources/profiles/Flashforge/filament/FusRock Generic NexPA-CF25.json
+++ b/resources/profiles/Flashforge/filament/FusRock Generic NexPA-CF25.json
@@ -20,12 +20,6 @@
"1"
],
"compatible_printers": [
- "Flashforge Adventurer 5M 0.4 Nozzle",
- "Flashforge Adventurer 5M 0.6 Nozzle",
- "Flashforge Adventurer 5M 0.8 Nozzle",
- "Flashforge Adventurer 5M Pro 0.4 Nozzle",
- "Flashforge Adventurer 5M Pro 0.6 Nozzle",
- "Flashforge Adventurer 5M Pro 0.8 Nozzle",
"Flashforge Guider 3 Ultra 0.4 Nozzle"
],
"compatible_printers_condition": "",
diff --git a/resources/profiles/Flashforge/filament/FusRock Generic PAHT-CF.json b/resources/profiles/Flashforge/filament/FusRock Generic PAHT-CF.json
index ddcc047a4c..dc675132db 100644
--- a/resources/profiles/Flashforge/filament/FusRock Generic PAHT-CF.json
+++ b/resources/profiles/Flashforge/filament/FusRock Generic PAHT-CF.json
@@ -20,12 +20,6 @@
"1"
],
"compatible_printers": [
- "Flashforge Adventurer 5M 0.4 Nozzle",
- "Flashforge Adventurer 5M 0.6 Nozzle",
- "Flashforge Adventurer 5M 0.8 Nozzle",
- "Flashforge Adventurer 5M Pro 0.4 Nozzle",
- "Flashforge Adventurer 5M Pro 0.6 Nozzle",
- "Flashforge Adventurer 5M Pro 0.8 Nozzle",
"Flashforge Guider 3 Ultra 0.4 Nozzle",
"Flashforge Guider 2s 0.4 nozzle"
],
diff --git a/resources/profiles/Flashforge/filament/FusRock Generic PET-CF.json b/resources/profiles/Flashforge/filament/FusRock Generic PET-CF.json
index a020f3a4b4..f79beb5ff1 100644
--- a/resources/profiles/Flashforge/filament/FusRock Generic PET-CF.json
+++ b/resources/profiles/Flashforge/filament/FusRock Generic PET-CF.json
@@ -20,12 +20,6 @@
"1"
],
"compatible_printers": [
- "Flashforge Adventurer 5M 0.4 Nozzle",
- "Flashforge Adventurer 5M 0.6 Nozzle",
- "Flashforge Adventurer 5M 0.8 Nozzle",
- "Flashforge Adventurer 5M Pro 0.4 Nozzle",
- "Flashforge Adventurer 5M Pro 0.6 Nozzle",
- "Flashforge Adventurer 5M Pro 0.8 Nozzle",
"Flashforge Guider 3 Ultra 0.4 Nozzle",
"Flashforge Guider 2s 0.4 nozzle"
],
diff --git a/resources/profiles/Flashforge/filament/FusRock Generic S-Multi.json b/resources/profiles/Flashforge/filament/FusRock Generic S-Multi.json
index d63badb6f1..2fd995d4be 100644
--- a/resources/profiles/Flashforge/filament/FusRock Generic S-Multi.json
+++ b/resources/profiles/Flashforge/filament/FusRock Generic S-Multi.json
@@ -20,12 +20,6 @@
"1"
],
"compatible_printers": [
- "Flashforge Adventurer 5M 0.4 Nozzle",
- "Flashforge Adventurer 5M 0.6 Nozzle",
- "Flashforge Adventurer 5M 0.8 Nozzle",
- "Flashforge Adventurer 5M Pro 0.4 Nozzle",
- "Flashforge Adventurer 5M Pro 0.6 Nozzle",
- "Flashforge Adventurer 5M Pro 0.8 Nozzle",
"Flashforge Guider 3 Ultra 0.4 Nozzle"
],
"compatible_printers_condition": "",
@@ -170,7 +164,7 @@
"0"
],
"filament_type": [
- "PET-CF"
+ "S-Multi"
],
"filament_unload_time": [
"0"
diff --git a/resources/profiles/Flashforge/filament/FusRock Generic S-PAHT.json b/resources/profiles/Flashforge/filament/FusRock Generic S-PAHT.json
index 74b7f88dd9..d2825f27fc 100644
--- a/resources/profiles/Flashforge/filament/FusRock Generic S-PAHT.json
+++ b/resources/profiles/Flashforge/filament/FusRock Generic S-PAHT.json
@@ -20,12 +20,6 @@
"1"
],
"compatible_printers": [
- "Flashforge Adventurer 5M 0.4 Nozzle",
- "Flashforge Adventurer 5M 0.6 Nozzle",
- "Flashforge Adventurer 5M 0.8 Nozzle",
- "Flashforge Adventurer 5M Pro 0.4 Nozzle",
- "Flashforge Adventurer 5M Pro 0.6 Nozzle",
- "Flashforge Adventurer 5M Pro 0.8 Nozzle",
"Flashforge Guider 3 Ultra 0.4 Nozzle"
],
"compatible_printers_condition": "",
@@ -170,7 +164,7 @@
"0"
],
"filament_type": [
- "PA-CF"
+ "S-PAHT"
],
"filament_unload_time": [
"0"
diff --git a/resources/profiles/Flashforge/filament/Polymaker Generic CoPA.json b/resources/profiles/Flashforge/filament/Polymaker Generic CoPA.json
index fff9c3e72d..a7d2d2b949 100644
--- a/resources/profiles/Flashforge/filament/Polymaker Generic CoPA.json
+++ b/resources/profiles/Flashforge/filament/Polymaker Generic CoPA.json
@@ -20,12 +20,6 @@
"1"
],
"compatible_printers": [
- "Flashforge Adventurer 5M 0.4 Nozzle",
- "Flashforge Adventurer 5M 0.6 Nozzle",
- "Flashforge Adventurer 5M 0.8 Nozzle",
- "Flashforge Adventurer 5M Pro 0.4 Nozzle",
- "Flashforge Adventurer 5M Pro 0.6 Nozzle",
- "Flashforge Adventurer 5M Pro 0.8 Nozzle",
"Flashforge Guider 3 Ultra 0.4 Nozzle"
],
"compatible_printers_condition": "",
diff --git a/resources/profiles/Flashforge/filament/Polymaker Generic S1.json b/resources/profiles/Flashforge/filament/Polymaker Generic S1.json
index e6ae0afcf8..11de35b1af 100644
--- a/resources/profiles/Flashforge/filament/Polymaker Generic S1.json
+++ b/resources/profiles/Flashforge/filament/Polymaker Generic S1.json
@@ -20,12 +20,6 @@
"1"
],
"compatible_printers": [
- "Flashforge Adventurer 5M 0.4 Nozzle",
- "Flashforge Adventurer 5M 0.6 Nozzle",
- "Flashforge Adventurer 5M 0.8 Nozzle",
- "Flashforge Adventurer 5M Pro 0.4 Nozzle",
- "Flashforge Adventurer 5M Pro 0.6 Nozzle",
- "Flashforge Adventurer 5M Pro 0.8 Nozzle",
"Flashforge Guider 3 Ultra 0.4 Nozzle"
],
"compatible_printers_condition": "",
diff --git a/resources/profiles/Flashforge/flashforge_adventurer5m_series_buildplate_model.STL b/resources/profiles/Flashforge/flashforge_adventurer5m_series_buildplate_model.STL
index ba3120726a..9b8b4252d3 100644
Binary files a/resources/profiles/Flashforge/flashforge_adventurer5m_series_buildplate_model.STL and b/resources/profiles/Flashforge/flashforge_adventurer5m_series_buildplate_model.STL differ
diff --git a/resources/profiles/Flashforge/flashforge_adventurer_5m_series_hotend.stl b/resources/profiles/Flashforge/flashforge_adventurer_5m_series_hotend.stl
index 5f65226bb2..1d55f89b35 100644
Binary files a/resources/profiles/Flashforge/flashforge_adventurer_5m_series_hotend.stl and b/resources/profiles/Flashforge/flashforge_adventurer_5m_series_hotend.stl differ
diff --git a/resources/profiles/Flashforge/flashforge_g2s_buildplate_model.stl b/resources/profiles/Flashforge/flashforge_g2s_buildplate_model.stl
index dfbb4ece8d..d33175f352 100644
Binary files a/resources/profiles/Flashforge/flashforge_g2s_buildplate_model.stl and b/resources/profiles/Flashforge/flashforge_g2s_buildplate_model.stl differ
diff --git a/resources/profiles/Flashforge/flashforge_g3u_buildplate_model.stl b/resources/profiles/Flashforge/flashforge_g3u_buildplate_model.stl
index 440eeee8ef..3a75b3f49f 100644
Binary files a/resources/profiles/Flashforge/flashforge_g3u_buildplate_model.stl and b/resources/profiles/Flashforge/flashforge_g3u_buildplate_model.stl differ
diff --git a/resources/profiles/Flashforge/machine/Flashforge Guider 2s 0.4 nozzle.json b/resources/profiles/Flashforge/machine/Flashforge Guider 2s 0.4 nozzle.json
index 6066e7891f..47dc54bb7d 100644
--- a/resources/profiles/Flashforge/machine/Flashforge Guider 2s 0.4 nozzle.json
+++ b/resources/profiles/Flashforge/machine/Flashforge Guider 2s 0.4 nozzle.json
@@ -56,5 +56,5 @@
"before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]",
"layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]",
"wipe_distance": "2",
- "nozzle_type": "undefined"
+ "nozzle_type": "undefine"
}
diff --git a/resources/profiles/Flashforge/machine/fdm_adventurer5m_common.json b/resources/profiles/Flashforge/machine/fdm_adventurer5m_common.json
index bf5b7ebd20..a37d2586fa 100644
--- a/resources/profiles/Flashforge/machine/fdm_adventurer5m_common.json
+++ b/resources/profiles/Flashforge/machine/fdm_adventurer5m_common.json
@@ -38,7 +38,7 @@
"change_filament_gcode": "",
"machine_pause_gcode": "M25",
"default_filament_profile": [ "Flashforge Generic PLA" ],
- "machine_start_gcode": "M190 S[bed_temperature_initial_layer_single]\nM104 S[nozzle_temperature_initial_layer]\nG90\nM83\nG1 Z5 F6000\nG1 E-1.5 F800\nG1 X110 Y-110 F6000\nG1 E2 F800\nG1 Y-110 X55 Z0.25 F4800\nG1 X-55 E8 F2400\nG1 Y-109.6 F2400\nG1 X55 E5 F2400\nG1 Y-110 X55 Z0.45 F4800\nG1 X-55 E8 F2400\nG1 Y-109.6 F2400\nG1 X55 E5 F2400\nG92 E0",
+ "machine_start_gcode": "M190 S[bed_temperature_initial_layer_single]\nM104 S[nozzle_temperature_initial_layer]\nG90\nM83\nG1 Z5 F6000\nG1 E-0.2 F800\nG1 X110 Y-110 F6000\nG1 E2 F800\nG1 Y-110 X55 Z0.25 F4800\nG1 X-55 E8 F2400\nG1 Y-109.6 F2400\nG1 X55 E5 F2400\nG1 Y-110 X55 Z0.45 F4800\nG1 X-55 E8 F2400\nG1 Y-109.6 F2400\nG1 X55 E5 F2400\nG92 E0",
"machine_end_gcode": "G1 E-3 F3600\nG0 X50 Y50 F30000\nM104 S0 ; turn off temperature",
"before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]",
"layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]",
diff --git a/resources/profiles/Flashforge/process/0.12mm Detail @Flashforge Guider 2s 0.4 nozzle.json b/resources/profiles/Flashforge/process/0.12mm Detail @Flashforge Guider 2s 0.4 nozzle.json
index cd1cfa8ca1..16d9377778 100644
--- a/resources/profiles/Flashforge/process/0.12mm Detail @Flashforge Guider 2s 0.4 nozzle.json
+++ b/resources/profiles/Flashforge/process/0.12mm Detail @Flashforge Guider 2s 0.4 nozzle.json
@@ -100,7 +100,7 @@
"top_shell_thickness": "0.8",
"wall_loops": "3",
"wall_infill_order": "inner wall/outer wall/infill",
- "wall_generator": "archane",
+ "wall_generator": "arachne",
"compatible_printers": [
"Flashforge Guider 2s 0.4 nozzle"
]
diff --git a/resources/profiles/Flashforge/process/0.16mm Optimal @Flashforge Guider 2s 0.4 nozzle.json b/resources/profiles/Flashforge/process/0.16mm Optimal @Flashforge Guider 2s 0.4 nozzle.json
index 2d6539e8b5..800ff86c95 100644
--- a/resources/profiles/Flashforge/process/0.16mm Optimal @Flashforge Guider 2s 0.4 nozzle.json
+++ b/resources/profiles/Flashforge/process/0.16mm Optimal @Flashforge Guider 2s 0.4 nozzle.json
@@ -100,7 +100,7 @@
"top_shell_thickness": "0.8",
"wall_loops": "2",
"wall_infill_order": "inner wall/outer wall/infill",
- "wall_generator": "archane",
+ "wall_generator": "arachne",
"compatible_printers": [
"Flashforge Guider 2s 0.4 nozzle"
]
diff --git a/resources/profiles/Flashforge/process/0.20mm Standard @Flashforge Guider 2s 0.4 nozzle.json b/resources/profiles/Flashforge/process/0.20mm Standard @Flashforge Guider 2s 0.4 nozzle.json
index b143ab3458..65fc3f6f42 100644
--- a/resources/profiles/Flashforge/process/0.20mm Standard @Flashforge Guider 2s 0.4 nozzle.json
+++ b/resources/profiles/Flashforge/process/0.20mm Standard @Flashforge Guider 2s 0.4 nozzle.json
@@ -101,7 +101,7 @@
"top_shell_thickness": "0.8",
"wall_loops": "2",
"wall_infill_order": "inner wall/outer wall/infill",
- "wall_generator": "archane",
+ "wall_generator": "arachne",
"compatible_printers": [
"Flashforge Guider 2s 0.4 nozzle"
]
diff --git a/resources/profiles/Flashforge/process/0.30mm Draft @Flashforge Guider 2s 0.4 nozzle.json b/resources/profiles/Flashforge/process/0.30mm Draft @Flashforge Guider 2s 0.4 nozzle.json
index f9cbcbc610..c246645d56 100644
--- a/resources/profiles/Flashforge/process/0.30mm Draft @Flashforge Guider 2s 0.4 nozzle.json
+++ b/resources/profiles/Flashforge/process/0.30mm Draft @Flashforge Guider 2s 0.4 nozzle.json
@@ -101,7 +101,7 @@
"top_shell_thickness": "0.8",
"wall_loops": "2",
"wall_infill_order": "inner wall/outer wall/infill",
- "wall_generator": "archane",
+ "wall_generator": "arachne",
"compatible_printers": [
"Flashforge Guider 2s 0.4 nozzle"
]
diff --git a/resources/profiles/FlyingBear.json b/resources/profiles/FlyingBear.json
index 9854e2cee0..6769aacad2 100644
--- a/resources/profiles/FlyingBear.json
+++ b/resources/profiles/FlyingBear.json
@@ -1,6 +1,6 @@
{
"name": "FlyingBear",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "1",
"description": "FlyingBear configurations",
"machine_model_list": [
@@ -11,14 +11,25 @@
{
"name": "FlyingBear S1",
"sub_path": "machine/S1/FlyingBear S1.json"
+ },
+ {
+ "name": "FlyingBear Ghost 6",
+ "sub_path": "machine/FlyingBear Ghost 6.json"
}
-
],
"process_list": [
{
"name": "fdm_process_common",
"sub_path": "process/fdm_process_common.json"
},
+ {
+ "name": "fdm_process_marlin_common",
+ "sub_path": "process/fdm_process_marlin_common.json"
+ },
+ {
+ "name": "fdm_process_ghost_6",
+ "sub_path": "process/fdm_process_ghost_6.json"
+ },
{
"name": "0.08mm Extra Fine @FlyingBear Reborn3",
"sub_path": "process/0.08mm Extra Fine @FlyingBear Reborn3.json"
@@ -40,8 +51,23 @@
"sub_path": "process/0.24mm Draft @FlyingBear Reborn3.json"
},
+ {
+ "name": "0.12mm Fine @FlyingBear Ghost 6 0.4 nozzle",
+ "sub_path": "process/0.12mm Fine @FlyingBear Ghost 6 0.4 nozzle.json"
+ },
+ {
+ "name": "0.16mm Optimal @FlyingBear Ghost 6 0.4 nozzle",
+ "sub_path": "process/0.16mm Optimal @FlyingBear Ghost 6 0.4 nozzle.json"
+ },
+ {
+ "name": "0.20mm Standard @FlyingBear Ghost 6 0.4 nozzle",
+ "sub_path": "process/0.20mm Standard @FlyingBear Ghost 6 0.4 nozzle.json"
+ },
+ {
+ "name": "0.24mm Draft @FlyingBear Ghost 6 0.4 nozzle",
+ "sub_path": "process/0.24mm Draft @FlyingBear Ghost 6 0.4 nozzle.json"
+ },
-
{
"name": "fdm_process_common_S1",
"sub_path": "process/S1/fdm_process_common_S1.json"
@@ -254,6 +280,10 @@
],
"machine_list": [
+ {
+ "name": "fdm_marlin_common",
+ "sub_path": "machine/fdm_marlin_common.json"
+ },
{
"name": "fdm_machine_common",
"sub_path": "machine/fdm_machine_common.json"
@@ -266,13 +296,13 @@
"name": "FlyingBear Reborn3 0.4 nozzle",
"sub_path": "machine/FlyingBear Reborn3 0.4 nozzle.json"
},
-
-
{
"name": "FlyingBear S1 0.4 nozzle",
"sub_path": "machine/S1/FlyingBear S1 0.4 nozzle.json"
+ },
+ {
+ "name": "FlyingBear Ghost 6 0.4",
+ "sub_path": "machine/FlyingBear Ghost 6 0.4 nozzle.json"
}
-
-
]
}
diff --git a/resources/profiles/FlyingBear/FlyingBear Ghost 6-bed.stl b/resources/profiles/FlyingBear/FlyingBear Ghost 6-bed.stl
new file mode 100644
index 0000000000..fcf0dbb014
Binary files /dev/null and b/resources/profiles/FlyingBear/FlyingBear Ghost 6-bed.stl differ
diff --git a/resources/profiles/FlyingBear/FlyingBear Ghost 6-texture.png b/resources/profiles/FlyingBear/FlyingBear Ghost 6-texture.png
new file mode 100644
index 0000000000..7468253544
Binary files /dev/null and b/resources/profiles/FlyingBear/FlyingBear Ghost 6-texture.png differ
diff --git a/resources/profiles/FlyingBear/FlyingBear Ghost 6_cover.png b/resources/profiles/FlyingBear/FlyingBear Ghost 6_cover.png
new file mode 100644
index 0000000000..35095c157e
Binary files /dev/null and b/resources/profiles/FlyingBear/FlyingBear Ghost 6_cover.png differ
diff --git a/resources/profiles/FlyingBear/filament/FlyingBear Generic ABS.json b/resources/profiles/FlyingBear/filament/FlyingBear Generic ABS.json
index 06807e0b7e..9fdc2f62f6 100644
--- a/resources/profiles/FlyingBear/filament/FlyingBear Generic ABS.json
+++ b/resources/profiles/FlyingBear/filament/FlyingBear Generic ABS.json
@@ -22,6 +22,7 @@
"0.8"
],
"compatible_printers": [
- "FlyingBear Reborn3 0.4 nozzle"
+ "FlyingBear Reborn3 0.4 nozzle",
+ "FlyingBear Ghost 6 0.4 nozzle"
]
}
diff --git a/resources/profiles/FlyingBear/filament/FlyingBear Generic PA-CF.json b/resources/profiles/FlyingBear/filament/FlyingBear Generic PA-CF.json
index faf2f476cf..4279ee7e45 100644
--- a/resources/profiles/FlyingBear/filament/FlyingBear Generic PA-CF.json
+++ b/resources/profiles/FlyingBear/filament/FlyingBear Generic PA-CF.json
@@ -28,7 +28,7 @@
"0.8"
],
"compatible_printers": [
- "FlyingBear Reborn3 0.4 nozzle"
-
+ "FlyingBear Reborn3 0.4 nozzle",
+ "FlyingBear Ghost 6 0.4 nozzle"
]
}
diff --git a/resources/profiles/FlyingBear/filament/FlyingBear Generic PC.json b/resources/profiles/FlyingBear/filament/FlyingBear Generic PC.json
index f60cff0f63..630f732d39 100644
--- a/resources/profiles/FlyingBear/filament/FlyingBear Generic PC.json
+++ b/resources/profiles/FlyingBear/filament/FlyingBear Generic PC.json
@@ -19,6 +19,7 @@
"0.058"
],
"compatible_printers": [
- "FlyingBear Reborn3 0.4 nozzle"
+ "FlyingBear Reborn3 0.4 nozzle",
+ "FlyingBear Ghost 6 0.4 nozzle"
]
}
diff --git a/resources/profiles/FlyingBear/filament/FlyingBear Generic PETG.json b/resources/profiles/FlyingBear/filament/FlyingBear Generic PETG.json
index a02f0f5c9a..22a507b289 100644
--- a/resources/profiles/FlyingBear/filament/FlyingBear Generic PETG.json
+++ b/resources/profiles/FlyingBear/filament/FlyingBear Generic PETG.json
@@ -49,6 +49,7 @@
"0.084"
],
"compatible_printers": [
- "FlyingBear Reborn3 0.4 nozzle"
+ "FlyingBear Reborn3 0.4 nozzle",
+ "FlyingBear Ghost 6 0.4 nozzle"
]
}
diff --git a/resources/profiles/FlyingBear/filament/FlyingBear Generic PLA.json b/resources/profiles/FlyingBear/filament/FlyingBear Generic PLA.json
index f873512b35..ec95e5dd99 100644
--- a/resources/profiles/FlyingBear/filament/FlyingBear Generic PLA.json
+++ b/resources/profiles/FlyingBear/filament/FlyingBear Generic PLA.json
@@ -19,6 +19,7 @@
"0.084"
],
"compatible_printers": [
- "FlyingBear Reborn3 0.4 nozzle"
+ "FlyingBear Reborn3 0.4 nozzle",
+ "FlyingBear Ghost 6 0.4 nozzle"
]
}
diff --git a/resources/profiles/FlyingBear/filament/FlyingBear Generic TPU.json b/resources/profiles/FlyingBear/filament/FlyingBear Generic TPU.json
index f369b55394..73401b0f11 100644
--- a/resources/profiles/FlyingBear/filament/FlyingBear Generic TPU.json
+++ b/resources/profiles/FlyingBear/filament/FlyingBear Generic TPU.json
@@ -19,6 +19,7 @@
"0.13"
],
"compatible_printers": [
- "FlyingBear Reborn3 0.4 nozzle"
+ "FlyingBear Reborn3 0.4 nozzle",
+ "FlyingBear Ghost 6 0.4 nozzle"
]
}
diff --git a/resources/profiles/FlyingBear/filament/FlyingBear PLA Hyper.json b/resources/profiles/FlyingBear/filament/FlyingBear PLA Hyper.json
index 82a1e11c27..64e02ae82e 100644
--- a/resources/profiles/FlyingBear/filament/FlyingBear PLA Hyper.json
+++ b/resources/profiles/FlyingBear/filament/FlyingBear PLA Hyper.json
@@ -22,6 +22,7 @@
"0.02"
],
"compatible_printers": [
- "FlyingBear Reborn3 0.4 nozzle"
+ "FlyingBear Reborn3 0.4 nozzle",
+ "FlyingBear Ghost 6 0.4 nozzle"
]
}
diff --git a/resources/profiles/FlyingBear/machine/FlyingBear Ghost 6 0.4 nozzle.json b/resources/profiles/FlyingBear/machine/FlyingBear Ghost 6 0.4 nozzle.json
new file mode 100644
index 0000000000..acf5abe257
--- /dev/null
+++ b/resources/profiles/FlyingBear/machine/FlyingBear Ghost 6 0.4 nozzle.json
@@ -0,0 +1,134 @@
+{
+ "type": "machine",
+ "setting_id": "GM001",
+ "name": "FlyingBear Ghost 6 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_marlin_common",
+ "printer_model": "FlyingBear Ghost 6",
+ "gcode_flavor": "marlin2",
+ "default_print_profile": "0.20mm Standard @FlyingBear Ghost 6",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "printer_variant": "0.4",
+ "printable_area": [
+ "0x0",
+ "255x0",
+ "255x210",
+ "0x210"
+ ],
+ "printable_height": "210",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "1",
+ "support_air_filtration": "1",
+ "support_multi_bed_types": "1",
+ "machine_max_acceleration_extruding": [
+ "1500",
+ "1500"
+ ],
+ "machine_max_acceleration_retracting": [
+ "3000",
+ "3000"
+ ],
+ "machine_max_acceleration_travel": [
+ "2000",
+ "2000"
+ ],
+ "machine_max_acceleration_x": [
+ "1500",
+ "1500"
+ ],
+ "machine_max_acceleration_y": [
+ "1500",
+ "1500"
+ ],
+ "machine_max_acceleration_z": [
+ "100",
+ "100"
+ ],
+ "machine_max_acceleration_e": [
+ "2000",
+ "2000"
+ ],
+ "machine_max_speed_x": [
+ "200",
+ "200"
+ ],
+ "machine_max_speed_y": [
+ "200",
+ "200"
+ ],
+ "machine_max_speed_z": [
+ "4",
+ "4"
+ ],
+ "machine_max_speed_e": [
+ "45",
+ "45"
+ ],
+ "machine_max_jerk_x": [
+ "15",
+ "15"
+ ],
+ "machine_max_jerk_y": [
+ "15",
+ "15"
+ ],
+ "machine_max_jerk_z": [
+ "0.4",
+ "0.4"
+ ],
+ "machine_max_jerk_e": [
+ "2.0",
+ "2.0"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.05"
+ ],
+ "printer_settings_id": "",
+ "retraction_minimum_travel": [
+ "3"
+ ],
+ "retract_before_wipe": [
+ "0%"
+ ],
+ "retraction_length": [
+ "0.8"
+ ],
+ "retract_length_toolchange": [
+ "1"
+ ],
+ "retraction_speed": [
+ "35"
+ ],
+ "deretraction_speed": [
+ "35"
+ ],
+ "extruder_clearance_height_to_lid": "80",
+ "extruder_clearance_height_to_rod": "64",
+ "extruder_clearance_radius": "40",
+ "z_hop": [
+ "0.2"
+ ],
+ "wipe_distance": [
+ "2"
+ ],
+ "single_extruder_multi_material": "1",
+ "manual_filament_change": "1",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M25",
+ "default_filament_profile": [
+ "FlyingBear Generic PLA"
+ ],
+ "machine_start_gcode": "M220 S100 ;reset feedrate\nM221 S100 ;reset flowrate\nG21 ;set units to millimeters\nG90 ;use absolute coordinates\nM82 ;absolute extrusion mode\nM107 ;turn off colling fan\n\nM140 S[bed_temperature_initial_layer] ;set bed temperature continue without waiting\nM104 S[nozzle_temperature_initial_layer] ;set hotend temperature continue without waiting\n\nG28 ;home\nG1 Z2 F1500 ;raise z\nG92 E0 ;reset extruder\n\nM190 S[bed_temperature_initial_layer] ;wait for bed temperature\nM109 S[nozzle_temperature_initial_layer] ;wait for hotend temperature\n\nG1 X20 Y20 F5000 ;start position \nG1 Z0.28 F1500 ;lower z\nG1 E4 F500 ;prime the filament\n\nG1 X20 Y20.0 Z0.28 F3000.0 ;start position \nG1 X20 Y170.0 Z0.28 F1500.0 E12 ;1st line\nG1 X20.3 F1500\nG1 X20.3 Y20.0 Z0.28 F1500.0 E18 ;2nd line\n\nG92 E0 ;reset extruder\nG1 Z2 F1500 ;raise z\nG92 E0 ;reset extruder\n",
+ "machine_end_gcode": "G91 ;use relative coordinates\nG1 E-4 F1500 ;retract the filament\nG1 X5 Y5 Z0.2 F5000 ;wipe\nG1 Z5 F1500 ;raise z\nG90 ;use absolute coordinates\nG1 X10 Y210 F5000 ;park print head\n\nM107 ;turn off fan\nM104 S0 ;turn off hotend\nM140 S0 ;turn off heatbed\nM84 ;disable motors",
+ "scan_first_layer": "0",
+ "thumbnails": [
+ "100x100",
+ "320x320"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/FlyingBear/machine/FlyingBear Ghost 6.json b/resources/profiles/FlyingBear/machine/FlyingBear Ghost 6.json
new file mode 100644
index 0000000000..bc45a5af57
--- /dev/null
+++ b/resources/profiles/FlyingBear/machine/FlyingBear Ghost 6.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "FlyingBear Ghost 6",
+ "model_id": "FlyingBear Ghost 6",
+ "nozzle_diameter": "0.4",
+ "machine_tech": "FFF",
+ "family": "FlyingBearDesign",
+ "bed_model": "FlyingBear Ghost 6-bed.stl",
+ "bed_texture": "FlyingBear Ghost 6-texture.png",
+ "hotend_model": "",
+ "default_materials": "FlyingBear Generic ABS;FlyingBear Generic PA-CF;FlyingBear Generic PC;FlyingBear Generic PETG;FlyingBear Generic PLA;FlyingBear Generic TPU"
+}
\ No newline at end of file
diff --git a/resources/profiles/FlyingBear/machine/S1/FlyingBear S1 0.4 nozzle.json b/resources/profiles/FlyingBear/machine/S1/FlyingBear S1 0.4 nozzle.json
index 6618353130..7ac0390672 100644
--- a/resources/profiles/FlyingBear/machine/S1/FlyingBear S1 0.4 nozzle.json
+++ b/resources/profiles/FlyingBear/machine/S1/FlyingBear S1 0.4 nozzle.json
@@ -115,7 +115,7 @@
"0"
],
"machine_pause_gcode": "PAUSE",
- "machine_start_gcode": ";v2.9-20240311;\n;wiping nozzle start\nM106 P3 S0\nclean_nozzle_position\n;wiping nozzle end\n;*************preheat nozzle and hotbed for Z_TILT_ADJUST*************\nM140 S[bed_temperature_initial_layer_single]\nM104 S130\nG1 X110 Y110 F6000 \nG4 P200\nprobe\nSET_KINEMATIC_POSITION Z=0 ;Z homing\nZ_TILT_ADJUST \n;*************Z_TILT_ADJUST end*************\nM140 S[bed_temperature_initial_layer_single] ;heat hotbed temp set by user\nG1 X5 Y5 F6000 \nG28 \nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[0] + 60,print_bed_max[0])} F6000 \nG1 Z0.2 F600\nM104 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user\nM106 S100 ;close head_nozzle fan\nG4 P3000\nM106 S255 ;close head_nozzle fan\nG4 P3000\nM106 S100 ;close head_nozzle fan\n;*************PRINT START*************\nM109 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user and wait \nM190 S[bed_temperature_initial_layer_single];heat bed temp set by user and wait \nM106 S0 ;close head_nozzle fan\nBED_MESH_CLEAR \nBED_MESH_PROFILE LOAD=default # bedmesh load\nG92 E0 ;Reset Extruder\nG1 Z4.0 F200 ;Move Z Axis up\nG90 ;absolute position\n ; ; ; ; ; ; ; ; ; draw line along model\nG92 E0 ;reset extruder\nG1 E4 F300 ;extrude filament\nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[0] + 60,print_bed_max[0])} F6000 \nG1 Z0.22 F600\nG1 X{first_layer_print_min[0]-1.5} Y{max(0, first_layer_print_min[1]-1.5)} F2000 E10\nG1 Z0.22 F600\nG1 X{min(first_layer_print_min[0] + 60,print_bed_max[0])} F1200 E12\n ; ; ; ; ; ; ; ; ;draw line along model end \nG4 P200\nG1 Z2\nG92 E0 ;Reset Extruder\nCLEAR_PAUSE\n;***********model start************\n",
+ "machine_start_gcode": ";v2.9.1-20240620;\n;wiping nozzle start\nM106 P3 S0\nclean_nozzle_position\n;wiping nozzle end\n;*************preheat nozzle and hotbed for Z_TILT_ADJUST*************\nM140 S[bed_temperature_initial_layer_single]\nM104 S130\nG1 X110 Y110 F6000 \nG4 P200\nprobe\nSET_KINEMATIC_POSITION Z=0 ;Z homing\nZ_TILT_ADJUST \n;*************Z_TILT_ADJUST end*************\nM140 S[bed_temperature_initial_layer_single] ;heat hotbed temp set by user\nG1 X5 Y5 F6000 \nG28 \nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[0] + 60,print_bed_max[0])} F6000 \nG1 Z0.2 F600\nM104 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user\nM106 S100 ;close head_nozzle fan\nG4 P3000\nM106 S255 ;close head_nozzle fan\nG4 P3000\nM106 S100 ;close head_nozzle fan\n;*************PRINT START*************\nM109 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user and wait \nM190 S[bed_temperature_initial_layer_single];heat bed temp set by user and wait \nM106 S0 ;close head_nozzle fan\nBED_MESH_CLEAR \nBED_MESH_PROFILE LOAD=default # bedmesh load\nG92 E0 ;Reset Extruder\nG1 Z4.0 F200 ;Move Z Axis up\nG90 ;absolute position\n ; ; ; ; ; ; ; ; ; draw line along model\nG92 E0 ;reset extruder\nG1 E4 F300 ;extrude filament\nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[1] + 60,print_bed_max[0])} F6000 \nG1 Z0.22 F600\nG1 X{first_layer_print_min[0]-1.5} Y{max(0, first_layer_print_min[1]-1.5)} F2000 E10\nG1 Z0.22 F600\nG1 X{min(first_layer_print_min[0] + 60,print_bed_max[0])} F1200 E12\n ; ; ; ; ; ; ; ; ;draw line along model end \nG4 P200\nG1 Z2\nG92 E0 ;Reset Extruder\nCLEAR_PAUSE\n;***********model start************\n",
"machine_unload_filament_time": "0",
"max_layer_height": [
"0.28"
diff --git a/resources/profiles/FlyingBear/machine/fdm_marlin_common.json b/resources/profiles/FlyingBear/machine/fdm_marlin_common.json
new file mode 100644
index 0000000000..c2c409a95f
--- /dev/null
+++ b/resources/profiles/FlyingBear/machine/fdm_marlin_common.json
@@ -0,0 +1,119 @@
+{
+ "type": "machine",
+ "name": "fdm_marlin_common",
+ "from": "system",
+ "instantiation": "false",
+ "printer_technology": "FFF",
+ "deretraction_speed": [
+ "40"
+ ],
+ "extruder_colour": [
+ "#FCE94F"
+ ],
+ "extruder_offset": [
+ "0x0"
+ ],
+ "gcode_flavor": "marlin",
+ "silent_mode": "0",
+ "machine_max_acceleration_e": [
+ "5000"
+ ],
+ "machine_max_acceleration_extruding": [
+ "10000"
+ ],
+ "machine_max_acceleration_retracting": [
+ "1000"
+ ],
+ "machine_max_acceleration_x": [
+ "10000"
+ ],
+ "machine_max_acceleration_y": [
+ "10000"
+ ],
+ "machine_max_acceleration_z": [
+ "500"
+ ],
+ "machine_max_speed_e": [
+ "60"
+ ],
+ "machine_max_speed_x": [
+ "500"
+ ],
+ "machine_max_speed_y": [
+ "500"
+ ],
+ "machine_max_speed_z": [
+ "10"
+ ],
+ "machine_max_jerk_e": [
+ "5"
+ ],
+ "machine_max_jerk_x": [
+ "8"
+ ],
+ "machine_max_jerk_y": [
+ "8"
+ ],
+ "machine_max_jerk_z": [
+ "0.4"
+ ],
+ "machine_min_extruding_rate": [
+ "0"
+ ],
+ "machine_min_travel_rate": [
+ "0"
+ ],
+ "max_layer_height": [
+ "0.32"
+ ],
+ "min_layer_height": [
+ "0.08"
+ ],
+ "printable_height": "250",
+ "extruder_clearance_radius": "65",
+ "extruder_clearance_height_to_rod": "36",
+ "extruder_clearance_height_to_lid": "140",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "printer_settings_id": "",
+ "printer_variant": "0.4",
+ "retraction_minimum_travel": [
+ "2"
+ ],
+ "retract_before_wipe": [
+ "70%"
+ ],
+ "retract_when_changing_layer": [
+ "1"
+ ],
+ "retraction_length": [
+ "5"
+ ],
+ "retract_length_toolchange": [
+ "1"
+ ],
+ "z_hop": [
+ "0"
+ ],
+ "retract_restart_extra": [
+ "0"
+ ],
+ "retract_restart_extra_toolchange": [
+ "0"
+ ],
+ "retraction_speed": [
+ "60"
+ ],
+ "single_extruder_multi_material": "1",
+ "change_filament_gcode": "",
+ "wipe": [
+ "1"
+ ],
+ "default_print_profile": "",
+ "machine_start_gcode": "G0 Z20 F9000\nG92 E0; G1 E-10 F1200\nG28\nM970 Q1 A10 B10 C130 K0\nM970 Q1 A10 B131 C250 K1\nM974 Q1 S1 P0\nM970 Q0 A10 B10 C130 H20 K0\nM970 Q0 A10 B131 C250 K1\nM974 Q0 S1 P0\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG29 ;Home\nG90;\nG92 E0 ;Reset Extruder \nG1 Z2.0 F3000 ;Move Z Axis up \nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nM109 S205;\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder \nG1 X110 Y110 Z2.0 F3000 ;Move Z Axis up",
+ "machine_end_gcode": "M400 ; wait for buffer to clear\nG92 E0 ; zero the extruder\nG1 E-4.0 F3600; retract \nG91\nG1 Z3;\nM104 S0 ; turn off hotend\nM140 S0 ; turn off bed\nM106 S0 ; turn off fan\nG90 \nG0 X110 Y200 F3600 \nprint_end",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]",
+ "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n",
+ "machine_pause_gcode": "M601"
+}
diff --git a/resources/profiles/FlyingBear/process/0.12mm Fine @FlyingBear Ghost 6 0.4 nozzle.json b/resources/profiles/FlyingBear/process/0.12mm Fine @FlyingBear Ghost 6 0.4 nozzle.json
new file mode 100644
index 0000000000..d27ae80536
--- /dev/null
+++ b/resources/profiles/FlyingBear/process/0.12mm Fine @FlyingBear Ghost 6 0.4 nozzle.json
@@ -0,0 +1,13 @@
+{
+ "type": "process",
+ "setting_id": "GP004",
+ "name": "0.12mm Fine @FlyingBear Ghost 6 0.4 nozzle",
+ "from": "system",
+ "inherits": "fdm_process_ghost_6",
+ "instantiation": "true",
+ "compatible_printers": ["FlyingBear Ghost 6 0.4 nozzle"],
+ "layer_height": "0.12",
+ "initial_layer_print_height": "0.12",
+ "bottom_shell_layers": "5",
+ "top_shell_layers": "5"
+}
\ No newline at end of file
diff --git a/resources/profiles/FlyingBear/process/0.16mm Optimal @FlyingBear Ghost 6 0.4 nozzle.json b/resources/profiles/FlyingBear/process/0.16mm Optimal @FlyingBear Ghost 6 0.4 nozzle.json
new file mode 100644
index 0000000000..631857cfb4
--- /dev/null
+++ b/resources/profiles/FlyingBear/process/0.16mm Optimal @FlyingBear Ghost 6 0.4 nozzle.json
@@ -0,0 +1,13 @@
+{
+ "type": "process",
+ "setting_id": "GP004",
+ "name": "0.16mm Optimal @FlyingBear Ghost 6 0.4 nozzle",
+ "from": "system",
+ "inherits": "fdm_process_ghost_6",
+ "instantiation": "true",
+ "compatible_printers": ["FlyingBear Ghost 6 0.4 nozzle"],
+ "layer_height": "0.16",
+ "initial_layer_print_height": "0.16",
+ "bottom_shell_layers": "4",
+ "top_shell_layers": "4"
+}
\ No newline at end of file
diff --git a/resources/profiles/FlyingBear/process/0.20mm Standard @FlyingBear Ghost 6 0.4 nozzle.json b/resources/profiles/FlyingBear/process/0.20mm Standard @FlyingBear Ghost 6 0.4 nozzle.json
new file mode 100644
index 0000000000..99ed782b18
--- /dev/null
+++ b/resources/profiles/FlyingBear/process/0.20mm Standard @FlyingBear Ghost 6 0.4 nozzle.json
@@ -0,0 +1,13 @@
+{
+ "type": "process",
+ "setting_id": "GP004",
+ "name": "0.20mm Standard @FlyingBear Ghost 6 0.4 nozzle",
+ "from": "system",
+ "inherits": "fdm_process_ghost_6",
+ "instantiation": "true",
+ "compatible_printers": ["FlyingBear Ghost 6 0.4 nozzle"],
+ "layer_height": "0.2",
+ "initial_layer_print_height": "0.2",
+ "bottom_shell_layers": "3",
+ "top_shell_layers": "3"
+}
\ No newline at end of file
diff --git a/resources/profiles/FlyingBear/process/0.24mm Draft @FlyingBear Ghost 6 0.4 nozzle.json b/resources/profiles/FlyingBear/process/0.24mm Draft @FlyingBear Ghost 6 0.4 nozzle.json
new file mode 100644
index 0000000000..544e436d87
--- /dev/null
+++ b/resources/profiles/FlyingBear/process/0.24mm Draft @FlyingBear Ghost 6 0.4 nozzle.json
@@ -0,0 +1,13 @@
+{
+ "type": "process",
+ "setting_id": "GP004",
+ "name": "0.24mm Draft @FlyingBear Ghost 6 0.4 nozzle",
+ "from": "system",
+ "inherits": "fdm_process_ghost_6",
+ "instantiation": "true",
+ "compatible_printers": ["FlyingBear Ghost 6 0.4 nozzle"],
+ "layer_height": "0.24",
+ "initial_layer_print_height": "0.24",
+ "bottom_shell_layers": "3",
+ "top_shell_layers": "3"
+}
diff --git a/resources/profiles/FlyingBear/process/fdm_process_ghost_6.json b/resources/profiles/FlyingBear/process/fdm_process_ghost_6.json
new file mode 100644
index 0000000000..0889396c8e
--- /dev/null
+++ b/resources/profiles/FlyingBear/process/fdm_process_ghost_6.json
@@ -0,0 +1,41 @@
+{
+ "type": "process",
+ "name": "fdm_process_ghost_6",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_process_marlin_common",
+ "wall_generator": "arachne",
+ "elefant_foot_compensation": "0.15",
+ "elefant_foot_compensation_layers": "1",
+ "infill_wall_overlap": "15%",
+ "top_shell_thickness": "0.6",
+ "internal_bridge_speed": "150%",
+
+ "layer_height": "0.2",
+ "bottom_shell_layers": "3",
+ "top_shell_layers": "3",
+ "initial_layer_print_height": "0.2",
+ "initial_layer_speed": "45",
+ "initial_layer_infill_speed": "60",
+ "outer_wall_speed": "60",
+ "inner_wall_speed": "80",
+ "sparse_infill_speed": "80",
+ "internal_solid_infill_speed": "80",
+ "top_surface_speed": "50",
+ "gap_infill_speed": "80",
+ "ironing_speed": "30",
+ "overhang_1_4_speed": "0",
+ "overhang_2_4_speed": "50",
+ "overhang_3_4_speed": "30",
+ "overhang_4_4_speed": "10",
+ "bridge_speed": "50",
+ "travel_speed": "150",
+ "support_interface_speed": "40",
+ "support_speed": "60",
+ "default_acceleration": "1000",
+ "outer_wall_acceleration": "1000",
+ "inner_wall_acceleration": "1000",
+ "initial_layer_acceleration": "500",
+ "top_surface_acceleration": "1000",
+ "travel_acceleration": "1500"
+}
diff --git a/resources/profiles/FlyingBear/process/fdm_process_marlin_common.json b/resources/profiles/FlyingBear/process/fdm_process_marlin_common.json
new file mode 100644
index 0000000000..5bd60353a9
--- /dev/null
+++ b/resources/profiles/FlyingBear/process/fdm_process_marlin_common.json
@@ -0,0 +1,109 @@
+{
+ "type": "process",
+ "name": "fdm_process_marlin_common",
+ "from": "system",
+ "instantiation": "false",
+ "adaptive_layer_height": "0",
+ "reduce_crossing_wall": "0",
+ "max_travel_detour_distance": "0",
+ "bottom_surface_pattern": "monotonic",
+ "bottom_shell_thickness": "0",
+ "bridge_speed": "50",
+ "brim_width": "5",
+ "brim_object_gap": "0.1",
+ "compatible_printers_condition": "",
+ "print_sequence": "by layer",
+ "default_acceleration": "1000",
+ "initial_layer_acceleration": "500",
+ "top_surface_acceleration": "1000",
+ "travel_acceleration": "1000",
+ "inner_wall_acceleration": "1000",
+ "outer_wall_acceleration": "1000",
+ "bridge_no_support": "0",
+ "draft_shield": "disabled",
+ "elefant_foot_compensation": "0",
+ "enable_arc_fitting": "0",
+ "wall_infill_order": "inner wall/outer wall/infill",
+ "infill_direction": "45",
+ "sparse_infill_density": "15%",
+ "sparse_infill_pattern": "crosshatch",
+ "initial_layer_print_height": "0.2",
+ "infill_combination": "0",
+ "infill_wall_overlap": "25%",
+ "interface_shells": "0",
+ "ironing_flow": "10%",
+ "ironing_spacing": "0.15",
+ "ironing_speed": "30",
+ "ironing_type": "no ironing",
+ "reduce_infill_retraction": "1",
+ "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode",
+ "detect_overhang_wall": "1",
+ "slowdown_for_curled_perimeters": "1",
+ "overhang_1_4_speed": "0",
+ "overhang_2_4_speed": "50",
+ "overhang_3_4_speed": "30",
+ "overhang_4_4_speed": "10",
+ "line_width": "0.42",
+ "inner_wall_line_width": "0.45",
+ "outer_wall_line_width": "0.42",
+ "top_surface_line_width": "0.42",
+ "sparse_infill_line_width": "0.45",
+ "initial_layer_line_width": "0.5",
+ "internal_solid_infill_line_width": "0.42",
+ "support_line_width": "0.42",
+ "wall_loops": "3",
+ "print_settings_id": "",
+ "raft_layers": "0",
+ "seam_position": "aligned",
+ "skirt_distance": "2",
+ "skirt_height": "1",
+ "min_skirt_length": "4",
+ "skirt_loops": "0",
+ "minimum_sparse_infill_area": "15",
+ "spiral_mode": "0",
+ "standby_temperature_delta": "-5",
+ "enable_support": "0",
+ "resolution": "0.012",
+ "support_type": "normal(auto)",
+ "support_on_build_plate_only": "0",
+ "support_top_z_distance": "0.2",
+ "support_bottom_z_distance": "0.2",
+ "support_filament": "0",
+ "support_interface_loop_pattern": "0",
+ "support_interface_filament": "0",
+ "support_interface_top_layers": "2",
+ "support_interface_bottom_layers": "2",
+ "support_interface_spacing": "0.5",
+ "support_interface_speed": "40",
+ "support_base_pattern": "rectilinear",
+ "support_base_pattern_spacing": "2.5",
+ "support_speed": "60",
+ "support_threshold_angle": "30",
+ "support_object_xy_distance": "0.35",
+ "tree_support_branch_angle": "45",
+ "tree_support_wall_count": "0",
+ "tree_support_with_infill": "0",
+ "detect_thin_wall": "0",
+ "top_surface_pattern": "monotonicline",
+ "top_shell_thickness": "0.8",
+ "enable_prime_tower": "0",
+ "wipe_tower_no_sparse_layers": "0",
+ "prime_tower_width": "60",
+ "xy_hole_compensation": "0",
+ "xy_contour_compensation": "0",
+ "layer_height": "0.2",
+ "bottom_shell_layers": "3",
+ "top_shell_layers": "3",
+ "bridge_flow": "0.95",
+ "initial_layer_speed": "45",
+ "initial_layer_infill_speed": "60",
+ "outer_wall_speed": "60",
+ "inner_wall_speed": "80",
+ "sparse_infill_speed": "80",
+ "internal_solid_infill_speed": "80",
+ "top_surface_speed": "50",
+ "gap_infill_speed": "80",
+ "travel_speed": "150",
+ "inherits": "fdm_process_common",
+ "support_style": "default"
+}
diff --git a/resources/profiles/Folgertech.json b/resources/profiles/Folgertech.json
index f38f081914..e4b312a0b5 100644
--- a/resources/profiles/Folgertech.json
+++ b/resources/profiles/Folgertech.json
@@ -1,6 +1,6 @@
{
"name": "Folgertech",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Folgertech configurations",
"machine_model_list": [
diff --git a/resources/profiles/Folgertech/Folgertech_FT6_buildplate_model.stl b/resources/profiles/Folgertech/Folgertech_FT6_buildplate_model.stl
index 38a29ad335..547ffd414d 100644
Binary files a/resources/profiles/Folgertech/Folgertech_FT6_buildplate_model.stl and b/resources/profiles/Folgertech/Folgertech_FT6_buildplate_model.stl differ
diff --git a/resources/profiles/Folgertech/hotend.stl b/resources/profiles/Folgertech/hotend.stl
index 4138160ec0..1eb4873639 100644
Binary files a/resources/profiles/Folgertech/hotend.stl and b/resources/profiles/Folgertech/hotend.stl differ
diff --git a/resources/profiles/Geeetech.json b/resources/profiles/Geeetech.json
new file mode 100644
index 0000000000..a312f739d2
--- /dev/null
+++ b/resources/profiles/Geeetech.json
@@ -0,0 +1,618 @@
+{
+ "name": "Geeetech",
+ "version": "02.01.01.00",
+ "force_update": "0",
+ "description": "Geeetech configurations",
+ "machine_model_list": [
+ {
+ "name": "Geeetech Thunder",
+ "sub_path": "machine/Geeetech Thunder.json"
+ },
+ {
+ "name": "Geeetech Mizar M",
+ "sub_path": "machine/Geeetech Mizar M.json"
+ },
+ {
+ "name": "Geeetech Mizar S",
+ "sub_path": "machine/Geeetech Mizar S.json"
+ },
+ {
+ "name": "Geeetech Mizar Pro",
+ "sub_path": "machine/Geeetech Mizar Pro.json"
+ },
+ {
+ "name": "Geeetech Mizar Max",
+ "sub_path": "machine/Geeetech Mizar Max.json"
+ },
+ {
+ "name": "Geeetech Mizar",
+ "sub_path": "machine/Geeetech Mizar.json"
+ },
+ {
+ "name": "Geeetech A10 Pro",
+ "sub_path": "machine/Geeetech A10 Pro.json"
+ },
+ {
+ "name": "Geeetech A10 M",
+ "sub_path": "machine/Geeetech A10 M.json"
+ },
+ {
+ "name": "Geeetech A10 T",
+ "sub_path": "machine/Geeetech A10 T.json"
+ },
+ {
+ "name": "Geeetech A20",
+ "sub_path": "machine/Geeetech A20.json"
+ },
+ {
+ "name": "Geeetech A20 M",
+ "sub_path": "machine/Geeetech A20 M.json"
+ },
+ {
+ "name": "Geeetech A20 T",
+ "sub_path": "machine/Geeetech A20 T.json"
+ },
+ {
+ "name": "Geeetech A30 Pro",
+ "sub_path": "machine/Geeetech A30 Pro.json"
+ },
+ {
+ "name": "Geeetech A30 M",
+ "sub_path": "machine/Geeetech A30 M.json"
+ },
+ {
+ "name": "Geeetech A30 T",
+ "sub_path": "machine/Geeetech A30 T.json"
+ }
+ ],
+ "process_list": [
+ {
+ "name": "fdm_process_common",
+ "sub_path": "process/fdm_process_common.json"
+ },
+ {
+ "name": "fdm_process_geeetech_common",
+ "sub_path": "process/fdm_process_geeetech_common.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS",
+ "sub_path": "process/fdm_process_Geeetech_HS.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.08",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.08.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.08_nozzle_0.2",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.08_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.10",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.10.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.10_nozzle_0.2",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.10_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.12_nozzle_0.2",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.12_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.14_nozzle_0.2",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.14_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.16",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.16.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.20",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.20.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.24_nozzle_0.6",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.24_nozzle_0.6.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.30_nozzle_0.6",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.30_nozzle_0.6.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.25",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.25.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.36_nozzle_0.6",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.36_nozzle_0.6.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.36_nozzle_0.8",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.36_nozzle_0.8.json"
+ },
+ {
+ "name": "fdm_process_Geeetech_HS_0.44_nozzle_0.8",
+ "sub_path": "process/fdm_process_Geeetech_HS_0.44_nozzle_0.8.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.06_nozzle_0.2",
+ "sub_path": "process/fdm_process_geeetech_0.06_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.08",
+ "sub_path": "process/fdm_process_geeetech_0.08.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.08_nozzle_0.2",
+ "sub_path": "process/fdm_process_geeetech_0.08_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.10_nozzle_0.2",
+ "sub_path": "process/fdm_process_geeetech_0.10_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.12",
+ "sub_path": "process/fdm_process_geeetech_0.12.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.12_nozzle_0.2",
+ "sub_path": "process/fdm_process_geeetech_0.12_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.14_nozzle_0.2",
+ "sub_path": "process/fdm_process_geeetech_0.14_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.16",
+ "sub_path": "process/fdm_process_geeetech_0.16.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.18_nozzle_0.6",
+ "sub_path": "process/fdm_process_geeetech_0.18_nozzle_0.6.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.20",
+ "sub_path": "process/fdm_process_geeetech_0.20.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.24",
+ "sub_path": "process/fdm_process_geeetech_0.24.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.24_nozzle_0.6",
+ "sub_path": "process/fdm_process_geeetech_0.24_nozzle_0.6.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.24_nozzle_0.8",
+ "sub_path": "process/fdm_process_geeetech_0.24_nozzle_0.8.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.28",
+ "sub_path": "process/fdm_process_geeetech_0.28.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.30_nozzle_0.6",
+ "sub_path": "process/fdm_process_geeetech_0.30_nozzle_0.6.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.32_nozzle_0.8",
+ "sub_path": "process/fdm_process_geeetech_0.32_nozzle_0.8.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.36_nozzle_0.6",
+ "sub_path": "process/fdm_process_geeetech_0.36_nozzle_0.6.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.40_nozzle_0.8",
+ "sub_path": "process/fdm_process_geeetech_0.40_nozzle_0.8.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.42_nozzle_0.6",
+ "sub_path": "process/fdm_process_geeetech_0.42_nozzle_0.6.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.48_nozzle_0.8",
+ "sub_path": "process/fdm_process_geeetech_0.48_nozzle_0.8.json"
+ },
+ {
+ "name": "fdm_process_geeetech_0.56_nozzle_0.8",
+ "sub_path": "process/fdm_process_geeetech_0.56_nozzle_0.8.json"
+ },
+ {
+ "name": "0.06mm Fine @Geeetech common 0.2 nozzle",
+ "sub_path": "process/0.06mm Fine @Geeetech common 0.2 nozzle.json"
+ },
+ {
+ "name": "0.08mm Extra Fine @Geeetech common",
+ "sub_path": "process/0.08mm Extra Fine @Geeetech common.json"
+ },
+ {
+ "name": "0.08mm Extra Fine @Geeetech Thunder",
+ "sub_path": "process/0.08mm Extra Fine @Geeetech Thunder.json"
+ },
+ {
+ "name": "0.08mm Optimal @Geeetech common 0.2 nozzle",
+ "sub_path": "process/0.08mm Optimal @Geeetech common 0.2 nozzle.json"
+ },
+ {
+ "name": "0.08mm Optimal @Geeetech Thunder 0.2 nozzle",
+ "sub_path": "process/0.08mm Optimal @Geeetech Thunder 0.2 nozzle.json"
+ },
+ {
+ "name": "0.10mm Fine @Geeetech Thunder",
+ "sub_path": "process/0.10mm Fine @Geeetech Thunder.json"
+ },
+ {
+ "name": "0.10mm Standard @Geeetech common 0.2 nozzle",
+ "sub_path": "process/0.10mm Standard @Geeetech common 0.2 nozzle.json"
+ },
+ {
+ "name": "0.10mm Standard @Geeetech Thunder 0.2 nozzle",
+ "sub_path": "process/0.10mm Standard @Geeetech Thunder 0.2 nozzle.json"
+ },
+ {
+ "name": "0.12mm Draft @Geeetech common 0.2 nozzle",
+ "sub_path": "process/0.12mm Draft @Geeetech common 0.2 nozzle.json"
+ },
+ {
+ "name": "0.12mm Draft @Geeetech Thunder 0.2 nozzle",
+ "sub_path": "process/0.12mm Draft @Geeetech Thunder 0.2 nozzle.json"
+ },
+ {
+ "name": "0.12mm Fine @Geeetech common",
+ "sub_path": "process/0.12mm Fine @Geeetech common.json"
+ },
+ {
+ "name": "0.14mm Extra Draft @Geeetech common 0.2 nozzle",
+ "sub_path": "process/0.14mm Extra Draft @Geeetech common 0.2 nozzle.json"
+ },
+ {
+ "name": "0.14mm Extra Draft @Geeetech Thunder 0.2 nozzle",
+ "sub_path": "process/0.14mm Extra Draft @Geeetech Thunder 0.2 nozzle.json"
+ },
+ {
+ "name": "0.16mm Optimal @Geeetech common",
+ "sub_path": "process/0.16mm Optimal @Geeetech common.json"
+ },
+ {
+ "name": "0.16mm Optimal @Geeetech Thunder",
+ "sub_path": "process/0.16mm Optimal @Geeetech Thunder.json"
+ },
+ {
+ "name": "0.18mm Fine @Geeetech common 0.6 nozzle",
+ "sub_path": "process/0.18mm Fine @Geeetech common 0.6 nozzle.json"
+ },
+ {
+ "name": "0.20mm Standard @Geeetech common",
+ "sub_path": "process/0.20mm Standard @Geeetech common.json"
+ },
+ {
+ "name": "0.20mm Standard @Geeetech Thunder",
+ "sub_path": "process/0.20mm Standard @Geeetech Thunder.json"
+ },
+ {
+ "name": "0.20mm Strength @Geeetech common",
+ "sub_path": "process/0.20mm Strength @Geeetech common.json"
+ },
+ {
+ "name": "0.24mm Draft @Geeetech common",
+ "sub_path": "process/0.24mm Draft @Geeetech common.json"
+ },
+ {
+ "name": "0.24mm Fine @Geeetech common 0.8 nozzle",
+ "sub_path": "process/0.24mm Fine @Geeetech common 0.8 nozzle.json"
+ },
+ {
+ "name": "0.24mm Optimal @Geeetech common 0.6 nozzle",
+ "sub_path": "process/0.24mm Optimal @Geeetech common 0.6 nozzle.json"
+ },
+ {
+ "name": "0.24mm Optimal @Geeetech Thunder 0.6 nozzle",
+ "sub_path": "process/0.24mm Optimal @Geeetech Thunder 0.6 nozzle.json"
+ },
+ {
+ "name": "0.25mm Draft @Geeetech Thunder",
+ "sub_path": "process/0.25mm Draft @Geeetech Thunder.json"
+ },
+ {
+ "name": "0.28mm Extra Draft @Geeetech common",
+ "sub_path": "process/0.28mm Extra Draft @Geeetech common.json"
+ },
+ {
+ "name": "0.30mm Standard @Geeetech common 0.6 nozzle",
+ "sub_path": "process/0.30mm Standard @Geeetech common 0.6 nozzle.json"
+ },
+ {
+ "name": "0.30mm Standard @Geeetech Thunder 0.6 nozzle",
+ "sub_path": "process/0.30mm Standard @Geeetech Thunder 0.6 nozzle.json"
+ },
+ {
+ "name": "0.30mm Strength @Geeetech common 0.6 nozzle",
+ "sub_path": "process/0.30mm Strength @Geeetech common 0.6 nozzle.json"
+ },
+ {
+ "name": "0.32mm Optimal @Geeetech common 0.8 nozzle",
+ "sub_path": "process/0.32mm Optimal @Geeetech common 0.8 nozzle.json"
+ },
+ {
+ "name": "0.36mm Draft @Geeetech common 0.6 nozzle",
+ "sub_path": "process/0.36mm Draft @Geeetech common 0.6 nozzle.json"
+ },
+ {
+ "name": "0.36mm Draft @Geeetech Thunder 0.6 nozzle",
+ "sub_path": "process/0.36mm Draft @Geeetech Thunder 0.6 nozzle.json"
+ },
+ {
+ "name": "0.36mm Optimal @Geeetech Thunder 0.8 nozzle",
+ "sub_path": "process/0.36mm Optimal @Geeetech Thunder 0.8 nozzle.json"
+ },
+ {
+ "name": "0.40mm Standard @Geeetech common 0.8 nozzle",
+ "sub_path": "process/0.40mm Standard @Geeetech common 0.8 nozzle.json"
+ },
+ {
+ "name": "0.42mm Extra Draft @Geeetech common 0.6 nozzle",
+ "sub_path": "process/0.42mm Extra Draft @Geeetech common 0.6 nozzle.json"
+ },
+ {
+ "name": "0.44mm Draft @Geeetech Thunder 0.8 nozzle",
+ "sub_path": "process/0.44mm Draft @Geeetech Thunder 0.8 nozzle.json"
+ },
+ {
+ "name": "0.48mm Draft @Geeetech common 0.8 nozzle",
+ "sub_path": "process/0.48mm Draft @Geeetech common 0.8 nozzle.json"
+ },
+ {
+ "name": "0.56mm Extra Draft @Geeetech common 0.8 nozzle",
+ "sub_path": "process/0.56mm Extra Draft @Geeetech common 0.8 nozzle.json"
+ }
+ ],
+ "filament_list": [
+ {
+ "name": "fdm_filament_common",
+ "sub_path": "filament/fdm_filament_common.json"
+ },
+ {
+ "name": "fdm_filament_abs",
+ "sub_path": "filament/fdm_filament_abs.json"
+ },
+ {
+ "name": "fdm_filament_asa",
+ "sub_path": "filament/fdm_filament_asa.json"
+ },
+ {
+ "name": "fdm_filament_pa",
+ "sub_path": "filament/fdm_filament_pa.json"
+ },
+ {
+ "name": "fdm_filament_pc",
+ "sub_path": "filament/fdm_filament_pc.json"
+ },
+ {
+ "name": "fdm_filament_pet",
+ "sub_path": "filament/fdm_filament_pet.json"
+ },
+ {
+ "name": "fdm_filament_pva",
+ "sub_path": "filament/fdm_filament_pva.json"
+ },
+ {
+ "name": "fdm_filament_pla",
+ "sub_path": "filament/fdm_filament_pla.json"
+ },
+ {
+ "name": "fdm_filament_tpu",
+ "sub_path": "filament/fdm_filament_tpu.json"
+ },
+ {
+ "name": "Generic ABS @Geeetech",
+ "sub_path": "filament/Generic ABS @Geeetech.json"
+ },
+ {
+ "name": "Generic ASA @Geeetech",
+ "sub_path": "filament/Generic ASA @Geeetech.json"
+ },
+ {
+ "name": "Generic PA @Geeetech",
+ "sub_path": "filament/Generic PA @Geeetech.json"
+ },
+ {
+ "name": "Generic PC @Geeetech",
+ "sub_path": "filament/Generic PC @Geeetech.json"
+ },
+ {
+ "name": "Generic PETG @Geeetech",
+ "sub_path": "filament/Generic PETG @Geeetech.json"
+ },
+ {
+ "name": "Generic PLA @Geeetech",
+ "sub_path": "filament/Generic PLA @Geeetech.json"
+ },
+ {
+ "name": "Generic PLA @Geeetech_FastSpeed",
+ "sub_path": "filament/Generic PLA @Geeetech_FastSpeed.json"
+ },
+ {
+ "name": "Generic PLA-CF @Geeetech",
+ "sub_path": "filament/Generic PLA-CF @Geeetech.json"
+ },
+ {
+ "name": "Generic PVA @Geeetech",
+ "sub_path": "filament/Generic PVA @Geeetech.json"
+ },
+ {
+ "name": "Generic TPU @Geeetech",
+ "sub_path": "filament/Generic TPU @Geeetech.json"
+ }
+ ],
+ "machine_list": [
+ {
+ "name": "fdm_machine_common",
+ "sub_path": "machine/fdm_machine_common.json"
+ },
+ {
+ "name": "fdm_geeetech_common",
+ "sub_path": "machine/fdm_geeetech_common.json"
+ },
+ {
+ "name": "fdm_Geeetech_HS_common",
+ "sub_path": "machine/fdm_Geeetech_HS_common.json"
+ },
+ {
+ "name": "Geeetech Thunder 0.2 nozzle",
+ "sub_path": "machine/Geeetech Thunder 0.2 nozzle.json"
+ },
+ {
+ "name": "Geeetech Thunder 0.4 nozzle",
+ "sub_path": "machine/Geeetech Thunder 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech Thunder 0.6 nozzle",
+ "sub_path": "machine/Geeetech Thunder 0.6 nozzle.json"
+ },
+ {
+ "name": "Geeetech Thunder 0.8 nozzle",
+ "sub_path": "machine/Geeetech Thunder 0.8 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar 0.2 nozzle",
+ "sub_path": "machine/Geeetech Mizar 0.2 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar 0.4 nozzle",
+ "sub_path": "machine/Geeetech Mizar 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar 0.6 nozzle",
+ "sub_path": "machine/Geeetech Mizar 0.6 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar 0.8 nozzle",
+ "sub_path": "machine/Geeetech Mizar 0.8 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar S 0.2 nozzle",
+ "sub_path": "machine/Geeetech Mizar S 0.2 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar S 0.4 nozzle",
+ "sub_path": "machine/Geeetech Mizar S 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar S 0.6 nozzle",
+ "sub_path": "machine/Geeetech Mizar S 0.6 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar S 0.8 nozzle",
+ "sub_path": "machine/Geeetech Mizar S 0.8 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar Pro 0.2 nozzle",
+ "sub_path": "machine/Geeetech Mizar Pro 0.2 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar Pro 0.4 nozzle",
+ "sub_path": "machine/Geeetech Mizar Pro 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar Pro 0.6 nozzle",
+ "sub_path": "machine/Geeetech Mizar Pro 0.6 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar Pro 0.8 nozzle",
+ "sub_path": "machine/Geeetech Mizar Pro 0.8 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar Max 0.2 nozzle",
+ "sub_path": "machine/Geeetech Mizar Max 0.2 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar Max 0.4 nozzle",
+ "sub_path": "machine/Geeetech Mizar Max 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar Max 0.6 nozzle",
+ "sub_path": "machine/Geeetech Mizar Max 0.6 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar Max 0.8 nozzle",
+ "sub_path": "machine/Geeetech Mizar Max 0.8 nozzle.json"
+ },
+ {
+ "name": "Geeetech Mizar M 0.4 nozzle",
+ "sub_path": "machine/Geeetech Mizar M 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech A10 Pro 0.2 nozzle",
+ "sub_path": "machine/Geeetech A10 Pro 0.2 nozzle.json"
+ },
+ {
+ "name": "Geeetech A10 Pro 0.4 nozzle",
+ "sub_path": "machine/Geeetech A10 Pro 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech A10 Pro 0.6 nozzle",
+ "sub_path": "machine/Geeetech A10 Pro 0.6 nozzle.json"
+ },
+ {
+ "name": "Geeetech A10 Pro 0.8 nozzle",
+ "sub_path": "machine/Geeetech A10 Pro 0.8 nozzle.json"
+ },
+ {
+ "name": "Geeetech A10 M 0.4 nozzle",
+ "sub_path": "machine/Geeetech A10 M 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech A10 T 0.4 nozzle",
+ "sub_path": "machine/Geeetech A10 T 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech A20 0.2 nozzle",
+ "sub_path": "machine/Geeetech A20 0.2 nozzle.json"
+ },
+ {
+ "name": "Geeetech A20 0.4 nozzle",
+ "sub_path": "machine/Geeetech A20 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech A20 0.6 nozzle",
+ "sub_path": "machine/Geeetech A20 0.6 nozzle.json"
+ },
+ {
+ "name": "Geeetech A20 0.8 nozzle",
+ "sub_path": "machine/Geeetech A20 0.8 nozzle.json"
+ },
+ {
+ "name": "Geeetech A20 M 0.4 nozzle",
+ "sub_path": "machine/Geeetech A20 M 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech A20 T 0.4 nozzle",
+ "sub_path": "machine/Geeetech A20 T 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech A30 Pro 0.2 nozzle",
+ "sub_path": "machine/Geeetech A30 Pro 0.2 nozzle.json"
+ },
+ {
+ "name": "Geeetech A30 Pro 0.4 nozzle",
+ "sub_path": "machine/Geeetech A30 Pro 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech A30 Pro 0.6 nozzle",
+ "sub_path": "machine/Geeetech A30 Pro 0.6 nozzle.json"
+ },
+ {
+ "name": "Geeetech A30 Pro 0.8 nozzle",
+ "sub_path": "machine/Geeetech A30 Pro 0.8 nozzle.json"
+ },
+ {
+ "name": "Geeetech A30 M 0.4 nozzle",
+ "sub_path": "machine/Geeetech A30 M 0.4 nozzle.json"
+ },
+ {
+ "name": "Geeetech A30 T 0.4 nozzle",
+ "sub_path": "machine/Geeetech A30 T 0.4 nozzle.json"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/220x220.stl b/resources/profiles/Geeetech/220x220.stl
new file mode 100644
index 0000000000..6519746e8a
Binary files /dev/null and b/resources/profiles/Geeetech/220x220.stl differ
diff --git a/resources/profiles/Geeetech/220x220.svg b/resources/profiles/Geeetech/220x220.svg
new file mode 100644
index 0000000000..20b4b8a0ca
--- /dev/null
+++ b/resources/profiles/Geeetech/220x220.svg
@@ -0,0 +1,110 @@
+
+
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/250x250.stl b/resources/profiles/Geeetech/250x250.stl
new file mode 100644
index 0000000000..b95a5e66e1
Binary files /dev/null and b/resources/profiles/Geeetech/250x250.stl differ
diff --git a/resources/profiles/Geeetech/250x250.svg b/resources/profiles/Geeetech/250x250.svg
new file mode 100644
index 0000000000..c981427130
--- /dev/null
+++ b/resources/profiles/Geeetech/250x250.svg
@@ -0,0 +1,114 @@
+
+
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/255x255.stl b/resources/profiles/Geeetech/255x255.stl
new file mode 100644
index 0000000000..a60b4a405a
Binary files /dev/null and b/resources/profiles/Geeetech/255x255.stl differ
diff --git a/resources/profiles/Geeetech/255x255.svg b/resources/profiles/Geeetech/255x255.svg
new file mode 100644
index 0000000000..ff0373ac61
--- /dev/null
+++ b/resources/profiles/Geeetech/255x255.svg
@@ -0,0 +1,114 @@
+
+
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/320x320.stl b/resources/profiles/Geeetech/320x320.stl
new file mode 100644
index 0000000000..086d5064a6
Binary files /dev/null and b/resources/profiles/Geeetech/320x320.stl differ
diff --git a/resources/profiles/Geeetech/320x320.svg b/resources/profiles/Geeetech/320x320.svg
new file mode 100644
index 0000000000..202c7c0542
--- /dev/null
+++ b/resources/profiles/Geeetech/320x320.svg
@@ -0,0 +1,130 @@
+
+
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/Geeetech A10 M_cover.png b/resources/profiles/Geeetech/Geeetech A10 M_cover.png
new file mode 100644
index 0000000000..8dc6a2582b
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech A10 M_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech A10 Pro_cover.png b/resources/profiles/Geeetech/Geeetech A10 Pro_cover.png
new file mode 100644
index 0000000000..4217da7c63
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech A10 Pro_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech A10 T_cover.png b/resources/profiles/Geeetech/Geeetech A10 T_cover.png
new file mode 100644
index 0000000000..c718b14c5a
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech A10 T_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech A20 M_cover.png b/resources/profiles/Geeetech/Geeetech A20 M_cover.png
new file mode 100644
index 0000000000..be82bbe451
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech A20 M_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech A20 T_cover.png b/resources/profiles/Geeetech/Geeetech A20 T_cover.png
new file mode 100644
index 0000000000..306b4e89f7
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech A20 T_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech A20_cover.png b/resources/profiles/Geeetech/Geeetech A20_cover.png
new file mode 100644
index 0000000000..4dc4e0b863
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech A20_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech A30 M_cover.png b/resources/profiles/Geeetech/Geeetech A30 M_cover.png
new file mode 100644
index 0000000000..a02424c910
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech A30 M_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech A30 Pro_cover.png b/resources/profiles/Geeetech/Geeetech A30 Pro_cover.png
new file mode 100644
index 0000000000..f757c4cb3e
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech A30 Pro_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech A30 T_cover.png b/resources/profiles/Geeetech/Geeetech A30 T_cover.png
new file mode 100644
index 0000000000..cd5f6b4b5d
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech A30 T_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech Mizar M_cover.png b/resources/profiles/Geeetech/Geeetech Mizar M_cover.png
new file mode 100644
index 0000000000..71a5ed3931
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech Mizar M_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech Mizar Max_cover.png b/resources/profiles/Geeetech/Geeetech Mizar Max_cover.png
new file mode 100644
index 0000000000..519deac260
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech Mizar Max_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech Mizar Pro_cover.png b/resources/profiles/Geeetech/Geeetech Mizar Pro_cover.png
new file mode 100644
index 0000000000..e0d2c08b89
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech Mizar Pro_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech Mizar S_cover.png b/resources/profiles/Geeetech/Geeetech Mizar S_cover.png
new file mode 100644
index 0000000000..ae3c91af71
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech Mizar S_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech Mizar_cover.png b/resources/profiles/Geeetech/Geeetech Mizar_cover.png
new file mode 100644
index 0000000000..c0ec971a45
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech Mizar_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech Thunder_cover.png b/resources/profiles/Geeetech/Geeetech Thunder_cover.png
new file mode 100644
index 0000000000..f6ad3165e2
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech Thunder_cover.png differ
diff --git a/resources/profiles/Geeetech/Geeetech_buildplate_texture.png b/resources/profiles/Geeetech/Geeetech_buildplate_texture.png
new file mode 100644
index 0000000000..5161dddf92
Binary files /dev/null and b/resources/profiles/Geeetech/Geeetech_buildplate_texture.png differ
diff --git a/resources/profiles/Geeetech/filament/Generic ABS @Geeetech.json b/resources/profiles/Geeetech/filament/Generic ABS @Geeetech.json
new file mode 100644
index 0000000000..2fc2aca7da
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/Generic ABS @Geeetech.json
@@ -0,0 +1,56 @@
+{
+ "type": "filament",
+ "filament_id": "GFB99",
+ "setting_id": "GFSB99_Geeetech_00",
+ "name": "Generic ABS @Geeetech",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_abs",
+ "filament_flow_ratio": [
+ "0.926"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle",
+ "Geeetech Mizar M 0.4 nozzle",
+ "Geeetech Thunder 0.2 nozzle",
+ "Geeetech Thunder 0.4 nozzle",
+ "Geeetech Thunder 0.6 nozzle",
+ "Geeetech Thunder 0.8 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/filament/Generic ASA @Geeetech.json b/resources/profiles/Geeetech/filament/Generic ASA @Geeetech.json
new file mode 100644
index 0000000000..6dfa8bf539
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/Generic ASA @Geeetech.json
@@ -0,0 +1,56 @@
+{
+ "type": "filament",
+ "filament_id": "GFB98",
+ "setting_id": "GFSB98_Geeetech_01",
+ "name": "Generic ASA @Geeetech",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_asa",
+ "filament_flow_ratio": [
+ "0.926"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle",
+ "Geeetech Mizar M 0.4 nozzle",
+ "Geeetech Thunder 0.2 nozzle",
+ "Geeetech Thunder 0.4 nozzle",
+ "Geeetech Thunder 0.6 nozzle",
+ "Geeetech Thunder 0.8 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/filament/Generic PA @Geeetech.json b/resources/profiles/Geeetech/filament/Generic PA @Geeetech.json
new file mode 100644
index 0000000000..f1e38d2525
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/Generic PA @Geeetech.json
@@ -0,0 +1,55 @@
+{
+ "type": "filament",
+ "filament_id": "GFN99",
+ "setting_id": "GFSN99_Geeetech_00",
+ "name": "Generic PA @Geeetech",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_pa",
+ "nozzle_temperature_initial_layer": [
+ "280"
+ ],
+ "nozzle_temperature": [
+ "280"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle",
+ "Geeetech Mizar M 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/filament/Generic PC @Geeetech.json b/resources/profiles/Geeetech/filament/Generic PC @Geeetech.json
new file mode 100644
index 0000000000..ce1d28c961
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/Generic PC @Geeetech.json
@@ -0,0 +1,52 @@
+{
+ "type": "filament",
+ "filament_id": "GFC99",
+ "setting_id": "GFSC99_Geeetech_00",
+ "name": "Generic PC @Geeetech",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_pc",
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "filament_flow_ratio": [
+ "0.94"
+ ],
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle",
+ "Geeetech Mizar M 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/filament/Generic PETG @Geeetech.json b/resources/profiles/Geeetech/filament/Generic PETG @Geeetech.json
new file mode 100644
index 0000000000..c7aa0898cf
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/Generic PETG @Geeetech.json
@@ -0,0 +1,86 @@
+{
+ "type": "filament",
+ "filament_id": "GFG99",
+ "setting_id": "GFSG99_Geeetech_00",
+ "name": "Generic PETG @Geeetech",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_pet",
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "overhang_fan_speed": [
+ "90"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "fan_max_speed": [
+ "90"
+ ],
+ "fan_min_speed": [
+ "40"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "10"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ],
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle",
+ "Geeetech Mizar M 0.4 nozzle",
+ "Geeetech Thunder 0.2 nozzle",
+ "Geeetech Thunder 0.4 nozzle",
+ "Geeetech Thunder 0.6 nozzle",
+ "Geeetech Thunder 0.8 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/filament/Generic PLA @Geeetech.json b/resources/profiles/Geeetech/filament/Generic PLA @Geeetech.json
new file mode 100644
index 0000000000..ffb9eb9c7a
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/Generic PLA @Geeetech.json
@@ -0,0 +1,51 @@
+{
+ "type": "filament",
+ "filament_id": "GFL99",
+ "setting_id": "GFSL99_Geeetech_00",
+ "name": "Generic PLA @Geeetech",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_pla",
+ "filament_flow_ratio": ["0.98"],
+ "filament_max_volumetric_speed": ["12"],
+ "slow_down_layer_time": ["8"],
+ "nozzle_temperature_initial_layer": ["205"],
+ "nozzle_temperature": ["200"],
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle",
+ "Geeetech Mizar M 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/filament/Generic PLA @Geeetech_FastSpeed.json b/resources/profiles/Geeetech/filament/Generic PLA @Geeetech_FastSpeed.json
new file mode 100644
index 0000000000..55297dbae2
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/Generic PLA @Geeetech_FastSpeed.json
@@ -0,0 +1,27 @@
+{
+ "type": "filament",
+ "filament_id": "GFL99",
+ "setting_id": "GFSL99_Geeetech_01",
+ "name": "Generic PLA @Geeetech_FastSpeed",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_pla",
+ "filament_flow_ratio": ["0.98"],
+ "filament_max_volumetric_speed": ["18"],
+ "slow_down_layer_time": ["1"],
+ "slow_down_min_speed": ["20"],
+ "cool_plate_temp": ["65"],
+ "eng_plate_temp": ["65"],
+ "hot_plate_temp": ["65"],
+ "textured_plate_temp": ["65"],
+ "cool_plate_temp_initial_layer": ["65"],
+ "eng_plate_temp_initial_layer": ["65"],
+ "hot_plate_temp_initial_layer": ["65"],
+ "textured_plate_temp_initial_layer": ["65"],
+ "compatible_printers": [
+ "Geeetech Thunder 0.2 nozzle",
+ "Geeetech Thunder 0.4 nozzle",
+ "Geeetech Thunder 0.6 nozzle",
+ "Geeetech Thunder 0.8 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/filament/Generic PLA-CF @Geeetech.json b/resources/profiles/Geeetech/filament/Generic PLA-CF @Geeetech.json
new file mode 100644
index 0000000000..e85c839b02
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/Generic PLA-CF @Geeetech.json
@@ -0,0 +1,62 @@
+{
+ "type": "filament",
+ "filament_id": "GFL98",
+ "setting_id": "GFSL98_Geeetech_00",
+ "name": "Generic PLA-CF @Geeetech",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_pla",
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_type": [
+ "PLA-CF"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "slow_down_layer_time": [
+ "7"
+ ],
+"compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle",
+ "Geeetech Mizar M 0.4 nozzle",
+ "Geeetech Thunder 0.2 nozzle",
+ "Geeetech Thunder 0.4 nozzle",
+ "Geeetech Thunder 0.6 nozzle",
+ "Geeetech Thunder 0.8 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/filament/Generic PVA @Geeetech.json b/resources/profiles/Geeetech/filament/Generic PVA @Geeetech.json
new file mode 100644
index 0000000000..954bc3a8a3
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/Generic PVA @Geeetech.json
@@ -0,0 +1,58 @@
+{
+ "type": "filament",
+ "filament_id": "GFS99",
+ "setting_id": "GFSS99_Geeetech_00",
+ "name": "Generic PVA @Geeetech",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_pva",
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "10"
+ ],
+ "slow_down_layer_time": [
+ "7"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle",
+ "Geeetech Mizar M 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/filament/Generic TPU @Geeetech.json b/resources/profiles/Geeetech/filament/Generic TPU @Geeetech.json
new file mode 100644
index 0000000000..58c2c94218
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/Generic TPU @Geeetech.json
@@ -0,0 +1,53 @@
+{
+ "type": "filament",
+ "filament_id": "GFU99",
+ "setting_id": "GFSU99_Geeetech_00",
+ "name": "Generic TPU @Geeetech",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_filament_tpu",
+ "filament_max_volumetric_speed": [
+ "3.2"
+ ],
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle",
+ "Geeetech Mizar M 0.4 nozzle",
+ "Geeetech Thunder 0.2 nozzle",
+ "Geeetech Thunder 0.4 nozzle",
+ "Geeetech Thunder 0.6 nozzle",
+ "Geeetech Thunder 0.8 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/filament/fdm_filament_abs.json b/resources/profiles/Geeetech/filament/fdm_filament_abs.json
new file mode 100644
index 0000000000..508db29049
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/fdm_filament_abs.json
@@ -0,0 +1,88 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_abs",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "cool_plate_temp" : [
+ "0"
+ ],
+ "eng_plate_temp" : [
+ "105"
+ ],
+ "hot_plate_temp" : [
+ "105"
+ ],
+ "textured_plate_temp" : [
+ "105"
+ ],
+ "cool_plate_temp_initial_layer" : [
+ "0"
+ ],
+ "eng_plate_temp_initial_layer" : [
+ "105"
+ ],
+ "hot_plate_temp_initial_layer" : [
+ "105"
+ ],
+ "textured_plate_temp_initial_layer" : [
+ "105"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "filament_max_volumetric_speed": [
+ "28.6"
+ ],
+ "filament_type": [
+ "ABS"
+ ],
+ "filament_density": [
+ "1.04"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "260"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "0"
+ ],
+ "fan_max_speed": [
+ "35"
+ ],
+ "fan_min_speed": [
+ "35"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "nozzle_temperature": [
+ "260"
+ ],
+ "temperature_vitrification": [
+ "110"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature_range_high": [
+ "270"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "slow_down_layer_time": [
+ "3"
+ ]
+}
diff --git a/resources/profiles/Geeetech/filament/fdm_filament_asa.json b/resources/profiles/Geeetech/filament/fdm_filament_asa.json
new file mode 100644
index 0000000000..75ec0fb70a
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/fdm_filament_asa.json
@@ -0,0 +1,88 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_asa",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "cool_plate_temp" : [
+ "0"
+ ],
+ "eng_plate_temp" : [
+ "105"
+ ],
+ "hot_plate_temp" : [
+ "105"
+ ],
+ "textured_plate_temp" : [
+ "105"
+ ],
+ "cool_plate_temp_initial_layer" : [
+ "0"
+ ],
+ "eng_plate_temp_initial_layer" : [
+ "105"
+ ],
+ "hot_plate_temp_initial_layer" : [
+ "105"
+ ],
+ "textured_plate_temp_initial_layer" : [
+ "105"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "fan_cooling_layer_time": [
+ "35"
+ ],
+ "filament_max_volumetric_speed": [
+ "28.6"
+ ],
+ "filament_type": [
+ "ASA"
+ ],
+ "filament_density": [
+ "1.04"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "260"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "fan_max_speed": [
+ "35"
+ ],
+ "fan_min_speed": [
+ "35"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "nozzle_temperature": [
+ "260"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "slow_down_layer_time": [
+ "3"
+ ]
+}
diff --git a/resources/profiles/Geeetech/filament/fdm_filament_common.json b/resources/profiles/Geeetech/filament/fdm_filament_common.json
new file mode 100644
index 0000000000..c30dcd1e7c
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/fdm_filament_common.json
@@ -0,0 +1,141 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_common",
+ "from": "system",
+ "instantiation": "false",
+ "cool_plate_temp" : [
+ "60"
+ ],
+ "eng_plate_temp" : [
+ "60"
+ ],
+ "hot_plate_temp" : [
+ "60"
+ ],
+ "textured_plate_temp" : [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer" : [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer" : [
+ "60"
+ ],
+ "hot_plate_temp_initial_layer" : [
+ "60"
+ ],
+ "textured_plate_temp_initial_layer" : [
+ "60"
+ ],
+ "overhang_fan_threshold": [
+ "95%"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "60"
+ ],
+ "filament_cost": [
+ "0"
+ ],
+ "filament_density": [
+ "0"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_max_volumetric_speed": [
+ "0"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "90"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retract_before_wipe": [
+ "nil"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "filament_retract_restart_extra": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_settings_id": [
+ ""
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "200"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "35"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "filament_start_gcode": [
+ "; Filament gcode\n"
+ ],
+ "nozzle_temperature": [
+ "200"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ]
+}
diff --git a/resources/profiles/Geeetech/filament/fdm_filament_pa.json b/resources/profiles/Geeetech/filament/fdm_filament_pa.json
new file mode 100644
index 0000000000..fb462acbd3
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/fdm_filament_pa.json
@@ -0,0 +1,88 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_pa",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "required_nozzle_HRC": [
+ "40"
+ ],
+ "cool_plate_temp" : [
+ "0"
+ ],
+ "eng_plate_temp" : [
+ "110"
+ ],
+ "hot_plate_temp" : [
+ "110"
+ ],
+ "textured_plate_temp" : [
+ "110"
+ ],
+ "cool_plate_temp_initial_layer" : [
+ "0"
+ ],
+ "eng_plate_temp_initial_layer" : [
+ "110"
+ ],
+ "hot_plate_temp_initial_layer" : [
+ "110"
+ ],
+ "textured_plate_temp_initial_layer" : [
+ "110"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "fan_cooling_layer_time": [
+ "4"
+ ],
+ "filament_max_volumetric_speed": [
+ "8"
+ ],
+ "filament_type": [
+ "PA"
+ ],
+ "filament_density": [
+ "1.04"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "290"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "0"
+ ],
+ "fan_max_speed": [
+ "60"
+ ],
+ "fan_min_speed": [
+ "0"
+ ],
+ "overhang_fan_speed": [
+ "30"
+ ],
+ "nozzle_temperature": [
+ "290"
+ ],
+ "temperature_vitrification": [
+ "108"
+ ],
+ "nozzle_temperature_range_low": [
+ "260"
+ ],
+ "nozzle_temperature_range_high": [
+ "300"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "slow_down_layer_time": [
+ "2"
+ ]
+}
diff --git a/resources/profiles/Geeetech/filament/fdm_filament_pc.json b/resources/profiles/Geeetech/filament/fdm_filament_pc.json
new file mode 100644
index 0000000000..c6f0edeb28
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/fdm_filament_pc.json
@@ -0,0 +1,88 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_pc",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "cool_plate_temp" : [
+ "0"
+ ],
+ "eng_plate_temp" : [
+ "120"
+ ],
+ "hot_plate_temp" : [
+ "120"
+ ],
+ "textured_plate_temp" : [
+ "120"
+ ],
+ "cool_plate_temp_initial_layer" : [
+ "0"
+ ],
+ "eng_plate_temp_initial_layer" : [
+ "120"
+ ],
+ "hot_plate_temp_initial_layer" : [
+ "120"
+ ],
+ "textured_plate_temp_initial_layer" : [
+ "120"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "filament_max_volumetric_speed": [
+ "23.2"
+ ],
+ "filament_type": [
+ "PC"
+ ],
+ "filament_density": [
+ "1.04"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "270"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "fan_max_speed": [
+ "60"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "overhang_fan_speed": [
+ "60"
+ ],
+ "nozzle_temperature": [
+ "280"
+ ],
+ "temperature_vitrification": [
+ "120"
+ ],
+ "nozzle_temperature_range_low": [
+ "260"
+ ],
+ "nozzle_temperature_range_high": [
+ "290"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "slow_down_layer_time": [
+ "2"
+ ]
+}
diff --git a/resources/profiles/Geeetech/filament/fdm_filament_pet.json b/resources/profiles/Geeetech/filament/fdm_filament_pet.json
new file mode 100644
index 0000000000..752bc473b3
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/fdm_filament_pet.json
@@ -0,0 +1,82 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_pet",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "cool_plate_temp" : [
+ "80"
+ ],
+ "eng_plate_temp" : [
+ "0"
+ ],
+ "hot_plate_temp" : [
+ "80"
+ ],
+ "textured_plate_temp" : [
+ "80"
+ ],
+ "cool_plate_temp_initial_layer" : [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer" : [
+ "0"
+ ],
+ "hot_plate_temp_initial_layer" : [
+ "80"
+ ],
+ "textured_plate_temp_initial_layer" : [
+ "80"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "fan_cooling_layer_time": [
+ "20"
+ ],
+ "filament_max_volumetric_speed": [
+ "25"
+ ],
+ "filament_type": [
+ "PETG"
+ ],
+ "filament_density": [
+ "1.27"
+ ],
+ "filament_cost": [
+ "30"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "255"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "nozzle_temperature": [
+ "255"
+ ],
+ "temperature_vitrification": [
+ "80"
+ ],
+ "nozzle_temperature_range_low": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "260"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ]
+}
diff --git a/resources/profiles/Geeetech/filament/fdm_filament_pla.json b/resources/profiles/Geeetech/filament/fdm_filament_pla.json
new file mode 100644
index 0000000000..82c6772f35
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/fdm_filament_pla.json
@@ -0,0 +1,94 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_pla",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_density": [
+ "1.24"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "cool_plate_temp" : [
+ "60"
+ ],
+ "eng_plate_temp" : [
+ "60"
+ ],
+ "hot_plate_temp" : [
+ "60"
+ ],
+ "textured_plate_temp" : [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer" : [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer" : [
+ "60"
+ ],
+ "hot_plate_temp_initial_layer" : [
+ "60"
+ ],
+ "textured_plate_temp_initial_layer" : [
+ "60"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "temperature_vitrification": [
+ "60"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_range_high": [
+ "230"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ]
+}
diff --git a/resources/profiles/Geeetech/filament/fdm_filament_pva.json b/resources/profiles/Geeetech/filament/fdm_filament_pva.json
new file mode 100644
index 0000000000..440168cdf1
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/fdm_filament_pva.json
@@ -0,0 +1,100 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_pva",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "cool_plate_temp": [
+ "55"
+ ],
+ "eng_plate_temp": [
+ "0"
+ ],
+ "hot_plate_temp": [
+ "55"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "55"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "0"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "55"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "filament_max_volumetric_speed": [
+ "15"
+ ],
+ "filament_soluble": [
+ "1"
+ ],
+ "filament_is_support": [
+ "1"
+ ],
+ "filament_type": [
+ "PVA"
+ ],
+ "filament_density": [
+ "1.24"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "temperature_vitrification": [
+ "55"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n{if (bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S255\n{elsif(bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S180\n{endif}"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/filament/fdm_filament_tpu.json b/resources/profiles/Geeetech/filament/fdm_filament_tpu.json
new file mode 100644
index 0000000000..dd3c9cbdc1
--- /dev/null
+++ b/resources/profiles/Geeetech/filament/fdm_filament_tpu.json
@@ -0,0 +1,88 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_tpu",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "cool_plate_temp": [
+ "30"
+ ],
+ "eng_plate_temp": [
+ "30"
+ ],
+ "hot_plate_temp": [
+ "45"
+ ],
+ "textured_plate_temp": [
+ "45"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "30"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "45"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "filament_max_volumetric_speed": [
+ "15"
+ ],
+ "filament_type": [
+ "TPU"
+ ],
+ "filament_density": [
+ "1.24"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_retraction_length": [
+ "0.4"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "240"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "nozzle_temperature": [
+ "240"
+ ],
+ "temperature_vitrification": [
+ "35"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ],
+ "nozzle_temperature_range_high": [
+ "250"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n{if (bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S255\n{elsif(bed_temperature[current_extruder] >30)||(bed_temperature_initial_layer[current_extruder] >30)}M106 P3 S180\n{endif}"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A10 M 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A10 M 0.4 nozzle.json
new file mode 100644
index 0000000000..fb4472c0a3
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A10 M 0.4 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_025",
+ "name": "Geeetech A10 M 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A10 M",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "retraction_length": [
+ "6.5"
+ ],
+ "retract_restart_extra": [
+ "-0.2"
+ ],
+ "retraction_speed": [
+ "25"
+ ],
+ "deretraction_speed": [
+ "25"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A10M:https://www.geeetech.com/wiki/index.php/Geeetech_A10M_3D_printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A10 M.json b/resources/profiles/Geeetech/machine/Geeetech A10 M.json
new file mode 100644
index 0000000000..f7c779522c
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A10 M.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech A10 M",
+ "model_id": "Geeetech_A10 M",
+ "nozzle_diameter": "0.4",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "220x220.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech A10 Pro 0.2 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A10 Pro 0.2 nozzle.json
new file mode 100644
index 0000000000..109df68705
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A10 Pro 0.2 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_021",
+ "name": "Geeetech A10 Pro 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A10 Pro",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.2",
+ "default_print_profile": "0.10mm Standard @Geeetech common 0.2 nozzle",
+ "nozzle_diameter": [
+ "0.2"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.14"
+ ],
+ "min_layer_height": [
+ "0.04"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A10:https://www.geeetech.com/wiki/index.php/Geeetech_A10_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A10 Pro 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A10 Pro 0.4 nozzle.json
new file mode 100644
index 0000000000..eda6539f52
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A10 Pro 0.4 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_022",
+ "name": "Geeetech A10 Pro 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A10 Pro",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A10:https://www.geeetech.com/wiki/index.php/Geeetech_A10_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A10 Pro 0.6 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A10 Pro 0.6 nozzle.json
new file mode 100644
index 0000000000..96e4d6e5ae
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A10 Pro 0.6 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_023",
+ "name": "Geeetech A10 Pro 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A10 Pro",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.6",
+ "default_print_profile": "0.30mm Standard @Geeetech common 0.6 nozzle",
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.42"
+ ],
+ "min_layer_height": [
+ "0.12"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A10:https://www.geeetech.com/wiki/index.php/Geeetech_A10_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A10 Pro 0.8 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A10 Pro 0.8 nozzle.json
new file mode 100644
index 0000000000..1bbfba4063
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A10 Pro 0.8 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_024",
+ "name": "Geeetech A10 Pro 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A10 Pro",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.8",
+ "default_print_profile": "0.40mm Standard @Geeetech common 0.8 nozzle",
+ "nozzle_diameter": [
+ "0.8"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.56"
+ ],
+ "min_layer_height": [
+ "0.16"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A10:https://www.geeetech.com/wiki/index.php/Geeetech_A10_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A10 Pro.json b/resources/profiles/Geeetech/machine/Geeetech A10 Pro.json
new file mode 100644
index 0000000000..841ea895eb
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A10 Pro.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech A10 Pro",
+ "model_id": "Geeetech_A10 Pro",
+ "nozzle_diameter": "0.4;0.2;0.6;0.8",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "220x220.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech A10 T 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A10 T 0.4 nozzle.json
new file mode 100644
index 0000000000..e175610819
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A10 T 0.4 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_026",
+ "name": "Geeetech A10 T 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A10 T",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "retraction_length": [
+ "6.5"
+ ],
+ "retract_restart_extra": [
+ "-0.2"
+ ],
+ "retraction_speed": [
+ "25"
+ ],
+ "deretraction_speed": [
+ "25"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Custom Start G-code\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A10 T.json b/resources/profiles/Geeetech/machine/Geeetech A10 T.json
new file mode 100644
index 0000000000..b16b3009ea
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A10 T.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech A10 T",
+ "model_id": "Geeetech_A10 T",
+ "nozzle_diameter": "0.4",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "220x220.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech A20 0.2 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A20 0.2 nozzle.json
new file mode 100644
index 0000000000..bdfde666ae
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A20 0.2 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_027",
+ "name": "Geeetech A20 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A20",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.2",
+ "default_print_profile": "0.10mm Standard @Geeetech common 0.2 nozzle",
+ "nozzle_diameter": [
+ "0.2"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.14"
+ ],
+ "min_layer_height": [
+ "0.04"
+ ],
+ "printable_area": [
+ "0x0",
+ "250x0",
+ "250x250",
+ "0x250"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A20:https://www.geeetech.com/wiki/index.php/Geeetech_A20_3D_printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A20 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A20 0.4 nozzle.json
new file mode 100644
index 0000000000..f1b2e3411e
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A20 0.4 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_028",
+ "name": "Geeetech A20 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A20",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "printable_area": [
+ "0x0",
+ "250x0",
+ "250x250",
+ "0x250"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A20:https://www.geeetech.com/wiki/index.php/Geeetech_A20_3D_printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A20 0.6 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A20 0.6 nozzle.json
new file mode 100644
index 0000000000..8fdd32c9d9
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A20 0.6 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_029",
+ "name": "Geeetech A20 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A20",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.6",
+ "default_print_profile": "0.30mm Standard @Geeetech common 0.6 nozzle",
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.42"
+ ],
+ "min_layer_height": [
+ "0.12"
+ ],
+ "printable_area": [
+ "0x0",
+ "250x0",
+ "250x250",
+ "0x250"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A20:https://www.geeetech.com/wiki/index.php/Geeetech_A20_3D_printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A20 0.8 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A20 0.8 nozzle.json
new file mode 100644
index 0000000000..bdb7546609
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A20 0.8 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_030",
+ "name": "Geeetech A20 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A20",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.8",
+ "default_print_profile": "0.40mm Standard @Geeetech common 0.8 nozzle",
+ "nozzle_diameter": [
+ "0.8"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.56"
+ ],
+ "min_layer_height": [
+ "0.16"
+ ],
+ "printable_area": [
+ "0x0",
+ "250x0",
+ "250x250",
+ "0x250"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A20:https://www.geeetech.com/wiki/index.php/Geeetech_A20_3D_printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A20 M 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A20 M 0.4 nozzle.json
new file mode 100644
index 0000000000..141331df75
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A20 M 0.4 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_031",
+ "name": "Geeetech A20 M 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A20 M",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "retraction_length": [
+ "6.5"
+ ],
+ "retract_restart_extra": [
+ "-0.2"
+ ],
+ "retraction_speed": [
+ "25"
+ ],
+ "deretraction_speed": [
+ "25"
+ ],
+ "printable_area": [
+ "0x0",
+ "250x0",
+ "250x250",
+ "0x250"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A20M:https://www.geeetech.com/wiki/index.php/Geeetech_A20M_3D_printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A20 M.json b/resources/profiles/Geeetech/machine/Geeetech A20 M.json
new file mode 100644
index 0000000000..e2254b1317
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A20 M.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech A20 M",
+ "model_id": "Geeetech_A20 M",
+ "nozzle_diameter": "0.4",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "250x250.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech A20 T 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A20 T 0.4 nozzle.json
new file mode 100644
index 0000000000..b5853462c8
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A20 T 0.4 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_032",
+ "name": "Geeetech A20 T 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A20 T",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "retraction_length": [
+ "6.5"
+ ],
+ "retract_restart_extra": [
+ "-0.2"
+ ],
+ "retraction_speed": [
+ "25"
+ ],
+ "deretraction_speed": [
+ "25"
+ ],
+ "printable_area": [
+ "0x0",
+ "250x0",
+ "250x250",
+ "0x250"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Custom Start G-code\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A20 T.json b/resources/profiles/Geeetech/machine/Geeetech A20 T.json
new file mode 100644
index 0000000000..c6a13232dd
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A20 T.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech A20 T",
+ "model_id": "Geeetech_A20 T",
+ "nozzle_diameter": "0.4",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "250x250.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech A20.json b/resources/profiles/Geeetech/machine/Geeetech A20.json
new file mode 100644
index 0000000000..a794b5cdf0
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A20.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech A20",
+ "model_id": "Geeetech_A20",
+ "nozzle_diameter": "0.4;0.2;0.6;0.8",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "250x250.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech A30 M 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A30 M 0.4 nozzle.json
new file mode 100644
index 0000000000..ddeab97496
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A30 M 0.4 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_037",
+ "name": "Geeetech A30 M 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A30 M",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "retraction_length": [
+ "6.5"
+ ],
+ "retract_restart_extra": [
+ "-0.2"
+ ],
+ "retraction_speed": [
+ "25"
+ ],
+ "deretraction_speed": [
+ "25"
+ ],
+ "printable_area": [
+ "0x0",
+ "320x0",
+ "320x320",
+ "0x320"
+ ],
+ "printable_height": "420",
+ "retract_lift_below":[
+ "419"
+ ],
+ "machine_start_gcode": ";Custom Start G-code\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A30 M.json b/resources/profiles/Geeetech/machine/Geeetech A30 M.json
new file mode 100644
index 0000000000..67e7537339
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A30 M.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech A30 M",
+ "model_id": "Geeetech_A30 M",
+ "nozzle_diameter": "0.4",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "320x320.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech A30 Pro 0.2 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A30 Pro 0.2 nozzle.json
new file mode 100644
index 0000000000..cf58f5394e
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A30 Pro 0.2 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_033",
+ "name": "Geeetech A30 Pro 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A30 Pro",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.2",
+ "default_print_profile": "0.10mm Standard @Geeetech common 0.2 nozzle",
+ "nozzle_diameter": [
+ "0.2"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.14"
+ ],
+ "min_layer_height": [
+ "0.04"
+ ],
+ "printable_area": [
+ "0x0",
+ "320x0",
+ "320x320",
+ "0x320"
+ ],
+ "printable_height": "420",
+ "retract_lift_below":[
+ "419"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A30:https://www.geeetech.com/wiki/index.php/Geeetech_A30_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A30 Pro 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A30 Pro 0.4 nozzle.json
new file mode 100644
index 0000000000..fba94da697
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A30 Pro 0.4 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_034",
+ "name": "Geeetech A30 Pro 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A30 Pro",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "printable_area": [
+ "0x0",
+ "320x0",
+ "320x320",
+ "0x320"
+ ],
+ "printable_height": "420",
+ "retract_lift_below":[
+ "419"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A30:https://www.geeetech.com/wiki/index.php/Geeetech_A30_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A30 Pro 0.6 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A30 Pro 0.6 nozzle.json
new file mode 100644
index 0000000000..bad3961425
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A30 Pro 0.6 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_035",
+ "name": "Geeetech A30 Pro 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A30 Pro",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.6",
+ "default_print_profile": "0.30mm Standard @Geeetech common 0.6 nozzle",
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.42"
+ ],
+ "min_layer_height": [
+ "0.12"
+ ],
+ "printable_area": [
+ "0x0",
+ "320x0",
+ "320x320",
+ "0x320"
+ ],
+ "printable_height": "420",
+ "retract_lift_below":[
+ "419"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A30:https://www.geeetech.com/wiki/index.php/Geeetech_A30_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A30 Pro 0.8 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A30 Pro 0.8 nozzle.json
new file mode 100644
index 0000000000..a79809d97b
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A30 Pro 0.8 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_036",
+ "name": "Geeetech A30 Pro 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A30 Pro",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.8",
+ "default_print_profile": "0.40mm Standard @Geeetech common 0.8 nozzle",
+ "nozzle_diameter": [
+ "0.8"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.56"
+ ],
+ "min_layer_height": [
+ "0.16"
+ ],
+ "printable_area": [
+ "0x0",
+ "320x0",
+ "320x320",
+ "0x320"
+ ],
+ "printable_height": "420",
+ "retract_lift_below":[
+ "419"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for A30:https://www.geeetech.com/wiki/index.php/Geeetech_A30_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A30 Pro.json b/resources/profiles/Geeetech/machine/Geeetech A30 Pro.json
new file mode 100644
index 0000000000..554bb6c63d
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A30 Pro.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech A30 Pro",
+ "model_id": "Geeetech_A30 Pro",
+ "nozzle_diameter": "0.4;0.2;0.6;0.8",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "320x320.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech A30 T 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech A30 T 0.4 nozzle.json
new file mode 100644
index 0000000000..b0308ceef3
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A30 T 0.4 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_038",
+ "name": "Geeetech A30 T 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech A30 T",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "retraction_length": [
+ "6.5"
+ ],
+ "retract_restart_extra": [
+ "-0.2"
+ ],
+ "retraction_speed": [
+ "25"
+ ],
+ "deretraction_speed": [
+ "25"
+ ],
+ "printable_area": [
+ "0x0",
+ "320x0",
+ "320x320",
+ "0x320"
+ ],
+ "printable_height": "420",
+ "retract_lift_below":[
+ "419"
+ ],
+ "machine_start_gcode": ";Custom Start G-code\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", "machine_end_gcode": "G1 E-2.5 F2100 ; Retract filament\nG92 E0.0\nG1{if max_layer_z < printable_height} Z{z_offset+min(max_layer_z+30, printable_height+0.2)}{endif} E-1.5 F720 ; Retract and raise Z\nG4 ; wait\nM104 S0 ; Cooldown hotend\nM140 S0 ; Cooldown bed\nM107 ; off fan\nG1 X0 Y100 F3000 ; park print head\nM84 ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech A30 T.json b/resources/profiles/Geeetech/machine/Geeetech A30 T.json
new file mode 100644
index 0000000000..37fe99d584
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech A30 T.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech A30 T",
+ "model_id": "Geeetech_A30 T",
+ "nozzle_diameter": "0.4",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "320x320.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar 0.2 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar 0.2 nozzle.json
new file mode 100644
index 0000000000..505b17c4ef
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar 0.2 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_005",
+ "name": "Geeetech Mizar 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.2",
+ "default_print_profile": "0.10mm Standard @Geeetech common 0.2 nozzle",
+ "nozzle_diameter": [
+ "0.2"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.14"
+ ],
+ "min_layer_height": [
+ "0.04"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech Official open-source firmware for Mizar: https://github.com/Geeetech3D/Mizar \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar 0.4 nozzle.json
new file mode 100644
index 0000000000..def7505a2c
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar 0.4 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_006",
+ "name": "Geeetech Mizar 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech Official open-source firmware for Mizar: https://github.com/Geeetech3D/Mizar \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar 0.6 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar 0.6 nozzle.json
new file mode 100644
index 0000000000..e5e3a26763
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar 0.6 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_007",
+ "name": "Geeetech Mizar 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.6",
+ "default_print_profile": "0.30mm Standard @Geeetech common 0.6 nozzle",
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.42"
+ ],
+ "min_layer_height": [
+ "0.12"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech Official open-source firmware for Mizar: https://github.com/Geeetech3D/Mizar \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar 0.8 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar 0.8 nozzle.json
new file mode 100644
index 0000000000..a96a25ab04
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar 0.8 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_008",
+ "name": "Geeetech Mizar 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.8",
+ "default_print_profile": "0.40mm Standard @Geeetech common 0.8 nozzle",
+ "nozzle_diameter": [
+ "0.8"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.56"
+ ],
+ "min_layer_height": [
+ "0.16"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech Official open-source firmware for Mizar: https://github.com/Geeetech3D/Mizar \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar M 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar M 0.4 nozzle.json
new file mode 100644
index 0000000000..b2f0c5dac8
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar M 0.4 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_021",
+ "name": "Geeetech Mizar M 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar M",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "printable_area": [
+ "0x0",
+ "255x0",
+ "255x255",
+ "0x255"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for MizarM:https://www.geeetech.com/wiki/index.php/Mizar_M \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar M.json b/resources/profiles/Geeetech/machine/Geeetech Mizar M.json
new file mode 100644
index 0000000000..bf81f8a3b7
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar M.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech Mizar M",
+ "model_id": "Geeetech_Mizar M",
+ "nozzle_diameter": "0.4",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "255x255.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar Max 0.2 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar Max 0.2 nozzle.json
new file mode 100644
index 0000000000..7d42429b20
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar Max 0.2 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_017",
+ "name": "Geeetech Mizar Max 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar Max",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.2",
+ "default_print_profile": "0.10mm Standard @Geeetech common 0.2 nozzle",
+ "nozzle_diameter": [
+ "0.2"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.14"
+ ],
+ "min_layer_height": [
+ "0.04"
+ ],
+ "printable_area": [
+ "0x0",
+ "320x0",
+ "320x320",
+ "0x320"
+ ],
+ "printable_height": "400",
+ "retract_lift_below":[
+ "399"
+ ],
+ "machine_start_gcode": ";Custom Start G-code\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar Max 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar Max 0.4 nozzle.json
new file mode 100644
index 0000000000..b43f94739e
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar Max 0.4 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_018",
+ "name": "Geeetech Mizar Max 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar Max",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "printable_area": [
+ "0x0",
+ "320x0",
+ "320x320",
+ "0x320"
+ ],
+ "printable_height": "400",
+ "retract_lift_below":[
+ "399"
+ ],
+ "machine_start_gcode": ";Custom Start G-code\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar Max 0.6 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar Max 0.6 nozzle.json
new file mode 100644
index 0000000000..6c83c269a9
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar Max 0.6 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_019",
+ "name": "Geeetech Mizar Max 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar Max",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.6",
+ "default_print_profile": "0.30mm Standard @Geeetech common 0.6 nozzle",
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.42"
+ ],
+ "min_layer_height": [
+ "0.12"
+ ],
+ "printable_area": [
+ "0x0",
+ "320x0",
+ "320x320",
+ "0x320"
+ ],
+ "printable_height": "400",
+ "retract_lift_below":[
+ "399"
+ ],
+ "machine_start_gcode": ";Custom Start G-code\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar Max 0.8 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar Max 0.8 nozzle.json
new file mode 100644
index 0000000000..70f50d2317
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar Max 0.8 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_020",
+ "name": "Geeetech Mizar Max 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar Max",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.8",
+ "default_print_profile": "0.40mm Standard @Geeetech common 0.8 nozzle",
+ "nozzle_diameter": [
+ "0.8"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.56"
+ ],
+ "min_layer_height": [
+ "0.16"
+ ],
+ "printable_area": [
+ "0x0",
+ "320x0",
+ "320x320",
+ "0x320"
+ ],
+ "printable_height": "400",
+ "retract_lift_below":[
+ "399"
+ ],
+ "machine_start_gcode": ";Custom Start G-code\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar Max.json b/resources/profiles/Geeetech/machine/Geeetech Mizar Max.json
new file mode 100644
index 0000000000..96315ef5c0
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar Max.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech Mizar Max",
+ "model_id": "Geeetech_Mizar Max",
+ "nozzle_diameter": "0.4;0.2;0.6;0.8",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "320x320.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar Pro 0.2 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar Pro 0.2 nozzle.json
new file mode 100644
index 0000000000..ba20b2cb21
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar Pro 0.2 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_013",
+ "name": "Geeetech Mizar Pro 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar Pro",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.2",
+ "default_print_profile": "0.10mm Standard @Geeetech common 0.2 nozzle",
+ "nozzle_diameter": [
+ "0.2"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.14"
+ ],
+ "min_layer_height": [
+ "0.04"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for MizarPro:https://www.geeetech.com/wiki/index.php/Geeetech_Mizar_Pro_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar Pro 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar Pro 0.4 nozzle.json
new file mode 100644
index 0000000000..b550fe11a8
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar Pro 0.4 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_014",
+ "name": "Geeetech Mizar Pro 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar Pro",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for MizarPro:https://www.geeetech.com/wiki/index.php/Geeetech_Mizar_Pro_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar Pro 0.6 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar Pro 0.6 nozzle.json
new file mode 100644
index 0000000000..c9013f3c9e
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar Pro 0.6 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_015",
+ "name": "Geeetech Mizar Pro 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar Pro",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.6",
+ "default_print_profile": "0.30mm Standard @Geeetech common 0.6 nozzle",
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.42"
+ ],
+ "min_layer_height": [
+ "0.12"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for MizarPro:https://www.geeetech.com/wiki/index.php/Geeetech_Mizar_Pro_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar Pro 0.8 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar Pro 0.8 nozzle.json
new file mode 100644
index 0000000000..aab1d0bca7
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar Pro 0.8 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_016",
+ "name": "Geeetech Mizar Pro 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar Pro",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.8",
+ "default_print_profile": "0.40mm Standard @Geeetech common 0.8 nozzle",
+ "nozzle_diameter": [
+ "0.8"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.56"
+ ],
+ "min_layer_height": [
+ "0.16"
+ ],
+ "printable_area": [
+ "0x0",
+ "220x0",
+ "220x220",
+ "0x220"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for MizarPro:https://www.geeetech.com/wiki/index.php/Geeetech_Mizar_Pro_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar Pro.json b/resources/profiles/Geeetech/machine/Geeetech Mizar Pro.json
new file mode 100644
index 0000000000..b00291ab55
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar Pro.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech Mizar Pro",
+ "model_id": "Geeetech_Mizar Pro",
+ "nozzle_diameter": "0.4;0.2;0.6;0.8",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "220x220.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar S 0.2 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar S 0.2 nozzle.json
new file mode 100644
index 0000000000..d80f6430b8
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar S 0.2 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_009",
+ "name": "Geeetech Mizar S 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar S",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.2",
+ "default_print_profile": "0.10mm Standard @Geeetech common 0.2 nozzle",
+ "nozzle_diameter": [
+ "0.2"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.14"
+ ],
+ "min_layer_height": [
+ "0.04"
+ ],
+ "printable_area": [
+ "0x0",
+ "255x0",
+ "255x255",
+ "0x255"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for MizarS: https://www.geeetech.com/wiki/index.php/Geeetech_Mizar_S_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar S 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar S 0.4 nozzle.json
new file mode 100644
index 0000000000..a1f829d5a6
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar S 0.4 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_010",
+ "name": "Geeetech Mizar S 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar S",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech common",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.3"
+ ],
+ "min_layer_height": [
+ "0.07"
+ ],
+ "printable_area": [
+ "0x0",
+ "255x0",
+ "255x255",
+ "0x255"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for MizarS: https://www.geeetech.com/wiki/index.php/Geeetech_Mizar_S_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar S 0.6 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar S 0.6 nozzle.json
new file mode 100644
index 0000000000..31dc2a90f1
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar S 0.6 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_011",
+ "name": "Geeetech Mizar S 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar S",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.6",
+ "default_print_profile": "0.30mm Standard @Geeetech common 0.6 nozzle",
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.42"
+ ],
+ "min_layer_height": [
+ "0.12"
+ ],
+ "printable_area": [
+ "0x0",
+ "255x0",
+ "255x255",
+ "0x255"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for MizarS: https://www.geeetech.com/wiki/index.php/Geeetech_Mizar_S_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar S 0.8 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Mizar S 0.8 nozzle.json
new file mode 100644
index 0000000000..7136d696d8
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar S 0.8 nozzle.json
@@ -0,0 +1,40 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_012",
+ "name": "Geeetech Mizar S 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Mizar S",
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "printer_variant": "0.8",
+ "default_print_profile": "0.40mm Standard @Geeetech common 0.8 nozzle",
+ "nozzle_diameter": [
+ "0.8"
+ ],
+ "extruder_type": [
+ "Bowden"
+ ],
+ "max_layer_height": [
+ "0.56"
+ ],
+ "min_layer_height": [
+ "0.16"
+ ],
+ "printable_area": [
+ "0x0",
+ "255x0",
+ "255x255",
+ "0x255"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":[
+ "259"
+ ],
+ "machine_start_gcode": ";Geeetech official wiki homepage for MizarS: https://www.geeetech.com/wiki/index.php/Geeetech_Mizar_S_3D_Printer \nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 ;Off Fan\nG1 Z5.0 F3000 ;Move Z Axis up little to prevent scratching of Heat Bed\nG1 X0.1 Y20 Z1.4 F6000 ; Move to start position\nG1 X0.1 Y80.0 Z1.4 F1000 E25 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y80.0 Z1.4 F6000 ; Move to side a little\nG1 X1.4 Y20 Z1.4 F1000 E20 ; 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.28 F3000.0 ; Move over to prevent blob squish\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < max_print_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar S.json b/resources/profiles/Geeetech/machine/Geeetech Mizar S.json
new file mode 100644
index 0000000000..745e5665ec
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar S.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech Mizar S",
+ "model_id": "Geeetech_Mizar S",
+ "nozzle_diameter": "0.4;0.2;0.6;0.8",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "255x255.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech Mizar.json b/resources/profiles/Geeetech/machine/Geeetech Mizar.json
new file mode 100644
index 0000000000..81793e562c
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Mizar.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech Mizar",
+ "model_id": "Geeetech_Mizar",
+ "nozzle_diameter": "0.4;0.2;0.6;0.8",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "220x220.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech;Generic PLA @Geeetech_FastSpeed;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/Geeetech Thunder 0.2 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Thunder 0.2 nozzle.json
new file mode 100644
index 0000000000..176d835251
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Thunder 0.2 nozzle.json
@@ -0,0 +1,84 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_002",
+ "name": "Geeetech Thunder 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Thunder",
+ "default_filament_profile": ["Generic PLA @Geeetech_FastSpeed"],
+ "extruder_type": ["Bowden"],
+ "nozzle_diameter": ["0.2"],
+ "printer_variant": "0.2",
+ "default_print_profile": "0.10mm Fine @Geeetech Thunder",
+ "max_layer_height": ["0.14"],
+ "min_layer_height": ["0.04"],
+ "printable_area": [
+ "0x0",
+ "250x0",
+ "250x250",
+ "0x250"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":["259"],
+ "machine_max_acceleration_extruding": [
+ "3500",
+ "3500"
+ ],
+ "machine_max_acceleration_retracting": [
+ "3500",
+ "3500"
+ ],
+ "machine_max_acceleration_travel": [
+ "5000",
+ "5000"
+ ],
+ "machine_max_acceleration_x": [
+ "5000",
+ "5000"
+ ],
+ "machine_max_acceleration_y": [
+ "4000",
+ "4000"
+ ],
+ "machine_max_acceleration_z": [
+ "50",
+ "50"
+ ],
+ "machine_max_speed_e": [
+ "35",
+ "35"
+ ],
+ "machine_max_speed_x": [
+ "300",
+ "300"
+ ],
+ "machine_max_speed_y": [
+ "300",
+ "300"
+ ],
+ "machine_max_speed_z": [
+ "10",
+ "10"
+ ],
+ "machine_max_jerk_e": [
+ "8",
+ "8"
+ ],
+ "machine_max_jerk_x": [
+ "45",
+ "45"
+ ],
+ "machine_max_jerk_y": [
+ "45",
+ "45"
+ ],
+ "machine_max_jerk_z": [
+ "0.8",
+ "0.8"
+ ],
+ "machine_start_gcode": ";Official viki homepage for Thunder:https://www.geeetech.com/wiki/index.php/Geeetech_Thunder_3D_printer\n\nM104 S[first_layer_temperature] ; Set Hotend Temp.\nM140 S[first_layer_bed_temperature] ; Set bed Temp.\nM190 S[first_layer_bed_temperature] ; Wait for Bed Temp.\nM109 S[first_layer_temperature] ; Wait for Hotend Temp.\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 P0 ;Off Main Fan\nM107 P1 ;Off Aux Fan\nM2012 P8 S1 F100 ; ON Light\nG1 Z5.0 F3000 ;Move the Z-axis slightly up to prevent scratching the heatbed\nG1 X0.1 Y20 Z0.8 F5000 ; Move to start position\nG1 X0.1 Y200.0 Z1.2 F1500 E30 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y200.0 Z1.2 F3000 ; Move to side a little\nG1 X0.4 Y20 Z1.2 F1500 E25 ; Draw the second line\nG92 E0 ; Reset Extruder\nG1 Z2.0 F3000 ; Move the Z-axis slightly up to prevent scratching the heatbed\nG1 X5 Y20 Z0.4 F3000.0 ; Scrape off nozzle residue\nG92 E0\n;---------------------------------------\n;M106 P0 S383 ; ON MainFan 150% if need\n;M106 P1 S255 ; ON Aux Fan 100% if need\n;---------------------------------------",
+ "machine_end_gcode": "G91 ;Switch to relative positioning\nG1 E-2.5 F2700 ;Retract filament\nG1 E-1.5 Z0.2 F2400 ;Retract and raise Z\nG1 X5 Y5 F3000 ;Move away\nG1 Z10 ;lift print head\nG90 ;Switch to absolute positioning\nG28 X Y ;homing XY\nM106 S0 ;off Fan\nM104 S0 ;Cooldown hotend\nM140 S0 ;Cooldown bed\nM84 X Y E ;Disable steppers",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "1"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Thunder 0.4 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Thunder 0.4 nozzle.json
new file mode 100644
index 0000000000..1ba183c30c
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Thunder 0.4 nozzle.json
@@ -0,0 +1,84 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_001",
+ "name": "Geeetech Thunder 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Thunder",
+ "default_filament_profile": ["Generic PLA @Geeetech_FastSpeed"],
+ "extruder_type": ["Bowden"],
+ "nozzle_diameter": ["0.4"],
+ "printer_variant": "0.4",
+ "default_print_profile": "0.20mm Standard @Geeetech Thunder",
+ "max_layer_height": ["0.3"],
+ "min_layer_height": ["0.07"],
+ "printable_area": [
+ "0x0",
+ "250x0",
+ "250x250",
+ "0x250"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":["259"],
+ "machine_max_acceleration_extruding": [
+ "3500",
+ "3500"
+ ],
+ "machine_max_acceleration_retracting": [
+ "3500",
+ "3500"
+ ],
+ "machine_max_acceleration_travel": [
+ "5000",
+ "5000"
+ ],
+ "machine_max_acceleration_x": [
+ "5000",
+ "5000"
+ ],
+ "machine_max_acceleration_y": [
+ "4000",
+ "4000"
+ ],
+ "machine_max_acceleration_z": [
+ "50",
+ "50"
+ ],
+ "machine_max_speed_e": [
+ "35",
+ "35"
+ ],
+ "machine_max_speed_x": [
+ "300",
+ "300"
+ ],
+ "machine_max_speed_y": [
+ "300",
+ "300"
+ ],
+ "machine_max_speed_z": [
+ "10",
+ "10"
+ ],
+ "machine_max_jerk_e": [
+ "8",
+ "8"
+ ],
+ "machine_max_jerk_x": [
+ "45",
+ "45"
+ ],
+ "machine_max_jerk_y": [
+ "45",
+ "45"
+ ],
+ "machine_max_jerk_z": [
+ "0.8",
+ "0.8"
+ ],
+ "machine_start_gcode": ";Official viki homepage for Thunder:https://www.geeetech.com/wiki/index.php/Geeetech_Thunder_3D_printer\n\nM104 S[first_layer_temperature] ; Set Hotend Temp.\nM140 S[first_layer_bed_temperature] ; Set bed Temp.\nM190 S[first_layer_bed_temperature] ; Wait for Bed Temp.\nM109 S[first_layer_temperature] ; Wait for Hotend Temp.\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 P0 ;Off Main Fan\nM107 P1 ;Off Aux Fan\nM2012 P8 S1 F100 ; ON Light\nG1 Z5.0 F3000 ;Move the Z-axis slightly up to prevent scratching the heatbed\nG1 X0.1 Y20 Z0.8 F5000 ; Move to start position\nG1 X0.1 Y200.0 Z1.2 F1500 E30 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y200.0 Z1.2 F3000 ; Move to side a little\nG1 X0.4 Y20 Z1.2 F1500 E25 ; Draw the second line\nG92 E0 ; Reset Extruder\nG1 Z2.0 F3000 ; Move the Z-axis slightly up to prevent scratching the heatbed\nG1 X5 Y20 Z0.4 F3000.0 ; Scrape off nozzle residue\nG92 E0\n;---------------------------------------\n;M106 P0 S383 ; ON MainFan 150% if need\n;M106 P1 S255 ; ON Aux Fan 100% if need\n;---------------------------------------",
+ "machine_end_gcode": "G91 ;Switch to relative positioning\nG1 E-2.5 F2700 ;Retract filament\nG1 E-1.5 Z0.2 F2400 ;Retract and raise Z\nG1 X5 Y5 F3000 ;Move away\nG1 Z10 ;lift print head\nG90 ;Switch to absolute positioning\nG28 X Y ;homing XY\nM106 S0 ;off Fan\nM104 S0 ;Cooldown hotend\nM140 S0 ;Cooldown bed\nM84 X Y E ;Disable steppers",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "1"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Thunder 0.6 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Thunder 0.6 nozzle.json
new file mode 100644
index 0000000000..068c95159e
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Thunder 0.6 nozzle.json
@@ -0,0 +1,84 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_003",
+ "name": "Geeetech Thunder 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Thunder",
+ "default_filament_profile": ["Generic PLA @Geeetech_FastSpeed"],
+ "extruder_type": ["Bowden"],
+ "nozzle_diameter": ["0.6"],
+ "printer_variant": "0.6",
+ "default_print_profile": "0.30mm Standard @Geeetech Thunder 0.6 nozzle",
+ "max_layer_height": ["0.42"],
+ "min_layer_height": ["0.12"],
+ "printable_area": [
+ "0x0",
+ "250x0",
+ "250x250",
+ "0x250"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":["259"],
+ "machine_max_acceleration_extruding": [
+ "3500",
+ "3500"
+ ],
+ "machine_max_acceleration_retracting": [
+ "3500",
+ "3500"
+ ],
+ "machine_max_acceleration_travel": [
+ "5000",
+ "5000"
+ ],
+ "machine_max_acceleration_x": [
+ "5000",
+ "5000"
+ ],
+ "machine_max_acceleration_y": [
+ "4000",
+ "4000"
+ ],
+ "machine_max_acceleration_z": [
+ "50",
+ "50"
+ ],
+ "machine_max_speed_e": [
+ "35",
+ "35"
+ ],
+ "machine_max_speed_x": [
+ "300",
+ "300"
+ ],
+ "machine_max_speed_y": [
+ "300",
+ "300"
+ ],
+ "machine_max_speed_z": [
+ "10",
+ "10"
+ ],
+ "machine_max_jerk_e": [
+ "8",
+ "8"
+ ],
+ "machine_max_jerk_x": [
+ "45",
+ "45"
+ ],
+ "machine_max_jerk_y": [
+ "45",
+ "45"
+ ],
+ "machine_max_jerk_z": [
+ "0.8",
+ "0.8"
+ ],
+ "machine_start_gcode": ";Official viki homepage for Thunder:https://www.geeetech.com/wiki/index.php/Geeetech_Thunder_3D_printer\n\nM104 S[first_layer_temperature] ; Set Hotend Temp.\nM140 S[first_layer_bed_temperature] ; Set bed Temp.\nM190 S[first_layer_bed_temperature] ; Wait for Bed Temp.\nM109 S[first_layer_temperature] ; Wait for Hotend Temp.\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 P0 ;Off Main Fan\nM107 P1 ;Off Aux Fan\nM2012 P8 S1 F100 ; ON Light\nG1 Z5.0 F3000 ;Move the Z-axis slightly up to prevent scratching the heatbed\nG1 X0.1 Y20 Z0.8 F5000 ; Move to start position\nG1 X0.1 Y200.0 Z1.2 F1500 E30 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y200.0 Z1.2 F3000 ; Move to side a little\nG1 X0.4 Y20 Z1.2 F1500 E25 ; Draw the second line\nG92 E0 ; Reset Extruder\nG1 Z2.0 F3000 ; Move the Z-axis slightly up to prevent scratching the heatbed\nG1 X5 Y20 Z0.4 F3000.0 ; Scrape off nozzle residue\nG92 E0\n;---------------------------------------\n;M106 P0 S383 ; ON MainFan 150% if need\n;M106 P1 S255 ; ON Aux Fan 100% if need\n;---------------------------------------",
+ "machine_end_gcode": "G91 ;Switch to relative positioning\nG1 E-2.5 F2700 ;Retract filament\nG1 E-1.5 Z0.2 F2400 ;Retract and raise Z\nG1 X5 Y5 F3000 ;Move away\nG1 Z10 ;lift print head\nG90 ;Switch to absolute positioning\nG28 X Y ;homing XY\nM106 S0 ;off Fan\nM104 S0 ;Cooldown hotend\nM140 S0 ;Cooldown bed\nM84 X Y E ;Disable steppers",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "1"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Thunder 0.8 nozzle.json b/resources/profiles/Geeetech/machine/Geeetech Thunder 0.8 nozzle.json
new file mode 100644
index 0000000000..5b49296133
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Thunder 0.8 nozzle.json
@@ -0,0 +1,84 @@
+{
+ "type": "machine",
+ "setting_id": "GM_GEEETECH_004",
+ "name": "Geeetech Thunder 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_geeetech_common",
+ "printer_model": "Geeetech Thunder",
+ "default_filament_profile": ["Generic PLA @Geeetech_FastSpeed"],
+ "extruder_type": ["Bowden"],
+ "nozzle_diameter": ["0.8"],
+ "printer_variant": "0.8",
+ "default_print_profile": "0.44mm Draft @Geeetech Thunder 0.8 nozzle",
+ "max_layer_height": ["0.56"],
+ "min_layer_height": ["0.16"],
+ "printable_area": [
+ "0x0",
+ "250x0",
+ "250x250",
+ "0x250"
+ ],
+ "printable_height": "260",
+ "retract_lift_below":["259"],
+ "machine_max_acceleration_extruding": [
+ "3500",
+ "3500"
+ ],
+ "machine_max_acceleration_retracting": [
+ "3500",
+ "3500"
+ ],
+ "machine_max_acceleration_travel": [
+ "5000",
+ "5000"
+ ],
+ "machine_max_acceleration_x": [
+ "5000",
+ "5000"
+ ],
+ "machine_max_acceleration_y": [
+ "4000",
+ "4000"
+ ],
+ "machine_max_acceleration_z": [
+ "50",
+ "50"
+ ],
+ "machine_max_speed_e": [
+ "35",
+ "35"
+ ],
+ "machine_max_speed_x": [
+ "300",
+ "300"
+ ],
+ "machine_max_speed_y": [
+ "300",
+ "300"
+ ],
+ "machine_max_speed_z": [
+ "10",
+ "10"
+ ],
+ "machine_max_jerk_e": [
+ "8",
+ "8"
+ ],
+ "machine_max_jerk_x": [
+ "45",
+ "45"
+ ],
+ "machine_max_jerk_y": [
+ "45",
+ "45"
+ ],
+ "machine_max_jerk_z": [
+ "0.8",
+ "0.8"
+ ],
+ "machine_start_gcode": ";Official viki homepage for Thunder:https://www.geeetech.com/wiki/index.php/Geeetech_Thunder_3D_printer\n\nM104 S[first_layer_temperature] ; Set Hotend Temp.\nM140 S[first_layer_bed_temperature] ; Set bed Temp.\nM190 S[first_layer_bed_temperature] ; Wait for Bed Temp.\nM109 S[first_layer_temperature] ; Wait for Hotend Temp.\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG92 E0 ; Reset Extruder\nG28 ; Home all axes\nM107 P0 ;Off Main Fan\nM107 P1 ;Off Aux Fan\nM2012 P8 S1 F100 ; ON Light\nG1 Z5.0 F3000 ;Move the Z-axis slightly up to prevent scratching the heatbed\nG1 X0.1 Y20 Z0.8 F5000 ; Move to start position\nG1 X0.1 Y200.0 Z1.2 F1500 E30 ; Draw the first line\nG92 E0 ; Reset Extruder\nG1 X0.4 Y200.0 Z1.2 F3000 ; Move to side a little\nG1 X0.4 Y20 Z1.2 F1500 E25 ; Draw the second line\nG92 E0 ; Reset Extruder\nG1 Z2.0 F3000 ; Move the Z-axis slightly up to prevent scratching the heatbed\nG1 X5 Y20 Z0.4 F3000.0 ; Scrape off nozzle residue\nG92 E0\n;---------------------------------------\n;M106 P0 S383 ; ON MainFan 150% if need\n;M106 P1 S255 ; ON Aux Fan 100% if need\n;---------------------------------------",
+ "machine_end_gcode": "G91 ;Switch to relative positioning\nG1 E-2.5 F2700 ;Retract filament\nG1 E-1.5 Z0.2 F2400 ;Retract and raise Z\nG1 X5 Y5 F3000 ;Move away\nG1 Z10 ;lift print head\nG90 ;Switch to absolute positioning\nG28 X Y ;homing XY\nM106 S0 ;off Fan\nM104 S0 ;Cooldown hotend\nM140 S0 ;Cooldown bed\nM84 X Y E ;Disable steppers",
+ "nozzle_type": "brass",
+ "auxiliary_fan": "1"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/machine/Geeetech Thunder.json b/resources/profiles/Geeetech/machine/Geeetech Thunder.json
new file mode 100644
index 0000000000..1367b4a768
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/Geeetech Thunder.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Geeetech Thunder",
+ "model_id": "Geeetech_Thunder",
+ "nozzle_diameter": "0.4;0.2;0.6;0.8",
+ "machine_tech": "FFF",
+ "family": "Geeetech",
+ "bed_model": "250x250.stl",
+ "bed_texture": "Geeetech_buildplate_texture.png",
+ "hotend_model": "",
+ "default_materials": "Generic PLA @Geeetech_FastSpeed;Generic PLA-CF @Geeetech;Generic PETG @Geeetech;Generic ABS @Geeetech;Generic TPU @Geeetech"
+}
diff --git a/resources/profiles/Geeetech/machine/fdm_Geeetech_HS_common.json b/resources/profiles/Geeetech/machine/fdm_Geeetech_HS_common.json
new file mode 100644
index 0000000000..b4dda323fc
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/fdm_Geeetech_HS_common.json
@@ -0,0 +1,77 @@
+{
+ "type": "machine",
+ "name": "fdm_Geeetech_HS_common",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_geeetech_common",
+ "gcode_flavor": "klipper",
+ "auxiliary_fan": "1",
+ "machine_max_acceleration_e": [
+ "5000",
+ "5000"
+ ],
+ "machine_max_acceleration_extruding": [
+ "20000",
+ "20000"
+ ],
+ "machine_max_acceleration_retracting": [
+ "5000",
+ "5000"
+ ],
+ "machine_max_acceleration_travel": [
+ "20000",
+ "20000"
+ ],
+ "machine_max_acceleration_x": [
+ "20000",
+ "20000"
+ ],
+ "machine_max_acceleration_y": [
+ "20000",
+ "20000"
+ ],
+ "machine_max_acceleration_z": [
+ "500",
+ "500"
+ ],
+ "machine_max_speed_e": [
+ "30",
+ "30"
+ ],
+ "machine_max_speed_x": [
+ "600",
+ "600"
+ ],
+ "machine_max_speed_y": [
+ "600",
+ "600"
+ ],
+ "machine_max_speed_z": [
+ "20",
+ "20"
+ ],
+ "machine_max_jerk_e": [
+ "2.5",
+ "2.5"
+ ],
+ "machine_max_jerk_x": [
+ "12",
+ "12"
+ ],
+ "machine_max_jerk_y": [
+ "12",
+ "12"
+ ],
+ "machine_max_jerk_z": [
+ "2",
+ "2"
+ ],
+ "default_filament_profile": [
+ "Generic PLA @Geeetech_FastSpeed"
+ ],
+ "change_filament_gcode": "",
+ "machine_pause_gcode": "M0",
+ "machine_start_gcode": "G28\nM141 S0\nG0 Z50 F600\nM190 S[first_layer_bed_temperature]\nG28 Z\nG29 ; mesh bed leveling ,comment this code to close it\nG0 X0 Y0 Z50 F6000\nM109 S[first_layer_temperature]\nM83\nG0 Z5 F1200\nG0 X{first_layer_print_min[0]} Y{max(0, first_layer_print_min[1] - 2)} F12000\nG0 Z0.2 F600\nG1 E3 F1800\nG0 Z0.3 F600\nG1 X{min(first_layer_print_min[0] + 30,print_bed_max[0])} E6 F600",
+ "machine_end_gcode": "M104 S0\nM140 S0\nG92 E0\nG1 E-3 F1800\nG90\nG0 Z{min(max_print_height,max_layer_z+10)} F600\nG0 X0 Y{print_bed_max[1]} F12000",
+ "scan_first_layer": "0"
+}
diff --git a/resources/profiles/Geeetech/machine/fdm_geeetech_common.json b/resources/profiles/Geeetech/machine/fdm_geeetech_common.json
new file mode 100644
index 0000000000..840813efb5
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/fdm_geeetech_common.json
@@ -0,0 +1,141 @@
+{
+ "type": "machine",
+ "name": "fdm_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_machine_common",
+ "gcode_flavor": "marlin",
+ "machine_max_acceleration_e": [
+ "5000",
+ "5000"
+ ],
+ "machine_max_acceleration_extruding": [
+ "1000",
+ "1000"
+ ],
+ "machine_max_acceleration_retracting": [
+ "1000",
+ "1000"
+ ],
+ "machine_max_acceleration_travel": [
+ "500",
+ "500"
+ ],
+ "machine_max_acceleration_x": [
+ "500",
+ "500"
+ ],
+ "machine_max_acceleration_y": [
+ "500",
+ "500"
+ ],
+ "machine_max_acceleration_z": [
+ "500",
+ "500"
+ ],
+ "machine_max_speed_e": [
+ "60",
+ "60"
+ ],
+ "machine_max_speed_x": [
+ "200",
+ "200"
+ ],
+ "machine_max_speed_y": [
+ "200",
+ "200"
+ ],
+ "machine_max_speed_z": [
+ "10",
+ "10"
+ ],
+ "machine_max_jerk_e": [
+ "5",
+ "5"
+ ],
+ "machine_max_jerk_x": [
+ "8",
+ "8"
+ ],
+ "machine_max_jerk_y": [
+ "8",
+ "8"
+ ],
+ "machine_max_jerk_z": [
+ "0.4",
+ "0.4"
+ ],
+ "machine_min_extruding_rate": [
+ "0",
+ "0"
+ ],
+ "machine_min_travel_rate": [
+ "0",
+ "0"
+ ],
+ "max_layer_height": [
+ "0.32"
+ ],
+ "min_layer_height": [
+ "0.08"
+ ],
+ "printable_height": "250",
+ "extruder_clearance_radius": "47",
+ "extruder_clearance_height_to_rod": "34",
+ "extruder_clearance_height_to_lid": "34",
+ "printer_settings_id": "",
+ "printer_technology": "FFF",
+ "printer_variant": "0.4",
+ "retraction_minimum_travel": [
+ "2"
+ ],
+ "retract_before_wipe": [
+ "70%"
+ ],
+ "retract_when_changing_layer": [
+ "1"
+ ],
+ "retraction_length": [
+ "7"
+ ],
+ "retract_length_toolchange": [
+ "2"
+ ],
+ "z_hop": [
+ "0"
+ ],
+ "retract_restart_extra": [
+ "0"
+ ],
+ "retract_restart_extra_toolchange": [
+ "0"
+ ],
+ "retraction_speed": [
+ "20"
+ ],
+ "deretraction_speed": [
+ "20"
+ ],
+ "silent_mode": "0",
+ "single_extruder_multi_material": "1",
+ "change_filament_gcode": "",
+ "machine_pause_gcode": "M25 ;pause print",
+ "wipe": [
+ "1"
+ ],
+ "default_filament_profile": [
+ "Generic PLA @Geeetech"
+ ],
+ "bed_exclude_area": [
+ "0x0"
+ ],
+ "machine_start_gcode": "G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM140 S[bed_temperature_initial_layer] ; set final bed temp\nM104 S150 ; set temporary nozzle temp to prevent oozing during homing\nG4 S10 ; allow partial nozzle warmup\nG28 ; home all axis\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[nozzle_temperature_initial_layer] ; set final nozzle temp\nM190 S[bed_temperature_initial_layer] ; wait for bed temp to stabilize\nM109 S[nozzle_temperature_initial_layer] ; wait for nozzle temp to stabilize\nG1 Z0.28 F240\nG92 E0\nG1 Y140 E10 F1500 ; prime the nozzle\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E10 F1200 ; prime the nozzle\nG92 E0",
+ "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < printable_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors",
+ "layer_change_gcode": ";------------------------------------\n;layer No:[layer_num] ———>Print Height:[layer_z] mm\n;------------------------------------",
+ "scan_first_layer": "0",
+ "nozzle_type": "undefine",
+ "support_multi_bed_types": "1",
+ "auxiliary_fan": "0",
+ "z_hop_types": "Normal Lift"
+
+}
diff --git a/resources/profiles/Geeetech/machine/fdm_machine_common.json b/resources/profiles/Geeetech/machine/fdm_machine_common.json
new file mode 100644
index 0000000000..85543a5500
--- /dev/null
+++ b/resources/profiles/Geeetech/machine/fdm_machine_common.json
@@ -0,0 +1,119 @@
+{
+ "type": "machine",
+ "name": "fdm_machine_common",
+ "from": "system",
+ "instantiation": "false",
+ "printer_technology": "FFF",
+ "deretraction_speed": [
+ "40"
+ ],
+ "extruder_colour": [
+ "#FCE94F"
+ ],
+ "extruder_offset": [
+ "0x0"
+ ],
+ "gcode_flavor": "marlin",
+ "silent_mode": "0",
+ "machine_max_acceleration_e": [
+ "5000"
+ ],
+ "machine_max_acceleration_extruding": [
+ "10000"
+ ],
+ "machine_max_acceleration_retracting": [
+ "1000"
+ ],
+ "machine_max_acceleration_x": [
+ "10000"
+ ],
+ "machine_max_acceleration_y": [
+ "10000"
+ ],
+ "machine_max_acceleration_z": [
+ "100"
+ ],
+ "machine_max_speed_e": [
+ "60"
+ ],
+ "machine_max_speed_x": [
+ "500"
+ ],
+ "machine_max_speed_y": [
+ "500"
+ ],
+ "machine_max_speed_z": [
+ "10"
+ ],
+ "machine_max_jerk_e": [
+ "5"
+ ],
+ "machine_max_jerk_x": [
+ "8"
+ ],
+ "machine_max_jerk_y": [
+ "8"
+ ],
+ "machine_max_jerk_z": [
+ "0.4"
+ ],
+ "machine_min_extruding_rate": [
+ "0"
+ ],
+ "machine_min_travel_rate": [
+ "0"
+ ],
+ "max_layer_height": [
+ "0.32"
+ ],
+ "min_layer_height": [
+ "0.08"
+ ],
+ "printable_height": "250",
+ "extruder_clearance_radius": "65",
+ "extruder_clearance_height_to_rod": "36",
+ "extruder_clearance_height_to_lid": "140",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "printer_settings_id": "",
+ "printer_variant": "0.4",
+ "retraction_minimum_travel": [
+ "2"
+ ],
+ "retract_before_wipe": [
+ "70%"
+ ],
+ "retract_when_changing_layer": [
+ "1"
+ ],
+ "retraction_length": [
+ "5"
+ ],
+ "retract_length_toolchange": [
+ "1"
+ ],
+ "z_hop": [
+ "0"
+ ],
+ "retract_restart_extra": [
+ "0"
+ ],
+ "retract_restart_extra_toolchange": [
+ "0"
+ ],
+ "retraction_speed": [
+ "60"
+ ],
+ "single_extruder_multi_material": "0",
+ "change_filament_gcode": "",
+ "wipe": [
+ "1"
+ ],
+ "z_lift_type": "NormalLift",
+ "machine_start_gcode": "G0 Z20 F9000\nG92 E0; G1 E-10 F1200\nG28\nM970 Q1 A10 B10 C130 K0\nM970 Q1 A10 B131 C250 K1\nM974 Q1 S1 P0\nM970 Q0 A10 B10 C130 H20 K0\nM970 Q0 A10 B131 C250 K1\nM974 Q0 S1 P0\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG29 ;Home\nG90;\nG92 E0 ;Reset Extruder \nG1 Z2.0 F3000 ;Move Z Axis up \nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nM109 S205;\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder \nG1 X110 Y110 Z2.0 F3000 ;Move Z Axis up",
+ "before_layer_change_gcode": "G92 E0",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]",
+ "machine_pause_gcode": "M601",
+ "machine_end_gcode": "M400 ; wait for buffer to clear\nG92 E0 ; zero the extruder\nG1 E-4.0 F3600; retract \nG91\nG1 Z3;\nM104 S0 ; turn off hotend\nM140 S0 ; turn off bed\nM106 S0 ; turn off fan\nG90 \nG0 X110 Y200 F3600 \nprint_end"
+}
diff --git a/resources/profiles/Geeetech/process/0.06mm Fine @Geeetech common 0.2 nozzle.json b/resources/profiles/Geeetech/process/0.06mm Fine @Geeetech common 0.2 nozzle.json
new file mode 100644
index 0000000000..068a1c75dd
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.06mm Fine @Geeetech common 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "process",
+ "name": "0.06mm Fine @Geeetech common 0.2 nozzle",
+ "inherits": "fdm_process_geeetech_0.06_nozzle_0.2",
+ "from": "system",
+ "setting_id": "GP_Geeetech_001",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.08mm Extra Fine @Geeetech Thunder.json b/resources/profiles/Geeetech/process/0.08mm Extra Fine @Geeetech Thunder.json
new file mode 100644
index 0000000000..e33d397e62
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.08mm Extra Fine @Geeetech Thunder.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.08mm Extra Fine @Geeetech Thunder",
+ "inherits": "fdm_process_Geeetech_HS_0.08",
+ "from": "system",
+ "setting_id": "GP_Geeetech_003",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.08mm Extra Fine @Geeetech common.json b/resources/profiles/Geeetech/process/0.08mm Extra Fine @Geeetech common.json
new file mode 100644
index 0000000000..82dd063f36
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.08mm Extra Fine @Geeetech common.json
@@ -0,0 +1,24 @@
+{
+ "type": "process",
+ "name": "0.08mm Extra Fine @Geeetech common",
+ "inherits": "fdm_process_geeetech_0.08",
+ "from": "system",
+ "setting_id": "GP_Geeetech_002",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar M 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.08mm Optimal @Geeetech Thunder 0.2 nozzle.json b/resources/profiles/Geeetech/process/0.08mm Optimal @Geeetech Thunder 0.2 nozzle.json
new file mode 100644
index 0000000000..ecc3e436ce
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.08mm Optimal @Geeetech Thunder 0.2 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.08mm Optimal @Geeetech Thunder 0.2 nozzle",
+ "inherits": "fdm_process_Geeetech_HS_0.08_nozzle_0.2",
+ "from": "system",
+ "setting_id": "GP_Geeetech_005",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.2 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.08mm Optimal @Geeetech common 0.2 nozzle.json b/resources/profiles/Geeetech/process/0.08mm Optimal @Geeetech common 0.2 nozzle.json
new file mode 100644
index 0000000000..99c8e833f5
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.08mm Optimal @Geeetech common 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "process",
+ "name": "0.08mm Optimal @Geeetech common 0.2 nozzle",
+ "inherits": "fdm_process_geeetech_0.08_nozzle_0.2",
+ "from": "system",
+ "setting_id": "GP_Geeetech_004",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.10mm Fine @Geeetech Thunder.json b/resources/profiles/Geeetech/process/0.10mm Fine @Geeetech Thunder.json
new file mode 100644
index 0000000000..517a87aefb
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.10mm Fine @Geeetech Thunder.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.10mm Fine @Geeetech Thunder",
+ "inherits": "fdm_process_Geeetech_HS_0.10",
+ "from": "system",
+ "setting_id": "GP_Geeetech_006",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.10mm Standard @Geeetech Thunder 0.2 nozzle.json b/resources/profiles/Geeetech/process/0.10mm Standard @Geeetech Thunder 0.2 nozzle.json
new file mode 100644
index 0000000000..39e04401c2
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.10mm Standard @Geeetech Thunder 0.2 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.10mm Standard @Geeetech Thunder 0.2 nozzle",
+ "inherits": "fdm_process_Geeetech_HS_0.10_nozzle_0.2",
+ "from": "system",
+ "setting_id": "GP_Geeetech_008",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.2 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.10mm Standard @Geeetech common 0.2 nozzle.json b/resources/profiles/Geeetech/process/0.10mm Standard @Geeetech common 0.2 nozzle.json
new file mode 100644
index 0000000000..4e205d2c70
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.10mm Standard @Geeetech common 0.2 nozzle.json
@@ -0,0 +1,18 @@
+{
+ "type": "process",
+ "name": "0.10mm Standard @Geeetech common 0.2 nozzle",
+ "inherits": "fdm_process_geeetech_0.10_nozzle_0.2",
+ "from": "system",
+ "setting_id": "GP_Geeetech_007",
+ "instantiation": "true",
+ "elefant_foot_compensation": "0.15",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.12mm Draft @Geeetech Thunder 0.2 nozzle.json b/resources/profiles/Geeetech/process/0.12mm Draft @Geeetech Thunder 0.2 nozzle.json
new file mode 100644
index 0000000000..5849339f8d
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.12mm Draft @Geeetech Thunder 0.2 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.12mm Draft @Geeetech Thunder 0.2 nozzle",
+ "inherits": "fdm_process_Geeetech_HS_0.12_nozzle_0.2",
+ "from": "system",
+ "setting_id": "GP_Geeetech_010",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.2 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.12mm Draft @Geeetech common 0.2 nozzle.json b/resources/profiles/Geeetech/process/0.12mm Draft @Geeetech common 0.2 nozzle.json
new file mode 100644
index 0000000000..daca45a0d2
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.12mm Draft @Geeetech common 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "process",
+ "name": "0.12mm Draft @Geeetech common 0.2 nozzle",
+ "inherits": "fdm_process_geeetech_0.12_nozzle_0.2",
+ "from": "system",
+ "setting_id": "GP_Geeetech_009",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.12mm Fine @Geeetech common.json b/resources/profiles/Geeetech/process/0.12mm Fine @Geeetech common.json
new file mode 100644
index 0000000000..a896a1c5d4
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.12mm Fine @Geeetech common.json
@@ -0,0 +1,24 @@
+{
+ "type": "process",
+ "name": "0.12mm Fine @Geeetech common",
+ "inherits": "fdm_process_geeetech_0.12",
+ "from": "system",
+ "setting_id": "GP_Geeetech_011",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar M 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.14mm Extra Draft @Geeetech Thunder 0.2 nozzle.json b/resources/profiles/Geeetech/process/0.14mm Extra Draft @Geeetech Thunder 0.2 nozzle.json
new file mode 100644
index 0000000000..6474080d97
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.14mm Extra Draft @Geeetech Thunder 0.2 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.14mm Extra Draft @Geeetech Thunder 0.2 nozzle",
+ "inherits": "fdm_process_Geeetech_HS_0.14_nozzle_0.2",
+ "from": "system",
+ "setting_id": "GP_Geeetech_013",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.2 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.14mm Extra Draft @Geeetech common 0.2 nozzle.json b/resources/profiles/Geeetech/process/0.14mm Extra Draft @Geeetech common 0.2 nozzle.json
new file mode 100644
index 0000000000..ed1d198144
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.14mm Extra Draft @Geeetech common 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "process",
+ "name": "0.14mm Extra Draft @Geeetech common 0.2 nozzle",
+ "inherits": "fdm_process_geeetech_0.14_nozzle_0.2",
+ "from": "system",
+ "setting_id": "GP_Geeetech_012",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.2 nozzle",
+ "Geeetech A20 0.2 nozzle",
+ "Geeetech A30 Pro 0.2 nozzle",
+ "Geeetech Mizar 0.2 nozzle",
+ "Geeetech Mizar S 0.2 nozzle",
+ "Geeetech Mizar Pro 0.2 nozzle",
+ "Geeetech Mizar Max 0.2 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.16mm Optimal @Geeetech Thunder.json b/resources/profiles/Geeetech/process/0.16mm Optimal @Geeetech Thunder.json
new file mode 100644
index 0000000000..b3b6f3e46f
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.16mm Optimal @Geeetech Thunder.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.16mm Optimal @Geeetech Thunder",
+ "inherits": "fdm_process_Geeetech_HS_0.16",
+ "from": "system",
+ "setting_id": "GP_Geeetech_015",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.16mm Optimal @Geeetech common.json b/resources/profiles/Geeetech/process/0.16mm Optimal @Geeetech common.json
new file mode 100644
index 0000000000..5d5f323006
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.16mm Optimal @Geeetech common.json
@@ -0,0 +1,24 @@
+{
+ "type": "process",
+ "name": "0.16mm Optimal @Geeetech common",
+ "inherits": "fdm_process_geeetech_0.16",
+ "from": "system",
+ "setting_id": "GP_Geeetech_014",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar M 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.18mm Fine @Geeetech common 0.6 nozzle.json b/resources/profiles/Geeetech/process/0.18mm Fine @Geeetech common 0.6 nozzle.json
new file mode 100644
index 0000000000..8349e3a1f7
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.18mm Fine @Geeetech common 0.6 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "process",
+ "name": "0.18mm Fine @Geeetech common 0.6 nozzle",
+ "inherits": "fdm_process_geeetech_0.18_nozzle_0.6",
+ "from": "system",
+ "setting_id": "GP_Geeetech_016",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.20mm Standard @Geeetech Thunder.json b/resources/profiles/Geeetech/process/0.20mm Standard @Geeetech Thunder.json
new file mode 100644
index 0000000000..6a6b10b192
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.20mm Standard @Geeetech Thunder.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.20mm Standard @Geeetech Thunder",
+ "inherits": "fdm_process_Geeetech_HS_0.20",
+ "from": "system",
+ "setting_id": "GP_Geeetech_018",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.20mm Standard @Geeetech common.json b/resources/profiles/Geeetech/process/0.20mm Standard @Geeetech common.json
new file mode 100644
index 0000000000..0ddc628ff3
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.20mm Standard @Geeetech common.json
@@ -0,0 +1,24 @@
+{
+ "type": "process",
+ "name": "0.20mm Standard @Geeetech common",
+ "inherits": "fdm_process_geeetech_0.20",
+ "from": "system",
+ "setting_id": "GP_Geeetech_017",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar M 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.20mm Strength @Geeetech common.json b/resources/profiles/Geeetech/process/0.20mm Strength @Geeetech common.json
new file mode 100644
index 0000000000..c751c8885a
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.20mm Strength @Geeetech common.json
@@ -0,0 +1,27 @@
+{
+ "type": "process",
+ "name": "0.20mm Strength @Geeetech common",
+ "inherits": "fdm_process_geeetech_0.20",
+ "from": "system",
+ "setting_id": "GP_Geeetech_019",
+ "instantiation": "true",
+ "outer_wall_speed": "25",
+ "sparse_infill_density": "25%",
+ "wall_loops": "6",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar M 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.24mm Draft @Geeetech common.json b/resources/profiles/Geeetech/process/0.24mm Draft @Geeetech common.json
new file mode 100644
index 0000000000..e2d2f21983
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.24mm Draft @Geeetech common.json
@@ -0,0 +1,24 @@
+{
+ "type": "process",
+ "name": "0.24mm Draft @Geeetech common",
+ "inherits": "fdm_process_geeetech_0.24",
+ "from": "system",
+ "setting_id": "GP_Geeetech_020",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar M 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.24mm Fine @Geeetech common 0.8 nozzle.json b/resources/profiles/Geeetech/process/0.24mm Fine @Geeetech common 0.8 nozzle.json
new file mode 100644
index 0000000000..8ae22cafb2
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.24mm Fine @Geeetech common 0.8 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "process",
+ "name": "0.24mm Fine @Geeetech common 0.8 nozzle",
+ "inherits": "fdm_process_geeetech_0.24_nozzle_0.8",
+ "from": "system",
+ "setting_id": "GP_Geeetech_021",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.24mm Optimal @Geeetech Thunder 0.6 nozzle.json b/resources/profiles/Geeetech/process/0.24mm Optimal @Geeetech Thunder 0.6 nozzle.json
new file mode 100644
index 0000000000..e40979aec5
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.24mm Optimal @Geeetech Thunder 0.6 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.24mm Optimal @Geeetech Thunder 0.6 nozzle",
+ "inherits": "fdm_process_Geeetech_HS_0.24_nozzle_0.6",
+ "from": "system",
+ "setting_id": "GP_Geeetech_023",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.6 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.24mm Optimal @Geeetech common 0.6 nozzle.json b/resources/profiles/Geeetech/process/0.24mm Optimal @Geeetech common 0.6 nozzle.json
new file mode 100644
index 0000000000..d2d13ccd2e
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.24mm Optimal @Geeetech common 0.6 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "process",
+ "name": "0.24mm Optimal @Geeetech common 0.6 nozzle",
+ "inherits": "fdm_process_geeetech_0.24_nozzle_0.6",
+ "from": "system",
+ "setting_id": "GP_Geeetech_022",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.25mm Draft @Geeetech Thunder.json b/resources/profiles/Geeetech/process/0.25mm Draft @Geeetech Thunder.json
new file mode 100644
index 0000000000..7b8765fead
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.25mm Draft @Geeetech Thunder.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.25mm Draft @Geeetech Thunder",
+ "inherits": "fdm_process_Geeetech_HS_0.25",
+ "from": "system",
+ "setting_id": "GP_Geeetech_024",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.28mm Extra Draft @Geeetech common.json b/resources/profiles/Geeetech/process/0.28mm Extra Draft @Geeetech common.json
new file mode 100644
index 0000000000..8debfd6727
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.28mm Extra Draft @Geeetech common.json
@@ -0,0 +1,24 @@
+{
+ "type": "process",
+ "name": "0.28mm Extra Draft @Geeetech common",
+ "inherits": "fdm_process_geeetech_0.28",
+ "from": "system",
+ "setting_id": "GP_Geeetech_025",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.4 nozzle",
+ "Geeetech A10 M 0.4 nozzle",
+ "Geeetech A10 T 0.4 nozzle",
+ "Geeetech A20 0.4 nozzle",
+ "Geeetech A20 M 0.4 nozzle",
+ "Geeetech A20 T 0.4 nozzle",
+ "Geeetech A30 Pro 0.4 nozzle",
+ "Geeetech A30 M 0.4 nozzle",
+ "Geeetech A30 T 0.4 nozzle",
+ "Geeetech Mizar 0.4 nozzle",
+ "Geeetech Mizar S 0.4 nozzle",
+ "Geeetech Mizar Pro 0.4 nozzle",
+ "Geeetech Mizar Max 0.4 nozzle",
+ "Geeetech Mizar M 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.30mm Standard @Geeetech Thunder 0.6 nozzle.json b/resources/profiles/Geeetech/process/0.30mm Standard @Geeetech Thunder 0.6 nozzle.json
new file mode 100644
index 0000000000..1c3df1e634
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.30mm Standard @Geeetech Thunder 0.6 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.30mm Standard @Geeetech Thunder 0.6 nozzle",
+ "inherits": "fdm_process_Geeetech_HS_0.30_nozzle_0.6",
+ "from": "system",
+ "setting_id": "GP_Geeetech_027",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.6 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.30mm Standard @Geeetech common 0.6 nozzle.json b/resources/profiles/Geeetech/process/0.30mm Standard @Geeetech common 0.6 nozzle.json
new file mode 100644
index 0000000000..ec2edc6175
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.30mm Standard @Geeetech common 0.6 nozzle.json
@@ -0,0 +1,18 @@
+{
+ "type": "process",
+ "name": "0.30mm Standard @Geeetech common 0.6 nozzle",
+ "inherits": "fdm_process_geeetech_0.30_nozzle_0.6",
+ "from": "system",
+ "setting_id": "GP_Geeetech_026",
+ "instantiation": "true",
+ "elefant_foot_compensation": "0.15",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.30mm Strength @Geeetech common 0.6 nozzle.json b/resources/profiles/Geeetech/process/0.30mm Strength @Geeetech common 0.6 nozzle.json
new file mode 100644
index 0000000000..36e720c9cc
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.30mm Strength @Geeetech common 0.6 nozzle.json
@@ -0,0 +1,19 @@
+{
+ "type": "process",
+ "name": "0.30mm Strength @Geeetech common 0.6 nozzle",
+ "inherits": "fdm_process_geeetech_0.30_nozzle_0.6",
+ "from": "system",
+ "setting_id": "GP_Geeetech_028",
+ "instantiation": "true",
+ "wall_loops": "4",
+ "sparse_infill_density": "25%",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.32mm Optimal @Geeetech common 0.8 nozzle.json b/resources/profiles/Geeetech/process/0.32mm Optimal @Geeetech common 0.8 nozzle.json
new file mode 100644
index 0000000000..e7eb0e3ae4
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.32mm Optimal @Geeetech common 0.8 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "process",
+ "name": "0.32mm Optimal @Geeetech common 0.8 nozzle",
+ "inherits": "fdm_process_geeetech_0.32_nozzle_0.8",
+ "from": "system",
+ "setting_id": "GP_Geeetech_029",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.36mm Draft @Geeetech Thunder 0.6 nozzle.json b/resources/profiles/Geeetech/process/0.36mm Draft @Geeetech Thunder 0.6 nozzle.json
new file mode 100644
index 0000000000..87478d9fdd
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.36mm Draft @Geeetech Thunder 0.6 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.36mm Draft @Geeetech Thunder 0.6 nozzle",
+ "inherits": "fdm_process_Geeetech_HS_0.36_nozzle_0.6",
+ "from": "system",
+ "setting_id": "GP_Geeetech_031",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.6 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.36mm Draft @Geeetech common 0.6 nozzle.json b/resources/profiles/Geeetech/process/0.36mm Draft @Geeetech common 0.6 nozzle.json
new file mode 100644
index 0000000000..19528cf65f
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.36mm Draft @Geeetech common 0.6 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "process",
+ "name": "0.36mm Draft @Geeetech common 0.6 nozzle",
+ "inherits": "fdm_process_geeetech_0.36_nozzle_0.6",
+ "from": "system",
+ "setting_id": "GP_Geeetech_030",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.36mm Optimal @Geeetech Thunder 0.8 nozzle.json b/resources/profiles/Geeetech/process/0.36mm Optimal @Geeetech Thunder 0.8 nozzle.json
new file mode 100644
index 0000000000..745f682596
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.36mm Optimal @Geeetech Thunder 0.8 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.36mm Optimal @Geeetech Thunder 0.8 nozzle",
+ "inherits": "fdm_process_Geeetech_HS_0.36_nozzle_0.8",
+ "from": "system",
+ "setting_id": "GP_Geeetech_032",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.8 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.40mm Standard @Geeetech common 0.8 nozzle.json b/resources/profiles/Geeetech/process/0.40mm Standard @Geeetech common 0.8 nozzle.json
new file mode 100644
index 0000000000..d0f5d4ee23
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.40mm Standard @Geeetech common 0.8 nozzle.json
@@ -0,0 +1,18 @@
+{
+ "type": "process",
+ "name": "0.40mm Standard @Geeetech common 0.8 nozzle",
+ "inherits": "fdm_process_geeetech_0.40_nozzle_0.8",
+ "from": "system",
+ "setting_id": "GP_Geeetech_033",
+ "instantiation": "true",
+ "elefant_foot_compensation": "0.15",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.42mm Extra Draft @Geeetech common 0.6 nozzle.json b/resources/profiles/Geeetech/process/0.42mm Extra Draft @Geeetech common 0.6 nozzle.json
new file mode 100644
index 0000000000..2be3d6ce34
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.42mm Extra Draft @Geeetech common 0.6 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "process",
+ "name": "0.42mm Extra Draft @Geeetech common 0.6 nozzle",
+ "inherits": "fdm_process_geeetech_0.42_nozzle_0.6",
+ "from": "system",
+ "setting_id": "GP_Geeetech_034",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.6 nozzle",
+ "Geeetech A20 0.6 nozzle",
+ "Geeetech A30 Pro 0.6 nozzle",
+ "Geeetech Mizar 0.6 nozzle",
+ "Geeetech Mizar S 0.6 nozzle",
+ "Geeetech Mizar Pro 0.6 nozzle",
+ "Geeetech Mizar Max 0.6 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.44mm Draft @Geeetech Thunder 0.8 nozzle.json b/resources/profiles/Geeetech/process/0.44mm Draft @Geeetech Thunder 0.8 nozzle.json
new file mode 100644
index 0000000000..5fe3d8e558
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.44mm Draft @Geeetech Thunder 0.8 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "process",
+ "name": "0.44mm Draft @Geeetech Thunder 0.8 nozzle",
+ "inherits": "fdm_process_Geeetech_HS_0.44_nozzle_0.8",
+ "from": "system",
+ "setting_id": "GP_Geeetech_035",
+ "instantiation": "true",
+ "default_acceleration": "5000",
+ "top_surface_acceleration": "3000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "outer_wall_acceleration": "4000",
+ "initial_layer_infill_speed": "25",
+ "initial_layer_speed": "20",
+ "travel_speed": "300",
+ "compatible_printers": [
+ "Geeetech Thunder 0.8 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.48mm Draft @Geeetech common 0.8 nozzle.json b/resources/profiles/Geeetech/process/0.48mm Draft @Geeetech common 0.8 nozzle.json
new file mode 100644
index 0000000000..7dce10b9ba
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.48mm Draft @Geeetech common 0.8 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "process",
+ "name": "0.48mm Draft @Geeetech common 0.8 nozzle",
+ "inherits": "fdm_process_geeetech_0.48_nozzle_0.8",
+ "from": "system",
+ "setting_id": "GP_Geeetech_036",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/0.56mm Extra Draft @Geeetech common 0.8 nozzle.json b/resources/profiles/Geeetech/process/0.56mm Extra Draft @Geeetech common 0.8 nozzle.json
new file mode 100644
index 0000000000..a0bcbe8286
--- /dev/null
+++ b/resources/profiles/Geeetech/process/0.56mm Extra Draft @Geeetech common 0.8 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "process",
+ "name": "0.56mm Extra Draft @Geeetech common 0.8 nozzle",
+ "inherits": "fdm_process_geeetech_0.56_nozzle_0.8",
+ "from": "system",
+ "setting_id": "GP_Geeetech_037",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Geeetech A10 Pro 0.8 nozzle",
+ "Geeetech A20 0.8 nozzle",
+ "Geeetech A30 Pro 0.8 nozzle",
+ "Geeetech Mizar 0.8 nozzle",
+ "Geeetech Mizar S 0.8 nozzle",
+ "Geeetech Mizar Pro 0.8 nozzle",
+ "Geeetech Mizar Max 0.8 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS.json
new file mode 100644
index 0000000000..528e27ba3d
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS.json
@@ -0,0 +1,39 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "default_acceleration": "7000",
+ "top_surface_acceleration": "5000",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "10000",
+ "inner_wall_acceleration": "7000",
+ "outer_wall_acceleration": "5000",
+ "travel_speed": "300",
+ "initial_layer_speed": "50",
+ "initial_layer_infill_speed": "80",
+ "outer_wall_speed": "100",
+ "inner_wall_speed": "150",
+ "internal_solid_infill_speed": "180",
+ "top_surface_speed": "120",
+ "gap_infill_speed": "150",
+ "sparse_infill_speed": "250",
+ "support_speed": "80",
+ "support_interface_speed": "100%",
+ "ironing_speed": "15",
+ "bridge_speed": "25",
+ "default_jerk": "9",
+ "initial_layer_jerk": "9",
+ "outer_wall_jerk": "7",
+ "infill_jerk": "12",
+ "travel_jerk": "12",
+ "inner_wall_jerk": "7",
+ "top_surface_jerk": "9",
+ "accel_to_decel_enable": "1",
+ "accel_to_decel_factor": "50%",
+ "overhang_1_4_speed": "80",
+ "overhang_2_4_speed": "50",
+ "overhang_3_4_speed": "30",
+ "overhang_4_4_speed": "10"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.08.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.08.json
new file mode 100644
index 0000000000..00713e5241
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.08.json
@@ -0,0 +1,14 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.08",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.08",
+ "elefant_foot_compensation": "0.15",
+ "bottom_shell_layers": "7",
+ "top_shell_layers": "9",
+ "bridge_flow": "1",
+ "ironing_flow": "8%",
+ "support_threshold_angle": "15"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.08_nozzle_0.2.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.08_nozzle_0.2.json
new file mode 100644
index 0000000000..3b1942ab64
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.08_nozzle_0.2.json
@@ -0,0 +1,21 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.08_nozzle_0.2",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.08",
+ "initial_layer_print_height": "0.1",
+ "wall_loops": "4",
+ "bottom_shell_layers": "5",
+ "top_shell_layers": "7",
+ "bridge_flow": "1",
+ "line_width": "0.22",
+ "outer_wall_line_width": "0.22",
+ "initial_layer_line_width": "0.25",
+ "sparse_infill_line_width": "0.22",
+ "inner_wall_line_width": "0.22",
+ "internal_solid_infill_line_width": "0.22",
+ "support_line_width": "0.22",
+ "top_surface_line_width": "0.22"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.10.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.10.json
new file mode 100644
index 0000000000..ca219576ca
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.10.json
@@ -0,0 +1,21 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.10",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.1",
+ "initial_layer_print_height": "0.1",
+ "wall_loops": "4",
+ "bottom_shell_layers": "5",
+ "top_shell_layers": "7",
+ "bridge_flow": "1",
+ "line_width": "0.22",
+ "outer_wall_line_width": "0.22",
+ "initial_layer_line_width": "0.25",
+ "sparse_infill_line_width": "0.22",
+ "inner_wall_line_width": "0.22",
+ "internal_solid_infill_line_width": "0.22",
+ "support_line_width": "0.22",
+ "top_surface_line_width": "0.22"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.10_nozzle_0.2.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.10_nozzle_0.2.json
new file mode 100644
index 0000000000..68a5c817ff
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.10_nozzle_0.2.json
@@ -0,0 +1,21 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.10_nozzle_0.2",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.1",
+ "initial_layer_print_height": "0.1",
+ "wall_loops": "4",
+ "bottom_shell_layers": "5",
+ "top_shell_layers": "7",
+ "bridge_flow": "1",
+ "line_width": "0.22",
+ "outer_wall_line_width": "0.22",
+ "initial_layer_line_width": "0.25",
+ "sparse_infill_line_width": "0.22",
+ "inner_wall_line_width": "0.22",
+ "internal_solid_infill_line_width": "0.22",
+ "support_line_width": "0.22",
+ "top_surface_line_width": "0.22"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.12_nozzle_0.2.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.12_nozzle_0.2.json
new file mode 100644
index 0000000000..91ec590e48
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.12_nozzle_0.2.json
@@ -0,0 +1,21 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.12_nozzle_0.2",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.12",
+ "initial_layer_print_height": "0.1",
+ "wall_loops": "4",
+ "bottom_shell_layers": "5",
+ "top_shell_layers": "7",
+ "bridge_flow": "1",
+ "line_width": "0.22",
+ "outer_wall_line_width": "0.22",
+ "initial_layer_line_width": "0.25",
+ "sparse_infill_line_width": "0.22",
+ "inner_wall_line_width": "0.22",
+ "internal_solid_infill_line_width": "0.22",
+ "support_line_width": "0.22",
+ "top_surface_line_width": "0.22"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.14_nozzle_0.2.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.14_nozzle_0.2.json
new file mode 100644
index 0000000000..b804dd94d8
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.14_nozzle_0.2.json
@@ -0,0 +1,21 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.14_nozzle_0.2",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.14",
+ "initial_layer_print_height": "0.1",
+ "wall_loops": "4",
+ "bottom_shell_layers": "5",
+ "top_shell_layers": "7",
+ "bridge_flow": "1",
+ "line_width": "0.22",
+ "outer_wall_line_width": "0.22",
+ "initial_layer_line_width": "0.25",
+ "sparse_infill_line_width": "0.22",
+ "inner_wall_line_width": "0.22",
+ "internal_solid_infill_line_width": "0.22",
+ "support_line_width": "0.22",
+ "top_surface_line_width": "0.22"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.16.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.16.json
new file mode 100644
index 0000000000..8023560f71
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.16.json
@@ -0,0 +1,14 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.16",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.16",
+ "elefant_foot_compensation": "0.15",
+ "bottom_shell_layers": "4",
+ "top_shell_layers": "6",
+ "top_shell_thickness": "1.0",
+ "bridge_flow": "1",
+ "support_threshold_angle": "25"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.20.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.20.json
new file mode 100644
index 0000000000..f05fb02340
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.20.json
@@ -0,0 +1,13 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.20",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.20",
+ "bottom_shell_layers": "5",
+ "elefant_foot_compensation": "0.15",
+ "top_shell_layers": "5",
+ "top_shell_thickness": "0.6",
+ "bridge_flow": "1"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.24_nozzle_0.6.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.24_nozzle_0.6.json
new file mode 100644
index 0000000000..e8c7ea6409
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.24_nozzle_0.6.json
@@ -0,0 +1,18 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.24_nozzle_0.6",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.24",
+ "initial_layer_print_height": "0.3",
+ "bridge_flow": "1",
+ "line_width": "0.62",
+ "outer_wall_line_width": "0.62",
+ "initial_layer_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "inner_wall_line_width": "0.62",
+ "internal_solid_infill_line_width": "0.62",
+ "support_line_width": "0.62",
+ "top_surface_line_width": "0.62"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.25.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.25.json
new file mode 100644
index 0000000000..9a7e999dd5
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.25.json
@@ -0,0 +1,14 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.25",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.25",
+ "elefant_foot_compensation": "0.15",
+ "top_surface_line_width": "0.45",
+ "top_shell_thickness": "1.0",
+ "bridge_flow": "1",
+ "support_threshold_angle": "35",
+ "top_shell_layers": "4"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.30_nozzle_0.6.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.30_nozzle_0.6.json
new file mode 100644
index 0000000000..0297e37b22
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.30_nozzle_0.6.json
@@ -0,0 +1,18 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.30_nozzle_0.6",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.3",
+ "initial_layer_print_height": "0.3",
+ "bridge_flow": "1",
+ "line_width": "0.62",
+ "outer_wall_line_width": "0.62",
+ "initial_layer_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "inner_wall_line_width": "0.62",
+ "internal_solid_infill_line_width": "0.62",
+ "support_line_width": "0.62",
+ "top_surface_line_width": "0.62"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.36_nozzle_0.6.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.36_nozzle_0.6.json
new file mode 100644
index 0000000000..fdaba8ac20
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.36_nozzle_0.6.json
@@ -0,0 +1,18 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.36_nozzle_0.6",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.36",
+ "initial_layer_print_height": "0.3",
+ "bridge_flow": "1",
+ "line_width": "0.62",
+ "outer_wall_line_width": "0.62",
+ "initial_layer_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "inner_wall_line_width": "0.62",
+ "internal_solid_infill_line_width": "0.62",
+ "support_line_width": "0.62",
+ "top_surface_line_width": "0.62"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.36_nozzle_0.8.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.36_nozzle_0.8.json
new file mode 100644
index 0000000000..fd07b3672b
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.36_nozzle_0.8.json
@@ -0,0 +1,18 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.36_nozzle_0.8",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.36",
+ "initial_layer_print_height": "0.3",
+ "bridge_flow": "1",
+ "line_width": "0.62",
+ "outer_wall_line_width": "0.62",
+ "initial_layer_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "inner_wall_line_width": "0.62",
+ "internal_solid_infill_line_width": "0.62",
+ "support_line_width": "0.62",
+ "top_surface_line_width": "0.62"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.44_nozzle_0.8.json b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.44_nozzle_0.8.json
new file mode 100644
index 0000000000..c8aa010c46
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_Geeetech_HS_0.44_nozzle_0.8.json
@@ -0,0 +1,18 @@
+{
+ "type": "process",
+ "name": "fdm_process_Geeetech_HS_0.44_nozzle_0.8",
+ "inherits": "fdm_process_Geeetech_HS",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.44",
+ "initial_layer_print_height": "0.4",
+ "bridge_flow": "1",
+ "line_width": "0.62",
+ "outer_wall_line_width": "0.62",
+ "initial_layer_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "inner_wall_line_width": "0.62",
+ "internal_solid_infill_line_width": "0.62",
+ "support_line_width": "0.62",
+ "top_surface_line_width": "0.62"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_common.json b/resources/profiles/Geeetech/process/fdm_process_common.json
new file mode 100644
index 0000000000..086d2dcbdb
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_common.json
@@ -0,0 +1,71 @@
+{
+ "type": "process",
+ "name": "fdm_process_common",
+ "from": "system",
+ "instantiation": "false",
+ "adaptive_layer_height": "0",
+ "reduce_crossing_wall": "0",
+ "bridge_flow": "0.95",
+ "bridge_speed": "25",
+ "brim_width": "5",
+ "print_sequence": "by layer",
+ "default_acceleration": "500",
+ "bridge_no_support": "0",
+ "elefant_foot_compensation": "0.1",
+ "outer_wall_line_width": "0.42",
+ "outer_wall_speed": "120",
+ "line_width": "0.45",
+ "infill_direction": "45",
+ "sparse_infill_density": "15%",
+ "sparse_infill_pattern": "grid",
+ "initial_layer_line_width": "0.42",
+ "initial_layer_print_height": "0.2",
+ "initial_layer_speed": "20",
+ "gap_infill_speed": "30",
+ "infill_combination": "0",
+ "sparse_infill_line_width": "0.45",
+ "infill_wall_overlap": "15%",
+ "sparse_infill_speed": "50",
+ "interface_shells": "0",
+ "detect_overhang_wall": "0",
+ "reduce_infill_retraction": "0",
+ "filename_format": "{input_filename_base}.gcode",
+ "wall_loops": "2",
+ "inner_wall_line_width": "0.45",
+ "inner_wall_speed": "40",
+ "print_settings_id": "",
+ "raft_layers": "0",
+ "seam_position": "nearest",
+ "skirt_distance": "2",
+ "skirt_height": "2",
+ "minimum_sparse_infill_area": "0",
+ "internal_solid_infill_line_width": "0.45",
+ "internal_solid_infill_speed": "40",
+ "spiral_mode": "0",
+ "standby_temperature_delta": "-5",
+ "enable_support": "0",
+ "support_filament": "0",
+ "support_line_width": "0.42",
+ "support_interface_filament": "0",
+ "support_on_build_plate_only": "0",
+ "support_top_z_distance": "0.15",
+ "support_interface_loop_pattern": "0",
+ "support_interface_top_layers": "2",
+ "support_interface_spacing": "0",
+ "support_interface_speed": "80",
+ "support_interface_pattern": "auto",
+ "support_base_pattern": "default",
+ "support_base_pattern_spacing": "2",
+ "support_speed": "40",
+ "support_threshold_angle": "40",
+ "support_object_xy_distance": "0.5",
+ "detect_thin_wall": "0",
+ "top_surface_line_width": "0.42",
+ "top_surface_speed": "30",
+ "travel_speed": "400",
+ "enable_prime_tower": "0",
+ "prime_tower_width": "60",
+ "xy_hole_compensation": "0",
+ "xy_contour_compensation": "0",
+ "compatible_printers": []
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.06_nozzle_0.2.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.06_nozzle_0.2.json
new file mode 100644
index 0000000000..9bd3931dc2
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.06_nozzle_0.2.json
@@ -0,0 +1,21 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.06_nozzle_0.2",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.06",
+ "initial_layer_print_height": "0.1",
+ "wall_loops": "4",
+ "bottom_shell_layers": "5",
+ "top_shell_layers": "7",
+ "bridge_flow": "1",
+ "line_width": "0.22",
+ "outer_wall_line_width": "0.22",
+ "initial_layer_line_width": "0.25",
+ "sparse_infill_line_width": "0.22",
+ "inner_wall_line_width": "0.22",
+ "internal_solid_infill_line_width": "0.22",
+ "support_line_width": "0.22",
+ "top_surface_line_width": "0.22"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.08.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.08.json
new file mode 100644
index 0000000000..57d5fc9d57
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.08.json
@@ -0,0 +1,14 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.08",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.08",
+ "elefant_foot_compensation": "0.15",
+ "bottom_shell_layers": "7",
+ "top_shell_layers": "9",
+ "bridge_flow": "1",
+ "ironing_flow": "8%",
+ "support_threshold_angle": "15"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.08_nozzle_0.2.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.08_nozzle_0.2.json
new file mode 100644
index 0000000000..eaa2e1b354
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.08_nozzle_0.2.json
@@ -0,0 +1,21 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.08_nozzle_0.2",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.08",
+ "initial_layer_print_height": "0.1",
+ "wall_loops": "4",
+ "bottom_shell_layers": "5",
+ "top_shell_layers": "7",
+ "bridge_flow": "1",
+ "line_width": "0.22",
+ "outer_wall_line_width": "0.22",
+ "initial_layer_line_width": "0.25",
+ "sparse_infill_line_width": "0.22",
+ "inner_wall_line_width": "0.22",
+ "internal_solid_infill_line_width": "0.22",
+ "support_line_width": "0.22",
+ "top_surface_line_width": "0.22"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.10_nozzle_0.2.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.10_nozzle_0.2.json
new file mode 100644
index 0000000000..58fb23af75
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.10_nozzle_0.2.json
@@ -0,0 +1,21 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.10_nozzle_0.2",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.1",
+ "initial_layer_print_height": "0.1",
+ "wall_loops": "4",
+ "bottom_shell_layers": "5",
+ "top_shell_layers": "7",
+ "bridge_flow": "1",
+ "line_width": "0.22",
+ "outer_wall_line_width": "0.22",
+ "initial_layer_line_width": "0.25",
+ "sparse_infill_line_width": "0.22",
+ "inner_wall_line_width": "0.22",
+ "internal_solid_infill_line_width": "0.22",
+ "support_line_width": "0.22",
+ "top_surface_line_width": "0.22"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.12.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.12.json
new file mode 100644
index 0000000000..f4291be1f6
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.12.json
@@ -0,0 +1,13 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.12",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.12",
+ "bottom_shell_layers": "5",
+ "elefant_foot_compensation": "0.15",
+ "top_shell_layers": "5",
+ "top_shell_thickness": "0.6",
+ "bridge_flow": "1"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.12_nozzle_0.2.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.12_nozzle_0.2.json
new file mode 100644
index 0000000000..d54e413e08
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.12_nozzle_0.2.json
@@ -0,0 +1,21 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.12_nozzle_0.2",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.12",
+ "initial_layer_print_height": "0.1",
+ "wall_loops": "4",
+ "bottom_shell_layers": "5",
+ "top_shell_layers": "7",
+ "bridge_flow": "1",
+ "line_width": "0.22",
+ "outer_wall_line_width": "0.22",
+ "initial_layer_line_width": "0.25",
+ "sparse_infill_line_width": "0.22",
+ "inner_wall_line_width": "0.22",
+ "internal_solid_infill_line_width": "0.22",
+ "support_line_width": "0.22",
+ "top_surface_line_width": "0.22"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.14_nozzle_0.2.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.14_nozzle_0.2.json
new file mode 100644
index 0000000000..8752bc3fb0
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.14_nozzle_0.2.json
@@ -0,0 +1,21 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.14_nozzle_0.2",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.14",
+ "initial_layer_print_height": "0.1",
+ "wall_loops": "4",
+ "bottom_shell_layers": "5",
+ "top_shell_layers": "7",
+ "bridge_flow": "1",
+ "line_width": "0.22",
+ "outer_wall_line_width": "0.22",
+ "initial_layer_line_width": "0.25",
+ "sparse_infill_line_width": "0.22",
+ "inner_wall_line_width": "0.22",
+ "internal_solid_infill_line_width": "0.22",
+ "support_line_width": "0.22",
+ "top_surface_line_width": "0.22"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.16.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.16.json
new file mode 100644
index 0000000000..4facd35089
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.16.json
@@ -0,0 +1,14 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.16",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.16",
+ "elefant_foot_compensation": "0.15",
+ "bottom_shell_layers": "4",
+ "top_shell_layers": "6",
+ "top_shell_thickness": "1.0",
+ "bridge_flow": "1",
+ "support_threshold_angle": "25"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.18_nozzle_0.6.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.18_nozzle_0.6.json
new file mode 100644
index 0000000000..bba537328b
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.18_nozzle_0.6.json
@@ -0,0 +1,18 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.18_nozzle_0.6",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.18",
+ "initial_layer_print_height": "0.3",
+ "bridge_flow": "1",
+ "line_width": "0.62",
+ "outer_wall_line_width": "0.62",
+ "initial_layer_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "inner_wall_line_width": "0.62",
+ "internal_solid_infill_line_width": "0.62",
+ "support_line_width": "0.62",
+ "top_surface_line_width": "0.62"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.20.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.20.json
new file mode 100644
index 0000000000..88f948be88
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.20.json
@@ -0,0 +1,13 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.20",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.20",
+ "bottom_shell_layers": "5",
+ "elefant_foot_compensation": "0.15",
+ "top_shell_layers": "5",
+ "top_shell_thickness": "0.6",
+ "bridge_flow": "1"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.24.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.24.json
new file mode 100644
index 0000000000..fb32af5d0a
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.24.json
@@ -0,0 +1,14 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.24",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.24",
+ "elefant_foot_compensation": "0.15",
+ "top_surface_line_width": "0.45",
+ "top_shell_thickness": "1.0",
+ "bridge_flow": "1",
+ "support_threshold_angle": "35",
+ "top_shell_layers": "4"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.24_nozzle_0.6.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.24_nozzle_0.6.json
new file mode 100644
index 0000000000..c14304618a
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.24_nozzle_0.6.json
@@ -0,0 +1,18 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.24_nozzle_0.6",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.24",
+ "initial_layer_print_height": "0.3",
+ "bridge_flow": "1",
+ "line_width": "0.62",
+ "outer_wall_line_width": "0.62",
+ "initial_layer_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "inner_wall_line_width": "0.62",
+ "internal_solid_infill_line_width": "0.62",
+ "support_line_width": "0.62",
+ "top_surface_line_width": "0.62"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.24_nozzle_0.8.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.24_nozzle_0.8.json
new file mode 100644
index 0000000000..59d29676e8
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.24_nozzle_0.8.json
@@ -0,0 +1,19 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.24_nozzle_0.8",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.24",
+ "initial_layer_print_height": "0.4",
+ "bridge_flow": "1",
+ "line_width": "0.82",
+ "outer_wall_line_width": "0.82",
+ "initial_layer_line_width": "0.82",
+ "sparse_infill_line_width": "0.82",
+ "inner_wall_line_width": "0.82",
+ "internal_solid_infill_line_width": "0.82",
+ "support_line_width": "0.82",
+ "top_surface_line_width": "0.82",
+ "top_surface_pattern": "monotonic"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.28.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.28.json
new file mode 100644
index 0000000000..d6846cc6e7
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.28.json
@@ -0,0 +1,14 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.28",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.28",
+ "elefant_foot_compensation": "0.15",
+ "top_surface_line_width": "0.45",
+ "top_shell_thickness": "1.0",
+ "bridge_flow": "1",
+ "support_threshold_angle": "40",
+ "top_shell_layers": "4"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.30_nozzle_0.6.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.30_nozzle_0.6.json
new file mode 100644
index 0000000000..737ff5766f
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.30_nozzle_0.6.json
@@ -0,0 +1,18 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.30_nozzle_0.6",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.3",
+ "initial_layer_print_height": "0.3",
+ "bridge_flow": "1",
+ "line_width": "0.62",
+ "outer_wall_line_width": "0.62",
+ "initial_layer_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "inner_wall_line_width": "0.62",
+ "internal_solid_infill_line_width": "0.62",
+ "support_line_width": "0.62",
+ "top_surface_line_width": "0.62"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.32_nozzle_0.8.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.32_nozzle_0.8.json
new file mode 100644
index 0000000000..77ec69a24d
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.32_nozzle_0.8.json
@@ -0,0 +1,19 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.32_nozzle_0.8",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.32",
+ "initial_layer_print_height": "0.4",
+ "bridge_flow": "1",
+ "line_width": "0.82",
+ "outer_wall_line_width": "0.82",
+ "initial_layer_line_width": "0.82",
+ "sparse_infill_line_width": "0.82",
+ "inner_wall_line_width": "0.82",
+ "internal_solid_infill_line_width": "0.82",
+ "support_line_width": "0.82",
+ "top_surface_line_width": "0.82",
+ "top_surface_pattern": "monotonic"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.36_nozzle_0.6.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.36_nozzle_0.6.json
new file mode 100644
index 0000000000..3d137d352d
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.36_nozzle_0.6.json
@@ -0,0 +1,18 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.36_nozzle_0.6",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.36",
+ "initial_layer_print_height": "0.3",
+ "bridge_flow": "1",
+ "line_width": "0.62",
+ "outer_wall_line_width": "0.62",
+ "initial_layer_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "inner_wall_line_width": "0.62",
+ "internal_solid_infill_line_width": "0.62",
+ "support_line_width": "0.62",
+ "top_surface_line_width": "0.62"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.40_nozzle_0.8.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.40_nozzle_0.8.json
new file mode 100644
index 0000000000..1670be413d
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.40_nozzle_0.8.json
@@ -0,0 +1,19 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.40_nozzle_0.8",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.4",
+ "initial_layer_print_height": "0.4",
+ "bridge_flow": "1",
+ "line_width": "0.82",
+ "outer_wall_line_width": "0.82",
+ "initial_layer_line_width": "0.82",
+ "sparse_infill_line_width": "0.82",
+ "inner_wall_line_width": "0.82",
+ "internal_solid_infill_line_width": "0.82",
+ "support_line_width": "0.82",
+ "top_surface_line_width": "0.82",
+ "top_surface_pattern": "monotonic"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.42_nozzle_0.6.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.42_nozzle_0.6.json
new file mode 100644
index 0000000000..80305db48c
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.42_nozzle_0.6.json
@@ -0,0 +1,18 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.42_nozzle_0.6",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.42",
+ "initial_layer_print_height": "0.3",
+ "bridge_flow": "1",
+ "line_width": "0.62",
+ "outer_wall_line_width": "0.62",
+ "initial_layer_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "inner_wall_line_width": "0.62",
+ "internal_solid_infill_line_width": "0.62",
+ "support_line_width": "0.62",
+ "top_surface_line_width": "0.62"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.48_nozzle_0.8.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.48_nozzle_0.8.json
new file mode 100644
index 0000000000..02e6d7fc87
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.48_nozzle_0.8.json
@@ -0,0 +1,19 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.48_nozzle_0.8",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.48",
+ "initial_layer_print_height": "0.4",
+ "bridge_flow": "1",
+ "line_width": "0.82",
+ "outer_wall_line_width": "0.82",
+ "initial_layer_line_width": "0.82",
+ "sparse_infill_line_width": "0.82",
+ "inner_wall_line_width": "0.82",
+ "internal_solid_infill_line_width": "0.82",
+ "support_line_width": "0.82",
+ "top_surface_line_width": "0.82",
+ "top_surface_pattern": "monotonic"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_0.56_nozzle_0.8.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.56_nozzle_0.8.json
new file mode 100644
index 0000000000..a7e7adb59a
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_0.56_nozzle_0.8.json
@@ -0,0 +1,19 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_0.56_nozzle_0.8",
+ "inherits": "fdm_process_geeetech_common",
+ "from": "system",
+ "instantiation": "false",
+ "layer_height": "0.56",
+ "initial_layer_print_height": "0.4",
+ "bridge_flow": "1",
+ "line_width": "0.82",
+ "outer_wall_line_width": "0.82",
+ "initial_layer_line_width": "0.82",
+ "sparse_infill_line_width": "0.82",
+ "inner_wall_line_width": "0.82",
+ "internal_solid_infill_line_width": "0.82",
+ "support_line_width": "0.82",
+ "top_surface_line_width": "0.82",
+ "top_surface_pattern": "monotonic"
+}
\ No newline at end of file
diff --git a/resources/profiles/Geeetech/process/fdm_process_geeetech_common.json b/resources/profiles/Geeetech/process/fdm_process_geeetech_common.json
new file mode 100644
index 0000000000..3a078ebd59
--- /dev/null
+++ b/resources/profiles/Geeetech/process/fdm_process_geeetech_common.json
@@ -0,0 +1,86 @@
+{
+ "type": "process",
+ "name": "fdm_process_geeetech_common",
+ "inherits": "fdm_process_common",
+ "from": "system",
+ "instantiation": "false",
+ "reduce_crossing_wall": "0",
+ "max_travel_detour_distance": "0",
+ "bottom_surface_pattern": "monotonic",
+ "bottom_shell_layers": "3",
+ "bottom_shell_thickness": "0",
+ "bridge_flow": "1",
+ "bridge_speed": "25",
+ "brim_width": "5",
+ "brim_object_gap": "0.1",
+ "compatible_printers_condition": "",
+ "print_sequence": "by layer",
+ "default_acceleration": "500",
+ "top_surface_acceleration": "500",
+ "bridge_no_support": "0",
+ "draft_shield": "disabled",
+ "elefant_foot_compensation": "0",
+ "enable_arc_fitting": "0",
+ "outer_wall_line_width": "0.4",
+ "wall_infill_order": "inner wall/outer wall/infill",
+ "line_width": "0.4",
+ "infill_direction": "45",
+ "sparse_infill_density": "15%",
+ "sparse_infill_pattern": "grid",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "700",
+ "inner_wall_acceleration": "500",
+ "initial_layer_line_width": "0.5",
+ "initial_layer_print_height": "0.2",
+ "infill_combination": "0",
+ "sparse_infill_line_width": "0.45",
+ "infill_wall_overlap": "23%",
+ "interface_shells": "0",
+ "ironing_flow": "15%",
+ "ironing_spacing": "0.1",
+ "ironing_speed": "15",
+ "ironing_type": "no ironing",
+ "reduce_infill_retraction": "1",
+ "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode",
+ "detect_overhang_wall": "1",
+ "overhang_1_4_speed": "0",
+ "overhang_2_4_speed": "20",
+ "overhang_3_4_speed": "15",
+ "overhang_4_4_speed": "10",
+ "inner_wall_line_width": "0.45",
+ "wall_loops": "3",
+ "print_settings_id": "",
+ "raft_layers": "0",
+ "seam_position": "aligned",
+ "skirt_distance": "2",
+ "skirt_height": "1",
+ "skirt_loops": "1",
+ "minimum_sparse_infill_area": "15",
+ "internal_solid_infill_line_width": "0.4",
+ "spiral_mode": "0",
+ "standby_temperature_delta": "-5",
+ "enable_support": "0",
+ "resolution": "0.012",
+ "support_top_z_distance": "0.2",
+ "support_interface_speed": "80",
+ "support_speed": "100",
+ "top_surface_pattern": "monotonic",
+ "top_surface_line_width": "0.4",
+ "top_shell_layers": "3",
+ "top_shell_thickness": "0.8",
+ "initial_layer_speed": "15",
+ "initial_layer_infill_speed": "20",
+ "outer_wall_speed": "30",
+ "inner_wall_speed": "50",
+ "internal_solid_infill_speed": "50",
+ "top_surface_speed": "30",
+ "gap_infill_speed": "50",
+ "sparse_infill_speed": "60",
+ "travel_speed": "150",
+ "enable_prime_tower": "0",
+ "small_perimeter_threshold": "5",
+ "wipe_tower_no_sparse_layers": "0",
+ "prime_tower_width": "35",
+ "xy_hole_compensation": "0",
+ "xy_contour_compensation": "0"
+}
\ No newline at end of file
diff --git a/resources/profiles/Ginger Additive.json b/resources/profiles/Ginger Additive.json
new file mode 100644
index 0000000000..8a50f25463
--- /dev/null
+++ b/resources/profiles/Ginger Additive.json
@@ -0,0 +1,102 @@
+{
+ "name": "Ginger Additive",
+ "version": "0.1",
+ "force_update": "1",
+ "description": "Ginger configuration",
+ "machine_model_list": [
+ {
+ "name": "ginger G1",
+ "sub_path": "machine/ginger G1.json"
+ }
+ ],
+ "machine_list": [
+ {
+ "name": "fdm_machine_common",
+ "sub_path": "machine/fdm_machine_common.json"
+ },
+ {
+ "name": "ginger_one_common",
+ "sub_path": "machine/ginger_one_common.json"
+ },
+ {
+ "name": "ginger G1 1.2 nozzle",
+ "sub_path": "machine/ginger G1 1.2 nozzle.json"
+ },
+ {
+ "name": "ginger G1 3.0 nozzle",
+ "sub_path": "machine/ginger G1 3.0 nozzle.json"
+ },
+ {
+ "name": "ginger G1 5.0 nozzle",
+ "sub_path": "machine/ginger G1 5.0 nozzle.json"
+ },
+ {
+ "name": "ginger G1 8.0 nozzle",
+ "sub_path": "machine/ginger G1 8.0 nozzle.json"
+ }
+ ],
+ "process_list": [
+ {
+ "name": "fdm_process_common",
+ "sub_path": "process/fdm_process_common.json"
+ },
+ {
+ "name": "0.60mm Standard",
+ "sub_path": "process/0.60mm Standard.json"
+ },
+ {
+ "name": "1.50mm Standard",
+ "sub_path": "process/1.50mm Standard.json"
+ },
+ {
+ "name": "1.80mm Vasemode",
+ "sub_path": "process/1.80mm Vasemode.json"
+ },
+ {
+ "name": "2.50mm Standard",
+ "sub_path": "process/2.50mm Standard.json"
+ },
+ {
+ "name": "4.00mm Standard",
+ "sub_path": "process/4.00mm Standard.json"
+ }
+ ],
+ "filament_list": [
+ {
+ "name": "fdm_filament_common",
+ "sub_path": "filament/fdm_filament_common.json"
+ },
+ {
+ "name": "fdm_filament_petg",
+ "sub_path": "filament/fdm_filament_petg.json"
+ },
+ {
+ "name": "fdm_filament_pla",
+ "sub_path": "filament/fdm_filament_pla.json"
+ },
+ {
+ "name": "fdm_filament_rpetg",
+ "sub_path": "filament/fdm_filament_rpetg.json"
+ },
+ {
+ "name": "fdm_filament_rpla",
+ "sub_path": "filament/fdm_filament_rpla.json"
+ },
+ {
+ "name": "Ginger Generic PETG",
+ "sub_path": "filament/Ginger Generic PETG.json"
+ },
+ {
+ "name": "Ginger Generic PLA",
+ "sub_path": "filament/Ginger Generic PLA.json"
+ },
+ {
+ "name": "Ginger Generic rPETG",
+ "sub_path": "filament/Ginger Generic rPETG.json"
+ },
+ {
+ "name": "Ginger Generic rPLA",
+ "sub_path": "filament/Ginger Generic rPLA.json"
+ }
+ ]
+}
diff --git a/resources/profiles/Ginger Additive/Ginger_One.stl b/resources/profiles/Ginger Additive/Ginger_One.stl
new file mode 100644
index 0000000000..ec20e29d33
Binary files /dev/null and b/resources/profiles/Ginger Additive/Ginger_One.stl differ
diff --git a/resources/profiles/Ginger Additive/Ginger_One.svg b/resources/profiles/Ginger Additive/Ginger_One.svg
new file mode 100644
index 0000000000..eae220fa92
--- /dev/null
+++ b/resources/profiles/Ginger Additive/Ginger_One.svg
@@ -0,0 +1,4 @@
+
diff --git a/resources/profiles/Ginger Additive/filament/Ginger Generic PETG.json b/resources/profiles/Ginger Additive/filament/Ginger Generic PETG.json
new file mode 100644
index 0000000000..8fd8e38915
--- /dev/null
+++ b/resources/profiles/Ginger Additive/filament/Ginger Generic PETG.json
@@ -0,0 +1,29 @@
+{
+ "type": "filament",
+ "enable_overhang_bridge_fan": ["0"],
+ "fan_max_speed": ["0"],
+ "fan_min_speed": ["0"],
+ "filament_diameter": ["1.12838"],
+ "filament_max_volumetric_speed": ["220"],
+ "filament_settings_id": ["PETG"],
+ "filament_type": ["PETG"],
+ "filament_vendor": ["Generic"],
+ "from": "system",
+ "hot_plate_temp": ["100"],
+ "hot_plate_temp_initial_layer": ["90"],
+ "inherits": "fdm_filament_petg",
+ "is_custom_defined": "0",
+ "name": "Ginger Generic PETG",
+ "pellet_flow_coefficient": ["1"],
+ "pressure_advance": ["0.01"],
+ "slow_down_layer_time": ["30"],
+ "slow_down_min_speed": ["1"],
+ "version": "0.1.0.0",
+ "compatible_printers": [
+ "ginger G1 1.2 nozzle",
+ "ginger G1 3.0 nozzle",
+ "ginger G1 5.0 nozzle",
+ "ginger G1 8.0 nozzle"
+ ],
+ "instantiation": "true"
+}
diff --git a/resources/profiles/Ginger Additive/filament/Ginger Generic PLA.json b/resources/profiles/Ginger Additive/filament/Ginger Generic PLA.json
new file mode 100644
index 0000000000..8242c91b28
--- /dev/null
+++ b/resources/profiles/Ginger Additive/filament/Ginger Generic PLA.json
@@ -0,0 +1,30 @@
+{
+ "type": "filament",
+ "fan_cooling_layer_time": ["60"],
+ "fan_max_speed": ["60"],
+ "fan_min_speed": ["20"],
+ "filament_cost": ["6"],
+ "filament_diameter": ["1.12838"],
+ "filament_max_volumetric_speed": ["250"],
+ "filament_settings_id": ["PLA"],
+ "filament_vendor": ["Generic"],
+ "from": "system",
+ "inherits": "fdm_filament_pla",
+ "is_custom_defined": "0",
+ "name": "Ginger Generic PLA",
+ "nozzle_temperature": ["210"],
+ "nozzle_temperature_initial_layer": ["210"],
+ "nozzle_temperature_range_high": ["220"],
+ "pellet_flow_coefficient": ["1"],
+ "required_nozzle_HRC": ["0"],
+ "slow_down_layer_time": ["20"],
+ "slow_down_min_speed": ["3"],
+ "version": "0.1.0.0",
+ "compatible_printers": [
+ "ginger G1 1.2 nozzle",
+ "ginger G1 3.0 nozzle",
+ "ginger G1 5.0 nozzle",
+ "ginger G1 8.0 nozzle"
+ ],
+ "instantiation": "true"
+}
diff --git a/resources/profiles/Ginger Additive/filament/Ginger Generic rPETG.json b/resources/profiles/Ginger Additive/filament/Ginger Generic rPETG.json
new file mode 100644
index 0000000000..489744aeff
--- /dev/null
+++ b/resources/profiles/Ginger Additive/filament/Ginger Generic rPETG.json
@@ -0,0 +1,31 @@
+{
+ "type": "filament",
+ "fan_cooling_layer_time": ["50"],
+ "fan_min_speed": ["0"],
+ "filament_density": ["1.27"],
+ "filament_diameter": ["1.12838"],
+ "filament_settings_id": ["rPETG"],
+ "filament_type": ["rPETG"],
+ "filament_vendor": ["Generic"],
+ "from": "system",
+ "hot_plate_temp": ["90"],
+ "hot_plate_temp_initial_layer": ["80"],
+ "inherits": "fdm_filament_rpetg",
+ "is_custom_defined": "0",
+ "name": "Ginger Generic rPETG",
+ "nozzle_temperature_range_high": ["260"],
+ "nozzle_temperature_range_low": ["230"],
+ "pellet_flow_coefficient": ["1"],
+ "pressure_advance": ["0.01"],
+ "required_nozzle_HRC": ["0"],
+ "slow_down_min_speed": ["2"],
+ "temperature_vitrification": ["85"],
+ "version": "0.1.0.0",
+ "compatible_printers": [
+ "ginger G1 1.2 nozzle",
+ "ginger G1 3.0 nozzle",
+ "ginger G1 5.0 nozzle",
+ "ginger G1 8.0 nozzle"
+ ],
+ "instantiation": "true"
+}
diff --git a/resources/profiles/Ginger Additive/filament/Ginger Generic rPLA.json b/resources/profiles/Ginger Additive/filament/Ginger Generic rPLA.json
new file mode 100644
index 0000000000..65dc0c13b0
--- /dev/null
+++ b/resources/profiles/Ginger Additive/filament/Ginger Generic rPLA.json
@@ -0,0 +1,22 @@
+{
+ "type": "filament",
+ "fan_max_speed": ["0"],
+ "fan_min_speed": ["0"],
+ "filament_diameter": ["1.12838"],
+ "filament_settings_id": ["rPLA"],
+ "filament_type": ["rPLA"],
+ "filament_vendor": ["Generic"],
+ "from": "system",
+ "inherits": "fdm_filament_rpla",
+ "is_custom_defined": "0",
+ "name": "Ginger Generic rPLA",
+ "pellet_flow_coefficient": ["1"],
+ "version": "0.1.0.0",
+ "compatible_printers": [
+ "ginger G1 1.2 nozzle",
+ "ginger G1 3.0 nozzle",
+ "ginger G1 5.0 nozzle",
+ "ginger G1 8.0 nozzle"
+ ],
+ "instantiation": "true"
+}
diff --git a/resources/profiles/Ginger Additive/filament/fdm_filament_common.json b/resources/profiles/Ginger Additive/filament/fdm_filament_common.json
new file mode 100644
index 0000000000..ffd1d27d7c
--- /dev/null
+++ b/resources/profiles/Ginger Additive/filament/fdm_filament_common.json
@@ -0,0 +1,95 @@
+{
+ "type": "filament",
+ "activate_air_filtration": ["0"],
+ "activate_chamber_temp_control": ["0"],
+ "additional_cooling_fan_speed": ["70"],
+ "chamber_temperature": ["0"],
+ "close_fan_the_first_x_layers": ["1"],
+ "compatible_printers": ["Ginger Additive ginger G1 1.0 nozzle"],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "complete_print_exhaust_fan_speed": ["70"],
+ "cool_plate_temp": ["35"],
+ "cool_plate_temp_initial_layer": ["35"],
+ "default_filament_colour": [""],
+ "during_print_exhaust_fan_speed": ["70"],
+ "enable_overhang_bridge_fan": ["1"],
+ "enable_pressure_advance": ["1"],
+ "eng_plate_temp": ["0"],
+ "eng_plate_temp_initial_layer": ["0"],
+ "fan_cooling_layer_time": ["60"],
+ "fan_max_speed": ["0"],
+ "fan_min_speed": ["0"],
+ "filament_cooling_final_speed": ["3.4"],
+ "filament_cooling_initial_speed": ["2.2"],
+ "filament_cooling_moves": ["4"],
+ "filament_cost": ["5"],
+ "filament_density": ["1.24"],
+ "filament_deretraction_speed": ["nil"],
+ "filament_diameter": ["2.8"],
+ "filament_end_gcode": ["; filament end gcode \nM106 P3 S0\n"],
+ "filament_flow_ratio": ["1"],
+ "filament_id": "P510eff9",
+ "filament_is_support": ["0"],
+ "filament_load_time": ["0"],
+ "filament_loading_speed": ["28"],
+ "filament_loading_speed_start": ["3"],
+ "filament_max_volumetric_speed": ["300"],
+ "filament_minimal_purge_on_wipe_tower": ["15"],
+ "filament_multitool_ramming": ["0"],
+ "filament_multitool_ramming_flow": ["10"],
+ "filament_multitool_ramming_volume": ["10"],
+ "filament_notes": [""],
+ "filament_ramming_parameters": [
+ "120 100 6.6 6.8 7.2 7.6 7.9 8.2 8.7 9.4 9.9 10.0| 0.05 6.6 0.45 6.8 0.95 7.8 1.45 8.3 1.95 9.7 2.45 10 2.95 7.6 3.45 7.6 3.95 7.6 4.45 7.6 4.95 7.6"
+ ],
+ "filament_retract_before_wipe": ["nil"],
+ "filament_retract_lift_above": ["nil"],
+ "filament_retract_lift_below": ["nil"],
+ "filament_retract_lift_enforce": ["nil"],
+ "filament_retract_restart_extra": ["nil"],
+ "filament_retract_when_changing_layer": ["nil"],
+ "filament_retraction_length": ["nil"],
+ "filament_retraction_minimum_travel": ["nil"],
+ "filament_retraction_speed": ["nil"],
+ "filament_settings_id": ["Ginger Filaments Common"],
+ "filament_shrink": ["100%"],
+ "filament_soluble": ["0"],
+ "filament_start_gcode": [
+ "; filament start gcode\n{if (bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S255\n{elsif(bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S180\n{endif}\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}"
+ ],
+ "filament_toolchange_delay": ["0"],
+ "filament_unload_time": ["0"],
+ "filament_unloading_speed": ["90"],
+ "filament_unloading_speed_start": ["100"],
+ "filament_vendor": ["Generic"],
+ "filament_wipe": ["nil"],
+ "filament_wipe_distance": ["nil"],
+ "filament_z_hop": ["nil"],
+ "filament_z_hop_types": ["nil"],
+ "from": "system",
+ "full_fan_speed_layer": ["0"],
+ "hot_plate_temp": ["1"],
+ "hot_plate_temp_initial_layer": ["60"],
+ "is_custom_defined": "0",
+ "name": "fdm_filament_common",
+ "nozzle_temperature": ["220"],
+ "nozzle_temperature_initial_layer": ["220"],
+ "nozzle_temperature_range_high": ["240"],
+ "nozzle_temperature_range_low": ["190"],
+ "overhang_fan_speed": ["100"],
+ "overhang_fan_threshold": ["50%"],
+ "pressure_advance": ["0.4"],
+ "reduce_fan_stop_start_freq": ["0"],
+ "required_nozzle_HRC": ["3"],
+ "slow_down_for_layer_cooling": ["1"],
+ "slow_down_layer_time": ["30"],
+ "slow_down_min_speed": ["20"],
+ "support_material_interface_fan_speed": ["-1"],
+ "temperature_vitrification": ["55"],
+ "textured_plate_temp": ["55"],
+ "textured_plate_temp_initial_layer": ["55"],
+ "version": "1.7.0.2",
+ "instantiation": "false"
+}
diff --git a/resources/profiles/Ginger Additive/filament/fdm_filament_petg.json b/resources/profiles/Ginger Additive/filament/fdm_filament_petg.json
new file mode 100644
index 0000000000..3046df8a81
--- /dev/null
+++ b/resources/profiles/Ginger Additive/filament/fdm_filament_petg.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "filament_type": ["PETG"],
+ "close_fan_the_first_x_layers": ["4"],
+ "fan_cooling_layer_time": ["100"],
+ "fan_max_speed": ["50"],
+ "fan_min_speed": ["5"],
+ "filament_diameter": ["2.4"],
+ "filament_settings_id": ["PETG"],
+ "filament_vendor": ["Generic"],
+ "from": "system",
+ "hot_plate_temp": ["50"],
+ "hot_plate_temp_initial_layer": ["50"],
+ "inherits": "fdm_filament_common",
+ "name": "fdm_filament_petg",
+ "pressure_advance": ["0"],
+ "slow_down_layer_time": ["25"],
+ "version": "1.7.0.2",
+ "instantiation": "false"
+}
diff --git a/resources/profiles/Ginger Additive/filament/fdm_filament_pla.json b/resources/profiles/Ginger Additive/filament/fdm_filament_pla.json
new file mode 100644
index 0000000000..d10da9b052
--- /dev/null
+++ b/resources/profiles/Ginger Additive/filament/fdm_filament_pla.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "filament_type": ["PLA"],
+ "close_fan_the_first_x_layers": ["4"],
+ "fan_cooling_layer_time": ["100"],
+ "fan_max_speed": ["50"],
+ "fan_min_speed": ["5"],
+ "filament_diameter": ["2.4"],
+ "filament_settings_id": ["PLA"],
+ "filament_vendor": ["Generic"],
+ "from": "system",
+ "hot_plate_temp": ["50"],
+ "hot_plate_temp_initial_layer": ["50"],
+ "inherits": "fdm_filament_common",
+ "name": "fdm_filament_pla",
+ "pressure_advance": ["0"],
+ "slow_down_layer_time": ["25"],
+ "version": "1.7.0.2",
+ "instantiation": "false"
+}
diff --git a/resources/profiles/Ginger Additive/filament/fdm_filament_rpetg.json b/resources/profiles/Ginger Additive/filament/fdm_filament_rpetg.json
new file mode 100644
index 0000000000..826d04babf
--- /dev/null
+++ b/resources/profiles/Ginger Additive/filament/fdm_filament_rpetg.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "filament_type": ["rPETG"],
+ "close_fan_the_first_x_layers": ["4"],
+ "fan_cooling_layer_time": ["100"],
+ "fan_max_speed": ["50"],
+ "fan_min_speed": ["5"],
+ "filament_diameter": ["2.4"],
+ "filament_settings_id": ["rPETG"],
+ "filament_vendor": ["Generic"],
+ "from": "system",
+ "hot_plate_temp": ["50"],
+ "hot_plate_temp_initial_layer": ["50"],
+ "inherits": "fdm_filament_common",
+ "name": "fdm_filament_rpetg",
+ "pressure_advance": ["0"],
+ "slow_down_layer_time": ["25"],
+ "version": "1.7.0.2",
+ "instantiation": "false"
+}
diff --git a/resources/profiles/Ginger Additive/filament/fdm_filament_rpla.json b/resources/profiles/Ginger Additive/filament/fdm_filament_rpla.json
new file mode 100644
index 0000000000..05a73700c7
--- /dev/null
+++ b/resources/profiles/Ginger Additive/filament/fdm_filament_rpla.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "filament_type": ["rPLA"],
+ "close_fan_the_first_x_layers": ["4"],
+ "fan_cooling_layer_time": ["100"],
+ "fan_max_speed": ["50"],
+ "fan_min_speed": ["5"],
+ "filament_diameter": ["2.4"],
+ "filament_settings_id": ["rPLA"],
+ "filament_vendor": ["Generic"],
+ "from": "system",
+ "hot_plate_temp": ["50"],
+ "hot_plate_temp_initial_layer": ["50"],
+ "inherits": "fdm_filament_common",
+ "name": "fdm_filament_rpla",
+ "pressure_advance": ["0"],
+ "slow_down_layer_time": ["25"],
+ "version": "1.7.0.2",
+ "instantiation": "false"
+}
diff --git a/resources/profiles/Ginger Additive/ginger G1_cover.png b/resources/profiles/Ginger Additive/ginger G1_cover.png
new file mode 100644
index 0000000000..f072f46938
Binary files /dev/null and b/resources/profiles/Ginger Additive/ginger G1_cover.png differ
diff --git a/resources/profiles/Ginger Additive/machine/fdm_machine_common.json b/resources/profiles/Ginger Additive/machine/fdm_machine_common.json
new file mode 100644
index 0000000000..c1e54edfbb
--- /dev/null
+++ b/resources/profiles/Ginger Additive/machine/fdm_machine_common.json
@@ -0,0 +1,121 @@
+{
+ "type": "machine",
+ "instantiation": "false",
+ "adaptive_bed_mesh_margin": "0",
+ "auxiliary_fan": "0",
+ "bed_custom_texture": "",
+ "bed_exclude_area": ["0x0"],
+ "bed_mesh_max": "99999,99999",
+ "bed_mesh_min": "-99999,-99999",
+ "bed_mesh_probe_distance": "50,50",
+ "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n",
+ "best_object_pos": "0.5,0.5",
+ "change_extrusion_role_gcode": "",
+ "change_filament_gcode": "",
+ "cooling_tube_length": "5",
+ "cooling_tube_retraction": "91.5",
+ "default_filament_profile": ["My Generic ABS"],
+ "default_print_profile": "0.20mm Standard @MyKlipper",
+ "deretraction_speed": ["30"],
+ "disable_m73": "0",
+ "emit_machine_limits_to_gcode": "1",
+ "enable_filament_ramming": "1",
+ "extra_loading_move": "-2",
+ "extruder_clearance_height_to_lid": "140",
+ "extruder_clearance_height_to_rod": "36",
+ "extruder_clearance_radius": "65",
+ "extruder_colour": ["#FCE94F"],
+ "extruder_offset": ["0x0"],
+ "fan_kickstart": "0",
+ "fan_speedup_overhangs": "1",
+ "fan_speedup_time": "0",
+ "from": "system",
+ "gcode_flavor": "klipper",
+ "head_wrap_detect_zone": [],
+ "high_current_on_filament_swap": "0",
+ "host_type": "octoprint",
+ "is_custom_defined": "0",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]",
+ "machine_end_gcode": "PRINT_END",
+ "machine_load_filament_time": "0",
+ "machine_max_acceleration_e": ["5000", "5000"],
+ "machine_max_acceleration_extruding": ["20000", "20000"],
+ "machine_max_acceleration_retracting": ["5000", "5000"],
+ "machine_max_acceleration_travel": ["20000", "20000"],
+ "machine_max_acceleration_x": ["2000", "20000"],
+ "machine_max_acceleration_y": ["2000", "20000"],
+ "machine_max_acceleration_z": ["500", "200"],
+ "machine_max_jerk_e": ["2.5", "2.5"],
+ "machine_max_jerk_x": ["5", "9"],
+ "machine_max_jerk_y": ["5", "9"],
+ "machine_max_jerk_z": ["0.2", "0.4"],
+ "machine_max_speed_e": ["80", "25"],
+ "machine_max_speed_x": ["200", "200"],
+ "machine_max_speed_y": ["200", "200"],
+ "machine_max_speed_z": ["12", "12"],
+ "machine_min_extruding_rate": ["0", "0"],
+ "machine_min_travel_rate": ["0", "0"],
+ "machine_pause_gcode": "PAUSE",
+ "machine_start_gcode": "PRINT_START MATERIAL=[filament_type]\n",
+ "machine_unload_filament_time": "0",
+ "manual_filament_change": "0",
+ "max_layer_height": ["2"],
+ "min_layer_height": ["0.1"],
+ "name": "fdm_machine_common",
+ "nozzle_diameter": ["1.0"],
+ "nozzle_hrc": "0",
+ "nozzle_type": "undefine",
+ "nozzle_volume": "0",
+ "parking_pos_retraction": "92",
+ "pellet_modded_printer": "1",
+ "preferred_orientation": "0",
+ "print_host": "http://10.0.1.200/",
+ "print_host_webui": "",
+ "printable_area": ["0x0", "1000x0", "1000x1000", "0x1000"],
+ "printable_height": "1000",
+ "printer_notes": "",
+ "printer_settings_id": "fdm_machine_common",
+ "printer_structure": "undefine",
+ "printer_technology": "FFF",
+ "printer_variant": "1.0",
+ "printhost_apikey": "",
+ "printhost_authorization_type": "key",
+ "printhost_cafile": "",
+ "printhost_password": "",
+ "printhost_port": "",
+ "printhost_ssl_ignore_revoke": "0",
+ "printhost_user": "",
+ "printing_by_object_gcode": "",
+ "purge_in_prime_tower": "1",
+ "retract_before_wipe": ["70%"],
+ "retract_length_toolchange": ["2"],
+ "retract_lift_above": ["0"],
+ "retract_lift_below": ["0"],
+ "retract_lift_enforce": ["All Surfaces"],
+ "retract_restart_extra": ["0"],
+ "retract_restart_extra_toolchange": ["0"],
+ "retract_when_changing_layer": ["1"],
+ "retraction_length": ["0.8"],
+ "retraction_minimum_travel": ["1"],
+ "retraction_speed": ["30"],
+ "scan_first_layer": "0",
+ "silent_mode": "0",
+ "single_extruder_multi_material": "1",
+ "support_air_filtration": "1",
+ "support_chamber_temp_control": "1",
+ "support_multi_bed_types": "0",
+ "template_custom_gcode": "",
+ "thumbnails": ["50x50"],
+ "thumbnails_format": "PNG",
+ "time_cost": "0",
+ "time_lapse_gcode": "",
+ "upward_compatible_machine": [],
+ "use_firmware_retraction": "0",
+ "use_relative_e_distances": "1",
+ "version": "1.9.0.2",
+ "wipe": ["1"],
+ "wipe_distance": ["1"],
+ "z_hop": ["0.4"],
+ "z_hop_types": ["Normal Lift"],
+ "z_offset": "0"
+}
diff --git a/resources/profiles/Ginger Additive/machine/ginger G1 1.2 nozzle.json b/resources/profiles/Ginger Additive/machine/ginger G1 1.2 nozzle.json
new file mode 100644
index 0000000000..76a80a20d4
--- /dev/null
+++ b/resources/profiles/Ginger Additive/machine/ginger G1 1.2 nozzle.json
@@ -0,0 +1,33 @@
+{
+ "type": "machine",
+ "deretraction_speed": ["300"],
+ "extruder_clearance_height_to_lid": "200",
+ "extruder_clearance_height_to_rod": "200",
+ "extruder_clearance_radius": "180",
+ "from": "system",
+ "inherits": "ginger_one_common",
+ "is_custom_defined": "0",
+ "machine_max_speed_e": ["250", "25"],
+ "machine_max_speed_x": ["250", "200"],
+ "machine_max_speed_y": ["250", "200"],
+ "machine_max_speed_z": ["12", "12"],
+ "machine_start_gcode": "START_PRINT BED_TEMPERATURE=[bed_temperature_initial_layer] MATERIAL=[filament_type] KAMP_LEVELING=1 PURGE_LAYER_HEIGHT=2 PURGE_PARKING_SPEED=10000 PURGE_LENGHT=300 PURGE_SPEED=500 PURGE_MATERIAL_QUANTITY=3000 EXTRUDER_TEMPERATURE=[nozzle_temperature] EXTRUDER_TEMPERATURE_INITIAL_LAYER=[nozzle_temperature_initial_layer]",
+ "max_layer_height": ["1"],
+ "name": "ginger G1 1.2 nozzle",
+ "nozzle_diameter": ["1.2"],
+ "printer_variant": "1.2",
+ "printer_model": "ginger G1",
+ "print_host": "192.168.1.97",
+ "printer_settings_id": "ginger G1 1.2 nozzle",
+ "retract_before_wipe": ["20%"],
+ "retract_restart_extra": ["12"],
+ "retraction_length": ["20"],
+ "retraction_speed": ["250"],
+ "support_air_filtration": "0",
+ "support_chamber_temp_control": "0",
+ "version": "0.1.0.0",
+ "wipe_distance": ["20"],
+ "z_hop": ["0.8"],
+ "z_hop_types": ["Slope Lift"],
+ "instantiation": "true"
+}
diff --git a/resources/profiles/Ginger Additive/machine/ginger G1 3.0 nozzle.json b/resources/profiles/Ginger Additive/machine/ginger G1 3.0 nozzle.json
new file mode 100644
index 0000000000..8976a3ce37
--- /dev/null
+++ b/resources/profiles/Ginger Additive/machine/ginger G1 3.0 nozzle.json
@@ -0,0 +1,33 @@
+{
+ "type": "machine",
+ "deretraction_speed": ["250"],
+ "extruder_clearance_height_to_lid": "200",
+ "extruder_clearance_height_to_rod": "200",
+ "extruder_clearance_radius": "180",
+ "from": "system",
+ "inherits": "ginger_one_common",
+ "is_custom_defined": "0",
+ "machine_max_speed_e": ["300", "25"],
+ "machine_max_speed_x": ["250", "200"],
+ "machine_max_speed_y": ["250", "200"],
+ "machine_max_speed_z": ["12", "12"],
+ "machine_start_gcode": "START_PRINT BED_TEMPERATURE=[bed_temperature_initial_layer] MATERIAL=[filament_type] KAMP_LEVELING=1 PURGE_LAYER_HEIGHT=2 PURGE_PARKING_SPEED=10000 PURGE_LENGHT=300 PURGE_SPEED=500 PURGE_MATERIAL_QUANTITY=3000 EXTRUDER_TEMPERATURE=[nozzle_temperature] EXTRUDER_TEMPERATURE_INITIAL_LAYER=[nozzle_temperature_initial_layer]",
+ "max_layer_height": ["2.2"],
+ "nozzle_diameter": ["3.0"],
+ "printer_variant": "3.0",
+ "printer_model": "ginger G1",
+ "name": "ginger G1 3.0 nozzle",
+ "print_host": "192.168.1.39",
+ "printer_settings_id": "ginger G1 3.0 nozzle",
+ "retract_before_wipe": ["20%"],
+ "retract_restart_extra": ["5"],
+ "retraction_length": ["15"],
+ "retraction_speed": ["250"],
+ "support_air_filtration": "0",
+ "support_chamber_temp_control": "0",
+ "version": "0.1.0.0",
+ "wipe_distance": ["15"],
+ "z_hop": ["1.2"],
+ "z_hop_types": ["Normal Lift"],
+ "instantiation": "true"
+}
diff --git a/resources/profiles/Ginger Additive/machine/ginger G1 5.0 nozzle.json b/resources/profiles/Ginger Additive/machine/ginger G1 5.0 nozzle.json
new file mode 100644
index 0000000000..02231c1ad7
--- /dev/null
+++ b/resources/profiles/Ginger Additive/machine/ginger G1 5.0 nozzle.json
@@ -0,0 +1,33 @@
+{
+ "type": "machine",
+ "deretraction_speed": ["300"],
+ "extruder_clearance_height_to_lid": "200",
+ "extruder_clearance_height_to_rod": "200",
+ "extruder_clearance_radius": "180",
+ "from": "system",
+ "inherits": "ginger_one_common",
+ "is_custom_defined": "0",
+ "machine_max_speed_e": ["300", "25"],
+ "machine_max_speed_x": ["250", "200"],
+ "machine_max_speed_y": ["250", "200"],
+ "machine_max_speed_z": ["12", "12"],
+ "machine_start_gcode": "START_PRINT BED_TEMPERATURE=[bed_temperature_initial_layer] MATERIAL=[filament_type] KAMP_LEVELING=1 PURGE_LAYER_HEIGHT=2 PURGE_PARKING_SPEED=10000 PURGE_LENGHT=300 PURGE_SPEED=500 PURGE_MATERIAL_QUANTITY=3000 EXTRUDER_TEMPERATURE=[nozzle_temperature] EXTRUDER_TEMPERATURE_INITIAL_LAYER=[nozzle_temperature_initial_layer]",
+ "max_layer_height": ["3.5"],
+ "name": "ginger G1 5.0 nozzle",
+ "nozzle_diameter": ["5.0"],
+ "printer_variant": "5.0",
+ "printer_model": "ginger G1",
+ "print_host": "192.168.1.97",
+ "printer_settings_id": "ginger G1 5.0 nozzle",
+ "retract_before_wipe": ["20%"],
+ "retract_restart_extra": ["15"],
+ "retraction_length": ["25"],
+ "retraction_speed": ["300"],
+ "support_air_filtration": "0",
+ "support_chamber_temp_control": "0",
+ "version": "0.1.0.0",
+ "wipe_distance": ["20"],
+ "z_hop": ["2"],
+ "z_hop_types": ["Normal Lift"],
+ "instantiation": "true"
+}
diff --git a/resources/profiles/Ginger Additive/machine/ginger G1 8.0 nozzle.json b/resources/profiles/Ginger Additive/machine/ginger G1 8.0 nozzle.json
new file mode 100644
index 0000000000..b9a1e9b5d4
--- /dev/null
+++ b/resources/profiles/Ginger Additive/machine/ginger G1 8.0 nozzle.json
@@ -0,0 +1,34 @@
+{
+ "type": "machine",
+ "deretraction_speed": ["300"],
+ "extruder_clearance_height_to_lid": "200",
+ "extruder_clearance_height_to_rod": "200",
+ "extruder_clearance_radius": "180",
+ "from": "system",
+ "inherits": "ginger_one_common",
+ "is_custom_defined": "0",
+ "machine_max_speed_e": ["300", "25"],
+ "machine_max_speed_x": ["250", "200"],
+ "machine_max_speed_y": ["250", "200"],
+ "machine_max_speed_z": ["12", "12"],
+ "machine_start_gcode": "START_PRINT BED_TEMPERATURE=[bed_temperature_initial_layer] MATERIAL=[filament_type] KAMP_LEVELING=1 PURGE_LAYER_HEIGHT=2 PURGE_PARKING_SPEED=10000 PURGE_LENGHT=300 PURGE_SPEED=500 PURGE_MATERIAL_QUANTITY=3000 EXTRUDER_TEMPERATURE=[nozzle_temperature] EXTRUDER_TEMPERATURE_INITIAL_LAYER=[nozzle_temperature_initial_layer]",
+ "max_layer_height": ["6"],
+ "name": "ginger G1 8.0 nozzle",
+ "nozzle_diameter": ["8.0"],
+ "printer_variant": "8.0",
+ "printer_model": "ginger G1",
+ "print_host": "192.168.1.39",
+ "printer_settings_id": "ginger G1 8.0 nozzle",
+ "retract_before_wipe": ["20%"],
+ "retract_length_toolchange": ["4"],
+ "retract_restart_extra": ["30"],
+ "retraction_length": ["40"],
+ "retraction_speed": ["300"],
+ "support_air_filtration": "0",
+ "support_chamber_temp_control": "0",
+ "version": "0.1.0.0",
+ "wipe_distance": ["30"],
+ "z_hop": ["2"],
+ "z_hop_types": ["Normal Lift"],
+ "instantiation": "true"
+}
diff --git a/resources/profiles/Ginger Additive/machine/ginger G1.json b/resources/profiles/Ginger Additive/machine/ginger G1.json
new file mode 100644
index 0000000000..bf1032021b
--- /dev/null
+++ b/resources/profiles/Ginger Additive/machine/ginger G1.json
@@ -0,0 +1,10 @@
+{
+ "type": "machine_model",
+ "name": "ginger G1",
+ "model_id": "Ginger_One",
+ "nozzle_diameter": "1.2;3.0;5.0;8.0",
+ "machine_tech": "FFF",
+ "family": "Ginger",
+ "bed_model": "Ginger_One.stl",
+ "default_materials": "Ginger Generic PETG;Ginger Generic PLA;Ginger Generic rPETG;Ginger Generic rPLA"
+}
diff --git a/resources/profiles/Ginger Additive/machine/ginger_one_common.json b/resources/profiles/Ginger Additive/machine/ginger_one_common.json
new file mode 100644
index 0000000000..1917e0c170
--- /dev/null
+++ b/resources/profiles/Ginger Additive/machine/ginger_one_common.json
@@ -0,0 +1,33 @@
+{
+ "type": "machine",
+ "instantiation": "false",
+ "deretraction_speed": ["60"],
+ "from": "system",
+ "inherits": "fdm_machine_common",
+ "machine_end_gcode": "END_PRINT",
+ "machine_max_acceleration_e": ["1000", "5000"],
+ "machine_max_acceleration_extruding": ["2500", "20000"],
+ "machine_max_acceleration_retracting": ["2500", "5000"],
+ "machine_max_acceleration_x": ["2500", "20000"],
+ "machine_max_acceleration_y": ["2500", "20000"],
+ "machine_max_jerk_e": ["30", "2.5"],
+ "machine_max_jerk_x": ["7", "9"],
+ "machine_max_jerk_y": ["7", "9"],
+ "machine_max_jerk_z": ["7", "0.4"],
+ "machine_max_speed_e": ["100", "25"],
+ "machine_max_speed_x": ["350", "200"],
+ "machine_max_speed_y": ["300", "200"],
+ "machine_max_speed_z": ["5", "12"],
+ "machine_start_gcode": "START_PRINT MATERIAL=[filament_type] BED=[bed_temperature_initial_layer]\n",
+ "name": "ginger_one_common",
+ "print_host": "192.168.0.167",
+ "printer_settings_id": "ginger_one_common",
+ "retract_restart_extra": ["0.5"],
+ "retraction_length": ["3"],
+ "retraction_minimum_travel": ["10"],
+ "retraction_speed": ["60"],
+ "version": "1.9.0.2",
+ "wipe_distance": ["10"],
+ "z_hop": ["0.1"],
+ "z_hop_types": ["Auto Lift"]
+}
diff --git a/resources/profiles/Ginger Additive/process/0.60mm Standard.json b/resources/profiles/Ginger Additive/process/0.60mm Standard.json
new file mode 100644
index 0000000000..7fa0561e53
--- /dev/null
+++ b/resources/profiles/Ginger Additive/process/0.60mm Standard.json
@@ -0,0 +1,80 @@
+{
+ "type": "process",
+ "accel_to_decel_enable": "0",
+ "bottom_shell_layers": "0",
+ "bottom_solid_infill_flow_ratio": "0.98",
+ "bridge_flow": "0.95",
+ "brim_object_gap": "0.05",
+ "brim_type": "no_brim",
+ "brim_width": "10",
+ "default_acceleration": "2500",
+ "default_jerk": "5",
+ "elefant_foot_compensation": "0.15",
+ "exclude_object": "1",
+ "extra_perimeters_on_overhangs": "1",
+ "from": "User",
+ "gap_fill_target": "nowhere",
+ "gap_infill_speed": "100",
+ "infill_anchor_max": "30",
+ "infill_jerk": "5",
+ "infill_wall_overlap": "30%",
+ "inherits": "fdm_process_common",
+ "initial_layer_acceleration": "1000",
+ "initial_layer_infill_speed": "70",
+ "initial_layer_jerk": "5",
+ "initial_layer_line_width": "1.26",
+ "initial_layer_print_height": "0.6",
+ "initial_layer_speed": "50",
+ "inner_wall_acceleration": "2500",
+ "inner_wall_jerk": "5",
+ "inner_wall_line_width": "1.26",
+ "inner_wall_speed": "100",
+ "internal_bridge_speed": "70%",
+ "internal_solid_infill_line_width": "1.26",
+ "internal_solid_infill_speed": "200",
+ "is_custom_defined": "0",
+ "layer_height": "0.6",
+ "line_width": "1.26",
+ "max_volumetric_extrusion_rate_slope": "100",
+ "name": "0.60mm Standard",
+ "outer_wall_acceleration": "2500",
+ "outer_wall_jerk": "5",
+ "outer_wall_line_width": "1.26",
+ "outer_wall_speed": "100",
+ "overhang_1_4_speed": "80%",
+ "overhang_2_4_speed": "50",
+ "overhang_3_4_speed": "30",
+ "overhang_4_4_speed": "10",
+ "overhang_reverse": "1",
+ "overhang_reverse_internal_only": "1",
+ "overhang_reverse_threshold": "0%",
+ "print_settings_id": "0.60mm Standard",
+ "reduce_infill_retraction": "1",
+ "role_based_wipe_speed": "0",
+ "skirt_distance": "10",
+ "skirt_loops": "3",
+ "sparse_infill_density": "0%",
+ "sparse_infill_line_width": "1.26",
+ "sparse_infill_pattern": "grid",
+ "sparse_infill_speed": "200",
+ "spiral_mode_max_xy_smoothing": "1e+07",
+ "spiral_mode_smooth": "1",
+ "support_line_width": "1.26",
+ "support_speed": "100",
+ "thick_internal_bridges": "0",
+ "top_shell_layers": "0",
+ "top_solid_infill_flow_ratio": "0.92",
+ "top_surface_acceleration": "2500",
+ "top_surface_jerk": "5",
+ "top_surface_line_width": "1.26",
+ "travel_acceleration": "2500",
+ "travel_jerk": "7",
+ "travel_speed": "250",
+ "version": "0.0.0.0",
+ "wipe_on_loops": "1",
+ "wipe_speed": "30",
+ "xy_contour_compensation": "-0.05",
+ "xy_hole_compensation": "0.1",
+ "instantiation": "true",
+ "compatible_printers": ["ginger G1 1.2 nozzle"]
+}
diff --git a/resources/profiles/Ginger Additive/process/1.50mm Standard.json b/resources/profiles/Ginger Additive/process/1.50mm Standard.json
new file mode 100644
index 0000000000..1d5cc86e05
--- /dev/null
+++ b/resources/profiles/Ginger Additive/process/1.50mm Standard.json
@@ -0,0 +1,71 @@
+{
+ "type": "process",
+ "accel_to_decel_enable": "0",
+ "bottom_solid_infill_flow_ratio": "0.8",
+ "brim_type": "outer_only",
+ "brim_width": "20",
+ "default_acceleration": "2500",
+ "default_jerk": "5",
+ "elefant_foot_compensation": "0.2",
+ "enable_overhang_speed": "0",
+ "ensure_vertical_shell_thickness": "none",
+ "exclude_object": "1",
+ "extra_perimeters_on_overhangs": "1",
+ "from": "User",
+ "gap_fill_target": "nowhere",
+ "gap_infill_speed": "120",
+ "infill_anchor_max": "30",
+ "infill_jerk": "5",
+ "infill_wall_overlap": "30%",
+ "inherits": "fdm_process_common",
+ "initial_layer_acceleration": "2500",
+ "initial_layer_jerk": "5",
+ "initial_layer_print_height": "1",
+ "initial_layer_speed": "40",
+ "inner_wall_acceleration": "2500",
+ "inner_wall_jerk": "5",
+ "inner_wall_speed": "120",
+ "internal_solid_infill_line_width": "3.2",
+ "internal_solid_infill_speed": "120",
+ "is_custom_defined": "0",
+ "name": "1.50mm Standard",
+ "outer_wall_acceleration": "2500",
+ "outer_wall_jerk": "5",
+ "outer_wall_speed": "120",
+ "overhang_1_4_speed": "20",
+ "overhang_2_4_speed": "30",
+ "overhang_3_4_speed": "40",
+ "overhang_4_4_speed": "40",
+ "overhang_reverse": "1",
+ "overhang_reverse_internal_only": "1",
+ "overhang_reverse_threshold": "0%",
+ "print_settings_id": "1.50mm Standard",
+ "role_based_wipe_speed": "0",
+ "seam_position": "aligned",
+ "skirt_distance": "10",
+ "sparse_infill_density": "10%",
+ "sparse_infill_line_width": "3.2",
+ "sparse_infill_pattern": "grid",
+ "sparse_infill_speed": "120",
+ "spiral_mode_max_xy_smoothing": "1e+07",
+ "spiral_mode_smooth": "1",
+ "support_speed": "120",
+ "thick_internal_bridges": "0",
+ "top_shell_layers": "0",
+ "top_solid_infill_flow_ratio": "0.9",
+ "top_surface_acceleration": "2500",
+ "top_surface_jerk": "5",
+ "top_surface_speed": "120",
+ "travel_acceleration": "2500",
+ "travel_jerk": "7",
+ "travel_speed": "250",
+ "version": "0.0.0.0",
+ "wall_generator": "classic",
+ "wall_loops": "1",
+ "wipe_on_loops": "1",
+ "wipe_speed": "40",
+ "xy_contour_compensation": "-0.15",
+ "xy_hole_compensation": "0.2",
+ "instantiation": "true",
+ "compatible_printers": ["ginger G1 3.0 nozzle"]
+}
diff --git a/resources/profiles/Ginger Additive/process/1.80mm Vasemode.json b/resources/profiles/Ginger Additive/process/1.80mm Vasemode.json
new file mode 100644
index 0000000000..06f80fb613
--- /dev/null
+++ b/resources/profiles/Ginger Additive/process/1.80mm Vasemode.json
@@ -0,0 +1,77 @@
+{
+ "type": "process",
+ "accel_to_decel_enable": "0",
+ "bottom_solid_infill_flow_ratio": "0.8",
+ "brim_type": "no_brim",
+ "brim_width": "20",
+ "default_acceleration": "2500",
+ "default_jerk": "5",
+ "elefant_foot_compensation": "0.2",
+ "enable_overhang_speed": "0",
+ "ensure_vertical_shell_thickness": "none",
+ "exclude_object": "1",
+ "extra_perimeters_on_overhangs": "1",
+ "from": "User",
+ "gap_fill_target": "nowhere",
+ "gap_infill_speed": "120",
+ "infill_anchor_max": "30",
+ "infill_jerk": "5",
+ "infill_wall_overlap": "30%",
+ "inherits": "fdm_process_common",
+ "initial_layer_acceleration": "2500",
+ "initial_layer_jerk": "5",
+ "initial_layer_line_width": "4.2",
+ "initial_layer_print_height": "1",
+ "initial_layer_speed": "40",
+ "inner_wall_acceleration": "2500",
+ "inner_wall_jerk": "5",
+ "inner_wall_line_width": "4.2",
+ "inner_wall_speed": "120",
+ "internal_solid_infill_line_width": "4.2",
+ "internal_solid_infill_speed": "120",
+ "is_custom_defined": "0",
+ "layer_height": "1.8",
+ "line_width": "4.2",
+ "name": "1.80mm Vasemode",
+ "outer_wall_acceleration": "2500",
+ "outer_wall_jerk": "5",
+ "outer_wall_line_width": "4.2",
+ "outer_wall_speed": "120",
+ "overhang_1_4_speed": "20",
+ "overhang_2_4_speed": "30",
+ "overhang_3_4_speed": "40",
+ "overhang_4_4_speed": "40",
+ "overhang_reverse_internal_only": "1",
+ "overhang_reverse_threshold": "0%",
+ "print_settings_id": "1.80mm Vasemode",
+ "role_based_wipe_speed": "0",
+ "seam_position": "aligned",
+ "skirt_distance": "10",
+ "sparse_infill_density": "0%",
+ "sparse_infill_line_width": "4.2",
+ "sparse_infill_pattern": "grid",
+ "sparse_infill_speed": "120",
+ "spiral_mode": "1",
+ "spiral_mode_max_xy_smoothing": "1e+07",
+ "spiral_mode_smooth": "1",
+ "support_line_width": "4.2",
+ "support_speed": "120",
+ "thick_internal_bridges": "0",
+ "top_shell_layers": "0",
+ "top_solid_infill_flow_ratio": "0.9",
+ "top_surface_acceleration": "2500",
+ "top_surface_jerk": "5",
+ "top_surface_line_width": "4.2",
+ "top_surface_speed": "120",
+ "travel_acceleration": "2500",
+ "travel_jerk": "7",
+ "travel_speed": "250",
+ "version": "0.0.0.0",
+ "wall_loops": "1",
+ "wipe_on_loops": "1",
+ "wipe_speed": "40",
+ "xy_contour_compensation": "-0.15",
+ "xy_hole_compensation": "0.2",
+ "instantiation": "true",
+ "compatible_printers": ["ginger G1 3.0 nozzle"]
+}
diff --git a/resources/profiles/Ginger Additive/process/2.50mm Standard.json b/resources/profiles/Ginger Additive/process/2.50mm Standard.json
new file mode 100644
index 0000000000..136cf7dbc5
--- /dev/null
+++ b/resources/profiles/Ginger Additive/process/2.50mm Standard.json
@@ -0,0 +1,78 @@
+{
+ "type": "process",
+ "accel_to_decel_enable": "0",
+ "bottom_solid_infill_flow_ratio": "0.8",
+ "brim_type": "outer_only",
+ "brim_width": "20",
+ "default_acceleration": "2500",
+ "default_jerk": "5",
+ "elefant_foot_compensation": "0.2",
+ "enable_overhang_speed": "0",
+ "ensure_vertical_shell_thickness": "none",
+ "exclude_object": "1",
+ "extra_perimeters_on_overhangs": "1",
+ "from": "User",
+ "gap_fill_target": "nowhere",
+ "gap_infill_speed": "120",
+ "infill_anchor_max": "30",
+ "infill_jerk": "5",
+ "infill_wall_overlap": "30%",
+ "inherits": "fdm_process_common",
+ "initial_layer_acceleration": "2500",
+ "initial_layer_jerk": "5",
+ "initial_layer_line_width": "5.5",
+ "initial_layer_print_height": "1",
+ "initial_layer_speed": "40",
+ "inner_wall_acceleration": "2500",
+ "inner_wall_jerk": "5",
+ "inner_wall_line_width": "5.5",
+ "inner_wall_speed": "120",
+ "internal_solid_infill_line_width": "5.5",
+ "internal_solid_infill_speed": "120",
+ "is_custom_defined": "0",
+ "layer_height": "2.5",
+ "line_width": "5.5",
+ "name": "2.50mm Standard",
+ "outer_wall_acceleration": "2500",
+ "outer_wall_jerk": "5",
+ "outer_wall_line_width": "5.5",
+ "outer_wall_speed": "120",
+ "overhang_1_4_speed": "20",
+ "overhang_2_4_speed": "30",
+ "overhang_3_4_speed": "40",
+ "overhang_4_4_speed": "40",
+ "overhang_reverse": "1",
+ "overhang_reverse_internal_only": "1",
+ "overhang_reverse_threshold": "0%",
+ "print_settings_id": "2.50mm Standard",
+ "role_based_wipe_speed": "0",
+ "seam_position": "aligned",
+ "skirt_distance": "10",
+ "sparse_infill_density": "10%",
+ "sparse_infill_line_width": "5.5",
+ "sparse_infill_pattern": "grid",
+ "sparse_infill_speed": "120",
+ "spiral_mode_max_xy_smoothing": "1e+07",
+ "spiral_mode_smooth": "1",
+ "support_line_width": "5.5",
+ "support_speed": "120",
+ "thick_internal_bridges": "0",
+ "top_shell_layers": "0",
+ "top_solid_infill_flow_ratio": "0.9",
+ "top_surface_acceleration": "2500",
+ "top_surface_jerk": "5",
+ "top_surface_line_width": "5.5",
+ "top_surface_speed": "120",
+ "travel_acceleration": "2500",
+ "travel_jerk": "7",
+ "travel_speed": "250",
+ "version": "0.0.0.0",
+ "wall_generator": "classic",
+ "wall_loops": "1",
+ "wipe_on_loops": "1",
+ "wipe_speed": "40",
+ "xy_contour_compensation": "-0.15",
+ "xy_hole_compensation": "0.2",
+ "instantiation": "true",
+ "compatible_printers": ["ginger G1 5.0 nozzle"]
+}
diff --git a/resources/profiles/Ginger Additive/process/4.00mm Standard.json b/resources/profiles/Ginger Additive/process/4.00mm Standard.json
new file mode 100644
index 0000000000..0b4c95e648
--- /dev/null
+++ b/resources/profiles/Ginger Additive/process/4.00mm Standard.json
@@ -0,0 +1,76 @@
+{
+ "type": "process",
+ "accel_to_decel_enable": "0",
+ "brim_type": "outer_only",
+ "brim_width": "40",
+ "default_acceleration": "2500",
+ "default_jerk": "5",
+ "elefant_foot_compensation": "0.2",
+ "enable_overhang_speed": "0",
+ "ensure_vertical_shell_thickness": "none",
+ "exclude_object": "1",
+ "extra_perimeters_on_overhangs": "1",
+ "from": "User",
+ "gap_fill_target": "nowhere",
+ "gap_infill_speed": "120",
+ "infill_anchor_max": "30",
+ "infill_jerk": "5",
+ "infill_wall_overlap": "30%",
+ "inherits": "fdm_process_common",
+ "initial_layer_acceleration": "2500",
+ "initial_layer_jerk": "5",
+ "initial_layer_line_width": "9.5",
+ "initial_layer_print_height": "1",
+ "initial_layer_speed": "40",
+ "inner_wall_acceleration": "2500",
+ "inner_wall_jerk": "5",
+ "inner_wall_line_width": "9.5",
+ "inner_wall_speed": "120",
+ "internal_solid_infill_line_width": "9.5",
+ "internal_solid_infill_speed": "120",
+ "is_custom_defined": "0",
+ "layer_height": "4",
+ "line_width": "9.5",
+ "name": "4.00mm Standard",
+ "outer_wall_acceleration": "2500",
+ "outer_wall_jerk": "5",
+ "outer_wall_line_width": "9.5",
+ "outer_wall_speed": "120",
+ "overhang_1_4_speed": "20",
+ "overhang_2_4_speed": "30",
+ "overhang_3_4_speed": "40",
+ "overhang_4_4_speed": "40",
+ "overhang_reverse": "1",
+ "overhang_reverse_internal_only": "1",
+ "overhang_reverse_threshold": "0%",
+ "print_settings_id": "4.00mm Standard",
+ "role_based_wipe_speed": "0",
+ "seam_position": "aligned",
+ "skirt_distance": "10",
+ "sparse_infill_density": "10%",
+ "sparse_infill_line_width": "9.5",
+ "sparse_infill_pattern": "grid",
+ "sparse_infill_speed": "120",
+ "spiral_mode_max_xy_smoothing": "1e+07",
+ "spiral_mode_smooth": "1",
+ "support_line_width": "9.5",
+ "support_speed": "120",
+ "thick_internal_bridges": "0",
+ "top_shell_layers": "0",
+ "top_surface_acceleration": "2500",
+ "top_surface_jerk": "5",
+ "top_surface_line_width": "9.5",
+ "top_surface_speed": "120",
+ "travel_acceleration": "2500",
+ "travel_jerk": "7",
+ "travel_speed": "250",
+ "version": "0.0.0.0",
+ "wall_generator": "classic",
+ "wall_loops": "1",
+ "wipe_on_loops": "1",
+ "wipe_speed": "40",
+ "xy_contour_compensation": "-0.15",
+ "xy_hole_compensation": "0.2",
+ "instantiation": "true",
+ "compatible_printers": ["ginger G1 8.0 nozzle"]
+}
diff --git a/resources/profiles/Ginger Additive/process/fdm_process_common.json b/resources/profiles/Ginger Additive/process/fdm_process_common.json
new file mode 100644
index 0000000000..11b16c1391
--- /dev/null
+++ b/resources/profiles/Ginger Additive/process/fdm_process_common.json
@@ -0,0 +1,282 @@
+{
+ "type": "process",
+ "accel_to_decel_enable": "1",
+ "accel_to_decel_factor": "50%",
+ "alternate_extra_wall": "0",
+ "bottom_shell_layers": "3",
+ "bottom_shell_thickness": "0",
+ "bottom_solid_infill_flow_ratio": "1",
+ "bottom_surface_pattern": "monotonic",
+ "bridge_acceleration": "50%",
+ "bridge_angle": "0",
+ "bridge_density": "100%",
+ "bridge_flow": "1",
+ "bridge_no_support": "0",
+ "bridge_speed": "25",
+ "brim_ears_detection_length": "1",
+ "brim_ears_max_angle": "125",
+ "brim_object_gap": "0",
+ "brim_type": "auto_brim",
+ "brim_width": "0",
+ "compatible_printers": [],
+ "compatible_printers_condition": "",
+ "counterbore_hole_bridging": "none",
+ "default_acceleration": "500",
+ "default_jerk": "0",
+ "detect_narrow_internal_solid_infill": "1",
+ "detect_overhang_wall": "1",
+ "detect_thin_wall": "0",
+ "dont_filter_internal_bridges": "disabled",
+ "draft_shield": "disabled",
+ "elefant_foot_compensation": "0",
+ "elefant_foot_compensation_layers": "1",
+ "enable_arc_fitting": "0",
+ "enable_overhang_speed": "1",
+ "enable_prime_tower": "0",
+ "enable_support": "0",
+ "enforce_support_layers": "0",
+ "ensure_vertical_shell_thickness": "ensure_all",
+ "exclude_object": "0",
+ "extra_perimeters_on_overhangs": "0",
+ "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode",
+ "filter_out_gap_fill": "0",
+ "flush_into_infill": "0",
+ "flush_into_objects": "0",
+ "flush_into_support": "1",
+ "from": "User",
+ "fuzzy_skin": "none",
+ "fuzzy_skin_first_layer": "0",
+ "fuzzy_skin_point_distance": "0.8",
+ "fuzzy_skin_thickness": "0.3",
+ "gap_fill_target": "everywhere",
+ "gap_infill_speed": "30",
+ "gcode_add_line_number": "0",
+ "gcode_comments": "0",
+ "gcode_label_objects": "1",
+ "hole_to_polyhole": "0",
+ "hole_to_polyhole_threshold": "0.01",
+ "hole_to_polyhole_twisted": "1",
+ "independent_support_layer_height": "1",
+ "infill_anchor": "400%",
+ "infill_anchor_max": "20",
+ "infill_combination": "0",
+ "infill_direction": "45",
+ "infill_jerk": "9",
+ "infill_wall_overlap": "15%",
+ "initial_layer_acceleration": "300",
+ "initial_layer_infill_speed": "60",
+ "initial_layer_jerk": "9",
+ "initial_layer_line_width": "3.2",
+ "initial_layer_min_bead_width": "85%",
+ "initial_layer_print_height": "1.5",
+ "initial_layer_speed": "30",
+ "initial_layer_travel_speed": "100%",
+ "inner_wall_acceleration": "10000",
+ "inner_wall_jerk": "9",
+ "inner_wall_line_width": "3.2",
+ "inner_wall_speed": "60",
+ "interface_shells": "0",
+ "internal_bridge_flow": "1",
+ "internal_bridge_speed": "150%",
+ "internal_solid_infill_acceleration": "100%",
+ "internal_solid_infill_line_width": "3",
+ "internal_solid_infill_pattern": "monotonic",
+ "internal_solid_infill_speed": "100",
+ "ironing_angle": "-1",
+ "ironing_flow": "10%",
+ "ironing_pattern": "zig-zag",
+ "ironing_spacing": "0.1",
+ "ironing_speed": "20",
+ "ironing_type": "no ironing",
+ "is_custom_defined": "0",
+ "is_infill_first": "0",
+ "layer_height": "1.5",
+ "line_width": "3.2",
+ "make_overhang_printable": "0",
+ "make_overhang_printable_angle": "55",
+ "make_overhang_printable_hole_size": "0",
+ "max_bridge_length": "10",
+ "max_travel_detour_distance": "0",
+ "max_volumetric_extrusion_rate_slope": "0",
+ "max_volumetric_extrusion_rate_slope_segment_length": "3",
+ "min_bead_width": "85%",
+ "min_feature_size": "25%",
+ "min_length_factor": "0.5",
+ "min_width_top_surface": "300%",
+ "minimum_sparse_infill_area": "15",
+ "mmu_segmented_region_interlocking_depth": "0",
+ "mmu_segmented_region_max_width": "0",
+ "name": "fdm_process_common",
+ "notes": "",
+ "only_one_wall_first_layer": "0",
+ "only_one_wall_top": "0",
+ "ooze_prevention": "0",
+ "outer_wall_acceleration": "500",
+ "outer_wall_jerk": "9",
+ "outer_wall_line_width": "3.2",
+ "outer_wall_speed": "60",
+ "overhang_1_4_speed": "0",
+ "overhang_2_4_speed": "0",
+ "overhang_3_4_speed": "0",
+ "overhang_4_4_speed": "0",
+ "overhang_reverse": "0",
+ "overhang_reverse_internal_only": "0",
+ "overhang_reverse_threshold": "50%",
+ "overhang_speed_classic": "0",
+ "post_process": [],
+ "precise_outer_wall": "0",
+ "prime_tower_brim_width": "3",
+ "prime_tower_width": "60",
+ "prime_volume": "45",
+ "print_flow_ratio": "1",
+ "print_order": "default",
+ "print_sequence": "by layer",
+ "print_settings_id": "fdm_process_common",
+ "raft_contact_distance": "0.1",
+ "raft_expansion": "1.5",
+ "raft_first_layer_density": "90%",
+ "raft_first_layer_expansion": "2",
+ "raft_layers": "0",
+ "reduce_crossing_wall": "0",
+ "reduce_infill_retraction": "0",
+ "resolution": "0.01",
+ "role_based_wipe_speed": "1",
+ "scarf_angle_threshold": "155",
+ "scarf_joint_flow_ratio": "1",
+ "scarf_joint_speed": "100%",
+ "scarf_overhang_threshold": "40%",
+ "seam_gap": "10%",
+ "seam_position": "nearest",
+ "seam_slope_conditional": "0",
+ "seam_slope_entire_loop": "0",
+ "seam_slope_inner_walls": "0",
+ "seam_slope_min_length": "20",
+ "seam_slope_start_height": "0",
+ "seam_slope_steps": "10",
+ "seam_slope_type": "external",
+ "single_extruder_multi_material_priming": "1",
+ "skirt_distance": "2",
+ "skirt_height": "1",
+ "skirt_loops": "1",
+ "skirt_speed": "50",
+ "slice_closing_radius": "0.049",
+ "slicing_mode": "regular",
+ "slow_down_layers": "0",
+ "slowdown_for_curled_perimeters": "0",
+ "small_area_infill_flow_compensation": "0",
+ "small_area_infill_flow_compensation_model": [
+ "0,0",
+ "\n0.2,0.4444",
+ "\n0.4,0.6145",
+ "\n0.6,0.7059",
+ "\n0.8,0.7619",
+ "\n1.5,0.8571",
+ "\n2,0.8889",
+ "\n3,0.9231",
+ "\n5,0.9520",
+ "\n10,1"
+ ],
+ "small_perimeter_speed": "50%",
+ "small_perimeter_threshold": "0",
+ "solid_infill_filament": "1",
+ "sparse_infill_acceleration": "100%",
+ "sparse_infill_density": "20%",
+ "sparse_infill_filament": "1",
+ "sparse_infill_line_width": "3",
+ "sparse_infill_pattern": "cubic",
+ "sparse_infill_speed": "100",
+ "spiral_mode": "0",
+ "spiral_mode_max_xy_smoothing": "200%",
+ "spiral_mode_smooth": "0",
+ "staggered_inner_seams": "0",
+ "standby_temperature_delta": "-5",
+ "support_angle": "0",
+ "support_base_pattern": "default",
+ "support_base_pattern_spacing": "2.5",
+ "support_bottom_interface_spacing": "0.5",
+ "support_bottom_z_distance": "0.2",
+ "support_critical_regions_only": "0",
+ "support_expansion": "0",
+ "support_filament": "0",
+ "support_interface_bottom_layers": "0",
+ "support_interface_filament": "0",
+ "support_interface_loop_pattern": "0",
+ "support_interface_not_for_body": "1",
+ "support_interface_pattern": "auto",
+ "support_interface_spacing": "0.5",
+ "support_interface_speed": "80",
+ "support_interface_top_layers": "3",
+ "support_line_width": "3.2",
+ "support_object_xy_distance": "0.35",
+ "support_on_build_plate_only": "0",
+ "support_remove_small_overhang": "1",
+ "support_speed": "80",
+ "support_style": "default",
+ "support_threshold_angle": "30",
+ "support_top_z_distance": "0.2",
+ "support_type": "normal(auto)",
+ "thick_bridges": "0",
+ "thick_internal_bridges": "1",
+ "timelapse_type": "0",
+ "top_shell_layers": "4",
+ "top_shell_thickness": "0.6",
+ "top_solid_infill_flow_ratio": "1",
+ "top_surface_acceleration": "500",
+ "top_surface_jerk": "9",
+ "top_surface_line_width": "3.2",
+ "top_surface_pattern": "monotonic",
+ "top_surface_speed": "100",
+ "travel_acceleration": "10000",
+ "travel_jerk": "12",
+ "travel_speed": "120",
+ "travel_speed_z": "0",
+ "tree_support_adaptive_layer_height": "1",
+ "tree_support_angle_slow": "25",
+ "tree_support_auto_brim": "1",
+ "tree_support_branch_angle": "40",
+ "tree_support_branch_angle_organic": "40",
+ "tree_support_branch_diameter": "5",
+ "tree_support_branch_diameter_angle": "5",
+ "tree_support_branch_diameter_double_wall": "3",
+ "tree_support_branch_diameter_organic": "2",
+ "tree_support_branch_distance": "5",
+ "tree_support_branch_distance_organic": "1",
+ "tree_support_brim_width": "3",
+ "tree_support_tip_diameter": "0.8",
+ "tree_support_top_rate": "30%",
+ "tree_support_wall_count": "0",
+ "version": "0.0.0.0",
+ "wall_direction": "auto",
+ "wall_distribution_count": "1",
+ "wall_filament": "1",
+ "wall_generator": "arachne",
+ "wall_loops": "2",
+ "wall_sequence": "inner wall/outer wall",
+ "wall_transition_angle": "10",
+ "wall_transition_filter_deviation": "25%",
+ "wall_transition_length": "100%",
+ "wipe_before_external_loop": "0",
+ "wipe_on_loops": "0",
+ "wipe_speed": "80%",
+ "wipe_tower_bridging": "10",
+ "wipe_tower_cone_angle": "0",
+ "wipe_tower_extra_spacing": "100%",
+ "wipe_tower_extruder": "0",
+ "wipe_tower_no_sparse_layers": "0",
+ "wipe_tower_rotation_angle": "0",
+ "wiping_volumes_extruders": [
+ "70",
+ "70",
+ "70",
+ "70",
+ "70",
+ "70",
+ "70",
+ "70",
+ "70",
+ "70"
+ ],
+ "xy_contour_compensation": "0",
+ "xy_hole_compensation": "0",
+ "instantiation": "false"
+}
diff --git a/resources/profiles/InfiMech.json b/resources/profiles/InfiMech.json
index 08a831bedf..d31ae9c48a 100644
--- a/resources/profiles/InfiMech.json
+++ b/resources/profiles/InfiMech.json
@@ -1,6 +1,6 @@
{
"name": "InfiMech",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "1",
"description": "InfiMech configurations",
"machine_model_list": [
diff --git a/resources/profiles/InfiMech/machine/fdm_klipper_common.json b/resources/profiles/InfiMech/machine/fdm_klipper_common.json
index 8af490311d..abbdab157f 100644
--- a/resources/profiles/InfiMech/machine/fdm_klipper_common.json
+++ b/resources/profiles/InfiMech/machine/fdm_klipper_common.json
@@ -112,7 +112,7 @@
"0"
],
"machine_pause_gcode": "PAUSE",
- "machine_start_gcode": ";v2.9-20240311;\n;wiping nozzle start\nM106 P3 S0\nclean_nozzle_position\n;wiping nozzle end\n;*************preheat nozzle and hotbed for Z_TILT_ADJUST*************\nM140 S[bed_temperature_initial_layer_single]\nM104 S130\nG1 X110 Y110 F6000 \nG4 P200\nprobe\nSET_KINEMATIC_POSITION Z=0 ;Z homing\nZ_TILT_ADJUST \n;*************Z_TILT_ADJUST end*************\nM140 S[bed_temperature_initial_layer_single] ;heat hotbed temp set by user\nG1 X5 Y5 F6000 \nG28 \nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[0] + 60,print_bed_max[0])} F6000 \nG1 Z0.2 F600\nM104 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user\nM106 S100 ;close head_nozzle fan\nG4 P3000\nM106 S255 ;close head_nozzle fan\nG4 P3000\nM106 S100 ;close head_nozzle fan\n;*************PRINT START*************\nM109 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user and wait \nM190 S[bed_temperature_initial_layer_single];heat bed temp set by user and wait \nM106 S0 ;close head_nozzle fan\nBED_MESH_CLEAR \nBED_MESH_PROFILE LOAD=default # bedmesh load\nG92 E0 ;Reset Extruder\nG1 Z4.0 F200 ;Move Z Axis up\nG90 ;absolute position\n ; ; ; ; ; ; ; ; ; draw line along model\nG92 E0 ;reset extruder\nG1 E4 F300 ;extrude filament\nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[1] + 60,print_bed_max[0])} F6000 \nG1 Z0.22 F600\nG1 X{first_layer_print_min[0]-1.5} Y{max(0, first_layer_print_min[1]-1.5)} F2000 E10\nG1 Z0.22 F600\nG1 X{min(first_layer_print_min[0] + 60,print_bed_max[0])} F1200 E12\n ; ; ; ; ; ; ; ; ;draw line along model end \nG4 P200\nG1 Z2\nG92 E0 ;Reset Extruder\nCLEAR_PAUSE\n;***********model start************\n",
+ "machine_start_gcode": ";v2.9.1-20240620;\n;wiping nozzle start\nM106 P3 S0\nclean_nozzle_position\n;wiping nozzle end\n;*************preheat nozzle and hotbed for Z_TILT_ADJUST*************\nM140 S[bed_temperature_initial_layer_single]\nM104 S130\nG1 X110 Y110 F6000 \nG4 P200\nprobe\nSET_KINEMATIC_POSITION Z=0 ;Z homing\nZ_TILT_ADJUST \n;*************Z_TILT_ADJUST end*************\nM140 S[bed_temperature_initial_layer_single] ;heat hotbed temp set by user\nG1 X5 Y5 F6000 \nG28 \nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[0] + 60,print_bed_max[0])} F6000 \nG1 Z0.2 F600\nM104 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user\nM106 S100 ;close head_nozzle fan\nG4 P3000\nM106 S255 ;close head_nozzle fan\nG4 P3000\nM106 S100 ;close head_nozzle fan\n;*************PRINT START*************\nM109 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user and wait \nM190 S[bed_temperature_initial_layer_single];heat bed temp set by user and wait \nM106 S0 ;close head_nozzle fan\nBED_MESH_CLEAR \nBED_MESH_PROFILE LOAD=default # bedmesh load\nG92 E0 ;Reset Extruder\nG1 Z4.0 F200 ;Move Z Axis up\nG90 ;absolute position\n ; ; ; ; ; ; ; ; ; draw line along model\nG92 E0 ;reset extruder\nG1 E4 F300 ;extrude filament\nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[1] + 60,print_bed_max[0])} F6000 \nG1 Z0.22 F600\nG1 X{first_layer_print_min[0]-1.5} Y{max(0, first_layer_print_min[1]-1.5)} F2000 E10\nG1 Z0.22 F600\nG1 X{min(first_layer_print_min[0] + 60,print_bed_max[0])} F1200 E12\n ; ; ; ; ; ; ; ; ;draw line along model end \nG4 P200\nG1 Z2\nG92 E0 ;Reset Extruder\nCLEAR_PAUSE\n;***********model start************\n",
"machine_unload_filament_time": "0",
"max_layer_height": [
"0.28"
diff --git a/resources/profiles/InfiMech/machine/fdm_machine_common.json b/resources/profiles/InfiMech/machine/fdm_machine_common.json
index e4841e4747..9a8caa0aa9 100644
--- a/resources/profiles/InfiMech/machine/fdm_machine_common.json
+++ b/resources/profiles/InfiMech/machine/fdm_machine_common.json
@@ -112,7 +112,7 @@
"0"
],
"machine_pause_gcode": "PAUSE",
- "machine_start_gcode": ";v2.9-20240311;\n;wiping nozzle start\nM106 P3 S0\nclean_nozzle_position\n;wiping nozzle end\n;*************preheat nozzle and hotbed for Z_TILT_ADJUST*************\nM140 S[bed_temperature_initial_layer_single]\nM104 S130\nG1 X110 Y110 F6000 \nG4 P200\nprobe\nSET_KINEMATIC_POSITION Z=0 ;Z homing\nZ_TILT_ADJUST \n;*************Z_TILT_ADJUST end*************\nM140 S[bed_temperature_initial_layer_single] ;heat hotbed temp set by user\nG1 X5 Y5 F6000 \nG28 \nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[0] + 60,print_bed_max[0])} F6000 \nG1 Z0.2 F600\nM104 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user\nM106 S100 ;close head_nozzle fan\nG4 P3000\nM106 S255 ;close head_nozzle fan\nG4 P3000\nM106 S100 ;close head_nozzle fan\n;*************PRINT START*************\nM109 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user and wait \nM190 S[bed_temperature_initial_layer_single];heat bed temp set by user and wait \nM106 S0 ;close head_nozzle fan\nBED_MESH_CLEAR \nBED_MESH_PROFILE LOAD=default # bedmesh load\nG92 E0 ;Reset Extruder\nG1 Z4.0 F200 ;Move Z Axis up\nG90 ;absolute position\n ; ; ; ; ; ; ; ; ; draw line along model\nG92 E0 ;reset extruder\nG1 E4 F300 ;extrude filament\nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[0] + 60,print_bed_max[0])} F6000 \nG1 Z0.22 F600\nG1 X{first_layer_print_min[0]-1.5} Y{max(0, first_layer_print_min[1]-1.5)} F2000 E10\nG1 Z0.22 F600\nG1 X{min(first_layer_print_min[0] + 60,print_bed_max[0])} F1200 E12\n ; ; ; ; ; ; ; ; ;draw line along model end \nG4 P200\nG1 Z2\nG92 E0 ;Reset Extruder\nCLEAR_PAUSE\n;***********model start************\n",
+ "machine_start_gcode": ";v2.9.1-20240620;\n;wiping nozzle start\nM106 P3 S0\nclean_nozzle_position\n;wiping nozzle end\n;*************preheat nozzle and hotbed for Z_TILT_ADJUST*************\nM140 S[bed_temperature_initial_layer_single]\nM104 S130\nG1 X110 Y110 F6000 \nG4 P200\nprobe\nSET_KINEMATIC_POSITION Z=0 ;Z homing\nZ_TILT_ADJUST \n;*************Z_TILT_ADJUST end*************\nM140 S[bed_temperature_initial_layer_single] ;heat hotbed temp set by user\nG1 X5 Y5 F6000 \nG28 \nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[0] + 60,print_bed_max[0])} F6000 \nG1 Z0.2 F600\nM104 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user\nM106 S100 ;close head_nozzle fan\nG4 P3000\nM106 S255 ;close head_nozzle fan\nG4 P3000\nM106 S100 ;close head_nozzle fan\n;*************PRINT START*************\nM109 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user and wait \nM190 S[bed_temperature_initial_layer_single];heat bed temp set by user and wait \nM106 S0 ;close head_nozzle fan\nBED_MESH_CLEAR \nBED_MESH_PROFILE LOAD=default # bedmesh load\nG92 E0 ;Reset Extruder\nG1 Z4.0 F200 ;Move Z Axis up\nG90 ;absolute position\n ; ; ; ; ; ; ; ; ; draw line along model\nG92 E0 ;reset extruder\nG1 E4 F300 ;extrude filament\nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[1] + 60,print_bed_max[0])} F6000 \nG1 Z0.22 F600\nG1 X{first_layer_print_min[0]-1.5} Y{max(0, first_layer_print_min[1]-1.5)} F2000 E10\nG1 Z0.22 F600\nG1 X{min(first_layer_print_min[0] + 60,print_bed_max[0])} F1200 E12\n ; ; ; ; ; ; ; ; ;draw line along model end \nG4 P200\nG1 Z2\nG92 E0 ;Reset Extruder\nCLEAR_PAUSE\n;***********model start************\n",
"machine_unload_filament_time": "0",
"max_layer_height": [
"0.28"
diff --git a/resources/profiles/Kingroon.json b/resources/profiles/Kingroon.json
index 19304b1e50..099668cd66 100644
--- a/resources/profiles/Kingroon.json
+++ b/resources/profiles/Kingroon.json
@@ -1,7 +1,7 @@
{
"name": "Kingroon",
"url": "https://kingroon.com/",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Kingroon configuration files",
"machine_model_list": [
diff --git a/resources/profiles/Kingroon/Kingroon KP3S PRO S1_cover.png b/resources/profiles/Kingroon/Kingroon KP3S PRO S1_cover.png
index 2bd632cb2d..f024a2d544 100644
Binary files a/resources/profiles/Kingroon/Kingroon KP3S PRO S1_cover.png and b/resources/profiles/Kingroon/Kingroon KP3S PRO S1_cover.png differ
diff --git a/resources/profiles/Kingroon/Kingroon KP3S PRO V2_cover.png b/resources/profiles/Kingroon/Kingroon KP3S PRO V2_cover.png
index 0c121c50de..4365b57d11 100644
Binary files a/resources/profiles/Kingroon/Kingroon KP3S PRO V2_cover.png and b/resources/profiles/Kingroon/Kingroon KP3S PRO V2_cover.png differ
diff --git a/resources/profiles/Kingroon/kp3s_bed.stl b/resources/profiles/Kingroon/kp3s_bed.stl
index 8680a5359d..2ea0319bf4 100644
Binary files a/resources/profiles/Kingroon/kp3s_bed.stl and b/resources/profiles/Kingroon/kp3s_bed.stl differ
diff --git a/resources/profiles/MagicMaker.json b/resources/profiles/MagicMaker.json
index 1da3457e31..37ab810b49 100644
--- a/resources/profiles/MagicMaker.json
+++ b/resources/profiles/MagicMaker.json
@@ -1,6 +1,6 @@
{
"name": "MagicMaker",
- "version": "02.00.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "MagicMaker configurations",
"machine_model_list": [
diff --git a/resources/profiles/OrcaArena.json b/resources/profiles/OrcaArena.json
index 81fe110cbb..b07021f584 100644
--- a/resources/profiles/OrcaArena.json
+++ b/resources/profiles/OrcaArena.json
@@ -1,7 +1,7 @@
{
"name": "Orca Arena Printer",
"url": "",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Orca Arena configuration files",
"machine_model_list": [
diff --git a/resources/profiles/OrcaArena/Orca Arena X1 Carbon_cover.png b/resources/profiles/OrcaArena/Orca Arena X1 Carbon_cover.png
index 5fefdc8f18..9d856af011 100644
Binary files a/resources/profiles/OrcaArena/Orca Arena X1 Carbon_cover.png and b/resources/profiles/OrcaArena/Orca Arena X1 Carbon_cover.png differ
diff --git a/resources/profiles/Peopoly.json b/resources/profiles/Peopoly.json
index 6d620b6c22..e107de7ed9 100644
--- a/resources/profiles/Peopoly.json
+++ b/resources/profiles/Peopoly.json
@@ -1,6 +1,6 @@
{
"name": "Peopoly",
- "version": "02.01.00.01",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Peopoly configurations",
"machine_model_list": [
diff --git a/resources/profiles/Positron3D.json b/resources/profiles/Positron3D.json
index 76d4451394..b144c63ab6 100644
--- a/resources/profiles/Positron3D.json
+++ b/resources/profiles/Positron3D.json
@@ -1,6 +1,6 @@
{
"name": "Positron 3D",
- "version": "02.01.00.01",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Positron 3D Printer Profile",
"machine_model_list": [
diff --git a/resources/profiles/Prusa.json b/resources/profiles/Prusa.json
index 3b6ee65c0f..1845bd173b 100644
--- a/resources/profiles/Prusa.json
+++ b/resources/profiles/Prusa.json
@@ -1,6 +1,6 @@
{
"name": "Prusa",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Prusa configurations",
"machine_model_list": [
diff --git a/resources/profiles/Prusa/MK3S_cover.png b/resources/profiles/Prusa/MK3S_cover.png
index 993d139261..4eb817fa8c 100644
Binary files a/resources/profiles/Prusa/MK3S_cover.png and b/resources/profiles/Prusa/MK3S_cover.png differ
diff --git a/resources/profiles/Qidi.json b/resources/profiles/Qidi.json
index 8b820d30ad..a08baf75ce 100644
--- a/resources/profiles/Qidi.json
+++ b/resources/profiles/Qidi.json
@@ -1,6 +1,6 @@
{
"name": "Qidi",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Qidi configurations",
"machine_model_list": [
@@ -1040,6 +1040,10 @@
"name": "Qidi Generic PLA Silk",
"sub_path": "filament/Qidi Generic PLA Silk.json"
},
+ {
+ "name": "Qidi Generic PLA Silk @Qidi Q1 Pro 0.4 nozzle",
+ "sub_path": "filament/Qidi Generic PLA Silk @Qidi Q1 Pro 0.4 nozzle.json"
+ },
{
"name": "Qidi Generic PVA",
"sub_path": "filament/Qidi Generic PVA.json"
diff --git a/resources/profiles/Qidi/filament/QIDI ABS Odorless @0.2 nozzle.json b/resources/profiles/Qidi/filament/QIDI ABS Odorless @0.2 nozzle.json
index 8f0cd8942d..4692ab21e1 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS Odorless @0.2 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS Odorless @0.2 nozzle.json
@@ -18,10 +18,10 @@
"filament_max_volumetric_speed": [
"2"
],
- "max_fan_speed":[
+ "fan_max_speed":[
"80"
],
- "min_fan_speed":[
+ "fan_min_speed":[
"10"
],
"compatible_printers": [
diff --git a/resources/profiles/Qidi/filament/QIDI ABS Odorless @0.8 nozzle.json b/resources/profiles/Qidi/filament/QIDI ABS Odorless @0.8 nozzle.json
index 0474f72171..1ad2babeb7 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS Odorless @0.8 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS Odorless @0.8 nozzle.json
@@ -24,10 +24,10 @@
"slow_down_min_speed": [
"10"
],
- "max_fan_speed":[
+ "fan_max_speed":[
"80"
],
- "min_fan_speed":[
+ "fan_min_speed":[
"10"
],
"compatible_printers": [
diff --git a/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.2 nozzle.json b/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.2 nozzle.json
index 8e56cc5a03..178a663941 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.2 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.2 nozzle.json
@@ -3,6 +3,12 @@
"filament_id": "GFB99",
"setting_id": "GFSA04",
"instantiation": "true",
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"filament_flow_ratio": [
"0.92"
],
@@ -13,7 +19,7 @@
"0"
],
"chamber_temperature": [
- "55"
+ "0"
],
"fan_max_speed": [
"80"
diff --git a/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.4 nozzle.json b/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.4 nozzle.json
index c0a349fa31..6bec26d1ec 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.4 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.4 nozzle.json
@@ -3,6 +3,12 @@
"filament_id": "GFB99",
"setting_id": "GFSA04",
"instantiation": "true",
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"filament_flow_ratio": [
"0.92"
],
diff --git a/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.6 nozzle.json b/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.6 nozzle.json
index 020153b310..7577ba5d3f 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.6 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.6 nozzle.json
@@ -3,6 +3,12 @@
"filament_id": "GFB99",
"setting_id": "GFSA04",
"instantiation": "true",
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"filament_flow_ratio": [
"0.92"
],
diff --git a/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.8 nozzle.json b/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.8 nozzle.json
index ccaacdfe14..bfd491d21c 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.8 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS Odorless @Qidi Q1 Pro 0.8 nozzle.json
@@ -3,6 +3,12 @@
"filament_id": "GFB99",
"setting_id": "GFSA04",
"instantiation": "true",
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"filament_flow_ratio": [
"0.92"
],
diff --git a/resources/profiles/Qidi/filament/QIDI ABS Odorless.json b/resources/profiles/Qidi/filament/QIDI ABS Odorless.json
index ccc24c26c7..6a103b36b7 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS Odorless.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS Odorless.json
@@ -18,10 +18,10 @@
"pressure_advance": [
"0.021"
],
- "max_fan_speed":[
+ "fan_max_speed":[
"80"
],
- "min_fan_speed":[
+ "fan_min_speed":[
"10"
],
"overhang_fan_speed": [
diff --git a/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.2 nozzle.json b/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.2 nozzle.json
index 683be9035f..9d22bb1937 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.2 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.2 nozzle.json
@@ -13,7 +13,7 @@
"0"
],
"chamber_temperature": [
- "55"
+ "0"
],
"fan_max_speed": [
"80"
@@ -40,6 +40,12 @@
"slow_down_min_speed": [
"20"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.2 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.4 nozzle.json b/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.4 nozzle.json
index 94d9f981cc..64870649d9 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.4 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.4 nozzle.json
@@ -3,6 +3,12 @@
"filament_id": "GFB99",
"setting_id": "GFSA04",
"instantiation": "true",
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"filament_flow_ratio": [
"0.95"
],
diff --git a/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.6 nozzle.json b/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.6 nozzle.json
index ac603a1776..297a516f62 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.6 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.6 nozzle.json
@@ -40,6 +40,12 @@
"slow_down_min_speed": [
"20"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.6 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.8 nozzle.json b/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.8 nozzle.json
index b661799a9f..67dfb153b1 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.8 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS Rapido @Qidi Q1 Pro 0.8 nozzle.json
@@ -40,6 +40,12 @@
"slow_down_min_speed": [
"10"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.8 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/QIDI ABS Rapido.json b/resources/profiles/Qidi/filament/QIDI ABS Rapido.json
index e9b5f75734..377ae61cc7 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS Rapido.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS Rapido.json
@@ -18,10 +18,10 @@
"pressure_advance": [
"0.021"
],
- "max_fan_speed":[
+ "fan_max_speed":[
"80"
],
- "min_fan_speed":[
+ "fan_min_speed":[
"20"
],
"overhang_fan_speed": [
diff --git a/resources/profiles/Qidi/filament/QIDI ABS-GF.json b/resources/profiles/Qidi/filament/QIDI ABS-GF.json
index 1e946ef06a..2ac3b7c19a 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS-GF.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS-GF.json
@@ -44,6 +44,12 @@
],
"filament_density":[
"1.15"
+ ],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
],
"compatible_printers": [
"Qidi X-Plus 0.4 nozzle",
diff --git a/resources/profiles/Qidi/filament/QIDI ABS-GF10.json b/resources/profiles/Qidi/filament/QIDI ABS-GF10.json
index a102a1213b..94bc3146c1 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS-GF10.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS-GF10.json
@@ -42,6 +42,12 @@
"overhang_fan_speed": [
"100"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi X-Plus 0.4 nozzle",
"Qidi X-Max 0.4 nozzle",
diff --git a/resources/profiles/Qidi/filament/QIDI ABS-GF25.json b/resources/profiles/Qidi/filament/QIDI ABS-GF25.json
index ff520549c1..aa7a6efaa1 100644
--- a/resources/profiles/Qidi/filament/QIDI ABS-GF25.json
+++ b/resources/profiles/Qidi/filament/QIDI ABS-GF25.json
@@ -41,6 +41,12 @@
],
"overhang_fan_speed": [
"100"
+ ],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
],
"compatible_printers": [
"Qidi X-Plus 0.4 nozzle",
diff --git a/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.2 nozzle.json b/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.2 nozzle.json
index 2c4fcbf919..5c9663d148 100644
--- a/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.2 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.2 nozzle.json
@@ -6,7 +6,10 @@
"from": "system",
"instantiation": "true",
"inherits": "QIDI ASA",
- "activate_chamber_temp_control": [
+ "nozzle_temperature": [
+ "255"
+ ],
+ "chamber_temperature": [
"0"
],
"filament_flow_ratio": [
@@ -20,6 +23,15 @@
],
"filament_max_volumetric_speed": [
"2"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
],
"compatible_printers": [
"Qidi Q1 Pro 0.2 nozzle"
diff --git a/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.4 nozzle.json b/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.4 nozzle.json
index 01fb0eaca2..d659463192 100644
--- a/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.4 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.4 nozzle.json
@@ -36,6 +36,12 @@
"slow_down_layer_time": [
"4"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.4 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.6 nozzle.json b/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.6 nozzle.json
index fc21c6e1e3..9f4b864e22 100644
--- a/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.6 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.6 nozzle.json
@@ -36,6 +36,12 @@
"slow_down_layer_time": [
"4"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.6 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.8 nozzle.json b/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.8 nozzle.json
index 9d11a1834e..651b44bd36 100644
--- a/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.8 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI ASA @Qidi Q1 Pro 0.8 nozzle.json
@@ -36,6 +36,12 @@
"slow_down_layer_time": [
"4"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.8 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/QIDI ASA.json b/resources/profiles/Qidi/filament/QIDI ASA.json
index 860d743bba..2659ea9299 100644
--- a/resources/profiles/Qidi/filament/QIDI ASA.json
+++ b/resources/profiles/Qidi/filament/QIDI ASA.json
@@ -48,10 +48,10 @@
"pressure_advance": [
"0.021"
],
- "max_fan_speed":[
+ "fan_max_speed":[
"50"
],
- "min_fan_speed":[
+ "fan_min_speed":[
"10"
],
"filament_retraction_length": [
diff --git a/resources/profiles/Qidi/filament/QIDI PA-Ultra.json b/resources/profiles/Qidi/filament/QIDI PA-Ultra.json
index 91b0873137..3f25c72692 100644
--- a/resources/profiles/Qidi/filament/QIDI PA-Ultra.json
+++ b/resources/profiles/Qidi/filament/QIDI PA-Ultra.json
@@ -24,10 +24,10 @@
"pressure_advance": [
"0.03"
],
- "max_fan_speed":[
+ "fan_max_speed":[
"40"
],
-"min_fan_speed":[
+"fan_min_speed":[
"20"
],
"hot_plate_temp_initial_layer" : [
diff --git a/resources/profiles/Qidi/filament/QIDI PLA Rapido @Qidi Q1 Pro 0.2 nozzle.json b/resources/profiles/Qidi/filament/QIDI PLA Rapido @Qidi Q1 Pro 0.2 nozzle.json
index f2b961f821..4e6b1dcbb7 100644
--- a/resources/profiles/Qidi/filament/QIDI PLA Rapido @Qidi Q1 Pro 0.2 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI PLA Rapido @Qidi Q1 Pro 0.2 nozzle.json
@@ -40,7 +40,7 @@
"210"
],
"pressure_advance": [
- "0.042"
+ "0.036"
],
"slow_down_min_speed": [
"20"
diff --git a/resources/profiles/Qidi/filament/QIDI PLA Rapido @Qidi Q1 Pro 0.4 nozzle.json b/resources/profiles/Qidi/filament/QIDI PLA Rapido @Qidi Q1 Pro 0.4 nozzle.json
index 9fde954540..35127f6813 100644
--- a/resources/profiles/Qidi/filament/QIDI PLA Rapido @Qidi Q1 Pro 0.4 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI PLA Rapido @Qidi Q1 Pro 0.4 nozzle.json
@@ -40,7 +40,7 @@
"210"
],
"pressure_advance": [
- "0.042"
+ "0.036"
],
"slow_down_min_speed": [
"20"
diff --git a/resources/profiles/Qidi/filament/QIDI PLA-CF @Qidi Q1 Pro 0.4 nozzle.json b/resources/profiles/Qidi/filament/QIDI PLA-CF @Qidi Q1 Pro 0.4 nozzle.json
index 7b47a552f7..1298e6b1fb 100644
--- a/resources/profiles/Qidi/filament/QIDI PLA-CF @Qidi Q1 Pro 0.4 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI PLA-CF @Qidi Q1 Pro 0.4 nozzle.json
@@ -2,10 +2,10 @@
"filament_id": "GFL98",
"setting_id": "GFSL98",
"instantiation": "true",
- "extrusion_multiplier": [
+ "filament_flow_ratio": [
"0.93"
],
- "first_layer_temperature": [
+ "nozzle_temperature_initial_layer": [
"220"
],
"filament_max_volumetric_speed": [
diff --git a/resources/profiles/Qidi/filament/QIDI PLA-CF @Qidi Q1 Pro 0.6 nozzle.json b/resources/profiles/Qidi/filament/QIDI PLA-CF @Qidi Q1 Pro 0.6 nozzle.json
index 0fec335289..2816edc17d 100644
--- a/resources/profiles/Qidi/filament/QIDI PLA-CF @Qidi Q1 Pro 0.6 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI PLA-CF @Qidi Q1 Pro 0.6 nozzle.json
@@ -2,10 +2,10 @@
"filament_id": "GFL98",
"setting_id": "GFSL98",
"instantiation": "true",
- "extrusion_multiplier": [
+ "filament_flow_ratio": [
"0.93"
],
- "first_layer_temperature": [
+ "nozzle_temperature_initial_layer": [
"220"
],
"filament_max_volumetric_speed": [
diff --git a/resources/profiles/Qidi/filament/QIDI PLA-CF @Qidi Q1 Pro 0.8 nozzle.json b/resources/profiles/Qidi/filament/QIDI PLA-CF @Qidi Q1 Pro 0.8 nozzle.json
index d0387282d7..d5fdc0cfe7 100644
--- a/resources/profiles/Qidi/filament/QIDI PLA-CF @Qidi Q1 Pro 0.8 nozzle.json
+++ b/resources/profiles/Qidi/filament/QIDI PLA-CF @Qidi Q1 Pro 0.8 nozzle.json
@@ -2,10 +2,10 @@
"filament_id": "GFL98",
"setting_id": "GFSL98",
"instantiation": "true",
- "extrusion_multiplier": [
+ "filament_flow_ratio": [
"0.93"
],
- "first_layer_temperature": [
+ "nozzle_temperature_initial_layer": [
"220"
],
"filament_max_volumetric_speed": [
diff --git a/resources/profiles/Qidi/filament/Qidi ASA-Aero @Qidi Q1 Pro 0.4 nozzle.json b/resources/profiles/Qidi/filament/Qidi ASA-Aero @Qidi Q1 Pro 0.4 nozzle.json
index 2dae49d2a7..f0243921ae 100644
--- a/resources/profiles/Qidi/filament/Qidi ASA-Aero @Qidi Q1 Pro 0.4 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi ASA-Aero @Qidi Q1 Pro 0.4 nozzle.json
@@ -30,6 +30,12 @@
"slow_down_min_speed": [
"20"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.4 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/Qidi ASA-Aero.json b/resources/profiles/Qidi/filament/Qidi ASA-Aero.json
index ca2c07fcf3..fe344d1a98 100644
--- a/resources/profiles/Qidi/filament/Qidi ASA-Aero.json
+++ b/resources/profiles/Qidi/filament/Qidi ASA-Aero.json
@@ -51,10 +51,10 @@
"filament_retraction_length": [
"0.01"
],
- "max_fan_speed":[
+ "fan_max_speed":[
"50"
],
- "min_fan_speed":[
+ "fan_min_speed":[
"10"
],
"overhang_fan_speed": [
diff --git a/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.2 nozzle.json b/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.2 nozzle.json
index 4c43d6167e..59e2f45506 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.2 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.2 nozzle.json
@@ -17,6 +17,15 @@
],
"filament_max_volumetric_speed": [
"2"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
],
"compatible_printers": [
"Qidi Q1 Pro 0.2 nozzle"
diff --git a/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.4 nozzle.json b/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.4 nozzle.json
index 329a417ba5..bd298230fd 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.4 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.4 nozzle.json
@@ -33,6 +33,12 @@
"slow_down_min_speed": [
"20"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.4 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.6 nozzle.json b/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.6 nozzle.json
index 98639f2926..853c7c934c 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.6 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.6 nozzle.json
@@ -17,6 +17,15 @@
],
"filament_max_volumetric_speed": [
"24.5"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
],
"compatible_printers": [
"Qidi Q1 Pro 0.6 nozzle"
diff --git a/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.8 nozzle.json b/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.8 nozzle.json
index 4b532fe90b..5ce32da3da 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.8 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic ABS @Qidi Q1 Pro 0.8 nozzle.json
@@ -17,6 +17,15 @@
],
"filament_max_volumetric_speed": [
"24.5"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
],
"compatible_printers": [
"Qidi Q1 Pro 0.8 nozzle"
diff --git a/resources/profiles/Qidi/filament/Qidi Generic ABS.json b/resources/profiles/Qidi/filament/Qidi Generic ABS.json
index fecf1b88cc..1928c7fda1 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic ABS.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic ABS.json
@@ -21,10 +21,10 @@
"pressure_advance": [
"0.021"
],
- "max_fan_speed":[
+ "fan_max_speed":[
"80"
],
- "min_fan_speed":[
+ "fan_min_speed":[
"10"
],
"overhang_fan_speed": [
@@ -32,6 +32,9 @@
],
"filament_density":[
"1.04"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
],
"compatible_printers": [
"Qidi X-Plus 0.2 nozzle",
diff --git a/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.2 nozzle.json b/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.2 nozzle.json
index c07dae16b7..4a7499a770 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.2 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.2 nozzle.json
@@ -17,6 +17,12 @@
],
"filament_max_volumetric_speed": [
"2"
+ ],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
],
"compatible_printers": [
"Qidi Q1 Pro 0.2 nozzle"
diff --git a/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.4 nozzle.json b/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.4 nozzle.json
index a068ae0603..ae3a54c858 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.4 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.4 nozzle.json
@@ -36,6 +36,12 @@
"slow_down_layer_time": [
"4"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.4 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.6 nozzle.json b/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.6 nozzle.json
index 49485cc786..cb6e4eafbf 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.6 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.6 nozzle.json
@@ -36,6 +36,12 @@
"slow_down_layer_time": [
"4"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.6 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.8 nozzle.json b/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.8 nozzle.json
index 53c36fd95b..bfd05b5ac3 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.8 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic ASA @Qidi Q1 Pro 0.8 nozzle.json
@@ -36,6 +36,12 @@
"slow_down_layer_time": [
"4"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.8 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/Qidi Generic ASA.json b/resources/profiles/Qidi/filament/Qidi Generic ASA.json
index 93a94c4630..53544c6931 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic ASA.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic ASA.json
@@ -6,9 +6,6 @@
"from": "system",
"instantiation": "true",
"inherits": "fdm_filament_asa",
- "activate_chamber_temp_control": [
- "0"
- ],
"filament_max_volumetric_speed": [
"16"
],
@@ -24,14 +21,17 @@
"enable_pressure_advance": [
"1"
],
- "max_fan_speed":[
+ "fan_max_speed":[
"50"
],
- "min_fan_speed":[
+ "fan_min_speed":[
"10"
],
"pressure_advance": [
"0.021"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
],
"compatible_printers": [
"Qidi X-Plus 0.2 nozzle",
diff --git a/resources/profiles/Qidi/filament/Qidi Generic PC.json b/resources/profiles/Qidi/filament/Qidi Generic PC.json
index 5c5650e554..43a1594b49 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic PC.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic PC.json
@@ -18,6 +18,12 @@
"pressure_advance": [
"0.04"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi X-Plus 0.4 nozzle",
"Qidi X-Max 0.4 nozzle",
diff --git a/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.2 nozzle.json b/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.2 nozzle.json
index 8a7d1c3ae9..5f279fe8b7 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.2 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.2 nozzle.json
@@ -16,10 +16,13 @@
"1"
],
"pressure_advance": [
- "0.042"
+ "0.036"
],
"filament_max_volumetric_speed": [
"14"
+ ],
+ "nozzle_temperature": [
+ "210"
],
"compatible_printers": [
"Qidi Q1 Pro 0.2 nozzle"
diff --git a/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.4 nozzle.json b/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.4 nozzle.json
index 4a87b977dc..a3afbb3a5d 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.4 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.4 nozzle.json
@@ -27,6 +27,9 @@
"slow_down_min_speed": [
"20"
],
+ "pressure_advance": [
+ "0.042"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.4 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.6 nozzle.json b/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.6 nozzle.json
index 6668f94448..42d15de31e 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.6 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.6 nozzle.json
@@ -20,6 +20,9 @@
],
"filament_max_volumetric_speed": [
"14"
+ ],
+ "nozzle_temperature": [
+ "210"
],
"compatible_printers": [
"Qidi Q1 Pro 0.6 nozzle"
diff --git a/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.8 nozzle.json b/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.8 nozzle.json
index b25ce10154..596c7e8604 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.8 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic PLA @Qidi Q1 Pro 0.8 nozzle.json
@@ -20,6 +20,9 @@
],
"filament_max_volumetric_speed": [
"14"
+ ],
+ "nozzle_temperature": [
+ "210"
],
"compatible_printers": [
"Qidi Q1 Pro 0.8 nozzle"
diff --git a/resources/profiles/Qidi/filament/Qidi Generic PLA Silk @Qidi Q1 Pro 0.4 nozzle.json b/resources/profiles/Qidi/filament/Qidi Generic PLA Silk @Qidi Q1 Pro 0.4 nozzle.json
new file mode 100644
index 0000000000..9475b0bdfc
--- /dev/null
+++ b/resources/profiles/Qidi/filament/Qidi Generic PLA Silk @Qidi Q1 Pro 0.4 nozzle.json
@@ -0,0 +1,37 @@
+{
+ "type": "filament",
+ "filament_id": "GFA05",
+ "setting_id": "GFSL99_01",
+ "name": "Qidi Generic PLA Silk @Qidi Q1 Pro 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Qidi Generic PLA Silk",
+ "enable_pressure_advance":"1",
+ "pressure_advance": [
+ "0.032"
+ ],
+ "nozzle_temperature_initial_layer":[
+ "220"
+ ],
+ "filament_max_volumetric_speed": [
+ "7.5"
+ ],
+ "filament_retraction_length": [
+ "0.5"
+ ],
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "hot_plate_temp_initial_layer" : [
+ "55"
+ ],
+ "hot_plate_temp" : [
+ "55"
+ ],
+ "compatible_printers": [
+ "Qidi Q1 Pro 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Qidi/filament/Qidi Generic PLA Silk.json b/resources/profiles/Qidi/filament/Qidi Generic PLA Silk.json
index e99189fd80..e57df57286 100644
--- a/resources/profiles/Qidi/filament/Qidi Generic PLA Silk.json
+++ b/resources/profiles/Qidi/filament/Qidi Generic PLA Silk.json
@@ -8,7 +8,7 @@
"inherits": "fdm_filament_pla",
"enable_pressure_advance":"1",
"pressure_advance": [
- "0.032"
+ "0.024"
],
"nozzle_temperature_initial_layer":[
"220"
@@ -58,7 +58,6 @@
"Qidi X-Plus 3 0.8 nozzle",
"Qidi X-Max 3 0.8 nozzle",
"Qidi Q1 Pro 0.2 nozzle",
- "Qidi Q1 Pro 0.4 nozzle",
"Qidi Q1 Pro 0.6 nozzle",
"Qidi Q1 Pro 0.8 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/Qidi PC-ABS-FR @Qidi Q1 Pro 0.4 nozzle.json b/resources/profiles/Qidi/filament/Qidi PC-ABS-FR @Qidi Q1 Pro 0.4 nozzle.json
index 1bc87b6bc3..8791c08f3c 100644
--- a/resources/profiles/Qidi/filament/Qidi PC-ABS-FR @Qidi Q1 Pro 0.4 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi PC-ABS-FR @Qidi Q1 Pro 0.4 nozzle.json
@@ -39,6 +39,12 @@
"slow_down_min_speed": [
"20"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.4 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/Qidi PC-ABS-FR @Qidi Q1 Pro 0.6 nozzle.json b/resources/profiles/Qidi/filament/Qidi PC-ABS-FR @Qidi Q1 Pro 0.6 nozzle.json
index 2db0187cc3..b628dda74a 100644
--- a/resources/profiles/Qidi/filament/Qidi PC-ABS-FR @Qidi Q1 Pro 0.6 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi PC-ABS-FR @Qidi Q1 Pro 0.6 nozzle.json
@@ -42,6 +42,12 @@
"filament_max_volumetric_speed": [
"8"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.6 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/Qidi PC-ABS-FR @Qidi Q1 Pro 0.8 nozzle.json b/resources/profiles/Qidi/filament/Qidi PC-ABS-FR @Qidi Q1 Pro 0.8 nozzle.json
index db1e75811b..104cc9ee46 100644
--- a/resources/profiles/Qidi/filament/Qidi PC-ABS-FR @Qidi Q1 Pro 0.8 nozzle.json
+++ b/resources/profiles/Qidi/filament/Qidi PC-ABS-FR @Qidi Q1 Pro 0.8 nozzle.json
@@ -42,6 +42,12 @@
"filament_max_volumetric_speed": [
"8"
],
+ "activate_air_filtration":[
+ "0"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "0"
+ ],
"compatible_printers": [
"Qidi Q1 Pro 0.8 nozzle"
]
diff --git a/resources/profiles/Qidi/filament/Qidi PC-ABS-FR.json b/resources/profiles/Qidi/filament/Qidi PC-ABS-FR.json
index b5f8921369..42e4515943 100644
--- a/resources/profiles/Qidi/filament/Qidi PC-ABS-FR.json
+++ b/resources/profiles/Qidi/filament/Qidi PC-ABS-FR.json
@@ -21,10 +21,10 @@
"overhang_fan_speed": [
"60"
],
- "max_fan_speed":[
+ "fan_max_speed":[
"40"
],
- "min_fan_speed":[
+ "fan_min_speed":[
"10"
],
"hot_plate_temp_initial_layer" : [
diff --git a/resources/profiles/Qidi/filament/Qidi PLA-CF.json b/resources/profiles/Qidi/filament/Qidi PLA-CF.json
index dda26e182f..ff6fec8cf2 100644
--- a/resources/profiles/Qidi/filament/Qidi PLA-CF.json
+++ b/resources/profiles/Qidi/filament/Qidi PLA-CF.json
@@ -15,19 +15,16 @@
"filament_max_volumetric_speed": [
"9"
],
- "temperature": [
+ "nozzle_temperature": [
"230"
],
- "first_layer_temperature": [
+ "nozzle_temperature_initial_layer": [
"230"
],
"filament_density": [
"1.25"
],
- "extrusion_multiplier": [
- "0.96"
- ],
- "advance_pressure": [
+ "pressure_advance": [
"0.02"
],
diff --git a/resources/profiles/Qidi/filament/fdm_filament_abs.json b/resources/profiles/Qidi/filament/fdm_filament_abs.json
index 2b72b157fc..d710938ecd 100644
--- a/resources/profiles/Qidi/filament/fdm_filament_abs.json
+++ b/resources/profiles/Qidi/filament/fdm_filament_abs.json
@@ -82,6 +82,12 @@
"nozzle_temperature_range_high": [
"270"
],
+ "activate_air_filtration":[
+ "1"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "40"
+ ],
"slow_down_min_speed": [
"10"
],
diff --git a/resources/profiles/Qidi/filament/fdm_filament_asa.json b/resources/profiles/Qidi/filament/fdm_filament_asa.json
index 8577da2a9b..9b3c88e032 100644
--- a/resources/profiles/Qidi/filament/fdm_filament_asa.json
+++ b/resources/profiles/Qidi/filament/fdm_filament_asa.json
@@ -82,6 +82,12 @@
"nozzle_temperature_range_high": [
"280"
],
+ "activate_air_filtration":[
+ "1"
+ ],
+ "during_print_exhaust_fan_speed":[
+ "40"
+ ],
"slow_down_min_speed": [
"10"
],
diff --git a/resources/profiles/Qidi/filament/fdm_filament_common.json b/resources/profiles/Qidi/filament/fdm_filament_common.json
index d04f771b95..34201d875b 100644
--- a/resources/profiles/Qidi/filament/fdm_filament_common.json
+++ b/resources/profiles/Qidi/filament/fdm_filament_common.json
@@ -144,5 +144,11 @@
"activate_chamber_temp_control": [
"0"
],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "0"
+ ],
"compatible_printers": []
}
diff --git a/resources/profiles/Qidi/machine/Qidi Q1 Pro 0.4 nozzle.json b/resources/profiles/Qidi/machine/Qidi Q1 Pro 0.4 nozzle.json
index fe24f7958c..c67da91f1b 100644
--- a/resources/profiles/Qidi/machine/Qidi Q1 Pro 0.4 nozzle.json
+++ b/resources/profiles/Qidi/machine/Qidi Q1 Pro 0.4 nozzle.json
@@ -18,14 +18,15 @@
"0x245"
],
"bed_exclude_area": [
- "25x240",
+ "25x245",
+ "25x240",
"115x240",
"115x245",
- "25x245",
+ "208x245",
"208x240",
"245x240",
"245x245",
- "208x245"
+ "208x245"
],
"printable_height": "240",
"nozzle_type": "hardened_steel",
@@ -62,7 +63,7 @@
],
"layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nLOG_Z\nG92 E0\n",
"machine_end_gcode": "M141 S0\nM104 S0\nM140 S0\nG1 E-3 F1800\nG0 Z{min(max_print_height, max_layer_z + 3)} F600\nG0 X0 Y0 F12000\n{if max_layer_z < max_print_height / 2}G1 Z{max_print_height / 2 + 10} F600{else}G1 Z{min(max_print_height, max_layer_z + 3)}{endif}",
- "machine_start_gcode": "PRINT_START BED=[first_layer_bed_temperature] HOTEND=[first_layer_temperature] CHAMBER=[chamber_temperature]\nM83\nM140 S[first_layer_bed_temperature]\nM104 S[first_layer_temperature]\nG4 P3000\nG0 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0)} Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0)} Z5 F6000\nG0 Z[initial_layer_print_height] F600\nG1 E3 F1800\nG1 X{(min(print_bed_max[0], first_layer_print_min[0] + 80))} E{85 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0) + 2} E{2 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0)} E{85 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0) + 85} E{83 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0) + 2} E{2 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0) + 3} E{82 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0) + 3} Z0\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0) + 6}\nG1 Z1 F600",
+ "machine_start_gcode": "PRINT_START BED=[hot_plate_temp_initial_layer] HOTEND=[nozzle_temperature_initial_layer] CHAMBER=[chamber_temperature]\nM83\nM140 S[hot_plate_temp_initial_layer]\nM104 S[nozzle_temperature_initial_layer]\nG4 P3000\nG0 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0)} Y{max((min(print_bed_max[1] - 5, first_layer_print_min[1] + 80) - 85), 0)} Z5 F6000\nG0 Z[initial_layer_print_height] F600\nG1 E3 F1800\nG1 X{(min(print_bed_max[0], first_layer_print_min[0] + 80))} E{85 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 Y{max((min(print_bed_max[1] - 5, first_layer_print_min[1] + 80) - 85), 0) + 2} E{2 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85), 0)} E{85 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 Y{max((min(print_bed_max[1] - 5, first_layer_print_min[1] + 80) - 85), 0) + 85} E{83 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85), 0) + 2} E{2 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 Y{max((min(print_bed_max[1] - 5, first_layer_print_min[1] + 80) - 85), 0) + 3} E{82 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85), 0) + 3} Z0\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85), 0) + 6}\nG1 Z1 F600\n",
"thumbnails_format": "PNG",
"default_filament_profile": [
"Qidi Generic PLA @Qidi Q1 Pro 0.4 nozzle"
diff --git a/resources/profiles/Qidi/machine/fdm_machine_common.json b/resources/profiles/Qidi/machine/fdm_machine_common.json
index 995c22940d..bdfb8dd658 100644
--- a/resources/profiles/Qidi/machine/fdm_machine_common.json
+++ b/resources/profiles/Qidi/machine/fdm_machine_common.json
@@ -115,6 +115,5 @@
"before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n",
"machine_start_gcode": "G28\nG0 Z50 F600\nM190 S[first_layer_bed_temperature]\nG28 Z\nG29 ; mesh bed leveling ,comment this code to close it\nG0 X0 Y0 Z50 F6000\nM109 S[first_layer_temperature]\nM83\nG0 Z5 F1200\nG0 X{first_layer_print_min[0]} Y{max(0, first_layer_print_min[1] - 2)} F12000\nG0 Z0.2 F600\nG1 E3 F1800\nG0 Z0.3 F600\nG1 X{min(first_layer_print_min[0] + 30,print_bed_max[0])} E6 F600",
"machine_end_gcode": "M104 S0\nM140 S0\nG92 E0\nG1 E-3 F1800\nG90\n{if max_layer_z < max_print_height / 2}\nG1 Z{max_print_height / 2 + 10} F600\n{else}\nG1 Z{min(max_print_height, max_layer_z + 10)}\n{endif}\nG0 X5 Y{print_bed_max[1]-11} F12000\nM141 S0",
- "time_lapse_gcode":";TIMELAPSE_TAKE_FRAME\n"
-
+ "time_lapse_gcode":";TIMELAPSE_TAKE_FRAME\n"
}
diff --git a/resources/profiles/Qidi/machine/fdm_qidi_x3_common.json b/resources/profiles/Qidi/machine/fdm_qidi_x3_common.json
index 27ec90533f..2ffce21a63 100644
--- a/resources/profiles/Qidi/machine/fdm_qidi_x3_common.json
+++ b/resources/profiles/Qidi/machine/fdm_qidi_x3_common.json
@@ -23,8 +23,7 @@
"210x210/COLPIC",
"380x380/PNG"
],
- "thumbnails_format": "ColPic",
- "machine_start_gcode": "PRINT_START\nG28\nM141 S0\nG0 Z50 F600\nM190 S[first_layer_bed_temperature]\nG28 Z\nG29; mesh bed leveling ,comment this code to close it\nG0 X0 Y0 Z50 F6000\nM109 S[first_layer_temperature]\nM106 P3 S255\nM83\nG4 P3000\nG0 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0)} Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0)} Z5 F6000\nG0 Z[initial_layer_print_height] F600\nG1 E3 F1800\nG1 X{(min(print_bed_max[0], first_layer_print_min[0] + 80))} E{85 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0) + 2} E{2 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0)} E{85 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0) + 85} E{83 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0) + 2} E{2 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0) + 3} E{82 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0) + 12} E{-10 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 E{10 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\n",
+ "machine_start_gcode": "PRINT_START\nG28\nM141 S0\nG0 Z50 F600\nM190 S[hot_plate_temp_initial_layer]\nG28 Z\nG29; mesh bed leveling ,comment this code to close it\nG0 X0 Y0 Z50 F6000\nM191 S{overall_chamber_temperature}\nM109 S[nozzle_temperature_initial_layer]\nM106 P3 S255\nM83\nG4 P3000\nG0 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0)} Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0)} Z5 F6000\nG0 Z[initial_layer_print_height] F600\nG1 E3 F1800\nG1 X{(min(print_bed_max[0], first_layer_print_min[0] + 80))} E{85 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0) + 2} E{2 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0)} E{85 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0) + 85} E{83 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0) + 2} E{2 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0) + 3} E{82 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0) + 12} E{-10 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\nG1 E{10 * 0.5 * initial_layer_print_height * nozzle_diameter[0]} F3000\n",
"machine_end_gcode": "M141 S0\nM104 S0\nM140 S0\nG1 E-3 F1800\nG0 Z{min(max_print_height, max_layer_z + 3)} F600\nG0 X0 Y0 F12000\n{if max_layer_z < max_print_height / 2}G1 Z{max_print_height / 2 + 10} F600{else}G1 Z{min(max_print_height, max_layer_z + 3)}{endif}",
"scan_first_layer": "0"
}
diff --git a/resources/profiles/Qidi/process/fdm_process_qidi_x3_common.json b/resources/profiles/Qidi/process/fdm_process_qidi_x3_common.json
index 3591e4f9a8..37f0eced81 100644
--- a/resources/profiles/Qidi/process/fdm_process_qidi_x3_common.json
+++ b/resources/profiles/Qidi/process/fdm_process_qidi_x3_common.json
@@ -24,7 +24,7 @@
"enable_arc_fitting": "0",
"outer_wall_line_width": "0.42",
"outer_wall_speed": "120",
- "outer_wall_acceleration": "5000",
+ "outer_wall_acceleration": "3000",
"inner_wall_acceleration": "5000",
"wall_infill_order": "inner wall/outer wall/infill",
"line_width": "0.42",
diff --git a/resources/profiles/Qidi/qidi_xseries_gen2_hotend.stl b/resources/profiles/Qidi/qidi_xseries_gen2_hotend.stl
index 94111403f6..a44156f6dc 100644
Binary files a/resources/profiles/Qidi/qidi_xseries_gen2_hotend.stl and b/resources/profiles/Qidi/qidi_xseries_gen2_hotend.stl differ
diff --git a/resources/profiles/Raise3D.json b/resources/profiles/Raise3D.json
index ad5a2be34b..3827446e74 100644
--- a/resources/profiles/Raise3D.json
+++ b/resources/profiles/Raise3D.json
@@ -1,7 +1,7 @@
{
"name": "Raise3D",
"url": "",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Raise3D configurations",
"machine_model_list": [
diff --git a/resources/profiles/Ratrig.json b/resources/profiles/Ratrig.json
index 8768544f5d..ce479235cb 100644
--- a/resources/profiles/Ratrig.json
+++ b/resources/profiles/Ratrig.json
@@ -1,6 +1,6 @@
{
"name": "RatRig",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "RatRig configurations",
"machine_model_list": [
@@ -27,6 +27,30 @@
{
"name": "RatRig V-Cast",
"sub_path": "machine/RatRig V-Cast.json"
+ },
+ {
+ "name": "RatRig V-Core 4 300",
+ "sub_path": "machine/RatRig V-Core 4 300.json"
+ },
+ {
+ "name": "RatRig V-Core 4 400",
+ "sub_path": "machine/RatRig V-Core 4 400.json"
+ },
+ {
+ "name": "RatRig V-Core 4 500",
+ "sub_path": "machine/RatRig V-Core 4 500.json"
+ },
+ {
+ "name": "RatRig V-Core 4 HYBRID 300",
+ "sub_path": "machine/RatRig V-Core 4 HYBRID 300.json"
+ },
+ {
+ "name": "RatRig V-Core 4 HYBRID 400",
+ "sub_path": "machine/RatRig V-Core 4 HYBRID 400.json"
+ },
+ {
+ "name": "RatRig V-Core 4 HYBRID 500",
+ "sub_path": "machine/RatRig V-Core 4 HYBRID 500.json"
}
],
"process_list": [
@@ -61,6 +85,78 @@
{
"name": "0.28mm Extra Draft @RatRig",
"sub_path": "process/0.28mm Extra Draft @RatRig.json"
+ },
+ {
+ "name": "0.30mm Big @RatRig V-Core 4 0.6",
+ "sub_path": "process/0.30mm Big @RatRig V-Core 4 0.6.json"
+ },
+ {
+ "name": "0.25mm Speed @RatRig V-Core 4 0.4",
+ "sub_path": "process/0.25mm Speed @RatRig V-Core 4 0.4.json"
+ },
+ {
+ "name": "0.25mm Speed @RatRig V-Core 4 0.5",
+ "sub_path": "process/0.25mm Speed @RatRig V-Core 4 0.5.json"
+ },
+ {
+ "name": "0.25mm Speed @RatRig V-Core 4 0.6",
+ "sub_path": "process/0.25mm Speed @RatRig V-Core 4 0.6.json"
+ },
+ {
+ "name": "0.25mm Quality Speed @RatRig V-Core 4 0.4",
+ "sub_path": "process/0.25mm Quality Speed @RatRig V-Core 4 0.4.json"
+ },
+ {
+ "name": "0.25mm Quality Speed @RatRig V-Core 4 0.5",
+ "sub_path": "process/0.25mm Quality Speed @RatRig V-Core 4 0.5.json"
+ },
+ {
+ "name": "0.25mm Quality Speed @RatRig V-Core 4 0.6",
+ "sub_path": "process/0.25mm Quality Speed @RatRig V-Core 4 0.6.json"
+ },
+ {
+ "name": "0.20mm Quality @RatRig V-Core 4 0.4",
+ "sub_path": "process/0.20mm Quality @RatRig V-Core 4 0.4.json"
+ },
+ {
+ "name": "0.20mm Quality @RatRig V-Core 4 0.5",
+ "sub_path": "process/0.20mm Quality @RatRig V-Core 4 0.5.json"
+ },
+ {
+ "name": "0.30mm Big @RatRig V-Core 4 HYBRID 0.6",
+ "sub_path": "process/0.30mm Big @RatRig V-Core 4 HYBRID 0.6.json"
+ },
+ {
+ "name": "0.25mm Speed @RatRig V-Core 4 HYBRID 0.4",
+ "sub_path": "process/0.25mm Speed @RatRig V-Core 4 HYBRID 0.4.json"
+ },
+ {
+ "name": "0.25mm Speed @RatRig V-Core 4 HYBRID 0.5",
+ "sub_path": "process/0.25mm Speed @RatRig V-Core 4 HYBRID 0.5.json"
+ },
+ {
+ "name": "0.25mm Speed @RatRig V-Core 4 HYBRID 0.6",
+ "sub_path": "process/0.25mm Speed @RatRig V-Core 4 HYBRID 0.6.json"
+ },
+ {
+ "name": "0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.4",
+ "sub_path": "process/0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.4.json"
+ },
+ {
+ "name": "0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.5",
+ "sub_path": "process/0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.5.json"
+ },
+ {
+ "name": "0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.6",
+ "sub_path": "process/0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.6.json"
+ },
+ {
+ "name": "0.20mm Quality @RatRig V-Core 4 HYBRID 0.4",
+ "sub_path": "process/0.20mm Quality @RatRig V-Core 4 HYBRID 0.4.json"
+ },
+ {
+ "name": "0.20mm Quality @RatRig V-Core 4 HYBRID 0.5",
+ "sub_path": "process/0.20mm Quality @RatRig V-Core 4 HYBRID 0.5.json"
}
],
"filament_list": [
@@ -177,6 +273,78 @@
{
"name": "RatRig V-Cast 0.6 nozzle",
"sub_path": "machine/RatRig V-Cast 0.6 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 300 0.4 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 300 0.4 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 300 0.5 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 300 0.5 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 300 0.6 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 300 0.6 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 400 0.4 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 400 0.4 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 400 0.5 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 400 0.5 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 400 0.6 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 400 0.6 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 500 0.4 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 500 0.4 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 500 0.5 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 500 0.5 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 500 0.6 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 500 0.6 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 HYBRID 300 0.4 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 HYBRID 300 0.5 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 HYBRID 300 0.6 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 HYBRID 400 0.4 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 HYBRID 400 0.5 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 HYBRID 400 0.6 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 HYBRID 500 0.4 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 HYBRID 500 0.4 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 HYBRID 500 0.5 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 HYBRID 500 0.5 nozzle.json"
+ },
+ {
+ "name": "RatRig V-Core 4 HYBRID 500 0.6 nozzle",
+ "sub_path": "machine/RatRig V-Core 4 HYBRID 500 0.6 nozzle.json"
}
]
}
diff --git a/resources/profiles/Ratrig/RatRig V-Core 3 200_cover.png b/resources/profiles/Ratrig/RatRig V-Core 3 200_cover.png
index aa9b6b5471..b5e36a416b 100644
Binary files a/resources/profiles/Ratrig/RatRig V-Core 3 200_cover.png and b/resources/profiles/Ratrig/RatRig V-Core 3 200_cover.png differ
diff --git a/resources/profiles/Ratrig/RatRig V-Core 3 300_cover.png b/resources/profiles/Ratrig/RatRig V-Core 3 300_cover.png
index aa9b6b5471..b5e36a416b 100644
Binary files a/resources/profiles/Ratrig/RatRig V-Core 3 300_cover.png and b/resources/profiles/Ratrig/RatRig V-Core 3 300_cover.png differ
diff --git a/resources/profiles/Ratrig/RatRig V-Core 3 400_cover.png b/resources/profiles/Ratrig/RatRig V-Core 3 400_cover.png
index aa9b6b5471..b5e36a416b 100644
Binary files a/resources/profiles/Ratrig/RatRig V-Core 3 400_cover.png and b/resources/profiles/Ratrig/RatRig V-Core 3 400_cover.png differ
diff --git a/resources/profiles/Ratrig/RatRig V-Core 3 500_cover.png b/resources/profiles/Ratrig/RatRig V-Core 3 500_cover.png
index aa9b6b5471..b5e36a416b 100644
Binary files a/resources/profiles/Ratrig/RatRig V-Core 3 500_cover.png and b/resources/profiles/Ratrig/RatRig V-Core 3 500_cover.png differ
diff --git a/resources/profiles/Ratrig/RatRig V-Core 4 300_cover.png b/resources/profiles/Ratrig/RatRig V-Core 4 300_cover.png
new file mode 100644
index 0000000000..8490bf74a0
Binary files /dev/null and b/resources/profiles/Ratrig/RatRig V-Core 4 300_cover.png differ
diff --git a/resources/profiles/Ratrig/RatRig V-Core 4 400_cover.png b/resources/profiles/Ratrig/RatRig V-Core 4 400_cover.png
new file mode 100644
index 0000000000..8490bf74a0
Binary files /dev/null and b/resources/profiles/Ratrig/RatRig V-Core 4 400_cover.png differ
diff --git a/resources/profiles/Ratrig/RatRig V-Core 4 500_cover.png b/resources/profiles/Ratrig/RatRig V-Core 4 500_cover.png
new file mode 100644
index 0000000000..8490bf74a0
Binary files /dev/null and b/resources/profiles/Ratrig/RatRig V-Core 4 500_cover.png differ
diff --git a/resources/profiles/Ratrig/RatRig V-Core 4 HYBRID 300_cover.png b/resources/profiles/Ratrig/RatRig V-Core 4 HYBRID 300_cover.png
new file mode 100644
index 0000000000..8490bf74a0
Binary files /dev/null and b/resources/profiles/Ratrig/RatRig V-Core 4 HYBRID 300_cover.png differ
diff --git a/resources/profiles/Ratrig/RatRig V-Core 4 HYBRID 400_cover.png b/resources/profiles/Ratrig/RatRig V-Core 4 HYBRID 400_cover.png
new file mode 100644
index 0000000000..8490bf74a0
Binary files /dev/null and b/resources/profiles/Ratrig/RatRig V-Core 4 HYBRID 400_cover.png differ
diff --git a/resources/profiles/Ratrig/RatRig V-Core 4 HYBRID 500_cover.png b/resources/profiles/Ratrig/RatRig V-Core 4 HYBRID 500_cover.png
new file mode 100644
index 0000000000..8490bf74a0
Binary files /dev/null and b/resources/profiles/Ratrig/RatRig V-Core 4 HYBRID 500_cover.png differ
diff --git a/resources/profiles/Ratrig/filament/RatRig Generic ABS.json b/resources/profiles/Ratrig/filament/RatRig Generic ABS.json
index fe4f9c504a..5be01be8c9 100644
--- a/resources/profiles/Ratrig/filament/RatRig Generic ABS.json
+++ b/resources/profiles/Ratrig/filament/RatRig Generic ABS.json
@@ -52,6 +52,24 @@
"RatRig V-Core 3 500 0.4 nozzle",
"RatRig V-Minion 0.4 nozzle",
"RatRig V-Cast 0.4 nozzle",
- "RatRig V-Cast 0.6 nozzle"
+ "RatRig V-Cast 0.6 nozzle",
+ "RatRig V-Core 4 300 0.4 nozzle",
+ "RatRig V-Core 4 300 0.5 nozzle",
+ "RatRig V-Core 4 300 0.6 nozzle",
+ "RatRig V-Core 4 400 0.4 nozzle",
+ "RatRig V-Core 4 400 0.5 nozzle",
+ "RatRig V-Core 4 400 0.6 nozzle",
+ "RatRig V-Core 4 500 0.4 nozzle",
+ "RatRig V-Core 4 500 0.5 nozzle",
+ "RatRig V-Core 4 500 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.6 nozzle"
]
}
diff --git a/resources/profiles/Ratrig/filament/RatRig Generic ASA.json b/resources/profiles/Ratrig/filament/RatRig Generic ASA.json
index 07a1b81880..eeff92f76f 100644
--- a/resources/profiles/Ratrig/filament/RatRig Generic ASA.json
+++ b/resources/profiles/Ratrig/filament/RatRig Generic ASA.json
@@ -46,6 +46,24 @@
"RatRig V-Core 3 500 0.4 nozzle",
"RatRig V-Minion 0.4 nozzle",
"RatRig V-Cast 0.4 nozzle",
- "RatRig V-Cast 0.6 nozzle"
+ "RatRig V-Cast 0.6 nozzle",
+ "RatRig V-Core 4 300 0.4 nozzle",
+ "RatRig V-Core 4 300 0.5 nozzle",
+ "RatRig V-Core 4 300 0.6 nozzle",
+ "RatRig V-Core 4 400 0.4 nozzle",
+ "RatRig V-Core 4 400 0.5 nozzle",
+ "RatRig V-Core 4 400 0.6 nozzle",
+ "RatRig V-Core 4 500 0.4 nozzle",
+ "RatRig V-Core 4 500 0.5 nozzle",
+ "RatRig V-Core 4 500 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.6 nozzle"
]
}
diff --git a/resources/profiles/Ratrig/filament/RatRig Generic PA-CF.json b/resources/profiles/Ratrig/filament/RatRig Generic PA-CF.json
index 69d8b492cd..dec08573fc 100644
--- a/resources/profiles/Ratrig/filament/RatRig Generic PA-CF.json
+++ b/resources/profiles/Ratrig/filament/RatRig Generic PA-CF.json
@@ -46,6 +46,24 @@
"RatRig V-Core 3 500 0.4 nozzle",
"RatRig V-Minion 0.4 nozzle",
"RatRig V-Cast 0.4 nozzle",
- "RatRig V-Cast 0.6 nozzle"
+ "RatRig V-Cast 0.6 nozzle",
+ "RatRig V-Core 4 300 0.4 nozzle",
+ "RatRig V-Core 4 300 0.5 nozzle",
+ "RatRig V-Core 4 300 0.6 nozzle",
+ "RatRig V-Core 4 400 0.4 nozzle",
+ "RatRig V-Core 4 400 0.5 nozzle",
+ "RatRig V-Core 4 400 0.6 nozzle",
+ "RatRig V-Core 4 500 0.4 nozzle",
+ "RatRig V-Core 4 500 0.5 nozzle",
+ "RatRig V-Core 4 500 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.6 nozzle"
]
}
diff --git a/resources/profiles/Ratrig/filament/RatRig Generic PA.json b/resources/profiles/Ratrig/filament/RatRig Generic PA.json
index c1a3fa2e59..e408857516 100644
--- a/resources/profiles/Ratrig/filament/RatRig Generic PA.json
+++ b/resources/profiles/Ratrig/filament/RatRig Generic PA.json
@@ -43,6 +43,24 @@
"RatRig V-Core 3 500 0.4 nozzle",
"RatRig V-Minion 0.4 nozzle",
"RatRig V-Cast 0.4 nozzle",
- "RatRig V-Cast 0.6 nozzle"
+ "RatRig V-Cast 0.6 nozzle",
+ "RatRig V-Core 4 300 0.4 nozzle",
+ "RatRig V-Core 4 300 0.5 nozzle",
+ "RatRig V-Core 4 300 0.6 nozzle",
+ "RatRig V-Core 4 400 0.4 nozzle",
+ "RatRig V-Core 4 400 0.5 nozzle",
+ "RatRig V-Core 4 400 0.6 nozzle",
+ "RatRig V-Core 4 500 0.4 nozzle",
+ "RatRig V-Core 4 500 0.5 nozzle",
+ "RatRig V-Core 4 500 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.6 nozzle"
]
}
diff --git a/resources/profiles/Ratrig/filament/RatRig Generic PC.json b/resources/profiles/Ratrig/filament/RatRig Generic PC.json
index 174e85b3d0..d73a99bf3f 100644
--- a/resources/profiles/Ratrig/filament/RatRig Generic PC.json
+++ b/resources/profiles/Ratrig/filament/RatRig Generic PC.json
@@ -40,6 +40,24 @@
"RatRig V-Core 3 500 0.4 nozzle",
"RatRig V-Minion 0.4 nozzle",
"RatRig V-Cast 0.4 nozzle",
- "RatRig V-Cast 0.6 nozzle"
+ "RatRig V-Cast 0.6 nozzle",
+ "RatRig V-Core 4 300 0.4 nozzle",
+ "RatRig V-Core 4 300 0.5 nozzle",
+ "RatRig V-Core 4 300 0.6 nozzle",
+ "RatRig V-Core 4 400 0.4 nozzle",
+ "RatRig V-Core 4 400 0.5 nozzle",
+ "RatRig V-Core 4 400 0.6 nozzle",
+ "RatRig V-Core 4 500 0.4 nozzle",
+ "RatRig V-Core 4 500 0.5 nozzle",
+ "RatRig V-Core 4 500 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.6 nozzle"
]
}
diff --git a/resources/profiles/Ratrig/filament/RatRig Generic PETG.json b/resources/profiles/Ratrig/filament/RatRig Generic PETG.json
index c9e2a45977..8c355a5966 100644
--- a/resources/profiles/Ratrig/filament/RatRig Generic PETG.json
+++ b/resources/profiles/Ratrig/filament/RatRig Generic PETG.json
@@ -64,6 +64,24 @@
"RatRig V-Core 3 500 0.4 nozzle",
"RatRig V-Minion 0.4 nozzle",
"RatRig V-Cast 0.4 nozzle",
- "RatRig V-Cast 0.6 nozzle"
+ "RatRig V-Cast 0.6 nozzle",
+ "RatRig V-Core 4 300 0.4 nozzle",
+ "RatRig V-Core 4 300 0.5 nozzle",
+ "RatRig V-Core 4 300 0.6 nozzle",
+ "RatRig V-Core 4 400 0.4 nozzle",
+ "RatRig V-Core 4 400 0.5 nozzle",
+ "RatRig V-Core 4 400 0.6 nozzle",
+ "RatRig V-Core 4 500 0.4 nozzle",
+ "RatRig V-Core 4 500 0.5 nozzle",
+ "RatRig V-Core 4 500 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.6 nozzle"
]
}
diff --git a/resources/profiles/Ratrig/filament/RatRig Generic PLA-CF.json b/resources/profiles/Ratrig/filament/RatRig Generic PLA-CF.json
index 2ec922ac30..1d0a0b99ea 100644
--- a/resources/profiles/Ratrig/filament/RatRig Generic PLA-CF.json
+++ b/resources/profiles/Ratrig/filament/RatRig Generic PLA-CF.json
@@ -40,6 +40,24 @@
"RatRig V-Core 3 500 0.4 nozzle",
"RatRig V-Minion 0.4 nozzle",
"RatRig V-Cast 0.4 nozzle",
- "RatRig V-Cast 0.6 nozzle"
+ "RatRig V-Cast 0.6 nozzle",
+ "RatRig V-Core 4 300 0.4 nozzle",
+ "RatRig V-Core 4 300 0.5 nozzle",
+ "RatRig V-Core 4 300 0.6 nozzle",
+ "RatRig V-Core 4 400 0.4 nozzle",
+ "RatRig V-Core 4 400 0.5 nozzle",
+ "RatRig V-Core 4 400 0.6 nozzle",
+ "RatRig V-Core 4 500 0.4 nozzle",
+ "RatRig V-Core 4 500 0.5 nozzle",
+ "RatRig V-Core 4 500 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.6 nozzle"
]
}
diff --git a/resources/profiles/Ratrig/filament/RatRig Generic PLA.json b/resources/profiles/Ratrig/filament/RatRig Generic PLA.json
index 7a90fc2dce..9f69c7f91d 100644
--- a/resources/profiles/Ratrig/filament/RatRig Generic PLA.json
+++ b/resources/profiles/Ratrig/filament/RatRig Generic PLA.json
@@ -37,6 +37,24 @@
"RatRig V-Core 3 500 0.4 nozzle",
"RatRig V-Minion 0.4 nozzle",
"RatRig V-Cast 0.4 nozzle",
- "RatRig V-Cast 0.6 nozzle"
+ "RatRig V-Cast 0.6 nozzle",
+ "RatRig V-Core 4 300 0.4 nozzle",
+ "RatRig V-Core 4 300 0.5 nozzle",
+ "RatRig V-Core 4 300 0.6 nozzle",
+ "RatRig V-Core 4 400 0.4 nozzle",
+ "RatRig V-Core 4 400 0.5 nozzle",
+ "RatRig V-Core 4 400 0.6 nozzle",
+ "RatRig V-Core 4 500 0.4 nozzle",
+ "RatRig V-Core 4 500 0.5 nozzle",
+ "RatRig V-Core 4 500 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.6 nozzle"
]
}
diff --git a/resources/profiles/Ratrig/filament/RatRig Generic PVA.json b/resources/profiles/Ratrig/filament/RatRig Generic PVA.json
index 26217a73c8..35a7fc8579 100644
--- a/resources/profiles/Ratrig/filament/RatRig Generic PVA.json
+++ b/resources/profiles/Ratrig/filament/RatRig Generic PVA.json
@@ -34,6 +34,24 @@
"RatRig V-Core 3 500 0.4 nozzle",
"RatRig V-Minion 0.4 nozzle",
"RatRig V-Cast 0.4 nozzle",
- "RatRig V-Cast 0.6 nozzle"
+ "RatRig V-Cast 0.6 nozzle",
+ "RatRig V-Core 4 300 0.4 nozzle",
+ "RatRig V-Core 4 300 0.5 nozzle",
+ "RatRig V-Core 4 300 0.6 nozzle",
+ "RatRig V-Core 4 400 0.4 nozzle",
+ "RatRig V-Core 4 400 0.5 nozzle",
+ "RatRig V-Core 4 400 0.6 nozzle",
+ "RatRig V-Core 4 500 0.4 nozzle",
+ "RatRig V-Core 4 500 0.5 nozzle",
+ "RatRig V-Core 4 500 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.6 nozzle"
]
}
diff --git a/resources/profiles/Ratrig/filament/RatRig Generic TPU.json b/resources/profiles/Ratrig/filament/RatRig Generic TPU.json
index 4097e688a0..784537f231 100644
--- a/resources/profiles/Ratrig/filament/RatRig Generic TPU.json
+++ b/resources/profiles/Ratrig/filament/RatRig Generic TPU.json
@@ -31,6 +31,24 @@
"RatRig V-Core 3 500 0.4 nozzle",
"RatRig V-Minion 0.4 nozzle",
"RatRig V-Cast 0.4 nozzle",
- "RatRig V-Cast 0.6 nozzle"
+ "RatRig V-Cast 0.6 nozzle",
+ "RatRig V-Core 4 300 0.4 nozzle",
+ "RatRig V-Core 4 300 0.5 nozzle",
+ "RatRig V-Core 4 300 0.6 nozzle",
+ "RatRig V-Core 4 400 0.4 nozzle",
+ "RatRig V-Core 4 400 0.5 nozzle",
+ "RatRig V-Core 4 400 0.6 nozzle",
+ "RatRig V-Core 4 500 0.4 nozzle",
+ "RatRig V-Core 4 500 0.5 nozzle",
+ "RatRig V-Core 4 500 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.6 nozzle"
]
}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 300 0.4 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 300 0.4 nozzle.json
new file mode 100644
index 0000000000..ca065917b4
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 300 0.4 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 300 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 300",
+ "printer_variant": "0.4",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "printable_area": [
+ "0x0",
+ "300x0",
+ "300x300",
+ "0x300"
+ ],
+ "machine_max_speed_x": ["400", "400"],
+ "machine_max_speed_y": ["400", "400"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["10000", "10000"],
+ "machine_max_acceleration_y": ["10000", "10000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["5000", "5000"],
+ "machine_max_acceleration_extruding": ["10000", "10000"],
+ "machine_max_acceleration_retracting": ["10000", "10000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.06"],
+ "max_layer_height": ["0.3"],
+ "retract_lift_below": ["0.2"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "300",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 300 0.5 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 300 0.5 nozzle.json
new file mode 100644
index 0000000000..8f78b122fe
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 300 0.5 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 300 0.5 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 300",
+ "printer_variant": "0.5",
+ "nozzle_diameter": [
+ "0.5"
+ ],
+ "printable_area": [
+ "0x0",
+ "300x0",
+ "300x300",
+ "0x300"
+ ],
+ "machine_max_speed_x": ["400", "400"],
+ "machine_max_speed_y": ["400", "400"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["10000", "10000"],
+ "machine_max_acceleration_y": ["10000", "10000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["5000", "5000"],
+ "machine_max_acceleration_extruding": ["10000", "10000"],
+ "machine_max_acceleration_retracting": ["10000", "10000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.07"],
+ "max_layer_height": ["0.32"],
+ "retract_lift_below": ["0.2"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "300",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 300 0.6 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 300 0.6 nozzle.json
new file mode 100644
index 0000000000..1383d316a2
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 300 0.6 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 300 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 300",
+ "printer_variant": "0.6",
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "printable_area": [
+ "0x0",
+ "300x0",
+ "300x300",
+ "0x300"
+ ],
+ "machine_max_speed_x": ["400", "400"],
+ "machine_max_speed_y": ["400", "400"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["10000", "10000"],
+ "machine_max_acceleration_y": ["10000", "10000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["5000", "5000"],
+ "machine_max_acceleration_extruding": ["10000", "10000"],
+ "machine_max_acceleration_retracting": ["10000", "10000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.1"],
+ "max_layer_height": ["0.4"],
+ "retract_lift_below": ["0.3"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "300",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 300.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 300.json
new file mode 100644
index 0000000000..fbe0699647
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 300.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "RatRig V-Core 4 300",
+ "model_id": "V-Core_4_300",
+ "nozzle_diameter": "0.4;0.5;0.6",
+ "machine_tech": "FFF",
+ "family": "RatRig_V-Core",
+ "bed_model": "ratrig-vcore-bed-300.stl",
+ "bed_texture": "ratrig_logo.svg",
+ "hotend_model": "",
+ "default_materials": "RatRig Generic ABS;RatRig Generic PLA;RatRig Generic PLA-CF;RatRig Generic PETG;RatRig Generic TPU;RatRig Generic ASA;RatRig Generic PC;RatRig Generic PVA;RatRig Generic PA;RatRig Generic PA-CF"
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 400 0.4 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 400 0.4 nozzle.json
new file mode 100644
index 0000000000..4b065733f1
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 400 0.4 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 400 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 400",
+ "printer_variant": "0.4",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "printable_area": [
+ "0x0",
+ "400x0",
+ "400x400",
+ "0x400"
+ ],
+ "machine_max_speed_x": ["400", "400"],
+ "machine_max_speed_y": ["400", "400"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["10000", "10000"],
+ "machine_max_acceleration_y": ["10000", "10000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["5000", "5000"],
+ "machine_max_acceleration_extruding": ["10000", "10000"],
+ "machine_max_acceleration_retracting": ["10000", "10000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.06"],
+ "max_layer_height": ["0.3"],
+ "retract_lift_below": ["0.2"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "400",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 400 0.5 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 400 0.5 nozzle.json
new file mode 100644
index 0000000000..c6c81a73eb
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 400 0.5 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 400 0.5 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 400",
+ "printer_variant": "0.5",
+ "nozzle_diameter": [
+ "0.5"
+ ],
+ "printable_area": [
+ "0x0",
+ "400x0",
+ "400x400",
+ "0x400"
+ ],
+ "machine_max_speed_x": ["400", "400"],
+ "machine_max_speed_y": ["400", "400"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["10000", "10000"],
+ "machine_max_acceleration_y": ["10000", "10000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["5000", "5000"],
+ "machine_max_acceleration_extruding": ["10000", "10000"],
+ "machine_max_acceleration_retracting": ["10000", "10000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.07"],
+ "max_layer_height": ["0.32"],
+ "retract_lift_below": ["0.2"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "400",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 400 0.6 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 400 0.6 nozzle.json
new file mode 100644
index 0000000000..2efa2e53cf
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 400 0.6 nozzle.json
@@ -0,0 +1,53 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 400 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 400",
+ "printer_variant": "0.6",
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "printable_area": [
+ "0x0",
+ "400x0",
+ "400x400",
+ "0x400"
+ ],
+ "machine_max_speed_x": ["400", "400"],
+ "machine_max_speed_y": ["400", "400"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["10000", "10000"],
+ "machine_max_acceleration_y": ["10000", "10000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["5000", "5000"],
+ "machine_max_acceleration_extruding": ["10000", "10000"],
+ "machine_max_acceleration_retracting": ["10000", "10000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.1"],
+ "max_layer_height": ["0.4"],
+ "retract_lift_below": ["0.3"],
+ "retraction_length": ["2"],
+ "retraction_speed": ["40"],
+ "deretraction_speed": ["0"],
+ "retraction_minimum_travel": ["2"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "400",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 400.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 400.json
new file mode 100644
index 0000000000..a3f9c85191
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 400.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "RatRig V-Core 4 400",
+ "model_id": "V-Core_4_400",
+ "nozzle_diameter": "0.4;0.5;0.6",
+ "machine_tech": "FFF",
+ "family": "RatRig_V-Core",
+ "bed_model": "ratrig-vcore-bed-400.stl",
+ "bed_texture": "ratrig_logo.svg",
+ "hotend_model": "",
+ "default_materials": "RatRig Generic ABS;RatRig Generic PLA;RatRig Generic PLA-CF;RatRig Generic PETG;RatRig Generic TPU;RatRig Generic ASA;RatRig Generic PC;RatRig Generic PVA;RatRig Generic PA;RatRig Generic PA-CF"
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 500 0.4 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 500 0.4 nozzle.json
new file mode 100644
index 0000000000..e34c326e7f
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 500 0.4 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 500 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 500",
+ "printer_variant": "0.4",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "printable_area": [
+ "0x0",
+ "500x0",
+ "500x500",
+ "0x500"
+ ],
+ "machine_max_speed_x": ["400", "400"],
+ "machine_max_speed_y": ["400", "400"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["10000", "10000"],
+ "machine_max_acceleration_y": ["10000", "10000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["5000", "5000"],
+ "machine_max_acceleration_extruding": ["10000", "10000"],
+ "machine_max_acceleration_retracting": ["10000", "10000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.06"],
+ "max_layer_height": ["0.3"],
+ "retract_lift_below": ["0.2"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "500",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 500 0.5 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 500 0.5 nozzle.json
new file mode 100644
index 0000000000..6bc08fb473
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 500 0.5 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 500 0.5 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 500",
+ "printer_variant": "0.5",
+ "nozzle_diameter": [
+ "0.5"
+ ],
+ "printable_area": [
+ "0x0",
+ "500x0",
+ "500x500",
+ "0x500"
+ ],
+ "machine_max_speed_x": ["400", "400"],
+ "machine_max_speed_y": ["400", "400"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["10000", "10000"],
+ "machine_max_acceleration_y": ["10000", "10000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["5000", "5000"],
+ "machine_max_acceleration_extruding": ["10000", "10000"],
+ "machine_max_acceleration_retracting": ["10000", "10000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.07"],
+ "max_layer_height": ["0.32"],
+ "retract_lift_below": ["0.25"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "500",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 500 0.6 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 500 0.6 nozzle.json
new file mode 100644
index 0000000000..7c27538c58
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 500 0.6 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 500 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 500",
+ "printer_variant": "0.6",
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "printable_area": [
+ "0x0",
+ "500x0",
+ "500x500",
+ "0x500"
+ ],
+ "machine_max_speed_x": ["400", "400"],
+ "machine_max_speed_y": ["400", "400"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["10000", "10000"],
+ "machine_max_acceleration_y": ["10000", "10000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["5000", "5000"],
+ "machine_max_acceleration_extruding": ["10000", "10000"],
+ "machine_max_acceleration_retracting": ["10000", "10000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.1"],
+ "max_layer_height": ["0.4"],
+ "retract_lift_below": ["0.3"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "500",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 500.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 500.json
new file mode 100644
index 0000000000..2803355533
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 500.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "RatRig V-Core 4 500",
+ "model_id": "V-Core_4_500",
+ "nozzle_diameter": "0.4;0.5;0.6",
+ "machine_tech": "FFF",
+ "family": "RatRig_V-Core",
+ "bed_model": "ratrig-vcore-bed-500.stl",
+ "bed_texture": "ratrig_logo.svg",
+ "hotend_model": "",
+ "default_materials": "RatRig Generic ABS;RatRig Generic PLA;RatRig Generic PLA-CF;RatRig Generic PETG;RatRig Generic TPU;RatRig Generic ASA;RatRig Generic PC;RatRig Generic PVA;RatRig Generic PA;RatRig Generic PA-CF"
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 300 0.4 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 300 0.4 nozzle.json
new file mode 100644
index 0000000000..d72a3a5b2d
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 300 0.4 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 HYBRID 300",
+ "printer_variant": "0.4",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "printable_area": [
+ "0x0",
+ "300x0",
+ "300x300",
+ "0x300"
+ ],
+ "machine_max_speed_x": ["500", "500"],
+ "machine_max_speed_y": ["500", "500"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["20000", "20000"],
+ "machine_max_acceleration_y": ["20000", "20000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["20000", "20000"],
+ "machine_max_acceleration_extruding": ["20000", "20000"],
+ "machine_max_acceleration_retracting": ["20000", "20000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.06"],
+ "max_layer_height": ["0.3"],
+ "retract_lift_below": ["0.2"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "300",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 300 0.5 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 300 0.5 nozzle.json
new file mode 100644
index 0000000000..bf8651e3ff
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 300 0.5 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 HYBRID 300",
+ "printer_variant": "0.5",
+ "nozzle_diameter": [
+ "0.5"
+ ],
+ "printable_area": [
+ "0x0",
+ "300x0",
+ "300x300",
+ "0x300"
+ ],
+ "machine_max_speed_x": ["500", "500"],
+ "machine_max_speed_y": ["500", "500"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["20000", "20000"],
+ "machine_max_acceleration_y": ["20000", "20000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["20000", "20000"],
+ "machine_max_acceleration_extruding": ["20000", "20000"],
+ "machine_max_acceleration_retracting": ["20000", "20000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.07"],
+ "max_layer_height": ["0.32"],
+ "retract_lift_below": ["0.2"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "300",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 300 0.6 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 300 0.6 nozzle.json
new file mode 100644
index 0000000000..e40e4beaf1
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 300 0.6 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 HYBRID 300",
+ "printer_variant": "0.6",
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "printable_area": [
+ "0x0",
+ "300x0",
+ "300x300",
+ "0x300"
+ ],
+ "machine_max_speed_x": ["500", "500"],
+ "machine_max_speed_y": ["500", "500"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["20000", "20000"],
+ "machine_max_acceleration_y": ["20000", "20000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["20000", "20000"],
+ "machine_max_acceleration_extruding": ["20000", "20000"],
+ "machine_max_acceleration_retracting": ["20000", "20000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.1"],
+ "max_layer_height": ["0.4"],
+ "retract_lift_below": ["0.3"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "300",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 300.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 300.json
new file mode 100644
index 0000000000..d1016f2662
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 300.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "RatRig V-Core 4 HYBRID 300",
+ "model_id": "V-Core_4_HYBRID_300",
+ "nozzle_diameter": "0.4;0.5;0.6",
+ "machine_tech": "FFF",
+ "family": "RatRig_V-Core",
+ "bed_model": "ratrig-vcore-bed-300.stl",
+ "bed_texture": "ratrig_logo.svg",
+ "hotend_model": "",
+ "default_materials": "RatRig Generic ABS;RatRig Generic PLA;RatRig Generic PLA-CF;RatRig Generic PETG;RatRig Generic TPU;RatRig Generic ASA;RatRig Generic PC;RatRig Generic PVA;RatRig Generic PA;RatRig Generic PA-CF"
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 400 0.4 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 400 0.4 nozzle.json
new file mode 100644
index 0000000000..d6e8b028fd
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 400 0.4 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 HYBRID 400",
+ "printer_variant": "0.4",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "printable_area": [
+ "0x0",
+ "400x0",
+ "400x400",
+ "0x400"
+ ],
+ "machine_max_speed_x": ["500", "500"],
+ "machine_max_speed_y": ["500", "500"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["20000", "20000"],
+ "machine_max_acceleration_y": ["20000", "20000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["20000", "20000"],
+ "machine_max_acceleration_extruding": ["20000", "20000"],
+ "machine_max_acceleration_retracting": ["20000", "20000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.06"],
+ "max_layer_height": ["0.3"],
+ "retract_lift_below": ["0.2"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "400",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 400 0.5 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 400 0.5 nozzle.json
new file mode 100644
index 0000000000..29d095b567
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 400 0.5 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 HYBRID 400",
+ "printer_variant": "0.5",
+ "nozzle_diameter": [
+ "0.5"
+ ],
+ "printable_area": [
+ "0x0",
+ "400x0",
+ "400x400",
+ "0x400"
+ ],
+ "machine_max_speed_x": ["500", "500"],
+ "machine_max_speed_y": ["500", "500"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["20000", "20000"],
+ "machine_max_acceleration_y": ["20000", "20000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["20000", "20000"],
+ "machine_max_acceleration_extruding": ["20000", "20000"],
+ "machine_max_acceleration_retracting": ["20000", "20000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.07"],
+ "max_layer_height": ["0.32"],
+ "retract_lift_below": ["0.2"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "400",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 400 0.6 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 400 0.6 nozzle.json
new file mode 100644
index 0000000000..95e1bbf29c
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 400 0.6 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 HYBRID 400",
+ "printer_variant": "0.6",
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "printable_area": [
+ "0x0",
+ "400x0",
+ "400x400",
+ "0x400"
+ ],
+ "machine_max_speed_x": ["500", "500"],
+ "machine_max_speed_y": ["500", "500"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["20000", "20000"],
+ "machine_max_acceleration_y": ["20000", "20000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["20000", "20000"],
+ "machine_max_acceleration_extruding": ["20000", "20000"],
+ "machine_max_acceleration_retracting": ["20000", "20000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.1"],
+ "max_layer_height": ["0.4"],
+ "retract_lift_below": ["0.3"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "400",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 400.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 400.json
new file mode 100644
index 0000000000..dce309372c
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 400.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "RatRig V-Core 4 HYBRID 400",
+ "model_id": "V-Core_4_HYBRID_400",
+ "nozzle_diameter": "0.4;0.5;0.6",
+ "machine_tech": "FFF",
+ "family": "RatRig_V-Core",
+ "bed_model": "ratrig-vcore-bed-400.stl",
+ "bed_texture": "ratrig_logo.svg",
+ "hotend_model": "",
+ "default_materials": "RatRig Generic ABS;RatRig Generic PLA;RatRig Generic PLA-CF;RatRig Generic PETG;RatRig Generic TPU;RatRig Generic ASA;RatRig Generic PC;RatRig Generic PVA;RatRig Generic PA;RatRig Generic PA-CF"
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 500 0.4 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 500 0.4 nozzle.json
new file mode 100644
index 0000000000..d2ded5365f
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 500 0.4 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 HYBRID 500 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 HYBRID 500",
+ "printer_variant": "0.4",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "printable_area": [
+ "0x0",
+ "500x0",
+ "500x500",
+ "0x500"
+ ],
+ "machine_max_speed_x": ["500", "500"],
+ "machine_max_speed_y": ["500", "500"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["20000", "20000"],
+ "machine_max_acceleration_y": ["20000", "20000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["20000", "20000"],
+ "machine_max_acceleration_extruding": ["20000", "20000"],
+ "machine_max_acceleration_retracting": ["20000", "20000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.06"],
+ "max_layer_height": ["0.3"],
+ "retract_lift_below": ["0.2"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "500",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 500 0.5 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 500 0.5 nozzle.json
new file mode 100644
index 0000000000..83428f708b
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 500 0.5 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 HYBRID 500 0.5 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 HYBRID 500",
+ "printer_variant": "0.5",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "printable_area": [
+ "0x0",
+ "500x0",
+ "500x500",
+ "0x500"
+ ],
+ "machine_max_speed_x": ["500", "500"],
+ "machine_max_speed_y": ["500", "500"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["20000", "20000"],
+ "machine_max_acceleration_y": ["20000", "20000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["20000", "20000"],
+ "machine_max_acceleration_extruding": ["20000", "20000"],
+ "machine_max_acceleration_retracting": ["20000", "20000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.07"],
+ "max_layer_height": ["0.32"],
+ "retract_lift_below": ["0.25"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "500",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 500 0.6 nozzle.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 500 0.6 nozzle.json
new file mode 100644
index 0000000000..38797ef1e2
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 500 0.6 nozzle.json
@@ -0,0 +1,52 @@
+{
+ "type": "machine",
+ "setting_id": "GM002",
+ "name": "RatRig V-Core 4 HYBRID 500 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_klipper_common",
+ "printer_model": "RatRig V-Core 4 HYBRID 500",
+ "printer_variant": "0.6",
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "printable_area": [
+ "0x0",
+ "500x0",
+ "500x500",
+ "0x500"
+ ],
+ "machine_max_speed_x": ["500", "500"],
+ "machine_max_speed_y": ["500", "500"],
+ "machine_max_speed_z": ["50", "50"],
+ "machine_max_speed_e": ["120", "120"],
+ "machine_max_acceleration_x": ["20000", "20000"],
+ "machine_max_acceleration_y": ["20000", "20000"],
+ "machine_max_acceleration_z": ["200", "200"],
+ "machine_max_acceleration_e": ["20000", "20000"],
+ "machine_max_acceleration_extruding": ["20000", "20000"],
+ "machine_max_acceleration_retracting": ["20000", "20000"],
+ "machine_max_jerk_x": ["5", "5"],
+ "machine_max_jerk_y": ["5", "5"],
+ "machine_max_jerk_z": ["0.4", "0.4"],
+ "machine_max_jerk_e": ["5", "5"],
+ "min_layer_height": ["0.1"],
+ "max_layer_height": ["0.4"],
+ "retract_lift_below": ["0.3"],
+ "retraction_length": ["0.8"],
+ "retraction_speed": ["120"],
+ "deretraction_speed": ["120"],
+ "wipe": ["0"],
+ "retract_before_wipe": ["0%"],
+ "machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nTOTAL_LAYER_COUNT={total_layer_count} X0={first_layer_print_min[0]} Y0={first_layer_print_min[1]} X1={first_layer_print_max[0]} Y1={first_layer_print_max[1]}",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nG92 E0\n_ON_LAYER_CHANGE LAYER={layer_num + 1}",
+ "before_layer_change_gcode": ";[layer_z]",
+ "change_filament_gcode": "M600",
+ "machine_pause_gcode": "M601",
+ "printing_by_object_gcode": ";BETWEEN_OBJECTS\nG92 E0",
+ "printable_height": "500",
+ "thumbnails": [
+ "64x64/PNG",
+ "400x300/PNG"
+ ]
+}
diff --git a/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 500.json b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 500.json
new file mode 100644
index 0000000000..0c27eeea8d
--- /dev/null
+++ b/resources/profiles/Ratrig/machine/RatRig V-Core 4 HYBRID 500.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "RatRig V-Core 4 HYBRID 500",
+ "model_id": "V-Core_4_HYBRID_500",
+ "nozzle_diameter": "0.4;0.5;0.6",
+ "machine_tech": "FFF",
+ "family": "RatRig_V-Core",
+ "bed_model": "ratrig-vcore-bed-500.stl",
+ "bed_texture": "ratrig_logo.svg",
+ "hotend_model": "",
+ "default_materials": "RatRig Generic ABS;RatRig Generic PLA;RatRig Generic PLA-CF;RatRig Generic PETG;RatRig Generic TPU;RatRig Generic ASA;RatRig Generic PC;RatRig Generic PVA;RatRig Generic PA;RatRig Generic PA-CF"
+}
diff --git a/resources/profiles/Ratrig/process/0.08mm Extra Fine @RatRig.json b/resources/profiles/Ratrig/process/0.08mm Extra Fine @RatRig.json
index b0c4119cd1..6e0634b6ca 100644
--- a/resources/profiles/Ratrig/process/0.08mm Extra Fine @RatRig.json
+++ b/resources/profiles/Ratrig/process/0.08mm Extra Fine @RatRig.json
@@ -7,5 +7,14 @@
"inherits": "fdm_process_ratrig_common",
"layer_height": "0.08",
"bottom_shell_layers": "7",
- "top_shell_layers": "9"
+ "top_shell_layers": "9",
+ "compatible_printers": [
+ "RatRig V-Core 3 200 0.4 nozzle",
+ "RatRig V-Core 3 300 0.4 nozzle",
+ "RatRig V-Core 3 400 0.4 nozzle",
+ "RatRig V-Core 3 500 0.4 nozzle",
+ "RatRig V-Minion 0.4 nozzle",
+ "RatRig V-Cast 0.4 nozzle",
+ "RatRig V-Cast 0.6 nozzle"
+ ]
}
diff --git a/resources/profiles/Ratrig/process/0.12mm Fine @RatRig.json b/resources/profiles/Ratrig/process/0.12mm Fine @RatRig.json
index df5043532b..3ccac5be9b 100644
--- a/resources/profiles/Ratrig/process/0.12mm Fine @RatRig.json
+++ b/resources/profiles/Ratrig/process/0.12mm Fine @RatRig.json
@@ -7,5 +7,14 @@
"inherits": "fdm_process_ratrig_common",
"layer_height": "0.12",
"bottom_shell_layers": "5",
- "top_shell_layers": "6"
+ "top_shell_layers": "6",
+ "compatible_printers": [
+ "RatRig V-Core 3 200 0.4 nozzle",
+ "RatRig V-Core 3 300 0.4 nozzle",
+ "RatRig V-Core 3 400 0.4 nozzle",
+ "RatRig V-Core 3 500 0.4 nozzle",
+ "RatRig V-Minion 0.4 nozzle",
+ "RatRig V-Cast 0.4 nozzle",
+ "RatRig V-Cast 0.6 nozzle"
+ ]
}
diff --git a/resources/profiles/Ratrig/process/0.15mm Optimal @RatRig.json b/resources/profiles/Ratrig/process/0.15mm Optimal @RatRig.json
index d9404d259a..80e1c1274e 100644
--- a/resources/profiles/Ratrig/process/0.15mm Optimal @RatRig.json
+++ b/resources/profiles/Ratrig/process/0.15mm Optimal @RatRig.json
@@ -7,5 +7,14 @@
"inherits": "fdm_process_ratrig_common",
"bottom_shell_layers": "4",
"top_shell_layers": "5",
- "layer_height": "0.15"
+ "layer_height": "0.15",
+ "compatible_printers": [
+ "RatRig V-Core 3 200 0.4 nozzle",
+ "RatRig V-Core 3 300 0.4 nozzle",
+ "RatRig V-Core 3 400 0.4 nozzle",
+ "RatRig V-Core 3 500 0.4 nozzle",
+ "RatRig V-Minion 0.4 nozzle",
+ "RatRig V-Cast 0.4 nozzle",
+ "RatRig V-Cast 0.6 nozzle"
+ ]
}
diff --git a/resources/profiles/Ratrig/process/0.20mm Quality @RatRig V-Core 4 0.4.json b/resources/profiles/Ratrig/process/0.20mm Quality @RatRig V-Core 4 0.4.json
new file mode 100644
index 0000000000..b65a4b50cd
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.20mm Quality @RatRig V-Core 4 0.4.json
@@ -0,0 +1,62 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.20mm Quality @RatRig V-Core 4 0.4",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.2",
+ "inital_layer_height": "0.3",
+ "wall_count": "4",
+ "top_shell_layers": "4",
+ "bottom_shell_layers": "3",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "25%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "skirt_loops": "2",
+ "skirt_distance": "10",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "350",
+ "small_perimeter_speed": "250",
+ "outer_wall_speed": "250",
+ "sparse_infill_speed": "400",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "50",
+ "gap_infill_speed": "200",
+ "travel_speed": "500",
+ "initial_layer_speed": "50",
+ "outer_wall_acceleration": "4000",
+ "inner_wall_acceleration": "8000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "10000",
+ "bridge_acceleration": "2500",
+ "initial_layer_acceleration": "1500",
+ "travel_acceleration": "10000",
+ "default_acceleration": "10000",
+ "line_width": "0.45",
+ "initial_layer_line_width": "0.5",
+ "inner_wall_line_width": "0.45",
+ "outer_wall_line_width": "0.45",
+ "sparse_infill_line_width": "0.45",
+ "internal_solid_infill_line_width": "0.45",
+ "top_surface_line_width": "0.45",
+ "support_line_width": "0.45",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 300 0.4 nozzle",
+ "RatRig V-Core 4 400 0.4 nozzle",
+ "RatRig V-Core 4 500 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.20mm Quality @RatRig V-Core 4 0.5.json b/resources/profiles/Ratrig/process/0.20mm Quality @RatRig V-Core 4 0.5.json
new file mode 100644
index 0000000000..1bc3d680c8
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.20mm Quality @RatRig V-Core 4 0.5.json
@@ -0,0 +1,62 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.20mm Quality @RatRig V-Core 4 0.5",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.2",
+ "inital_layer_height": "0.3",
+ "wall_count": "4",
+ "top_shell_layers": "4",
+ "bottom_shell_layers": "3",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "25%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "skirt_loops": "2",
+ "skirt_distance": "10",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "350",
+ "small_perimeter_speed": "250",
+ "outer_wall_speed": "250",
+ "sparse_infill_speed": "400",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "50",
+ "gap_infill_speed": "200",
+ "travel_speed": "500",
+ "initial_layer_speed": "50",
+ "outer_wall_acceleration": "4000",
+ "inner_wall_acceleration": "8000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "10000",
+ "bridge_acceleration": "2500",
+ "initial_layer_acceleration": "1500",
+ "travel_acceleration": "10000",
+ "default_acceleration": "10000",
+ "line_width": "0.55",
+ "initial_layer_line_width": "0.7",
+ "inner_wall_line_width": "0.55",
+ "outer_wall_line_width": "0.52",
+ "sparse_infill_line_width": "0.55",
+ "internal_solid_infill_line_width": "0.55",
+ "top_surface_line_width": "0.55",
+ "support_line_width": "0.55",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 300 0.5 nozzle",
+ "RatRig V-Core 4 400 0.5 nozzle",
+ "RatRig V-Core 4 500 0.5 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.20mm Quality @RatRig V-Core 4 HYBRID 0.4.json b/resources/profiles/Ratrig/process/0.20mm Quality @RatRig V-Core 4 HYBRID 0.4.json
new file mode 100644
index 0000000000..4027e25c7f
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.20mm Quality @RatRig V-Core 4 HYBRID 0.4.json
@@ -0,0 +1,62 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.20mm Quality @RatRig V-Core 4 HYBRID 0.4",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.2",
+ "inital_layer_height": "0.3",
+ "wall_count": "4",
+ "top_shell_layers": "4",
+ "bottom_shell_layers": "3",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "25%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "skirt_loops": "2",
+ "skirt_distance": "10",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "300",
+ "small_perimeter_speed": "250",
+ "outer_wall_speed": "250",
+ "sparse_infill_speed": "400",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "50",
+ "gap_infill_speed": "200",
+ "travel_speed": "600",
+ "initial_layer_speed": "80",
+ "outer_wall_acceleration": "8000",
+ "inner_wall_acceleration": "10000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "15000",
+ "bridge_acceleration": "5000",
+ "initial_layer_acceleration": "2500",
+ "travel_acceleration": "15000",
+ "default_acceleration": "15000",
+ "line_width": "0.45",
+ "initial_layer_line_width": "0.5",
+ "inner_wall_line_width": "0.45",
+ "outer_wall_line_width": "0.45",
+ "sparse_infill_line_width": "0.45",
+ "internal_solid_infill_line_width": "0.45",
+ "top_surface_line_width": "0.45",
+ "support_line_width": "0.45",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.20mm Quality @RatRig V-Core 4 HYBRID 0.5.json b/resources/profiles/Ratrig/process/0.20mm Quality @RatRig V-Core 4 HYBRID 0.5.json
new file mode 100644
index 0000000000..be118426d1
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.20mm Quality @RatRig V-Core 4 HYBRID 0.5.json
@@ -0,0 +1,62 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.20mm Quality @RatRig V-Core 4 HYBRID 0.5",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.2",
+ "inital_layer_height": "0.3",
+ "wall_count": "4",
+ "top_shell_layers": "4",
+ "bottom_shell_layers": "3",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "25%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "skirt_loops": "2",
+ "skirt_distance": "10",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "300",
+ "small_perimeter_speed": "250",
+ "outer_wall_speed": "250",
+ "sparse_infill_speed": "400",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "50",
+ "gap_infill_speed": "200",
+ "travel_speed": "600",
+ "initial_layer_speed": "80",
+ "outer_wall_acceleration": "8000",
+ "inner_wall_acceleration": "10000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "15000",
+ "bridge_acceleration": "5000",
+ "initial_layer_acceleration": "2500",
+ "travel_acceleration": "15000",
+ "default_acceleration": "15000",
+ "line_width": "0.55",
+ "initial_layer_line_width": "0.7",
+ "inner_wall_line_width": "0.55",
+ "outer_wall_line_width": "0.52",
+ "sparse_infill_line_width": "0.55",
+ "internal_solid_infill_line_width": "0.55",
+ "top_surface_line_width": "0.55",
+ "support_line_width": "0.55",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.5 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.20mm Standard @RatRig.json b/resources/profiles/Ratrig/process/0.20mm Standard @RatRig.json
index eb73d2b3f6..4d27bb0b72 100644
--- a/resources/profiles/Ratrig/process/0.20mm Standard @RatRig.json
+++ b/resources/profiles/Ratrig/process/0.20mm Standard @RatRig.json
@@ -7,5 +7,14 @@
"instantiation": "true",
"layer_height": "0.2",
"bottom_shell_layers": "3",
- "top_shell_layers": "4"
+ "top_shell_layers": "4",
+ "compatible_printers": [
+ "RatRig V-Core 3 200 0.4 nozzle",
+ "RatRig V-Core 3 300 0.4 nozzle",
+ "RatRig V-Core 3 400 0.4 nozzle",
+ "RatRig V-Core 3 500 0.4 nozzle",
+ "RatRig V-Minion 0.4 nozzle",
+ "RatRig V-Cast 0.4 nozzle",
+ "RatRig V-Cast 0.6 nozzle"
+ ]
}
diff --git a/resources/profiles/Ratrig/process/0.24mm Draft @RatRig.json b/resources/profiles/Ratrig/process/0.24mm Draft @RatRig.json
index 827a3a4800..253cbc11f5 100644
--- a/resources/profiles/Ratrig/process/0.24mm Draft @RatRig.json
+++ b/resources/profiles/Ratrig/process/0.24mm Draft @RatRig.json
@@ -8,5 +8,14 @@
"layer_height": "0.24",
"top_surface_line_width": "0.45",
"bottom_shell_layers": "3",
- "top_shell_layers": "4"
+ "top_shell_layers": "4",
+ "compatible_printers": [
+ "RatRig V-Core 3 200 0.4 nozzle",
+ "RatRig V-Core 3 300 0.4 nozzle",
+ "RatRig V-Core 3 400 0.4 nozzle",
+ "RatRig V-Core 3 500 0.4 nozzle",
+ "RatRig V-Minion 0.4 nozzle",
+ "RatRig V-Cast 0.4 nozzle",
+ "RatRig V-Cast 0.6 nozzle"
+ ]
}
diff --git a/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 0.4.json b/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 0.4.json
new file mode 100644
index 0000000000..3bf5a1faa2
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 0.4.json
@@ -0,0 +1,62 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.25mm Quality Speed @RatRig V-Core 4 0.4",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.25",
+ "inital_layer_height": "0.3",
+ "wall_count": "4",
+ "top_shell_layers": "4",
+ "bottom_shell_layers": "3",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "25%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "skirt_loops": "2",
+ "skirt_distance": "10",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "350",
+ "small_perimeter_speed": "250",
+ "outer_wall_speed": "250",
+ "sparse_infill_speed": "400",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "50",
+ "gap_infill_speed": "200",
+ "travel_speed": "500",
+ "initial_layer_speed": "50",
+ "outer_wall_acceleration": "4000",
+ "inner_wall_acceleration": "8000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "10000",
+ "bridge_acceleration": "2500",
+ "initial_layer_acceleration": "1500",
+ "travel_acceleration": "10000",
+ "default_acceleration": "10000",
+ "line_width": "0.45",
+ "initial_layer_line_width": "0.5",
+ "inner_wall_line_width": "0.45",
+ "outer_wall_line_width": "0.45",
+ "sparse_infill_line_width": "0.45",
+ "internal_solid_infill_line_width": "0.45",
+ "top_surface_line_width": "0.45",
+ "support_line_width": "0.45",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 300 0.4 nozzle",
+ "RatRig V-Core 4 400 0.4 nozzle",
+ "RatRig V-Core 4 500 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 0.5.json b/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 0.5.json
new file mode 100644
index 0000000000..5f9277cd55
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 0.5.json
@@ -0,0 +1,62 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.25mm Quality Speed @RatRig V-Core 4 0.5",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.25",
+ "inital_layer_height": "0.3",
+ "wall_count": "4",
+ "top_shell_layers": "4",
+ "bottom_shell_layers": "3",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "25%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "skirt_loops": "2",
+ "skirt_distance": "10",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "350",
+ "small_perimeter_speed": "250",
+ "outer_wall_speed": "250",
+ "sparse_infill_speed": "400",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "50",
+ "gap_infill_speed": "200",
+ "travel_speed": "500",
+ "initial_layer_speed": "50",
+ "outer_wall_acceleration": "4000",
+ "inner_wall_acceleration": "8000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "10000",
+ "bridge_acceleration": "2500",
+ "initial_layer_acceleration": "1500",
+ "travel_acceleration": "10000",
+ "default_acceleration": "10000",
+ "line_width": "0.55",
+ "initial_layer_line_width": "0.7",
+ "inner_wall_line_width": "0.55",
+ "outer_wall_line_width": "0.52",
+ "sparse_infill_line_width": "0.55",
+ "internal_solid_infill_line_width": "0.55",
+ "top_surface_line_width": "0.55",
+ "support_line_width": "0.55",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 300 0.5 nozzle",
+ "RatRig V-Core 4 400 0.5 nozzle",
+ "RatRig V-Core 4 500 0.5 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 0.6.json b/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 0.6.json
new file mode 100644
index 0000000000..785ec5e762
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 0.6.json
@@ -0,0 +1,62 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.25mm Quality Speed @RatRig V-Core 4 0.6",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.25",
+ "inital_layer_height": "0.35",
+ "wall_count": "3",
+ "top_shell_layers": "4",
+ "bottom_shell_layers": "3",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "25%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "skirt_loops": "2",
+ "skirt_distance": "10",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "350",
+ "small_perimeter_speed": "250",
+ "outer_wall_speed": "250",
+ "sparse_infill_speed": "400",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "50",
+ "gap_infill_speed": "200",
+ "travel_speed": "500",
+ "initial_layer_speed": "50",
+ "outer_wall_acceleration": "4000",
+ "inner_wall_acceleration": "8000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "10000",
+ "bridge_acceleration": "2500",
+ "initial_layer_acceleration": "1500",
+ "travel_acceleration": "10000",
+ "default_acceleration": "10000",
+ "line_width": "0.65",
+ "initial_layer_line_width": "0.84",
+ "inner_wall_line_width": "0.65",
+ "outer_wall_line_width": "0.65",
+ "sparse_infill_line_width": "0.65",
+ "internal_solid_infill_line_width": "0.65",
+ "top_surface_line_width": "0.65",
+ "support_line_width": "0.65",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 300 0.6 nozzle",
+ "RatRig V-Core 4 400 0.6 nozzle",
+ "RatRig V-Core 4 500 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.4.json b/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.4.json
new file mode 100644
index 0000000000..24a7497b61
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.4.json
@@ -0,0 +1,62 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.4",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.25",
+ "inital_layer_height": "0.3",
+ "wall_count": "4",
+ "top_shell_layers": "4",
+ "bottom_shell_layers": "3",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "25%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "skirt_loops": "2",
+ "skirt_distance": "10",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "300",
+ "small_perimeter_speed": "250",
+ "outer_wall_speed": "250",
+ "sparse_infill_speed": "400",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "50",
+ "gap_infill_speed": "200",
+ "travel_speed": "600",
+ "initial_layer_speed": "80",
+ "outer_wall_acceleration": "8000",
+ "inner_wall_acceleration": "10000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "15000",
+ "bridge_acceleration": "5000",
+ "initial_layer_acceleration": "2500",
+ "travel_acceleration": "15000",
+ "default_acceleration": "15000",
+ "line_width": "0.45",
+ "initial_layer_line_width": "0.5",
+ "inner_wall_line_width": "0.45",
+ "outer_wall_line_width": "0.45",
+ "sparse_infill_line_width": "0.45",
+ "internal_solid_infill_line_width": "0.45",
+ "top_surface_line_width": "0.45",
+ "support_line_width": "0.45",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "RatRig V-Core 4 HYBIRD 500 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.5.json b/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.5.json
new file mode 100644
index 0000000000..dbf3f1e9e4
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.5.json
@@ -0,0 +1,62 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.5",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.25",
+ "inital_layer_height": "0.3",
+ "wall_count": "4",
+ "top_shell_layers": "4",
+ "bottom_shell_layers": "3",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "25%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "skirt_loops": "2",
+ "skirt_distance": "10",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "300",
+ "small_perimeter_speed": "250",
+ "outer_wall_speed": "250",
+ "sparse_infill_speed": "400",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "50",
+ "gap_infill_speed": "200",
+ "travel_speed": "600",
+ "initial_layer_speed": "80",
+ "outer_wall_acceleration": "8000",
+ "inner_wall_acceleration": "10000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "15000",
+ "bridge_acceleration": "5000",
+ "initial_layer_acceleration": "2500",
+ "travel_acceleration": "15000",
+ "default_acceleration": "15000",
+ "line_width": "0.55",
+ "initial_layer_line_width": "0.7",
+ "inner_wall_line_width": "0.55",
+ "outer_wall_line_width": "0.52",
+ "sparse_infill_line_width": "0.55",
+ "internal_solid_infill_line_width": "0.55",
+ "top_surface_line_width": "0.55",
+ "support_line_width": "0.55",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "RatRig V-Core 4 HYBIRD 500 0.5 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.6.json b/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.6.json
new file mode 100644
index 0000000000..975e82da8a
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.6.json
@@ -0,0 +1,62 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.6",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.25",
+ "inital_layer_height": "0.3",
+ "wall_count": "4",
+ "top_shell_layers": "4",
+ "bottom_shell_layers": "3",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "25%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "skirt_loops": "2",
+ "skirt_distance": "10",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "300",
+ "small_perimeter_speed": "250",
+ "outer_wall_speed": "250",
+ "sparse_infill_speed": "400",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "50",
+ "gap_infill_speed": "200",
+ "travel_speed": "600",
+ "initial_layer_speed": "80",
+ "outer_wall_acceleration": "8000",
+ "inner_wall_acceleration": "10000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "15000",
+ "bridge_acceleration": "5000",
+ "initial_layer_acceleration": "2500",
+ "travel_acceleration": "15000",
+ "default_acceleration": "15000",
+ "line_width": "0.65",
+ "initial_layer_line_width": "0.84",
+ "inner_wall_line_width": "0.65",
+ "outer_wall_line_width": "0.65",
+ "sparse_infill_line_width": "0.65",
+ "internal_solid_infill_line_width": "0.65",
+ "top_surface_line_width": "0.65",
+ "support_line_width": "0.65",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "RatRig V-Core 4 HYBIRD 500 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 0.4.json b/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 0.4.json
new file mode 100644
index 0000000000..c14483511d
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 0.4.json
@@ -0,0 +1,60 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.25mm Speed @RatRig V-Core 4 0.4",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.25",
+ "inital_layer_height": "0.3",
+ "wall_count": "2",
+ "top_shell_layers": "3",
+ "bottom_shell_layers": "2",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "10%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "400",
+ "small_perimeter_speed": "350",
+ "outer_wall_speed": "400",
+ "sparse_infill_speed": "500",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "150",
+ "gap_infill_speed": "200",
+ "travel_speed": "600",
+ "initial_layer_speed": "200",
+ "outer_wall_acceleration": "8000",
+ "inner_wall_acceleration": "10000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "10000",
+ "bridge_acceleration": "5000",
+ "initial_layer_acceleration": "2500",
+ "travel_acceleration": "15000",
+ "default_acceleration": "10000",
+ "line_width": "0.45",
+ "initial_layer_line_width": "0.5",
+ "inner_wall_line_width": "0.45",
+ "outer_wall_line_width": "0.45",
+ "sparse_infill_line_width": "0.45",
+ "internal_solid_infill_line_width": "0.45",
+ "top_surface_line_width": "0.45",
+ "support_line_width": "0.45",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 300 0.4 nozzle",
+ "RatRig V-Core 4 400 0.4 nozzle",
+ "RatRig V-Core 4 500 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 0.5.json b/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 0.5.json
new file mode 100644
index 0000000000..c720ad9ad1
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 0.5.json
@@ -0,0 +1,60 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.25mm Speed @RatRig V-Core 4 0.5",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.25",
+ "inital_layer_height": "0.3",
+ "wall_count": "2",
+ "top_shell_layers": "3",
+ "bottom_shell_layers": "2",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "10%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "400",
+ "small_perimeter_speed": "350",
+ "outer_wall_speed": "400",
+ "sparse_infill_speed": "500",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "150",
+ "gap_infill_speed": "200",
+ "travel_speed": "600",
+ "initial_layer_speed": "200",
+ "outer_wall_acceleration": "8000",
+ "inner_wall_acceleration": "10000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "10000",
+ "bridge_acceleration": "5000",
+ "initial_layer_acceleration": "2500",
+ "travel_acceleration": "15000",
+ "default_acceleration": "10000",
+ "line_width": "0.55",
+ "initial_layer_line_width": "0.7",
+ "inner_wall_line_width": "0.55",
+ "outer_wall_line_width": "0.52",
+ "sparse_infill_line_width": "0.55",
+ "internal_solid_infill_line_width": "0.55",
+ "top_surface_line_width": "0.55",
+ "support_line_width": "0.55",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 300 0.5 nozzle",
+ "RatRig V-Core 4 400 0.5 nozzle",
+ "RatRig V-Core 4 500 0.5 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 0.6.json b/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 0.6.json
new file mode 100644
index 0000000000..1ff1df93c8
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 0.6.json
@@ -0,0 +1,60 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.25mm Speed @RatRig V-Core 4 0.6",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.25",
+ "inital_layer_height": "0.3",
+ "wall_count": "2",
+ "top_shell_layers": "3",
+ "bottom_shell_layers": "2",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "10%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "400",
+ "small_perimeter_speed": "350",
+ "outer_wall_speed": "400",
+ "sparse_infill_speed": "500",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "150",
+ "gap_infill_speed": "200",
+ "travel_speed": "600",
+ "initial_layer_speed": "200",
+ "outer_wall_acceleration": "8000",
+ "inner_wall_acceleration": "10000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "10000",
+ "bridge_acceleration": "5000",
+ "initial_layer_acceleration": "2500",
+ "travel_acceleration": "15000",
+ "default_acceleration": "10000",
+ "line_width": "0.45",
+ "initial_layer_line_width": "0.5",
+ "inner_wall_line_width": "0.45",
+ "outer_wall_line_width": "0.45",
+ "sparse_infill_line_width": "0.45",
+ "internal_solid_infill_line_width": "0.45",
+ "top_surface_line_width": "0.45",
+ "support_line_width": "0.45",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 300 0.6 nozzle",
+ "RatRig V-Core 4 400 0.6 nozzle",
+ "RatRig V-Core 4 500 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 HYBRID 0.4.json b/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 HYBRID 0.4.json
new file mode 100644
index 0000000000..c277f10ff3
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 HYBRID 0.4.json
@@ -0,0 +1,60 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.25mm Speed @RatRig V-Core 4 HYBRID 0.4",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.25",
+ "inital_layer_height": "0.3",
+ "wall_count": "2",
+ "top_shell_layers": "3",
+ "bottom_shell_layers": "2",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "10%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "500",
+ "small_perimeter_speed": "500",
+ "outer_wall_speed": "500",
+ "sparse_infill_speed": "500",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "150",
+ "gap_infill_speed": "200",
+ "travel_speed": "800",
+ "initial_layer_speed": "200",
+ "outer_wall_acceleration": "15000",
+ "inner_wall_acceleration": "20000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "20000",
+ "bridge_acceleration": "5000",
+ "initial_layer_acceleration": "2500",
+ "travel_acceleration": "10000",
+ "default_acceleration": "20000",
+ "line_width": "0.45",
+ "initial_layer_line_width": "0.5",
+ "inner_wall_line_width": "0.45",
+ "outer_wall_line_width": "0.45",
+ "sparse_infill_line_width": "0.45",
+ "internal_solid_infill_line_width": "0.45",
+ "top_surface_line_width": "0.45",
+ "support_line_width": "0.45",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 HYBRID 300 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.4 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 HYBRID 0.5.json b/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 HYBRID 0.5.json
new file mode 100644
index 0000000000..d9351ba3b1
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 HYBRID 0.5.json
@@ -0,0 +1,60 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.25mm Speed @RatRig V-Core 4 HYBRID 0.5",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.25",
+ "inital_layer_height": "0.3",
+ "wall_count": "2",
+ "top_shell_layers": "3",
+ "bottom_shell_layers": "2",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "10%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "500",
+ "small_perimeter_speed": "500",
+ "outer_wall_speed": "500",
+ "sparse_infill_speed": "500",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "150",
+ "gap_infill_speed": "200",
+ "travel_speed": "800",
+ "initial_layer_speed": "200",
+ "outer_wall_acceleration": "15000",
+ "inner_wall_acceleration": "20000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "20000",
+ "bridge_acceleration": "5000",
+ "initial_layer_acceleration": "2500",
+ "travel_acceleration": "10000",
+ "default_acceleration": "20000",
+ "line_width": "0.45",
+ "initial_layer_line_width": "0.5",
+ "inner_wall_line_width": "0.45",
+ "outer_wall_line_width": "0.45",
+ "sparse_infill_line_width": "0.45",
+ "internal_solid_infill_line_width": "0.45",
+ "top_surface_line_width": "0.45",
+ "support_line_width": "0.45",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 HYBRID 300 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.5 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.5 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 HYBRID 0.6.json b/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 HYBRID 0.6.json
new file mode 100644
index 0000000000..00d6c2113f
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.25mm Speed @RatRig V-Core 4 HYBRID 0.6.json
@@ -0,0 +1,60 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.25mm Speed @RatRig V-Core 4 HYBRID 0.6",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.25",
+ "inital_layer_height": "0.3",
+ "wall_count": "2",
+ "top_shell_layers": "3",
+ "bottom_shell_layers": "2",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "10%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "500",
+ "small_perimeter_speed": "500",
+ "outer_wall_speed": "500",
+ "sparse_infill_speed": "500",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "150",
+ "gap_infill_speed": "200",
+ "travel_speed": "800",
+ "initial_layer_speed": "200",
+ "outer_wall_acceleration": "15000",
+ "inner_wall_acceleration": "20000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "20000",
+ "bridge_acceleration": "5000",
+ "initial_layer_acceleration": "2500",
+ "travel_acceleration": "10000",
+ "default_acceleration": "20000",
+ "line_width": "0.45",
+ "initial_layer_line_width": "0.5",
+ "inner_wall_line_width": "0.45",
+ "outer_wall_line_width": "0.45",
+ "sparse_infill_line_width": "0.45",
+ "internal_solid_infill_line_width": "0.45",
+ "top_surface_line_width": "0.45",
+ "support_line_width": "0.45",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.28mm Extra Draft @RatRig.json b/resources/profiles/Ratrig/process/0.28mm Extra Draft @RatRig.json
index 7bca592548..e0935d7fe5 100644
--- a/resources/profiles/Ratrig/process/0.28mm Extra Draft @RatRig.json
+++ b/resources/profiles/Ratrig/process/0.28mm Extra Draft @RatRig.json
@@ -8,5 +8,14 @@
"layer_height": "0.28",
"top_surface_line_width": "0.45",
"bottom_shell_layers": "3",
- "top_shell_layers": "4"
+ "top_shell_layers": "4",
+ "compatible_printers": [
+ "RatRig V-Core 3 200 0.4 nozzle",
+ "RatRig V-Core 3 300 0.4 nozzle",
+ "RatRig V-Core 3 400 0.4 nozzle",
+ "RatRig V-Core 3 500 0.4 nozzle",
+ "RatRig V-Minion 0.4 nozzle",
+ "RatRig V-Cast 0.4 nozzle",
+ "RatRig V-Cast 0.6 nozzle"
+ ]
}
diff --git a/resources/profiles/Ratrig/process/0.30mm Big @RatRig V-Core 4 0.6.json b/resources/profiles/Ratrig/process/0.30mm Big @RatRig V-Core 4 0.6.json
new file mode 100644
index 0000000000..70df1a4edb
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.30mm Big @RatRig V-Core 4 0.6.json
@@ -0,0 +1,67 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.30mm Big @RatRig V-Core 4 0.6",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.3",
+ "inital_layer_height": "0.35",
+ "wall_count": "3",
+ "top_shell_layers": "4",
+ "bottom_shell_layers": "3",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "25%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "skirt_loops": "2",
+ "skirt_distance": "10",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "350",
+ "small_perimeter_speed": "250",
+ "outer_wall_speed": "250",
+ "sparse_infill_speed": "400",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "50",
+ "gap_infill_speed": "200",
+ "travel_speed": "500",
+ "initial_layer_speed": "50",
+ "enable_overhang_speed": "1",
+ "overhang_1_4_speed": "20",
+ "overhang_2_4_speed": "45",
+ "overhang_3_4_speed": "80",
+ "overhang_4_4_speed": "100",
+ "outer_wall_acceleration": "4000",
+ "inner_wall_acceleration": "8000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "10000",
+ "bridge_acceleration": "2500",
+ "initial_layer_acceleration": "1500",
+ "travel_acceleration": "10000",
+ "default_acceleration": "10000",
+ "line_width": "0.65",
+ "initial_layer_line_width": "0.84",
+ "inner_wall_line_width": "0.65",
+ "outer_wall_line_width": "0.65",
+ "sparse_infill_line_width": "0.65",
+ "internal_solid_infill_line_width": "0.65",
+ "top_surface_line_width": "0.65",
+ "support_line_width": "0.65",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 300 0.6 nozzle",
+ "RatRig V-Core 4 400 0.6 nozzle",
+ "RatRig V-Core 4 500 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/0.30mm Big @RatRig V-Core 4 HYBRID 0.6.json b/resources/profiles/Ratrig/process/0.30mm Big @RatRig V-Core 4 HYBRID 0.6.json
new file mode 100644
index 0000000000..0bbc5f062e
--- /dev/null
+++ b/resources/profiles/Ratrig/process/0.30mm Big @RatRig V-Core 4 HYBRID 0.6.json
@@ -0,0 +1,67 @@
+{
+ "type": "process",
+ "setting_id": "GP006",
+ "name": "0.30mm Big @RatRig V-Core 4 HYBRID 0.6",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_ratrig_common",
+ "layer_height": "0.3",
+ "inital_layer_height": "0.35",
+ "wall_count": "3",
+ "top_shell_layers": "4",
+ "bottom_shell_layers": "3",
+ "top_shell_thickness": "0",
+ "sparse_infill_density": "25%",
+ "infill_anchor": "600%",
+ "infill_anchor_max": "5",
+ "infill_combination": "1",
+ "skirt_loops": "2",
+ "skirt_distance": "10",
+ "support_threshold_angle": "65",
+ "support_bottom_z_distance": "0.2",
+ "support_on_build_plate_only": "1",
+ "support_object_xy_distance": "60%",
+ "inner_wall_speed": "300",
+ "small_perimeter_speed": "250",
+ "outer_wall_speed": "250",
+ "sparse_infill_speed": "400",
+ "internal_solid_infill_speed": "100%",
+ "top_surface_speed": "100%",
+ "support_speed": "50",
+ "support_interface_speed": "100%",
+ "bridge_speed": "50",
+ "gap_infill_speed": "200",
+ "travel_speed": "600",
+ "initial_layer_speed": "80",
+ "enable_overhang_speed": "1",
+ "overhang_1_4_speed": "20",
+ "overhang_2_4_speed": "45",
+ "overhang_3_4_speed": "80",
+ "overhang_4_4_speed": "100",
+ "outer_wall_acceleration": "8000",
+ "inner_wall_acceleration": "10000",
+ "top_surface_acceleration": "0",
+ "internal_solid_infill_acceleration": "0",
+ "sparse_infill_acceleration": "15000",
+ "bridge_acceleration": "5000",
+ "initial_layer_acceleration": "2500",
+ "travel_acceleration": "15000",
+ "default_acceleration": "15000",
+ "line_width": "0.65",
+ "initial_layer_line_width": "0.84",
+ "inner_wall_line_width": "0.65",
+ "outer_wall_line_width": "0.65",
+ "sparse_infill_line_width": "0.65",
+ "internal_solid_infill_line_width": "0.65",
+ "top_surface_line_width": "0.65",
+ "support_line_width": "0.65",
+ "infill_wall_overlap": "18%",
+ "bridge_flow": "0.85",
+ "resolution": "0.0125",
+ "elefant_foot_compensation": "0.1",
+ "compatible_printers": [
+ "RatRig V-Core 4 HYBRID 300 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 400 0.6 nozzle",
+ "RatRig V-Core 4 HYBRID 500 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Ratrig/process/fdm_process_ratrig_common.json b/resources/profiles/Ratrig/process/fdm_process_ratrig_common.json
index 6cba8b7d31..e5da6affa1 100644
--- a/resources/profiles/Ratrig/process/fdm_process_ratrig_common.json
+++ b/resources/profiles/Ratrig/process/fdm_process_ratrig_common.json
@@ -25,7 +25,6 @@
"bridge_no_support": "0",
"draft_shield": "disabled",
"elefant_foot_compensation": "0",
-
"outer_wall_line_width": "0.4",
"wall_infill_order": "inner wall/outer wall/infill",
"line_width": "0.4",
@@ -34,7 +33,7 @@
"sparse_infill_pattern": "crosshatch",
"initial_layer_acceleration": "500",
"initial_layer_line_width": "0.45",
- "initial_layer_print_height": "0.2",
+ "inital_layer_height": "0.2",
"infill_combination": "0",
"sparse_infill_line_width": "0.4",
"infill_wall_overlap": "25%",
diff --git a/resources/profiles/SecKit.json b/resources/profiles/SecKit.json
index 1b4f846c01..3805d9cdc5 100644
--- a/resources/profiles/SecKit.json
+++ b/resources/profiles/SecKit.json
@@ -1,6 +1,6 @@
{
"name": "SecKit",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "SecKit configurations",
"machine_model_list": [
diff --git a/resources/profiles/SecKit/seckit-hotend.stl b/resources/profiles/SecKit/seckit-hotend.stl
index 99c80559c1..c6e5ac7aec 100644
Binary files a/resources/profiles/SecKit/seckit-hotend.stl and b/resources/profiles/SecKit/seckit-hotend.stl differ
diff --git a/resources/profiles/Snapmaker.json b/resources/profiles/Snapmaker.json
index e063a9c7e1..98edee5529 100644
--- a/resources/profiles/Snapmaker.json
+++ b/resources/profiles/Snapmaker.json
@@ -1,6 +1,6 @@
{
"name": "Snapmaker",
- "version": "01.06.03",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Snapmaker configurations",
"machine_model_list": [
diff --git a/resources/profiles/Snapmaker/Snapmaker A250 BKit_cover.png b/resources/profiles/Snapmaker/Snapmaker A250 BKit_cover.png
index 498cf295a9..9da7df1fb3 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A250 BKit_cover.png and b/resources/profiles/Snapmaker/Snapmaker A250 BKit_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A250 Dual BKit_cover.png b/resources/profiles/Snapmaker/Snapmaker A250 Dual BKit_cover.png
index ff597361d2..4f8748bba9 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A250 Dual BKit_cover.png and b/resources/profiles/Snapmaker/Snapmaker A250 Dual BKit_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A250 Dual QS+B Kit_cover.png b/resources/profiles/Snapmaker/Snapmaker A250 Dual QS+B Kit_cover.png
index 987f50cae0..f0e30cac4e 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A250 Dual QS+B Kit_cover.png and b/resources/profiles/Snapmaker/Snapmaker A250 Dual QS+B Kit_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A250 Dual QSKit_cover.png b/resources/profiles/Snapmaker/Snapmaker A250 Dual QSKit_cover.png
index a0bfb9dc86..1d0c8f787a 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A250 Dual QSKit_cover.png and b/resources/profiles/Snapmaker/Snapmaker A250 Dual QSKit_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A250 Dual_cover.png b/resources/profiles/Snapmaker/Snapmaker A250 Dual_cover.png
index cea13f5518..fd8952940c 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A250 Dual_cover.png and b/resources/profiles/Snapmaker/Snapmaker A250 Dual_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A250 QS+B Kit_cover.png b/resources/profiles/Snapmaker/Snapmaker A250 QS+B Kit_cover.png
index 4c186581c0..1a0ffad591 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A250 QS+B Kit_cover.png and b/resources/profiles/Snapmaker/Snapmaker A250 QS+B Kit_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A250 QSKit_cover.png b/resources/profiles/Snapmaker/Snapmaker A250 QSKit_cover.png
index 67a74821a4..9413061bf0 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A250 QSKit_cover.png and b/resources/profiles/Snapmaker/Snapmaker A250 QSKit_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A250_cover.png b/resources/profiles/Snapmaker/Snapmaker A250_cover.png
index 49b33905ff..690fa692a4 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A250_cover.png and b/resources/profiles/Snapmaker/Snapmaker A250_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A350 BKit_cover.png b/resources/profiles/Snapmaker/Snapmaker A350 BKit_cover.png
index cf4da5e162..e93a39438e 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A350 BKit_cover.png and b/resources/profiles/Snapmaker/Snapmaker A350 BKit_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A350 Dual BKit_cover.png b/resources/profiles/Snapmaker/Snapmaker A350 Dual BKit_cover.png
index 5d4a23f909..32497f44b2 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A350 Dual BKit_cover.png and b/resources/profiles/Snapmaker/Snapmaker A350 Dual BKit_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A350 Dual QS+B Kit_cover.png b/resources/profiles/Snapmaker/Snapmaker A350 Dual QS+B Kit_cover.png
index e2d4dcdad9..d3a17a1656 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A350 Dual QS+B Kit_cover.png and b/resources/profiles/Snapmaker/Snapmaker A350 Dual QS+B Kit_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A350 Dual QSKit_cover.png b/resources/profiles/Snapmaker/Snapmaker A350 Dual QSKit_cover.png
index 17106bf043..01bce804a3 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A350 Dual QSKit_cover.png and b/resources/profiles/Snapmaker/Snapmaker A350 Dual QSKit_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A350 Dual_cover.png b/resources/profiles/Snapmaker/Snapmaker A350 Dual_cover.png
index eaf572c052..48dbf589d1 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A350 Dual_cover.png and b/resources/profiles/Snapmaker/Snapmaker A350 Dual_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A350 QS+B Kit_cover.png b/resources/profiles/Snapmaker/Snapmaker A350 QS+B Kit_cover.png
index 2e79b01a24..9b118b06f1 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A350 QS+B Kit_cover.png and b/resources/profiles/Snapmaker/Snapmaker A350 QS+B Kit_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A350 QSKit_cover.png b/resources/profiles/Snapmaker/Snapmaker A350 QSKit_cover.png
index a967a388d1..a11de0f768 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A350 QSKit_cover.png and b/resources/profiles/Snapmaker/Snapmaker A350 QSKit_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker A350_cover.png b/resources/profiles/Snapmaker/Snapmaker A350_cover.png
index dbecc7e061..5c4aa01dab 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker A350_cover.png and b/resources/profiles/Snapmaker/Snapmaker A350_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker Artisan_cover.png b/resources/profiles/Snapmaker/Snapmaker Artisan_cover.png
index e93435e952..9aa7091326 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker Artisan_cover.png and b/resources/profiles/Snapmaker/Snapmaker Artisan_cover.png differ
diff --git a/resources/profiles/Snapmaker/Snapmaker J1_cover.png b/resources/profiles/Snapmaker/Snapmaker J1_cover.png
index 7c18503912..8940180d6b 100644
Binary files a/resources/profiles/Snapmaker/Snapmaker J1_cover.png and b/resources/profiles/Snapmaker/Snapmaker J1_cover.png differ
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual.json
index a77525a0e9..801cb64b05 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual.json
@@ -5,5 +5,7 @@
"name": "Snapmaker PET @Dual",
"setting_id": "145337790",
"inherits": "Snapmaker Dual PET @base",
- "compatible_printers": ""
+ "compatible_printers": [
+ "Snapmaker A250 Dual (0.8 nozzle)"
+ ]
}
\ No newline at end of file
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PET @base.json b/resources/profiles/Snapmaker/filament/Snapmaker PET @base.json
index fd188706aa..47594a10d7 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker PET @base.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PET @base.json
@@ -4,6 +4,5 @@
"instantiation": "false",
"name": "Snapmaker PET @base",
"filament_id": "2549587591",
- "inherits": "fdm_filament_pet",
- "compatible_printers": ""
+ "inherits": "fdm_filament_pet"
}
\ No newline at end of file
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @0.2 nozzle.json
index 521a5d53d5..18b8430d15 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker PVA @0.2 nozzle.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @0.2 nozzle.json
@@ -4,5 +4,8 @@
"instantiation": "true",
"name": "Snapmaker PVA @0.2 nozzle",
"setting_id": "1131479069",
- "inherits": "Snapmaker PVA @base"
+ "inherits": "Snapmaker PVA @base",
+ "compatible_printers": [
+ "Snapmaker A250 (0.2 nozzle)"
+ ]
}
\ No newline at end of file
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA.json
index b49e2cfb4c..0a44bae8ee 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker PVA.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA.json
@@ -5,5 +5,30 @@
"name": "Snapmaker PVA",
"setting_id": "3741816734",
"inherits": "Snapmaker PVA @base",
- "compatible_printers": ""
+ "compatible_printers": [
+ "Snapmaker A250 (0.4 nozzle)",
+ "Snapmaker A250 (0.6 nozzle)",
+ "Snapmaker A250 (0.8 nozzle)",
+ "Snapmaker A250 BKit (0.4 nozzle)",
+ "Snapmaker A250 BKit (0.6 nozzle)",
+ "Snapmaker A250 BKit (0.8 nozzle)",
+ "Snapmaker A250 QS+B Kit (0.4 nozzle)",
+ "Snapmaker A250 QS+B Kit (0.6 nozzle)",
+ "Snapmaker A250 QS+B Kit (0.8 nozzle)",
+ "Snapmaker A250 QSKit (0.4 nozzle)",
+ "Snapmaker A250 QSKit (0.6 nozzle)",
+ "Snapmaker A250 QSKit (0.8 nozzle)",
+ "Snapmaker A350 (0.4 nozzle)",
+ "Snapmaker A350 (0.6 nozzle)",
+ "Snapmaker A350 (0.8 nozzle)",
+ "Snapmaker A350 BKit (0.4 nozzle)",
+ "Snapmaker A350 BKit (0.6 nozzle)",
+ "Snapmaker A350 BKit (0.8 nozzle)",
+ "Snapmaker A350 QS+B Kit (0.4 nozzle)",
+ "Snapmaker A350 QS+B Kit (0.6 nozzle)",
+ "Snapmaker A350 QS+B Kit (0.8 nozzle)",
+ "Snapmaker A350 QSKit (0.4 nozzle)",
+ "Snapmaker A350 QSKit (0.6 nozzle)",
+ "Snapmaker A350 QSKit (0.8 nozzle)"
+ ]
}
\ No newline at end of file
diff --git a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker (0.4 nozzle).json
index dd1be72edb..a081fe766e 100644
--- a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker (0.4 nozzle).json
@@ -29,7 +29,7 @@
"ironing_flow": "8%",
"layer_height": "0.08",
"initial_layer_print_height": "0.1",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "15",
"top_shell_layers": "9",
"gap_infill_speed": "85",
"initial_layer_infill_speed": "65",
diff --git a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle).json
index 3b160147bd..22bdb6cb08 100644
--- a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle).json
@@ -14,7 +14,7 @@
"ironing_flow": "8%",
"layer_height": "0.08",
"initial_layer_print_height": "0.1",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "15",
"top_shell_layers": "5",
"initial_layer_infill_speed": "80",
"inner_wall_speed": "145",
diff --git a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker J1 (0.4 nozzle).json
index c93c20378f..eaf51d4cd6 100644
--- a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker J1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker J1 (0.4 nozzle).json
@@ -14,7 +14,7 @@
"ironing_flow": "8%",
"layer_height": "0.08",
"initial_layer_print_height": "0.1",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "15",
"top_shell_layers": "5",
"initial_layer_infill_speed": "80",
"inner_wall_speed": "145",
diff --git a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker (0.4 nozzle).json
index 554733174f..24216b3c5c 100644
--- a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker (0.4 nozzle).json
@@ -30,7 +30,7 @@
"top_shell_layers": "5",
"top_shell_thickness": "0.6",
"bridge_flow": "1",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "20",
"initial_layer_infill_speed": "65",
"outer_wall_speed": "75",
"inner_wall_speed": "120",
diff --git a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker Artisan (0.4 nozzle).json
index 1626107191..41cfa41d21 100644
--- a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker Artisan (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker Artisan (0.4 nozzle).json
@@ -14,7 +14,7 @@
"top_shell_layers": "5",
"top_shell_thickness": "0.6",
"bridge_flow": "1",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "20",
"initial_layer_infill_speed": "80",
"inner_wall_speed": "145",
"internal_solid_infill_speed": "150"
diff --git a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker J1 (0.4 nozzle).json
index be2dd48aff..1ff7629339 100644
--- a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker J1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker J1 (0.4 nozzle).json
@@ -14,7 +14,7 @@
"top_shell_layers": "5",
"top_shell_thickness": "0.6",
"bridge_flow": "1",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "20",
"initial_layer_infill_speed": "80",
"inner_wall_speed": "145",
"internal_solid_infill_speed": "150"
diff --git a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker (0.4 nozzle).json
index e8b091eb7d..119ae1e3e5 100644
--- a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker (0.4 nozzle).json
@@ -29,7 +29,7 @@
"bottom_shell_layers": "4",
"top_shell_thickness": "0.6",
"bridge_flow": "1",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "25",
"initial_layer_infill_speed": "65",
"outer_wall_speed": "80",
"inner_wall_speed": "100",
diff --git a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker Artisan (0.4 nozzle).json
index ea9ab92b4b..e2547e522b 100644
--- a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker Artisan (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker Artisan (0.4 nozzle).json
@@ -14,7 +14,7 @@
"top_shell_layers": "5",
"top_shell_thickness": "0.6",
"bridge_flow": "1",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "25",
"initial_layer_infill_speed": "80",
"inner_wall_speed": "145"
}
\ No newline at end of file
diff --git a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker J1 (0.4 nozzle).json
index d303e2e5da..77a170ef61 100644
--- a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker J1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker J1 (0.4 nozzle).json
@@ -14,7 +14,7 @@
"top_shell_layers": "5",
"top_shell_thickness": "0.6",
"bridge_flow": "1",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "25",
"initial_layer_infill_speed": "80",
"inner_wall_speed": "145"
}
\ No newline at end of file
diff --git a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker (0.4 nozzle).json
index 8f94f6c47d..17089131eb 100644
--- a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker (0.4 nozzle).json
@@ -28,7 +28,7 @@
"top_surface_line_width": "0.45",
"top_shell_layers": "3",
"top_shell_thickness": "0.6",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "35",
"initial_layer_infill_speed": "65",
"outer_wall_speed": "90",
"inner_wall_speed": "100",
diff --git a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker Artisan (0.4 nozzle).json
index c8486952a0..43947ed427 100644
--- a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker Artisan (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker Artisan (0.4 nozzle).json
@@ -13,6 +13,6 @@
"top_surface_line_width": "0.45",
"top_shell_layers": "3",
"top_shell_thickness": "0.6",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "35",
"initial_layer_infill_speed": "65"
}
\ No newline at end of file
diff --git a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker J1 (0.4 nozzle).json
index 0fd04fa649..23877e116c 100644
--- a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker J1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker J1 (0.4 nozzle).json
@@ -13,6 +13,6 @@
"top_surface_line_width": "0.45",
"top_shell_layers": "3",
"top_shell_thickness": "0.6",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "35",
"initial_layer_infill_speed": "65"
}
\ No newline at end of file
diff --git a/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker Artisan (0.4 nozzle).json
index ab306e914b..6cb96ddab1 100644
--- a/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker Artisan (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker Artisan (0.4 nozzle).json
@@ -31,7 +31,7 @@
"ensure_vertical_shell_thickness": "none",
"filename_format": "ArtisanBenchy_{print_time}.gcode",
"sparse_infill_density": "10%",
- "sparse_infill_pattern": "crosshatch",
+ "sparse_infill_pattern": "alignedrectilinear",
"wall_generator": "classic",
"seam_position": "nearest",
"wall_loops": "2",
diff --git a/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker J1 (0.4 nozzle).json
index 3e8f9db16a..da364c6b57 100644
--- a/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker J1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker J1 (0.4 nozzle).json
@@ -30,7 +30,7 @@
"ensure_vertical_shell_thickness": "none",
"filename_format": "J1Benchy_{print_time}.gcode",
"sparse_infill_density": "10%",
- "sparse_infill_pattern": "crosshatch",
+ "sparse_infill_pattern": "alignedrectilinear",
"wall_generator": "classic",
"seam_position": "nearest",
"wall_loops": "2",
diff --git a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker (0.4 nozzle).json
index 8e9da23b21..1fa3b0654e 100644
--- a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker (0.4 nozzle).json
@@ -28,7 +28,7 @@
"top_surface_line_width": "0.45",
"top_shell_layers": "3",
"top_shell_thickness": "0.6",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "40",
"wall_loops": "2",
"initial_layer_infill_speed": "65",
"outer_wall_speed": "85",
diff --git a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle).json
index 10d2759083..0780fd81b3 100644
--- a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle).json
@@ -13,7 +13,7 @@
"top_surface_line_width": "0.45",
"top_shell_layers": "3",
"top_shell_thickness": "0.6",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "40",
"wall_loops": "2",
"initial_layer_infill_speed": "65"
}
\ No newline at end of file
diff --git a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker J1 (0.4 nozzle).json
index 2060ea0211..b18c01c857 100644
--- a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker J1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker J1 (0.4 nozzle).json
@@ -13,7 +13,7 @@
"top_surface_line_width": "0.45",
"top_shell_layers": "3",
"top_shell_thickness": "0.6",
- "support_threshold_angle": "30",
+ "support_threshold_angle": "40",
"wall_loops": "2",
"initial_layer_infill_speed": "65"
}
\ No newline at end of file
diff --git a/resources/profiles/Snapmaker/process/fdm_process_common.json b/resources/profiles/Snapmaker/process/fdm_process_common.json
index e894e7f0d2..f35f39ffb1 100644
--- a/resources/profiles/Snapmaker/process/fdm_process_common.json
+++ b/resources/profiles/Snapmaker/process/fdm_process_common.json
@@ -56,14 +56,14 @@
"print_flow_ratio": "1",
"wall_loops": "3",
"detect_thin_wall": "0",
- "top_surface_pattern": "monotonicline",
+ "top_surface_pattern": "monotonic",
"top_shell_layers": "4",
"top_shell_thickness": "0.8",
"bottom_surface_pattern": "monotonic",
"bottom_shell_layers": "3",
"bottom_shell_thickness": "0",
"sparse_infill_density": "15%",
- "sparse_infill_pattern": "crosshatch",
+ "sparse_infill_pattern": "cubic",
"filter_out_gap_fill": "0",
"infill_wall_overlap": "15%",
"infill_direction": "45",
diff --git a/resources/profiles/Sovol.json b/resources/profiles/Sovol.json
index b356440482..bbe996c76b 100644
--- a/resources/profiles/Sovol.json
+++ b/resources/profiles/Sovol.json
@@ -1,7 +1,7 @@
{
"name": "Sovol",
"url": "",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Sovol configurations",
"machine_model_list": [
@@ -114,6 +114,10 @@
{
"name": "0.40mm Standard @Sovol SV08 0.8 nozzle",
"sub_path": "process/0.40mm Standard @Sovol SV08 0.8 nozzle.json"
+ },
+ {
+ "name": "0.20mm High-Speed @Sovol SV06",
+ "sub_path": "process/0.20mm High-Speed @Sovol SV06.json"
}
],
"filament_list": [
diff --git a/resources/profiles/Sovol/Sovol SV07 Plus_cover.png b/resources/profiles/Sovol/Sovol SV07 Plus_cover.png
index ce0cc9bd3d..b20a0ab944 100644
Binary files a/resources/profiles/Sovol/Sovol SV07 Plus_cover.png and b/resources/profiles/Sovol/Sovol SV07 Plus_cover.png differ
diff --git a/resources/profiles/Sovol/Sovol SV07_cover.png b/resources/profiles/Sovol/Sovol SV07_cover.png
index 2c6e19da6c..d24ca02c34 100644
Binary files a/resources/profiles/Sovol/Sovol SV07_cover.png and b/resources/profiles/Sovol/Sovol SV07_cover.png differ
diff --git a/resources/profiles/Sovol/Sovol SV08_cover.png b/resources/profiles/Sovol/Sovol SV08_cover.png
index 2081d83d2c..b9e43f1c4c 100644
Binary files a/resources/profiles/Sovol/Sovol SV08_cover.png and b/resources/profiles/Sovol/Sovol SV08_cover.png differ
diff --git a/resources/profiles/Sovol/process/0.20mm High-Speed @Sovol SV06.json b/resources/profiles/Sovol/process/0.20mm High-Speed @Sovol SV06.json
new file mode 100644
index 0000000000..0c57b02b39
--- /dev/null
+++ b/resources/profiles/Sovol/process/0.20mm High-Speed @Sovol SV06.json
@@ -0,0 +1,116 @@
+{
+ "type": "process",
+ "setting_id": "GP004",
+ "name": "0.20mm High-Speed @Sovol SV06",
+ "from": "system",
+ "inherits": "fdm_process_common",
+ "instantiation": "true",
+ "adaptive_layer_height": "1",
+ "reduce_crossing_wall": "0",
+ "layer_height": "0.20",
+ "max_travel_detour_distance": "0",
+ "bottom_surface_pattern": "monotonic",
+ "bottom_shell_layers": "3",
+ "bottom_shell_thickness": "0",
+ "bridge_flow": "1",
+ "bridge_speed": "50",
+ "internal_bridge_speed" : "50",
+ "brim_type": "outer_only",
+ "brim_width": "5",
+ "brim_object_gap": "0",
+ "compatible_printers_condition": "",
+ "print_sequence": "by layer",
+ "default_acceleration": "2500",
+ "outer_wall_acceleration": "2500",
+ "top_surface_acceleration": "2500",
+ "bridge_no_support": "1",
+ "draft_shield": "disabled",
+ "elefant_foot_compensation": "0.1",
+ "enable_arc_fitting": "0",
+ "outer_wall_line_width": "0.4",
+ "wall_infill_order": "inner wall/outer wall/infill",
+ "wall_sequence": "inner-outer-inner wall",
+ "line_width": "0.4",
+ "infill_direction": "45",
+ "sparse_infill_density": "10%",
+ "sparse_infill_pattern": "grid",
+ "initial_layer_acceleration": "500",
+ "travel_acceleration": "2500",
+ "inner_wall_acceleration": "2500",
+ "initial_layer_line_width": "0.5",
+ "initial_layer_print_height": "0.25",
+ "infill_combination": "0",
+ "sparse_infill_line_width": "0.45",
+ "infill_wall_overlap": "30%",
+ "interface_shells": "0",
+ "ironing_flow": "15%",
+ "ironing_spacing": "0.25",
+ "ironing_speed": "15",
+ "ironing_type": "no ironing",
+ "reduce_infill_retraction": "1",
+ "filename_format": "{printer_model}_{input_filename_base}_{filament_type[0]}_{layer_height}_{print_time}.gcode",
+ "detect_overhang_wall": "1",
+ "overhang_1_4_speed": "0",
+ "overhang_2_4_speed": "50",
+ "overhang_3_4_speed": "30",
+ "overhang_4_4_speed": "10",
+ "inner_wall_line_width": "0.42",
+ "wall_loops": "3",
+ "print_settings_id": "",
+ "raft_layers": "0",
+ "seam_position": "aligned",
+ "skirt_distance": "3",
+ "skirt_height": "1",
+ "skirt_speed": "30",
+ "skirt_loops": "1",
+ "minimum_sparse_infill_area": "15",
+ "internal_solid_infill_line_width": "0.4",
+ "spiral_mode": "0",
+ "standby_temperature_delta": "-5",
+ "enable_support": "0",
+ "resolution": "0.012",
+ "support_type": "tree(auto)",
+ "support_style": "default",
+ "support_on_build_plate_only": "0",
+ "support_top_z_distance": "0.18",
+ "support_filament": "0",
+ "support_line_width": "0.4",
+ "support_interface_loop_pattern": "0",
+ "support_interface_filament": "0",
+ "support_interface_top_layers": "3",
+ "support_interface_bottom_layers": "-1",
+ "support_interface_spacing": "0.2",
+ "support_interface_pattern": "concentric",
+ "support_interface_speed": "100%",
+ "support_base_pattern": "hollow",
+ "support_base_pattern_spacing": "0.2",
+ "support_speed": "40",
+ "support_threshold_angle": "20",
+ "support_object_xy_distance": "60%",
+ "tree_support_branch_angle": "40",
+ "tree_support_wall_count": "0",
+ "detect_thin_wall": "1",
+ "top_surface_pattern": "monotonic",
+ "top_surface_line_width": "0.4",
+ "top_shell_layers": "4",
+ "top_shell_thickness": "0.8",
+ "initial_layer_speed": "20",
+ "initial_layer_infill_speed": "25",
+ "slow_down_layers": "3",
+ "outer_wall_speed": "100",
+ "inner_wall_speed": "150",
+ "internal_solid_infill_speed": "150",
+ "top_surface_speed": "100",
+ "gap_infill_speed": "80",
+ "sparse_infill_speed": "150",
+ "travel_speed": "150",
+ "enable_prime_tower": "0",
+ "wipe_tower_no_sparse_layers": "0",
+ "prime_tower_width": "60",
+ "xy_hole_compensation": "0",
+ "xy_contour_compensation": "0",
+ "wall_generator": "classic",
+ "compatible_printers": [
+ "Sovol SV06 0.4 nozzle"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/Sovol/sovol_sv08_buildplate_model.stl b/resources/profiles/Sovol/sovol_sv08_buildplate_model.stl
index 91acb50bd4..dd1419b4e8 100644
Binary files a/resources/profiles/Sovol/sovol_sv08_buildplate_model.stl and b/resources/profiles/Sovol/sovol_sv08_buildplate_model.stl differ
diff --git a/resources/profiles/Tronxy.json b/resources/profiles/Tronxy.json
index 55fa64a864..0525256239 100644
--- a/resources/profiles/Tronxy.json
+++ b/resources/profiles/Tronxy.json
@@ -1,6 +1,6 @@
{
"name": "Tronxy",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Tronxy configurations",
"machine_model_list": [
diff --git a/resources/profiles/TwoTrees.json b/resources/profiles/TwoTrees.json
index 54408265be..1c35d6e8ed 100644
--- a/resources/profiles/TwoTrees.json
+++ b/resources/profiles/TwoTrees.json
@@ -1,6 +1,6 @@
{
"name": "TwoTrees",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "1",
"description": "TwoTrees configurations",
"machine_model_list": [
diff --git a/resources/profiles/TwoTrees/SP-5_bed.stl b/resources/profiles/TwoTrees/SP-5_bed.stl
index cb9b5bc274..6708bec94b 100644
Binary files a/resources/profiles/TwoTrees/SP-5_bed.stl and b/resources/profiles/TwoTrees/SP-5_bed.stl differ
diff --git a/resources/profiles/TwoTrees/TwoTrees SK1_cover.png b/resources/profiles/TwoTrees/TwoTrees SK1_cover.png
index 943e00b84b..96be3438ce 100644
Binary files a/resources/profiles/TwoTrees/TwoTrees SK1_cover.png and b/resources/profiles/TwoTrees/TwoTrees SK1_cover.png differ
diff --git a/resources/profiles/UltiMaker.json b/resources/profiles/UltiMaker.json
index 840ebb17ee..847ab3ab51 100644
--- a/resources/profiles/UltiMaker.json
+++ b/resources/profiles/UltiMaker.json
@@ -1,7 +1,7 @@
{
"name": "UltiMaker",
"url": "",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "UltiMaker configurations",
"machine_model_list": [
diff --git a/resources/profiles/Vivedino.json b/resources/profiles/Vivedino.json
index 40fdf10c16..ca407d5c8f 100644
--- a/resources/profiles/Vivedino.json
+++ b/resources/profiles/Vivedino.json
@@ -1,6 +1,6 @@
{
"name": "Vivedino",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Vivedino configurations",
"machine_model_list": [
diff --git a/resources/profiles/Voron.json b/resources/profiles/Voron.json
index 9e9083ecef..f726fcc642 100644
--- a/resources/profiles/Voron.json
+++ b/resources/profiles/Voron.json
@@ -1,6 +1,6 @@
{
"name": "Voron",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Voron configurations",
"machine_model_list": [
diff --git a/resources/profiles/Voxelab.json b/resources/profiles/Voxelab.json
index b1a585d396..78b0ee4f66 100644
--- a/resources/profiles/Voxelab.json
+++ b/resources/profiles/Voxelab.json
@@ -1,7 +1,7 @@
{
"name": "Voxelab",
"url": "",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Voxelab configurations",
"machine_model_list": [
diff --git a/resources/profiles/Vzbot.json b/resources/profiles/Vzbot.json
index 81b2611c5c..bcf4af32a2 100644
--- a/resources/profiles/Vzbot.json
+++ b/resources/profiles/Vzbot.json
@@ -1,6 +1,6 @@
{
"name": "Vzbot",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Vzbot configurations",
"machine_model_list": [
diff --git a/resources/profiles/Wanhao.json b/resources/profiles/Wanhao.json
index c80b0ecf0d..5b21ff03d4 100644
--- a/resources/profiles/Wanhao.json
+++ b/resources/profiles/Wanhao.json
@@ -1,6 +1,6 @@
{
"name": "Wanhao",
- "version": "02.01.00.00",
+ "version": "02.01.01.00",
"force_update": "0",
"description": "Wanhao configurations",
"machine_model_list": [
diff --git a/resources/profiles/Wanhao/Wanhao D12-300_hotend.stl b/resources/profiles/Wanhao/Wanhao D12-300_hotend.stl
index 9afbd95e44..fb8ae0b32d 100644
Binary files a/resources/profiles/Wanhao/Wanhao D12-300_hotend.stl and b/resources/profiles/Wanhao/Wanhao D12-300_hotend.stl differ
diff --git a/resources/shaders/110/thumbnail.fs b/resources/shaders/110/thumbnail.fs
index 4b269734ee..5a57674602 100644
--- a/resources/shaders/110/thumbnail.fs
+++ b/resources/shaders/110/thumbnail.fs
@@ -1,5 +1,6 @@
#version 110
+uniform bool ban_light;
uniform vec4 uniform_color;
uniform float emission_factor;
@@ -12,5 +13,9 @@ void main()
{
if (world_pos.z < 0.0)
discard;
- gl_FragColor = vec4(vec3(intensity.y) + uniform_color.rgb * (intensity.x + emission_factor), uniform_color.a);
+ if(ban_light){
+ gl_FragColor = uniform_color;
+ } else{
+ gl_FragColor = vec4(vec3(intensity.y) + uniform_color.rgb * (intensity.x + emission_factor), uniform_color.a);
+ }
}
diff --git a/resources/shaders/140/thumbnail.fs b/resources/shaders/140/thumbnail.fs
index 9e6d5d854c..e7963328f9 100644
--- a/resources/shaders/140/thumbnail.fs
+++ b/resources/shaders/140/thumbnail.fs
@@ -1,5 +1,6 @@
#version 140
+uniform bool ban_light;
uniform vec4 uniform_color;
uniform float emission_factor;
@@ -12,5 +13,9 @@ void main()
{
if (world_pos.z < 0.0)
discard;
- gl_FragColor = vec4(vec3(intensity.y) + uniform_color.rgb * (intensity.x + emission_factor), uniform_color.a);
+ if(ban_light){
+ gl_FragColor = uniform_color;
+ } else{
+ gl_FragColor = vec4(vec3(intensity.y) + uniform_color.rgb * (intensity.x + emission_factor), uniform_color.a);
+ }
}
diff --git a/resources/web/data/text.js b/resources/web/data/text.js
index cbf359f1e6..c80bb979c8 100644
--- a/resources/web/data/text.js
+++ b/resources/web/data/text.js
@@ -108,6 +108,115 @@ var LangText = {
orca1: "Edit Project Info",
orca2: "no model information",
},
+ ca_ES: {
+ t1: "Benvingut a Orca Slicer",
+ t2: "Orca Slicer es configurarà en diversos passos. Comencem!",
+ t3: "Acord de l'Usuari",
+ t4: "No accepto",
+ t5: "Accepto",
+ t6: "Sol·licitem la vostra ajuda per millorar la impressió de tothom.
Vine i uneix-te al nostre Programa de Millora de l'Experiència del Client",
+ t7: "Uneix-te al nostre Programa de Millora de l'Experiència del Client",
+ t8: "Enrere",
+ t9: "Següent",
+ t10: "Selecció d'Impressora",
+ t11: "Totes",
+ t12: "Netejar tot",
+ t13: "mm broquet",
+ t14: "Selecció de Filament",
+ t15: "Impressora",
+ t16: "Tipus de filament",
+ t17: "Proveïdor",
+ t18: "error",
+ t19: "S'ha de seleccionar almenys un filament.",
+ t20: "Vols utilitzar el filament per defecte?",
+ t21: "sí",
+ t22: "no",
+ t23: "Nota de llançament",
+ t24: "Comença",
+ t25: "Finalitzar",
+ t26: "Iniciar sessió",
+ t27: "Registrar",
+ t28: "Recent",
+ t29: "Botiga",
+ t30: "Manual",
+ t31: "Nou Projecte",
+ t32: "Crear nou projecte",
+ t33: "Obrir Projecte",
+ t34: "hotspot",
+ t35: "Obert recentment",
+ t36: "d'acord",
+ t37: "S'ha de seleccionar almenys una impressora.",
+ t38: "Cancel·lar",
+ t39: "Confirmar",
+ t40: "Desconnexió de la xarxa, si us plau comprova i intenta-ho de nou més tard.",
+ t47: "Si us plau selecciona la teva regió d'inici de sessió",
+ t48: "Àsia-Pacífic",
+ t49: "Xina",
+ t50: "Tancar sessió",
+ t52: "Saltar",
+ t53: "Unir-se",
+ t54: "A la comunitat d'Impressió 3D, aprenem dels èxits i fracassos dels altres per ajustar els nostres propis paràmetres i configuracions de laminació. Orca Slicer segueix el mateix principi i utilitza l'aprenentatge automàtic per millorar el seu rendiment a partir dels èxits i fracassos d'un gran nombre d'impressions dels nostres usuaris. Estem entrenant Orca Slicer per ser més intel·ligent alimentant-lo amb dades del món real. Si estàs disposat, aquest servei accedirà a informació dels teus registres d'errors i registres d'ús, que poden incloure informació descrita a la ",
+ t55: "Política de Privacitat",
+ t56: ". No recopilarem cap dada personal que pugui identificar directament o indirectament a un individu, incloent-hi noms, adreces, informació de pagament o números de telèfon. En habilitar aquest servei, acceptes aquests termes i la declaració sobre la Política de Privacitat.",
+ t57: "",
+ t58: "",
+ t59: ".",
+ t60: "Europa",
+ t61: "Amèrica del Nord",
+ t62: "Altres",
+ t63: "Després de canviar la regió, el teu compte es tancarà la sessió. Si us plau inicia sessió de nou més tard.",
+ t64: "Connectors propietaris",
+ t65: "Tingues en compte que aquests connectors no són desenvolupats ni mantinguts per OrcaSlicer. S'han d'utilitzar a la teva discreció i risc.",
+ t66: "Control remot complet",
+ t67: "Transmissió en directe",
+ t68: "Sincronització de dades de l'usuari",
+ t69: "Instal·lar connector Bambu Network",
+ t70: "",
+ t71: "Descarregant",
+ t72: "Descàrrega fallida",
+ t73: "Instal·lació exitosa.",
+ t74: "Reiniciar",
+ t75: "Alguns proveïdors d'impressora requereixen connectors propietaris per comunicar-se amb les seves impressores. Si us plau selecciona el connector corresponent si utilitzes aquestes impressores.",
+ t76: "No s'ha detectat el connector Bambu Network. Fes clic ",
+ t77: "aquí",
+ t78: " per instal·lar-lo.",
+ t79: "No s'ha pogut instal·lar el connector.",
+ t80: "Prova els següents passos:",
+ t81: "1, Fes clic ",
+ t82: " per obrir el directori de connectors",
+ t83: "2, Tanca totes les Orca Slicer obertes",
+ t84: "3, Elimina tots els fitxers del directori de connectors",
+ t85: "4, Reobre Orca Slicer i instal·la el connector de nou",
+ t86: "Tancar",
+ t87: "Manual de l'Usuari",
+ t88: "Eliminar",
+ t89: "Obrir Carpeta Contenidora",
+ t90: "Model 3D",
+ t91: "Descarregar models 3D",
+ t92: "Creat per",
+ t93: "Remesclat per",
+ t94: "Compartit per",
+ t95: "Informació del Model",
+ t96: "Accessoris",
+ t97: "Informació del Perfil",
+ t98: "Nom del model",
+ t100: "Descripció del model",
+ t101: "BOM",
+ t102: "Guia d'Assemblea",
+ t103: "Altres",
+ t104: "Nom del perfil",
+ t105: "Autor del perfil",
+ t106: "Descripció del perfil",
+ t107: "Models en línia",
+ t108: "MÉS",
+ t109: "Filaments del Sistema",
+ t110: "Filaments Personalitzats",
+ t111: "Crear Nou",
+ t112: "Unir-se al Programa",
+ t113: "Pots canviar la teva elecció en les preferències en qualsevol moment.",
+ orca1: "Editar Informació del Projecte",
+ orca2: "no hi ha informació del model"
+},
es_ES: {
t1: "Bienvenido a Orca Slicer",
t2: "Va a configurar Orca Slicer mediante varios pasos. ¡Vamos a comenzar!",
@@ -214,8 +323,8 @@ var LangText = {
t111: "Crear nuevo",
t112: "Unirse al programa",
t113: "Puede cambiar su elección en preferencias en cualquier momento.",
- orca1: "Editar información del proyecto",
- orca2: "no hay información sobre el modelo",
+ orca1: "Edit Project Info",
+ orca2: "no model information",
},
de_DE: {
t1: "Willkommen im Orca Slicer",
@@ -275,7 +384,7 @@ var LangText = {
t62: "Andere",
t63: "Nach Ändern der Region wird Ihr Konto abgemeldet. Bitte melden Sie sich später erneut an.",
t64: "Bambu Network-Plug-in",
- t65: "Bitte beachten Sie, dass diese Plugins nicht von OrcaSlicer entwickelt oder gewartet werden. Die Verwendung erfolgt auf eigenes Ermessen und Risiko.",
+ t65: "Please be aware that these plugins are not developed or maintained by OrcaSlicer. They should be used at your own discretion and risk.",
t66: "Vollständige Fernsteuerung",
t67: "Live-View-Streaming",
t68: "Synchronisierung von Benutzerdaten",
@@ -285,7 +394,7 @@ var LangText = {
t72: "Herunterladen fehlgeschlagen",
t73: "Installation erfolgreich.",
t74: "Neustart",
- t75: "Einige Druckeranbieter erfordern proprietäre Plugins für die Kommunikation mit ihren Druckern. Bitte wählen Sie das entsprechende Plugin aus, wenn Sie solche Drucker verwenden.",
+ t75: "Some printer vendors require proprietary plugins for communication with their printers. Please select the corresponding plugin if you use such printers.",
t76: "Das Bambu Network-Plug-in wurde nicht erkannt. Klicken Sie ",
t77: "hier",
t78: ", um es zu installieren.",
@@ -316,8 +425,8 @@ var LangText = {
t104: "Profilname",
t105: "Profilautor",
t106: "Profilbeschreibung",
- orca1: "Projektinformationen bearbeiten",
- orca2: "Keine Modellinformationen",
+ orca1: "Edit Project Info",
+ orca2: "no model information",
},
cs_CZ: {
t1: "Vítejte v Orca Slicer",
diff --git a/src/OrcaSlicer.cpp b/src/OrcaSlicer.cpp
index e9a5d6e641..bb52a0aea1 100644
--- a/src/OrcaSlicer.cpp
+++ b/src/OrcaSlicer.cpp
@@ -161,6 +161,8 @@ typedef struct _sliced_info {
std::vector sliced_plates;
size_t prepare_time;
size_t export_time;
+ std::vector upward_machines;
+ std::vector downward_machines;
}sliced_info_t;
std::vector g_slicing_warnings;
@@ -409,6 +411,10 @@ void record_exit_reson(std::string outputdir, int code, int plate_id, std::strin
try {
json j;
//record the headers
+ if (sliced_info.downward_machines.size() > 0)
+ j["downward_compatible_machine"] = sliced_info.downward_machines;
+ if (sliced_info.upward_machines.size() > 0)
+ j["upward_compatible_machine"] = sliced_info.upward_machines;
j["plate_index"] = plate_id;
j["return_code"] = code;
j["error_string"] = error_message;
@@ -679,6 +685,51 @@ static int load_assemble_plate_list(std::string config_file, std::vector>();
BOOST_LOG_TRIVIAL(debug) << boost::format("Plate %1%, object %2% has %3% print params") % (plate_index + 1) %assemble_object.path % assemble_object.print_params.size();
}
+ if (object_json.contains(JSON_ASSEMPLE_OBJECT_HEIGHT_RANGES)) {
+ json height_range_json = object_json[JSON_ASSEMPLE_OBJECT_HEIGHT_RANGES];
+ int range_count = height_range_json.size();
+
+ BOOST_LOG_TRIVIAL(debug) << boost::format("Plate %1%, object %2% has %3% height ranges") % (plate_index + 1) %assemble_object.path % range_count;
+
+ assemble_object.height_ranges.resize(range_count);
+ for (int range_index = 0; range_index < range_count; range_index++)
+ {
+ height_range_info_t& height_range = assemble_object.height_ranges[range_index];
+ height_range.min_z = height_range_json[range_index][JSON_ASSEMPLE_OBJECT_MIN_Z];
+ height_range.max_z = height_range_json[range_index][JSON_ASSEMPLE_OBJECT_MAX_Z];
+ height_range.range_params = height_range_json[range_index][JSON_ASSEMPLE_OBJECT_RANGE_PARAMS].get>();
+ }
+ }
+ }
+ if (plate_json.contains(JSON_ASSEMPLE_ASSEMBLE_PARAMS)) {
+ json assemble_params_json = plate_json[JSON_ASSEMPLE_ASSEMBLE_PARAMS];
+ int assemble_count = assemble_params_json.size();
+ for (int i = 0; i < assemble_count; i++)
+ {
+ assembled_param_info_t assembled_param;
+ int assemble_index = assemble_params_json[i][JSON_ASSEMPLE_OBJECT_ASSEMBLE_INDEX];
+ if (assemble_params_json[i].contains(JSON_ASSEMPLE_OBJECT_PRINT_PARAMS)) {
+ assembled_param.print_params = assemble_params_json[i][JSON_ASSEMPLE_OBJECT_PRINT_PARAMS].get>();
+ BOOST_LOG_TRIVIAL(debug) << boost::format("Plate %1%, assemble object %2% has %3% print params") % (plate_index + 1) %i % assembled_param.print_params.size();
+ }
+ if (assemble_params_json[i].contains(JSON_ASSEMPLE_OBJECT_HEIGHT_RANGES)) {
+ json height_range_json = assemble_params_json[i][JSON_ASSEMPLE_OBJECT_HEIGHT_RANGES];
+ int range_count = height_range_json.size();
+
+ BOOST_LOG_TRIVIAL(debug) << boost::format("Plate %1%, assemble object %2% has %3% height ranges") % (plate_index + 1) %i % range_count;
+
+ assembled_param.height_ranges.resize(range_count);
+ for (int range_index = 0; range_index < range_count; range_index++)
+ {
+ height_range_info_t& height_range = assembled_param.height_ranges[range_index];
+ height_range.min_z = height_range_json[range_index][JSON_ASSEMPLE_OBJECT_MIN_Z];
+ height_range.max_z = height_range_json[range_index][JSON_ASSEMPLE_OBJECT_MAX_Z];
+ height_range.range_params = height_range_json[range_index][JSON_ASSEMPLE_OBJECT_RANGE_PARAMS].get>();
+ }
+ }
+ assemble_plate.assembled_param_list.emplace(assemble_index, std::move(assembled_param));
+ }
+ BOOST_LOG_TRIVIAL(debug) << boost::format("Plate %1%, has %2% plate params") % (plate_index + 1) % assemble_plate.plate_params.size();
}
}
}
@@ -820,6 +871,21 @@ static int construct_assemble_list(std::vector &assemble_
}
}
+ if (!assemble_object.height_ranges.empty())
+ {
+ for (int range_index = 0; range_index < assemble_object.height_ranges.size(); range_index++)
+ {
+ height_range_info_t& range = assemble_object.height_ranges[range_index];
+ DynamicPrintConfig range_config;
+ for (auto range_config_iter = range.range_params.begin(); range_config_iter != range.range_params.end(); range_config_iter++)
+ {
+ range_config.set_deserialize(range_config_iter->first, range_config_iter->second, config_substitutions);
+ BOOST_LOG_TRIVIAL(debug) << boost::format("object %1%, height range %2% key %3%, value %4%") % object_1_name % range_index % range_config_iter->first % range_config_iter->second;
+ }
+ object->layer_config_ranges[{ range.min_z, range.max_z }].assign_config(std::move(range_config));
+ }
+ }
+
if (assemble_object.pos_x.empty())
assemble_object.pos_x.resize(1, 0.f);
if (assemble_object.pos_y.empty())
@@ -864,6 +930,46 @@ static int construct_assemble_list(std::vector &assemble_
}
}
+ size_t assemble_count = merged_objects.size();
+ if ((assemble_count > 0) && (assemble_plate_info.assembled_param_list.size() > 0))
+ {
+ for (auto& iter : merged_objects)
+ {
+ ModelObject* assemble_obj = iter.second;
+ int assemble_index = iter.first;
+
+ auto assemble_iter = assemble_plate_info.assembled_param_list.find(assemble_index);
+
+ if (assemble_iter != assemble_plate_info.assembled_param_list.end())
+ {
+ assembled_param_info_t& assembled_param = assemble_iter->second;
+ if (!assembled_param.print_params.empty())
+ {
+ for (auto param_iter = assembled_param.print_params.begin(); param_iter != assembled_param.print_params.end(); param_iter++)
+ {
+ assemble_obj->config.set_deserialize(param_iter->first, param_iter->second, config_substitutions);
+ BOOST_LOG_TRIVIAL(debug) << boost::format("Plate %1%, assemble object %2% key %3%, value %4%") % (index + 1) % assemble_obj->name % param_iter->first % param_iter->second;
+ }
+ }
+
+ if (!assembled_param.height_ranges.empty())
+ {
+ for (int range_index = 0; range_index < assembled_param.height_ranges.size(); range_index++)
+ {
+ height_range_info_t& range = assembled_param.height_ranges[range_index];
+ DynamicPrintConfig range_config;
+ for (auto range_config_iter = range.range_params.begin(); range_config_iter != range.range_params.end(); range_config_iter++)
+ {
+ range_config.set_deserialize(range_config_iter->first, range_config_iter->second, config_substitutions);
+ BOOST_LOG_TRIVIAL(debug) << boost::format("assenble object %1%, height range %2% key %3%, value %4%") % assemble_obj->name % range_index % range_config_iter->first % range_config_iter->second;
+ }
+ assemble_obj->layer_config_ranges[{ range.min_z, range.max_z }].assign_config(std::move(range_config));
+ }
+ }
+ }
+ }
+ }
+
assemble_plate_info.filaments_count = used_filaments.size();
assemble_plate_info.assemble_obj_list.clear();
assemble_plate_info.assemble_obj_list.shrink_to_fit();
@@ -879,6 +985,56 @@ static int construct_assemble_list(std::vector &assemble_
return ret;
}
+static void load_downward_settings_list_from_config(std::string config_file, std::string printer_name, std::string printer_model, std::vector& downward_settings)
+{
+ std::map printer_params;
+
+ boost::filesystem::path directory_path(config_file);
+
+ BOOST_LOG_TRIVIAL(info) << boost::format("%1%, will parse file %2% for printer mode %3%, printer name %4%")%__FUNCTION__ % config_file %printer_model %printer_name;
+ if (!fs::exists(directory_path)) {
+ BOOST_LOG_TRIVIAL(warning) << boost::format("file %1% not exist.")%config_file;
+ }
+ else {
+ try {
+ json root_json;
+ boost::nowide::ifstream ifs(config_file);
+ ifs >> root_json;
+ ifs.close();
+
+ if (root_json.contains("printer")) {
+ json printer_json = root_json["printer"];
+ if (!printer_model.empty() && printer_json.contains(printer_model)) {
+ json printer_model_json = printer_json[printer_model];
+
+ if (printer_model_json.contains("downward_check")) {
+ json downward_check_json = printer_model_json["downward_check"];
+ if (downward_check_json.contains(printer_name)) {
+ downward_settings = downward_check_json[printer_name].get>();
+ BOOST_LOG_TRIVIAL(info) << boost::format("got %1% downward settings of %2% in cli_config.json")%downward_settings.size() %printer_name;
+ }
+ else {
+ BOOST_LOG_TRIVIAL(info) << boost::format("can not find %1% in downward_check of %2% in cli_config.json")%printer_name %printer_model;
+ }
+ }
+ else {
+ BOOST_LOG_TRIVIAL(info) << boost::format("can not find downward_check for %1% in cli_config.json")%printer_model;
+ }
+ }
+ else {
+ BOOST_LOG_TRIVIAL(info) << boost::format("can not find printer_model %1% in the file")%printer_model;
+ }
+ }
+ else {
+ BOOST_LOG_TRIVIAL(warning) << boost::format("can not find key printer in the file");
+ }
+ }
+ catch (std::exception &err) {
+ BOOST_LOG_TRIVIAL(error) << __FUNCTION__<< ": parse file "< &load_configs = m_config.option("load_settings", true)->values;
const std::vector &uptodate_configs = m_config.option("uptodate_settings", true)->values;
const std::vector &uptodate_filaments = m_config.option("uptodate_filaments", true)->values;
+ std::vector downward_settings = m_config.option("downward_settings", true)->values;
+ std::vector downward_compatible_machines;
//BBS: always use ForwardCompatibilitySubstitutionRule::Enable
//const ForwardCompatibilitySubstitutionRule config_substitution_rule = m_config.option>("config_compatibility", true)->value;
const ForwardCompatibilitySubstitutionRule config_substitution_rule = ForwardCompatibilitySubstitutionRule::Enable;
@@ -960,6 +1116,11 @@ int CLI::run(int argc, char **argv)
sliced_info_t sliced_info;
std::map record_key_values;
+ ConfigOptionBool* downward_check_option = m_config.option("downward_check");
+ if (downward_check_option)
+ downward_check = downward_check_option->value;
+
+ bool start_gui = m_actions.empty() && !downward_check;
if (start_gui) {
BOOST_LOG_TRIVIAL(info) << "no action, start gui directly" << std::endl;
::Label::initSysFont();
@@ -1028,6 +1189,7 @@ int CLI::run(int argc, char **argv)
//BBS: add plate data related logic
PlateDataPtrs plate_data_src;
+ std::vector plate_obj_size_infos;
int arrange_option;
int plate_to_slice = 0, filament_count = 0, duplicate_count = 0, real_duplicate_count = 0;
bool first_file = true, is_bbl_3mf = false, need_arrange = true, has_thumbnails = false, up_config_to_date = false, normative_check = true, duplicate_single_object = false, use_first_fila_as_default = false, minimum_save = false, enable_timelapse = false;
@@ -1035,12 +1197,21 @@ int CLI::run(int argc, char **argv)
Semver file_version;
std::map orients_requirement;
std::vector project_presets;
- std::string new_printer_name, current_printer_name, new_process_name, current_process_name, current_printer_system_name, current_process_system_name, new_process_system_name, new_printer_system_name, printer_model_id, printer_model;//, printer_inherits, print_inherits;
+ std::string new_printer_name, current_printer_name, new_process_name, current_process_name, current_printer_system_name, current_process_system_name, new_process_system_name, new_printer_system_name, printer_model_id, current_printer_model, printer_model;//, printer_inherits, print_inherits;
std::vector upward_compatible_printers, new_print_compatible_printers, current_print_compatible_printers, current_different_settings;
std::vector current_filaments_name, current_filaments_system_name, current_inherits_group;
DynamicPrintConfig load_process_config, load_machine_config;
bool new_process_config_is_system = true, new_printer_config_is_system = true;
- std::string pipe_name, makerlab_name, makerlab_version;
+ std::string pipe_name, makerlab_name, makerlab_version, different_process_setting;
+ const std::vector &metadata_name = m_config.option("metadata_name", true)->values;
+ const std::vector &metadata_value = m_config.option("metadata_value", true)->values;
+
+ if (metadata_name.size() != metadata_value.size())
+ {
+ BOOST_LOG_TRIVIAL(error) << boost::format("metadata_name should be the same size with metadata_value");
+ record_exit_reson(outfile_dir, CLI_INVALID_PARAMS, 0, cli_errors[CLI_INVALID_PARAMS], sliced_info);
+ flush_and_exit(CLI_INVALID_PARAMS);
+ }
// Read input file(s) if any.
BOOST_LOG_TRIVIAL(info) << "Will start to read model file now, file count :" << m_input_files.size() << "\n";
@@ -1270,6 +1441,7 @@ int CLI::run(int argc, char **argv)
}*/
current_printer_name = config.option("printer_settings_id")->value;
current_process_name = config.option("print_settings_id")->value;
+ current_printer_model = config.option("printer_model", true)->value;
current_filaments_name = config.option("filament_settings_id")->values;
BOOST_LOG_TRIVIAL(info) << boost::format("current_printer_name %1%, current_process_name %2%")%current_printer_name %current_process_name;
@@ -1631,6 +1803,11 @@ int CLI::run(int argc, char **argv)
config.set("print_settings_id", new_process_name, true);
//print_inherits = config.option("inherits", true)->value;
new_print_compatible_printers = config.option("compatible_printers", true)->values;
+
+ if (!is_bbl_3mf && config.option("different_settings_to_system")) {
+ std::vector diff_settings = config.option("different_settings_to_system")->values;
+ different_process_setting = diff_settings[0];
+ }
load_process_config = std::move(config);
BOOST_LOG_TRIVIAL(info) << boost::format("loaded process config %1%, type %2%, name %3%, inherits %4%")%file %config_name %config_from % new_process_system_name;
}
@@ -2043,7 +2220,7 @@ int CLI::run(int argc, char **argv)
}
//upwards check
- bool process_compatible = false, machine_upwards = false;
+ bool process_compatible = false, machine_upwards = false, machine_switch = false;
BOOST_LOG_TRIVIAL(info) << boost::format("current printer %1%, new printer %2%, current process %3%, new process %4%")%current_printer_name %new_printer_name %current_process_name %new_process_name;
BOOST_LOG_TRIVIAL(info) << boost::format("current printer inherits %1%, new printer inherits %2%, current process inherits %3%, new process inherits %4%")
%current_printer_system_name %new_printer_system_name %current_process_system_name %new_process_system_name;
@@ -2105,11 +2282,16 @@ int CLI::run(int argc, char **argv)
%current_printer_name %current_printer_system_name %current_process_name %current_process_system_name %process_compatible;
}
if (!process_compatible && !new_printer_name.empty() && !current_printer_name.empty() && (new_printer_name != current_printer_name)) {
+ //set all printer to compatible
+ process_compatible = true;
+ machine_switch = true;
+ BOOST_LOG_TRIVIAL(info) << boost::format("switch to new printers, set to compatible");
if (upward_compatible_printers.size() > 0) {
for (int index = 0; index < upward_compatible_printers.size(); index++) {
if (upward_compatible_printers[index] == new_printer_system_name) {
process_compatible = true;
machine_upwards = true;
+ BOOST_LOG_TRIVIAL(info) << boost::format("new printer is upward_compatible");
break;
}
}
@@ -2119,11 +2301,11 @@ int CLI::run(int argc, char **argv)
flush_and_exit(CLI_3MF_NEW_MACHINE_NOT_SUPPORTED);
}
}
- else {
+ /*else {
BOOST_LOG_TRIVIAL(error) <<__FUNCTION__ << boost::format(" %1%: current 3mf file not support upward_compatible_printers, can not change machine preset.")%__LINE__;
record_exit_reson(outfile_dir, CLI_3MF_NOT_SUPPORT_MACHINE_CHANGE, 0, cli_errors[CLI_3MF_NOT_SUPPORT_MACHINE_CHANGE], sliced_info);
flush_and_exit(CLI_3MF_NOT_SUPPORT_MACHINE_CHANGE);
- }
+ }*/
}
if (!process_compatible) {
@@ -2131,10 +2313,11 @@ int CLI::run(int argc, char **argv)
record_exit_reson(outfile_dir, CLI_PROCESS_NOT_COMPATIBLE, 0, cli_errors[CLI_PROCESS_NOT_COMPATIBLE], sliced_info);
flush_and_exit(CLI_PROCESS_NOT_COMPATIBLE);
}
+ sliced_info.upward_machines = upward_compatible_printers;
//create project embedded preset if needed
Preset *new_preset = NULL;
- if (is_bbl_3mf && machine_upwards) {
+ if (is_bbl_3mf && machine_switch) {
//we need to update the compatible printer and create a new process here, or if we load the 3mf in studio, the process preset can not be loaded as not compatible
Preset *current_preset = NULL;
size_t project_presets_count = project_presets.size();
@@ -2226,6 +2409,9 @@ int CLI::run(int argc, char **argv)
std::vector& inherits_group = m_print_config.option("inherits_group", true)->values;
inherits_group.resize(filament_count + 2, std::string());
different_settings.resize(filament_count + 2, std::string());
+ if (!is_bbl_3mf && !different_process_setting.empty()) {
+ different_settings[0] = different_process_setting;
+ }
//set the machine settings into print config
if (!new_printer_name.empty() || up_config_to_date) {
std::vector different_keys;
@@ -2291,33 +2477,40 @@ int CLI::run(int argc, char **argv)
if (root_json.contains("printer")) {
json printer_json = root_json["printer"];
if (!printer_model.empty() && printer_json.contains(printer_model)) {
- json new_printer_json = printer_json[printer_model];
- printer_params = new_printer_json.get>();
+ json printer_model_json = printer_json[printer_model];
- for (auto param_iter = printer_params.begin(); param_iter != printer_params.end(); param_iter++)
- {
- std::string key = param_iter->first;
- //replace "cli_safe" with "machine_max"
- key.replace(0, 8, "machine_max");
+ if (printer_model_json.contains("machine_limits")) {
+ json machine_limits_json = printer_model_json["machine_limits"];
+ printer_params = machine_limits_json.get>();
- ConfigOptionFloats* option = m_print_config.option(key);
- if (option) {
- //de-serialize the values from param_iter->second, and do the compare here
- unsigned int array_count = option->size();
- ConfigOptionFloats new_option;
- new_option.deserialize(param_iter->second);
- unsigned int new_array_count = new_option.size();
- for (unsigned int index = 0; index < array_count; index++)
- {
- if ((index < new_array_count) && new_option.values[index] != 0.f && (new_option.values[index] < option->values[index]))
+ for (auto param_iter = printer_params.begin(); param_iter != printer_params.end(); param_iter++)
+ {
+ std::string key = param_iter->first;
+ //replace "cli_safe" with "machine_max"
+ key.replace(0, 8, "machine_max");
+
+ ConfigOptionFloats* option = m_print_config.option(key);
+ if (option) {
+ //de-serialize the values from param_iter->second, and do the compare here
+ unsigned int array_count = option->size();
+ ConfigOptionFloats new_option;
+ new_option.deserialize(param_iter->second);
+ unsigned int new_array_count = new_option.size();
+ for (unsigned int index = 0; index < array_count; index++)
{
- BOOST_LOG_TRIVIAL(info) << boost::format("set key %1% index %2%, from %3% to %4%") % key %index %option->values[index] % new_option.values[index];
- option->values[index] = new_option.values[index];
+ if ((index < new_array_count) && new_option.values[index] != 0.f && (new_option.values[index] < option->values[index]))
+ {
+ BOOST_LOG_TRIVIAL(info) << boost::format("set key %1% index %2%, from %3% to %4%") % key %index %option->values[index] % new_option.values[index];
+ option->values[index] = new_option.values[index];
+ }
}
}
+ else
+ BOOST_LOG_TRIVIAL(warning) << boost::format("can not find key %1% in config") %key;
}
- else
- BOOST_LOG_TRIVIAL(warning) << boost::format("can not find key %1% in config") %key;
+ }
+ else {
+ BOOST_LOG_TRIVIAL(info) << boost::format("can not find machine_limits for printer %1% in cli_config.json")%printer_model;
}
}
else {
@@ -2407,7 +2600,7 @@ int CLI::run(int argc, char **argv)
}
}
- if (machine_upwards) {
+ if (machine_switch) {
print_compatible_printers.push_back(new_printer_system_name);
std::string old_setting = different_settings[0];
@@ -2792,134 +2985,6 @@ int CLI::run(int argc, char **argv)
flush_and_exit(CLI_INVALID_VALUES_IN_3MF);
}
- //BBS: partplate list
- Slic3r::GUI::PartPlateList partplate_list(NULL, m_models.data(), printer_technology);
- //use Pointfs insteadof Points
- Pointfs current_printable_area = m_print_config.opt("printable_area")->values;
- Pointfs current_exclude_area = m_print_config.opt("bed_exclude_area")->values;
- //update part plate's size
- double print_height = m_print_config.opt_float("printable_height");
- double height_to_lid = m_print_config.opt_float("extruder_clearance_height_to_lid");
- double height_to_rod = m_print_config.opt_float("extruder_clearance_height_to_rod");
- double cleareance_radius = m_print_config.opt_float("extruder_clearance_radius");
- //double plate_stride;
- std::string bed_texture;
-
- current_printable_width = current_printable_area[2].x() - current_printable_area[0].x();
- current_printable_depth = current_printable_area[2].y() - current_printable_area[0].y();
- current_printable_height = print_height;
- if (old_printable_width == 0)
- old_printable_width = current_printable_width;
- if (old_printable_depth == 0)
- old_printable_depth = current_printable_depth;
- if (old_printable_height == 0)
- old_printable_height = current_printable_height;
- if ((old_printable_width > 0)&&(old_printable_depth > 0)&&(old_printable_height > 0))
- {
- //check the printable size logic
- //if ((old_printable_width > current_printable_width) || (old_printable_depth > current_printable_depth) || (old_printable_height > current_printable_height))
- if ((old_printable_width > current_printable_width) || (old_printable_depth > current_printable_depth))
- {
- BOOST_LOG_TRIVIAL(error) << boost::format("old printable size {%1%, %2%, %3%} is larger than new printable size {%4%, %5%, %6%}, can not print")
- %old_printable_width %old_printable_depth %old_printable_height %current_printable_width %current_printable_depth %current_printable_height;
- record_exit_reson(outfile_dir, CLI_PRINTABLE_SIZE_REDUCED, 0, cli_errors[CLI_PRINTABLE_SIZE_REDUCED], sliced_info);
- flush_and_exit(CLI_PRINTABLE_SIZE_REDUCED);
- }
- else if ((old_printable_width < current_printable_width) || (old_printable_depth < current_printable_depth))
- {
- BOOST_LOG_TRIVIAL(info) << boost::format("old printable size {%1%, %2%, %3%} is smaller than new printable size {%4%, %5%, %6%}, need to center the model")
- %old_printable_width %old_printable_depth %old_printable_height %current_printable_width %current_printable_depth %current_printable_height;
- shrink_to_new_bed = true;
- }
- else {
- BOOST_LOG_TRIVIAL(info) << boost::format("old printable size {%1%, %2%, %3%}, new printable size {%4%, %5%, %6%}")
- %old_printable_width %old_printable_depth %old_printable_height %current_printable_width %current_printable_depth %current_printable_height;
- }
- }
-
- if (m_models.size() > 0)
- {
- BOOST_LOG_TRIVIAL(info) << boost::format("translate_old %1%, shrink_to_new_bed %2%, old bed size {%3%, %4%, %5%}")%translate_old%shrink_to_new_bed %old_printable_width %old_printable_depth %old_printable_height;
- if (translate_old) {
- BOOST_LOG_TRIVIAL(info) << boost::format("translate old 3mf, switch to older bed size,{%1%, %2%, %3%}")%(old_printable_width + bed3d_ax3s_default_tip_radius)%(old_printable_depth+bed3d_ax3s_default_tip_radius) %old_printable_height;
- partplate_list.reset_size(old_printable_width + bed3d_ax3s_default_tip_radius, old_printable_depth + bed3d_ax3s_default_tip_radius, old_printable_height, false);
- }
- else {
- partplate_list.reset_size(old_printable_width, old_printable_depth, old_printable_height, false);
- }
- partplate_list.set_shapes(current_printable_area, current_exclude_area, bed_texture, height_to_lid, height_to_rod);
- //plate_stride = partplate_list.plate_stride_x();
- }
-
- auto translate_models = [translate_old, shrink_to_new_bed, old_printable_width, old_printable_depth, old_printable_height, current_printable_width, current_printable_depth, current_printable_height] (Slic3r::GUI::PartPlateList& plate_list, DynamicPrintConfig& print_config) {
- //BBS: translate old 3mf to correct positions
- if (translate_old) {
- //translate the objects
- int plate_count = plate_list.get_plate_count();
- for (int index = 1; index < plate_count; index ++) {
- Slic3r::GUI::PartPlate* cur_plate = (Slic3r::GUI::PartPlate *)plate_list.get_plate(index);
-
- Vec3d cur_origin = cur_plate->get_origin();
- Vec3d new_origin = plate_list.compute_origin_using_new_size(index, old_printable_width, old_printable_depth);
-
- cur_plate->translate_all_instance(new_origin - cur_origin);
- }
- BOOST_LOG_TRIVIAL(info) << boost::format("translate old 3mf, switch back to current bed size,{%1%, %2%, %3%}")%old_printable_width %old_printable_depth %old_printable_height;
- plate_list.reset_size(old_printable_width, old_printable_depth, old_printable_height, true, true);
- }
-
- if (shrink_to_new_bed)
- {
- int plate_count = plate_list.get_plate_count();
- ConfigOptionFloats *wipe_x_option = nullptr, *wipe_y_option = nullptr;
- Vec3d wipe_offset;
- if (print_config.has("wipe_tower_x")) {
- wipe_x_option = dynamic_cast(print_config.option("wipe_tower_x"));
- wipe_y_option = dynamic_cast(print_config.option("wipe_tower_y"));
- }
- for (int index = 0; index < plate_count; index ++) {
- Slic3r::GUI::PartPlate* cur_plate = (Slic3r::GUI::PartPlate *)plate_list.get_plate(index);
-
- Vec3d cur_origin = cur_plate->get_origin();
- Vec3d new_origin = plate_list.compute_origin_using_new_size(index, current_printable_width, current_printable_depth);
- Vec3d cur_center_offset { ((double)old_printable_width)/2, ((double)old_printable_depth)/2, 0}, new_center_offset { ((double)current_printable_width)/2, ((double)current_printable_depth)/2, 0};
- Vec3d cur_center = cur_origin + cur_center_offset;
- Vec3d new_center = new_origin + new_center_offset;
- Vec3d offset = new_center - cur_center;
-
- cur_plate->translate_all_instance(offset);
- if (index == 0)
- wipe_offset = offset;
- if (wipe_x_option) {
- BOOST_LOG_TRIVIAL(info) << boost::format("shrink_to_new_bed, plate %1%: wipe tower src: {%2%, %3%}")%(index+1) %wipe_x_option->get_at(index) %wipe_y_option->get_at(index);
- ConfigOptionFloat wipe_tower_x(wipe_x_option->get_at(index) + wipe_offset(0));
- ConfigOptionFloat wipe_tower_y(wipe_y_option->get_at(index) + wipe_offset(1));
-
- wipe_x_option->set_at(&wipe_tower_x, index, 0);
- wipe_y_option->set_at(&wipe_tower_y, index, 0);
- BOOST_LOG_TRIVIAL(info) << boost::format("shrink_to_new_bed, plate %1% wipe tower changes to: {%2%, %3%}")%(index+1) %wipe_x_option->get_at(index) %wipe_y_option->get_at(index);
- }
-
- BOOST_LOG_TRIVIAL(info) << boost::format("shrink_to_new_bed, plate %1% translate offset: {%2%, %3%, %4%}")%(index+1) %offset[0] %offset[1] %offset[2];
- }
- BOOST_LOG_TRIVIAL(info) << boost::format("shrink_to_new_bed, shrink all the models to current bed size,{%1%, %2%, %3%}")%current_printable_width %current_printable_depth %current_printable_height;
- plate_list.reset_size(current_printable_width, current_printable_depth, current_printable_height, true, true);
- }
- };
- if (plate_data_src.size() > 0)
- {
- partplate_list.load_from_3mf_structure(plate_data_src);
-
- translate_models(partplate_list, m_print_config);
- }
-
- /*for (ModelObject *model_object : m_models[0].objects)
- for (ModelInstance *model_instance : model_object->instances)
- {
- const Vec3d &instance_offset = model_instance->get_offset();
- BOOST_LOG_TRIVIAL(info) << boost::format("instance %1% transform {%2%,%3%,%4%} at %5%:%6%")% model_object->name % instance_offset.x() % instance_offset.y() %instance_offset.z() % __FUNCTION__ % __LINE__<< std::endl;
- }*/
-
auto timelapse_type_opt = m_print_config.option("timelapse_type");
bool is_smooth_timelapse = false;
if (enable_timelapse && timelapse_type_opt && (timelapse_type_opt->getInt() == TimelapseType::tlSmooth))
@@ -2955,6 +3020,378 @@ int CLI::run(int argc, char **argv)
}
}
+ //BBS: partplate list
+ Slic3r::GUI::PartPlateList partplate_list(NULL, m_models.data(), printer_technology);
+ //use Pointfs insteadof Points
+ Pointfs current_printable_area = m_print_config.opt("printable_area")->values;
+ Pointfs current_exclude_area = m_print_config.opt("bed_exclude_area")->values;
+ //update part plate's size
+ double print_height = m_print_config.opt_float("printable_height");
+ double height_to_lid = m_print_config.opt_float("extruder_clearance_height_to_lid");
+ double height_to_rod = m_print_config.opt_float("extruder_clearance_height_to_rod");
+ double cleareance_radius = m_print_config.opt_float("extruder_clearance_radius");
+ //double plate_stride;
+ std::string bed_texture;
+
+ current_printable_width = current_printable_area[2].x() - current_printable_area[0].x();
+ current_printable_depth = current_printable_area[2].y() - current_printable_area[0].y();
+ current_printable_height = print_height;
+ if (old_printable_width == 0)
+ old_printable_width = current_printable_width;
+ if (old_printable_depth == 0)
+ old_printable_depth = current_printable_depth;
+ if (old_printable_height == 0)
+ old_printable_height = current_printable_height;
+ if (is_bbl_3mf && (old_printable_width > 0) && (old_printable_depth > 0) && (old_printable_height > 0))
+ {
+ //check the printable size logic
+ //if ((old_printable_width > current_printable_width) || (old_printable_depth > current_printable_depth) || (old_printable_height > current_printable_height))
+ if ((old_printable_width > current_printable_width) || (old_printable_depth > current_printable_depth) || (old_printable_height > current_printable_height))
+ {
+ BOOST_LOG_TRIVIAL(error) << boost::format("old printable size {%1%, %2%, %3%} is larger than new printable size {%4%, %5%, %6%}, the object size should be limited")
+ %old_printable_width %old_printable_depth %old_printable_height %current_printable_width %current_printable_depth %current_printable_height;
+ /*record_exit_reson(outfile_dir, CLI_PRINTABLE_SIZE_REDUCED, 0, cli_errors[CLI_PRINTABLE_SIZE_REDUCED], sliced_info);
+ flush_and_exit(CLI_PRINTABLE_SIZE_REDUCED);*/
+ shrink_to_new_bed = 2;
+ }
+ else if ((old_printable_width < current_printable_width) || (old_printable_depth < current_printable_depth))
+ {
+ BOOST_LOG_TRIVIAL(info) << boost::format("old printable size {%1%, %2%, %3%} is smaller than new printable size {%4%, %5%, %6%}, need to center the model")
+ %old_printable_width %old_printable_depth %old_printable_height %current_printable_width %current_printable_depth %current_printable_height;
+ shrink_to_new_bed = 1;
+ }
+ else {
+ if ((current_exclude_area.size() > 0)&&(current_exclude_area != old_exclude_area)) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("old printable size {%1%, %2%, %3%}, new printable size {%4%, %5%, %6%}, exclude_area different, need to shrink")
+ %old_printable_width %old_printable_depth %old_printable_height %current_printable_width %current_printable_depth %current_printable_height;
+ shrink_to_new_bed = 2;
+ }
+ else {
+ BOOST_LOG_TRIVIAL(info) << boost::format("old printable size {%1%, %2%, %3%}, new printable size {%4%, %5%, %6%}, extract the same, no need shrink")
+ %old_printable_width %old_printable_depth %old_printable_height %current_printable_width %current_printable_depth %current_printable_height;
+ }
+ }
+ }
+
+ if (m_models.size() > 0)
+ {
+ BOOST_LOG_TRIVIAL(info) << boost::format("translate_old %1%, shrink_to_new_bed %2%, old bed size {%3%, %4%, %5%}")%translate_old%shrink_to_new_bed %old_printable_width %old_printable_depth %old_printable_height;
+ if (translate_old) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("translate old 3mf, switch to older bed size,{%1%, %2%, %3%}")%(old_printable_width + bed3d_ax3s_default_tip_radius)%(old_printable_depth+bed3d_ax3s_default_tip_radius) %old_printable_height;
+ partplate_list.reset_size(old_printable_width + bed3d_ax3s_default_tip_radius, old_printable_depth + bed3d_ax3s_default_tip_radius, old_printable_height, false);
+ }
+ else {
+ partplate_list.reset_size(old_printable_width, old_printable_depth, old_printable_height, false);
+ }
+ partplate_list.set_shapes(current_printable_area, current_exclude_area, bed_texture, height_to_lid, height_to_rod);
+ //plate_stride = partplate_list.plate_stride_x();
+ }
+
+ auto get_print_sequence = [](Slic3r::GUI::PartPlate* plate, DynamicPrintConfig& print_config, bool &is_seq_print) {
+ PrintSequence curr_plate_seq = plate->get_print_seq();
+ if (curr_plate_seq == PrintSequence::ByDefault) {
+ auto seq_print = print_config.option>("print_sequence");
+ if (seq_print && (seq_print->value == PrintSequence::ByObject)) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("plate print by object, set from global");
+ is_seq_print = true;
+ }
+ }
+ else if (curr_plate_seq == PrintSequence::ByObject) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("plate print by object, set from plate self");
+ is_seq_print = true;
+ }
+ };
+
+ auto check_plate_wipe_tower = [get_print_sequence, is_smooth_timelapse](Slic3r::GUI::PartPlate* plate, int plate_index, DynamicPrintConfig& print_config, plate_obj_size_info_t &plate_obj_size_info) {
+ plate_obj_size_info.obj_bbox= plate->get_objects_bounding_box();
+ BOOST_LOG_TRIVIAL(info) << boost::format("plate %1%, object bbox: min {%2%, %3%, %4%} - max {%5%, %6%, %7%}")
+ %(plate_index+1) %plate_obj_size_info.obj_bbox.min.x() % plate_obj_size_info.obj_bbox.min.y() % plate_obj_size_info.obj_bbox.min.z() %plate_obj_size_info.obj_bbox.max.x() % plate_obj_size_info.obj_bbox.max.y() % plate_obj_size_info.obj_bbox.max.z();
+ if (!print_config.has("wipe_tower_x")) {
+ plate_obj_size_info.has_wipe_tower = false;
+ BOOST_LOG_TRIVIAL(info) << boost::format("can not found wipe_tower_x in config, set to no wipe tower");
+ return;
+ }
+
+ int valid_count = plate->printable_instance_size();
+ if (valid_count <= 0){
+ plate_obj_size_info.has_wipe_tower = false;
+ BOOST_LOG_TRIVIAL(info) << boost::format("no printable object found, set to no wipe tower");
+ return;
+ }
+
+ bool is_sequence = false;
+ get_print_sequence(plate, print_config, is_sequence);
+ if (is_sequence && valid_count > 1) {
+ plate_obj_size_info.has_wipe_tower = false;
+ BOOST_LOG_TRIVIAL(info) << boost::format("sequence print, valid_count=%1%, set to no wipe tower")%valid_count;
+ return;
+ }
+
+ std::vector extruders = plate->get_extruders_under_cli(true, print_config);
+ unsigned int filaments_cnt = extruders.size();
+ if ((filaments_cnt <= 1) && !is_smooth_timelapse){
+ plate_obj_size_info.has_wipe_tower = false;
+ BOOST_LOG_TRIVIAL(info) << boost::format("filaments_cnt=%1%, set to no wipe tower")%filaments_cnt;
+ return;
+ }
+
+ ConfigOptionFloats *wipe_x_option = dynamic_cast(print_config.option("wipe_tower_x"));
+ ConfigOptionFloats *wipe_y_option = dynamic_cast(print_config.option("wipe_tower_y"));
+
+ plate_obj_size_info.wipe_x = wipe_x_option->get_at(plate_index);
+ plate_obj_size_info.wipe_y = wipe_y_option->get_at(plate_index);
+
+ ConfigOptionFloat* width_option = print_config.option("prime_tower_width", true);
+ plate_obj_size_info.wipe_width = width_option->value;
+
+ ConfigOptionFloat* brim_width_option = print_config.option("prime_tower_brim_width", true);
+ float brim_width = brim_width_option->value;
+
+ ConfigOptionFloat* volume_option = print_config.option("prime_volume", true);
+ float wipe_volume = volume_option->value;
+
+ Vec3d wipe_tower_size = plate->estimate_wipe_tower_size(print_config, plate_obj_size_info.wipe_width, wipe_volume, filaments_cnt);
+ plate_obj_size_info.wipe_depth = wipe_tower_size(1);
+
+ Vec3d origin = plate->get_origin();
+ Vec3d start(origin(0) + plate_obj_size_info.wipe_x - brim_width, origin(1) + plate_obj_size_info.wipe_y, 0.f);
+ plate_obj_size_info.obj_bbox.merge(start);
+ Vec3d end(origin(0) + plate_obj_size_info.wipe_x + plate_obj_size_info.wipe_width + brim_width, origin(1) + plate_obj_size_info.wipe_y + plate_obj_size_info.wipe_depth, 0.f);
+ plate_obj_size_info.obj_bbox.merge(end);
+ plate_obj_size_info.has_wipe_tower = true;
+ BOOST_LOG_TRIVIAL(info) << boost::format("plate %1%, has wipe tower, wipe bbox: min {%2%, %3%, %4%} - max {%5%, %6%, %7%}")
+ %(plate_index+1) %start.x() % start.y() % start.z() %end.x() % end.y() % end.z();
+ };
+
+ auto translate_models = [translate_old, shrink_to_new_bed, old_printable_width, old_printable_depth, old_printable_height, current_printable_width, current_printable_depth, current_printable_height, current_exclude_area, &plate_obj_size_infos] (Slic3r::GUI::PartPlateList& plate_list, DynamicPrintConfig& print_config) {
+ //BBS: translate old 3mf to correct positions
+ if (translate_old) {
+ //translate the objects
+ int plate_count = plate_list.get_plate_count();
+ for (int index = 1; index < plate_count; index ++) {
+ Slic3r::GUI::PartPlate* cur_plate = (Slic3r::GUI::PartPlate *)plate_list.get_plate(index);
+
+ Vec3d cur_origin = cur_plate->get_origin();
+ Vec3d new_origin = plate_list.compute_origin_using_new_size(index, old_printable_width, old_printable_depth);
+
+ cur_plate->translate_all_instance(new_origin - cur_origin);
+ }
+ BOOST_LOG_TRIVIAL(info) << boost::format("translate old 3mf, switch back to current bed size,{%1%, %2%, %3%}")%old_printable_width %old_printable_depth %old_printable_height;
+ plate_list.reset_size(old_printable_width, old_printable_depth, old_printable_height, true, true);
+ }
+
+ if (shrink_to_new_bed > 0)
+ {
+ int plate_count = plate_list.get_plate_count();
+ ConfigOptionFloats *wipe_x_option = nullptr, *wipe_y_option = nullptr;
+ Vec3d wipe_offset;
+ if (print_config.has("wipe_tower_x")) {
+ wipe_x_option = dynamic_cast(print_config.option("wipe_tower_x"));
+ wipe_y_option = dynamic_cast(print_config.option("wipe_tower_y"));
+ }
+ double exclude_width = 0.f, exclude_depth = 0.f;
+
+ if (current_exclude_area.size() >= 4) {
+ exclude_width = current_exclude_area[2].x() - current_exclude_area[0].x();
+ exclude_depth = current_exclude_area[2].y() - current_exclude_area[0].y();
+ }
+ for (int index = 0; index < plate_count; index ++) {
+ Slic3r::GUI::PartPlate* cur_plate = (Slic3r::GUI::PartPlate *)plate_list.get_plate(index);
+ Vec3d cur_origin = cur_plate->get_origin();
+ Vec3d new_origin = plate_list.compute_origin_using_new_size(index, current_printable_width, current_printable_depth);
+ Vec3d offset;
+
+
+ if (shrink_to_new_bed == 1) {
+ Vec3d cur_center_offset { ((double)old_printable_width)/2, ((double)old_printable_depth)/2, 0}, new_center_offset { ((double)current_printable_width)/2, ((double)current_printable_depth)/2, 0};
+ Vec3d cur_center = cur_origin + cur_center_offset;
+ Vec3d new_center = new_origin + new_center_offset;
+
+ offset = new_center - cur_center;
+
+ if (index == 0)
+ wipe_offset = offset;
+
+ BOOST_LOG_TRIVIAL(info) << boost::format("shrink_to_new_bed 1, plate %1%, cur_origin: {%2%, %3%}, new_origin: {%4%, %5%}, cur_center {%6%, %7%} new_center {%8%, %9%}")
+ %(index+1) %cur_origin(0) %cur_origin(1) %new_origin(0) %new_origin(1) %cur_center(0) %cur_center(1) %new_center(0) %new_center(1);
+ }
+ else {
+ //center the object
+ Vec3d new_center_offset { ((double)current_printable_width + exclude_width)/2, ((double)current_printable_depth + exclude_depth)/2, 0};
+ BoundingBoxf3& bbox = plate_obj_size_infos[index].obj_bbox;
+ Vec3d size = bbox.size();
+ if (size.x() > (current_printable_width - exclude_width))
+ new_center_offset(0) = ((double)current_printable_width)/2;
+ if (size.y() > (current_printable_depth - exclude_depth))
+ new_center_offset(1) = ((double)current_printable_depth)/2;
+ Vec3d new_center = new_origin + new_center_offset;
+
+ offset = new_center - bbox.center();
+
+ wipe_offset = offset + cur_origin - new_origin;
+ BOOST_LOG_TRIVIAL(info) << boost::format("shrink_to_new_bed 2, plate %1%, new_origin: {%2%, %3%}, new_center: {%4%, %5%}, obj bbox(including wipe tower) min {%6%, %7%} max {%8%, %9%}")
+ %(index+1) %new_origin(0) %new_origin(1) %new_center(0) %new_center(1) %bbox.min(0) %bbox.min(1) %bbox.max(0) %bbox.max(1);
+ }
+ offset(2) = 0.f;
+ BOOST_LOG_TRIVIAL(info) << boost::format("shrink_to_new_bed %1%, plate %2% translate offset: {%3%, %4%} wipe_offset {%5%, %6%}") %shrink_to_new_bed %(index+1) %offset[0] %offset[1] %wipe_offset[0] %wipe_offset[1];
+ cur_plate->translate_all_instance(offset);
+
+ if (wipe_x_option) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("shrink_to_new_bed %4%, plate %1%: wipe tower src: {%2%, %3%}")%(index+1) %wipe_x_option->get_at(index) %wipe_y_option->get_at(index)%shrink_to_new_bed;
+ ConfigOptionFloat wipe_tower_x(wipe_x_option->get_at(index) + wipe_offset(0));
+ ConfigOptionFloat wipe_tower_y(wipe_y_option->get_at(index) + wipe_offset(1));
+
+ wipe_x_option->set_at(&wipe_tower_x, index, 0);
+ wipe_y_option->set_at(&wipe_tower_y, index, 0);
+ BOOST_LOG_TRIVIAL(info) << boost::format("shrink_to_new_bed %4%, plate %1% wipe tower changes to: {%2%, %3%}")%(index+1) %wipe_x_option->get_at(index) %wipe_y_option->get_at(index) %shrink_to_new_bed;
+ }
+
+
+ }
+ BOOST_LOG_TRIVIAL(info) << boost::format("shrink_to_new_bed, shrink all the models to current bed size,{%1%, %2%, %3%}")%current_printable_width %current_printable_depth %current_printable_height;
+ plate_list.reset_size(current_printable_width, current_printable_depth, current_printable_height, true, true);
+ }
+ };
+ if (plate_data_src.size() > 0)
+ {
+ partplate_list.load_from_3mf_structure(plate_data_src);
+
+ int plate_count = partplate_list.get_plate_count();
+ plate_obj_size_infos.resize(plate_count, plate_obj_size_info_t());
+ for (int index = 0; index < plate_count; index ++) {
+ Slic3r::GUI::PartPlate* cur_plate = (Slic3r::GUI::PartPlate *)partplate_list.get_plate(index);
+
+ check_plate_wipe_tower(cur_plate, index, m_print_config, plate_obj_size_infos[index]);
+ BOOST_LOG_TRIVIAL(info) << boost::format("plate %1%, has_wipe_tower %2%, wipe_x %3%, wipe_y %4%, width %5%, depth %6%")
+ %(index+1) %plate_obj_size_infos[index].has_wipe_tower %plate_obj_size_infos[index].wipe_x %plate_obj_size_infos[index].wipe_y %plate_obj_size_infos[index].wipe_width %plate_obj_size_infos[index].wipe_depth;
+ }
+
+ translate_models(partplate_list, m_print_config);
+ }
+
+ /*for (ModelObject *model_object : m_models[0].objects)
+ for (ModelInstance *model_instance : model_object->instances)
+ {
+ const Vec3d &instance_offset = model_instance->get_offset();
+ BOOST_LOG_TRIVIAL(info) << boost::format("instance %1% transform {%2%,%3%,%4%} at %5%:%6%")% model_object->name % instance_offset.x() % instance_offset.y() %instance_offset.z() % __FUNCTION__ % __LINE__<< std::endl;
+ }*/
+
+ //doing downward_check
+ std::vector downward_check_printers;
+ std::vector downward_check_status;
+ if (downward_check) {
+ bool use_default = false;
+ std::string default_path;
+ if (downward_settings.size() == 0) {
+ //parse from internal
+ std::string cli_config_file = resources_dir() + "/profiles/BBL/cli_config.json";
+ load_downward_settings_list_from_config(cli_config_file, current_printer_name, current_printer_model, downward_settings);
+ use_default = true;
+ default_path = resources_dir() + "/profiles/BBL/machine_full/";
+ }
+ for (auto const &file : downward_settings) {
+ DynamicPrintConfig config;
+ std::string config_type, config_name, filament_id, config_from, downward_printer;
+ std::string file_path = use_default?(default_path+file+".json"):file;
+ int ret = load_config_file(file_path, config, config_type, config_name, filament_id, config_from);
+ if (ret) {
+ record_exit_reson(outfile_dir, ret, 0, cli_errors[ret], sliced_info);
+ flush_and_exit(ret);
+ }
+ if ((config_type != "machine") || (config_from != "system")) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("found invalid config type %1% or from %2% in file %3% when downward_check")%config_type %config_from %file_path;
+ record_exit_reson(outfile_dir, ret, 0, cli_errors[CLI_CONFIG_FILE_ERROR], sliced_info);
+ flush_and_exit(ret);
+
+ }
+ BOOST_LOG_TRIVIAL(info) << boost::format("downward_check: loaded machine config %1%, from %2%")%config_name %file_path ;
+
+ printer_plate_info_t printer_plate;
+ Pointfs temp_printable_area, temp_exclude_area;
+
+ printer_plate.printer_name = config_name;
+
+ temp_printable_area = config.option("printable_area", true)->values;
+ temp_exclude_area = config.option("bed_exclude_area", true)->values;
+ if (temp_printable_area.size() >= 4) {
+ printer_plate.printable_width = (int)(temp_printable_area[2].x() - temp_printable_area[0].x());
+ printer_plate.printable_depth = (int)(temp_printable_area[2].y() - temp_printable_area[0].y());
+ printer_plate.printable_height = (int)(config.opt_float("printable_height"));
+ }
+ if (temp_exclude_area.size() >= 4) {
+ printer_plate.exclude_width = (int)(temp_exclude_area[2].x() - temp_exclude_area[0].x());
+ printer_plate.exclude_depth = (int)(temp_exclude_area[2].y() - temp_exclude_area[0].y());
+ printer_plate.exclude_x = (int)temp_exclude_area[0].x();
+ printer_plate.exclude_y = (int)temp_exclude_area[0].y();
+ }
+ BOOST_LOG_TRIVIAL(info) << boost::format("downward_check: printable size{%1%,%2%, %3%}, exclude area{%4%, %5%: %6% x %7%}")
+ %printer_plate.printable_width %printer_plate.printable_depth %printer_plate.printable_height
+ %printer_plate.exclude_x %printer_plate.exclude_y %printer_plate.exclude_width %printer_plate.exclude_depth;
+ downward_check_printers.push_back(std::move(printer_plate));
+ }
+ }
+
+ int downward_check_size = downward_check_printers.size();
+ if (downward_check_size > 0)
+ {
+ downward_check_status.resize(downward_check_size, false);
+ int plate_count = partplate_list.get_plate_count();
+ int failed_count = 0;
+ for (int index = 0; index < plate_count; index ++)
+ {
+ if (failed_count == downward_check_size) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("downward_check: all failed, size %1%")%downward_check_size;
+ break;
+ }
+ Slic3r::GUI::PartPlate* cur_plate = (Slic3r::GUI::PartPlate *)partplate_list.get_plate(index);
+ Vec3d size = plate_obj_size_infos[index].obj_bbox.size();
+
+ for (int index2 = 0; index2 < downward_check_size; index2 ++)
+ {
+ if (failed_count == downward_check_size) {
+ break;
+ }
+ if (downward_check_status[index2])
+ continue;
+ printer_plate_info_t& plate_info = downward_check_printers[index2];
+ if ((size.z() > plate_info.printable_height) || (size.y() > plate_info.printable_depth) || (size.x() > plate_info.printable_width)) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("plate %1%, downward_check index %2%, name %3%, bbox {%4%, %5%, %6%} exceeds printer size {%7%, %8%, %9%}")
+ %(index+1) %(index2+1) %plate_info.printer_name
+ %size.x() % size.y() % size.z() %plate_info.printable_width %plate_info.printable_depth %plate_info.printable_height;
+ downward_check_status[index2] = true;
+ failed_count ++;
+ continue;
+ }
+ if (plate_info.exclude_width > 0) {
+ int real_width = plate_info.printable_width - plate_info.exclude_width;
+ int real_depth = plate_info.printable_depth - plate_info.exclude_depth;
+ if ((size.x() > real_width) && (size.y() > real_depth)) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("plate %1%, downward_check index %2%, name %3%, bbox {%4%, %5%} exceeds real size without exclude_area {%6%, %7%}")
+ %(index+1) %(index2+1) %plate_info.printer_name
+ %size.x() % size.y() %real_width %real_depth;
+ downward_check_status[index2] = true;
+ failed_count ++;
+ continue;
+ }
+ }
+ }
+ }
+ if (failed_count < downward_check_size)
+ {
+ //has success ones
+ BOOST_LOG_TRIVIAL(info) << boost::format("downward_check: downward_check_size %1%, failed_count %2%")%downward_check_size %failed_count;
+ for (int index2 = 0; index2 < downward_check_size; index2 ++)
+ {
+ if (downward_check_status[index2])
+ continue;
+ printer_plate_info_t& plate_info = downward_check_printers[index2];
+ BOOST_LOG_TRIVIAL(info) << boost::format("downward_check: found compatible printer %1%")%plate_info.printer_name;
+ downward_compatible_machines.push_back(plate_info.printer_name);
+ }
+ sliced_info.downward_machines = downward_compatible_machines;
+ }
+ }
+
// Loop through transform options.
bool user_center_specified = false;
Points beds = get_bed_shape(m_print_config);
@@ -3262,7 +3699,7 @@ int CLI::run(int argc, char **argv)
}
else
{
- BOOST_LOG_TRIVIAL(info) << "Before process command, no need to orient, object id :" << o->id().id<id().id<thumbnail_file;
plate_data_src[index]->thumbnail_file.clear();
}
+ if (!plate_data_src[index]->no_light_thumbnail_file.empty()) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("Plate %1%: clear loaded no_light_thumbnail %2%.")%(index+1)%plate_data_src[index]->no_light_thumbnail_file;
+ plate_data_src[index]->no_light_thumbnail_file.clear();
+ }
if (!plate_data_src[index]->top_file.empty()) {
BOOST_LOG_TRIVIAL(info) << boost::format("Plate %1%: clear loaded top_thumbnail %2%.")%(index+1)%plate_data_src[index]->top_file;
plate_data_src[index]->top_file.clear();
@@ -3350,21 +3791,6 @@ int CLI::run(int argc, char **argv)
}
}
- auto get_print_sequence = [](Slic3r::GUI::PartPlate* plate, DynamicPrintConfig& print_config, bool &is_seq_print) {
- PrintSequence curr_plate_seq = plate->get_print_seq();
- if (curr_plate_seq == PrintSequence::ByDefault) {
- auto seq_print = print_config.option>("print_sequence");
- if (seq_print && (seq_print->value == PrintSequence::ByObject)) {
- BOOST_LOG_TRIVIAL(info) << boost::format("plate print by object, set from global");
- is_seq_print = true;
- }
- }
- else if (curr_plate_seq == PrintSequence::ByObject) {
- BOOST_LOG_TRIVIAL(info) << boost::format("plate print by object, set from plate self");
- is_seq_print = true;
- }
- };
-
if (!assemble_plate_info_list.empty())
{
//need to arrange for assemble cases
@@ -3422,6 +3848,9 @@ int CLI::run(int argc, char **argv)
int plate_count = partplate_list.get_plate_count();
auto printer_structure_opt = m_print_config.option>("printer_structure");
+ const float tower_brim_width = m_print_config.option("prime_tower_width", true)->value;
+ const float tower_margin = WIPE_TOWER_MARGIN + tower_brim_width;
+
// set the default position, the same with print config(left top)
float x = WIPE_TOWER_DEFAULT_X_POS;
float y = WIPE_TOWER_DEFAULT_Y_POS;
@@ -3429,11 +3858,11 @@ int CLI::run(int argc, char **argv)
x = I3_WIPE_TOWER_DEFAULT_X_POS;
y = I3_WIPE_TOWER_DEFAULT_Y_POS;
}
- if (x < WIPE_TOWER_MARGIN) {
- x = WIPE_TOWER_MARGIN;
+ if (x < tower_margin) {
+ x = tower_margin;
}
- if (y < WIPE_TOWER_MARGIN) {
- y = WIPE_TOWER_MARGIN;
+ if (y < tower_margin) {
+ y = tower_margin;
}
ConfigOptionFloat wt_x_opt(x);
@@ -3674,6 +4103,8 @@ int CLI::run(int argc, char **argv)
int extruder_size = used_filament_set.size();
auto printer_structure_opt = m_print_config.option>("printer_structure");
+ const float tower_brim_width = m_print_config.option("prime_tower_width", true)->value;
+ const float tower_margin = WIPE_TOWER_MARGIN + tower_brim_width;
// set the default position, the same with print config(left top)
float x = WIPE_TOWER_DEFAULT_X_POS;
float y = WIPE_TOWER_DEFAULT_Y_POS;
@@ -3682,11 +4113,11 @@ int CLI::run(int argc, char **argv)
y = I3_WIPE_TOWER_DEFAULT_Y_POS;
}
- if (x < WIPE_TOWER_MARGIN) {
- x = WIPE_TOWER_MARGIN;
+ if (x < tower_margin) {
+ x = tower_margin;
}
- if (y < WIPE_TOWER_MARGIN) {
- y = WIPE_TOWER_MARGIN;
+ if (y < tower_margin) {
+ y = tower_margin;
}
ConfigOptionFloat wt_x_opt(x);
ConfigOptionFloat wt_y_opt(y);
@@ -4181,7 +4612,7 @@ int CLI::run(int argc, char **argv)
// loop through action options
bool export_to_3mf = false, load_slicedata = false, export_slicedata = false, export_slicedata_error = false;
bool no_check = false;
- std::string export_3mf_file, load_slice_data_dir, export_slice_data_dir;
+ std::string export_3mf_file, load_slice_data_dir, export_slice_data_dir, export_stls_dir;
std::vector calibration_thumbnails;
std::vector plate_object_count(partplate_list.get_plate_count(), 0);
int max_slicing_time_per_plate = 0, max_triangle_count_per_plate = 0, sliced_plate = -1;
@@ -4215,9 +4646,9 @@ int CLI::run(int argc, char **argv)
record_exit_reson(outfile_dir, CLI_INVALID_PARAMS, 0, cli_errors[CLI_INVALID_PARAMS], sliced_info);
flush_and_exit(CLI_INVALID_PARAMS);
}
- else if (shrink_to_new_bed)
+ else if (shrink_to_new_bed > 0)
{
- BOOST_LOG_TRIVIAL(warning) << "use load_slicedata when shrink_to_new_bed(switch printer from small to bigger." << std::endl;
+ BOOST_LOG_TRIVIAL(warning) << "use load_slicedata when shrink_to_new_bed." << std::endl;
//record_exit_reson(outfile_dir, CLI_INVALID_PARAMS, 0, cli_errors[CLI_INVALID_PARAMS], sliced_info);
//flush_and_exit(CLI_INVALID_PARAMS);
}
@@ -4249,6 +4680,14 @@ int CLI::run(int argc, char **argv)
record_exit_reson(outfile_dir, CLI_EXPORT_STL_ERROR, 0, cli_errors[CLI_EXPORT_STL_ERROR], sliced_info);
flush_and_exit(CLI_EXPORT_STL_ERROR);
}
+ } else if (opt_key == "export_stls") {
+ export_stls_dir = m_config.opt_string(opt_key);
+ for (auto &model : m_models)
+ model.add_default_instances();
+ if (! this->export_models(IO::STL, export_stls_dir)) {
+ record_exit_reson(outfile_dir, CLI_EXPORT_STL_ERROR, 0, cli_errors[CLI_EXPORT_STL_ERROR], sliced_info);
+ flush_and_exit(CLI_EXPORT_STL_ERROR);
+ }
} else if (opt_key == "export_obj") {
for (auto &model : m_models)
model.add_default_instances();
@@ -4389,6 +4828,10 @@ int CLI::run(int argc, char **argv)
BOOST_LOG_TRIVIAL(info) << boost::format("Plate %1%: clear loaded thumbnail %2%.")%(index+1)%plate_data_src[index]->thumbnail_file;
plate_data_src[index]->thumbnail_file.clear();
}
+ if (!plate_data_src[index]->no_light_thumbnail_file.empty()) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("Plate %1%: clear loaded no_light_thumbnail %2%.")%(index+1)%plate_data_src[index]->no_light_thumbnail_file;
+ plate_data_src[index]->no_light_thumbnail_file.clear();
+ }
if (!plate_data_src[index]->top_file.empty()) {
BOOST_LOG_TRIVIAL(info) << boost::format("Plate %1%: clear loaded top_thumbnail %2%.")%(index+1)%plate_data_src[index]->top_file;
plate_data_src[index]->top_file.clear();
@@ -4415,7 +4858,7 @@ int CLI::run(int argc, char **argv)
if (vol->is_model_part()) {
size_t volume_triangle_count = vol->mesh().facets_count();
triangle_count += volume_triangle_count;
- BOOST_LOG_TRIVIAL(info) << boost::format("volume triangle count %1%, total %2%")%volume_triangle_count %triangle_count;
+ BOOST_LOG_TRIVIAL(debug) << boost::format("volume triangle count %1%, total %2%")%volume_triangle_count %triangle_count;
if ((max_triangle_count_per_plate != 0) && (triangle_count > max_triangle_count_per_plate))
{
BOOST_LOG_TRIVIAL(error) << "plate "<< index+1<< ": triangle count " << triangle_count <<" exceeds the limit:" << max_triangle_count_per_plate;
@@ -4740,7 +5183,7 @@ int CLI::run(int argc, char **argv)
global_begin_time = (long long)Slic3r::Utils::get_current_time_utc();
if (export_to_3mf) {
//BBS: export as bbl 3mf
- std::vector thumbnails, top_thumbnails, pick_thumbnails;
+ std::vector thumbnails, no_light_thumbnails, top_thumbnails, pick_thumbnails;
std::vector plate_bboxes;
PlateDataPtrs plate_data_list;
partplate_list.store_to_3mf_structure(plate_data_list);
@@ -4779,8 +5222,9 @@ int CLI::run(int argc, char **argv)
#endif
bool need_regenerate_thumbnail = oriented_or_arranged || regenerate_thumbnails;
+ bool need_regenerate_no_light_thumbnail = oriented_or_arranged || regenerate_thumbnails;
bool need_regenerate_top_thumbnail = oriented_or_arranged || regenerate_thumbnails;
- bool need_create_thumbnail_group = false, need_create_top_group = false;
+ bool need_create_thumbnail_group = false, need_create_no_light_group = false, need_create_top_group = false;
// get type and color for platedata
auto* filament_types = dynamic_cast(m_print_config.option("filament_type"));
@@ -4837,6 +5281,27 @@ int CLI::run(int argc, char **argv)
}
}
+ if (plate_data->no_light_thumbnail_file.empty()) {
+ if (!regenerate_thumbnails && (plate_data_src.size() > i)) {
+ plate_data->no_light_thumbnail_file = plate_data_src[i]->no_light_thumbnail_file;
+ }
+ if (plate_data->no_light_thumbnail_file.empty() || (!boost::filesystem::exists(plate_data->no_light_thumbnail_file))) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("thumbnails stage: plate %1%'s no_light_thumbnail_file %2% also not there, need to regenerate")%(i+1)%plate_data->no_light_thumbnail_file;
+ if (!skip_this_plate) {
+ need_regenerate_no_light_thumbnail = true;
+ need_create_no_light_group = true;
+ }
+ }
+ else {
+ if (regenerate_thumbnails) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("thumbnails stage: plate %1%'s no_light_thumbnail file %2% cleared, need to regenerate")%(i+1) %plate_data->no_light_thumbnail_file;
+ plate_data->no_light_thumbnail_file.clear();
+ }
+ else
+ BOOST_LOG_TRIVIAL(info) << boost::format("thumbnails stage: plate %1%'s no_light_thumbnail file exists, no need to regenerate")%(i+1);
+ }
+ }
+
if (plate_data->top_file.empty() || plate_data->pick_file.empty()) {
if (!regenerate_thumbnails && (plate_data_src.size() > i)) {
plate_data->top_file = plate_data_src[i]->top_file;
@@ -4862,7 +5327,7 @@ int CLI::run(int argc, char **argv)
}
}
- if (need_regenerate_thumbnail || need_regenerate_top_thumbnail) {
+ if (need_regenerate_thumbnail || need_regenerate_no_light_thumbnail || need_regenerate_top_thumbnail) {
std::vector colors;
if (filament_color) {
colors= filament_color->vserialize();
@@ -5050,6 +5515,60 @@ int CLI::run(int argc, char **argv)
BOOST_LOG_TRIVIAL(info) << boost::format("plate %1%: add thumbnail data into group")%(i+1);
}
+ //no light thumbnail
+ if (!plate_data->no_light_thumbnail_file.empty() && (boost::filesystem::exists(plate_data->no_light_thumbnail_file)))
+ {
+ if ((plate_to_slice != 0) && (plate_to_slice != (i + 1))) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("Line %1%: regenerate thumbnail, clear plate %2%'s no_light_thumbnail_file path to empty.")%__LINE__%(i+1);
+ plate_data->no_light_thumbnail_file.clear();
+ }
+ else
+ BOOST_LOG_TRIVIAL(info) << boost::format("plate %1% has valid no_light_thumbnail_file extracted from 3mf, directly using it")%(i+1);
+ }
+ else{
+ ThumbnailData *no_light_thumbnail = &part_plate->no_light_thumbnail_data;
+ if ((plate_to_slice != 0) && (plate_to_slice != (i + 1))) {
+ BOOST_LOG_TRIVIAL(info) << boost::format("Line %1%: regenerate thumbnail, Skip plate %2%.")%__LINE__%(i+1);
+ part_plate->no_light_thumbnail_data.reset();
+ plate_data->no_light_thumbnail_file.clear();
+ }
+ else {
+ unsigned int thumbnail_width = 512, thumbnail_height = 512;
+ const ThumbnailsParams thumbnail_params = { {}, false, true, false, true, i };
+
+ BOOST_LOG_TRIVIAL(info) << boost::format("plate %1%'s no_light_thumbnail_file missed, need to regenerate")%(i+1);
+ switch (Slic3r::GUI::OpenGLManager::get_framebuffers_type())
+ {
+ case Slic3r::GUI::OpenGLManager::EFramebufferType::Arb:
+ {
+ BOOST_LOG_TRIVIAL(info) << boost::format("framebuffer_type: ARB");
+ Slic3r::GUI::GLCanvas3D::render_thumbnail_framebuffer(*no_light_thumbnail,
+ thumbnail_width, thumbnail_height, thumbnail_params,
+ partplate_list, model.objects, glvolume_collection, colors_out, shader, Slic3r::GUI::Camera::EType::Ortho, false, false, true);
+ break;
+ }
+ case Slic3r::GUI::OpenGLManager::EFramebufferType::Ext:
+ {
+ BOOST_LOG_TRIVIAL(info) << boost::format("framebuffer_type: EXT");
+ Slic3r::GUI::GLCanvas3D::render_thumbnail_framebuffer_ext(*no_light_thumbnail,
+ thumbnail_width, thumbnail_height, thumbnail_params,
+ partplate_list, model.objects, glvolume_collection, colors_out, shader, Slic3r::GUI::Camera::EType::Ortho, false, false, true);
+ break;
+ }
+ default:
+ BOOST_LOG_TRIVIAL(info) << boost::format("framebuffer_type: unknown");
+ break;
+ }
+ plate_data->no_light_thumbnail_file = "valid_no_light";
+ BOOST_LOG_TRIVIAL(info) << boost::format("plate %1%'s no_light thumbnail,finished rendering")%(i+1);
+ }
+ }
+
+ if (need_create_no_light_group) {
+ no_light_thumbnails.push_back(&part_plate->no_light_thumbnail_data);
+ BOOST_LOG_TRIVIAL(info) << boost::format("plate %1%: add thumbnail data for no_light into group")%(i+1);
+ }
+
//top thumbnails
/*if (part_plate->top_thumbnail_data.is_valid() && part_plate->pick_thumbnail_data.is_valid()) {
if ((plate_to_slice != 0) && (plate_to_slice != (i + 1))) {
@@ -5160,6 +5679,9 @@ int CLI::run(int argc, char **argv)
BOOST_LOG_TRIVIAL(info) << boost::format("plate %1%'s all the thumbnails skipped, reset here")%(i+1);
plate_data->plate_thumbnail.reset();
plate_data->thumbnail_file.clear();
+ part_plate->no_light_thumbnail_data.reset();
+ plate_data->no_light_thumbnail_file.clear();
+
part_plate->top_thumbnail_data.reset();
part_plate->pick_thumbnail_data.reset();
plate_data->top_file.clear();
@@ -5189,6 +5711,11 @@ int CLI::run(int argc, char **argv)
BOOST_LOG_TRIVIAL(info) << boost::format("plate %1%: add thumbnail data into group")%(i+1);
}
+ if (need_create_no_light_group) {
+ no_light_thumbnails.push_back(&part_plate->no_light_thumbnail_data);
+ BOOST_LOG_TRIVIAL(info) << boost::format("plate %1%: add thumbnail data into group")%(i+1);
+ }
+
if (need_create_top_group) {
top_thumbnails.push_back(&part_plate->top_thumbnail_data);
pick_thumbnails.push_back(&part_plate->pick_thumbnail_data);
@@ -5334,7 +5861,19 @@ int CLI::run(int argc, char **argv)
model.mk_version = makerlab_version;
BOOST_LOG_TRIVIAL(info) << boost::format("mk_name %1%, mk_version %2%")%makerlab_name %makerlab_version;
}
- if (! this->export_project(&m_models[0], export_3mf_file, plate_data_list, project_presets, thumbnails, top_thumbnails, pick_thumbnails,
+
+ if (!metadata_name.empty()) {
+ Model &model = m_models[0];
+
+ model.md_value = metadata_value;
+ model.md_name = metadata_name;
+ for (unsigned int i = 0; i < metadata_name.size(); i++)
+ {
+ BOOST_LOG_TRIVIAL(info) << boost::format("index %1% metadata_name %2%, metadata_value %3%")%i %metadata_name[i] %metadata_value[i];
+ }
+ }
+
+ if (!this->export_project(&m_models[0], export_3mf_file, plate_data_list, project_presets, thumbnails, no_light_thumbnails, top_thumbnails, pick_thumbnails,
calibration_thumbnails, plate_bboxes, &m_print_config, minimum_save, plate_to_slice - 1))
{
release_PlateData_list(plate_data_list);
@@ -5344,6 +5883,8 @@ int CLI::run(int argc, char **argv)
for (unsigned int i = 0; i < thumbnails.size(); i++)
thumbnails[i]->reset();
+ for (unsigned int i = 0; i < no_light_thumbnails.size(); i++)
+ no_light_thumbnails[i]->reset();
for (unsigned int i = 0; i < top_thumbnails.size(); i++)
top_thumbnails[i]->reset();
for (unsigned int i = 0; i < pick_thumbnails.size(); i++)
@@ -5517,7 +6058,7 @@ void CLI::print_help(bool include_print_options, PrinterTechnology printer_techn
}*/
}
-bool CLI::export_models(IO::ExportFormat format)
+bool CLI::export_models(IO::ExportFormat format, std::string path_dir)
{
for (Model &model : m_models) {
const std::string path = this->output_filepath(model, format);
@@ -5538,7 +6079,7 @@ bool CLI::export_models(IO::ExportFormat format)
unsigned int index = 1;
for (ModelObject* model_object : model.objects)
{
- const std::string path = this->output_filepath(*model_object, index++, format);
+ const std::string path = this->output_filepath(*model_object, index++, format, path_dir);
success = Slic3r::store_stl(path.c_str(), model_object, true);
if (success)
BOOST_LOG_TRIVIAL(info) << "Model successfully exported to " << path << std::endl;
@@ -5559,7 +6100,11 @@ bool CLI::export_models(IO::ExportFormat format)
//BBS: add export_project function
bool CLI::export_project(Model *model, std::string& path, PlateDataPtrs &partplate_data,
- std::vector& project_presets, std::vector& thumbnails, std::vector& top_thumbnails, std::vector& pick_thumbnails,
+ std::vector & project_presets,
+ std::vector &thumbnails,
+ std::vector &no_light_thumbnails,
+ std::vector &top_thumbnails,
+ std::vector &pick_thumbnails,
std::vector& calibration_thumbnails, std::vector& plate_bboxes, const DynamicPrintConfig* config, bool minimum_save, int plate_to_export)
{
//const std::string path = this->output_filepath(*model, IO::TMF);
@@ -5572,6 +6117,7 @@ bool CLI::export_project(Model *model, std::string& path, PlateDataPtrs &partpla
store_params.project_presets = project_presets;
store_params.config = (DynamicPrintConfig*)config;
store_params.thumbnail_data = thumbnails;
+ store_params.no_light_thumbnail_data = no_light_thumbnails;
store_params.top_thumbnail_data = top_thumbnails;
store_params.pick_thumbnail_data = pick_thumbnails;
store_params.calibration_thumbnail_data = calibration_thumbnails;
@@ -5616,7 +6162,7 @@ std::string CLI::output_filepath(const Model &model, IO::ExportFormat format) co
return proposed_path.string();
}
-std::string CLI::output_filepath(const ModelObject &object, unsigned int index, IO::ExportFormat format) const
+std::string CLI::output_filepath(const ModelObject &object, unsigned int index, IO::ExportFormat format, std::string path_dir) const
{
std::string ext, subdir, file_name, output_path;
switch (format) {
@@ -5645,10 +6191,15 @@ std::string CLI::output_filepath(const ModelObject &object, unsigned int index,
if (pos != ext_pos)
file_name += ext;
- BOOST_LOG_TRIVIAL(trace) << __FUNCTION__ << ": file_name="< range_params;
+}height_range_info_t;
+
+typedef struct _assembled_param_info {
+ std::map print_params;
+ std::vector height_ranges;
+}assembled_param_info_t;
+
typedef struct _assemble_object_info {
std::string path;
int count;
@@ -42,6 +60,7 @@ typedef struct _assemble_object_info {
std::vector pos_y;
std::vector pos_z;
std::map print_params;
+ std::vector height_ranges;
}assemble_object_info_t;
typedef struct _assemble_plate_info {
@@ -52,9 +71,32 @@ typedef struct _assemble_plate_info {
std::map plate_params;
std::vector assemble_obj_list;
std::vector loaded_obj_list;
+ std::map assembled_param_list;
}assemble_plate_info_t;
+typedef struct _printer_plate_info {
+ std::string printer_name;
+ int printable_width{0};
+ int printable_depth{0};
+ int printable_height{0};
+
+ int exclude_width{0};
+ int exclude_depth{0};
+ int exclude_x{0};
+ int exclude_y{0};
+}printer_plate_info_t;
+
+typedef struct _plate_obj_size_info {
+ bool has_wipe_tower{false};
+ float wipe_x{0.f};
+ float wipe_y{0.f};
+ float wipe_width{0.f};
+ float wipe_depth{0.f};
+ BoundingBoxf3 obj_bbox;
+}plate_obj_size_info_t;
+
+
class CLI {
public:
int run(int argc, char **argv);
@@ -74,17 +116,20 @@ private:
void print_help(bool include_print_options = false, PrinterTechnology printer_technology = ptAny) const;
/// Exports loaded models to a file of the specified format, according to the options affecting output filename.
- bool export_models(IO::ExportFormat format);
+ bool export_models(IO::ExportFormat format, std::string path = std::string());
//BBS: add export_project function
bool export_project(Model *model, std::string& path, PlateDataPtrs &partplate_data, std::vector& project_presets,
- std::vector& thumbnails, std::vector& top_thumbnails, std::vector& pick_thumbnails,
+ std::vector &thumbnails,
+ std::vector &no_light_thumbnails,
+ std::vector &top_thumbnails,
+ std::vector &pick_thumbnails,
std::vector& calibration_thumbnails,
std::vector& plate_bboxes, const DynamicPrintConfig* config, bool minimum_save, int plate_to_export = -1);
bool has_print_action() const { return m_config.opt_bool("export_gcode") || m_config.opt_bool("export_sla"); }
std::string output_filepath(const Model &model, IO::ExportFormat format) const;
- std::string output_filepath(const ModelObject &object, unsigned int index, IO::ExportFormat format) const;
+ std::string output_filepath(const ModelObject &object, unsigned int index, IO::ExportFormat format, std::string path_dir) const;
};
}
diff --git a/src/OrcaSlicer_profile_validator.cpp b/src/OrcaSlicer_profile_validator.cpp
index 374592199d..ba4e7ce687 100644
--- a/src/OrcaSlicer_profile_validator.cpp
+++ b/src/OrcaSlicer_profile_validator.cpp
@@ -141,7 +141,7 @@ int main(int argc, char* argv[])
preset_bundle->remove_user_presets_directory("default");
try {
- auto preset_substitutions = preset_bundle->load_presets(app_config, ForwardCompatibilitySubstitutionRule::EnableSystemSilent);
+ auto preset_substitutions = preset_bundle->load_presets(app_config, ForwardCompatibilitySubstitutionRule::Disable);
} catch (const std::exception& ex) {
BOOST_LOG_TRIVIAL(error) << ex.what();
std::cout << "Validation failed" << std::endl;
diff --git a/src/imguizmo/ImGuizmo.cpp b/src/imguizmo/ImGuizmo.cpp
index 20ec388cb6..1acf8b63e4 100644
--- a/src/imguizmo/ImGuizmo.cpp
+++ b/src/imguizmo/ImGuizmo.cpp
@@ -662,10 +662,18 @@ namespace IMGUIZMO_NAMESPACE
Colors[HATCHED_AXIS_LINES] = ImVec4(0.000f, 0.000f, 0.000f, 0.500f);
Colors[TEXT] = ImVec4(1.000f, 1.000f, 1.000f, 1.000f);
Colors[TEXT_SHADOW] = ImVec4(0.000f, 0.000f, 0.000f, 1.000f);
+ Colors[FACE] = ImVec4(0.776f, 0.804f, 0.839f, 1.000f);
strcpy(AxisLabels[Axis_X], "x");
strcpy(AxisLabels[Axis_Y], "y");
strcpy(AxisLabels[Axis_Z], "z");
+
+ strcpy(FaceLabels[FACE_BACK], "back");
+ strcpy(FaceLabels[FACE_TOP], "top");
+ strcpy(FaceLabels[FACE_RIGHT], "right");
+ strcpy(FaceLabels[FACE_FRONT], "front");
+ strcpy(FaceLabels[FACE_BOTTOM], "bottom");
+ strcpy(FaceLabels[FACE_LEFT], "left");
}
struct Context
@@ -2885,6 +2893,7 @@ namespace IMGUIZMO_NAMESPACE
const vec_t dx = directionUnary[perpXIndex];
const vec_t dy = directionUnary[perpYIndex];
const vec_t origin = directionUnary[normalIndex] - dx - dy;
+ ImU32 faceColor = GetColorU32(FACE);
for (int iPanel = 0; iPanel < 9; iPanel++)
{
vec_t boxCoord = boxOrigin + indexVectorX * float(iPanel % 3) + indexVectorY * float(iPanel / 3) + makeVect(1.f, 1.f, 1.f);
@@ -2910,8 +2919,7 @@ namespace IMGUIZMO_NAMESPACE
// draw face with lighter color
if (iPass)
{
- ImU32 directionColor = GetColorU32(DIRECTION_X + normalIndex);
- gContext.mDrawList->AddConvexPolyFilled(faceCoordsScreen, 4, (directionColor | IM_COL32(0x80, 0x80, 0x80, 0x80)) | (isInside ? IM_COL32(0x08, 0x08, 0x08, 0) : 0));
+ gContext.mDrawList->AddConvexPolyFilled(faceCoordsScreen, 4, faceColor);
if (boxes[boxCoordInt])
{
gContext.mDrawList->AddConvexPolyFilled(faceCoordsScreen, 4, IM_COL32(0xF0, 0xA0, 0x60, 0x80));
@@ -2929,6 +2937,53 @@ namespace IMGUIZMO_NAMESPACE
}
}
}
+
+ if (iPass) {
+ // Draw face label
+ ImDrawList* drawList = gContext.mDrawList;
+ int vtx_write_start = drawList->VtxBuffer.Size;
+
+ const auto label = gContext.mStyle.FaceLabels[iFace];
+ ImVec2 labelSize = ImGui::CalcTextSize(label);
+ float scaleFactor = 2 / size.y;
+ auto labelOrigin = labelSize * 0.5;
+
+ drawList->AddText(ImVec2(0, 0), GetColorU32(TEXT), label);
+ ImDrawVert* vtx_write_end = drawList->_VtxWritePtr;
+
+ vec_t tdx = directionUnary[perpXIndex];
+ vec_t tdy = directionUnary[perpYIndex];
+ ImVec2 invert2 = {1, 1};
+ switch (iFace) {
+ case 0: // Back
+ tdx = directionUnary[2];
+ tdy = directionUnary[1];
+ invert2 = {-1, - 1};
+ break;
+ case 3: // Front
+ tdx = directionUnary[2];
+ tdy = directionUnary[1];
+ invert2.x = -1;
+ break;
+ case 1: // Top
+ invert2.y = -1;
+ break;
+ case 4: // Bottom
+ invert2 = {-1, -1};
+ break;
+ case 2: // Right
+ invert2.y = -1;
+ break;
+ case 5: // Left
+ break;
+ }
+
+ for (auto v = (drawList->VtxBuffer.Data + vtx_write_start); v < vtx_write_end; v++) {
+ auto pp = ((v->pos - labelOrigin) * scaleFactor * invert2 + ImVec2{0.5, 0.5}) * 2.f;
+ vec_t pt = tdx * pp.x + tdy * pp.y;
+ v->pos = worldToPos((pt + origin) * 0.5 * invert, res, position, size);
+ }
+ }
}
}
@@ -2962,7 +3017,7 @@ namespace IMGUIZMO_NAMESPACE
if (!visible) {
directionColorV.w *= 0.3f;
}
- ImU32 directionColor = ImGui::ColorConvertFloat4ToU32(directionColorV);
+ ImU32 directionColor = ImGui::ColorConvertFloat4ToU32(directionColorV) | IM_COL32(0x80, 0x80, 0x80, 0x00);
drawList->AddLine(baseSSpace, worldDirSSpace, directionColor, gContext.mStyle.TranslationLineThickness);
// Arrow head begin
diff --git a/src/imguizmo/ImGuizmo.h b/src/imguizmo/ImGuizmo.h
index 493cd7ce6d..7f20bc13c2 100644
--- a/src/imguizmo/ImGuizmo.h
+++ b/src/imguizmo/ImGuizmo.h
@@ -249,6 +249,7 @@ namespace IMGUIZMO_NAMESPACE
HATCHED_AXIS_LINES,
TEXT,
TEXT_SHADOW,
+ FACE,
COUNT
};
@@ -260,6 +261,17 @@ namespace IMGUIZMO_NAMESPACE
Axis_COUNT,
};
+ enum FACES
+ {
+ FACE_BACK,
+ FACE_TOP,
+ FACE_RIGHT,
+ FACE_FRONT,
+ FACE_BOTTOM,
+ FACE_LEFT,
+ FACES_COUNT
+ };
+
struct Style
{
IMGUI_API Style();
@@ -276,6 +288,7 @@ namespace IMGUIZMO_NAMESPACE
ImVec4 Colors[COLOR::COUNT];
char AxisLabels[Axis::Axis_COUNT][32];
+ char FaceLabels[FACES::FACES_COUNT][32];
};
IMGUI_API Style& GetStyle();
diff --git a/src/libslic3r/Algorithm/PathSorting.hpp b/src/libslic3r/Algorithm/PathSorting.hpp
index da35f93786..ab44627281 100644
--- a/src/libslic3r/Algorithm/PathSorting.hpp
+++ b/src/libslic3r/Algorithm/PathSorting.hpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2023 Pavel Mikuš @Godrak
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef SRC_LIBSLIC3R_PATH_SORTING_HPP_
#define SRC_LIBSLIC3R_PATH_SORTING_HPP_
diff --git a/src/libslic3r/Algorithm/RegionExpansion.cpp b/src/libslic3r/Algorithm/RegionExpansion.cpp
index 17e8bd9a72..ee2a5aaf2a 100644
--- a/src/libslic3r/Algorithm/RegionExpansion.cpp
+++ b/src/libslic3r/Algorithm/RegionExpansion.cpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2022 - 2023 Vojtěch Bubník @bubnikv
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "RegionExpansion.hpp"
#include
diff --git a/src/libslic3r/Algorithm/RegionExpansion.hpp b/src/libslic3r/Algorithm/RegionExpansion.hpp
index 62e32526aa..eb99674902 100644
--- a/src/libslic3r/Algorithm/RegionExpansion.hpp
+++ b/src/libslic3r/Algorithm/RegionExpansion.hpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2022 - 2023 Vojtěch Bubník @bubnikv
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef SRC_LIBSLIC3R_ALGORITHM_REGION_EXPANSION_HPP_
#define SRC_LIBSLIC3R_ALGORITHM_REGION_EXPANSION_HPP_
diff --git a/src/libslic3r/AppConfig.cpp b/src/libslic3r/AppConfig.cpp
index 49a7228f1f..51b7a10372 100644
--- a/src/libslic3r/AppConfig.cpp
+++ b/src/libslic3r/AppConfig.cpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2017 - 2023 Oleksandra Iushchenko @YuSanka, Vojtěch Bubník @bubnikv, Pavel Mikuš @Godrak, David Kocík @kocikdav, Lukáš Matěna @lukasmatena, Enrico Turri @enricoturri1966, Lukáš Hejl @hejllukas, Filip Sykala @Jony01, Vojtěch Král @vojtechkral
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "libslic3r/libslic3r.h"
#include "libslic3r/Utils.hpp"
#include "AppConfig.hpp"
diff --git a/src/libslic3r/AppConfig.hpp b/src/libslic3r/AppConfig.hpp
index 2d2134f10b..f58cfedb65 100644
--- a/src/libslic3r/AppConfig.hpp
+++ b/src/libslic3r/AppConfig.hpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2017 - 2023 Vojtěch Bubník @bubnikv, David Kocík @kocikdav, Lukáš Matěna @lukasmatena, Filip Sykala @Jony01, Enrico Turri @enricoturri1966, Oleksandra Iushchenko @YuSanka, Vojtěch Král @vojtechkral
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_AppConfig_hpp_
#define slic3r_AppConfig_hpp_
diff --git a/src/libslic3r/BoundingBox.hpp b/src/libslic3r/BoundingBox.hpp
index 8654669eb3..64f9725218 100644
--- a/src/libslic3r/BoundingBox.hpp
+++ b/src/libslic3r/BoundingBox.hpp
@@ -1,8 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Tomáš Mészáros @tamasmeszaros, Vojtěch Bubník @bubnikv, Filip Sykala @Jony01, Enrico Turri @enricoturri1966
-///|/ Copyright (c) Slic3r 2014 - 2015 Alessandro Ranellucci @alranel
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_BoundingBox_hpp_
#define slic3r_BoundingBox_hpp_
diff --git a/src/libslic3r/BridgeDetector.hpp b/src/libslic3r/BridgeDetector.hpp
index 6025f9d3e0..1e5bb1a101 100644
--- a/src/libslic3r/BridgeDetector.hpp
+++ b/src/libslic3r/BridgeDetector.hpp
@@ -1,8 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Pavel Mikuš @Godrak, Vojtěch Bubník @bubnikv
-///|/ Copyright (c) Slic3r 2014 - 2015 Alessandro Ranellucci @alranel
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_BridgeDetector_hpp_
#define slic3r_BridgeDetector_hpp_
diff --git a/src/libslic3r/Brim.cpp b/src/libslic3r/Brim.cpp
index 940e5e1ee6..fe8f778647 100644
--- a/src/libslic3r/Brim.cpp
+++ b/src/libslic3r/Brim.cpp
@@ -1,8 +1,3 @@
-///|/ Copyright (c) Prusa Research 2021 - 2023 Vojtěch Bubník @bubnikv, Lukáš Matěna @lukasmatena, Lukáš Hejl @hejllukas
-///|/ Copyright (c) SuperSlicer 2023 Remi Durand @supermerill
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "clipper/clipper_z.hpp"
#include "ClipperUtils.hpp"
@@ -595,7 +590,8 @@ double getadhesionCoeff(const PrintObject* printObject)
for (auto iter = extrudersFirstLayer.begin(); iter != extrudersFirstLayer.end(); iter++)
if (modelVolume->extruder_id() == *iter) {
if (Model::extruderParamsMap.find(modelVolume->extruder_id()) != Model::extruderParamsMap.end())
- if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "PETG") {
+ if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "PETG" ||
+ Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "PCTG") {
adhesionCoeff = 2;
}
else if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "TPU") {
diff --git a/src/libslic3r/CMakeLists.txt b/src/libslic3r/CMakeLists.txt
index 3ed7972d22..38a1b24996 100644
--- a/src/libslic3r/CMakeLists.txt
+++ b/src/libslic3r/CMakeLists.txt
@@ -1,10 +1,3 @@
-#/|/ Copyright (c) Prusa Research 2018 - 2023 Tomáš Mészáros @tamasmeszaros, Oleksandra Iushchenko @YuSanka, Enrico Turri @enricoturri1966, Vojtěch Bubník @bubnikv, Pavel Mikuš @Godrak, Lukáš Hejl @hejllukas, Lukáš Matěna @lukasmatena, Filip Sykala @Jony01, David Kocík @kocikdav, Vojtěch Král @vojtechkral
-#/|/ Copyright (c) BambuStudio 2023 manch1n @manch1n
-#/|/ Copyright (c) 2023 Mimoja @Mimoja
-#/|/ Copyright (c) 2022 ole00 @ole00
-#/|/
-#/|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-#/|/
cmake_minimum_required(VERSION 3.13)
project(libslic3r)
diff --git a/src/libslic3r/ClipperUtils.cpp b/src/libslic3r/ClipperUtils.cpp
index eeb43f6f02..4c73ac87ee 100644
--- a/src/libslic3r/ClipperUtils.cpp
+++ b/src/libslic3r/ClipperUtils.cpp
@@ -1,14 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Tomáš Mészáros @tamasmeszaros, Vojtěch Bubník @bubnikv, Pavel Mikuš @Godrak, Lukáš Matěna @lukasmatena, Lukáš Hejl @hejllukas, Filip Sykala @Jony01
-///|/ Copyright (c) Slic3r 2013 - 2015 Alessandro Ranellucci @alranel
-///|/ Copyright (c) 2015 Maksim Derbasov @ntfshard
-///|/
-///|/ ported from lib/Slic3r/Geometry/Clipper.pm:
-///|/ Copyright (c) Prusa Research 2016 - 2022 Vojtěch Bubník @bubnikv
-///|/ Copyright (c) Slic3r 2011 - 2014 Alessandro Ranellucci @alranel
-///|/ Copyright (c) 2012 - 2013 Mike Sheldrake @mesheldrake
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "ClipperUtils.hpp"
#include "Geometry.hpp"
#include "ShortestPath.hpp"
diff --git a/src/libslic3r/ClipperUtils.hpp b/src/libslic3r/ClipperUtils.hpp
index 3607b0a69d..05c3eb4a57 100644
--- a/src/libslic3r/ClipperUtils.hpp
+++ b/src/libslic3r/ClipperUtils.hpp
@@ -1,8 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Tomáš Mészáros @tamasmeszaros, Vojtěch Bubník @bubnikv, Pavel Mikuš @Godrak, Lukáš Matěna @lukasmatena, Lukáš Hejl @hejllukas, Filip Sykala @Jony01
-///|/ Copyright (c) Slic3r 2013 - 2015 Alessandro Ranellucci @alranel
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_ClipperUtils_hpp_
#define slic3r_ClipperUtils_hpp_
diff --git a/src/libslic3r/ClipperZUtils.hpp b/src/libslic3r/ClipperZUtils.hpp
index f6b249b47f..001a3f2daa 100644
--- a/src/libslic3r/ClipperZUtils.hpp
+++ b/src/libslic3r/ClipperZUtils.hpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2022 - 2023 Vojtěch Bubník @bubnikv
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_ClipperZUtils_hpp_
#define slic3r_ClipperZUtils_hpp_
diff --git a/src/libslic3r/Color.hpp b/src/libslic3r/Color.hpp
index 4c96458b40..ad119d3c56 100644
--- a/src/libslic3r/Color.hpp
+++ b/src/libslic3r/Color.hpp
@@ -91,8 +91,10 @@ public:
bool operator != (const ColorRGBA& other) const { return !operator==(other); }
bool operator < (const ColorRGBA& other) const;
bool operator > (const ColorRGBA& other) const;
+ float operator[](int i) const { return m_data[i]; }
+ float& operator[](int i) { return m_data[i]; }
- ColorRGBA operator + (const ColorRGBA& other) const;
+ ColorRGBA operator + (const ColorRGBA& other) const;
ColorRGBA operator * (float value) const;
const float* const data() const { return m_data.data(); }
diff --git a/src/libslic3r/CutSurface.cpp b/src/libslic3r/CutSurface.cpp
index 2fe23ead09..619e5e9f72 100644
--- a/src/libslic3r/CutSurface.cpp
+++ b/src/libslic3r/CutSurface.cpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2022 - 2023 Vojtěch Bubník @bubnikv, Filip Sykala @Jony01
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "CutSurface.hpp"
/// models_input.obj - Check transormation of model to each others
diff --git a/src/libslic3r/CutSurface.hpp b/src/libslic3r/CutSurface.hpp
index f5b41cdaeb..9f4e3159cf 100644
--- a/src/libslic3r/CutSurface.hpp
+++ b/src/libslic3r/CutSurface.hpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2022 Filip Sykala @Jony01
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_CutSurface_hpp_
#define slic3r_CutSurface_hpp_
diff --git a/src/libslic3r/CutUtils.cpp b/src/libslic3r/CutUtils.cpp
index 9f4dbdaacc..8611ec302d 100644
--- a/src/libslic3r/CutUtils.cpp
+++ b/src/libslic3r/CutUtils.cpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2023 Oleksandra Iushchenko @YuSanka
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "CutUtils.hpp"
#include "Geometry.hpp"
diff --git a/src/libslic3r/CutUtils.hpp b/src/libslic3r/CutUtils.hpp
index 5067aaaff1..2c477a3e2b 100644
--- a/src/libslic3r/CutUtils.hpp
+++ b/src/libslic3r/CutUtils.hpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2023 Oleksandra Iushchenko @YuSanka
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_CutUtils_hpp_
#define slic3r_CutUtils_hpp_
diff --git a/src/libslic3r/Emboss.cpp b/src/libslic3r/Emboss.cpp
index a7bb8c5678..13d494d949 100644
--- a/src/libslic3r/Emboss.cpp
+++ b/src/libslic3r/Emboss.cpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2021 - 2023 Lukáš Matěna @lukasmatena, Oleksandra Iushchenko @YuSanka, Filip Sykala @Jony01, Vojtěch Bubník @bubnikv
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include
#include "Emboss.hpp"
#include
diff --git a/src/libslic3r/Emboss.hpp b/src/libslic3r/Emboss.hpp
index ded2196a7a..15f0316327 100644
--- a/src/libslic3r/Emboss.hpp
+++ b/src/libslic3r/Emboss.hpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2021 - 2022 Filip Sykala @Jony01
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_Emboss_hpp_
#define slic3r_Emboss_hpp_
diff --git a/src/libslic3r/ExPolygon.cpp b/src/libslic3r/ExPolygon.cpp
index dee115194b..364d2a6126 100644
--- a/src/libslic3r/ExPolygon.cpp
+++ b/src/libslic3r/ExPolygon.cpp
@@ -1,15 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Vojtěch Bubník @bubnikv, Lukáš Matěna @lukasmatena, Lukáš Hejl @hejllukas
-///|/ Copyright (c) Slic3r 2013 - 2016 Alessandro Ranellucci @alranel
-///|/ Copyright (c) 2015 Maksim Derbasov @ntfshard
-///|/ Copyright (c) 2014 Petr Ledvina @ledvinap
-///|/
-///|/ ported from lib/Slic3r/ExPolygon.pm:
-///|/ Copyright (c) Prusa Research 2017 - 2022 Vojtěch Bubník @bubnikv
-///|/ Copyright (c) Slic3r 2011 - 2014 Alessandro Ranellucci @alranel
-///|/ Copyright (c) 2012 Mark Hindess
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "BoundingBox.hpp"
#include "ExPolygon.hpp"
#include "Exception.hpp"
diff --git a/src/libslic3r/ExPolygon.hpp b/src/libslic3r/ExPolygon.hpp
index 39974ab7af..d72fdf3389 100644
--- a/src/libslic3r/ExPolygon.hpp
+++ b/src/libslic3r/ExPolygon.hpp
@@ -1,14 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Pavel Mikuš @Godrak, Vojtěch Bubník @bubnikv, Lukáš Matěna @lukasmatena, Enrico Turri @enricoturri1966, Filip Sykala @Jony01, Lukáš Hejl @hejllukas, Tomáš Mészáros @tamasmeszaros
-///|/ Copyright (c) 2016 Sakari Kapanen @Flannelhead
-///|/ Copyright (c) Slic3r 2013 - 2016 Alessandro Ranellucci @alranel
-///|/
-///|/ ported from lib/Slic3r/ExPolygon.pm:
-///|/ Copyright (c) Prusa Research 2017 - 2022 Vojtěch Bubník @bubnikv
-///|/ Copyright (c) Slic3r 2011 - 2014 Alessandro Ranellucci @alranel
-///|/ Copyright (c) 2012 Mark Hindess
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_ExPolygon_hpp_
#define slic3r_ExPolygon_hpp_
diff --git a/src/libslic3r/Extruder.cpp b/src/libslic3r/Extruder.cpp
index 0b5d68b688..8f4be4e048 100644
--- a/src/libslic3r/Extruder.cpp
+++ b/src/libslic3r/Extruder.cpp
@@ -203,4 +203,9 @@ double Extruder::retract_restart_extra_toolchange() const
return m_config->retract_restart_extra_toolchange.get_at(m_id);
}
+double Extruder::travel_slope() const
+{
+ return m_config->travel_slope.get_at(m_id) * PI / 180;
+}
+
}
diff --git a/src/libslic3r/Extruder.hpp b/src/libslic3r/Extruder.hpp
index 0568653e78..f048055456 100644
--- a/src/libslic3r/Extruder.hpp
+++ b/src/libslic3r/Extruder.hpp
@@ -67,6 +67,7 @@ public:
double retract_restart_extra() const;
double retract_length_toolchange() const;
double retract_restart_extra_toolchange() const;
+ double travel_slope() const;
bool use_firmware_retraction() const;
diff --git a/src/libslic3r/Fill/Fill.cpp b/src/libslic3r/Fill/Fill.cpp
index ea9f9d0cad..6e3886d6db 100644
--- a/src/libslic3r/Fill/Fill.cpp
+++ b/src/libslic3r/Fill/Fill.cpp
@@ -1,12 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Lukáš Matěna @lukasmatena, Vojtěch Bubník @bubnikv, Pavel Mikuš @Godrak, Lukáš Hejl @hejllukas
-///|/ Copyright (c) SuperSlicer 2023 Remi Durand @supermerill
-///|/ Copyright (c) 2016 Sakari Kapanen @Flannelhead
-///|/ Copyright (c) Slic3r 2011 - 2015 Alessandro Ranellucci @alranel
-///|/ Copyright (c) 2013 Mark Hindess
-///|/ Copyright (c) 2011 Michael Moon
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include
#include
#include
@@ -498,7 +489,7 @@ std::vector group_fills(const Layer &layer)
params.bridge_angle = float(surface.bridge_angle);
if (params.extrusion_role == erInternalInfill) {
params.angle = float(Geometry::deg2rad(region_config.infill_direction.value));
- params.rotate_angle = (params.pattern == ipRectilinear);
+ params.rotate_angle = (params.pattern == ipRectilinear || params.pattern == ipLine);
} else {
params.angle = float(Geometry::deg2rad(region_config.solid_infill_direction.value));
params.rotate_angle = region_config.rotate_solid_infill_direction;
diff --git a/src/libslic3r/Fill/FillBase.cpp b/src/libslic3r/Fill/FillBase.cpp
index 3d368e01c7..6225987486 100644
--- a/src/libslic3r/Fill/FillBase.cpp
+++ b/src/libslic3r/Fill/FillBase.cpp
@@ -1,12 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Vojtěch Bubník @bubnikv, Lukáš Hejl @hejllukas, Tomáš Mészáros @tamasmeszaros, Lukáš Matěna @lukasmatena
-///|/ Copyright (c) SuperSlicer 2018 - 2019 Remi Durand @supermerill
-///|/
-///|/ ported from lib/Slic3r/Fill/Base.pm:
-///|/ Copyright (c) Prusa Research 2016 Vojtěch Bubník @bubnikv
-///|/ Copyright (c) Slic3r 2011 - 2014 Alessandro Ranellucci @alranel
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include
#include
diff --git a/src/libslic3r/Fill/FillConcentric.cpp b/src/libslic3r/Fill/FillConcentric.cpp
index ed9c070437..93a54a0739 100644
--- a/src/libslic3r/Fill/FillConcentric.cpp
+++ b/src/libslic3r/Fill/FillConcentric.cpp
@@ -1,12 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Vojtěch Bubník @bubnikv, Lukáš Hejl @hejllukas
-///|/
-///|/ ported from lib/Slic3r/Fill/Concentric.pm:
-///|/ Copyright (c) Prusa Research 2016 Vojtěch Bubník @bubnikv
-///|/ Copyright (c) Slic3r 2011 - 2015 Alessandro Ranellucci @alranel
-///|/ Copyright (c) 2012 Mark Hindess
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "../ClipperUtils.hpp"
#include "../ExPolygon.hpp"
#include "../Surface.hpp"
diff --git a/src/libslic3r/Fill/FillConcentric.hpp b/src/libslic3r/Fill/FillConcentric.hpp
index 4902c43b30..476c9b8757 100644
--- a/src/libslic3r/Fill/FillConcentric.hpp
+++ b/src/libslic3r/Fill/FillConcentric.hpp
@@ -1,13 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Vojtěch Bubník @bubnikv, Lukáš Hejl @hejllukas
-///|/ Copyright (c) Slic3r 2016 Alessandro Ranellucci @alranel
-///|/
-///|/ ported from lib/Slic3r/Fill/Concentric.pm:
-///|/ Copyright (c) Prusa Research 2016 Vojtěch Bubník @bubnikv
-///|/ Copyright (c) Slic3r 2011 - 2015 Alessandro Ranellucci @alranel
-///|/ Copyright (c) 2012 Mark Hindess
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_FillConcentric_hpp_
#define slic3r_FillConcentric_hpp_
diff --git a/src/libslic3r/Fill/FillCrossHatch.cpp b/src/libslic3r/Fill/FillCrossHatch.cpp
index d62db0b4ea..10f421bef3 100644
--- a/src/libslic3r/Fill/FillCrossHatch.cpp
+++ b/src/libslic3r/Fill/FillCrossHatch.cpp
@@ -148,7 +148,7 @@ static Polylines generate_infill_layers(coordf_t z_height, double repeat_ratio,
Polylines result;
coordf_t trans_layer_size = grid_size * 0.4; // upper.
coordf_t repeat_layer_size = grid_size * repeat_ratio; // lower.
- z_height += repeat_layer_size / 2; // offset to improve first few layer strength
+ z_height += repeat_layer_size / 2 + trans_layer_size; // offset to improve first few layer strength and reduce the risk of warpping.
coordf_t period = trans_layer_size + repeat_layer_size;
coordf_t remains = z_height - std::floor(z_height / period) * period;
coordf_t trans_z = remains - repeat_layer_size; // put repeat layer first.
diff --git a/src/libslic3r/Format/SL1.cpp b/src/libslic3r/Format/SL1.cpp
index 88fa038dcc..3973ab27af 100644
--- a/src/libslic3r/Format/SL1.cpp
+++ b/src/libslic3r/Format/SL1.cpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2020 - 2023 Tomáš Mészáros @tamasmeszaros, Oleksandra Iushchenko @YuSanka, Lukáš Matěna @lukasmatena, Vojtěch Bubník @bubnikv
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "SL1.hpp"
#include "GCode/ThumbnailData.hpp"
#include "libslic3r/Time.hpp"
diff --git a/src/libslic3r/Format/ZipperArchiveImport.cpp b/src/libslic3r/Format/ZipperArchiveImport.cpp
index 426e0d3252..657e420bbc 100644
--- a/src/libslic3r/Format/ZipperArchiveImport.cpp
+++ b/src/libslic3r/Format/ZipperArchiveImport.cpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2022 - 2023 Tomáš Mészáros @tamasmeszaros, David Kocík @kocikdav
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "ZipperArchiveImport.hpp"
#include "libslic3r/miniz_extension.hpp"
diff --git a/src/libslic3r/Format/ZipperArchiveImport.hpp b/src/libslic3r/Format/ZipperArchiveImport.hpp
index d375cf55d6..adddcacd40 100644
--- a/src/libslic3r/Format/ZipperArchiveImport.hpp
+++ b/src/libslic3r/Format/ZipperArchiveImport.hpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2022 Tomáš Mészáros @tamasmeszaros
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef ZIPPERARCHIVEIMPORT_HPP
#define ZIPPERARCHIVEIMPORT_HPP
diff --git a/src/libslic3r/Format/bbs_3mf.cpp b/src/libslic3r/Format/bbs_3mf.cpp
index e8d2fac2f5..7df4fbca49 100644
--- a/src/libslic3r/Format/bbs_3mf.cpp
+++ b/src/libslic3r/Format/bbs_3mf.cpp
@@ -1,8 +1,3 @@
-///|/ Copyright (c) Prusa Research 2018 - 2023 Oleksandra Iushchenko @YuSanka, David Kocík @kocikdav, Enrico Turri @enricoturri1966, Lukáš Matěna @lukasmatena, Lukáš Hejl @hejllukas, Filip Sykala @Jony01, Vojtěch Bubník @bubnikv, Tomáš Mészáros @tamasmeszaros
-///|/ Copyright (c) 2020 Henner Zeller
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "../libslic3r.h"
#include "../Exception.hpp"
#include "../Model.hpp"
@@ -297,6 +292,7 @@ static constexpr const char* OTHER_LAYERS_PRINT_SEQUENCE_NUMS_ATTR = "other_laye
static constexpr const char* SPIRAL_VASE_MODE = "spiral_mode";
static constexpr const char* GCODE_FILE_ATTR = "gcode_file";
static constexpr const char* THUMBNAIL_FILE_ATTR = "thumbnail_file";
+static constexpr const char* NO_LIGHT_THUMBNAIL_FILE_ATTR = "thumbnail_no_light_file";
static constexpr const char* TOP_FILE_ATTR = "top_file";
static constexpr const char* PICK_FILE_ATTR = "pick_file";
static constexpr const char* PATTERN_FILE_ATTR = "pattern_file";
@@ -1496,6 +1492,7 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
boost::algorithm::replace_all(plate->thumbnail_file, ".gcode", ".png");
}
//plate->pattern_file = it->second->pattern_file;
+ plate->no_light_thumbnail_file = it->second->no_light_thumbnail_file;
plate->top_file = it->second->top_file;
plate->pick_file = it->second->pick_file.empty();
plate->pattern_bbox_file = it->second->pattern_bbox_file.empty();
@@ -1507,7 +1504,7 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
return mz_zip_reader_extract_to_mem(&archive, stat.m_file_index, pixels.data(), pixels.size(), 0);
});
- BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << ":" << __LINE__ << boost::format(", plate %1%, thumbnail_file=%2%")%it->first %plate->thumbnail_file;
+ BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << ":" << __LINE__ << boost::format(", plate %1%, thumbnail_file=%2%, no_light_thumbnail_file=%3%")%it->first %plate->thumbnail_file %plate->no_light_thumbnail_file;
BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << ":" << __LINE__ << boost::format(", top_thumbnail_file=%1%, pick_thumbnail_file=%2%")%plate->top_file %plate->pick_file;
it++;
}
@@ -2141,13 +2138,14 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
plate_data_list[it->first-1]->warnings = it->second->warnings;
plate_data_list[it->first-1]->thumbnail_file = (m_load_restore || it->second->thumbnail_file.empty()) ? it->second->thumbnail_file : m_backup_path + "/" + it->second->thumbnail_file;
//plate_data_list[it->first-1]->pattern_file = (m_load_restore || it->second->pattern_file.empty()) ? it->second->pattern_file : m_backup_path + "/" + it->second->pattern_file;
+ plate_data_list[it->first-1]->no_light_thumbnail_file = (m_load_restore || it->second->no_light_thumbnail_file.empty()) ? it->second->no_light_thumbnail_file : m_backup_path + "/" + it->second->no_light_thumbnail_file;
plate_data_list[it->first-1]->top_file = (m_load_restore || it->second->top_file.empty()) ? it->second->top_file : m_backup_path + "/" + it->second->top_file;
plate_data_list[it->first-1]->pick_file = (m_load_restore || it->second->pick_file.empty()) ? it->second->pick_file : m_backup_path + "/" + it->second->pick_file;
plate_data_list[it->first-1]->pattern_bbox_file = (m_load_restore || it->second->pattern_bbox_file.empty()) ? it->second->pattern_bbox_file : m_backup_path + "/" + it->second->pattern_bbox_file;
plate_data_list[it->first-1]->config = it->second->config;
current_plate_data = plate_data_list[it->first - 1];
- BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << ":" << __LINE__ << boost::format(", plate %1%, thumbnail_file=%2%")%it->first %plate_data_list[it->first-1]->thumbnail_file;
+ BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << ":" << __LINE__ << boost::format(", plate %1%, thumbnail_file=%2%, no_light_thumbnail_file=%3%")%it->first %plate_data_list[it->first-1]->thumbnail_file %plate_data_list[it->first-1]->no_light_thumbnail_file;
BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << ":" << __LINE__ << boost::format(", top_thumbnail_file=%1%, pick_thumbnail_file=%2%")%plate_data_list[it->first-1]->top_file %plate_data_list[it->first-1]->pick_file;
it++;
@@ -4120,6 +4118,10 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
{
m_curr_plater->thumbnail_file = value;
}
+ else if (key == NO_LIGHT_THUMBNAIL_FILE_ATTR)
+ {
+ m_curr_plater->no_light_thumbnail_file = value;
+ }
else if (key == TOP_FILE_ATTR)
{
m_curr_plater->top_file = value;
@@ -5475,6 +5477,7 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
std::vector& project_presets,
const DynamicPrintConfig* config,
const std::vector& thumbnail_data,
+ const std::vector& no_light_thumbnail_data,
const std::vector& top_thumbnail_data,
const std::vector& pick_thumbnail_data,
Export3mfProgressFn proFn,
@@ -5561,7 +5564,8 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
boost::filesystem::remove(filename + ".tmp", ec);
bool result = _save_model_to_file(filename + ".tmp", *store_params.model, store_params.plate_data_list, store_params.project_presets, store_params.config,
- store_params.thumbnail_data, store_params.top_thumbnail_data, store_params.pick_thumbnail_data, store_params.proFn,
+ store_params.thumbnail_data, store_params.no_light_thumbnail_data, store_params.top_thumbnail_data, store_params.pick_thumbnail_data,
+ store_params.proFn,
store_params.calibration_thumbnail_data, store_params.id_bboxes, store_params.project, store_params.export_plate_idx);
if (result) {
boost::filesystem::rename(filename + ".tmp", filename, ec);
@@ -5637,6 +5641,7 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
std::vector& project_presets,
const DynamicPrintConfig* config,
const std::vector& thumbnail_data,
+ const std::vector& no_light_thumbnail_data,
const std::vector& top_thumbnail_data,
const std::vector& pick_thumbnail_data,
Export3mfProgressFn proFn,
@@ -5701,6 +5706,7 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
//BBS: add thumbnail for each plate
if (!m_skip_static) {
std::vector thumbnail_status(plate_data_list.size(), false);
+ std::vector no_light_thumbnail_status(plate_data_list.size(), false);
std::vector top_thumbnail_status(plate_data_list.size(), false);
std::vector pick_thumbnail_status(plate_data_list.size(), false);
@@ -5709,6 +5715,11 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
% thumbnail_data.size() %plate_data_list.size();
return false;
}
+ if ((no_light_thumbnail_data.size() > 0) && (no_light_thumbnail_data.size() > plate_data_list.size())) {
+ BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << ":" << __LINE__ << boost::format(", no_light_thumbnail_data size %1% > plate count %2%") %
+ no_light_thumbnail_data.size() % plate_data_list.size();
+ return false;
+ }
if ((top_thumbnail_data.size() > 0)&&(top_thumbnail_data.size() > plate_data_list.size())) {
BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << ":" << __LINE__ << boost::format(", top_thumbnail_data size %1% > plate count %2%")
% top_thumbnail_data.size() %plate_data_list.size();
@@ -5744,6 +5755,16 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
}
}
+ for (unsigned int index = 0; index < no_light_thumbnail_data.size(); index++) {
+ if (no_light_thumbnail_data[index]->is_valid()) {
+ if (!_add_thumbnail_file_to_archive(archive, *no_light_thumbnail_data[index], "Metadata/plate_no_light", index)) {
+ return false;
+ }
+
+ BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << ":" << __LINE__ << boost::format(",add no light thumbnail %1%'s data into 3mf") % (index + 1);
+ thumbnail_status[index] = true;
+ }
+ }
// Adds the file Metadata/top_i.png and Metadata/pick_i.png
for (unsigned int index = 0; index < top_thumbnail_data.size(); index++)
{
@@ -5779,6 +5800,16 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
}
}
+ if (!no_light_thumbnail_status[i] && !plate_data->no_light_thumbnail_file.empty() && (boost::filesystem::exists(plate_data->no_light_thumbnail_file))){
+ std::string dst_in_3mf = (boost::format("Metadata/plate_no_light_%1%.png") % (i + 1)).str();
+ BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << ":" <<__LINE__ << boost::format(", add no light thumbnail %1% from file %2%") % (i+1) %plate_data->no_light_thumbnail_file;
+
+ if (!_add_file_to_archive(archive, dst_in_3mf, plate_data->no_light_thumbnail_file)) {
+ BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << ":" << __LINE__ << boost::format(", add no light thumbnail %1% from file %2% failed\n") % (i+1) %plate_data->no_light_thumbnail_file;
+ return false;
+ }
+ }
+
if (!top_thumbnail_status[i] && !plate_data->top_file.empty() && (boost::filesystem::exists(plate_data->top_file))){
std::string dst_in_3mf = (boost::format("Metadata/top_%1%.png") % (i + 1)).str();
@@ -6419,6 +6450,13 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
metadata_item_map[BBL_MAKERLAB_VERSION_TAG] = xml_escape(model.mk_version);
BOOST_LOG_TRIVIAL(info) << "saved mk_version " << model.mk_version;
}
+ if (!model.md_name.empty()) {
+ for (unsigned int i = 0; i < model.md_name.size(); i++)
+ {
+ BOOST_LOG_TRIVIAL(info) << boost::format("saved metadata_name %1%, metadata_value %2%") %model.md_name[i] %model.md_value[i];
+ metadata_item_map[model.md_name[i]] = xml_escape(model.md_value[i]);
+ }
+ }
// store metadata info
for (auto item : metadata_item_map) {
@@ -7473,6 +7511,11 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
stream << " <" << METADATA_TAG << " " << KEY_ATTR << "=\"" << THUMBNAIL_FILE_ATTR << "\" " << VALUE_ATTR << "=\"" << std::boolalpha << thumbnail_file_in_3mf << "\"/>\n";
}
+ if (!plate_data->no_light_thumbnail_file.empty()){
+ std::string no_light_thumbnail_file_in_3mf = (boost::format(NO_LIGHT_THUMBNAIL_FILE_FORMAT) % (plate_data->plate_index + 1)).str();
+ stream << " <" << METADATA_TAG << " " << KEY_ATTR << "=\"" << NO_LIGHT_THUMBNAIL_FILE_ATTR << "\" " << VALUE_ATTR << "=\"" << std::boolalpha << no_light_thumbnail_file_in_3mf << "\"/>\n";
+ }
+
if (!plate_data->top_file.empty()) {
std::string top_file_in_3mf = (boost::format(TOP_FILE_FORMAT) % (plate_data->plate_index + 1)).str();
stream << " <" << METADATA_TAG << " " << KEY_ATTR << "=\"" << TOP_FILE_ATTR << "\" " << VALUE_ATTR << "=\"" << std::boolalpha << top_file_in_3mf << "\"/>\n";
diff --git a/src/libslic3r/Format/bbs_3mf.hpp b/src/libslic3r/Format/bbs_3mf.hpp
index d2f46be3e0..6d0c092b77 100644
--- a/src/libslic3r/Format/bbs_3mf.hpp
+++ b/src/libslic3r/Format/bbs_3mf.hpp
@@ -21,6 +21,7 @@ struct ThumbnailData;
#define GCODE_FILE_FORMAT "Metadata/plate_%1%.gcode"
#define THUMBNAIL_FILE_FORMAT "Metadata/plate_%1%.png"
+#define NO_LIGHT_THUMBNAIL_FILE_FORMAT "Metadata/plate_no_light_%1%.png"
#define TOP_FILE_FORMAT "Metadata/top_%1%.png"
#define PICK_FILE_FORMAT "Metadata/pick_%1%.png"
//#define PATTERN_FILE_FORMAT "Metadata/plate_%1%_pattern_layer_0.png"
@@ -75,6 +76,7 @@ struct PlateData
std::string gcode_file;
std::string gcode_file_md5;
std::string thumbnail_file;
+ std::string no_light_thumbnail_file;
ThumbnailData plate_thumbnail;
std::string top_file;
std::string pick_file;
@@ -213,6 +215,7 @@ struct StoreParams
std::vector project_presets;
DynamicPrintConfig* config;
std::vector thumbnail_data;
+ std::vector no_light_thumbnail_data;
std::vector top_thumbnail_data;
std::vector pick_thumbnail_data;
std::vector calibration_thumbnail_data;
diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp
index 0334edcaf8..c078d1a5d6 100644
--- a/src/libslic3r/GCode.cpp
+++ b/src/libslic3r/GCode.cpp
@@ -1398,6 +1398,8 @@ namespace DoExport {
total_cost += weight * extruder->filament_cost() * 0.001;
}
+ total_cost += config.time_cost.getFloat() * (normal_print_time/3600.0);
+
print_statistics.total_extruded_volume = total_extruded_volume;
print_statistics.total_used_filament = total_used_filament;
print_statistics.total_weight = total_weight;
@@ -1975,7 +1977,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
} else
m_enable_extrusion_role_markers = false;
- if (m_config.small_area_infill_flow_compensation.value && !print.config().small_area_infill_flow_compensation_model.empty())
+ if (!print.config().small_area_infill_flow_compensation_model.empty())
m_small_area_infill_flow_compensator = make_unique(print.config());
file.write_format("; HEADER_BLOCK_START\n");
@@ -4111,7 +4113,7 @@ LayerResult GCode::process_layer(
}
// BBS
- if (print.config().print_sequence == PrintSequence::ByObject && prime_extruder && first_layer && extruder_id == first_extruder_id) {
+ if (print.has_skirt() && print.config().print_sequence == PrintSequence::ByObject && prime_extruder && first_layer && extruder_id == first_extruder_id) {
for (InstanceToPrint& instance_to_print : instances_to_print) {
if (this->m_objSupportsWithBrim.find(instance_to_print.print_object.id()) != this->m_objSupportsWithBrim.end() &&
print.m_supportBrimMap.at(instance_to_print.print_object.id()).entities.size() > 0)
@@ -5892,7 +5894,7 @@ bool GCode::needs_retraction(const Polyline &travel, ExtrusionRole role, LiftTyp
float max_z_hop = 0.f;
for (int i = 0; i < m_config.z_hop.size(); i++)
max_z_hop = std::max(max_z_hop, (float)m_config.z_hop.get_at(i));
- float travel_len_thresh = scale_(max_z_hop / tan(GCodeWriter::slope_threshold));
+ float travel_len_thresh = scale_(max_z_hop / tan(this->writer().extruder()->travel_slope()));
float accum_len = 0.f;
Polyline clipped_travel;
diff --git a/src/libslic3r/GCode/AvoidCrossingPerimeters.cpp b/src/libslic3r/GCode/AvoidCrossingPerimeters.cpp
index 0598db3b17..9f01f81945 100644
--- a/src/libslic3r/GCode/AvoidCrossingPerimeters.cpp
+++ b/src/libslic3r/GCode/AvoidCrossingPerimeters.cpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2020 - 2022 Vojtěch Bubník @bubnikv, Lukáš Hejl @hejllukas
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "../Layer.hpp"
#include "../GCode.hpp"
#include "../EdgeGrid.hpp"
diff --git a/src/libslic3r/GCode/AvoidCrossingPerimeters.hpp b/src/libslic3r/GCode/AvoidCrossingPerimeters.hpp
index 5d85aace7f..83a447806b 100644
--- a/src/libslic3r/GCode/AvoidCrossingPerimeters.hpp
+++ b/src/libslic3r/GCode/AvoidCrossingPerimeters.hpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2020 - 2022 Lukáš Hejl @hejllukas, Vojtěch Bubník @bubnikv
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_AvoidCrossingPerimeters_hpp_
#define slic3r_AvoidCrossingPerimeters_hpp_
diff --git a/src/libslic3r/GCode/CoolingBuffer.cpp b/src/libslic3r/GCode/CoolingBuffer.cpp
index 812e71f714..ff36ce7e21 100644
--- a/src/libslic3r/GCode/CoolingBuffer.cpp
+++ b/src/libslic3r/GCode/CoolingBuffer.cpp
@@ -222,6 +222,9 @@ struct PerExtruderAdjustments
float slow_down_layer_time = 0.f;
// Minimum print speed allowed for this extruder.
float slow_down_min_speed = 0.f;
+
+ bool dont_slow_down_outer_wall = false;
+
// Parsed lines.
std::vector lines;
@@ -330,6 +333,8 @@ std::vector CoolingBuffer::parse_layer_gcode(const std::
adj.cooling_slow_down_enabled = m_config.slow_down_for_layer_cooling.get_at(extruder_id);
adj.slow_down_layer_time = float(m_config.slow_down_layer_time.get_at(extruder_id));
adj.slow_down_min_speed = float(m_config.slow_down_min_speed.get_at(extruder_id));
+ // ORCA: To enable dont slow down external perimeters feature per filament (extruder)
+ adj.dont_slow_down_outer_wall = m_config.dont_slow_down_outer_wall.get_at(extruder_id);
map_extruder_to_per_extruder_adjustment[extruder_id] = i;
}
@@ -399,7 +404,15 @@ std::vector CoolingBuffer::parse_layer_gcode(const std::
line.type |= CoolingLine::TYPE_EXTERNAL_PERIMETER;
if (wipe)
line.type |= CoolingLine::TYPE_WIPE;
- if (boost::contains(sline, ";_EXTRUDE_SET_SPEED") && ! wipe) {
+
+ // ORCA: Dont slowdown external perimeters for layer time feature
+ // use the adjustment pointer to ensure the value for the current extruder (filament) is used.
+ bool adjust_external = true;
+ if(adjustment->dont_slow_down_outer_wall && external_perimeter) adjust_external = false;
+
+ // ORCA: Dont slowdown external perimeters for layer time works by not marking the external perimeter as adjustable,
+ // hence the slowdown algorithm ignores it.
+ if (boost::contains(sline, ";_EXTRUDE_SET_SPEED") && ! wipe && adjust_external) {
line.type |= CoolingLine::TYPE_ADJUSTABLE;
active_speed_modifier = adjustment->lines.size();
}
diff --git a/src/libslic3r/GCode/PressureEqualizer.cpp b/src/libslic3r/GCode/PressureEqualizer.cpp
index 0a1ffaa131..806ef768e7 100644
--- a/src/libslic3r/GCode/PressureEqualizer.cpp
+++ b/src/libslic3r/GCode/PressureEqualizer.cpp
@@ -1,8 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Vojtěch Bubník @bubnikv, Lukáš Hejl @hejllukas, Oleksandra Iushchenko @YuSanka, Lukáš Matěna @lukasmatena
-///|/ Copyright (c) SuperSlicer 2023 Remi Durand @supermerill
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include
#include
#include
@@ -774,6 +769,7 @@ void PressureEqualizer::push_line_to_output(const size_t line_idx, float new_fee
// Orca: sanity check, 1 mm/s is the minimum feedrate.
if (new_feedrate < 60)
new_feedrate = 60;
+ new_feedrate = std::round(new_feedrate);
const GCodeLine &line = m_gcode_lines[line_idx];
if (line_idx > 0 && output_buffer_length > 0) {
const std::string prev_line_str = std::string(output_buffer.begin() + int(this->output_buffer_prev_length),
diff --git a/src/libslic3r/GCode/PressureEqualizer.hpp b/src/libslic3r/GCode/PressureEqualizer.hpp
index f03ecaeaec..3563cdabc6 100644
--- a/src/libslic3r/GCode/PressureEqualizer.hpp
+++ b/src/libslic3r/GCode/PressureEqualizer.hpp
@@ -1,8 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Vojtěch Bubník @bubnikv, Lukáš Hejl @hejllukas
-///|/ Copyright (c) SuperSlicer 2023 Remi Durand @supermerill
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_GCode_PressureEqualizer_hpp_
#define slic3r_GCode_PressureEqualizer_hpp_
diff --git a/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.cpp b/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.cpp
index 573347d5ec..dabf710a22 100644
--- a/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.cpp
+++ b/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.cpp
@@ -14,6 +14,7 @@
#include "../PrintConfig.hpp"
#include "SmallAreaInfillFlowCompensator.hpp"
+#include
namespace Slic3r {
@@ -24,61 +25,75 @@ bool nearly_equal(double a, double b)
SmallAreaInfillFlowCompensator::SmallAreaInfillFlowCompensator(const Slic3r::GCodeConfig& config)
{
- for (auto& line : config.small_area_infill_flow_compensation_model.values) {
- std::istringstream iss(line);
- std::string value_str;
- double eLength = 0.0;
+ try {
+ for (auto& line : config.small_area_infill_flow_compensation_model.values) {
+ std::istringstream iss(line);
+ std::string value_str;
+ double eLength = 0.0;
- if (std::getline(iss, value_str, ',')) {
- try {
- eLength = std::stod(value_str);
- if (std::getline(iss, value_str, ',')) {
- eLengths.push_back(eLength);
- flowComps.push_back(std::stod(value_str));
+ if (std::getline(iss, value_str, ',')) {
+ try {
+ // Trim leading and trailing whitespace
+ value_str = std::regex_replace(value_str, std::regex("^\\s+|\\s+$"), "");
+ if (value_str.empty()) {
+ continue;
+ }
+ eLength = std::stod(value_str);
+ if (std::getline(iss, value_str, ',')) {
+ eLengths.push_back(eLength);
+ flowComps.push_back(std::stod(value_str));
+ }
+ } catch (...) {
+ std::stringstream ss;
+ ss << "Error parsing data point in small area infill compensation model:" << line << std::endl;
+
+ throw Slic3r::InvalidArgument(ss.str());
}
- } catch (...) {
- std::stringstream ss;
- ss << "Error parsing data point in small area infill compensation model:" << line << std::endl;
-
- throw Slic3r::InvalidArgument(ss.str());
}
}
- }
- for (int i = 0; i < eLengths.size(); i++) {
- if (i == 0) {
- if (!nearly_equal(eLengths[i], 0.0)) {
- throw Slic3r::InvalidArgument("First extrusion length for small area infill compensation model must be 0");
- }
- } else {
- if (nearly_equal(eLengths[i], 0.0)) {
- throw Slic3r::InvalidArgument("Only the first extrusion length for small area infill compensation model can be 0");
- }
- if (eLengths[i] <= eLengths[i - 1]) {
- throw Slic3r::InvalidArgument("Extrusion lengths for subsequent points must be increasing");
+ for (int i = 0; i < eLengths.size(); i++) {
+ if (i == 0) {
+ if (!nearly_equal(eLengths[i], 0.0)) {
+ throw Slic3r::InvalidArgument("First extrusion length for small area infill compensation model must be 0");
+ }
+ } else {
+ if (nearly_equal(eLengths[i], 0.0)) {
+ throw Slic3r::InvalidArgument("Only the first extrusion length for small area infill compensation model can be 0");
+ }
+ if (eLengths[i] <= eLengths[i - 1]) {
+ throw Slic3r::InvalidArgument("Extrusion lengths for subsequent points must be increasing");
+ }
}
}
- }
- if (!flowComps.empty() && !nearly_equal(flowComps.back(), 1.0)) {
- throw Slic3r::InvalidArgument("Final compensation factor for small area infill flow compensation model must be 1.0");
- }
+ if (!flowComps.empty() && !nearly_equal(flowComps.back(), 1.0)) {
+ throw Slic3r::InvalidArgument("Final compensation factor for small area infill flow compensation model must be 1.0");
+ }
- flowModel.set_points(eLengths, flowComps);
+ flowModel = std::make_unique();
+ flowModel->set_points(eLengths, flowComps);
+
+ } catch (std::exception& e) {
+ BOOST_LOG_TRIVIAL(error) << "Error parsing small area infill compensation model: " << e.what();
+ }
}
-
double SmallAreaInfillFlowCompensator::flow_comp_model(const double line_length)
{
+ if(flowModel == nullptr)
+ return 1.0;
+
if (line_length == 0 || line_length > max_modified_length()) {
return 1.0;
}
- return flowModel(line_length);
+ return (*flowModel)(line_length);
}
double SmallAreaInfillFlowCompensator::modify_flow(const double line_length, const double dE, const ExtrusionRole role)
{
- if (role == ExtrusionRole::erSolidInfill || role == ExtrusionRole::erTopSolidInfill || role == ExtrusionRole::erBottomSurface) {
+ if (flowModel &&
+ (role == ExtrusionRole::erSolidInfill || role == ExtrusionRole::erTopSolidInfill || role == ExtrusionRole::erBottomSurface)) {
return dE * flow_comp_model(line_length);
}
diff --git a/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.hpp b/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.hpp
index 7d804c9b47..34c14864d1 100644
--- a/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.hpp
+++ b/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.hpp
@@ -5,6 +5,7 @@
#include "../PrintConfig.hpp"
#include "../ExtrusionEntity.hpp"
#include "spline/spline.h"
+#include
namespace Slic3r {
@@ -23,7 +24,7 @@ private:
std::vector flowComps;
// TODO: Cubic Spline
- tk::spline flowModel;
+ std::unique_ptr flowModel;
double flow_comp_model(const double line_length);
diff --git a/src/libslic3r/GCode/Thumbnails.cpp b/src/libslic3r/GCode/Thumbnails.cpp
index b16432c25f..43f2d4b2a6 100644
--- a/src/libslic3r/GCode/Thumbnails.cpp
+++ b/src/libslic3r/GCode/Thumbnails.cpp
@@ -1,14 +1,12 @@
-///|/ Copyright (c) Prusa Research 2022 Enrico Turri @enricoturri1966, Vojtěch Bubník @bubnikv
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "Thumbnails.hpp"
#include "../miniz_extension.hpp"
+#include "format.hpp"
#include
#include
#include
#include
+#include
namespace Slic3r::GCodeThumbnails {
diff --git a/src/libslic3r/GCode/Thumbnails.hpp b/src/libslic3r/GCode/Thumbnails.hpp
index c0ecfd342d..38a939b74c 100644
--- a/src/libslic3r/GCode/Thumbnails.hpp
+++ b/src/libslic3r/GCode/Thumbnails.hpp
@@ -1,13 +1,10 @@
-///|/ Copyright (c) Prusa Research 2022 Lukáš Hejl @hejllukas, Vojtěch Bubník @bubnikv
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_GCodeThumbnails_hpp_
#define slic3r_GCodeThumbnails_hpp_
#include "../Point.hpp"
#include "../PrintConfig.hpp"
#include "ThumbnailData.hpp"
+#include "../enum_bitmask.hpp"
#include
#include
diff --git a/src/libslic3r/GCode/ToolOrdering.cpp b/src/libslic3r/GCode/ToolOrdering.cpp
index dc272e9464..e5c3260084 100644
--- a/src/libslic3r/GCode/ToolOrdering.cpp
+++ b/src/libslic3r/GCode/ToolOrdering.cpp
@@ -25,14 +25,20 @@ const static bool g_wipe_into_objects = false;
// Shortest hamilton path problem
-static std::vector solve_extruder_order(const std::vector>& wipe_volumes, std::vector all_extruders, unsigned int start_extruder_id)
+static std::vector solve_extruder_order(const std::vector>& wipe_volumes, std::vector all_extruders, std::optional start_extruder_id)
{
- auto start_iter = std::find(all_extruders.begin(), all_extruders.end(), start_extruder_id);
bool add_start_extruder_flag = false;
- if (start_iter == all_extruders.end())
- all_extruders.insert(all_extruders.begin(), start_extruder_id), add_start_extruder_flag = true;
- else
- std::swap(*all_extruders.begin(), *start_iter);
+
+ if (start_extruder_id) {
+ auto start_iter = std::find(all_extruders.begin(), all_extruders.end(), start_extruder_id);
+ if (start_iter == all_extruders.end())
+ all_extruders.insert(all_extruders.begin(), *start_extruder_id), add_start_extruder_flag = true;
+ else
+ std::swap(*all_extruders.begin(), *start_iter);
+ }
+ else {
+ *start_extruder_id = all_extruders.front();
+ }
unsigned int iterations = (1 << all_extruders.size());
unsigned int final_state = iterations - 1;
@@ -84,7 +90,7 @@ static std::vector solve_extruder_order(const std::vector get_extruders_order(const std::vector> &wipe_volumes, std::vector all_extruders, unsigned int start_extruder_id)
+std::vector get_extruders_order(const std::vector> &wipe_volumes, std::vector all_extruders, std::optionalstart_extruder_id)
{
#define USE_DP_OPTIMIZE
#ifdef USE_DP_OPTIMIZE
@@ -123,7 +129,6 @@ if (all_extruders.size() > 1) {
#endif // OPTIMIZE
}
-
// Returns true in case that extruder a comes before b (b does not have to be present). False otherwise.
bool LayerTools::is_extruder_order(unsigned int a, unsigned int b) const
{
@@ -837,11 +842,13 @@ void ToolOrdering::reorder_extruders_for_minimum_flush_volume()
for (unsigned int i = 0; i < number_of_extruders; ++i)
wipe_volumes.push_back(std::vector(number_of_extruders, print_config->prime_volume));
}
-
- auto extruders_to_hash_key = [](const std::vector& extruders, unsigned int initial_extruder_id)->uint32_t {
+
+ auto extruders_to_hash_key = [](const std::vector& extruders,
+ std::optional initial_extruder_id) -> uint32_t {
uint32_t hash_key = 0;
// high 16 bit define initial extruder ,low 16 bit define extruder set
- hash_key |= (1 << (16 + initial_extruder_id));
+ if (initial_extruder_id)
+ hash_key |= (1 << (16 + *initial_extruder_id));
for (auto item : extruders)
hash_key |= (1 << item);
return hash_key;
@@ -868,7 +875,7 @@ void ToolOrdering::reorder_extruders_for_minimum_flush_volume()
return false;
};
- unsigned int current_extruder_id = -1;
+ std::optionalcurrent_extruder_id;
for (int i = 0; i < m_layer_tools.size(); ++i) {
LayerTools& lt = m_layer_tools[i];
if (lt.extruders.empty())
diff --git a/src/libslic3r/GCode/WipeTower2.cpp b/src/libslic3r/GCode/WipeTower2.cpp
index cfe605c1ca..6e96e21150 100644
--- a/src/libslic3r/GCode/WipeTower2.cpp
+++ b/src/libslic3r/GCode/WipeTower2.cpp
@@ -1,13 +1,6 @@
// Orca: This file is ported from latest PrusaSlicer
// Original PrusaSlicer Copyright:
-///|/ Copyright (c) Prusa Research 2017 - 2023 Lukáš Matěna @lukasmatena, Vojtěch Bubník @bubnikv, Enrico Turri @enricoturri1966
-///|/ Copyright (c) SuperSlicer 2023 Remi Durand @supermerill
-///|/ Copyright (c) 2020 Paul Arden @ardenpm
-///|/ Copyright (c) 2019 Thomas Moore
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "WipeTower2.hpp"
#include
diff --git a/src/libslic3r/GCode/WipeTower2.hpp b/src/libslic3r/GCode/WipeTower2.hpp
index cb1c11b4e9..58bdd6fc39 100644
--- a/src/libslic3r/GCode/WipeTower2.hpp
+++ b/src/libslic3r/GCode/WipeTower2.hpp
@@ -1,10 +1,6 @@
// Orca: This file is ported from latest PrusaSlicer
// Original PrusaSlicer Copyright:
-///|/ Copyright (c) Prusa Research 2017 - 2023 Lukáš Matěna @lukasmatena, Vojtěch Bubník @bubnikv
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef WipeTower2_
#define WipeTower2_
diff --git a/src/libslic3r/GCodeWriter.cpp b/src/libslic3r/GCodeWriter.cpp
index 39fba8747f..d4ebb64362 100644
--- a/src/libslic3r/GCodeWriter.cpp
+++ b/src/libslic3r/GCodeWriter.cpp
@@ -17,7 +17,6 @@
namespace Slic3r {
bool GCodeWriter::full_gcode_comment = true;
-const double GCodeWriter::slope_threshold = 3 * PI / 180;
bool GCodeWriter::supports_separate_travel_acceleration(GCodeFlavor flavor)
{
@@ -458,7 +457,7 @@ std::string GCodeWriter::travel_to_xyz(const Vec3d &point, const std::string &co
//BBS: SpiralLift
if (m_to_lift_type == LiftType::SpiralLift && this->is_current_position_clear()) {
//BBS: todo: check the arc move all in bed area, if not, then use lazy lift
- double radius = delta(2) / (2 * PI * atan(GCodeWriter::slope_threshold));
+ double radius = delta(2) / (2 * PI * atan(this->extruder()->travel_slope()));
Vec2d ij_offset = radius * delta_no_z.normalized();
ij_offset = { -ij_offset(1), ij_offset(0) };
slop_move = this->_spiral_travel_to_z(target(2), ij_offset, "spiral lift Z");
@@ -466,11 +465,11 @@ std::string GCodeWriter::travel_to_xyz(const Vec3d &point, const std::string &co
//BBS: LazyLift
else if (m_to_lift_type == LiftType::LazyLift &&
this->is_current_position_clear() &&
- atan2(delta(2), delta_no_z.norm()) < GCodeWriter::slope_threshold) {
+ atan2(delta(2), delta_no_z.norm()) < this->extruder()->travel_slope()) {
//BBS: check whether we can make a travel like
// _____
// / to make the z list early to avoid to hit some warping place when travel is long.
- Vec2d temp = delta_no_z.normalized() * delta(2) / tan(GCodeWriter::slope_threshold);
+ Vec2d temp = delta_no_z.normalized() * delta(2) / tan(this->extruder()->travel_slope());
Vec3d slope_top_point = Vec3d(temp(0), temp(1), delta(2)) + source;
GCodeG1Formatter w0;
w0.emit_xyz(slope_top_point);
diff --git a/src/libslic3r/GCodeWriter.hpp b/src/libslic3r/GCodeWriter.hpp
index b335faed49..8e1effcc4e 100644
--- a/src/libslic3r/GCodeWriter.hpp
+++ b/src/libslic3r/GCodeWriter.hpp
@@ -108,8 +108,6 @@ public:
bool is_current_position_clear() const { return m_is_current_pos_clear; };
//BBS:
static bool full_gcode_comment;
- //Radian threshold of slope for lazy lift and spiral lift;
- static const double slope_threshold;
//SoftFever
void set_is_bbl_machine(bool bval) {m_is_bbl_printers = bval;}
const bool is_bbl_printers() const {return m_is_bbl_printers;}
diff --git a/src/libslic3r/Geometry.cpp b/src/libslic3r/Geometry.cpp
index 46f7b10368..54dcb14cca 100644
--- a/src/libslic3r/Geometry.cpp
+++ b/src/libslic3r/Geometry.cpp
@@ -1,17 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Vojtěch Bubník @bubnikv, Enrico Turri @enricoturri1966, Lukáš Matěna @lukasmatena, Filip Sykala @Jony01, Tomáš Mészáros @tamasmeszaros
-///|/ Copyright (c) Slic3r 2013 - 2016 Alessandro Ranellucci @alranel
-///|/
-///|/ ported from lib/Slic3r/Geometry.pm:
-///|/ Copyright (c) Prusa Research 2017 - 2022 Vojtěch Bubník @bubnikv
-///|/ Copyright (c) Slic3r 2011 - 2015 Alessandro Ranellucci @alranel
-///|/ Copyright (c) 2013 Jose Luis Perez Diez
-///|/ Copyright (c) 2013 Anders Sundman
-///|/ Copyright (c) 2013 Jesse Vincent
-///|/ Copyright (c) 2012 Mike Sheldrake @mesheldrake
-///|/ Copyright (c) 2012 Mark Hindess
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "libslic3r.h"
#include "Exception.hpp"
#include "Geometry.hpp"
diff --git a/src/libslic3r/Geometry.hpp b/src/libslic3r/Geometry.hpp
index cac5b96868..67b27dd293 100644
--- a/src/libslic3r/Geometry.hpp
+++ b/src/libslic3r/Geometry.hpp
@@ -1,18 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Vojtěch Bubník @bubnikv, Enrico Turri @enricoturri1966, Tomáš Mészáros @tamasmeszaros, Lukáš Matěna @lukasmatena, Filip Sykala @Jony01, Lukáš Hejl @hejllukas
-///|/ Copyright (c) 2017 Eyal Soha @eyal0
-///|/ Copyright (c) Slic3r 2013 - 2016 Alessandro Ranellucci @alranel
-///|/
-///|/ ported from lib/Slic3r/Geometry.pm:
-///|/ Copyright (c) Prusa Research 2017 - 2022 Vojtěch Bubník @bubnikv
-///|/ Copyright (c) Slic3r 2011 - 2015 Alessandro Ranellucci @alranel
-///|/ Copyright (c) 2013 Jose Luis Perez Diez
-///|/ Copyright (c) 2013 Anders Sundman
-///|/ Copyright (c) 2013 Jesse Vincent
-///|/ Copyright (c) 2012 Mike Sheldrake @mesheldrake
-///|/ Copyright (c) 2012 Mark Hindess
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_Geometry_hpp_
#define slic3r_Geometry_hpp_
diff --git a/src/libslic3r/Geometry/Circle.cpp b/src/libslic3r/Geometry/Circle.cpp
index 012b240f8a..6796671954 100644
--- a/src/libslic3r/Geometry/Circle.cpp
+++ b/src/libslic3r/Geometry/Circle.cpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2021 - 2022 Lukáš Matěna @lukasmatena, Filip Sykala @Jony01, Vojtěch Bubník @bubnikv
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "Circle.hpp"
#include "../Polygon.hpp"
diff --git a/src/libslic3r/Geometry/Circle.hpp b/src/libslic3r/Geometry/Circle.hpp
index a192cc2fd6..653102e2ab 100644
--- a/src/libslic3r/Geometry/Circle.hpp
+++ b/src/libslic3r/Geometry/Circle.hpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2021 - 2022 Lukáš Matěna @lukasmatena, Filip Sykala @Jony01, Vojtěch Bubník @bubnikv, Enrico Turri @enricoturri1966
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_Geometry_Circle_hpp_
#define slic3r_Geometry_Circle_hpp_
diff --git a/src/libslic3r/IntersectionPoints.cpp b/src/libslic3r/IntersectionPoints.cpp
index bdf66d5905..888285f834 100644
--- a/src/libslic3r/IntersectionPoints.cpp
+++ b/src/libslic3r/IntersectionPoints.cpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2023 Vojtěch Bubník @bubnikv
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "IntersectionPoints.hpp"
#include
diff --git a/src/libslic3r/IntersectionPoints.hpp b/src/libslic3r/IntersectionPoints.hpp
index cf06c718a0..49694c8a8e 100644
--- a/src/libslic3r/IntersectionPoints.hpp
+++ b/src/libslic3r/IntersectionPoints.hpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2023 Vojtěch Bubník @bubnikv
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_IntersectionPoints_hpp_
#define slic3r_IntersectionPoints_hpp_
diff --git a/src/libslic3r/LayerRegion.cpp b/src/libslic3r/LayerRegion.cpp
index 224c2a8daf..2900c2fae9 100644
--- a/src/libslic3r/LayerRegion.cpp
+++ b/src/libslic3r/LayerRegion.cpp
@@ -1,8 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Vojtěch Bubník @bubnikv, Pavel Mikuš @Godrak, Lukáš Matěna @lukasmatena, Lukáš Hejl @hejllukas
-///|/ Copyright (c) Slic3r 2014 - 2016 Alessandro Ranellucci @alranel
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "Layer.hpp"
#include "BridgeDetector.hpp"
#include "ClipperUtils.hpp"
diff --git a/src/libslic3r/Measure.cpp b/src/libslic3r/Measure.cpp
index 59cd9e99fb..c6f1276e83 100644
--- a/src/libslic3r/Measure.cpp
+++ b/src/libslic3r/Measure.cpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2022 - 2023 Lukáš Matěna @lukasmatena, Enrico Turri @enricoturri1966, Vojtěch Bubník @bubnikv, Pavel Mikuš @Godrak
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "libslic3r/libslic3r.h"
#include "Measure.hpp"
#include "MeasureUtils.hpp"
diff --git a/src/libslic3r/Measure.hpp b/src/libslic3r/Measure.hpp
index dcccafb70d..70f446afd9 100644
--- a/src/libslic3r/Measure.hpp
+++ b/src/libslic3r/Measure.hpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2022 - 2023 Lukáš Matěna @lukasmatena, Enrico Turri @enricoturri1966, Vojtěch Bubník @bubnikv
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef Slic3r_Measure_hpp_
#define Slic3r_Measure_hpp_
diff --git a/src/libslic3r/MeasureUtils.hpp b/src/libslic3r/MeasureUtils.hpp
index 8a63de5a1f..0ab4ac121d 100644
--- a/src/libslic3r/MeasureUtils.hpp
+++ b/src/libslic3r/MeasureUtils.hpp
@@ -1,7 +1,3 @@
-///|/ Copyright (c) Prusa Research 2022 Enrico Turri @enricoturri1966
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef Slic3r_MeasureUtils_hpp_
#define Slic3r_MeasureUtils_hpp_
diff --git a/src/libslic3r/Model.cpp b/src/libslic3r/Model.cpp
index 9074fa49f2..cf5de0f3e4 100644
--- a/src/libslic3r/Model.cpp
+++ b/src/libslic3r/Model.cpp
@@ -1,16 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Tomáš Mészáros @tamasmeszaros, Oleksandra Iushchenko @YuSanka, David Kocík @kocikdav, Enrico Turri @enricoturri1966, Lukáš Matěna @lukasmatena, Vojtěch Bubník @bubnikv, Lukáš Hejl @hejllukas, Filip Sykala @Jony01, Vojtěch Král @vojtechkral
-///|/ Copyright (c) 2021 Boleslaw Ciesielski
-///|/ Copyright (c) 2019 John Drake @foxox
-///|/ Copyright (c) 2019 Sijmen Schoon
-///|/ Copyright (c) Slic3r 2014 - 2016 Alessandro Ranellucci @alranel
-///|/ Copyright (c) 2015 Maksim Derbasov @ntfshard
-///|/
-///|/ ported from lib/Slic3r/Model.pm:
-///|/ Copyright (c) Prusa Research 2016 - 2022 Vojtěch Bubník @bubnikv, Enrico Turri @enricoturri1966
-///|/ Copyright (c) Slic3r 2012 - 2016 Alessandro Ranellucci @alranel
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#include "Model.hpp"
#include "libslic3r.h"
#include "BuildVolume.hpp"
@@ -109,6 +96,8 @@ Model& Model::assign_copy(const Model &rhs)
this->mk_name = rhs.mk_name;
this->mk_version = rhs.mk_version;
+ this->md_name = rhs.md_name;
+ this->md_value = rhs.md_value;
return *this;
}
@@ -142,6 +131,8 @@ Model& Model::assign_copy(Model &&rhs)
this->stl_design_country = rhs.stl_design_country;
this->mk_name = rhs.mk_name;
this->mk_version = rhs.mk_version;
+ this->md_name = rhs.md_name;
+ this->md_value = rhs.md_value;
this->backup_path = std::move(rhs.backup_path);
this->object_backup_id_map = std::move(rhs.object_backup_id_map);
this->next_object_backup_id = rhs.next_object_backup_id;
@@ -996,6 +987,8 @@ void Model::load_from(Model& model)
profile_info = model.profile_info;
mk_name = model.mk_name;
mk_version = model.mk_version;
+ md_name = model.md_name;
+ md_value = model.md_value;
model.design_info.reset();
model.model_info.reset();
model.profile_info.reset();
@@ -2487,11 +2480,7 @@ void ModelVolume::calculate_convex_hull_2d(const Geometry::Transformation &tran
return;
Points pts;
- Vec3d rotation = transformation.get_rotation();
- Vec3d mirror = transformation.get_mirror();
- Vec3d scale = transformation.get_scaling_factor();
- //rotation(2) = 0.f;
- Transform3d new_matrix = Geometry::assemble_transform(Vec3d::Zero(), rotation, scale, mirror);
+ Transform3d new_matrix = transformation.get_matrix_no_offset();
pts.reserve(its.vertices.size());
// Using the shared vertices should be a bit quicker than using the STL faces.
@@ -2969,7 +2958,7 @@ bool Model::obj_import_vertex_color_deal(const std::vector &verte
case _3_SAME_COLOR: {
std::string result;
get_real_filament_id(filament_id0, result);
- volume->mmu_segmentation_facets.set_triangle_from_string(i, result);
+ volume->mmu_segmentation_facets.set_triangle_from_string(i, result);
break;
}
case _3_DIFF_COLOR: {
@@ -3174,7 +3163,8 @@ double getadhesionCoeff(const ModelVolumePtrs objectVolumes)
double adhesionCoeff = 1;
for (const ModelVolume* modelVolume : objectVolumes) {
if (Model::extruderParamsMap.find(modelVolume->extruder_id()) != Model::extruderParamsMap.end())
- if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "PETG") {
+ if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "PETG" ||
+ Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "PCTG") {
adhesionCoeff = 2;
}
else if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "TPU") {
@@ -3223,10 +3213,10 @@ void ModelInstance::get_arrange_polygon(void *ap, const Slic3r::DynamicPrintConf
Vec3d rotation = get_rotation();
rotation.z() = 0.;
- Transform3d trafo_instance =
- Geometry::assemble_transform(get_offset().z() * Vec3d::UnitZ(), rotation, get_scaling_factor(), get_mirror());
-
- Polygon p = get_object()->convex_hull_2d(trafo_instance);
+ Geometry::Transformation t(m_transformation);
+ t.set_offset(get_offset().z() * Vec3d::UnitZ());
+ t.set_rotation(rotation);
+ Polygon p = get_object()->convex_hull_2d(t.get_matrix());
// if (!p.points.empty()) {
// Polygons pp{p};
diff --git a/src/libslic3r/Model.hpp b/src/libslic3r/Model.hpp
index 41ddd83aa9..b035c2bdd2 100644
--- a/src/libslic3r/Model.hpp
+++ b/src/libslic3r/Model.hpp
@@ -1,15 +1,3 @@
-///|/ Copyright (c) Prusa Research 2016 - 2023 Tomáš Mészáros @tamasmeszaros, Oleksandra Iushchenko @YuSanka, Enrico Turri @enricoturri1966, Lukáš Matěna @lukasmatena, Vojtěch Bubník @bubnikv, Filip Sykala @Jony01, Lukáš Hejl @hejllukas, David Kocík @kocikdav, Vojtěch Král @vojtechkral
-///|/ Copyright (c) 2019 John Drake @foxox
-///|/ Copyright (c) 2019 Sijmen Schoon
-///|/ Copyright (c) 2017 Eyal Soha @eyal0
-///|/ Copyright (c) Slic3r 2014 - 2015 Alessandro Ranellucci @alranel
-///|/
-///|/ ported from lib/Slic3r/Model.pm:
-///|/ Copyright (c) Prusa Research 2016 - 2022 Vojtěch Bubník @bubnikv, Enrico Turri @enricoturri1966
-///|/ Copyright (c) Slic3r 2012 - 2016 Alessandro Ranellucci @alranel
-///|/
-///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-///|/
#ifndef slic3r_Model_hpp_
#define slic3r_Model_hpp_
@@ -435,7 +423,7 @@ public:
bool is_mm_painted() const;
// This object may have a varying layer height by painting or by a table.
// Even if true is returned, the layer height profile may be "flat" with no difference to default layering.
- bool has_custom_layering() const
+ bool has_custom_layering() const
{ return ! this->layer_config_ranges.empty() || ! this->layer_height_profile.empty(); }
ModelInstance* add_instance();
@@ -1520,6 +1508,8 @@ public:
//makerlab information
std::string mk_name;
std::string mk_version;
+ std::vector md_name;
+ std::vector md_value;
void SetDesigner(std::string designer, std::string designer_user_id) {
if (design_info == nullptr) {
diff --git a/src/libslic3r/MultiMaterialSegmentation.cpp b/src/libslic3r/MultiMaterialSegmentation.cpp
index 148fdc9921..6fba47f5b8 100644
--- a/src/libslic3r/MultiMaterialSegmentation.cpp
+++ b/src/libslic3r/MultiMaterialSegmentation.cpp
@@ -31,6 +31,454 @@
//#define MM_SEGMENTATION_DEBUG_TOP_BOTTOM
namespace Slic3r {
+using boost::polygon::voronoi_diagram;
+
+static inline Point mk_point(const Voronoi::VD::vertex_type *point) { return {coord_t(point->x()), coord_t(point->y())}; }
+
+static inline Point mk_point(const Voronoi::Internal::point_type &point) { return {coord_t(point.x()), coord_t(point.y())}; }
+
+static inline Point mk_point(const voronoi_diagram::vertex_type &point) { return {coord_t(point.x()), coord_t(point.y())}; }
+
+static inline Point mk_point(const Vec2d &point) { return {coord_t(std::round(point.x())), coord_t(std::round(point.y()))}; }
+
+static inline Vec2d mk_vec2(const voronoi_diagram::vertex_type *point) { return {point->x(), point->y()}; }
+
+static bool vertex_equal_to_point(const Voronoi::VD::vertex_type &vertex, const Vec2d &ipt)
+{
+ // Convert ipt to doubles, force the 80bit FPU temporary to 64bit and then compare.
+ // This should work with any settings of math compiler switches and the C++ compiler
+ // shall understand the memcpies as type punning and it shall optimize them out.
+ using ulp_cmp_type = boost::polygon::detail::ulp_comparison;
+ ulp_cmp_type ulp_cmp;
+ static constexpr int ULPS = boost::polygon::voronoi_diagram_traits::vertex_equality_predicate_type::ULPS;
+ return ulp_cmp(vertex.x(), ipt.x(), ULPS) == ulp_cmp_type::EQUAL && ulp_cmp(vertex.y(), ipt.y(), ULPS) == ulp_cmp_type::EQUAL;
+}
+
+static inline bool vertex_equal_to_point(const Voronoi::VD::vertex_type *vertex, const Vec2d &ipt) { return vertex_equal_to_point(*vertex, ipt); }
+
+struct MMU_Graph
+{
+ enum class ARC_TYPE { BORDER, NON_BORDER };
+
+ struct Arc
+ {
+ size_t from_idx;
+ size_t to_idx;
+ int color;
+ ARC_TYPE type;
+
+ bool operator==(const Arc &rhs) const { return (from_idx == rhs.from_idx) && (to_idx == rhs.to_idx) && (color == rhs.color) && (type == rhs.type); }
+ bool operator!=(const Arc &rhs) const { return !operator==(rhs); }
+ };
+
+ struct Node
+ {
+ Vec2d point;
+ std::list arc_idxs;
+
+ void remove_edge(const size_t to_idx, MMU_Graph &graph)
+ {
+ for (auto arc_it = this->arc_idxs.begin(); arc_it != this->arc_idxs.end(); ++arc_it) {
+ MMU_Graph::Arc &arc = graph.arcs[*arc_it];
+ if (arc.to_idx == to_idx) {
+ assert(arc.type != ARC_TYPE::BORDER);
+ this->arc_idxs.erase(arc_it);
+ break;
+ }
+ }
+ }
+ };
+
+ std::vector nodes;
+ std::vector arcs;
+ size_t all_border_points{};
+
+ std::vector polygon_idx_offset;
+ std::vector polygon_sizes;
+
+ void remove_edge(const size_t from_idx, const size_t to_idx)
+ {
+ nodes[from_idx].remove_edge(to_idx, *this);
+ nodes[to_idx].remove_edge(from_idx, *this);
+ }
+
+ [[nodiscard]] size_t get_global_index(const size_t poly_idx, const size_t point_idx) const { return polygon_idx_offset[poly_idx] + point_idx; }
+
+ void append_edge(const size_t &from_idx, const size_t &to_idx, int color = -1, ARC_TYPE type = ARC_TYPE::NON_BORDER)
+ {
+ // Don't append duplicate edges between the same nodes.
+ for (const size_t &arc_idx : this->nodes[from_idx].arc_idxs)
+ if (arcs[arc_idx].to_idx == to_idx) return;
+ for (const size_t &arc_idx : this->nodes[to_idx].arc_idxs)
+ if (arcs[arc_idx].to_idx == from_idx) return;
+
+ this->nodes[from_idx].arc_idxs.push_back(this->arcs.size());
+ this->arcs.push_back({from_idx, to_idx, color, type});
+
+ // Always insert only one directed arc for the input polygons.
+ // Two directed arcs in both directions are inserted if arcs aren't between points of the input polygons.
+ if (type == ARC_TYPE::NON_BORDER) {
+ this->nodes[to_idx].arc_idxs.push_back(this->arcs.size());
+ this->arcs.push_back({to_idx, from_idx, color, type});
+ }
+ }
+
+ // It assumes that between points of the input polygons is always only one directed arc,
+ // with the same direction as lines of the input polygon.
+ [[nodiscard]] MMU_Graph::Arc get_border_arc(size_t idx) const
+ {
+ assert(idx < this->all_border_points);
+ return this->arcs[idx];
+ }
+
+ [[nodiscard]] size_t nodes_count() const { return this->nodes.size(); }
+
+ void remove_nodes_with_one_arc()
+ {
+ std::queue update_queue;
+ for (const MMU_Graph::Node &node : this->nodes) {
+ size_t node_idx = &node - &this->nodes.front();
+ // Skip nodes that represent points of input polygons.
+ if (node.arc_idxs.size() == 1 && node_idx >= this->all_border_points) update_queue.emplace(&node - &this->nodes.front());
+ }
+
+ while (!update_queue.empty()) {
+ size_t node_from_idx = update_queue.front();
+ MMU_Graph::Node &node_from = this->nodes[update_queue.front()];
+ update_queue.pop();
+ if (node_from.arc_idxs.empty()) continue;
+
+ assert(node_from.arc_idxs.size() == 1);
+ size_t node_to_idx = arcs[node_from.arc_idxs.front()].to_idx;
+ MMU_Graph::Node &node_to = this->nodes[node_to_idx];
+ this->remove_edge(node_from_idx, node_to_idx);
+ if (node_to.arc_idxs.size() == 1 && node_to_idx >= this->all_border_points) update_queue.emplace(node_to_idx);
+ }
+ }
+
+ void add_contours(const std::vector> &color_poly)
+ {
+ this->all_border_points = nodes.size();
+ this->polygon_sizes = std::vector(color_poly.size());
+ for (size_t polygon_idx = 0; polygon_idx < color_poly.size(); ++polygon_idx) this->polygon_sizes[polygon_idx] = color_poly[polygon_idx].size();
+ this->polygon_idx_offset = std::vector(color_poly.size());
+ this->polygon_idx_offset[0] = 0;
+ for (size_t polygon_idx = 1; polygon_idx < color_poly.size(); ++polygon_idx) {
+ this->polygon_idx_offset[polygon_idx] = this->polygon_idx_offset[polygon_idx - 1] + color_poly[polygon_idx - 1].size();
+ }
+
+ size_t poly_idx = 0;
+ for (const std::vector &color_lines : color_poly) {
+ size_t line_idx = 0;
+ for (const ColoredLine &color_line : color_lines) {
+ size_t from_idx = this->get_global_index(poly_idx, line_idx);
+ size_t to_idx = this->get_global_index(poly_idx, (line_idx + 1) % color_lines.size());
+ this->append_edge(from_idx, to_idx, color_line.color, ARC_TYPE::BORDER);
+ ++line_idx;
+ }
+ ++poly_idx;
+ }
+ }
+
+ // Nodes 0..all_border_points are only one with are on countour. Other vertexis are consider as not on coouter. So we check if base on attach index
+ inline bool is_vertex_on_contour(const Voronoi::VD::vertex_type *vertex) const
+ {
+ assert(vertex != nullptr);
+ return vertex->color() < this->all_border_points;
+ }
+
+ [[nodiscard]] inline bool is_edge_attach_to_contour(const voronoi_diagram::const_edge_iterator &edge_iterator) const
+ {
+ return this->is_vertex_on_contour(edge_iterator->vertex0()) || this->is_vertex_on_contour(edge_iterator->vertex1());
+ }
+
+ [[nodiscard]] inline bool is_edge_connecting_two_contour_vertices(const voronoi_diagram::const_edge_iterator &edge_iterator) const
+ {
+ return this->is_vertex_on_contour(edge_iterator->vertex0()) && this->is_vertex_on_contour(edge_iterator->vertex1());
+ }
+
+ // All Voronoi vertices are post-processes to merge very close vertices to single. Witch eliminates issues with intersection edges.
+ // Also, Voronoi vertices outside of the bounding of input polygons are throw away by marking them.
+ void append_voronoi_vertices(const Geometry::VoronoiDiagram &vd, const Polygons &color_poly_tmp, BoundingBox bbox)
+ {
+ bbox.offset(SCALED_EPSILON);
+
+ struct CPoint
+ {
+ CPoint() = delete;
+ CPoint(const Vec2d &point, size_t contour_idx, size_t point_idx) : m_point_double(point), m_point(mk_point(point)), m_point_idx(point_idx), m_contour_idx(contour_idx)
+ {}
+ CPoint(const Vec2d &point, size_t point_idx) : m_point_double(point), m_point(mk_point(point)), m_point_idx(point_idx), m_contour_idx(0) {}
+ const Vec2d m_point_double;
+ const Point m_point;
+ size_t m_point_idx;
+ size_t m_contour_idx;
+
+ [[nodiscard]] const Vec2d &point_double() const { return m_point_double; }
+ [[nodiscard]] const Point &point() const { return m_point; }
+ bool operator==(const CPoint &rhs) const
+ {
+ return this->m_point_double == rhs.m_point_double && this->m_contour_idx == rhs.m_contour_idx && this->m_point_idx == rhs.m_point_idx;
+ }
+ };
+ struct CPointAccessor
+ {
+ const Point *operator()(const CPoint &pt) const { return &pt.point(); }
+ };
+ typedef ClosestPointInRadiusLookup CPointLookupType;
+
+ CPointLookupType closest_voronoi_point(coord_t(SCALED_EPSILON));
+ CPointLookupType closest_contour_point(3 * coord_t(SCALED_EPSILON));
+ for (const Polygon &polygon : color_poly_tmp)
+ for (const Point &pt : polygon.points) closest_contour_point.insert(CPoint(Vec2d(pt.x(), pt.y()), &polygon - &color_poly_tmp.front(), &pt - &polygon.points.front()));
+
+ for (const voronoi_diagram::vertex_type &vertex : vd.vertices()) {
+ vertex.color(-1);
+ Vec2d vertex_point_double = Vec2d(vertex.x(), vertex.y());
+ Point vertex_point = mk_point(vertex);
+
+ const Vec2d &first_point_double = this->nodes[this->get_border_arc(vertex.incident_edge()->cell()->source_index()).from_idx].point;
+ const Vec2d &second_point_double = this->nodes[this->get_border_arc(vertex.incident_edge()->twin()->cell()->source_index()).from_idx].point;
+
+ if (vertex_equal_to_point(&vertex, first_point_double)) {
+ assert(vertex.color() != vertex.incident_edge()->cell()->source_index());
+ assert(vertex.color() != vertex.incident_edge()->twin()->cell()->source_index());
+ vertex.color(this->get_border_arc(vertex.incident_edge()->cell()->source_index()).from_idx);
+ } else if (vertex_equal_to_point(&vertex, second_point_double)) {
+ assert(vertex.color() != vertex.incident_edge()->cell()->source_index());
+ assert(vertex.color() != vertex.incident_edge()->twin()->cell()->source_index());
+ vertex.color(this->get_border_arc(vertex.incident_edge()->twin()->cell()->source_index()).from_idx);
+ } else if (bbox.contains(vertex_point)) {
+ if (auto [contour_pt, c_dist_sqr] = closest_contour_point.find(vertex_point); contour_pt != nullptr && c_dist_sqr < Slic3r::sqr(3 * SCALED_EPSILON)) {
+ vertex.color(this->get_global_index(contour_pt->m_contour_idx, contour_pt->m_point_idx));
+ } else if (auto [voronoi_pt, v_dist_sqr] = closest_voronoi_point.find(vertex_point); voronoi_pt == nullptr || v_dist_sqr >= Slic3r::sqr(SCALED_EPSILON / 10.0)) {
+ closest_voronoi_point.insert(CPoint(vertex_point_double, this->nodes_count()));
+ vertex.color(this->nodes_count());
+ this->nodes.push_back({vertex_point_double});
+ } else {
+ // Boost Voronoi diagram generator sometimes creates two very closed points instead of one point.
+ // For the example points (146872.99999999997, -146872.99999999997) and (146873, -146873), this example also included in Voronoi generator test cases.
+ std::vector> all_closes_c_points = closest_voronoi_point.find_all(vertex_point);
+ int merge_to_point = -1;
+ for (const std::pair &c_point : all_closes_c_points)
+ if ((vertex_point_double - c_point.first->point_double()).squaredNorm() <= Slic3r::sqr(EPSILON)) {
+ merge_to_point = int(c_point.first->m_point_idx);
+ break;
+ }
+
+ if (merge_to_point != -1) {
+ vertex.color(merge_to_point);
+ } else {
+ closest_voronoi_point.insert(CPoint(vertex_point_double, this->nodes_count()));
+ vertex.color(this->nodes_count());
+ this->nodes.push_back({vertex_point_double});
+ }
+ }
+ }
+ }
+ }
+
+ void garbage_collect()
+ {
+ std::vector nodes_map(this->nodes.size(), -1);
+ int nodes_count = 0;
+ size_t arcs_count = 0;
+ for (const MMU_Graph::Node &node : this->nodes)
+ if (size_t node_idx = &node - &this->nodes.front(); !node.arc_idxs.empty()) {
+ nodes_map[node_idx] = nodes_count++;
+ arcs_count += node.arc_idxs.size();
+ }
+
+ std::vector new_nodes;
+ std::vector new_arcs;
+ new_nodes.reserve(nodes_count);
+ new_arcs.reserve(arcs_count);
+ for (const MMU_Graph::Node &node : this->nodes)
+ if (size_t node_idx = &node - &this->nodes.front(); nodes_map[node_idx] >= 0) {
+ new_nodes.push_back({node.point});
+ for (const size_t &arc_idx : node.arc_idxs) {
+ const Arc &arc = this->arcs[arc_idx];
+ new_nodes.back().arc_idxs.emplace_back(new_arcs.size());
+ new_arcs.push_back({size_t(nodes_map[arc.from_idx]), size_t(nodes_map[arc.to_idx]), arc.color, arc.type});
+ }
+ }
+
+ this->nodes = std::move(new_nodes);
+ this->arcs = std::move(new_arcs);
+ }
+};
+
+static Polygon colored_points_to_polygon(const std::vector &lines)
+{
+ Polygon out;
+ out.points.reserve(lines.size());
+ for (const ColoredLine &l : lines) out.points.emplace_back(l.line.a);
+ return out;
+}
+
+static Polygons colored_points_to_polygon(const std::vector> &lines)
+{
+ Polygons out;
+ out.reserve(lines.size());
+ for (const std::vector &l : lines) out.emplace_back(colored_points_to_polygon(l));
+ return out;
+}
+
+static std::vector> get_all_next_arcs(
+ const MMU_Graph &graph, std::vector &used_arcs, const Linef &process_line, const MMU_Graph::Arc &original_arc, const int color)
+{
+ std::vector> all_next_arcs;
+ for (const size_t &arc_idx : graph.nodes[original_arc.to_idx].arc_idxs) {
+ std::vector next_continue_arc;
+
+ const MMU_Graph::Arc &arc = graph.arcs[arc_idx];
+ if (graph.nodes[arc.to_idx].point == process_line.a || used_arcs[arc_idx]) continue;
+
+ if (original_arc.type == MMU_Graph::ARC_TYPE::BORDER && original_arc.color != color) continue;
+
+ if (arc.type == MMU_Graph::ARC_TYPE::BORDER && arc.color != color) continue;
+
+ Vec2d arc_line = graph.nodes[arc.to_idx].point - graph.nodes[arc.from_idx].point;
+ next_continue_arc.emplace_back(&arc);
+ all_next_arcs.emplace_back(next_continue_arc);
+ }
+ return all_next_arcs;
+}
+
+static std::vector get_next_arc(
+ const MMU_Graph &graph, std::vector &used_arcs, const Linef &process_line, const MMU_Graph::Arc &original_arc, const int color)
+{
+ std::vector res;
+
+ std::vector> all_next_arcs = get_all_next_arcs(graph, used_arcs, process_line, original_arc, color);
+ if (all_next_arcs.empty()) {
+ res.emplace_back(&original_arc);
+ return res;
+ }
+
+ std::vector, double>> sorted_arcs;
+ for (auto next_arc : all_next_arcs) {
+ if (next_arc.empty()) continue;
+
+ Vec2d process_line_vec_n = (process_line.a - process_line.b).normalized();
+ Vec2d neighbour_line_vec_n = (graph.nodes[next_arc.back()->to_idx].point - graph.nodes[next_arc.back()->from_idx].point).normalized();
+
+ double angle = ::acos(std::clamp(neighbour_line_vec_n.dot(process_line_vec_n), -1.0, 1.0));
+ if (Slic3r::cross2(neighbour_line_vec_n, process_line_vec_n) < 0.0) angle = 2.0 * (double) PI - angle;
+
+ sorted_arcs.emplace_back(next_arc, angle);
+ }
+
+ std::sort(sorted_arcs.begin(), sorted_arcs.end(),
+ [](std::pair, double> &l, std::pair, double> &r) -> bool { return l.second < r.second; });
+
+ // Try to return left most edge witch is unused
+ for (auto &sorted_arc : sorted_arcs) {
+ if (size_t arc_idx = sorted_arc.first.back() - &graph.arcs.front(); !used_arcs[arc_idx]) return sorted_arc.first;
+ }
+
+ if (sorted_arcs.empty()) {
+ res.emplace_back(&original_arc);
+ return res;
+ }
+
+ return sorted_arcs.front().first;
+}
+
+static bool is_profile_self_interaction(Polygon poly)
+{
+ auto lines = poly.lines();
+ Point intersection;
+ for (int i = 0; i < lines.size(); ++i) {
+ for (int j = i + 2; j < std::min(lines.size(), lines.size() + i - 1); ++j) {
+ if (lines[i].intersection(lines[j], &intersection)) return true;
+ }
+ }
+ return false;
+}
+
+static inline Polygon to_polygon(const std::vector> &id_to_lines)
+{
+ std::vector lines;
+ for (auto id_to_line : id_to_lines) lines.emplace_back(id_to_line.second);
+
+ Polygon poly_out;
+ poly_out.points.reserve(lines.size());
+ for (const Linef &line : lines) poly_out.points.emplace_back(mk_point(line.a));
+ return poly_out;
+}
+
+static std::vector extract_colored_segments(const MMU_Graph &graph, const size_t num_extruders)
+{
+ std::vector used_arcs(graph.arcs.size(), false);
+
+ auto all_arc_used = [&used_arcs](const MMU_Graph::Node &node) -> bool {
+ return std::all_of(node.arc_idxs.cbegin(), node.arc_idxs.cend(), [&used_arcs](const size_t &arc_idx) -> bool { return used_arcs[arc_idx]; });
+ };
+
+ std::vector expolygons_segments(num_extruders + 1);
+ for (size_t node_idx = 0; node_idx < graph.all_border_points; ++node_idx) {
+ const MMU_Graph::Node &node = graph.nodes[node_idx];
+
+ for (const size_t &arc_idx : node.arc_idxs) {
+ const MMU_Graph::Arc &arc = graph.arcs[arc_idx];
+ if (arc.type == MMU_Graph::ARC_TYPE::NON_BORDER || used_arcs[arc_idx]) continue;
+
+ Linef process_line(graph.nodes[arc.from_idx].point, graph.nodes[arc.to_idx].point);
+ used_arcs[arc_idx] = true;
+
+ std::vector> arc_id_to_face_lines;
+ arc_id_to_face_lines.emplace_back(std::make_pair(arc_idx, process_line));
+ Vec2d start_p = process_line.a;
+
+ Linef p_vec = process_line;
+ const MMU_Graph::Arc *p_arc = &arc;
+ bool flag = false;
+ do {
+ std::vector nexts = get_next_arc(graph, used_arcs, p_vec, *p_arc, arc.color);
+ for (auto next : nexts) {
+ size_t next_arc_idx = next - &graph.arcs.front();
+ if (used_arcs[next_arc_idx]) {
+ flag = true;
+ break;
+ }
+ }
+
+ if (flag) break;
+
+ for (auto next : nexts) {
+ size_t next_arc_idx = next - &graph.arcs.front();
+ arc_id_to_face_lines.emplace_back(std::make_pair(next_arc_idx, Linef(graph.nodes[next->from_idx].point, graph.nodes[next->to_idx].point)));
+ used_arcs[next_arc_idx] = true;
+ }
+
+ p_vec = Linef(graph.nodes[nexts.back()->from_idx].point, graph.nodes[nexts.back()->to_idx].point);
+ p_arc = nexts.back();
+
+ } while (graph.nodes[p_arc->to_idx].point != start_p || !all_arc_used(graph.nodes[p_arc->to_idx]));
+
+ if (Polygon poly = to_polygon(arc_id_to_face_lines); poly.is_counter_clockwise() && poly.is_valid()) {
+ expolygons_segments[arc.color].emplace_back(std::move(poly));
+ } else {
+ while (arc_id_to_face_lines.size() > 1) {
+ auto id_to_line = arc_id_to_face_lines.back();
+ used_arcs[id_to_line.first] = false;
+ arc_id_to_face_lines.pop_back();
+ Linef add_line(arc_id_to_face_lines.back().second.b, arc_id_to_face_lines.front().second.a);
+ arc_id_to_face_lines.emplace_back(std::make_pair(-1, add_line));
+ Polygon poly = to_polygon(arc_id_to_face_lines);
+ if (!is_profile_self_interaction(poly) && poly.is_counter_clockwise() && poly.is_valid()) {
+ expolygons_segments[arc.color].emplace_back(std::move(poly));
+ break;
+ }
+ arc_id_to_face_lines.pop_back();
+ }
+ }
+ }
+ }
+ return expolygons_segments;
+}
+
bool is_equal(float left, float right, float eps = 1e-3) {
return abs(left - right) <= eps;
}
@@ -693,6 +1141,7 @@ static void remove_multiple_edges_in_vertex(const VD::vertex_type &vertex) {
}
}
+#if (0)
// Returns list of ExPolygons for each extruder + 1 for default unpainted regions.
// It iterates through all nodes on the border between two different colors, and from this point,
// start selection always left most edges for every node to construct CCW polygons.
@@ -828,6 +1277,7 @@ static std::vector extract_colored_segments(const std::vector &input_expolygons,
std::vector> &segmented_regions,
@@ -837,10 +1287,11 @@ static void cut_segmented_layers(const std::vector &input_exp
{
BOOST_LOG_TRIVIAL(debug) << "MM segmentation - cutting segmented layers in parallel - begin";
const float interlocking_cut_width = interlocking_depth > 0.f ? std::max(cut_width - interlocking_depth, 0.f) : 0.f;
- tbb::parallel_for(tbb::blocked_range(0, segmented_regions.size()),[&segmented_regions, &input_expolygons, &cut_width, &interlocking_cut_width, &throw_on_cancel_callback](const tbb::blocked_range& range) {
+ tbb::parallel_for(tbb::blocked_range(0, segmented_regions.size()),
+ [&segmented_regions, &input_expolygons, &cut_width, &interlocking_depth, &throw_on_cancel_callback](const tbb::blocked_range &range) {
for (size_t layer_idx = range.begin(); layer_idx < range.end(); ++layer_idx) {
throw_on_cancel_callback();
- const float region_cut_width = (layer_idx % 2 == 0 && interlocking_cut_width > 0.f) ? interlocking_cut_width : cut_width;
+ const float region_cut_width = ((layer_idx % 2 == 0) && (interlocking_depth != 0.f)) ? interlocking_depth : cut_width;
const size_t num_extruders_plus_one = segmented_regions[layer_idx].size();
if (region_cut_width > 0.f) {
std::vector segmented_regions_cuts(num_extruders_plus_one); // Indexed by extruder_id
@@ -1155,6 +1606,358 @@ static inline std::vector> mmu_segmentation_top_and_bott
return triangles_by_color_merged;
}
+// For every ColoredLine in lines_colored_out, assign the index of the polygon to which belongs and also the index of this line inside of the polygon.
+static inline void init_polygon_indices(const MMU_Graph &graph, const std::vector> &color_poly, std::vector &lines_colored_out)
+{
+ size_t poly_idx = 0;
+ for (const std::vector