diff --git a/.gitattributes b/.gitattributes
index 4cab1f4d26..441bdfe1eb 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -1,2 +1,7 @@
# Set the default behavior, in case people don't have core.autocrlf set.
* text=auto
+
+# Shell scripts are run by Git Bash on Windows CI, which cannot read a script
+# with CRLF line endings: it fails on the first line. Windows checkouts default
+# to core.autocrlf=true, so keep these LF whatever the platform.
+*.sh text eol=lf
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
index 1b3ba3f407..63f74a069e 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.yml
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -32,9 +32,17 @@ body:
attributes:
label: OrcaSlicer Version
description: Which version of Orca Slicer are you running? You can see the full version in `Help` -> `About Orca Slicer`.
- placeholder: e.g. 1.9.0
+ placeholder: e.g. 2.5.0
validations:
required: true
+ - type: input
+ id: working_version
+ attributes:
+ label: Regression compared to a previous version
+ description: Did it work in a previous version?
+ placeholder: e.g. 2.3.2
+ validations:
+ required: false
- type: dropdown
id: os_type
attributes:
diff --git a/.github/workflows/build_all.yml b/.github/workflows/build_all.yml
index 1c392e4bc6..3de2a9184b 100644
--- a/.github/workflows/build_all.yml
+++ b/.github/workflows/build_all.yml
@@ -14,6 +14,7 @@ on:
- 'localization/**'
- 'resources/**'
- ".github/workflows/build_*.yml"
+ - 'scripts/build_preset_cache.*'
- 'scripts/flatpak/**'
- 'scripts/msix/**'
- 'tests/**'
@@ -33,6 +34,7 @@ on:
- 'build_release_vs.bat'
- 'build_release_vs2022.bat'
- 'build_release_macos.sh'
+ - 'scripts/build_preset_cache.*'
- 'scripts/flatpak/**'
- 'scripts/msix/**'
- 'tests/**'
diff --git a/.github/workflows/build_orca.yml b/.github/workflows/build_orca.yml
index a7652c3bd6..112c0b279b 100644
--- a/.github/workflows/build_orca.yml
+++ b/.github/workflows/build_orca.yml
@@ -162,6 +162,14 @@ jobs:
retention-days: 5
if-no-files-found: error
+ - name: Build system preset cache (macOS)
+ if: runner.os == 'macOS' && !inputs.macos-combine-only
+ working-directory: ${{ github.workspace }}
+ shell: bash
+ # The bundle was already packed from resources/, so the caches have to be
+ # installed into it here; the source tree keeps its JSONs for later jobs.
+ run: ./scripts/build_preset_cache.sh -b build/${{ inputs.arch }} build/${{ inputs.arch }}/OrcaSlicer/OrcaSlicer.app/Contents/Resources/profiles
+
- name: Pack macOS app bundle ${{ inputs.arch }}
if: runner.os == 'macOS' && !inputs.macos-combine-only
working-directory: ${{ github.workspace }}
@@ -390,6 +398,13 @@ jobs:
if ($arch -eq "arm64") { .\build_release_vs.bat slicer arm64 tests } else { .\build_release_vs.bat slicer tests }
shell: pwsh
+ - name: Build system preset cache (Windows)
+ if: runner.os == 'Windows'
+ shell: cmd
+ # Shipped into both the already-installed tree (portable zip, MSIX) and
+ # the checkout cpack re-installs from when it builds the NSIS installer.
+ run: scripts\build_preset_cache.bat --prune-source "%BUILD_DIR%" "resources\profiles" "%BUILD_DIR%\OrcaSlicer\resources\profiles"
+
- name: Pack unit tests Win
if: runner.os == 'Windows'
working-directory: ${{ github.workspace }}
@@ -539,6 +554,20 @@ jobs:
retention-days: 5
if-no-files-found: error
+ - name: Build system preset cache (Linux)
+ if: runner.os == 'Linux'
+ shell: bash
+ run: |
+ # Both were packed from resources/ before the caches existed, so the
+ # AppImage is unpacked first and the caches shipped into it and into
+ # the package tree; the source tree keeps its JSONs for later steps.
+ appimage=$(find build -maxdepth 1 -name "OrcaSlicer_Linux_AppImage*.AppImage" | head -1)
+ chmod +x "$appimage"
+ "$appimage" --appimage-extract
+ ./scripts/build_preset_cache.sh -b build build/package/resources/profiles squashfs-root/resources/profiles
+ appimagetool=$(find build -name "appimagetool.AppImage" | head -1)
+ ARCH=$(uname -m) "$appimagetool" --appimage-extract-and-run squashfs-root "$appimage"
+ rm -rf squashfs-root
# Ship the freshly-built validator so slice_check_linux (build_all.yml)
# can slice-sweep the shipped profiles with this PR's engine. Taken from
# the aarch64 leg so the sweep also exercises the arm build; x86_64 on
diff --git a/.github/workflows/check_profiles.yml b/.github/workflows/check_profiles.yml
index 59c92e3ec0..db3ae6c4e8 100644
--- a/.github/workflows/check_profiles.yml
+++ b/.github/workflows/check_profiles.yml
@@ -1,8 +1,12 @@
name: Check profiles
on:
pull_request:
+ # release/* is included because pr-merge-bot.yml lets delegates merge into
+ # it, and it gates on this workflow's result. Without it a delegated merge
+ # into a release branch would run no profile validation at all.
branches:
- main
+ - release/*
paths:
- 'resources/profiles/**'
- ".github/workflows/check_profiles.yml"
@@ -20,6 +24,8 @@ permissions:
jobs:
check_profiles:
+ # This job name is the check-run name pr-merge-bot.yml requires before a
+ # delegated merge. Renaming it silently disables that gate.
name: Check profiles
runs-on: ubuntu-24.04
steps:
diff --git a/.github/workflows/pr-merge-bot.yml b/.github/workflows/pr-merge-bot.yml
new file mode 100644
index 0000000000..9b5ff2dfaf
--- /dev/null
+++ b/.github/workflows/pr-merge-bot.yml
@@ -0,0 +1,510 @@
+name: PR Merge Bot
+
+# Merges a pull request on request from a delegated vendor profile maintainer.
+# The merge is performed by this workflow's GITHUB_TOKEN, so a delegate needs no
+# repository access.
+#
+# Commands, posted as a comment on the PR:
+# /bot merge squash-merge the PR
+# /bot merge --dry-run report the verdict without merging
+#
+# Merges only when the commenter holds a grant covering every changed path, the
+# PR targets main or release/*, and CI is green on the head commit. Otherwise it
+# comments naming the files that fell outside the grant.
+#
+# Grants come from the FOLDER_MERGERS variable in the `merge-delegation`
+# environment: one per line, `account: path`, `#` comments and blank lines
+# allowed. Paths may contain spaces. A vendor takes two grants, the folder and
+# its sibling bundle JSON:
+#
+# # Acme profiles
+# vendor-maintainer: resources/profiles/Acme/
+# vendor-maintainer: resources/profiles/Acme.json
+#
+# Edit the grant list (environment scope, so admin only):
+# gh variable set FOLDER_MERGERS --env merge-delegation --body "$(cat folder-mergers.txt)"
+# gh variable get FOLDER_MERGERS --env merge-delegation
+#
+# Stop all merging without touching this file:
+# gh variable set MERGE_BOT_DRY_RUN --body true
+
+on:
+ issue_comment:
+ types:
+ - created
+
+# One merge attempt per PR at a time, so two quick comments cannot race.
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.issue.number }}
+ cancel-in-progress: false
+
+jobs:
+ merge:
+ # Skips the job unless a PR comment mentions the command.
+ if: >-
+ github.repository == 'OrcaSlicer/OrcaSlicer'
+ && github.event.issue.pull_request != null
+ && contains(github.event.comment.body, '/bot merge')
+ permissions:
+ contents: write # pulls.merge
+ pull-requests: write # pulls.merge
+ issues: write # feedback comment + reactions
+ actions: write # re-dispatch build_all.yml after the merge
+ runs-on: ubuntu-latest
+ timeout-minutes: 10
+ # Supplies FOLDER_MERGERS. Must carry no protection rules, or every
+ # delegated merge would wait for a human reviewer.
+ environment: merge-delegation
+ steps:
+ - name: Merge PR on behalf of a folder delegate
+ uses: actions/github-script@v9
+ env:
+ # Read as env vars, never interpolated into the script body.
+ FOLDER_MERGERS: ${{ vars.FOLDER_MERGERS }}
+ MERGE_BOT_DRY_RUN: ${{ vars.MERGE_BOT_DRY_RUN }}
+ with:
+ script: |
+ function isPermissionDenied(error) {
+ return error && error.status === 403 && /Resource not accessible by integration/i.test(error.message || '');
+ }
+
+ const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
+
+ const MARKER = '';
+ // No grant may reach outside this root.
+ const DELEGATABLE_ROOT = 'resources/profiles/';
+ const ALLOWED_BASE_BRANCH = /^(?:main|release\/.+)$/;
+ const MERGE_METHOD = 'squash';
+ const REQUIRED_CHECK = 'Check profiles'; // job name in check_profiles.yml
+ const MAX_CHANGED_FILES = 500; // policy cap, well under listFiles' 3000
+ const LISTFILES_CAP = 3000;
+ const MAX_REPORTED_FILES = 12;
+ const MERGEABLE_ATTEMPTS = 5;
+ const MERGEABLE_DELAY_MS = 2000;
+ const OK_CONCLUSIONS = new Set(['success', 'neutral', 'skipped']);
+ const REGULAR_FILE_MODES = new Set(['100644', '100755']);
+
+ // Paths refused whatever the grants say. Checked before grants, so
+ // delegating a new root means removing it from this list too.
+ const DENIED_PATTERNS = [
+ /^\.github\//,
+ /(^|\/)\.git(attributes|modules|ignore|config)$/,
+ /^(?:src|deps|deps_src|tests|tools|cmake|sandboxes|scripts|docs?|localization|bbl)\//,
+ /(^|\/)cmakelists\.txt$/,
+ /\.cmake$/,
+ /^build_[^/]*\.(?:sh|bat)$/,
+ /^version\.inc$/,
+ // Executables, including those inside the delegatable root.
+ /\.(?:sh|bash|bat|cmd|ps1|py|js|mjs|cjs|ts|rb|pl|php)$/
+ ];
+
+ function parseGrants(raw) {
+ // GitHub login: 1-39 chars, alphanumerics with single interior hyphens.
+ const loginPattern = /^[A-Za-z0-9](?:[A-Za-z0-9]|-(?=[A-Za-z0-9])){0,38}$/;
+ const grantsByLogin = new Map();
+ const problems = [];
+
+ (raw || '').split(/\r?\n/).forEach((rawLine, index) => {
+ const line = rawLine.trim();
+ if (!line || line.startsWith('#')) {
+ return;
+ }
+
+ // Splits on the first colon only, so paths may contain ':' and spaces.
+ const separator = line.indexOf(':');
+ if (separator === -1) {
+ problems.push(`line ${index + 1}: expected \`account: path\``);
+ return;
+ }
+
+ const login = line.slice(0, separator).trim().replace(/^@/, '');
+ const path = line.slice(separator + 1).trim().replace(/\/+$/, '');
+
+ if (!loginPattern.test(login)) {
+ problems.push(`line ${index + 1}: \`${login}\` is not a valid GitHub account name`);
+ return;
+ }
+ if (/[\\*?\u0000-\u001f\u007f]/.test(path) || path.split('/').includes('..') || path.includes('//')) {
+ problems.push(`line ${index + 1}: invalid path (no globs, \`..\`, \`//\`, backslashes or control characters)`);
+ return;
+ }
+ // Rejects anything outside the root, and the bare root itself.
+ if (!path.startsWith(DELEGATABLE_ROOT) || path.length <= DELEGATABLE_ROOT.length) {
+ problems.push(`line ${index + 1}: \`${path}\` is not inside \`${DELEGATABLE_ROOT}\``);
+ return;
+ }
+
+ const key = login.toLowerCase();
+ grantsByLogin.set(key, (grantsByLogin.get(key) || []).concat(path));
+ });
+
+ return { grantsByLogin, problems };
+ }
+
+ function isDenied(path) {
+ if (/[\\\u0000-\u001f\u007f]/.test(path) || path.startsWith('/') || path.split('/').includes('..')) {
+ return true;
+ }
+
+ const normalized = path.normalize('NFKC').toLowerCase();
+ return DENIED_PATTERNS.some((pattern) => pattern.test(normalized));
+ }
+
+ // Byte-exact match on directory boundaries, so a grant of
+ // `.../Acme` covers neither `.../Acme Labs/x.json` nor `.../Acme.json`.
+ function isGranted(path, grants) {
+ return grants.some((grant) => path === grant || path.startsWith(`${grant}/`));
+ }
+
+ // Both endpoints of a rename; both must satisfy the grant.
+ function pathsFor(file) {
+ return [file.filename, file.previous_filename].filter(Boolean);
+ }
+
+ function formatList(items) {
+ const unique = [...new Set(items)];
+ const shown = unique.slice(0, MAX_REPORTED_FILES).map((item) => `- \`${item}\``);
+ if (unique.length > MAX_REPORTED_FILES) {
+ shown.push(`- …and ${unique.length - MAX_REPORTED_FILES} more`);
+ }
+ return shown.join('\n');
+ }
+
+ const { owner, repo } = context.repo;
+ const issue = context.payload.issue;
+ const comment = context.payload.comment;
+
+ if (!issue.pull_request) {
+ core.info('Ignoring comment that is not on a pull request.');
+ return;
+ }
+ // Ignores a comment whose sender is not its author.
+ if (context.payload.action !== 'created' || context.payload.sender.login !== comment.user.login) {
+ core.warning('Ignoring comment whose sender does not match its author.');
+ return;
+ }
+ if (comment.user.type !== 'User') {
+ core.info('Ignoring bot-authored command.');
+ return;
+ }
+
+ const commandLine = (comment.body || '')
+ .split('\n')
+ .map((line) => line.trim())
+ .find((line) => /^\/bot\s+merge\b/i.test(line));
+
+ if (!commandLine) {
+ core.info('No /bot merge command found.');
+ return;
+ }
+
+ const commenter = comment.user.login;
+ const { grantsByLogin, problems } = parseGrants(process.env.FOLDER_MERGERS);
+ const grants = grantsByLogin.get(commenter.toLowerCase()) || [];
+
+ for (const problem of problems) {
+ core.warning(`FOLDER_MERGERS ${problem}`);
+ }
+
+ // Says nothing to accounts with no grant, so it cannot be used to spam.
+ if (!grants.length) {
+ core.info(`Ignoring /bot merge from @${commenter}: not listed in FOLDER_MERGERS.`);
+ return;
+ }
+
+ // Warns instead of failing when the token cannot post feedback.
+ async function bestEffort(call, warning) {
+ try {
+ await call();
+ } catch (error) {
+ if (isPermissionDenied(error)) {
+ core.warning(warning);
+ return;
+ }
+
+ throw error;
+ }
+ }
+
+ const react = (content) => bestEffort(
+ () => github.rest.reactions.createForIssueComment({ owner, repo, comment_id: comment.id, content }),
+ `Cannot add the "${content}" reaction because the token cannot write.`);
+
+ const say = (body) => bestEffort(
+ () => github.rest.issues.createComment({ owner, repo, issue_number: issue.number, body: `${MARKER}\n${body}` }),
+ 'Cannot post a comment because the token cannot write comments.');
+
+ // Declines the command: warns in the log, reacts, explains on the PR.
+ async function refuse(reason) {
+ const configNote = problems.length
+ ? `\n\n\`FOLDER_MERGERS\` also has problems a maintainer needs to fix:\n${problems.map((problem) => `- ${problem}`).join('\n')}`
+ : '';
+ const grantsNote = `\n\nYour current grants\n\n${formatList(grants)}\n\n`;
+
+ core.warning(`Refused /bot merge from @${commenter}: ${reason}`);
+ await react('-1');
+ await say(`@${commenter} I can't merge this PR: ${reason}${configNote}${grantsNote}`);
+ }
+
+ await react('eyes');
+
+ const args = (commandLine.match(/^\/bot\s+merge\s*(.*)$/i)[1] || '').trim().split(/\s+/).filter(Boolean);
+ const unknownArgs = args.filter((arg) => arg.toLowerCase() !== '--dry-run');
+ const dryRun = String(process.env.MERGE_BOT_DRY_RUN || '').toLowerCase() === 'true'
+ || unknownArgs.length !== args.length;
+
+ if (unknownArgs.length) {
+ return refuse(
+ `I don't understand ${unknownArgs.map((arg) => `\`${arg}\``).join(', ')}. ` +
+ 'Usage: `/bot merge` or `/bot merge --dry-run`.'
+ );
+ }
+
+ // Refuses everything while the grant list is malformed.
+ if (problems.length) {
+ return refuse(
+ 'the `FOLDER_MERGERS` grant list has malformed lines, so I refuse every merge until it is fixed.'
+ );
+ }
+
+ let { data: pr } = await github.rest.pulls.get({
+ owner,
+ repo,
+ pull_number: issue.number
+ });
+
+ if (pr.merged) {
+ return refuse('it is already merged.');
+ }
+ if (pr.state !== 'open') {
+ return refuse(`its state is \`${pr.state}\`, not \`open\`.`);
+ }
+ if (pr.draft) {
+ return refuse('it is still a draft. Mark it ready for review first.');
+ }
+ if (!ALLOWED_BASE_BRANCH.test(pr.base.ref)) {
+ return refuse(`it targets \`${pr.base.ref}\`. Delegated merges are only allowed into \`main\` and \`release/*\`.`);
+ }
+
+ // ---- folder scope ----
+ const files = await github.paginate(github.rest.pulls.listFiles, {
+ owner,
+ repo,
+ pull_number: pr.number,
+ per_page: 100
+ });
+
+ if (!files.length) {
+ return refuse('it changes no files, so there is nothing to verify or merge.');
+ }
+ // Refuses when the file list is truncated or disagrees with the PR.
+ if (files.length >= LISTFILES_CAP || files.length !== pr.changed_files) {
+ return refuse(
+ `it reports ${pr.changed_files} changed files but the API listed ${files.length}, ` +
+ 'so the file list is truncated and I cannot verify the folder scope. A maintainer must merge this one.'
+ );
+ }
+ if (pr.changed_files > MAX_CHANGED_FILES) {
+ return refuse(`it changes ${pr.changed_files} files; delegated merges are capped at ${MAX_CHANGED_FILES}.`);
+ }
+
+ const deniedFiles = [];
+ const outsideFiles = [];
+
+ for (const file of files) {
+ for (const path of pathsFor(file)) {
+ if (isDenied(path)) {
+ deniedFiles.push(path);
+ } else if (!isGranted(path, grants)) {
+ outsideFiles.push(path);
+ }
+ }
+ }
+
+ if (deniedFiles.length) {
+ core.error(`@${commenter} attempted a delegated merge touching protected paths: ${deniedFiles.join(', ')}`);
+ return refuse(
+ 'it touches paths that are never delegatable, whatever the grants say ' +
+ `(CI, build, scripts or executable files):\n\n${formatList(deniedFiles)}\n\nA maintainer should look at this before it goes any further.`
+ );
+ }
+ if (outsideFiles.length) {
+ return refuse(
+ `${outsideFiles.length} changed path(s) fall outside your grants:\n\n${formatList(outsideFiles)}\n\n` +
+ 'A vendor needs both grants: `resources/profiles//` **and** `resources/profiles/.json`.'
+ );
+ }
+
+ // ---- file modes: rejects symlinks and submodules ----
+ // Fetches the delegatable subtree only; listFiles does not report modes.
+ const headSha = pr.head.sha;
+ const { data: tree } = await github.rest.git.getTree({
+ owner,
+ repo,
+ tree_sha: `${headSha}:${DELEGATABLE_ROOT.replace(/\/$/, '')}`,
+ recursive: 'true'
+ });
+
+ if (tree.truncated) {
+ return refuse('the git tree is too large to verify file modes. A maintainer must merge this one.');
+ }
+
+ // Entry paths are subtree-relative.
+ const modesByPath = new Map(tree.tree.map((entry) => [`${DELEGATABLE_ROOT}${entry.path}`, entry.mode]));
+ const irregularFiles = files
+ .filter((file) => file.status !== 'removed')
+ .map((file) => [file.filename, modesByPath.get(file.filename)])
+ .filter(([, mode]) => !REGULAR_FILE_MODES.has(mode))
+ .map(([path, mode]) => `${path} (mode ${mode || 'missing'})`);
+
+ if (irregularFiles.length) {
+ core.error(`@${commenter} attempted a delegated merge with non-regular files: ${irregularFiles.join(', ')}`);
+ return refuse(
+ `it adds symlinks, submodules or files I cannot verify:\n\n${formatList(irregularFiles)}\n\nA maintainer should look at this before it goes any further.`
+ );
+ }
+
+ // ---- mergeability: waits for GitHub to compute it ----
+ for (let attempt = 0; pr.mergeable === null && attempt < MERGEABLE_ATTEMPTS; attempt += 1) {
+ core.info(`Mergeability not computed yet; retrying in ${MERGEABLE_DELAY_MS}ms.`);
+ await sleep(MERGEABLE_DELAY_MS);
+ ({ data: pr } = await github.rest.pulls.get({
+ owner,
+ repo,
+ pull_number: pr.number
+ }));
+ }
+
+ if (pr.mergeable === null) {
+ return refuse('GitHub is still working out whether it can be merged. Try `/bot merge` again in a minute.');
+ }
+ if (!pr.mergeable) {
+ return refuse(`it is not mergeable (\`${pr.mergeable_state}\`) - most likely a conflict with \`${pr.base.ref}\`.`);
+ }
+
+ // ---- CI on the head commit ----
+ const checkRuns = await github.paginate(github.rest.checks.listForRef, {
+ owner,
+ repo,
+ ref: headSha,
+ filter: 'latest',
+ per_page: 100
+ });
+ const pendingChecks = checkRuns.filter((run) => run.status !== 'completed');
+ const failedChecks = checkRuns.filter((run) => run.status === 'completed' && !OK_CONCLUSIONS.has(run.conclusion));
+
+ if (pendingChecks.length) {
+ return refuse(
+ `${pendingChecks.length} check(s) are still running on \`${headSha.slice(0, 7)}\`:\n\n` +
+ `${formatList(pendingChecks.map((run) => run.name))}\n\nRe-run \`/bot merge\` once they finish.`
+ );
+ }
+ if (failedChecks.length) {
+ return refuse(
+ `${failedChecks.length} check(s) are not green on \`${headSha.slice(0, 7)}\`:\n\n` +
+ formatList(failedChecks.map((run) => `${run.name} (${run.conclusion})`))
+ );
+ }
+
+ const { data: combined } = await github.rest.repos.getCombinedStatusForRef({
+ owner,
+ repo,
+ ref: headSha
+ });
+ // total_count 0 only means there are no legacy statuses.
+ if (combined.total_count > 0 && combined.state !== 'success') {
+ return refuse(
+ `the combined commit status on \`${headSha.slice(0, 7)}\` is \`${combined.state}\`:\n\n` +
+ formatList(combined.statuses.filter((status) => status.state !== 'success')
+ .map((status) => `${status.context} (${status.state})`))
+ );
+ }
+
+ // Requires the check to have actually run, not merely to have not failed.
+ const requiredCheck = checkRuns.find((run) =>
+ run.name === REQUIRED_CHECK &&
+ run.app && run.app.slug === 'github-actions' &&
+ run.status === 'completed' && OK_CONCLUSIONS.has(run.conclusion));
+
+ if (!requiredCheck) {
+ return refuse(
+ `the \`${REQUIRED_CHECK}\` check has not succeeded on \`${headSha.slice(0, 7)}\`. ` +
+ 'If it never ran, a maintainer needs to approve the workflow run first.'
+ );
+ }
+
+ const scopeSummary = `${files.length} file(s), all within:\n${formatList(grants)}`;
+
+ if (dryRun) {
+ core.info('Dry run: every gate passed, not merging.');
+ await react('+1');
+ await say(
+ `@${commenter} **dry run** - this PR passes every gate and I *would* squash-merge it ` +
+ `at \`${headSha.slice(0, 7)}\`.\n\nVerified scope: ${scopeSummary}`
+ );
+ return;
+ }
+
+ // ---- re-validate, then merge ----
+ // An unchanged head SHA means the verified file list still holds.
+ const { data: fresh } = await github.rest.pulls.get({
+ owner,
+ repo,
+ pull_number: pr.number
+ });
+
+ if (fresh.head.sha !== headSha || fresh.base.ref !== pr.base.ref || fresh.state !== 'open' || fresh.merged || fresh.draft) {
+ return refuse('it changed while I was checking it. Nothing was merged - re-run `/bot merge`.');
+ }
+
+ let merged;
+ try {
+ // Pinned to the verified head: a moved head fails with 409.
+ ({ data: merged } = await github.rest.pulls.merge({
+ owner,
+ repo,
+ pull_number: pr.number,
+ sha: headSha,
+ merge_method: MERGE_METHOD,
+ commit_title: `${pr.title} (#${pr.number})`,
+ commit_message:
+ `Merged by /bot merge on behalf of @${commenter} (id ${comment.user.id}).\n` +
+ `Grants: ${grants.join(', ')}\nHead: ${headSha}\n`
+ }));
+ } catch (error) {
+ const hint = {
+ 403: 'the workflow token cannot write to the repository.',
+ 405: 'GitHub refused the merge - branch protection, a required review or check, a newly added CODEOWNERS file, or squash merging being disabled.',
+ 409: `the head commit moved after I verified it (was \`${headSha.slice(0, 7)}\`).`,
+ 422: 'GitHub rejected the merge as invalid.'
+ }[error.status];
+
+ if (!hint) {
+ throw error;
+ }
+
+ await refuse(`${hint}\n\n> ${error.message}\n\nNothing was merged.`);
+ core.setFailed(`Delegated merge failed: ${error.status} ${error.message}`);
+ return;
+ }
+
+ core.info(`Merged #${pr.number} as ${merged.sha}.`);
+ await react('rocket');
+ await say(
+ `@${commenter} squash-merged into \`${pr.base.ref}\` as ${merged.sha}.\n\nVerified scope: ${scopeSummary}`
+ );
+
+ // ---- re-kick the build ----
+ // A GITHUB_TOKEN merge fires no push event, so build_all.yml would
+ // otherwise never see these files.
+ try {
+ await github.rest.actions.createWorkflowDispatch({
+ owner,
+ repo,
+ workflow_id: 'build_all.yml',
+ ref: pr.base.ref
+ });
+ core.info(`Dispatched build_all.yml on ${pr.base.ref}.`);
+ } catch (error) {
+ core.warning(`Merged successfully, but dispatching build_all.yml failed: ${error.message}`);
+ }
diff --git a/.gitignore b/.gitignore
index 916c7207b7..4d3ccb5c7b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -49,3 +49,4 @@ internal_docs/
# Python bytecode
__pycache__/
*.pyc
+*.opc
diff --git a/AGENTS.md b/AGENTS.md
index fbc624b958..236aa54c05 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -56,6 +56,7 @@ ctest --test-dir ./tests/fff_print
- Add helper functions or utilities only when existing code cannot reasonably be reused. Avoid duplication.
- Keep code concise and clear. Manually simplify AI generated bloated codes before review.
- Include targeted tests or documented verification for behavior changes, especially in slicing logic, profiles, formats, and GUI defaults.
+- For profile changes (`resources/profiles//**`), check that `version` in the sibling `resources/profiles/.json` was bumped.
- For translation changes (`localization/i18n/**/*.po`), check that recurring terms match the [Localization glossary](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/guides/localization_glossary.md) for that language.
## Localization & translations
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c9417fc906..9f0db669b8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -59,6 +59,13 @@ if (APPLE)
message(STATUS "CMAKE_OSX_DEPLOYMENT_TARGET: ${CMAKE_OSX_DEPLOYMENT_TARGET}")
endif ()
+# Keep MSVC's default /W3 out of CMAKE__FLAGS so it can be applied to our own
+# targets only. Silencing a bundled target would otherwise override a warning level,
+# which cl reports as D9025 for every file it compiles.
+if (POLICY CMP0092)
+ cmake_policy(SET CMP0092 NEW)
+endif ()
+
project(OrcaSlicer)
# Backward compatibility for old CMake versions
@@ -80,8 +87,12 @@ endif()
if (DEFINED BBL_RELEASE_TO_PUBLIC)
add_compile_definitions("BBL_RELEASE_TO_PUBLIC=${BBL_RELEASE_TO_PUBLIC}")
+ if (BBL_RELEASE_TO_PUBLIC)
+ add_compile_definitions(WXINSPECTOR_DISABLE)
+ endif ()
else ()
add_compile_definitions("BBL_RELEASE_TO_PUBLIC=$")
+ add_compile_definitions("$<$:WXINSPECTOR_DISABLE>")
endif ()
find_package(Git)
@@ -122,6 +133,8 @@ option(SLIC3R_GUI "Compile OrcaSlicer with GUI components (OpenGL,
option(SLIC3R_FHS "Assume OrcaSlicer is to be installed in a FHS directory structure" 0)
option(SLIC3R_PROFILE "Compile OrcaSlicer with an invasive Shiny profiler" 0)
option(SLIC3R_PCH "Use precompiled headers" 1)
+option(SLIC3R_WARNINGS "Emit compiler warnings for OrcaSlicer sources" 1)
+option(SLIC3R_BUNDLED_WARNINGS "Emit compiler warnings for bundled third-party sources" 0)
option(SLIC3R_MSVC_COMPILE_PARALLEL "Compile on Visual Studio in parallel" 1)
option(SLIC3R_MSVC_PDB "Generate PDB files on MSVC in Release mode" 1)
option(SLIC3R_ASAN "Enable ASan on Clang and GCC" 0)
@@ -331,15 +344,20 @@ if (MSVC AND CMAKE_CXX_COMPILER_ID STREQUAL Clang)
# clang-cl can interpret SYSTEM header paths if -imsvc is used
set(CMAKE_INCLUDE_SYSTEM_FLAG_CXX "-imsvc")
-
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall \
- -Wno-old-style-cast -Wno-reserved-id-macro -Wno-c++98-compat-pedantic")
else ()
set(IS_CLANG_CL FALSE)
endif ()
if (MSVC)
- if (SLIC3R_MSVC_COMPILE_PARALLEL AND NOT IS_CLANG_CL)
+ # CMP0092 only applies when the cache is created; an existing tree keeps its /W3,
+ # which a silenced bundled target would then override (D9025, once per file).
+ string(REGEX REPLACE "/W[0-4]" "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
+ string(REGEX REPLACE "/W[0-4]" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+
+ # /MP only matters for the VS generators, where CMake turns it into the
+ # MultiProcessorCompilation property. Ninja parallelises on its own, and
+ # clang-cl warns "argument unused" if the flag reaches it.
+ if (SLIC3R_MSVC_COMPILE_PARALLEL AND CMAKE_GENERATOR MATCHES "Visual Studio")
add_compile_options(/MP)
endif ()
# /bigobj (Increase Number of Sections in .Obj file)
@@ -519,8 +537,15 @@ if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUXX)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fext-numeric-literals" )
endif()
-if (NOT MSVC AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang"))
- if (NOT MINGW)
+if ((NOT MSVC OR IS_CLANG_CL) AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang"))
+ if (IS_CLANG_CL)
+ # clang-cl reads -Wall as MSVC /Wall, which clang maps to -Weverything. /W4 is
+ # its -Wall -Wextra and, unlike /clang:-Wall, is ordered with the -Wno-* below
+ # instead of after them. The -Wextra-only warnings are dropped again so the set
+ # matches what -Wall gives the GNU/Clang builds.
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4" )
+ add_compile_options(-Wno-unused-parameter -Wno-ignored-qualifiers -Wno-missing-field-initializers)
+ elseif (NOT MINGW)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall" )
endif ()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-reorder" )
@@ -1082,8 +1107,57 @@ function(orcaslicer_copy_dlls target config postfix output_dlls)
endfunction()
+# Bundled sources set their own warning flags, and a plain -Wall there means /Wall
+# (= -Weverything) under clang-cl. Target options are applied after the ones a target
+# set on itself, so these win. Targets are discovered rather than listed so a newly
+# bundled library needs no maintenance here.
+function(orcaslicer_silence_third_party_warnings _dir)
+ get_property(_subdirs DIRECTORY "${_dir}" PROPERTY SUBDIRECTORIES)
+ foreach (_subdir IN LISTS _subdirs)
+ orcaslicer_silence_third_party_warnings("${_subdir}")
+ endforeach ()
+ get_property(_targets DIRECTORY "${_dir}" PROPERTY BUILDSYSTEM_TARGETS)
+ foreach (_target IN LISTS _targets)
+ get_target_property(_type ${_target} TYPE)
+ if (NOT _type STREQUAL "INTERFACE_LIBRARY" AND NOT _type STREQUAL "UTILITY")
+ if (MSVC AND NOT IS_CLANG_CL)
+ # Drop any level the target set for itself, or -w overrides it and cl
+ # reports D9025 once per file.
+ get_target_property(_opts ${_target} COMPILE_OPTIONS)
+ if (_opts)
+ string(REGEX REPLACE "/W[0-4]|/Wall" "" _opts "${_opts}")
+ string(REGEX REPLACE ";;+" ";" _opts "${_opts}")
+ set_target_properties(${_target} PROPERTIES COMPILE_OPTIONS "${_opts}")
+ endif ()
+ # CMake maps a level into the VS generator's WarningLevel element, while a
+ # bare -w stays on the command line and trips D9025 there, once per file.
+ target_compile_options(${_target} PRIVATE /W0)
+ else ()
+ target_compile_options(${_target} PRIVATE -w)
+ endif ()
+ endif ()
+ endforeach ()
+endfunction()
+
+
# libslic3r, OrcaSlicer GUI and the OrcaSlicer executable.
add_subdirectory(deps_src)
+
+if (NOT SLIC3R_BUNDLED_WARNINGS)
+ orcaslicer_silence_third_party_warnings("${CMAKE_CURRENT_SOURCE_DIR}/deps_src")
+endif ()
+
+# Warning level for the targets added below: our sources, plus glad and libvgcode,
+# which are vendored but live under src/. The deps_src libraries were configured just
+# above. CMP0092 left MSVC without a default level, so it is set here.
+if (NOT SLIC3R_WARNINGS)
+ add_compile_options(-w)
+elseif (MSVC AND NOT IS_CLANG_CL)
+ # /we4715 is C4715, no return from a non-void function, matching the
+ # -Werror=return-type the GNU/Clang builds apply.
+ add_compile_options(/W3 /we4715)
+endif ()
+
add_subdirectory(src)
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT OrcaSlicer_app_gui)
@@ -1095,6 +1169,10 @@ endif()
if(BUILD_TESTS)
add_subdirectory(tests)
+ if (NOT SLIC3R_BUNDLED_WARNINGS)
+ # Catch2 is vendored under tests/ and sets its own warning flags too.
+ orcaslicer_silence_third_party_warnings("${CMAKE_CURRENT_SOURCE_DIR}/tests/catch2")
+ endif ()
endif()
if (NOT WIN32 AND NOT APPLE)
diff --git a/build_linux.sh b/build_linux.sh
index 72ea742f1a..6d65a10e41 100755
--- a/build_linux.sh
+++ b/build_linux.sh
@@ -567,6 +567,8 @@ if [[ -n "${BUILD_ORCA}" ]] || [[ -n "${BUILD_TESTS}" ]] ; then
print_and_run cmake --build $BUILD_DIR --config "${BUILD_CONFIG}" --target OrcaSlicer
echo "Building OrcaSlicer_profile_validator .."
print_and_run cmake --build $BUILD_DIR --config "${BUILD_CONFIG}" --target OrcaSlicer_profile_validator
+ echo "Building generate_system_cache ..."
+ print_and_run cmake --build $BUILD_DIR --config "${BUILD_CONFIG}" --target generate_system_cache
./scripts/run_gettext.sh
fi
if [[ -n "${BUILD_TESTS}" ]] ; then
diff --git a/build_release_vs.bat b/build_release_vs.bat
index 3288beda4c..78419dadf5 100644
--- a/build_release_vs.bat
+++ b/build_release_vs.bat
@@ -152,7 +152,7 @@ echo on
set CMAKE_POLICY_VERSION_MINIMUM=3.5
if "%USE_NINJA%"=="1" (
cmake .. -G %CMAKE_GENERATOR% -DORCA_TOOLS=ON %SIG_FLAG% -DBUILD_TESTS=%BUILD_TESTS% -DCMAKE_BUILD_TYPE=%build_type%
- cmake --build . --config %build_type% --target ALL_BUILD
+ cmake --build . --config %build_type% --target all
) else (
cmake .. -G %CMAKE_GENERATOR% -A %arch% -DORCA_TOOLS=ON %SIG_FLAG% -DBUILD_TESTS=%BUILD_TESTS% -DCMAKE_BUILD_TYPE=%build_type%
cmake --build . --config %build_type% --target ALL_BUILD -- -m
diff --git a/deps/OpenSSL/OpenSSL.cmake b/deps/OpenSSL/OpenSSL.cmake
index 21a49b91b8..e43997265b 100644
--- a/deps/OpenSSL/OpenSSL.cmake
+++ b/deps/OpenSSL/OpenSSL.cmake
@@ -52,6 +52,14 @@ ExternalProject_Add(dep_OpenSSL
CONFIGURE_COMMAND ${_conf_cmd} ${_cross_arch}
"--openssldir=${DESTDIR}"
"--prefix=${DESTDIR}"
+ # OpenSSL's linux-x86_64 target sets multilib=64, so it installs to
+ # /lib64 while every other dep uses /lib. CPython's
+ # --with-openssl only ever emits -L/lib, so it misses the bundled
+ # static libs and silently links the system OpenSSL instead -- which,
+ # against 1.1.1w headers, leaves _ssl.so with an undefined
+ # SSL_get_peer_certificate (removed in OpenSSL 3.x). Pin libdir so the
+ # prefix stays single-layout.
+ "--libdir=lib"
${_cross_comp_prefix_line}
no-shared
no-asm
diff --git a/deps/TBB/MSVC.cmake b/deps/TBB/MSVC.cmake
new file mode 100644
index 0000000000..d7984bff80
--- /dev/null
+++ b/deps/TBB/MSVC.cmake
@@ -0,0 +1,98 @@
+# Copyright (c) 2020-2021 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+set(TBB_LINK_DEF_FILE_FLAG ${CMAKE_LINK_DEF_FILE_FLAG})
+set(TBB_DEF_FILE_PREFIX win${TBB_ARCH})
+
+# Workaround for CMake issue https://gitlab.kitware.com/cmake/cmake/issues/18317.
+# TODO: consider use of CMP0092 CMake policy.
+string(REGEX REPLACE "/W[0-4]" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+
+set(TBB_WARNING_LEVEL $<$:/W4> $<$:/WX>)
+
+# Warning suppression C4324: structure was padded due to alignment specifier
+set(TBB_WARNING_SUPPRESS /wd4324)
+set(TBB_TEST_COMPILE_FLAGS /bigobj)
+
+if (MSVC_VERSION LESS_EQUAL 1900)
+ # Warning suppression C4503 for VS2015 and earlier:
+ # decorated name length exceeded, name was truncated.
+ # More info can be found at
+ # https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4503
+ set(TBB_TEST_COMPILE_FLAGS ${TBB_TEST_COMPILE_FLAGS} /wd4503)
+endif()
+
+set(TBB_LIB_COMPILE_FLAGS -D_CRT_SECURE_NO_WARNINGS /GS)
+set(TBB_COMMON_COMPILE_FLAGS /volatile:iso /FS /EHsc)
+
+# Ignore /WX set through add_compile_options() or added to CMAKE_CXX_FLAGS if TBB_STRICT is disabled.
+if (NOT TBB_STRICT AND COMMAND tbb_remove_compile_flag)
+ tbb_remove_compile_flag(/WX)
+endif()
+
+if (WINDOWS_STORE OR TBB_WINDOWS_DRIVER)
+ set(TBB_COMMON_COMPILE_FLAGS ${TBB_COMMON_COMPILE_FLAGS} /D_WIN32_WINNT=0x0A00)
+ set(TBB_COMMON_LINK_FLAGS -NODEFAULTLIB:kernel32.lib -INCREMENTAL:NO)
+ set(TBB_COMMON_LINK_LIBS OneCore.lib)
+endif()
+
+if (WINDOWS_STORE)
+ if (NOT CMAKE_SYSTEM_VERSION EQUAL 10.0)
+ message(FATAL_ERROR "CMAKE_SYSTEM_VERSION must be equal to 10.0")
+ endif()
+ set(TBB_COMMON_COMPILE_FLAGS ${TBB_COMMON_COMPILE_FLAGS} /ZW /ZW:nostdlib)
+ # CMake define this extra lib, remove it for this build type
+ string(REGEX REPLACE "WindowsApp.lib" "" CMAKE_CXX_STANDARD_LIBRARIES "${CMAKE_CXX_STANDARD_LIBRARIES}")
+
+ if (TBB_NO_APPCONTAINER)
+ set(TBB_LIB_LINK_FLAGS ${TBB_LIB_LINK_FLAGS} -APPCONTAINER:NO)
+ endif()
+endif()
+
+if (TBB_WINDOWS_DRIVER)
+ # Since this is universal driver disable this variable
+ set(CMAKE_SYSTEM_PROCESSOR "")
+ # CMake define list additional libs, remove it for this build type
+ set(CMAKE_CXX_STANDARD_LIBRARIES "")
+ set(TBB_COMMON_COMPILE_FLAGS ${TBB_COMMON_COMPILE_FLAGS} /D _UNICODE /DUNICODE /DWINAPI_FAMILY=WINAPI_FAMILY_APP /D__WRL_NO_DEFAULT_LIB__)
+endif()
+
+if (NOT DEFINED TBB_ENABLE_IPO)
+ if (DEFINED CMAKE_INTERPROCEDURAL_OPTIMIZATION)
+ set(TBB_ENABLE_IPO ${CMAKE_INTERPROCEDURAL_OPTIMIZATION})
+ else()
+ set(TBB_ENABLE_IPO ON)
+ endif()
+endif()
+
+if (TBB_ENABLE_IPO)
+ if (CMAKE_CXX_COMPILER_ID MATCHES "(Clang|IntelLLVM)")
+ if (CMAKE_SYSTEM_PROCESSOR MATCHES "(x86|AMD64)")
+ set(TBB_COMMON_COMPILE_FLAGS ${TBB_COMMON_COMPILE_FLAGS} -mrtm -mwaitpkg)
+ endif()
+ set(TBB_OPENMP_NO_LINK_FLAG TRUE)
+ set(TBB_IPO_COMPILE_FLAGS $<$>:-flto>)
+ else()
+ set(TBB_IPO_COMPILE_FLAGS $<$>:/GL>)
+ set(TBB_IPO_LINK_FLAGS $<$>:-LTCG> $<$>:-INCREMENTAL:NO>)
+ endif()
+else()
+ if (CMAKE_CXX_COMPILER_ID MATCHES "(Clang|IntelLLVM)" AND CMAKE_SYSTEM_PROCESSOR MATCHES "(x86|AMD64)")
+ set(TBB_COMMON_COMPILE_FLAGS ${TBB_COMMON_COMPILE_FLAGS} -mrtm -mwaitpkg)
+ endif()
+ set(TBB_IPO_COMPILE_FLAGS "")
+ set(TBB_IPO_LINK_FLAGS "")
+endif()
+
+set(TBB_OPENMP_FLAG /openmp)
diff --git a/deps/TBB/TBB.cmake b/deps/TBB/TBB.cmake
index 9b1452d33e..dac2ed63e6 100644
--- a/deps/TBB/TBB.cmake
+++ b/deps/TBB/TBB.cmake
@@ -1,4 +1,6 @@
-if (FLATPAK AND "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
+if (MSVC)
+ set(_patch_command ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/MSVC.cmake ./cmake/compilers/MSVC.cmake)
+elseif (FLATPAK AND "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
set(_patch_command ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/GNU.cmake ./cmake/compilers/GNU.cmake)
else()
set(_patch_command "")
@@ -13,6 +15,8 @@ orcaslicer_add_cmake_project(
-DTBB_BUILD_SHARED=OFF
-DTBB_BUILD_TESTS=OFF
-DTBB_TEST=OFF
+ -DTBB_ENABLE_IPO=OFF
+ -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=OFF
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
-DCMAKE_DEBUG_POSTFIX=_debug
)
diff --git a/deps/wxWidgets/0001-Clang-CL-fix.patch b/deps/wxWidgets/0001-Clang-CL-fix.patch
new file mode 100644
index 0000000000..23bf23b3f4
--- /dev/null
+++ b/deps/wxWidgets/0001-Clang-CL-fix.patch
@@ -0,0 +1,28 @@
+---
+ build/cmake/wxWidgetsConfig.cmake.in | 10 +++++++++-
+ 1 file changed, 10 insertions(+), 1 deletion(-)
+
+diff --git a/build/cmake/wxWidgetsConfig.cmake.in b/build/cmake/wxWidgetsConfig.cmake.in
+index 1a83f36..70ad8a4 100644
+--- a/build/cmake/wxWidgetsConfig.cmake.in
++++ b/build/cmake/wxWidgetsConfig.cmake.in
+@@ -58,7 +58,16 @@ if(WIN32_MSVC_NAMING)
+ endif()
+ endif()
+
+-include("${CMAKE_CURRENT_LIST_DIR}${wxPLATFORM_LIB_DIR}/@PROJECT_NAME@Targets.cmake")
++if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC")
++ if (CMAKE_GENERATOR_PLATFORM STREQUAL "ARM64" OR CMAKE_VS_PLATFORM_NAME STREQUAL "ARM64" OR CMAKE_SYSTEM_PROCESSOR MATCHES "^(ARM64|arm64|aarch64)$")
++ set(_wx_clang_msvc_lib_dir "vc_arm64_lib")
++ else()
++ set(_wx_clang_msvc_lib_dir "vc_x64_lib")
++ endif()
++ include("${CMAKE_CURRENT_LIST_DIR}${wxPLATFORM_LIB_DIR}/${_wx_clang_msvc_lib_dir}/@PROJECT_NAME@Targets.cmake")
++else()
++ include("${CMAKE_CURRENT_LIST_DIR}${wxPLATFORM_LIB_DIR}/@PROJECT_NAME@Targets.cmake")
++endif()
+
+ macro(wx_inherit_property source dest name)
+ # property name without _
+--
+2.43.0
diff --git a/deps/wxWidgets/wxWidgets.cmake b/deps/wxWidgets/wxWidgets.cmake
index 1e2cc85f78..07bb31d8be 100644
--- a/deps/wxWidgets/wxWidgets.cmake
+++ b/deps/wxWidgets/wxWidgets.cmake
@@ -28,6 +28,7 @@ orcaslicer_add_cmake_project(
GIT_SHALLOW ON
GIT_SUBMODULES 3rdparty/catch 3rdparty/pcre 3rdparty/libwebp
DEPENDS ${PNG_PKG} ${ZLIB_PKG} ${EXPAT_PKG} ${JPEG_PKG}
+ PATCH_COMMAND git apply --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-Clang-CL-fix.patch
CMAKE_ARGS
-DwxBUILD_PRECOMP=ON
${_wx_toolkit}
diff --git a/deps_src/clipper2/CMakeLists.txt b/deps_src/clipper2/CMakeLists.txt
index c604002da7..86c9a9efab 100644
--- a/deps_src/clipper2/CMakeLists.txt
+++ b/deps_src/clipper2/CMakeLists.txt
@@ -37,7 +37,11 @@ target_include_directories(Clipper2
)
if (WIN32)
- target_compile_options(Clipper2 PRIVATE /W4 /WX)
+ if (MSVC AND NOT CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
+ target_compile_options(Clipper2 PRIVATE /W4 /WX)
+ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC")
+ target_compile_options(Clipper2 PRIVATE /W4)
+ endif()
else()
target_compile_options(Clipper2 PRIVATE -Wall -Wextra -Wpedantic -Werror)
target_link_libraries(Clipper2 PUBLIC -lm)
diff --git a/deps_src/imgui/imgui_draw.cpp b/deps_src/imgui/imgui_draw.cpp
index 913a551fa0..d88bc79904 100644
--- a/deps_src/imgui/imgui_draw.cpp
+++ b/deps_src/imgui/imgui_draw.cpp
@@ -2856,6 +2856,7 @@ const ImWchar* ImFontAtlas::GetGlyphRangesDefault()
{
0x0020, 0x00FF, // Basic Latin + Latin Supplement
0x2000, 0x206F, // General Punctuation
+ 0x2103, 0x2103, // ℃ Celsius symbol
0x3000, 0x30FF, // CJK Symbols and Punctuations, Hiragana, Katakana
0x31F0, 0x31FF, // Katakana Phonetic Extensions
0xFF00, 0xFFEF, // Half-width characters
diff --git a/deps_src/imgui/imstb_textedit.h b/deps_src/imgui/imstb_textedit.h
index 7644670975..3733bb2fa9 100644
--- a/deps_src/imgui/imstb_textedit.h
+++ b/deps_src/imgui/imstb_textedit.h
@@ -465,6 +465,57 @@ static void stb_textedit_click(STB_TEXTEDIT_STRING *str, STB_TexteditState *stat
STB_TEXTEDIT_LAYOUTROW(&r, str, 0);
y = r.ymin;
}
+ else
+ {
+ // In multi-line mode, clamp y to stay within the text vertical bounds.
+ // This lets the click still land at a valid location if the mouse is slightly
+ // above or below the text.
+ StbTexteditRow r;
+ int n = STB_TEXTEDIT_STRINGLEN(str);
+ int i = 0;
+ float base_y = 0, y_min, y_max;
+
+ // Get the first row to establish y_min and start the iteration
+ STB_TEXTEDIT_LAYOUTROW(&r, str, 0);
+ if (r.num_chars <= 0)
+ {
+ state->cursor = 0;
+ state->select_start = state->cursor;
+ state->select_end = state->cursor;
+ state->has_preferred_x = 0;
+ return;
+ }
+ y_min = r.ymin;
+ y_max = base_y + r.ymax;
+ i = r.num_chars;
+ base_y += r.baseline_y_delta;
+
+ // Walk the remaining rows to find the bottom of the last row
+ while (i < n)
+ {
+ STB_TEXTEDIT_LAYOUTROW(&r, str, i);
+ if (r.num_chars <= 0)
+ break;
+ y_max = base_y + r.ymax;
+ i += r.num_chars;
+ base_y += r.baseline_y_delta;
+ }
+
+ // If the text ends with a newline, account for the empty trailing line
+ // so the cursor can be placed on it
+ if (n > 0 && STB_TEXTEDIT_GETCHAR(str, n - 1) == STB_TEXTEDIT_NEWLINE)
+ {
+ STB_TEXTEDIT_LAYOUTROW(&r, str, n);
+ y_max = base_y + r.ymax;
+ }
+
+ // Subtract half the last line height to avoid rounding issues when the mouse
+ // is just barely below the last line (keep cursor on the last line, not after the text)
+ y_max -= (r.ymax - r.ymin) * 0.5f;
+
+ if (y < y_min) y = y_min;
+ if (y > y_max) y = y_max;
+ }
state->cursor = stb_text_locate_coord(str, x, y);
state->select_start = state->cursor;
@@ -485,6 +536,50 @@ static void stb_textedit_drag(STB_TEXTEDIT_STRING *str, STB_TexteditState *state
STB_TEXTEDIT_LAYOUTROW(&r, str, 0);
y = r.ymin;
}
+ else
+ {
+ // In multi-line mode, clamp y to stay within the text vertical bounds.
+ // This lets the drag keep working if the mouse goes off the top or bottom of the text.
+ StbTexteditRow r;
+ int n = STB_TEXTEDIT_STRINGLEN(str);
+ int i = 0;
+ float base_y = 0, y_min, y_max;
+
+ // Get the first row to establish y_min and start the iteration
+ STB_TEXTEDIT_LAYOUTROW(&r, str, 0);
+ if (r.num_chars <= 0)
+ return;
+ y_min = r.ymin;
+ y_max = base_y + r.ymax;
+ i = r.num_chars;
+ base_y += r.baseline_y_delta;
+
+ // Walk the remaining rows to find the bottom of the last row
+ while (i < n)
+ {
+ STB_TEXTEDIT_LAYOUTROW(&r, str, i);
+ if (r.num_chars <= 0)
+ break;
+ y_max = base_y + r.ymax;
+ i += r.num_chars;
+ base_y += r.baseline_y_delta;
+ }
+
+ // If the text ends with a newline, account for the empty trailing line
+ // so the cursor can be placed on it
+ if (n > 0 && STB_TEXTEDIT_GETCHAR(str, n - 1) == STB_TEXTEDIT_NEWLINE)
+ {
+ STB_TEXTEDIT_LAYOUTROW(&r, str, n);
+ y_max = base_y + r.ymax;
+ }
+
+ // Subtract half the last line height to avoid rounding issues when the mouse
+ // is just barely below the last line (keep cursor on the last line, not after the text)
+ y_max -= (r.ymax - r.ymin) * 0.5f;
+
+ if (y < y_min) y = y_min;
+ if (y > y_max) y = y_max;
+ }
if (state->select_start == state->select_end)
state->select_start = state->cursor;
diff --git a/deps_src/miniz/CMakeLists.txt b/deps_src/miniz/CMakeLists.txt
index e02d8a4885..7e060a180f 100644
--- a/deps_src/miniz/CMakeLists.txt
+++ b/deps_src/miniz/CMakeLists.txt
@@ -11,6 +11,8 @@ add_library(miniz_static STATIC
if(${CMAKE_C_COMPILER_ID} STREQUAL "GNU")
target_compile_definitions(miniz_static PRIVATE _GNU_SOURCE)
+elseif (CMAKE_C_COMPILER_ID STREQUAL "Clang" AND CMAKE_C_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC")
+ target_compile_options(miniz_static PRIVATE /clang:-Wno-error=incompatible-pointer-types)
endif()
target_link_libraries(miniz INTERFACE miniz_static)
diff --git a/docs/HLSD/preset-cache.md b/docs/HLSD/preset-cache.md
new file mode 100644
index 0000000000..6e693dbd6f
--- /dev/null
+++ b/docs/HLSD/preset-cache.md
@@ -0,0 +1,402 @@
+# System Preset Cache — High Level Design
+
+## Why it exists
+
+OrcaSlicer ships tens of thousands of system preset JSON files. Every launch used to
+parse all of them: read each vendor profile, walk its machine, process and filament
+sub-files, resolve inheritance, and build the preset collections from scratch. That
+parse dominated startup, and it produced the same result every time, because system
+presets only change when the app is updated or a profile update is installed.
+
+The preset cache replaces that parse with a read. Each vendor's presets are serialized
+once — at build time, in CI — into a single binary file the app reads in one pass. The
+read replaces the file walk and the JSON parsing, which is where the time went;
+resolving inheritance and registering the presets still runs at load, through the same
+code the JSON path uses, so the result is the parse's result without the parse.
+
+The cache is **only ever an optimization**. Every rule below exists to guarantee that a
+cache is either provably equivalent to parsing the JSONs, or rejected. There is no
+"mostly right" cache.
+
+## The unit is one vendor
+
+A cache covers exactly one vendor. `BBL.opc` sits beside `BBL.json` and holds
+everything `BBL.json` and the `BBL/` sub-file tree would have produced.
+
+Per-vendor granularity is what makes the system practical:
+
+- A vendor whose profile is bumped invalidates only its own cache. The other 60-odd
+ vendors keep theirs — even when the bumped vendor is the shared Orca filament
+ library everyone else inherits from.
+- The setup wizard, which loads vendors one at a time, gets the same speedup as
+ startup without a second code path.
+- A vendor with no cache, or a broken one, costs only that vendor a parse.
+
+A cache holds *system* presets only. User presets, project settings and modified
+presets are never serialized — they have their own storage and their own lifecycle.
+
+## Where the files live
+
+| Location | Contents on a shipped build | Role |
+|---|---|---|
+| `resources/profiles/` | `.opc` alone — the profile and its preset JSONs both pruned | What the app ships with; what installing copies from, and the only thing it is read for |
+| `/system/` | `.opc` alone, or `.json` + `/` after an update | What the user has installed |
+| `/system/` (dev build) | `.json` + `/` + `.opc` written at runtime | A developer tree caches as it parses |
+| `/cache/wizard_profile_data.json` | The wizard's derived vendor catalog plus the stamps it was built from | Written and read by the setup wizard only; never shipped (see "The wizard's profile-data cache") |
+
+Two forms of the same vendor therefore exist, and the system's central rule is that
+**a vendor's cache is the whole of it**. Where a cache ships or is installed, no profile
+and no preset JSONs sit beside it: the cache carries the presets, the vendor profile,
+and the version stamp that says which release it came from. A vendor is "installed" if
+either form is present *and usable*, and its installed version is read from whichever
+form a load would serve.
+
+What stays beside the caches in `resources/profiles/` is everything that is not a
+preset: each vendor's directory of printer thumbnails, cover images, bed models and
+hotend meshes, which are read from disk by path and were never part of the cache. Files
+that are not vendors at all, `blacklist.json` chief among them, are untouched.
+
+The alternative — shipping both and treating the cache as a sidecar — was rejected. It
+doubles the installed size, and it creates a class of bug where the two disagree and
+the app's behavior depends on which one a given code path happened to read.
+
+## What a cache file is
+
+A fixed-size header followed by one binary stream.
+
+The header carries a magic number, the cache format version, the payload size and a
+CRC32 of the payload. It exists so that a truncated download, a half-written file or a
+file from an entirely different program is rejected in microseconds, before anything
+tries to interpret it.
+
+The payload opens with the stamps that decide whether the cache may be used at all —
+format version, vendor name, vendor version — then a dictionary, and then the vendor's
+data: its vendor profile, three lists of preset entries (process, filament, machine),
+and the count of errors the original parse hit.
+
+Each entry is one preset **in source form**: what its JSON sub-file states and nothing
+that resolving it derives — the preset's own config diff, the name of the preset it
+inherits, and the parse metadata (name, sub-path, description, instantiation, setting
+and filament ids, renames). Non-instantiated base presets are stored too; the children
+that inherit from them cannot resolve without them.
+
+**The payload names its own keys.** The dictionary holds the distinct `opt_key`s the
+file uses, the `ConfigOptionType` each was written as, and the distinct enum *value
+names*; an option in an entry's config is then a `uint16` index into that dictionary
+plus its value. Names are written once per file rather than once per occurrence, and a
+reader resolves the dictionary against this build's `print_config_def` once, after
+which reading an option is a vector index.
+
+This is what makes the cache survive config-schema drift. The alternative — keying an
+option by its `serialization_key_ordinal`, the position `ConfigDef::add` assigns by
+declaration order at static init — cannot: inserting one option into the middle of
+`PrintConfig.cpp` shifts every later ordinal, and the lookup on the way back in then
+*succeeds on the wrong option*, silently, wherever the two share a type. Because a
+name-keyed payload instead drops the individual options this build cannot place, the
+file as a whole stays readable, and there is no schema fingerprint — no checksum over
+the option schema that would reject every cache on every release. An option this build
+no longer defines, or now defines with a different type, gets exactly what it gets from
+a JSON profile: read, dropped, and the rest of the preset loads.
+
+The ordinal-keyed cereal hooks in `PrintConfig.hpp` are untouched — they are also the
+undo/redo wire format, where the process cannot change underneath them. The cache has
+its own serialization in `PresetCacheFormat.{hpp,cpp}`.
+
+Three deliberate choices in the layout:
+
+- **Stamps come first**, so the question "what version is this vendor installed at?"
+ can be answered by reading the first kilobyte. The updater asks that question for
+ every vendor on every launch; reading tens of megabytes to answer it would give back
+ the startup time the cache saved. The dictionary sits behind them, ahead of the
+ entries, so a reader that does go on resolves it once and then indexes.
+- **Nothing inherited is baked in.** A filament preset that inherits from the shared
+ library is stored as its own diff plus its parent's name, and the parent is looked up
+ when the entry is installed, against whatever library is loaded then. A cache
+ therefore carries no other vendor's values, and no other vendor's update — the
+ library's included — can make it stale.
+- **Nothing derived is stored.** Default presets, flattened configs, aliases and
+ lookup maps are all reconstructed at load by the same code the JSON path runs, and
+ state that path never fills (obsolete-preset lists) is not stored either. This keeps
+ the cache a record of the vendor's data, not a memory image of the program's state.
+
+## When a cache may be used
+
+A cache is accepted only if every gate below passes. Any failure means "parse the
+JSONs instead" — never a hard error, never a partial load.
+
+**1. Integrity.** Magic number, a declared body size that is exactly the rest of the
+file, CRC32 over the payload. The size is checked against the file's real length before
+anything is allocated on the strength of it, so an eight-byte field in an unauthenticated
+file cannot ask for a gigabyte.
+
+**2. Cache format version.** A single integer bumped by hand whenever the binary layout
+changes in a way nothing else would catch: reordering or retyping a hand-written
+serialized field, or changing what the cache's own stamps mean. Config-schema drift is
+explicitly *not* such a change — the dictionary handles it — so this no longer moves
+every release.
+
+**3. Vendor identity and version.** The cache names the vendor it holds and the profile
+version it was built from. It is accepted only if that version is at least as new as
+the profile now on disk. Where no profile sits beside the cache — the shipped,
+cache-only form — the comparison is skipped, because nothing on disk can be newer than
+a cache that is the installation.
+
+**4. Every entry installs.** Entries are installed as they are read, and an entry that
+cannot be — typically one that inherits a parent the currently loaded filament library
+no longer provides — rejects the whole cache, never just the entry. A partial vendor is
+not a vendor.
+
+There is deliberately no stamp for the shared filament library. A cache stores its
+filaments' inheritance by name and resolves it at load, so a library update changes
+what a cache load *produces*, never whether the cache is *valid* — the same file yields
+the updated result. This matters most on a shipped build, where a vendor is its cache
+and nothing else: a profile update that delivered only the library would otherwise have
+stranded every other vendor with a cache it invalidated and no JSONs to fall back on.
+
+A vendor profile with no parsable version is never cached and never served from a
+cache. There would be no way to tell later whether the cache had gone stale, and a
+cache nothing can invalidate is worse than no cache.
+
+## How a vendor is loaded
+
+Vendors load in a fixed order, because filament inheritance crosses exactly one
+boundary: any vendor's filament may inherit from the shared Orca filament library,
+and nothing else reaches across vendors. The library therefore goes first, alone;
+every other vendor follows in parallel, resolving against it; and the results are
+merged in a stable order:
+
+```mermaid
+flowchart LR
+ lib["1 · OrcaFilamentLibrary loaded first, synchronously"] --> par["2 · every other vendor in parallel, each into its own bundle, filaments resolving against the loaded library"] --> merge["3 · bundles merged into one, sequentially, in stable vendor order"]
+```
+
+Whether a vendor comes from its cache or from a parse changes nothing in that
+order — both produce the same bundle, so cached and parsed vendors mix freely in
+one startup.
+
+**A vendor is loaded from where it is installed and nowhere else.** For startup that
+is `/system/`; resources reaches the app by being *installed* into that
+directory first, never by being loaded from. (The setup wizard is the one caller with
+a different notion of "where": it also shows vendors the user has not installed, and
+loads those from `resources/profiles` — see "The wizard's profile-data cache".) There
+is one lookup tier and one parse source:
+
+```
+load vendor V from /system:
+ system/V.opc passes CACHE_VERSION + size + CRC + vendor name + version gate?
+ yes -> serve from it
+ no -> parse system/V.json, then write system/V.opc back
+```
+
+The same decision drawn out — "the gates" are the four acceptance checks above:
+
+```mermaid
+flowchart TB
+ start["load vendor V from a directory dir — normally <data_dir>/system/"]
+ start --> stamp["installed version = version of dir/V.json — or ∞ with no profile there, the cache then being the installation"]
+ stamp --> g1{"dir/V.opc passes all four gates?"}
+ g1 -- "yes" --> hit(["served from the installed cache"])
+ g1 -- "no" --> pd["parse the JSONs in dir"]
+ pd --> ver{"profile version parsable?"}
+ ver -- "yes" --> save(["loaded; dir/V.opc written back — the next load takes the top path"])
+ ver -- "no" --> raw(["loaded, never cached"])
+```
+
+A second tier into `resources/profiles/` used to sit between those two, and a parse
+fallback to the same place behind them. Both existed only because an installed cache
+died on every app upgrade, when the schema fingerprint rejected it; with the fingerprint
+gone there is nothing for them to rescue. They also had a cost: on a developer tree the
+shipped cache answered first, so the profile in `/system/` was never parsed
+and its cache was never written back.
+
+Serving from a cache is not a memory-image restore. The entries are deserialized and
+then installed one by one — inheritance resolved against the presets installed before
+them and the currently loaded filament library, configs flattened onto the collection
+defaults, validated and registered — by the same function the JSON path calls straight
+after parsing a sub-file. The two paths share everything below the parse, which is what
+makes a cache-loaded bundle indistinguishable from a JSON-loaded one by construction
+rather than by test coverage. Installation also rebuilds each preset's file path from
+the local data directory, so a shipped cache never carries the generating machine's
+paths.
+
+App upgrades work because a cache normally survives one. Only a deliberate
+`CACHE_VERSION` bump makes an installed cache unreadable, and that is handled at
+install time rather than at load: a vendor whose cache this build cannot read counts
+as **not installed**, so the updater lays down a working copy on the next launch (see
+below). A vendor that still has its profile JSONs beside the cache is simply parsed
+and re-cached.
+
+If a parse does happen and the vendor's profile carries a version, the app writes the
+cache back beside where it looked for the vendor. That is how a developer build warms
+itself up on second launch, and how a vendor delivered by a profile update becomes
+cached without waiting for the next release.
+
+## The wizard's profile-data cache
+
+The setup wizard's printer and filament pages want every vendor in one bundle — the
+installed ones *and* the shipped ones the user has not installed yet, because the
+wizard is where installing is chosen. Its set therefore spans two directories:
+`/system/` for installed vendors (shadowing resources on a name collision),
+`resources/profiles` for the rest, each vendor loaded from its own directory.
+
+What the wizard actually consumes from that bundle is one derived JSON — the model /
+machine / filament / process catalog its web pages render — and that JSON is a pure
+function of the vendor set: each vendor's name and version, in load order. A profile
+change requires a version bump, so name and version determine a vendor's content
+wherever its copy sits; which directory served it is deliberately **not** stamped,
+and installing or removing a copy at an unchanged version leaves the cache valid. So
+the wizard caches the *derived JSON*, not another form of the inputs:
+`/cache/wizard_profile_data.json` holds the stamp list and the catalog. On
+open, the wizard computes the current stamps (one version peek per vendor) and, when
+they match, serves the catalog from the file — no bundle built, no preset installed.
+Caching bundle inputs instead was tried and measured: rebuilding the bundle from
+per-vendor caches costs ~2 s of preset installation whatever feeds it, so only
+skipping the rebuild entirely wins.
+
+Any change to the set — a vendor added, removed or updated, or its cache-only
+`.opc` replaced by a newer one — changes the stamps and retires the whole file;
+the wizard then rebuilds the bundle vendor by vendor (per-vendor caches serving where
+they cover) and writes the catalog back. Selections, region and per-open decorations
+are applied downstream of the cache either way, so a served catalog is
+indistinguishable from a rebuilt one. Nothing ships this file and the updater never
+touches it; it is a locally written artifact, re-derived whenever stale, written
+through a temp file and rename so half a cache is never readable.
+
+The cache lives under `/cache/`, not beside the vendors: everything that
+scans `/system/` treats any `.opc` there as a vendor, so a non-vendor
+cache file must not sit in that directory. Relatedly, the stamp reader is hardened:
+`read_cache_stamps` validates the cache version before reading anything
+variable-length and bounds the stamp strings' lengths, so a reader pointed at a
+foreign or damaged `.opc` rejects it cleanly instead of aborting on a garbage
+64-bit allocation.
+
+## How a vendor is installed
+
+Installing copies from `resources/profiles/` into `/system/`. A shipped build
+offers only a cache and a source tree only JSONs, but a partially-generated tree can
+have both, at different versions, so the installer picks the form that ships at the
+**newer version** and installs only that one:
+
+- Cache newer or equal, and readable → copy the `.opc`, verify the *copy* is one this
+ build can read, and only then delete any profile and vendor directory a previous
+ install left behind, so nothing can shadow it.
+- Profile newer, or the cache unreadable or absent → copy the profile and the vendor's
+ preset JSONs exactly as the app did before caches existed, and delete any stale `.opc`
+ once the profile is safely in place.
+
+One vendor that cannot be installed is one vendor missing, not a reason to leave the
+rest uninstalled: the installer skips it, records the failure, and carries on with the
+batch. A vendor whose cache arrives unreadable falls back to installing its profile,
+which is decided by reading the copy rather than by the kilobyte peek that chose the
+form.
+
+**"Installed" means present and usable.** Where the cache is the whole of a vendor's
+installation, a `.opc` this build cannot read is not an installation — counted as one,
+the vendor would be stranded with nothing to load and the updater would never repair
+it. The installed version is likewise whichever form a load would actually serve: the
+cache's stamp while it covers the profile beside it, the profile's own version once it
+does not.
+
+The result is that only one form of a vendor is ever present, and it is the newest one
+the build has. This matters most for the update check, which compares what is installed
+against what installing *would* lay down: if those two disagreed about which form
+counts, a vendor could reinstall on every launch forever, or silently never update.
+
+Profile updates delivered over the air always arrive as JSONs, and they win — an
+updated vendor's real profile lands in the data directory, the installed cache beside it
+is older and gets rejected, and the vendor is parsed and re-cached. An update that touches only
+the filament library needs nothing more: every other vendor's cache stays valid and
+simply resolves against the new library on its next load.
+
+## How the caches are produced
+
+Cache generation is a build step, not something a user ever runs.
+
+One script per platform does the whole job, and CI calls it once on each. It builds a
+small dev-utility that loads a profiles directory exactly as the app would, with cache
+writing enabled, dropping a `.opc` beside every vendor profile it parses; then
+it copies those caches into each packaged application it was pointed at and deletes
+every preset JSON they replace — the vendor's own profile included. Only a vendor that
+actually has a cache is pruned, so a vendor the generator skipped keeps its JSONs and is
+simply parsed at startup.
+
+Caches are generated into the checkout's own `resources/profiles`, because that is what
+cpack re-installs from when it builds the NSIS installer — so that directory is also a
+prune target in CI. Pruning it deletes the checkout's preset JSONs, which is a packaging
+step, not something a build should do to a working tree by surprise: the Windows script
+refuses that target unless given `--prune-source`, and CI passes it.
+
+Generation runs after the build, in the same job, so the caches ship with a build that
+can read them.
+
+The flatpak differs only in where the script is called from. Nothing outside
+flatpak-builder ever builds it, so there is no packaged tree for the workflow to point
+the script at afterwards: the manifest runs it as a build step instead, against the
+profiles the install has already copied into `/app`.
+
+## Behavior when things go wrong
+
+The system is designed so that no cache problem is fatal:
+
+- **Corrupt, truncated or foreign file** — rejected at the header, vendor parsed. A
+ cache is written to a temp file beside its target and moved into place, so a write
+ that dies partway leaves the previous cache intact rather than a truncated one.
+- **An option this build no longer has, or now types differently** — that option alone
+ is dropped, exactly as a JSON profile's would be. The preset and the file load.
+- **Cache from a build with a different cache layout** — rejected on `CACHE_VERSION`.
+ A vendor with JSONs beside it is parsed and re-cached; a cache-only vendor reads as
+ not installed and the updater reinstalls it.
+- **Stale cache** — rejected on the vendor version stamp, vendor parsed and re-cached.
+- **Failure part-way through loading** — a deserialization error, or any entry that
+ fails to install — rejects the whole cache, and the bundle is reset to a clean state
+ before falling back, so a half-loaded cache can never leak into the parsed result.
+- **A vendor that can be neither read nor parsed** — logged, and left out. The setup
+ wizard drops that vendor from its list and opens with the rest; startup records the
+ error alongside the vendors that did load. One broken vendor never takes the app down.
+
+The one genuine limit: on a shipped build a vendor is its cache and nothing else, so a
+rejected cache has nothing to fall back to for that vendor. This is by design — the
+alternative is shipping every preset twice — and it is why the acceptance gates are
+conservative and why CI generates the caches with the same build that ships them. The
+recovery path is a profile update, which delivers real JSONs.
+
+It also means nothing may quietly assume a `.json` exists. Discovery, version
+checks and the update decision all read whichever form is present, and a code path that
+enumerates only `*.json` will find no vendors at all in a packaged build.
+
+## Maintenance rules
+
+- **Adding, removing, retyping or reordering a config option** needs nothing. The
+ payload names its keys and its enum values, so an option a cache carries and this
+ build does not is dropped; one this build has and the cache does not is simply
+ absent, as it would be from a JSON that predates it.
+- **Changing a hand-written `serialize()`** — `VendorProfile` or its nested types — or
+ the `CachedPreset` field list — written and read by `visit_entry` in
+ `PresetCacheFormat.cpp`, one list for the save, the load and the name peek alike — or
+ the cache's own layout or stamps, requires bumping `CACHE_VERSION` by hand.
+- **The dictionary indexes with a `uint16`**, so `print_config_def` may hold at most
+ 65535 options and one cache at most 65535 distinct enum value names.
+ `CacheDictionary::save` throws past that, which surfaces when CI generates the
+ caches rather than on a user's machine.
+- **Bumping `CACHE_VERSION` is safe without a resources fallback** because
+ `is_vendor_installed` means *present and usable*: cache-only vendors read as not
+ installed after a bump, and the updater reinstalls them from resources.
+- **Bumping a vendor profile's version** invalidates that vendor's cache and nothing
+ else — the filament library's included. Other vendors' caches resolve against the
+ new library the next time they load.
+- **Caches are never committed.** They are build artifacts, generated per build,
+ ignored by git.
+
+## Where this lives in the tree
+
+| Area | Files |
+|---|---|
+| Everything about the bytes on disk — the dictionary, one config's wire format, the file framing and stamps, entry serialization, `VendorCacheFile` save/load/peeks | `src/libslic3r/PresetCacheFormat.{hpp,cpp}` |
+| Serve-or-parse decision, installing cache entries into a bundle, cache write-back | `src/libslic3r/PresetBundle.{hpp,cpp}` |
+| Vendor profile serialization | `src/libslic3r/Preset.hpp` |
+| Vendor discovery, installed/shipped versions, installation | `src/libslic3r/utils.cpp` (declared in `Utils.hpp`) |
+| Update and reinstall decisions | `src/slic3r/Utils/PresetUpdater.cpp` |
+| Setup wizard and printer-selection dialog | `src/slic3r/GUI/ConfigWizard.cpp`, `src/slic3r/GUI/WebGuideDialog.cpp` |
+| Generator tool | `src/dev-utils/generate_system_cache.cpp` |
+| Build and packaging script | `scripts/build_preset_cache.{sh,bat}` |
+| Tests | `tests/libslic3r/test_vendor_cache.cpp` |
diff --git a/localization/i18n/OrcaSlicer.pot b/localization/i18n/OrcaSlicer.pot
index e83112d989..6ec0ecd9cf 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: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -4452,6 +4452,20 @@ msgstr ""
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr ""
+#, possible-c-format, possible-boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr ""
+
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr ""
+
+#, possible-c-format, possible-boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr ""
+
+msgid "Adjust"
+msgstr ""
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4533,6 +4547,12 @@ msgid ""
"No - Disable Arachne Wall Generator and set [Displacement] mode of the Fuzzy Skin"
msgstr ""
+msgid "Brim ear radius"
+msgstr ""
+
+msgid "Brim width"
+msgstr ""
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr ""
@@ -4784,6 +4804,12 @@ msgstr ""
msgid "Calibration error"
msgstr ""
+msgid "This printer is not configured with the hardware this control needs."
+msgstr ""
+
+msgid "This control is not supported on this printer."
+msgstr ""
+
msgid "Network unavailable"
msgstr ""
@@ -5615,7 +5641,7 @@ msgstr ""
msgid "Size:"
msgstr ""
-#, possible-c-format, possible-boost-format
+#, possible-boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr ""
@@ -5790,6 +5816,9 @@ msgstr ""
msgid "Project"
msgstr ""
+msgid "Device (Web)"
+msgstr ""
+
msgid "Yes"
msgstr ""
@@ -7780,20 +7809,20 @@ msgstr ""
msgid "Replaced with 3D files from directory:\n"
msgstr ""
-#, possible-boost-format
-msgid "✖ Skipped %1%: same file.\n"
+#, possible-c-format, possible-boost-format
+msgid "✖ Skipped %s: same file.\n"
msgstr ""
-#, possible-boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
+#, possible-c-format, possible-boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
msgstr ""
-#, possible-boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
+#, possible-c-format, possible-boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
msgstr ""
-#, possible-boost-format
-msgid "✔ Replaced %1%.\n"
+#, possible-c-format, possible-boost-format
+msgid "✔ Replaced %s.\n"
msgstr ""
msgid "Replaced volumes"
@@ -8472,6 +8501,15 @@ msgstr ""
msgid "Pop up to select filament grouping mode"
msgstr ""
+msgid "Visible plugin pages"
+msgstr ""
+
+msgid "pages"
+msgstr ""
+
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr ""
+
msgid "Behaviour"
msgstr ""
@@ -8797,6 +8835,14 @@ msgstr ""
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr ""
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr ""
+
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+
msgid "Experimental Features"
msgstr ""
@@ -9052,9 +9098,21 @@ msgstr ""
msgid "Preset Inside Project"
msgstr ""
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr ""
+
msgid "Detach from parent"
msgstr ""
+msgid "Unique preset"
+msgstr ""
+
+msgid "Parent preset"
+msgstr ""
+
+msgid "This preset does not inherit from another preset."
+msgstr ""
+
msgid "Name is unavailable."
msgstr ""
@@ -9732,20 +9790,6 @@ msgstr ""
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr ""
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr ""
-
-msgid "Adjust to the set range automatically?\n"
-msgstr ""
-
-msgid "Adjust"
-msgstr ""
-
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."
msgstr ""
@@ -9931,6 +9975,9 @@ msgstr ""
msgid "Setting Overrides"
msgstr ""
+msgid "Retraction when switching material"
+msgstr ""
+
msgid "Basic information"
msgstr ""
@@ -10057,6 +10104,12 @@ msgstr ""
msgid "Printable space"
msgstr ""
+msgid "Printer Agent"
+msgstr ""
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr ""
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, possible-boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10179,9 +10232,6 @@ msgstr ""
msgid "Z-Hop"
msgstr ""
-msgid "Retraction when switching material"
-msgstr ""
-
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
"\n"
@@ -11445,6 +11495,9 @@ msgstr ""
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr ""
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr ""
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr ""
@@ -11740,9 +11793,6 @@ msgstr ""
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr ""
-msgid "Printer Agent"
-msgstr ""
-
msgid "Select the network agent implementation for printer communication."
msgstr ""
@@ -12279,9 +12329,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr ""
-msgid "Brim width"
-msgstr ""
-
msgid "This is the distance from the model to the outermost brim line."
msgstr ""
@@ -12347,6 +12394,12 @@ msgid ""
"0 to deactivate."
msgstr ""
+msgid "Brim ears outer only"
+msgstr ""
+
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr ""
+
msgid "upward compatible machine"
msgstr ""
@@ -13359,6 +13412,12 @@ msgstr ""
msgid "Gyroid"
msgstr ""
+msgid "Sparse infill smooth factor"
+msgstr ""
+
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr ""
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr ""
@@ -13839,6 +13898,12 @@ msgstr ""
msgid "Klipper"
msgstr ""
+msgid "Skip G-code config block"
+msgstr ""
+
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr ""
+
msgid "Pellet Modded Printer"
msgstr ""
@@ -14800,6 +14865,12 @@ msgstr ""
msgid "Retraction distance when extruder change"
msgstr ""
+msgid "Retraction Length (Toolchange)"
+msgstr ""
+
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr ""
+
msgid "Z-hop height"
msgstr ""
@@ -14893,6 +14964,9 @@ msgstr ""
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr ""
+msgid "Extra length on restart (Toolchange)"
+msgstr ""
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr ""
@@ -15278,6 +15352,12 @@ msgstr ""
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr ""
+msgid "Wait for temperature on wipe tower"
+msgstr ""
+
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr ""
+
msgid "No sparse layers (beta)"
msgstr ""
@@ -18253,9 +18333,6 @@ msgstr ""
msgid "Print Host upload"
msgstr ""
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr ""
-
msgid "Select a Flashforge printer"
msgstr ""
@@ -19087,9 +19164,6 @@ msgstr ""
msgid "User canceled."
msgstr ""
-msgid "Head diameter"
-msgstr ""
-
msgid "Max angle"
msgstr ""
diff --git a/localization/i18n/ca/OrcaSlicer_ca.po b/localization/i18n/ca/OrcaSlicer_ca.po
index ab80943ca0..b7eb022c0d 100644
--- a/localization/i18n/ca/OrcaSlicer_ca.po
+++ b/localization/i18n/ca/OrcaSlicer_ca.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: 2025-03-15 10:55+0100\n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -4828,6 +4828,23 @@ msgstr "La temperatura actual de la cambra és superior a la temperatura segura
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "La temperatura mínima de la cambra (%d℃) és superior a la temperatura objectiu de la cambra (%d℃). El valor mínim és el llindar a partir del qual comença la impressió mentre la cambra continua escalfant-se cap a l'objectiu, de manera que no l'hauria de superar. Es limitarà al valor objectiu."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "L'alçada de capa és massa petita. S'establirà al mínim (%g mm)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "L'alçada de capa està fora dels límits establerts a Configuració de la Impressora -> Extrusora -> Límits d'alçada de la capa, això pot causar problemes de qualitat d'impressió."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Voleu ajustar-la automàticament al límit (%g mm)?"
+
+msgid "Adjust"
+msgstr "Ajustar"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4948,6 +4965,13 @@ msgstr ""
"Sí - Activa el generador de parets Arachne\n"
"No - Desactiva el generador de parets Arachne i estableix el mode [Desplaçament] de la pell difusa"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Radi de l'orella de la Vora d'Adherència"
+
+msgid "Brim width"
+msgstr "Ample de la Vora d'Adherència"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "El mode espiral només funciona quan els bucles de paret són 1, el suport està desactivat, la detecció d'acumulació per sondeig està desactivada, les capes de la coberta superior són 0, la densitat de farciment dispers és 0 i el tipus de timelapse és tradicional."
@@ -5202,6 +5226,14 @@ msgstr "No s'ha pogut generar el gcode cali"
msgid "Calibration error"
msgstr "Error de calibratge"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Aquesta impressora no està configurada amb el maquinari que necessita aquest control."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Aquest control no és compatible amb aquesta impressora."
+
# AI Translated
msgid "Network unavailable"
msgstr "Xarxa no disponible"
@@ -6067,7 +6099,7 @@ msgstr "Volum:"
msgid "Size:"
msgstr "Mida:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "S'han trobat conflictes de rutes gcode a la capa %d, Z = %.2lfmm. Si us plau, separeu els objectes conflictius més lluny ( %s <-> %s )."
@@ -6248,6 +6280,10 @@ msgstr "Multidispositiu"
msgid "Project"
msgstr "Projecte"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Dispositiu (Web)"
+
msgid "Yes"
msgstr "Sí"
@@ -8361,21 +8397,21 @@ msgstr "No s'ha seleccionat el directori per a la substitució"
msgid "Replaced with 3D files from directory:\n"
msgstr "Substituït amb fitxers 3D del directori:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Omès %1%: mateix fitxer.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ Omès %s: mateix fitxer.\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Omès %1%: el fitxer no existeix.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ Omès %s: el fitxer no existeix.\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Omès %1%: la substitució ha fallat.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ Omès %s: la substitució ha fallat.\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Substituït %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ Substituït %s.\n"
msgid "Replaced volumes"
msgstr "Volums substituïts"
@@ -9116,6 +9152,18 @@ msgstr "Amb aquesta opció habilitada, podeu enviar una tasca a diversos disposi
msgid "Pop up to select filament grouping mode"
msgstr "Finestra emergent per seleccionar el mode d'agrupació de filaments"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Pàgines de connectors visibles"
+
+# AI Translated
+msgid "pages"
+msgstr "pàgines"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Nombre de pàgines de connectors que es mostren com a pestanyes fixes abans que la resta de pàgines es replegui en un desplegable a l'última pestanya."
+
msgid "Behaviour"
msgstr "Comportament"
@@ -9506,6 +9554,18 @@ msgstr "Mostrar els perfils no compatibles"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Mostra els perfils incompatibles o no compatibles a les llistes desplegables d'impressora i de filament. Aquests perfils no es poden seleccionar."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Experimental) Utilitza agents d'impressora en lloc d'amfitrions d'impressió"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Envia els treballs d'impressió de les impressores que no són Bambu a través dels agents de connector d'impressora en lloc del flux clàssic de pujada a l'amfitrió d'impressió.\n"
+"Quan està desactivat, OrcaSlicer utilitza el comportament antic de l'amfitrió d'impressió."
+
# AI Translated
msgid "Experimental Features"
msgstr "Funcions experimentals"
@@ -9776,9 +9836,25 @@ msgstr "Perfil d'usuari"
msgid "Preset Inside Project"
msgstr "Perfil intern del Projecte"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Copia en aquest perfil tots els valors heretats del perfil pare i elimina la relació d'herència. Els perfils compatibles només amb el perfil pare poden deixar de ser compatibles."
+
msgid "Detach from parent"
msgstr "Desvincula del pare"
+# AI Translated
+msgid "Unique preset"
+msgstr "Perfil únic"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Perfil pare"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Aquest perfil no hereta de cap altre perfil."
+
msgid "Name is unavailable."
msgstr "El nom no està disponible."
@@ -10521,22 +10597,6 @@ msgstr "Estàs segur que vols activar aquesta opció?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "Els patrons de farciment estan dissenyats normalment per gestionar la rotació automàticament per garantir una impressió correcta i aconseguir els efectes desitjats (p. ex., Gyroid, Cúbic). Rotar el patró de farciment dispers actual pot portar a un suport insuficient. Procediu amb precaució i comproveu minuciosament qualsevol problema d'impressió potencial. Esteu segur que voleu activar aquesta opció?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"L'alçada de la capa és massa petita.\n"
-"Es posarà a min_layer_height\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "L'alçada de la capa supera el límit a Configuració de la Impressora -> Extrusora -> Límits d'alçada de la capa, això pot causar problemes de qualitat d'impressió."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Voleu ajustar el rang automàticament?\n"
-
-msgid "Adjust"
-msgstr "Ajustar"
-
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."
msgstr "Característica experimental: Retreure i tallar el filament a major distància durant els canvis de filaments per minimitzar el flux. Tot i que pot reduir notablement el flux, també pot elevar el risc d'esclops de broquets o altres complicacions d'impressió."
@@ -10735,6 +10795,9 @@ msgstr "Trobades paraules clau reservades"
msgid "Setting Overrides"
msgstr "Anul·lacions de configuració"
+msgid "Retraction when switching material"
+msgstr "Retracció en canviar de material"
+
msgid "Basic information"
msgstr "Informació bàsica"
@@ -10867,6 +10930,12 @@ msgstr "Perfils de processos compatibles"
msgid "Printable space"
msgstr "Espai imprimible"
+msgid "Printer Agent"
+msgstr "Agent de la impressora"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Seleccioneu la implementació de l'agent de xarxa per a la comunicació amb la impressora. Els agents disponibles es registren a l'inici."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10997,9 +11066,6 @@ msgstr "Límits d'alçada de capa"
msgid "Z-Hop"
msgstr "Z-Hop"
-msgid "Retraction when switching material"
-msgstr "Retracció en canviar de material"
-
# AI Translated
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
@@ -12380,6 +12446,10 @@ msgstr " està massa a prop de la zona d'exclusió, i es provocaran col·lisions
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " és massa a prop de l'àrea de detecció d'acumulació i es causaran col·lisions.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " està parcialment fora de l'àrea imprimible, i no es pot imprimir.\n"
+
# AI Translated
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "Les temperatures de broquet seleccionades són incompatibles. La temperatura de broquet de cada filament ha d'estar dins del rang de temperatura de broquet recomanat dels altres filaments. Altrament, es pot produir una obturació del broquet o danys a la impressora."
@@ -12714,9 +12784,6 @@ msgstr "Utilitzar 3MF en lloc de G-code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Activeu-ho si la impressora accepta un fitxer 3MF com a treball d'impressió. Quan està activat, Orca Slicer envia el fitxer laminat com a .gcode.3mf, en lloc d'un fitxer .gcode simple."
-msgid "Printer Agent"
-msgstr "Agent de la impressora"
-
msgid "Select the network agent implementation for printer communication."
msgstr "Seleccioneu la implementació de l'agent de xarxa per a la comunicació amb la impressora."
@@ -13402,9 +13469,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Velocitat dels ponts interns. Si el valor s'expressa com un percentatge, es calcularà en funció de la velocitat del pont (bridge_speed). El valor per defecte és del 150%."
-msgid "Brim width"
-msgstr "Ample de la Vora d'Adherència"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Distància del model a la línia de la Vora d'Adherència més exterior"
@@ -13488,6 +13552,14 @@ msgstr ""
"La geometria es simplificarà abans de detectar angles pronunciats. Aquest paràmetre indica la longitud mínima de la desviació per a la simplificació.\n"
"0 per desactivar"
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Orelles de la Vora d'Adherència només a l'exterior"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Genera orelles de ratolí només al contorn exterior del model, excloent-ne els forats i les seccions tancades."
+
msgid "upward compatible machine"
msgstr "màquina compatible ascendent"
@@ -14679,6 +14751,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Giroide"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Factor de suavitzat del farciment poc dens"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Controla com s'arrodoneixen les cantonades del farciment poc dens. 0% manté el traçat original amb cantonades vives, mentre que 100% produeix les corbes més amples possibles entre línies de farciment adjacents."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Acceleració del farciment superficial superior. L'ús d'un valor inferior pot millorar la qualitat de la superfície superior"
@@ -15232,6 +15312,14 @@ msgstr "Amb quin tipus de Codi-G és compatible la impressora."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "Omet el bloc de configuració del G-code"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "No escriu el CONFIG_BLOCK (els parells clau/valor de la configuració del laminador) al fitxer G-code. Això pot ajudar amb impressores el microprogramari de les quals falla en analitzar aquestes línies de comentari (p. ex. Anycubic go-klipper). Nota: el fitxer G-code ja no contindrà la configuració del laminador, de manera que en tornar-lo a importar a OrcaSlicer no es restaurarà la configuració."
+
msgid "Pellet Modded Printer"
msgstr "Impressora modificada de pellets"
@@ -16321,6 +16409,14 @@ msgstr "Retracció llarga al canviar d'extrusor"
msgid "Retraction distance when extruder change"
msgstr "Distància de retracció al canviar d'extrusor"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Longitud de retracció (Canvi d'eina)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Quan s'activa la retracció abans d'un canvi d'eina, el filament es retira la quantitat especificada (la longitud es mesura sobre el filament en brut, abans d'entrar a l'extrusor)."
+
msgid "Z-hop height"
msgstr "Alçada Z-hop"
@@ -16419,6 +16515,10 @@ msgstr "Longitud addicional en reiniciar"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Quan la retracció es compensa després d'un desplaçament, l'extrusor introduirà una quantitat addicional de filament. Aquest ajustament rarament es necessita."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Longitud addicional en reiniciar (Canvi d'eina)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Quan la retracció es compensa després d'un canvi d'eina, l'extrusor introduirà una quantitat addicional de filament."
@@ -16835,6 +16935,14 @@ msgstr "Canvi d'eina a la Torre de Purga"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Força el capçal a desplaçar-se a la Torre de Purga abans d'emetre l'ordre de canvi d'eina (Tx). Només és rellevant per a impressores multiextrusor (multicapçal) que utilitzen una Torre de Purga de tipus 2. Per defecte, Orca omet aquest desplaçament en màquines multicapçal perquè el firmware gestiona el canvi de capçal, cosa que pot fer que l'ordre Tx s'emeti sobre la peça impresa. Activeu aquesta opció si voleu que el canvi d'eina s'emeti sempre sobre la Torre de Purga."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Espera la temperatura a la Torre de Purga"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Recull la nova eina sense esperar que arribi a la temperatura d'impressió, es desplaça a la Torre de Purga i hi espera la temperatura, just abans de purgar. El degoteig de l'escalfament cau sobre la torre en lloc del model, i el desplaçament se solapa amb l'escalfament. Només és rellevant per a impressores multiextrusor (multicapçal) que utilitzen una Torre de Purga de tipus 2. El microprogramari o la macro de canvi d'eina no han d'esperar la temperatura pel seu compte. Quan està desactivat, l'espera de temperatura s'emet just després de l'ordre de canvi d'eina."
+
msgid "No sparse layers (beta)"
msgstr "Sense capes poc denses( beta )"
@@ -20121,9 +20229,6 @@ msgstr "Impressora Física"
msgid "Print Host upload"
msgstr "Pujada al amfitrió( host ) d'impressió"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Seleccioneu la implementació de l'agent de xarxa per a la comunicació amb la impressora. Els agents disponibles es registren a l'inici."
-
# AI Translated
msgid "Select a Flashforge printer"
msgstr "Seleccioneu una impressora Flashforge"
@@ -21066,9 +21171,6 @@ msgstr "Alguna cosa inesperada ha passat en intentar iniciar sessió, torneu-ho
msgid "User canceled."
msgstr "Usuari cancel·lat."
-msgid "Head diameter"
-msgstr "Diàmetre del cap"
-
msgid "Max angle"
msgstr "Angle màxim"
@@ -21887,6 +21989,22 @@ msgstr ""
"Evitar la deformació( warping )\n"
"Sabíeu que quan imprimiu materials propensos a deformar-se, com ara l'ABS, augmentar adequadament la temperatura del llit pot reduir la probabilitat de deformació?"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "L'alçada de la capa és massa petita.\n"
+#~ "Es posarà a min_layer_height\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "L'alçada de la capa supera el límit a Configuració de la Impressora -> Extrusora -> Límits d'alçada de la capa, això pot causar problemes de qualitat d'impressió."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Voleu ajustar el rang automàticament?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Diàmetre del cap"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Ordre d'impressió dins d'una sola capa"
diff --git a/localization/i18n/cs/OrcaSlicer_cs.po b/localization/i18n/cs/OrcaSlicer_cs.po
index 63b69765d7..b521a8073b 100644
--- a/localization/i18n/cs/OrcaSlicer_cs.po
+++ b/localization/i18n/cs/OrcaSlicer_cs.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: \n"
"Last-Translator: Jakub Hencl\n"
"Language-Team: \n"
@@ -4786,6 +4786,23 @@ msgstr "Aktuální teplota komory je vyšší než bezpečná teplota materiálu
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "Minimální teplota komory (%d℃) je vyšší než cílová teplota komory (%d℃). Minimální hodnota je práh, při kterém tisk začíná, zatímco se komora dále ohřívá k cílové teplotě, takže by ji neměla překročit. Bude omezena na cílovou hodnotu."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "Výška vrstvy je příliš malá. Bude nastavena na minimum (%g mm)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "Výška vrstvy je mimo limity nastavené v Nastavení tiskárny -> Extruder -> Omezení výšky vrstvy, což může způsobit problémy s kvalitou tisku."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Upravit ji automaticky na limit (%g mm)?"
+
+msgid "Adjust"
+msgstr "Upravit"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4906,6 +4923,13 @@ msgstr ""
"Ano – povolit Arachne Wall Generator\n"
"Ne – zakázat Arachne Wall Generator a nastavit režim [Displacement] pro Fuzzy Skin"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Poloměr ouška límce"
+
+msgid "Brim width"
+msgstr "Šířka límce"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "Spirálový režim funguje pouze tehdy, když je počet smyček stěny 1, podpěry jsou vypnuté, detekce usazenin sondováním je vypnutá, počet horních plných vrstev je 0, hustota řídké výplně je 0 a typ časosběru je tradiční."
@@ -5160,6 +5184,14 @@ msgstr "Nepodařilo se vygenerovat kalibrační G-code."
msgid "Calibration error"
msgstr "Chyba kalibrace"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Tato tiskárna nemá nakonfigurovaný hardware, který tento ovládací prvek vyžaduje."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Tento ovládací prvek není na této tiskárně podporován."
+
# AI Translated
msgid "Network unavailable"
msgstr "Síť není dostupná"
@@ -6029,7 +6061,7 @@ msgstr "Objem:"
msgid "Size:"
msgstr "Velikost:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "Byly nalezeny konflikty drah G-kódu ve vrstvě %d, Z = %.2lf mm. Oddělte prosím konfliktní objekty více od sebe (%s <-> %s)."
@@ -6210,6 +6242,10 @@ msgstr "Více zařízení"
msgid "Project"
msgstr "Projekt"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Zařízení (Web)"
+
msgid "Yes"
msgstr "Ano"
@@ -8320,21 +8356,21 @@ msgstr "Nebyla vybrána složka pro nahrazení"
msgid "Replaced with 3D files from directory:\n"
msgstr "Nahrazeno 3D soubory ze složky:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Přeskočeno %1%: stejný soubor.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ Přeskočeno %s: stejný soubor.\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Přeskočeno %1%: soubor neexistuje.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ Přeskočeno %s: soubor neexistuje.\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Přeskočeno %1%: nahrazení se nezdařilo.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ Přeskočeno %s: nahrazení se nezdařilo.\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Nahrazeno %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ Nahrazeno %s.\n"
msgid "Replaced volumes"
msgstr "Nahrazené objemy"
@@ -9070,6 +9106,18 @@ msgstr "Pokud je tato volba povolena, můžete odeslat úlohu na více zařízen
msgid "Pop up to select filament grouping mode"
msgstr "Zobrazit dialog pro výběr režimu seskupení filamentů"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Viditelné stránky pluginů"
+
+# AI Translated
+msgid "pages"
+msgstr "stránek"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Počet stránek pluginů zobrazených jako pevné karty, než se zbývající stránky sbalí do rozbalovací nabídky na poslední kartě."
+
msgid "Behaviour"
msgstr "Chování"
@@ -9457,6 +9505,18 @@ msgstr "Zobrazit nepodporované předvolby"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Zobrazovat nekompatibilní/nepodporované předvolby v rozevíracích seznamech tiskáren a filamentů. Tyto předvolby nelze vybrat."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Experimentální) Používat agenty tiskárny místo tiskových hostů"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Směruje tiskové úlohy pro tiskárny jiné než Bambu přes agenty pluginů tiskárny místo klasického nahrávání na tiskový host.\n"
+"Pokud je vypnuto, OrcaSlicer používá původní chování tiskového hosta."
+
# AI Translated
msgid "Experimental Features"
msgstr "Experimentální funkce"
@@ -9724,10 +9784,26 @@ msgstr "Uživatelská předvolba"
msgid "Preset Inside Project"
msgstr "Předvolba v projektu"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Zkopíruje do této předvolby všechny hodnoty zděděné z nadřazené předvolby a odstraní vztah dědičnosti. Předvolby kompatibilní pouze s nadřazenou předvolbou mohou přestat být podporovány."
+
# AI Translated
msgid "Detach from parent"
msgstr "Oddělit od nadřazeného"
+# AI Translated
+msgid "Unique preset"
+msgstr "Samostatná předvolba"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Nadřazená předvolba"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Tato předvolba nedědí z jiné předvolby."
+
msgid "Name is unavailable."
msgstr "Název není k dispozici."
@@ -10469,22 +10545,6 @@ msgstr "Opravdu chcete tuto možnost povolit?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "Vzory výplně jsou obvykle navrženy tak, aby automaticky pracovaly s rotací a zajistily správný tisk i zamýšlený efekt (např. Gyroid, Cubic). Otočení aktuální řídké výplně může vést k nedostatečné opoře. Postupujte opatrně a pečlivě zkontrolujte možné problémy při tisku. Opravdu chcete tuto možnost povolit?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"Výška vrstvy je příliš malá.\n"
-"Bude nastavena na min_layer_height\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "Výška vrstvy přesahuje limit v Nastavení tiskárny -> Extruder -> Omezení výšky vrstvy, což může způsobit problémy s kvalitou tisku."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Automaticky upravit do nastaveného rozsahu?\n"
-
-msgid "Adjust"
-msgstr "Upravit"
-
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."
msgstr "Experimentální funkce: Stažení a odstřižení filamentu na větší vzdálenost během výměny filamentu pro minimalizaci purge. Ačkoliv to může výrazně snížit purge, může to také zvýšit riziko ucpání trysky nebo jiných komplikací při tisku."
@@ -10684,6 +10744,9 @@ msgstr "Byla nalezena rezervovaná klíčová slova"
msgid "Setting Overrides"
msgstr "Přepisování nastavení"
+msgid "Retraction when switching material"
+msgstr "Retrakce při změně materiálu"
+
msgid "Basic information"
msgstr "Základní informace"
@@ -10816,6 +10879,13 @@ msgstr "Kompatibilní procesní profily"
msgid "Printable space"
msgstr "Tisknutelný prostor"
+# AI Translated
+msgid "Printer Agent"
+msgstr "Agent tiskárny"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Vyberte implementaci síťového agenta pro komunikaci s tiskárnou. Dostupní agenti jsou registrováni při spuštění."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10943,9 +11013,6 @@ msgstr "Omezení výšky vrstvy"
msgid "Z-Hop"
msgstr "Z-Hop"
-msgid "Retraction when switching material"
-msgstr "Retrakce při změně materiálu"
-
# AI Translated
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
@@ -12363,6 +12430,10 @@ msgstr " je příliš blízko oblasti vyloučení a může způsobit kolize.\n"
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " je příliš blízko oblasti detekce shlukování a dojde ke kolizi.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " je částečně mimo tisknutelnou oblast a nelze jej vytisknout.\n"
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "Vybrané teploty trysky nejsou kompatibilní. Teplota trysky každého filamentu musí spadat do doporučeného rozsahu teplot ostatních filamentů. Jinak může dojít k ucpání trysky nebo poškození tiskárny."
@@ -12696,10 +12767,6 @@ msgstr "Použít 3MF místo G-code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Zapněte, pokud tiskárna přijímá jako tiskovou úlohu soubor 3MF. Je-li zapnuto, odešle Orca Slicer slicovaný soubor jako .gcode.3mf místo prostého souboru .gcode."
-# AI Translated
-msgid "Printer Agent"
-msgstr "Agent tiskárny"
-
# AI Translated
msgid "Select the network agent implementation for printer communication."
msgstr "Vyberte implementaci síťového agenta pro komunikaci s tiskárnou."
@@ -13387,9 +13454,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Rychlost vnitřních mostů. Pokud je hodnota zadána v procentech, vypočítá se podle bridge_speed. Výchozí hodnota je 150 %."
-msgid "Brim width"
-msgstr "Šířka límce"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Vzdálenost od modelu k nejvzdálenější brim linii."
@@ -13470,6 +13534,14 @@ msgstr ""
"Geometrie bude decimována před detekcí ostrých úhlů. Tento parametr určuje minimální délku odchylky pro decimaci.\n"
"0 pro deaktivaci."
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Ouška límce pouze na vnějším obrysu"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Vytvoří myší ouška pouze na vnějším obrysu modelu, bez otvorů a uzavřených částí."
+
msgid "upward compatible machine"
msgstr "stroj zpětně kompatibilní"
@@ -14646,6 +14718,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Gyroid"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Faktor vyhlazení řídké výplně"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Určuje, jak silně se zaoblují rohy řídké výplně. 0% zachová původní ostrou dráhu, zatímco 100% vytvoří největší možné křivky mezi sousedními liniemi výplně."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Akcelerace výplně horní plochy. Použití nižší hodnoty může zlepšit kvalitu horní plochy."
@@ -15198,6 +15278,14 @@ msgstr "Jaký typ G-code je s tiskárnou kompatibilní."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "Vynechat konfigurační blok G-code"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "Nezapisuje CONFIG_BLOCK (dvojice klíč/hodnota s konfigurací sliceru) do souboru G-code. Může to pomoci u tiskáren, jejichž firmware při zpracování těchto řádků s komentáři havaruje (např. Anycubic go-klipper). Poznámka: soubor G-code již nebude obsahovat nastavení sliceru, takže jeho opětovný import do OrcaSlicer konfiguraci neobnoví."
+
msgid "Pellet Modded Printer"
msgstr "Tiskárna na pelety"
@@ -16265,6 +16353,14 @@ msgstr "Dlouhá retrakce při změně extruderu"
msgid "Retraction distance when extruder change"
msgstr "Délka retrakce při změně extruderu"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Délka retrakce (Změna nástroje)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Když je retrakce spuštěna před změnou nástroje, filament se zatáhne o zadanou hodnotu (délka se měří na nezpracovaném filamentu, než vstoupí do extruderu)."
+
msgid "Z-hop height"
msgstr "Výška Z-hopu"
@@ -16362,6 +16458,10 @@ msgstr "Dodatečná délka při restartu"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Při kompenzaci retrakce po pohybu přesunu extruder posune toto přídavné množství filamentu. Toto nastavení je potřeba jen zřídka."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Dodatečná délka při restartu (Změna nástroje)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Při kompenzaci retrakce po výměně nástroje extruder posune toto přídavné množství filamentu."
@@ -16780,6 +16880,14 @@ msgstr "Výměna nástroje na věži na očištění trysky"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Vynutí přejezd tiskové hlavy k věži na očištění trysky před vydáním příkazu k výměně nástroje (Tx). Týká se pouze tiskáren s více extrudery (více tiskovými hlavami), které používají věž na očištění trysky typu 2. Ve výchozím nastavení Orca na strojích s více tiskovými hlavami tento přejezd vynechává, protože výměnu hlavy řeší firmware, což může vést k vydání příkazu Tx nad tištěným dílem. Zapněte tuto volbu, chcete-li, aby byla výměna nástroje vždy vydána nad věží na očištění trysky."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Čekat na teplotu na věži na očištění trysky"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Vyzvedne nový nástroj, aniž by čekal na dosažení tiskové teploty, přejede na věž na očištění trysky a počká na teplotu tam, těsně před čištěním. Materiál vytékající při ohřevu skončí na věži místo na modelu a přejezd se překrývá s ohřevem. Relevantní pouze pro tiskárny s více extrudery (více tiskovými hlavami) používající věž na očištění trysky typu 2. Firmware ani makro pro změnu nástroje nesmí na teplotu čekat samo. Pokud je vypnuto, čekání na teplotu se vloží hned po příkazu ke změně nástroje."
+
msgid "No sparse layers (beta)"
msgstr "Žádné řídké vrstvy (beta)"
@@ -20043,9 +20151,6 @@ msgstr "Fyzická tiskárna"
msgid "Print Host upload"
msgstr "Nahrání na tiskový server"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Vyberte implementaci síťového agenta pro komunikaci s tiskárnou. Dostupní agenti jsou registrováni při spuštění."
-
# AI Translated
msgid "Select a Flashforge printer"
msgstr "Vyberte tiskárnu Flashforge"
@@ -21002,9 +21107,6 @@ msgstr "Při pokusu o přihlášení došlo k neočekávané chybě, zkuste to p
msgid "User canceled."
msgstr "Zrušeno uživatelem."
-msgid "Head diameter"
-msgstr "Průměr hlavy"
-
msgid "Max angle"
msgstr "Maximální úhel"
@@ -21873,6 +21975,22 @@ msgstr ""
"Zamezte kroucení\n"
"Víte, že při tisku materiálů náchylných ke kroucení, jako je ABS, může vhodné zvýšení teploty vyhřívané desky snížit pravděpodobnost kroucení?"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "Výška vrstvy je příliš malá.\n"
+#~ "Bude nastavena na min_layer_height\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "Výška vrstvy přesahuje limit v Nastavení tiskárny -> Extruder -> Omezení výšky vrstvy, což může způsobit problémy s kvalitou tisku."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Automaticky upravit do nastaveného rozsahu?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Průměr hlavy"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Pořadí tisku v rámci jedné vrstvy."
diff --git a/localization/i18n/de/OrcaSlicer_de.po b/localization/i18n/de/OrcaSlicer_de.po
index b9389f5399..436966457a 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: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: \n"
"Last-Translator: Heiko Liebscher \n"
"Language-Team: \n"
@@ -4692,6 +4692,23 @@ msgstr "Die aktuelle Kammer-Temperatur ist höher als die sichere Temperatur des
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "Die minimale Druckraumtemperatur (%d℃) ist höher als die Ziel-Druckraumtemperatur (%d℃). Der Minimalwert ist der Schwellenwert, bei dem der Druck beginnt, während der Druckraum weiter auf die Zieltemperatur heizt; er sollte diese daher nicht überschreiten. Er wird auf die Zieltemperatur begrenzt."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "Die Schichthöhe ist zu klein. Sie wird auf den Mindestwert (%g mm) gesetzt."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "Die Schichthöhe liegt außerhalb der in Druckereinstellungen -> Extruder -> Schichthöhenlimits festgelegten Grenzen. Dies kann zu Problemen mit der Druckqualität führen."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Automatisch an den Grenzwert (%g mm) anpassen?"
+
+msgid "Adjust"
+msgstr "Anpassen"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4812,6 +4829,13 @@ msgstr ""
"Ja - Arachne Wall Generator aktivieren\n"
"Nein - Arachne Wall Generator deaktivieren und den Modus [Verschiebung] des Fuzzy Skin setzen"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Radius der Brim-Ohren"
+
+msgid "Brim width"
+msgstr "Randbreite"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "Der Spiralmodus funktioniert nur, wenn die Wandschleifen 1 sind, die Stütze deaktiviert ist, die Klumpenerkennung durch Abtasten deaktiviert ist, die oberen Schichtlagen 0 sind, die Dichte der spärlichen Füllung 0 ist und der Zeitraffertyp traditionell ist."
@@ -5066,6 +5090,14 @@ msgstr "Fehler beim Generieren des Kalibrierungs-G-Codes"
msgid "Calibration error"
msgstr "Kalibrierungsfehler"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Dieser Drucker ist nicht mit der Hardware ausgestattet, die dieses Bedienelement benötigt."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Dieses Bedienelement wird von diesem Drucker nicht unterstützt."
+
# AI Translated
msgid "Network unavailable"
msgstr "Netzwerk nicht verfügbar"
@@ -5923,7 +5955,7 @@ msgstr "Volumen:"
msgid "Size:"
msgstr "Größe:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "Konflikte von G-Code-Pfaden wurden bei Layer %d, Z = %.2lf mm gefunden.Bitte trennen Sie die konfliktbehafteten Objekte weiter voneinander (%s <-> %s)."
@@ -6103,6 +6135,10 @@ msgstr "Multi-Gerät"
msgid "Project"
msgstr "Projekt"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Gerät (Web)"
+
msgid "Yes"
msgstr "Ja"
@@ -8191,21 +8227,21 @@ msgstr "Verzeichnis um daraus zu ersetzen wurde nicht ausgewählt"
msgid "Replaced with 3D files from directory:\n"
msgstr "Ersetzt durch 3D-Dateien aus Verzeichnis:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Übersprungen %1%: gleiche Datei.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ Übersprungen %s: gleiche Datei.\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Übersprungen %1%: Datei existiert nicht.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ Übersprungen %s: Datei existiert nicht.\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Übersprungen %1%: Ersetzen fehlgeschlagen.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ Übersprungen %s: Ersetzen fehlgeschlagen.\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Ersetzt %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ Ersetzt %s.\n"
msgid "Replaced volumes"
msgstr "Ersetzte Volumen"
@@ -8941,6 +8977,18 @@ msgstr "Wenn diese Option aktiviert ist, können Sie eine Aufgabe gleichzeitig a
msgid "Pop up to select filament grouping mode"
msgstr "Popup zum Auswählen des Filament-Gruppierungsmodus"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Sichtbare Plugin-Seiten"
+
+# AI Translated
+msgid "pages"
+msgstr "Seiten"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Anzahl der Plugin-Seiten, die als feste Tabs angezeigt werden, bevor die übrigen Seiten im letzten Tab zu einem Dropdown zusammengefasst werden."
+
msgid "Behaviour"
msgstr "Verhalten"
@@ -9296,6 +9344,18 @@ msgstr "Nicht unterstützte Profile anzeigen"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Zeigt inkompatible/nicht unterstützte Profile in den Dropdown-Listen für Drucker und Filament an. Diese Profile können nicht ausgewählt werden."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Experimentell) Drucker-Agenten anstelle von Druck-Hosts verwenden"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Leitet Druckaufträge für Nicht-Bambu-Drucker über Drucker-Plugin-Agenten statt über den klassischen Druck-Host-Upload.\n"
+"Wenn deaktiviert, verwendet OrcaSlicer das bisherige Druck-Host-Verhalten."
+
msgid "Experimental Features"
msgstr "Experimentelle Funktionen"
@@ -9558,9 +9618,25 @@ msgstr "Benutzerprofil"
msgid "Preset Inside Project"
msgstr "Projektbasiertes Profil"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Kopiert alle vom übergeordneten Profil geerbten Werte in dieses Profil und entfernt die Vererbungsbeziehung. Profile, die nur mit dem übergeordneten Profil kompatibel sind, können dadurch nicht mehr unterstützt werden."
+
msgid "Detach from parent"
msgstr "Vom übergeordneten Element trennen"
+# AI Translated
+msgid "Unique preset"
+msgstr "Eigenständiges Profil"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Übergeordnetes Profil"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Dieses Profil erbt nicht von einem anderen Profil."
+
msgid "Name is unavailable."
msgstr "Der Name ist nicht verfügbar."
@@ -10296,22 +10372,6 @@ msgstr "Sind Sie sicher, dass Sie diese Option aktivieren möchten?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "Infill-Muster sind in der Regel so konzipiert, dass sie eine automatische Drehung ermöglichen, um einen ordnungsgemäßen Druck zu gewährleisten und die beabsichtigten Effekte zu erzielen (z. B. Gyroid, Cubic). Das Drehen des aktuellen spärlichen Infill-Musters kann zu unzureichender Unterstützung führen. Bitte gehen Sie vorsichtig vor und überprüfen Sie gründlich auf mögliche Druckprobleme. Sind Sie sicher, dass Sie diese Option aktivieren möchten?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"Die Schichthöhe ist zu klein.\n"
-"Sie wird auf min_layer_height gesetzt\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "Die Schichthöhe überschreitet das Limit in Druckereinstellungen -> Extruder -> Schichthöhenlimits. Dies kann zu Problemen mit der Druckqualität führen."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Automatisch an den eingestellten Bereich anpassen?\n"
-
-msgid "Adjust"
-msgstr "Anpassen"
-
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."
msgstr "Experimentelle Funktion: Filament beim Filamentwechsel weiter zurückziehen und abschneiden, um den Flush zu minimieren. Obwohl dies den Flush deutlich reduzieren kann, kann es auch das Risiko von Düsenverstopfungen oder anderen Druckkomplikationen erhöhen."
@@ -10505,6 +10565,9 @@ msgstr "Reservierte Schlüsselwörter gefunden"
msgid "Setting Overrides"
msgstr "Überschreiben der Einstellungen"
+msgid "Retraction when switching material"
+msgstr "Rückzug bei Materialwechsel"
+
msgid "Basic information"
msgstr "Grundlegende Informationen"
@@ -10634,6 +10697,12 @@ msgstr "Kompatible Prozessprofile"
msgid "Printable space"
msgstr "Druckbarer Raum"
+msgid "Printer Agent"
+msgstr "Drucker-Agent"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Wählen Sie die Implementierung des Netzwerkagenten für die Druckerkommunikation. Verfügbare Agenten werden beim Start registriert."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10759,9 +10828,6 @@ msgstr "Höhenbegrenzungen für Schichten"
msgid "Z-Hop"
msgstr "Z-Hop"
-msgid "Retraction when switching material"
-msgstr "Rückzug bei Materialwechsel"
-
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
"\n"
@@ -12103,6 +12169,10 @@ msgstr " ist zu nahe am Sperrbereich und es werden Kollisionen verursacht.\n"
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " ist zu nahe am Klumpenerkennungsbereich und es werden Kollisionen verursacht.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " liegt teilweise außerhalb des druckbaren Bereichs und kann nicht gedruckt werden.\n"
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "Die ausgewählten Düsentemperaturen sind nicht kompatibel. Die Düsentemperatur jedes Filaments muss innerhalb des empfohlenen Düsentemperaturbereichs der anderen Filamente liegen. Andernfalls kann es zu Düsenverstopfungen oder Druckerschäden kommen."
@@ -12418,9 +12488,6 @@ msgstr "Benutze 3MF statt G-Code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Aktivieren Sie diese Option, wenn der Drucker eine 3MF-Datei als Druckauftrag akzeptiert. Wenn aktiviert, sendet Orca Slicer die geslicete Datei als .gcode.3mf, anstatt als einfache .gcode-Datei."
-msgid "Printer Agent"
-msgstr "Drucker-Agent"
-
msgid "Select the network agent implementation for printer communication."
msgstr "Wählen Sie die Netzwerk-Agent-Implementierung für die Druckerkommunikation aus."
@@ -13091,9 +13158,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Geschwindigkeit der internen Brücken. Wenn der Wert als Prozentsatz angegeben wird, wird er auf der Grundlage der Brückengeschwindigkeit berechnet. Der Standardwert beträgt 150 %."
-msgid "Brim width"
-msgstr "Randbreite"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Abstand vom Modell zur äußersten Randlinie"
@@ -13174,6 +13238,14 @@ msgstr ""
"Die Geometrie wird vor der Erkennung scharfer Winkel reduziert. Dieser Parameter ist ein Indikator für die minimale Länge der Abweichung für die Reduzierung.\n"
"0 zum Deaktivieren."
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Brim-Ohren nur außen"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Erzeugt Mausohren nur an der Außenkontur des Modells, ohne Löcher und geschlossene Bereiche."
+
msgid "upward compatible machine"
msgstr "Aufwärtskompatible Maschine"
@@ -14341,6 +14413,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Gyroid"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Glättungsfaktor der Füllung"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Legt fest, wie stark die Ecken der Füllung abgerundet werden. 0% behält den ursprünglichen scharfkantigen Pfad bei, während 100% die größtmöglichen Kurven zwischen benachbarten Fülllinien erzeugt."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Dies ist die Beschleunigung der Füllung von der obersten Schicht. Die Verwendung eines niedrigeren Werts kann die Qualität der Oberfläche verbessern."
@@ -14874,6 +14954,14 @@ msgstr "Mit welcher Art von G-Code ist der Drucker kompatibel."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "G-code-Konfigurationsblock auslassen"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "Schreibt den CONFIG_BLOCK (die Schlüssel-Wert-Paare der Slicer-Konfiguration) nicht in die G-code-Datei. Das kann bei Druckern helfen, deren Firmware beim Verarbeiten dieser Kommentarzeilen abstürzt (z. B. Anycubic go-klipper). Hinweis: Die G-code-Datei enthält dann keine Slicer-Einstellungen mehr, sodass beim erneuten Importieren in OrcaSlicer die Konfiguration nicht wiederhergestellt wird."
+
msgid "Pellet Modded Printer"
msgstr "Pellet-Modifizierter Drucker"
@@ -15920,6 +16008,14 @@ msgstr "Langer Rückzug beim Extruderwechsel"
msgid "Retraction distance when extruder change"
msgstr "Rückzugslänge beim Extruderwechsel"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Rückzugslänge (Werkzeugwechsel)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Wenn vor einem Werkzeugwechsel ein Rückzug ausgelöst wird, wird das Filament um den angegebenen Betrag zurückgezogen (die Länge wird am rohen Filament gemessen, bevor es in den Extruder gelangt)."
+
msgid "Z-hop height"
msgstr "Z-Hub-Höhe"
@@ -16014,6 +16110,10 @@ msgstr "Zusätzliche Länge beim Neustart"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Wenn die Rückzugskompensation nach dem Reisemove durchgeführt wird, wird der Extruder diese zusätzliche Menge an Filament schieben. Diese Einstellung wird nur selten benötigt."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Zusätzliche Länge beim Neustart (Werkzeugwechsel)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Wenn die Rückzugskompensation nach dem Wechsel des Werkzeugs durchgeführt wird, wird der Extruder diese zusätzliche Menge an Filament schieben."
@@ -16431,6 +16531,14 @@ msgstr "Werkzeugwechsel auf dem Reinigungsturm"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Erzwinge, dass der Werkzeugkopf zum Reinigungsturm fährt, bevor der Werkzeugwechselbefehl (Tx) ausgegeben wird. Nur relevant für Mehrfach-Extruder (Mehrfach-Werkzeugkopf) Drucker, die einen Typ-2-Reinigungsturm verwenden. Standardmäßig überspringt Orca die Fahrt auf Mehrfach-Werkzeugkopf-Maschinen, da die Firmware den Kopfwechsel übernimmt, was dazu führen kann, dass der Tx-Befehl über dem gedruckten Teil ausgegeben wird. Aktivieren Sie diese Option, wenn Sie möchten, dass der Werkzeugwechsel immer über dem Reinigungsturm ausgegeben wird."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Auf Temperatur am Reinigungsturm warten"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Nimmt das neue Werkzeug auf, ohne auf das Erreichen der Drucktemperatur zu warten, fährt zum Reinigungsturm und wartet dort unmittelbar vor dem Spülen auf die Temperatur. Das beim Aufheizen austretende Material landet auf dem Turm statt auf dem Modell, und die Fahrt überlappt sich mit dem Aufheizen. Nur relevant für Multi-Extruder-Drucker (mehrere Werkzeugköpfe) mit einem Reinigungsturm vom Typ 2. Die Firmware bzw. das Werkzeugwechsel-Makro darf nicht selbst auf die Temperatur warten. Wenn deaktiviert, wird das Warten auf die Temperatur direkt nach dem Werkzeugwechselbefehl ausgegeben."
+
msgid "No sparse layers (beta)"
msgstr "Keine dünnen Schichten (Beta)"
@@ -19650,9 +19758,6 @@ msgstr "Drucker"
msgid "Print Host upload"
msgstr "Hochladen zum Druck-Host"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Wählen Sie die Implementierung des Netzwerkagenten für die Druckerkommunikation. Verfügbare Agenten werden beim Start registriert."
-
msgid "Select a Flashforge printer"
msgstr "Wählen Sie einen Flashforge-Drucker aus"
@@ -20500,9 +20605,6 @@ msgstr "Es ist etwas Unerwartetes passiert, als Sie versucht haben, sich anzumel
msgid "User canceled."
msgstr "Benutzer abgebrochen."
-msgid "Head diameter"
-msgstr "Kopfdurchmesser"
-
msgid "Max angle"
msgstr "Maximaler Winkel"
@@ -21286,6 +21388,22 @@ msgstr ""
"Verwerfungen vermeiden\n"
"Wussten Sie, dass beim Drucken von Materialien, die zu Verwerfungen neigen, wie z.B. ABS, durch eine entsprechende Erhöhung der Heizbetttemperatur die Wahrscheinlichkeit von Verwerfungen verringert werden kann?"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "Die Schichthöhe ist zu klein.\n"
+#~ "Sie wird auf min_layer_height gesetzt\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "Die Schichthöhe überschreitet das Limit in Druckereinstellungen -> Extruder -> Schichthöhenlimits. Dies kann zu Problemen mit der Druckqualität führen."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Automatisch an den eingestellten Bereich anpassen?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Kopfdurchmesser"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Druckreihenfolge innerhalb einer einzelnen Schicht"
diff --git a/localization/i18n/en/OrcaSlicer_en.po b/localization/i18n/en/OrcaSlicer_en.po
index eb25f226ee..88fb455959 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: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: 2026-06-17 15:44-0300\n"
"Last-Translator: Alexandre Folle de Menezes\n"
"Language-Team: \n"
@@ -4448,6 +4448,20 @@ msgstr ""
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr ""
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr ""
+
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr ""
+
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr ""
+
+msgid "Adjust"
+msgstr ""
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4529,6 +4543,12 @@ msgid ""
"No - Disable Arachne Wall Generator and set [Displacement] mode of the Fuzzy Skin"
msgstr ""
+msgid "Brim ear radius"
+msgstr ""
+
+msgid "Brim width"
+msgstr ""
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr ""
@@ -4780,6 +4800,12 @@ msgstr ""
msgid "Calibration error"
msgstr ""
+msgid "This printer is not configured with the hardware this control needs."
+msgstr ""
+
+msgid "This control is not supported on this printer."
+msgstr ""
+
msgid "Network unavailable"
msgstr ""
@@ -5611,7 +5637,7 @@ msgstr ""
msgid "Size:"
msgstr ""
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr ""
@@ -5786,6 +5812,9 @@ msgstr ""
msgid "Project"
msgstr ""
+msgid "Device (Web)"
+msgstr ""
+
msgid "Yes"
msgstr ""
@@ -7776,20 +7805,20 @@ msgstr ""
msgid "Replaced with 3D files from directory:\n"
msgstr ""
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
msgstr ""
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
msgstr ""
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
msgstr ""
-#, boost-format
-msgid "✔ Replaced %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
msgstr ""
msgid "Replaced volumes"
@@ -8468,6 +8497,15 @@ msgstr ""
msgid "Pop up to select filament grouping mode"
msgstr ""
+msgid "Visible plugin pages"
+msgstr ""
+
+msgid "pages"
+msgstr ""
+
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr ""
+
msgid "Behaviour"
msgstr ""
@@ -8793,6 +8831,14 @@ msgstr ""
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr ""
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr ""
+
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+
msgid "Experimental Features"
msgstr ""
@@ -9048,9 +9094,21 @@ msgstr ""
msgid "Preset Inside Project"
msgstr ""
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr ""
+
msgid "Detach from parent"
msgstr ""
+msgid "Unique preset"
+msgstr ""
+
+msgid "Parent preset"
+msgstr ""
+
+msgid "This preset does not inherit from another preset."
+msgstr ""
+
msgid "Name is unavailable."
msgstr ""
@@ -9728,20 +9786,6 @@ msgstr ""
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr ""
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr ""
-
-msgid "Adjust to the set range automatically?\n"
-msgstr ""
-
-msgid "Adjust"
-msgstr ""
-
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."
msgstr ""
@@ -9927,6 +9971,9 @@ msgstr ""
msgid "Setting Overrides"
msgstr ""
+msgid "Retraction when switching material"
+msgstr ""
+
msgid "Basic information"
msgstr ""
@@ -10053,6 +10100,12 @@ msgstr ""
msgid "Printable space"
msgstr ""
+msgid "Printer Agent"
+msgstr ""
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr ""
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10175,9 +10228,6 @@ msgstr ""
msgid "Z-Hop"
msgstr ""
-msgid "Retraction when switching material"
-msgstr ""
-
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
"\n"
@@ -11441,6 +11491,9 @@ msgstr ""
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr ""
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr ""
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr ""
@@ -11736,9 +11789,6 @@ msgstr ""
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr ""
-msgid "Printer Agent"
-msgstr ""
-
msgid "Select the network agent implementation for printer communication."
msgstr ""
@@ -12275,9 +12325,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr ""
-msgid "Brim width"
-msgstr ""
-
msgid "This is the distance from the model to the outermost brim line."
msgstr ""
@@ -12343,6 +12390,12 @@ msgid ""
"0 to deactivate."
msgstr ""
+msgid "Brim ears outer only"
+msgstr ""
+
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr ""
+
msgid "upward compatible machine"
msgstr ""
@@ -13355,6 +13408,12 @@ msgstr ""
msgid "Gyroid"
msgstr ""
+msgid "Sparse infill smooth factor"
+msgstr ""
+
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr ""
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr ""
@@ -13835,6 +13894,12 @@ msgstr ""
msgid "Klipper"
msgstr ""
+msgid "Skip G-code config block"
+msgstr ""
+
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr ""
+
msgid "Pellet Modded Printer"
msgstr ""
@@ -14796,6 +14861,12 @@ msgstr ""
msgid "Retraction distance when extruder change"
msgstr ""
+msgid "Retraction Length (Toolchange)"
+msgstr ""
+
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr ""
+
msgid "Z-hop height"
msgstr ""
@@ -14889,6 +14960,9 @@ msgstr ""
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr ""
+msgid "Extra length on restart (Toolchange)"
+msgstr ""
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr ""
@@ -15274,6 +15348,12 @@ msgstr ""
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr ""
+msgid "Wait for temperature on wipe tower"
+msgstr ""
+
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr ""
+
msgid "No sparse layers (beta)"
msgstr ""
@@ -18249,9 +18329,6 @@ msgstr ""
msgid "Print Host upload"
msgstr ""
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr ""
-
msgid "Select a Flashforge printer"
msgstr ""
@@ -19083,9 +19160,6 @@ msgstr ""
msgid "User canceled."
msgstr ""
-msgid "Head diameter"
-msgstr ""
-
msgid "Max angle"
msgstr ""
diff --git a/localization/i18n/es/OrcaSlicer_es.po b/localization/i18n/es/OrcaSlicer_es.po
index c1709fe45f..9c5127e50a 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: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: \n"
"Last-Translator: Ian A. Bassi <>\n"
"Language-Team: \n"
@@ -4564,6 +4564,23 @@ msgstr "La temperatura actual de la recámara es superior a la temperatura de se
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "La temperatura mínima de la recámara (%d℃) es superior a la temperatura objetivo de la recámara (%d℃). El valor mínimo es el umbral en el que comienza la impresión mientras la recámara continúa calentándose hacia el objetivo, por lo que no debería superarlo. Se ajustará al valor objetivo."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "La altura de capa es demasiado pequeña. Se establecerá en el mínimo (%g mm)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "La altura de capa está fuera de los límites establecidos en Ajustes de la Impresora -> Extrusor -> Limite de Altura de Capa, esto puede causar problemas de calidad de impresión."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "¿Ajustarla automáticamente al límite (%g mm)?"
+
+msgid "Adjust"
+msgstr "Ajustar"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4684,6 +4701,13 @@ msgstr ""
"Sí: habilitar el generador de muros Arachne\n"
"No: deshabilitar el generador de paredes Arachne y establecer el modo [Desplazamiento] de la piel rugosa"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Radio de las orejas de borde"
+
+msgid "Brim width"
+msgstr "Ancho del borde de adherencia"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "El modo espiral solo funciona cuando los bucles de perímetro son 1, el soporte está desactivado, la detección de agrupamientos mediante sondeo está desactivada, las capas superiores de la carcasa son 0, la densidad de relleno es 0 y el tipo de lapso de tiempo es tradicional."
@@ -4938,6 +4962,14 @@ msgstr "Fallo al generar el G-Code de calibración"
msgid "Calibration error"
msgstr "Error de calibración"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Esta impresora no está configurada con el hardware que necesita este control."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Este control no es compatible con esta impresora."
+
msgid "Network unavailable"
msgstr "Red no disponible"
@@ -5779,7 +5811,7 @@ msgstr "Volumen:"
msgid "Size:"
msgstr "Tamaño:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "Se han encontrado conflictos de rutas G-Code en la capa %d, Z = %.2lfmm. Por favor, separe más los objetos en conflicto (%s <-> %s)."
@@ -5960,6 +5992,10 @@ msgstr "Multi-dispositivo"
msgid "Project"
msgstr "Proyecto"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Dispositivo (Web)"
+
msgid "Yes"
msgstr "Sí"
@@ -7997,21 +8033,21 @@ msgstr "No se seleccionó el directorio para el reemplazo"
msgid "Replaced with 3D files from directory:\n"
msgstr "Reemplazado con archivos 3D desde el directorio:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Omitido %1%: mismo archivo.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ Omitido %s: mismo archivo.\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Omitido %1%: el archivo no existe.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ Omitido %s: el archivo no existe.\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Omitido %1%: fallo al reemplazar.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ Omitido %s: fallo al reemplazar.\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Reemplazado %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ Reemplazado %s.\n"
msgid "Replaced volumes"
msgstr "Volúmenes reemplazados"
@@ -8725,6 +8761,18 @@ msgstr "Con esta opción activada, puede enviar una tarea a varios dispositivos
msgid "Pop up to select filament grouping mode"
msgstr "Ventana emergente para seleccionar el modo de agrupación de filamentos"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Páginas de plugins visibles"
+
+# AI Translated
+msgid "pages"
+msgstr "páginas"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Número de páginas de plugins que se muestran como pestañas fijas antes de que el resto de páginas se agrupe en un desplegable en la última pestaña."
+
msgid "Behaviour"
msgstr "Comportamiento"
@@ -9074,6 +9122,18 @@ msgstr "Mostrar ajustes preestablecidos no compatibles"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Mostrar los ajustes preestablecidos incompatibles o no compatibles en los menús desplegables de impresoras y filamentos. Estos ajustes preestablecidos no se pueden seleccionar."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Experimental) Usar agentes de impresora en lugar de hosts de impresión"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Envía los trabajos de impresión de impresoras que no son Bambu a través de los agentes de plugin de impresora en lugar del flujo clásico de subida al host de impresión.\n"
+"Cuando está desactivado, OrcaSlicer utiliza el comportamiento heredado del host de impresión."
+
msgid "Experimental Features"
msgstr "Funciones experimentales"
@@ -9333,9 +9393,25 @@ msgstr "Perfil de usuario"
msgid "Preset Inside Project"
msgstr "Perfil interno del proyecto"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Copia en este perfil todos los valores heredados del perfil padre y elimina la relación de herencia. Los perfiles compatibles solo con el perfil padre pueden dejar de ser compatibles."
+
msgid "Detach from parent"
msgstr "Separar del elemento padre"
+# AI Translated
+msgid "Unique preset"
+msgstr "Perfil único"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Perfil padre"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Este perfil no hereda de otro perfil."
+
msgid "Name is unavailable."
msgstr "El nombre no está disponible."
@@ -10031,22 +10107,6 @@ msgstr "¿Está seguro de que desea activar esta opción?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "Los patrones de relleno suelen diseñarse para gestionar la rotación automáticamente y asegurar una impresión adecuada y lograr sus efectos previstos (p. ej., Giroide, Cúbico). Rotar el patrón de relleno actual puede provocar soporte insuficiente. Proceda con precaución y compruebe detenidamente posibles problemas de impresión. ¿Está seguro de que desea activar esta opción?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"La altura de la capa es demasiado pequeña.\n"
-"Se establecerá en min_layer_height\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "La altura de la capa excede el límite en Ajustes de la Impresora -> Extrusor -> Limite de Altura de Capa, esto puede causar problemas de calidad de impresión."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "¿Desea ajustar el rango automáticamente?\n"
-
-msgid "Adjust"
-msgstr "Ajustar"
-
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."
msgstr "Función experimental: retraer y cortar el filamento a una mayor distancia durante los cambios de filamento para minimizar el purgado. Aunque puede reducir notablemente el purgado, también puede aumentar el riesgo de atascos de boquilla u otras complicaciones de impresión.Característica experimental: Retraer y cortar el filamento a mayor distancia durante los cambios de filamento para minimizar el descarte. Aunque puede reducir notablemente el descarte, también puede elevar el riesgo de atascos de boquillas u otros problemas en la impresión."
@@ -10238,6 +10298,9 @@ msgstr "Palabras clave utilizadas y encontradas"
msgid "Setting Overrides"
msgstr "Sobreescribir Ajustes de impresora"
+msgid "Retraction when switching material"
+msgstr "Retracción al cambiar de material"
+
msgid "Basic information"
msgstr "Información básica"
@@ -10364,6 +10427,12 @@ msgstr "Perfiles de proceso compatibles"
msgid "Printable space"
msgstr "Espacio imprimible"
+msgid "Printer Agent"
+msgstr "Agente de impresora"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Seleccione la implementación del agente de red para la comunicación con la impresora. Los agentes disponibles se registran al iniciar el sistema."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10489,9 +10558,6 @@ msgstr "Límites de altura de la capa"
msgid "Z-Hop"
msgstr "Salto en Z"
-msgid "Retraction when switching material"
-msgstr "Retracción al cambiar de material"
-
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
"\n"
@@ -11809,6 +11875,10 @@ msgstr " está demasiado cerca de una zona de exclusión, lo que provocará coli
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " está demasiado cerca del área de detección de aglomeraciones, y se producirán colisiones.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " está parcialmente fuera del área imprimible, y no se puede imprimir.\n"
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "Las temperaturas de boquilla seleccionadas son incompatibles. La temperatura de boquilla de cada filamento debe estar dentro del rango de temperaturas recomendado para los demás filamentos. De lo contrario, podrían producirse atascos en la boquilla o daños en la impresora."
@@ -12116,9 +12186,6 @@ msgstr "Utiliza 3MF en lugar de G-code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Activa esta opción si la impresora admite un archivo 3MF como trabajo de impresión. Cuando está activada, Orca Slicer envía el archivo cortado como un archivo .gcode.3mf, en lugar de como un archivo .gcode convencional."
-msgid "Printer Agent"
-msgstr "Agente de impresora"
-
msgid "Select the network agent implementation for printer communication."
msgstr "Seleccione la implementación del agente de red para la comunicación con la impresora."
@@ -12794,9 +12861,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Velocidad de los puntes internos. Si se expresa como un porcentaje, será Calculado en base a la velocidad de puente. El valor por defecto es 150%."
-msgid "Brim width"
-msgstr "Ancho del borde de adherencia"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Distancia del modelo a la línea más externa del borde de adherencia."
@@ -12876,6 +12940,14 @@ msgstr ""
"La geometría se verá diezmada antes de detectar angulos agudos. Este parámetro indica la longitud mínima de desviación para el diezmado\n"
"0 para desactivar."
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Orejas de borde solo en el exterior"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Genera orejas de ratón únicamente en el contorno exterior del modelo, excluyendo agujeros y secciones cerradas."
+
msgid "upward compatible machine"
msgstr "máquina compatible ascendente"
@@ -14011,6 +14083,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Giroide"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Factor de suavizado del relleno poco denso"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Controla cuánto se redondean las esquinas del relleno poco denso. 0% mantiene el trazado original con esquinas vivas, mientras que 100% produce las curvas más amplias posibles entre líneas de relleno adyacentes."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Aceleración del relleno de la superficie superior. El uso de un valor más bajo puede mejorar la calidad de la superficie superior."
@@ -14544,6 +14624,14 @@ msgstr "Con qué tipo de G-Code es compatible la impresora."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "Omitir el bloque de configuración del G-code"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "No escribe el CONFIG_BLOCK (los pares clave/valor de la configuración del laminador) en el archivo G-code. Esto puede ayudar con impresoras cuyo firmware falla al analizar esas líneas de comentario (p. ej. Anycubic go-klipper). Nota: el archivo G-code ya no contendrá los ajustes del laminador, por lo que al importarlo de nuevo en OrcaSlicer no se restaurará la configuración."
+
msgid "Pellet Modded Printer"
msgstr "Impresora Modificada para Pellets"
@@ -15583,6 +15671,14 @@ msgstr "Retracción larga al cambiar de extrusor"
msgid "Retraction distance when extruder change"
msgstr "Distancia de retracción al cambiar de extrusor"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Longitud de retracción (Cambio de herramienta)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Cuando se activa la retracción antes de un cambio de herramienta, el filamento se retrae la cantidad especificada (la longitud se mide sobre el filamento en bruto, antes de entrar en el extrusor)."
+
msgid "Z-hop height"
msgstr "Altura de Salto en Z"
@@ -15676,6 +15772,10 @@ msgstr "Longitud extra de reinicio"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Cuando la retracción se compensa después de un desplazamiento, el extrusor expulsará esta cantidad adicional de filamento. Esta función no suele ser necesaria."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Longitud extra de reinicio (Cambio de herramienta)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Cuando se compensa la retracción después de cambiar de cabezal, el extrusor expulsará esta cantidad adicional de filamento."
@@ -16082,6 +16182,14 @@ msgstr "Cambio de herramienta en la torre de purga"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Obliga al cabezal a desplazarse hasta la torre de purga antes de emitir el comando de cambio de herramienta (Tx). Solo es relevante para impresoras con múltiples extrusores (múltiples cabezales) que utilicen una torre de limpieza de tipo 2. Por defecto, Orca omite el desplazamiento en máquinas con múltiples cabezales porque el firmware se encarga del cambio de cabezal, lo que puede provocar que el comando Tx se emita por encima de la pieza impresa. Habilita esta opción si deseas que el cambio de herramienta se emita siempre por encima de la torre de purga."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Esperar la temperatura en la torre de purga"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Recoge la nueva herramienta sin esperar a que alcance la temperatura de impresión, se desplaza a la torre de purga y espera allí la temperatura, justo antes de purgar. El rezumado del calentamiento cae sobre la torre en lugar de sobre el modelo, y el desplazamiento se solapa con el calentamiento. Solo es relevante para impresoras multiextrusor (multicabezal) que usan una torre de purga de tipo 2. El firmware o la macro de cambio de herramienta no deben esperar la temperatura por su cuenta. Cuando está desactivado, la espera de temperatura se emite justo después del comando de cambio de herramienta."
+
msgid "No sparse layers (beta)"
msgstr "Sin capas de baja densidad (beta)"
@@ -19281,9 +19389,6 @@ msgstr "Impresora física"
msgid "Print Host upload"
msgstr "Mandar al servidor de impresión"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Seleccione la implementación del agente de red para la comunicación con la impresora. Los agentes disponibles se registran al iniciar el sistema."
-
msgid "Select a Flashforge printer"
msgstr "Selecciona una impresora Flashforge"
@@ -20125,9 +20230,6 @@ msgstr "Ha ocurrido algo inesperado al intentar iniciar sesión, inténtelo de n
msgid "User canceled."
msgstr "Cancelado por el usuario."
-msgid "Head diameter"
-msgstr "Diámetro de la cabeza"
-
msgid "Max angle"
msgstr "Ángulo máximo"
@@ -20861,6 +20963,22 @@ msgstr ""
"Evita la deformación\n"
"¿Sabías que al imprimir materiales propensos a la deformación como el ABS, aumentar adecuadamente la temperatura de la cama térmica puede reducir la probabilidad de deformaciones?"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "La altura de la capa es demasiado pequeña.\n"
+#~ "Se establecerá en min_layer_height\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "La altura de la capa excede el límite en Ajustes de la Impresora -> Extrusor -> Limite de Altura de Capa, esto puede causar problemas de calidad de impresión."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "¿Desea ajustar el rango automáticamente?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Diámetro de la cabeza"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Orden de impresión dentro de cada capa."
diff --git a/localization/i18n/eu/OrcaSlicer_eu.po b/localization/i18n/eu/OrcaSlicer_eu.po
index db9235b8c1..03e6d6685d 100644
--- a/localization/i18n/eu/OrcaSlicer_eu.po
+++ b/localization/i18n/eu/OrcaSlicer_eu.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: 2026-07-20 13:33+0200\n"
"Last-Translator: Manu Goiogana \n"
"Language-Team: \n"
@@ -4606,6 +4606,23 @@ msgstr "Uneko ganberako tenperatura materialaren tenperatura segurua baino handi
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "Ganberako gutxieneko tenperatura (%d ℃) helburuko ganbera-tenperatura (%d ℃) baino altuagoa da. Gutxieneko balioa inprimaketa hasten den atalasea da, ganberak helbururantz berotzen jarraitzen duen bitartean; beraz, ez luke helburua gainditu behar. Helburuko baliora mugatuko da."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "Geruza-altuera txikiegia da. Gutxienekora ezarriko da (%g mm)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "Geruza-altuera Inprimagailuaren ezarpenak -> Estrusorea -> Geruza-altueraren mugak atalean ezarritako mugetatik kanpo dago; horrek inprimatze-kalitateko arazoak sor ditzake."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Automatikoki mugara (%g mm) doitu nahi duzu?"
+
+msgid "Adjust"
+msgstr "Doitu"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4725,6 +4742,13 @@ msgstr ""
"Bai - Gaitu Arachne horma-sorgailua\n"
"Ez - Desgaitu Arachne horma-sorgailua eta ezarri gainazal zimurraren [Desplazamendua] modua"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Ertz-belarriaren erradioa"
+
+msgid "Brim width"
+msgstr "Itsaspen ertzaren zabalera"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "Espiral moduak baldintza hauetan bakarrik funtzionatzen du: horma-begiztak 1 izatea, euskarriak desgaituta egotea, haztatze bidezko material-metaketa detektatzea desgaituta egotea, goiko estalki-geruzak 0 izatea, dentsitate baxuko betegarriaren dentsitatea 0 izatea eta timelapse mota tradizionala izatea."
@@ -4979,6 +5003,14 @@ msgstr "Hutsegitea gertatu da kalibrazioko G-Code-a sortzean"
msgid "Calibration error"
msgstr "Kalibrazio akatsa"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Inprimagailu honek ez dauka kontrol honek behar duen hardwarea konfiguratuta."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Kontrol hau ez da bateragarria inprimagailu honekin."
+
# AI Translated
msgid "Network unavailable"
msgstr "Sarea ez dago erabilgarri"
@@ -5828,7 +5860,7 @@ msgstr "Bolumena:"
msgid "Size:"
msgstr "Tamaina:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "G-code ibilbideen gatazkak aurkitu dira %d geruzan, Z = %.2lf mm. Urrundu gehiago gatazkan dauden objektuak (%s <-> %s)."
@@ -6005,6 +6037,10 @@ msgstr "Gailu anitz"
msgid "Project"
msgstr "Proiektua"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Gailua (Web)"
+
msgid "Yes"
msgstr "Bai"
@@ -8064,21 +8100,21 @@ msgstr "Ez da ordezkatzeko direktoriorik hautatu"
msgid "Replaced with 3D files from directory:\n"
msgstr "Direktorio honetako 3D fitxategiekin ordeztuta:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ %1% saltatu da: fitxategi bera.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ %s saltatu da: fitxategi bera.\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ %1% saltatu da: fitxategia ez da existitzen.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ %s saltatu da: fitxategia ez da existitzen.\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ %1% saltatu da: ezin izan da ordeztu.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ %s saltatu da: ezin izan da ordeztu.\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ %1% ordezkatu da.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ %s ordezkatu da.\n"
msgid "Replaced volumes"
msgstr "Ordeztutako bolumenak"
@@ -8790,6 +8826,18 @@ msgstr "Aukera hau gaituta, zeregin bat hainbat gailutara bidali eta hainbat gai
msgid "Pop up to select filament grouping mode"
msgstr "Erakutsi filamentuak taldekatzeko modua hautatzeko leihoa"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Ikusgai dauden plugin-orriak"
+
+# AI Translated
+msgid "pages"
+msgstr "orri"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Fitxa finko gisa erakusten diren plugin-orrien kopurua; gainerako orriak azken fitxako goitibeherako zerrendan bilduko dira."
+
msgid "Behaviour"
msgstr "Jokabidea"
@@ -9142,6 +9190,18 @@ msgstr "Erakutsi onartzen ez diren aurrezarpenak"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Erakutsi bateraezinak edo onartu gabeak diren aurrezarpenak inprimagailuaren eta filamentuaren goitibeherako zerrendetan. Aurrezarpen hauek ezin dira hautatu."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Esperimentala) Erabili inprimagailu-agenteak inprimatze-hostenen ordez"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Bideratu Bambu ez diren inprimagailuen inprimatze-lanak inprimagailuaren plugin-agenteen bidez, inprimatze-hostera igotzeko fluxu klasikoaren ordez.\n"
+"Desgaituta dagoenean, OrcaSlicer-ek inprimatze-hostaren aurreko portaera erabiltzen du."
+
msgid "Experimental Features"
msgstr "Ezaugarri esperimentalak"
@@ -9402,9 +9462,25 @@ msgstr "Erabiltzailearen aurrezarpena"
msgid "Preset Inside Project"
msgstr "Proiektu barruko aurrezarpena"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Aurrezarpen honetara gurasoaren balio heredatu guztiak kopiatzen ditu eta gurasoarekiko lotura kentzen du. Gurasoarekin soilik bateragarriak diren aurrezarpenak bateraezin gera daitezke."
+
msgid "Detach from parent"
msgstr "Bereizi gurasotik"
+# AI Translated
+msgid "Unique preset"
+msgstr "Aurrezarpen bakarra"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Guraso-aurrezarpena"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Aurrezarpen honek ez du beste aurrezarpen batetik heredatzen."
+
msgid "Name is unavailable."
msgstr "Izena ez dago erabilgarri."
@@ -10124,22 +10200,6 @@ msgstr "Ziur aukera hau gaitu nahi duzula?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "Betegarri-patroiak normalean biraketa automatikoki kudeatzeko diseinatuta daude, behar bezala inprimatzeko eta nahi den efektua lortzeko (adibidez, Giroidea edo Kubikoa). Uneko dentsitate baxuko betegarri-patroia biratzeak euskarri eskasa eragin dezake. Kontuz jarraitu eta egiaztatu arretaz inprimatze-arazorik sor daitekeen. Ziur zaude aukera hau gaitu nahi duzula?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"Geruza-altuera txikiegia da.\n"
-"min_layer_height baliora ezarriko da\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "Geruza-altuerak Inprimagailuaren ezarpenak -> Estrusorea -> Geruza-altueraren mugak ataleko muga gainditzen du; horrek inprimatze-kalitateko arazoak sor ditzake."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Doitu automatikoki ezarritako barrutira?\n"
-
-msgid "Adjust"
-msgstr "Doitu"
-
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."
msgstr "Funtzio esperimentala: filamentu aldaketetan distantzia handiagoan atzera egitea eta moztea, purgatzea minimizatzeko. Purgatzea nabarmen murriztu dezakeen arren, pitaren buxadurak edo bestelako inprimatze-arazoak izateko arriskua ere handitu dezake."
@@ -10333,6 +10393,9 @@ msgstr "Erreserbatutako gako-hitzak aurkitu dira"
msgid "Setting Overrides"
msgstr "Ezarpenen gainidazketak"
+msgid "Retraction when switching material"
+msgstr "Atzera-egitea materiala aldatzean"
+
msgid "Basic information"
msgstr "Oinarrizko informazioa"
@@ -10459,6 +10522,12 @@ msgstr "Prozesu-profil bateragarriak"
msgid "Printable space"
msgstr "Inprimatzeko espazioa"
+msgid "Printer Agent"
+msgstr "Inprimagailu-agentea"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Hautatu sare-agentearen inplementazioa inprimagailuarekin komunikatzeko. Erabilgarri dauden agenteak abioan erregistratzen dira."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10584,9 +10653,6 @@ msgstr "Geruza-altueraren mugak"
msgid "Z-Hop"
msgstr "Z jauzia"
-msgid "Retraction when switching material"
-msgstr "Atzera-egitea materiala aldatzean"
-
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
"\n"
@@ -11912,6 +11978,10 @@ msgstr " bazterketa-eremu batetik gertuegi dago, eta talkak eragingo ditu.\n"
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " material-metaketa detektatzeko eremutik gertuegi dago, eta talkak eragingo ditu.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " inprimagarri den eremutik kanpo dago partzialki, eta ezin da inprimatu.\n"
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "Hautatutako pita-tenperaturak ez dira bateragarriak. Filamentu bakoitzaren pita-tenperaturak gainerako filamentuen gomendatutako pita-tenperatura tartean egon behar du. Bestela, pita buxatu edo inprimagailua kaltetu daiteke."
@@ -12013,11 +12083,11 @@ msgstr "Purgatze-dorreak euskarriak objektuaren geruza-altuera bera izatea eskat
# AI Translated
msgid "For Organic supports, two walls are supported only with the Hollow/Default base pattern."
-msgstr "Euskarri organikoetan, bi horma Hollow/Default oinarri-patroiarekin soilik onartzen dira."
+msgstr "Euskarri organikoetan, bi horma Hutsa/Lehenetsia oinarri-patroiarekin soilik onartzen dira."
# AI Translated
msgid "The Lightning base pattern is not supported by this support type; Rectilinear will be used instead."
-msgstr "Lightning oinarri-patroia ez du euskarri mota honek onartzen; Rectilinear erabiliko da horren ordez."
+msgstr "Tximista oinarri-patroia ez du euskarri mota honek onartzen; Lerrozuzena erabiliko da horren ordez."
msgid "Organic support tree tip diameter must not be smaller than support material extrusion width."
msgstr "Euskarri organikoaren zuhaitz-muturraren diametroak ezin du izan euskarri-materialaren estrusio-zabalera baino txikiagoa."
@@ -12030,7 +12100,7 @@ msgstr "Euskarri organikoaren adar-diametroak ezin du izan euskarri-zuhaitzaren
# AI Translated
msgid "The Hollow base pattern is not supported by this support type; Rectilinear will be used instead."
-msgstr "Hollow oinarri-patroia ez du euskarri mota honek onartzen; Rectilinear erabiliko da horren ordez."
+msgstr "Hutsa oinarri-patroia ez du euskarri mota honek onartzen; Lerrozuzena erabiliko da horren ordez."
msgid "Support enforcers are used but support is not enabled. Please enable support."
msgstr "Euskarri-behartzaileak erabiltzen dira, baina euskarria ez dago gaituta. Gaitu euskarriak."
@@ -12228,9 +12298,6 @@ msgstr "Erabili 3MF G-codearen ordez"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Gaitu aukera hau inprimagailuak 3MF fitxategi bat inprimatze-lan gisa onartzen badu. Gaituta dagoenean, OrcaSlicerrek xerratutako fitxategia .gcode.3mf gisa bidaltzen du, .gcode fitxategi arrunt baten ordez."
-msgid "Printer Agent"
-msgstr "Inprimagailu-agentea"
-
msgid "Select the network agent implementation for printer communication."
msgstr "Hautatu inprimagailuarekin komunikatzeko sare-agentearen inplementazioa."
@@ -12905,9 +12972,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Barru-zubien abiadura. Balioa ehuneko gisa adierazten bada, Zubien abiadura-ren arabera kalkulatuko da. Lehenetsitako balioa % 150ekoa da."
-msgid "Brim width"
-msgstr "Itsaspen ertzaren zabalera"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Hau da modelotik itsaspen ertzaren kanporen lerrora dagoen distantzia."
@@ -12987,6 +13051,14 @@ msgstr ""
"Geometria sinplifikatu egingo da angelu zorrotzak detektatu aurretik. Parametro honek sinplifikaziorako desbideratzearen gutxieneko luzera adierazten du.\n"
"0, desaktibatzeko."
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Ertz-belarriak kanpoaldean soilik"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Sortu saguaren belarriak modeloaren kanpoko ingeradan soilik, zuloak eta itxitako atalak baztertuta."
+
msgid "upward compatible machine"
msgstr "gorantz bateragarria den makina"
@@ -13252,7 +13324,7 @@ msgstr "Moderatua"
# AI Translated
msgid "Top surface pattern"
-msgstr "Goiko gainazalaren patroia"
+msgstr "Goiko gainazaleko patroia"
# AI Translated
msgid "This is the line pattern for top surface infill."
@@ -13265,13 +13337,13 @@ msgid "Monotonic line"
msgstr "Lerro monotonikoa"
msgid "Rectilinear"
-msgstr "Rectilinear"
+msgstr "Lerrozuzena"
msgid "Aligned Rectilinear"
msgstr "Lerrozuzen lerrokatua"
msgid "Concentric"
-msgstr "Concentric"
+msgstr "Kontzentrikoa"
msgid "Hilbert Curve"
msgstr "Hilbert kurba"
@@ -13337,7 +13409,7 @@ msgstr "Kanporantz"
# AI Translated
msgid "Bottom surface pattern"
-msgstr "Beheko gainazalaren patroia"
+msgstr "Beheko gainazaleko patroia"
# AI Translated
msgid "This is the line pattern of bottom surface infill, not including bridge infill."
@@ -13362,7 +13434,7 @@ msgid ""
"Outward starts at the center of the surface, so any excess material is pushed towards the edge where it is least visible. Inward starts at the edge and ends with the tight curves at the center.\n"
"Default uses shortest-path ordering, which may run in either direction."
msgstr ""
-"Gaineko gainazalak betetzen diren noranzkoa zentroan oinarritutako patroia erabiltzen denean (Konzentrikoa, Arkimedeen Akordeak, Oktograma Espirala).\n"
+"Goiko gainazalak betetzen diren noranzkoa zentroan oinarritutako patroia erabiltzen denean (Kontzentrikoa, Arkimedesen kordak, Oktagrama-kiribila).\n"
"Kanporanzkoa erdialdean hasten da, beraz, gehiegizko materiala gutxien ikusten den ertzera bultzatzen da. Barruranzkoa ertzean hasten da eta erdian kurba estuekin amaitzen da.\n"
"Lehenetsiak bide laburreneko ordena erabiltzen du, zeina norabide batean zein bestean ibil daitekeen."
@@ -13375,7 +13447,7 @@ msgid ""
"Inward starts each surface with the wider outer curves, which improves first layer adhesion on build plates where the tight curves at the center may not stick. Outward starts at the center, pushing any excess material towards the edge.\n"
"Default uses shortest-path ordering, which may run in either direction."
msgstr ""
-"Beheko gainazalak betetzen diren noranzkoa zentroan oinarritutako patroia erabiltzen denean (Konzentrikoa, Arkimedeen Akordeak, Oktograma Espirala).\n"
+"Beheko gainazalak betetzen diren noranzkoa zentroan oinarritutako patroia erabiltzen denean (Kontzentrikoa, Arkimedesen kordak, Oktagrama-kiribila).\n"
"Barruranzkoa hasten da gainazal bakoitza kanpoko kurba zabalagoekin, eta horrek lehen geruzaren atxikimendua hobetzen du erdiko kurba estuak itsatsi ez daitezkeen inprimatze-plaketan. Kanporanzkoa erdialdean hasten da, gehiegizko materiala ertzera bultzatuz.\n"
"Lehenetsiak bide laburreneko ordena erabiltzen du, zeina norabide batean zein bestean ibil daitekeen."
@@ -14137,6 +14209,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Giroidea"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Dentsitate baxuko betegarriaren leuntze-faktorea"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Dentsitate baxuko betegarriaren izkinak zenbateraino biribiltzen diren kontrolatzen du. 0% balioak jatorrizko ibilbide zorrotza mantentzen du, eta 100% balioak ondoz ondoko betegarri-lerroen arteko kurbarik zabalenak sortzen ditu."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Hau da goiko gainazaleko betegarriaren azelerazioa. Balio txikiago batek goiko gainazalaren kalitatea hobetu dezake."
@@ -14676,6 +14756,14 @@ msgstr "Inprimagailua zer G-code motarekin den bateragarria."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "Saltatu G-code-aren konfigurazio-blokea"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "Ez idatzi CONFIG_BLOCK (xerragailuaren konfigurazioko gako/balio bikoteak) G-code fitxategian. Lagungarria izan daiteke firmwareak iruzkin-lerro horiek prozesatzean huts egiten duen inprimagailuetan (adib. Anycubic go-klipper). Oharra: G-code fitxategiak ez ditu jada xerragailuaren ezarpenak edukiko; beraz, OrcaSlicer-era berriro inportatzeak ez du konfigurazioa berreskuratuko."
+
msgid "Pellet Modded Printer"
msgstr "Pelletekin moldatutako inprimagailua"
@@ -15719,6 +15807,14 @@ msgstr "Atzera-egite luzea estrusorea aldatzean"
msgid "Retraction distance when extruder change"
msgstr "Atzera-egite distantzia estrusorea aldatzean"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Atzera-egitearen luzera (Erreminta aldaketa)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Erreminta aldatu aurretik atzera-egitea abiarazten denean, filamentua zehaztutako kopurua atzeratzen da (luzera filamentu gordinean neurtzen da, estrusorean sartu aurretik)."
+
msgid "Z-hop height"
msgstr "Z jauziaren altuera"
@@ -15812,6 +15908,10 @@ msgstr "Berrabiaraztean luzera gehigarria"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Mugimenduaren ondoren atzera-egitea konpentsatzen denean, estrusoreak filamentu kantitate gehigarri hau bultzatuko du. Ezarpen hau gutxitan behar da."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Berrabiaraztean luzera gehigarria (Erreminta aldaketa)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Tresna aldatu ondoren atzera-egitea konpentsatzen denean, estrusoreak filamentu kantitate gehigarri hau bultzatuko du."
@@ -16220,6 +16320,14 @@ msgstr "Tresna-aldaketa purgatze-dorrean"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Behartu inprimatze-burua purgatze-dorrera joatera tresna aldatzeko agindua (Tx) eman aurretik. 2. motako purgatze-dorrea erabiltzen duten estrusore anitzeko (inprimatze-buru anitzeko) inprimagailuetarako bakarrik da garrantzitsua. Lehenespenez, Orcak ez du joan-etorria egiten inprimatze-buru anitzeko makinetan, firmwareak buruaren aldaketa kudeatzen duelako; horren ondorioz, Tx agindua inprimatutako piezaren gainean eman daiteke. Gaitu aukera hau tresna-aldaketa beti purgatze-dorrearen gainean egin dadin."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Itxaron tenperatura purgatze-dorrean"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Hartu erreminta berria inprimatze-tenperaturara iritsi arte itxaron gabe, joan purgatze-dorrera eta itxaron han tenperatura, purgatu aurretik. Berotzeak eragindako jarioa dorrean erortzen da modeloan beharrean, eta desplazamendua berotzearekin gainjartzen da. Estrusore anitzeko (inprimatze-buru anitzeko) inprimagailuetan soilik da baliagarria, 2. motako purgatze-dorrea erabiltzen dutenean. Firmwareak edo erreminta aldaketaren makroak ez du tenperaturaren zain egon behar. Desgaituta dagoenean, tenperaturaren zain egoteko agindua erreminta aldaketaren komandoaren ondoren bidaltzen da."
+
msgid "No sparse layers (beta)"
msgstr "Geruza bakandurik ez (beta)"
@@ -16431,9 +16539,9 @@ msgid ""
msgstr ""
"Euskarriaren lerro-patroia.\n"
"\n"
-"Zuhaitz-euskarrien aukera lehenetsia Hutsa da, hau da, ez dago oinarri-patroirik. Beste euskarri motetarako, aukera lehenetsia patroi zuzenekoa da.\n"
+"Zuhaitz-euskarrien aukera lehenetsia Hutsa da, hau da, ez dago oinarri-patroirik. Beste euskarri motetarako, aukera lehenetsia patroi lerrozuzena da.\n"
"\n"
-"OHARRA: Euskarri organikoetan, bi hormak Hutsa/Lehenetsia oinarri-patroiarekin bakarrik onartzen dira. Tximistetan oinarritutako patroia Zuhaitz mehea/Indartsua/Hibridoa euskarriek bakarrik onartzen dute. Beste euskarri motetarako, Zuzenekoa erabiliko da Tximistenaren ordez."
+"OHARRA: Euskarri organikoetan, bi hormak Hutsa/Lehenetsia oinarri-patroiarekin bakarrik onartzen dira. Tximista oinarri-patroia Zuhaitz mehea/Indartsua/Hibridoa euskarriek bakarrik onartzen dute. Beste euskarri motetarako, Lerrozuzena erabiliko da Tximistaren ordez."
msgid "Rectilinear grid"
msgstr "Sare lerrozuzena"
@@ -16713,7 +16821,7 @@ msgid ""
" - Each Model: centers the pattern on each connected body. Parts that touch or overlap share one center; parts detached from the rest each get their own.\n"
" - Each Assembly: uses a single shared center for the whole object or assembly."
msgstr ""
-"Goiko eta beheko gainazaleko patroi zentratuen (Arkimedesen kordak, Oktagrama-espirala) zentroa non kokatzen den aukeratzen du.\n"
+"Goiko eta beheko gainazaleko patroi zentratuen (Arkimedesen kordak, Oktagrama-kiribila) zentroa non kokatzen den aukeratzen du.\n"
" - Gainazal bakoitza: patroia gainazal-eskualde bakoitzean zentratzen du, uharte bakoitza bere kabuz simetrikoa izan dadin.\n"
" - Modelo bakoitza: patroia konektatutako gorputz bakoitzean zentratzen du. Elkar ukitzen edo gainjartzen diren piezek zentro bera partekatzen dute; gainerakoetatik bereizitako piezek beren zentroa dute.\n"
" - Muntaketa bakoitza: zentro partekatu bakarra erabiltzen du objektu edo muntaketa osorako."
@@ -17144,7 +17252,7 @@ msgid "Detect narrow internal solid infills"
msgstr "Detektatu barruko betegarri solido estua"
msgid "This option will auto-detect narrow internal solid infill areas. If enabled, the concentric pattern will be used for the area to speed up printing. Otherwise, the rectilinear pattern will be used by default."
-msgstr "Aukera honek barruko betegarri solido estuko eremuak automatikoki detektatuko ditu. Gaituta badago, eremu horretan patroi zentrokidea erabiliko da inprimaketa azkartzeko. Bestela, patroi lerrozuzena erabiliko da lehenespenez."
+msgstr "Aukera honek barruko betegarri solido estuko eremuak automatikoki detektatuko ditu. Gaituta badago, eremu horretan patroi kontzentrikoa erabiliko da inprimaketa azkartzeko. Bestela, patroi lerrozuzena erabiliko da lehenespenez."
msgid "invalid value "
msgstr "balio baliogabea "
@@ -18703,7 +18811,7 @@ msgstr "YOLO (perfekzionista)"
# AI Translated
msgid "Top Surface Pattern"
-msgstr "Goiko gainazalaren patroia"
+msgstr "Goiko gainazaleko patroia"
msgid "Choose a slot for the selected color"
msgstr "Aukeratu zirrikitu bat hautatutako kolorearentzat"
@@ -19429,9 +19537,6 @@ msgstr "Inprimagailu fisikoa"
msgid "Print Host upload"
msgstr "Inprimatze-ostalariaren karga"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Hautatu sare-agentearen inplementazioa inprimagailuarekin komunikatzeko. Erabilgarri dauden agenteak abioan erregistratzen dira."
-
msgid "Select a Flashforge printer"
msgstr "Hautatu Flashforge inprimagailu bat"
@@ -20278,9 +20383,6 @@ msgstr "Ustekabeko zerbait gertatu da saioa hasten saiatzean; saiatu berriro."
msgid "User canceled."
msgstr "Erabiltzaileak bertan behera utzi du."
-msgid "Head diameter"
-msgstr "Buruaren diametroa"
-
msgid "Max angle"
msgstr "Gehieneko angelua"
@@ -21016,6 +21118,22 @@ msgstr ""
"Saihestu okertzea\n"
"Ba al zenekien ABS bezalako okertzeko joera duten materialak inprimatzean ohe beroaren tenperatura egoki igotzeak okertzeko probabilitatea murriztu dezakeela?"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "Geruza-altuera txikiegia da.\n"
+#~ "min_layer_height baliora ezarriko da\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "Geruza-altuerak Inprimagailuaren ezarpenak -> Estrusorea -> Geruza-altueraren mugak ataleko muga gainditzen du; horrek inprimatze-kalitateko arazoak sor ditzake."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Doitu automatikoki ezarritako barrutira?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Buruaren diametroa"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Geruza bakarreko inprimatze-ordena."
diff --git a/localization/i18n/fr/OrcaSlicer_fr.po b/localization/i18n/fr/OrcaSlicer_fr.po
index 2d0fb14b5c..fc58381106 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: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: Guislain Cyril, Thomas Lété\n"
@@ -4643,6 +4643,23 @@ msgstr "La température actuelle du caisson est supérieure à la température d
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "La température minimale du caisson (%d℃) est supérieure à la température cible du caisson (%d℃). La valeur minimale est le seuil à partir duquel l’impression démarre tandis que le caisson continue de chauffer vers la cible ; elle ne doit donc pas la dépasser. Elle sera limitée à la cible."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "La hauteur de couche est trop faible. Elle sera définie au minimum (%g mm)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "La hauteur de couche est en dehors des limites définies dans Paramètres de l’imprimante -> Extrudeur -> Limites de la hauteur de la couche, ce qui peut entraîner des problèmes de qualité d’impression."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "L’ajuster automatiquement à la limite (%g mm) ?"
+
+msgid "Adjust"
+msgstr "Ajuster"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4762,6 +4779,13 @@ msgstr ""
"Oui - Activer le générateur de parois Arachne\n"
"Non - Désactiver le générateur de parois Arachne et définir le mode [Déplacement] de la surface irrégulière"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Rayon de la bordure à oreilles"
+
+msgid "Brim width"
+msgstr "Largeur de la bordure"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "Le mode spirale ne fonctionne que lorsque le nombre de parois est 1, le support est désactivé, la détection d'agglomération par sondage est désactivée, les couches supérieures sont à 0, la densité de remplissage clairsemé est à 0 et le type de timelapse est traditionnel."
@@ -4835,7 +4859,7 @@ msgid "Calibrating the micro lidar"
msgstr "Calibrage du micro-Lidar"
msgid "Calibrating flow ratio"
-msgstr "Calibration du ratio de débit"
+msgstr "Calibration du rapport de débit"
msgid "Pause (nozzle temperature malfunction)"
msgstr "Pause (dysfonctionnement de la température de la buse)"
@@ -5016,6 +5040,14 @@ msgstr "Échec de la génération du G-code de calibration"
msgid "Calibration error"
msgstr "Erreur de la calibration"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Cette imprimante ne dispose pas du matériel requis par ce contrôle."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Ce contrôle n’est pas pris en charge sur cette imprimante."
+
# AI Translated
msgid "Network unavailable"
msgstr "Réseau indisponible"
@@ -5871,7 +5903,7 @@ msgstr "Volume :"
msgid "Size:"
msgstr "Taille :"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "Des conflits de chemins G-code ont été trouvés au niveau de la couche %d, z = %.2lfmm. Veuillez séparer davantage les objets en conflit (%s <-> %s)."
@@ -6052,6 +6084,10 @@ msgstr "Multi-appareils"
msgid "Project"
msgstr "Projet"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Appareil (Web)"
+
msgid "Yes"
msgstr "Oui"
@@ -7434,11 +7470,11 @@ msgstr "Erreur lors du chargement des shaders"
msgctxt "Layers"
msgid "Top"
-msgstr "Du haut"
+msgstr "Supérieur"
msgctxt "Layers"
msgid "Bottom"
-msgstr "Du bas"
+msgstr "Inférieur"
# AI Translated
msgid "Plugin Selection"
@@ -8120,21 +8156,21 @@ msgstr "Le répertoire pour le remplacement n'a pas été sélectionné"
msgid "Replaced with 3D files from directory:\n"
msgstr "Remplacé par des fichiers 3D depuis le répertoire :\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Ignoré %1% : même fichier.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ Ignoré %s : même fichier.\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Ignoré %1% : le fichier n'existe pas.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ Ignoré %s : le fichier n'existe pas.\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Ignoré %1% : échec du remplacement.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ Ignoré %s : échec du remplacement.\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Remplacé %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ Remplacé %s.\n"
msgid "Replaced volumes"
msgstr "Volumes remplacés"
@@ -8857,6 +8893,18 @@ msgstr "Si cette option est activée, vous pouvez envoyer une tâche à plusieur
msgid "Pop up to select filament grouping mode"
msgstr "Fenêtre contextuelle pour sélectionner le mode de regroupement des filaments"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Pages de plugins visibles"
+
+# AI Translated
+msgid "pages"
+msgstr "pages"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Nombre de pages de plugins affichées sous forme d’onglets fixes avant que les pages restantes ne soient regroupées dans un menu déroulant sur le dernier onglet."
+
msgid "Behaviour"
msgstr "Comportement"
@@ -9211,6 +9259,18 @@ msgstr "Afficher les préréglages non pris en charge"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Affiche les préréglages incompatibles ou non pris en charge dans les listes déroulantes d’imprimantes et de filaments. Ces préréglages ne peuvent pas être sélectionnés."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Expérimental) Utiliser les agents d’imprimante au lieu des hôtes d’impression"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Achemine les tâches d’impression des imprimantes non Bambu via les agents de plugin d’imprimante au lieu du flux classique d’envoi vers l’hôte d’impression.\n"
+"Lorsque cette option est désactivée, OrcaSlicer utilise l’ancien comportement de l’hôte d’impression."
+
msgid "Experimental Features"
msgstr "Fonctionnalités expérimentales"
@@ -9283,22 +9343,22 @@ msgid "DEV host: api-dev.bambu-lab.com/v1"
msgstr "Hôte DEV : api-dev.bambu-lab.com/v1"
msgid "QA host: api-qa.bambu-lab.com/v1"
-msgstr "Hôte AQ : api-qa.bambu-lab.com/v1"
+msgstr "Hôte QA : api-qa.bambu-lab.com/v1"
msgid "PRE host: api-pre.bambu-lab.com/v1"
-msgstr "Hébergeur PRE : api-pre.bambu-lab.com/v1"
+msgstr "Hôte PRE : api-pre.bambu-lab.com/v1"
msgid "Product host"
msgstr "Hôte du produit"
msgid "Debug save button"
-msgstr "bouton d'enregistrement de débogage"
+msgstr "Bouton d'enregistrement de debugage"
msgid "Save debug settings"
-msgstr "enregistrer les paramètres de débogage"
+msgstr "Enregistrer les paramètres de debugage"
msgid "Debug settings have been saved successfully!"
-msgstr "Les paramètres DEBUG ont été enregistrés avec succès !"
+msgstr "Les paramètres de debug ont été enregistrés avec succès !"
msgid "Cloud environment switched; please login again!"
msgstr "L'environnement Cloud a changé, veuillez vous reconnecter !"
@@ -9472,9 +9532,25 @@ msgstr "Préréglage utilisateur"
msgid "Preset Inside Project"
msgstr "Préréglage intégré au projet"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Copie dans ce préréglage toutes les valeurs héritées du préréglage parent et supprime le lien d’héritage. Les préréglages compatibles uniquement avec le parent peuvent devenir incompatibles."
+
msgid "Detach from parent"
msgstr "Détacher du parent"
+# AI Translated
+msgid "Unique preset"
+msgstr "Préréglage unique"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Préréglage parent"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Ce préréglage n’hérite d’aucun autre préréglage."
+
msgid "Name is unavailable."
msgstr "Le nom n'est pas disponible."
@@ -10211,27 +10287,11 @@ msgstr "Voulez-vous vraiment activer cette option ?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "Les motifs de remplissage sont généralement conçus pour gérer la rotation automatiquement afin d'assurer une impression correcte et d'atteindre les effets souhaités (ex. : Gyroïde, Cubique). La rotation du motif de remplissage clairsemé actuel peut entraîner un support insuffisant. Veuillez procéder avec précaution et vérifier soigneusement tout problème d'impression potentiel. Voulez-vous vraiment activer cette option ?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"La hauteur de couche est trop faible.\n"
-"Elle sera définie à min_layer_height\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "La hauteur de la couche dépasse la limite fixée dans Paramètres de l’imprimante -> Extrudeur -> Limites de la hauteur de la couche, ce qui peut entraîner des problèmes de qualité d’impression."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "S’ajuster automatiquement à la plage définie ?\n"
-
-msgid "Adjust"
-msgstr "Ajuster"
-
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."
-msgstr "Fonction expérimentale : Rétracter et couper le filament à une plus grande distance lors des changements de filament afin de minimiser le rinçage. Bien que cela puisse réduire considérablement le rinçage, cela peut également augmenter le risque de bouchage des buses ou d’autres complications d’impression."
+msgstr "Fonction expérimentale : Rétracter et couper le filament à une plus grande distance lors des changements de filament afin de minimiser la purge. Bien que cela puisse réduire considérablement la purge, cela peut également augmenter le risque de bouchage des buses ou d’autres complications d’impression."
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. Please use with the latest printer firmware."
-msgstr "Fonction expérimentale : Rétracter et couper le filament à une plus grande distance lors des changements de filament afin de minimiser l’affleurement. Bien que cela puisse réduire sensiblement l’affleurement, cela peut également augmenter le risque d’obstruction des buses ou d’autres complications d’impression. Veuillez utiliser le dernier micrologiciel de l’imprimante."
+msgstr "Fonction expérimentale : Rétracter et couper le filament à une plus grande distance lors des changements de filament afin de minimiser la purge. Bien que cela puisse réduire sensiblement la purge, cela peut également augmenter le risque d’obstruction des buses ou d’autres complications d’impression. Veuillez utiliser le dernier micrologiciel de l’imprimante."
msgid ""
"When recording timelapse without toolhead, it is recommended to add a \"Timelapse Wipe Tower\" \n"
@@ -10422,6 +10482,9 @@ msgstr "Mots clés réservés trouvés"
msgid "Setting Overrides"
msgstr "Forçage des réglages"
+msgid "Retraction when switching material"
+msgstr "Rétraction lors du changement de matériau"
+
msgid "Basic information"
msgstr "Informations de base"
@@ -10548,6 +10611,12 @@ msgstr "Profils de traitement compatibles"
msgid "Printable space"
msgstr "Espace imprimable"
+msgid "Printer Agent"
+msgstr "Agent d'imprimante"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Sélectionner l'implémentation de l'agent réseau pour la communication avec l'imprimante. Les agents disponibles sont enregistrés au démarrage."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10673,9 +10742,6 @@ msgstr "Limites de hauteur de couche"
msgid "Z-Hop"
msgstr "Saut en Z"
-msgid "Retraction when switching material"
-msgstr "Rétraction lors du changement de matériau"
-
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
"\n"
@@ -12010,6 +12076,10 @@ msgstr " est trop proche d'une zone d'exclusion. Cela va entraîner des collisio
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " est trop proche de la zone de détection d'agglomération, et des collisions seront causées.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " est partiellement en dehors de la zone imprimable et ne peut pas être imprimé.\n"
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "Les températures de buse sélectionnées sont incompatibles. La température de buse de chaque filament doit se situer dans la plage de température de buse recommandée des autres filaments. Sinon, un bouchage de la buse ou des dommages à l’imprimante peuvent survenir."
@@ -12323,9 +12393,6 @@ msgstr "Utiliser le 3MF au lieu du G-code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Activez ceci si l’imprimante accepte un fichier 3MF comme tâche d’impression. Lorsque cette option est activée, Orca Slicer envoie le fichier découpé au format .gcode.3mf au lieu d’un simple fichier .gcode."
-msgid "Printer Agent"
-msgstr "Agent d'imprimante"
-
msgid "Select the network agent implementation for printer communication."
msgstr "Sélectionner l'implémentation de l'agent réseau pour la communication avec l'imprimante."
@@ -12689,7 +12756,7 @@ msgstr ""
"Si réglée à 0, la largeur de ligne correspond à celle du remplissage plein interne."
msgid "Internal bridge flow ratio"
-msgstr "Ratio de débit du pont interne"
+msgstr "Rapport de débit du pont interne"
msgid ""
"This value governs the thickness of the internal bridge layer. This is the first layer over sparse infill so increasing it may increase strength and upper layer quality.\n"
@@ -12729,13 +12796,13 @@ msgstr ""
"Le débit réel du remplissage solide inférieur utilisé est calculé en multipliant cette valeur par le rapport de débit du filament et, s’il est défini, par le rapport de débit de l’objet."
msgid "Set other flow ratios"
-msgstr "Définir d'autres ratios de débit"
+msgstr "Définir d'autres rapports de débit"
msgid "Change flow ratios for other extrusion path types."
-msgstr "Modifier les ratios de débit pour d'autres types de chemin d'extrusion."
+msgstr "Modifier les rapports de débit pour d'autres types de chemin d'extrusion."
msgid "First layer flow ratio"
-msgstr "Ratio de débit de la première couche"
+msgstr "Rapport de débit de la première couche"
msgid ""
"This factor affects the amount of material on the first layer for the extrusion path roles listed in this section.\n"
@@ -12744,10 +12811,10 @@ msgid ""
msgstr ""
"Ce facteur affecte la quantité de matériau sur la première couche pour les rôles de chemin d'extrusion listés dans cette section.\n"
"\n"
-"Pour la première couche, le ratio de débit réel pour chaque rôle de chemin (n'affecte pas les bordures et les jupes) sera multiplié par cette valeur."
+"Pour la première couche, le rapport de débit réel pour chaque rôle de chemin (n'affecte pas les bordures et les jupes) sera multiplié par cette valeur."
msgid "Outer wall flow ratio"
-msgstr "Ratio de débit de la paroi extérieure"
+msgstr "Rapport de débit de la paroi extérieure"
msgid ""
"This factor affects the amount of material for outer walls.\n"
@@ -12756,10 +12823,10 @@ msgid ""
msgstr ""
"Ce facteur affecte la quantité de matériau pour les parois extérieures.\n"
"\n"
-"Le débit réel de la paroi extérieure est calculé en multipliant cette valeur par le ratio de débit du filament, et si défini, le ratio de débit de l'objet."
+"Le débit réel de la paroi extérieure est calculé en multipliant cette valeur par le rapport de débit du filament, et si défini, le rapport de débit de l'objet."
msgid "Inner wall flow ratio"
-msgstr "Ratio de débit de la paroi intérieure"
+msgstr "Rapport de débit de la paroi intérieure"
msgid ""
"This factor affects the amount of material for inner walls.\n"
@@ -12768,10 +12835,10 @@ msgid ""
msgstr ""
"Ce facteur affecte la quantité de matériau pour les parois intérieures.\n"
"\n"
-"Le débit réel de la paroi intérieure est calculé en multipliant cette valeur par le ratio de débit du filament, et si défini, le ratio de débit de l'objet."
+"Le débit réel de la paroi intérieure est calculé en multipliant cette valeur par le rapport de débit du filament, et si défini, le rapport de débit de l'objet."
msgid "Overhang flow ratio"
-msgstr "Ratio de débit de surplomb"
+msgstr "Rapport de débit de surplomb"
msgid ""
"This factor affects the amount of material for overhangs.\n"
@@ -12780,10 +12847,10 @@ msgid ""
msgstr ""
"Ce facteur affecte la quantité de matériau pour les surplombs.\n"
"\n"
-"Le débit réel de surplomb est calculé en multipliant cette valeur par le ratio de débit du filament, et si défini, le ratio de débit de l'objet."
+"Le débit réel de surplomb est calculé en multipliant cette valeur par le rapport de débit du filament, et si défini, le rapport de débit de l'objet."
msgid "Sparse infill flow ratio"
-msgstr "Ratio de débit du remplissage clairsemé"
+msgstr "Rapport de débit du remplissage clairsemé"
msgid ""
"This factor affects the amount of material for sparse infill.\n"
@@ -12792,10 +12859,10 @@ msgid ""
msgstr ""
"Ce facteur affecte la quantité de matériau pour le remplissage clairsemé.\n"
"\n"
-"Le débit réel du remplissage clairsemé est calculé en multipliant cette valeur par le ratio de débit du filament, et si défini, le ratio de débit de l'objet."
+"Le débit réel du remplissage clairsemé est calculé en multipliant cette valeur par le rapport de débit du filament, et si défini, le rapport de débit de l'objet."
msgid "Internal solid infill flow ratio"
-msgstr "Ratio de débit du remplissage solide interne"
+msgstr "Rapport de débit du remplissage solide interne"
msgid ""
"This factor affects the amount of material for internal solid infill.\n"
@@ -12804,10 +12871,10 @@ msgid ""
msgstr ""
"Ce facteur affecte la quantité de matériau pour le remplissage solide interne.\n"
"\n"
-"Le débit réel du remplissage solide interne est calculé en multipliant cette valeur par le ratio de débit du filament, et si défini, le ratio de débit de l'objet."
+"Le débit réel du remplissage solide interne est calculé en multipliant cette valeur par le rapport de débit du filament, et si défini, le rapport de débit de l'objet."
msgid "Gap fill flow ratio"
-msgstr "Ratio de débit du remplissage des espaces"
+msgstr "Rapport de débit du remplissage des espaces"
msgid ""
"This factor affects the amount of material for filling the gaps.\n"
@@ -12816,10 +12883,10 @@ msgid ""
msgstr ""
"Ce facteur affecte la quantité de matériau pour le remplissage des espaces.\n"
"\n"
-"Le débit réel du remplissage des espaces est calculé en multipliant cette valeur par le ratio de débit du filament, et si défini, le ratio de débit de l'objet."
+"Le débit réel du remplissage des espaces est calculé en multipliant cette valeur par le rapport de débit du filament, et si défini, le rapport de débit de l'objet."
msgid "Support flow ratio"
-msgstr "Ratio de débit des supports"
+msgstr "Rapport de débit des supports"
msgid ""
"This factor affects the amount of material for support.\n"
@@ -12828,10 +12895,10 @@ msgid ""
msgstr ""
"Ce facteur affecte la quantité de matériau pour les supports.\n"
"\n"
-"Le débit réel des supports est calculé en multipliant cette valeur par le ratio de débit du filament, et si défini, le ratio de débit de l'objet."
+"Le débit réel des supports est calculé en multipliant cette valeur par le rapport de débit du filament, et si défini, le rapport de débit de l'objet."
msgid "Support interface flow ratio"
-msgstr "Ratio de débit de l'interface de support"
+msgstr "Rapport de débit de l'interface de support"
msgid ""
"This factor affects the amount of material for the support interface.\n"
@@ -12840,7 +12907,7 @@ msgid ""
msgstr ""
"Ce facteur affecte la quantité de matériau pour l'interface de support.\n"
"\n"
-"Le débit réel de l'interface de support est calculé en multipliant cette valeur par le ratio de débit du filament, et si défini, le ratio de débit de l'objet."
+"Le débit réel de l'interface de support est calculé en multipliant cette valeur par le rapport de débit du filament, et si défini, le rapport de débit de l'objet."
msgid "Precise wall"
msgstr "Parois précises"
@@ -13000,9 +13067,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Vitesse des ponts internes. Si la valeur est exprimée en pourcentage, elle sera calculée sur la base de la vitesse du pont. La valeur par défaut est 150%."
-msgid "Brim width"
-msgstr "Largeur de la bordure"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Distance du modèle à la ligne de bord la plus externe"
@@ -13043,10 +13107,10 @@ msgid ""
"\n"
"If your current setup already works well, enabling it may be unnecessary and can cause the brim to fuse with upper layers."
msgstr ""
-"Lorsqu'il est activé, le bordure est aligné avec la géométrie du périmètre de la première couche après l'application de la compensation du pied d'éléphant.\n"
-"Cette option est destinée aux cas où la compensation du pied d'éléphant modifie considérablement l’empreinte de la première couche.\n"
+"Lorsqu'il est activé, la bordure est alignée avec la géométrie du périmètre de la première couche après l'application de la compensation de la patte d'éléphant.\n"
+"Cette option est destinée aux cas où la compensation de la patte d'éléphant modifie considérablement l’empreinte de la première couche.\n"
"\n"
-"Si votre configuration actuelle fonctionne déjà bien, son activation peut être inutile et peut provoquer la fusion du bordure avec les couches supérieures."
+"Si votre configuration actuelle fonctionne déjà bien, son activation peut être inutile et peut provoquer la fusion de la bordure avec les couches supérieures."
msgid "Combine brims"
msgstr "Combiner les bordures"
@@ -13082,6 +13146,14 @@ msgstr ""
"La géométrie sera décimée avant de détecter les angles vifs. Ce paramètre indique la longueur minimale de l’écart pour la décimation.\n"
"0 pour désactiver"
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Bordure à oreilles sur le contour extérieur uniquement"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Génère des oreilles de souris uniquement sur le contour extérieur du modèle, en excluant les trous et les sections fermées."
+
msgid "upward compatible machine"
msgstr "machine à compatibilité ascendante"
@@ -13643,7 +13715,7 @@ msgid ""
msgstr ""
"Le matériau peut présenter un changement volumétrique après le passage de l’état fondu à l’état cristallin. Ce paramètre modifie proportionnellement tous les débits d’extrusion de ce filament dans le G-code. La valeur recommandée est comprise entre 0,95 et 1,05. Vous pouvez peut-être ajuster cette valeur pour obtenir une belle surface plate lorsqu’il y a un léger débordement ou un sous-débordement.\n"
"\n"
-"Le ratio de débit de l’objet final est cette valeur multipliée par le ratio de débit du filament."
+"Le rapport de débit de l’objet final est cette valeur multipliée par le rapport de débit du filament."
msgid "Enable pressure advance"
msgstr "Activer la Pressure Advance"
@@ -14236,6 +14308,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Gyroïde"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Facteur de lissage du remplissage"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Contrôle le degré d’arrondi des angles du remplissage. 0% conserve le tracé anguleux d’origine, tandis que 100% produit les courbes les plus amples possibles entre les lignes de remplissage adjacentes."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Il s'agit de l'accélération de la surface supérieure du remplissage. Utiliser une valeur plus petite pourrait améliorer la qualité de la surface supérieure"
@@ -14774,6 +14854,14 @@ msgstr "Avec quel type de G-code l'imprimante est-elle compatible."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "Omettre le bloc de configuration du G-code"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "N’écrit pas le CONFIG_BLOCK (les paires clé/valeur de la configuration du logiciel de découpe) dans le fichier G-code. Cela peut aider avec les imprimantes dont le firmware plante lors de l’analyse de ces lignes de commentaire (par ex. Anycubic go-klipper). Remarque : le fichier G-code ne contiendra plus les réglages du logiciel de découpe, sa réimportation dans OrcaSlicer ne restaurera donc pas la configuration."
+
msgid "Pellet Modded Printer"
msgstr "Imprimante à pellets"
@@ -15821,6 +15909,14 @@ msgstr "Rétraction longue lors du changement d'extrudeur"
msgid "Retraction distance when extruder change"
msgstr "Distance de rétraction lors du changement d'extrudeur"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Longueur de rétraction (Changement d’outil)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Lorsque la rétraction est déclenchée avant un changement d’outil, le filament est rétracté de la quantité spécifiée (la longueur est mesurée sur le filament brut, avant son entrée dans l’extrudeur)."
+
msgid "Z-hop height"
msgstr "Hauteur du saut en Z"
@@ -15914,6 +16010,10 @@ msgstr "Longueur supplémentaire"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Lorsque la rétraction est compensée après le mouvement de déplacement, l’extrudeuse poussera cette quantité supplémentaire de filament. Ce paramètre est rarement nécessaire."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Longueur supplémentaire à la reprise (Changement d’outil)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Lorsque la rétraction est compensée après le changement d’outil, l’extrudeur poussera cette quantité supplémentaire de filament."
@@ -16012,11 +16112,11 @@ msgstr ""
"Si l’angle maximal à l’intérieur de la boucle périmétrique dépasse cette valeur (indiquant l’absence d’angles vifs), une couture en biseau sera utilisée. La valeur par défaut est de 155°."
msgid "Conditional overhang threshold"
-msgstr "Seuil de dépassement conditionnel"
+msgstr "Seuil de surplomb conditionnel"
#, no-c-format, no-boost-format
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 degree of overhang is estimated."
-msgstr "Cette option détermine le seuil de surplomb pour l’application des coutures en écharpe. Si la partie non soutenue du périmètre est inférieure à ce seuil, des coutures en biseau seront appliquées. Le seuil par défaut est fixé à 40 % de la largeur de la paroi extérieure. Pour des raisons de performance, le degré de surplomb est estimé."
+msgstr "Cette option détermine le seuil de surplomb pour l’application des coutures en biseau. Si la partie non soutenue du périmètre est inférieure à ce seuil, des coutures en biseau seront appliquées. Le seuil par défaut est fixé à 40 % de la largeur de la paroi extérieure. Pour des raisons de performance, le degré de surplomb est estimé."
msgid "Scarf joint speed"
msgstr "Vitesse de la couture en biseau"
@@ -16025,7 +16125,7 @@ msgid "This option sets the printing speed for scarf joints. It is recommended t
msgstr "Cette option définit la vitesse d’impression des coutures en biseau. Il est recommandé d’imprimer les coutures en biseau à une vitesse lente (moins de 100 mm/s). Il est également conseillé d’activer l’option « Lissage de la vitesse d’extrusion » si la vitesse définie varie de manière significative par rapport à la vitesse des parois extérieures ou intérieures. Si la vitesse spécifiée ici est supérieure à la vitesse des parois extérieures ou intérieures, l’imprimante prendra par défaut la plus lente des deux vitesses. Lorsqu’elle est spécifiée sous forme de pourcentage (par exemple, 80 %), la vitesse est calculée sur la base de la vitesse de la paroi extérieure ou intérieure. La valeur par défaut est fixée à 100 %."
msgid "Scarf joint flow ratio"
-msgstr "Ratio de débit de la couture en biseau"
+msgstr "Rapport de débit de la couture en biseau"
msgid "This factor affects the amount of material for scarf joints."
msgstr "Ce facteur influe sur la quantité de matériau pour les coutures en biseau."
@@ -16234,7 +16334,7 @@ msgstr "Taux de débit de la finition en spirale"
#, no-c-format, no-boost-format
msgid "Sets the finishing flow ratio while ending the spiral. Normally the spiral transition scales the flow ratio from 100% to 0% during the last loop which can in some cases lead to under extrusion at the end of the spiral."
-msgstr "Définit le ratio de débit de finition lors de la fin de la spirale. Normalement, la transition de la spirale fait passer le taux de débit de 100% à 0% au cours de la dernière boucle, ce qui peut dans certains cas entraîner une sous-extrusion à la fin de la spirale."
+msgstr "Définit le rapport de débit de finition lors de la fin de la spirale. Normalement, la transition de la spirale fait passer le taux de débit de 100% à 0% au cours de la dernière boucle, ce qui peut dans certains cas entraîner une sous-extrusion à la fin de la spirale."
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, a prime tower is required for smooth mode to wipe the nozzle."
msgstr "Si le mode fluide ou traditionnel est sélectionné, une vidéo en timelapse sera générée pour chaque impression. À chaque couche imprimée, un instantané est pris avec la caméra intégrée. Tous ces instantanés seront assemblés dans une vidéo timelapse une fois l'impression terminée. Si le mode lisse est sélectionné, l'extrudeur se déplace vers la goulotte d'évacuation à chaque couche imprimée, puis prend un cliché. Étant donné que le filament fondu peut s'échapper de la buse pendant la prise de vue, une tour d’amorçage est requise en mode lisse pour essuyer la buse."
@@ -16326,6 +16426,14 @@ msgstr "Changement d’outil sur la tour d’essuyage"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Force la tête d’outil à se déplacer vers la tour d’essuyage avant d’émettre la commande de changement d’outil (Tx). Pertinent uniquement pour les imprimantes multi-extrudeurs (à têtes d’outil multiples) utilisant une tour d’essuyage de type 2. Par défaut, Orca omet ce déplacement sur les machines à têtes d’outil multiples car le firmware gère le changement de tête, ce qui peut entraîner l’émission de la commande Tx au-dessus de la pièce imprimée. Activez cette option si vous préférez que le changement d’outil soit toujours émis au-dessus de la tour d’essuyage."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Attendre la température sur la tour d’essuyage"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Prend le nouvel outil sans attendre qu’il atteigne la température d’impression, se déplace vers la tour d’essuyage et y attend la température, juste avant la purge. Le suintement dû à la chauffe se dépose sur la tour plutôt que sur le modèle, et le déplacement se superpose à la chauffe. Uniquement pertinent pour les imprimantes multi-extrudeurs (multi-têtes) utilisant une tour d’essuyage de type 2. Le firmware ou la macro de changement d’outil ne doivent pas attendre la température eux-mêmes. Lorsque cette option est désactivée, l’attente de température est émise juste après la commande de changement d’outil."
+
msgid "No sparse layers (beta)"
msgstr "Pas de couches éparses (beta)"
@@ -18217,7 +18325,7 @@ msgid "Record Factor"
msgstr "Enregistrer le facteur"
msgid "We found the best flow ratio for you"
-msgstr "Nous avons trouvé le meilleur ratio de débit pour vous"
+msgstr "Nous avons trouvé le meilleur rapport de débit pour vous"
msgid "Flow Ratio"
msgstr "Rapport de débit"
@@ -19542,9 +19650,6 @@ msgstr "Imprimante Physique"
msgid "Print Host upload"
msgstr "Envoi vers l’imprimante hôte"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Sélectionner l'implémentation de l'agent réseau pour la communication avec l'imprimante. Les agents disponibles sont enregistrés au démarrage."
-
msgid "Select a Flashforge printer"
msgstr "Sélectionner une imprimante Flashforge"
@@ -20392,9 +20497,6 @@ msgstr "Un événement inattendu s’est produit lors de la connexion, veuillez
msgid "User canceled."
msgstr "L’utilisateur a annulé."
-msgid "Head diameter"
-msgstr "Diamètre de la tête"
-
msgid "Max angle"
msgstr "Angle maximal"
@@ -21176,6 +21278,22 @@ msgstr ""
"Éviter la déformation\n"
"Saviez-vous que lors de l’impression de matériaux susceptibles de se 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 ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "La hauteur de couche est trop faible.\n"
+#~ "Elle sera définie à min_layer_height\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "La hauteur de la couche dépasse la limite fixée dans Paramètres de l’imprimante -> Extrudeur -> Limites de la hauteur de la couche, ce qui peut entraîner des problèmes de qualité d’impression."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "S’ajuster automatiquement à la plage définie ?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Diamètre de la tête"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Ordre d’impression au sein d’une même couche"
diff --git a/localization/i18n/hu/OrcaSlicer_hu.po b/localization/i18n/hu/OrcaSlicer_hu.po
index bd4a9915c8..9f8a849884 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: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"Language: hu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -4739,6 +4739,23 @@ msgstr "A kamra aktuális hőmérséklete magasabb az anyag biztonságos hőmér
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "A minimális kamrahőmérséklet (%d℃) magasabb a cél kamrahőmérsékletnél (%d℃). A minimális érték az a küszöb, amelynél a nyomtatás elindul, miközben a kamra tovább melegszik a célérték felé, ezért nem haladhatja meg azt. Az érték a célértékre lesz korlátozva."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "A rétegmagasság túl kicsi. A minimumra lesz állítva (%g mm)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "A rétegmagasság a Nyomtatóbeállítások -> Extruder -> Rétegmagasság limitek menüpontban megadott határértékeken kívül esik, ez minőségbeli problémákat okozhat a nyomtatás során."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Szeretnéd automatikusan a határértékre (%g mm) igazítani?"
+
+msgid "Adjust"
+msgstr "Módosítás"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4858,6 +4875,13 @@ msgstr ""
"Igen - Engedélyezd az Arachne falgenerátort\n"
"Nem - Tiltsd le az Arachne falgenerátort, majd állítsd a barázdált felületet [Eltolás] módra"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Peremfül sugara"
+
+msgid "Brim width"
+msgstr "Perem szélessége"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "A spirál mód csak akkor működik, ha a falhurkok száma 1, a támasz és a szondázásos csomósodásészlelés ki van kapcsolva, a felső héjrétegek száma 0, a kitöltés sűrűsége 0, a Timelapse típusa pedig hagyományos."
@@ -5112,6 +5136,14 @@ msgstr "Nem sikerült létrehozni a kalibrációs G-kódot"
msgid "Calibration error"
msgstr "Kalibrációs hiba"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Ez a nyomtató nincs felszerelve a vezérlőelemhez szükséges hardverrel."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Ez a vezérlőelem nem támogatott ezen a nyomtatón."
+
# AI Translated
msgid "Network unavailable"
msgstr "A hálózat nem érhető el"
@@ -5971,7 +6003,7 @@ msgstr "Térfogat:"
msgid "Size:"
msgstr "Méret:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "G-kód útvonalütközés található a(z) %d. rétegen, Z = %.2lfmm. Helyezd távolabb egymástól az ütköző objektumokat (%s <-> %s)."
@@ -6153,6 +6185,10 @@ msgstr "Több eszköz"
msgid "Project"
msgstr "Projekt"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Nyomtató (Web)"
+
msgid "Yes"
msgstr "Igen"
@@ -8244,21 +8280,21 @@ msgstr "A cseréhez nem lett mappa kiválasztva"
msgid "Replaced with 3D files from directory:\n"
msgstr "Cserélve a mappából származó 3D fájlokra:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Kihagyva %1%: azonos fájl.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ %s kihagyva: azonos fájl.\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Kihagyva %1%: a fájl nem létezik.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ %s kihagyva: a fájl nem létezik.\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Kihagyva %1%: a csere sikertelen.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ %s kihagyva: a csere sikertelen.\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Lecserélve: %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔%s lecserélve.\n"
msgid "Replaced volumes"
msgstr "Lecserélt térfogatok"
@@ -8993,6 +9029,18 @@ msgstr "Ezzel az opcióval egyszerre több eszközre küldhetsz feladatot és t
msgid "Pop up to select filament grouping mode"
msgstr "Felugró ablak a filamentcsoportosítási mód kiválasztásához"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Látható bővítményoldalak"
+
+# AI Translated
+msgid "pages"
+msgstr "oldal"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "A rögzített fülként megjelenő bővítményoldalak száma; a fennmaradó oldalak az utolsó fülön lenyíló listába kerülnek."
+
msgid "Behaviour"
msgstr "Viselkedés"
@@ -9362,6 +9410,18 @@ msgstr "Nem támogatott beállítások megjelenítése"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Megjeleníti a nem kompatibilis vagy nem támogatott beállításokat a nyomtató- és filamentlegördülő listákban. Ezek a beállítások nem választhatók ki."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Kísérleti) Nyomtatóügynökök használata nyomtatókiszolgálók helyett"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"A nem Bambu nyomtatók nyomtatási feladatait a nyomtató bővítményügynökein keresztül továbbítja a klasszikus nyomtatókiszolgálóra való feltöltés helyett.\n"
+"Ha ki van kapcsolva, az OrcaSlicer a régi nyomtatókiszolgáló-viselkedést használja."
+
# AI Translated
msgid "Experimental Features"
msgstr "Kísérleti funkciók"
@@ -9632,9 +9692,25 @@ msgstr "Felhasználói beállítás"
msgid "Preset Inside Project"
msgstr "Projekt a beállításon belül"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Az összes örökölt értéket átmásolja a szülő előbeállításból ebbe az előbeállításba, és megszünteti az öröklési kapcsolatot. A csak a szülővel kompatibilis előbeállítások támogatása megszűnhet."
+
msgid "Detach from parent"
msgstr "Leválasztás a szülőről"
+# AI Translated
+msgid "Unique preset"
+msgstr "Önálló előbeállítás"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Szülő előbeállítás"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Ez az előbeállítás nem örököl másik előbeállításból."
+
msgid "Name is unavailable."
msgstr "A név nem elérhető."
@@ -10376,22 +10452,6 @@ msgstr "Biztos, hogy engedélyezed ezt az opciót?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "A kitöltési minták általában maguk kezelik a forgatást a megfelelő nyomtatás és a kívánt hatás elérése érdekében (pl. Gyroid, Cubic). A jelenlegi kitöltési minta elforgatása elégtelen alátámasztáshoz vezethet. Kérlek, járj el körültekintően, és alaposan ellenőrizd a lehetséges nyomtatási problémákat. Biztos, hogy engedélyezed ezt a beállítást?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"A rétegmagasság túl kicsi.\n"
-"A rendszer a min_layer_height értékre állítja.\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "A rétegmagasság meghaladja a Nyomtatóbeállítások -> Extruder -> Rétegmagasság limitek menüpontban megadott értéket, ez minőségbeli problémákat okozhat a nyomtatás során."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Szeretnéd az értéket automatikusan a beállított tartományhoz igazítani?\n"
-
-msgid "Adjust"
-msgstr "Módosítás"
-
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."
msgstr "Kísérleti funkció: Filamentcsere közben nagyobb távolságon történő visszahúzás és elvágás az öblítés minimalizálása érdekében. Bár ez jelentősen csökkentheti az öblítés mértékét, növelheti a fúvóka eltömődésének vagy más nyomtatási problémák kockázatát."
@@ -10587,6 +10647,9 @@ msgstr "Foglalt kulcsszavakat találtunk"
msgid "Setting Overrides"
msgstr "Beállítások felülbírálása"
+msgid "Retraction when switching material"
+msgstr "Visszahúzás anyagváltáskor"
+
msgid "Basic information"
msgstr "Alapinformációk"
@@ -10720,6 +10783,12 @@ msgstr "Kompatibilis folyamatprofilok"
msgid "Printable space"
msgstr "Nyomtatási terület"
+msgid "Printer Agent"
+msgstr "Nyomtatóügynök"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Válaszd ki a nyomtatóval való kommunikációhoz használt hálózati ügynököt. Az elérhető ügynököket indításkor regisztrálja a rendszer."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10845,9 +10914,6 @@ msgstr "Rétegmagasság limitek"
msgid "Z-Hop"
msgstr "Z-emelés"
-msgid "Retraction when switching material"
-msgstr "Visszahúzás anyagváltáskor"
-
# AI Translated
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
@@ -12200,6 +12266,10 @@ msgstr " túl közel van a tiltott területhez, a nyomtatás során előfordulha
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " túl közel van a csomósodásészlelési területhez, és ez ütközést fog okozni.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " részben a nyomtatható területen kívül esik, ezért nem nyomtatható ki.\n"
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "A kiválasztott fúvóka hőmérsékletek nem kompatibilisek. Mindegyik filament fúvóka hőmérsékletének a többi filament ajánlott fúvóka hőmérsékleti tartományába kell esnie. Ellenkező esetben a fúvóka eltömődhet vagy a nyomtató megsérülhet."
@@ -12530,9 +12600,6 @@ msgstr "3MF használata G-kód helyett"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Kapcsold be, ha a nyomtató 3MF fájlt fogad el nyomtatási feladatként. Bekapcsolva az Orca Slicer a szeletelt fájlt .gcode.3mf formátumban küldi el egyszerű .gcode fájl helyett."
-msgid "Printer Agent"
-msgstr "Nyomtatóügynök"
-
msgid "Select the network agent implementation for printer communication."
msgstr "Válaszd ki a nyomtató kommunikációjához használt hálózati ügynök implementációját."
@@ -13220,9 +13287,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "A belső hidak sebessége. Ha az érték százalékban van megadva, a bridge_speed alapján lesz kiszámítva. Az alapértelmezett érték 150%."
-msgid "Brim width"
-msgstr "Perem szélessége"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "A modell és a legkülső peremvonal közötti távolság"
@@ -13302,6 +13366,14 @@ msgstr ""
"Az éles szögek észlelése előtt a geometria egyszerűsítve lesz. Ez a paraméter a leegyszerűsítésnél figyelembe vett eltérés minimális hosszát adja meg.\n"
"0 értékkel kikapcsolható."
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Peremfülek csak kívül"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Egérfüleket csak a modell külső kontúrján hoz létre, a furatokat és a zárt szakaszokat kihagyva."
+
msgid "upward compatible machine"
msgstr "felfelé kompatibilis gép"
@@ -14475,6 +14547,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Gyroid"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Kitöltés simítási tényezője"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Azt szabályozza, hogy a kitöltés sarkai mennyire legyenek lekerekítve. A 0% megtartja az eredeti éles útvonalat, a 100% pedig a lehető legnagyobb íveket hozza létre a szomszédos kitöltővonalak között."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "A felső felületi kitöltés gyorsulása. Alacsonyabb érték használata javíthatja a felső felület minőségét"
@@ -15017,6 +15097,14 @@ msgstr "Milyen G-kóddal kompatibilis a nyomtató."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "G-code konfigurációs blokk kihagyása"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "Nem írja a CONFIG_BLOCK blokkot (a szeletelő beállításainak kulcs/érték párjait) a G-code fájlba. Ez segíthet azoknál a nyomtatóknál, amelyek firmware-e összeomlik ezeknek a megjegyzéssoroknak a feldolgozásakor (pl. Anycubic go-klipper). Megjegyzés: a G-code fájl így már nem tartalmazza a szeletelő beállításait, ezért az OrcaSlicerbe való visszaimportálás nem állítja vissza a konfigurációt."
+
msgid "Pellet Modded Printer"
msgstr "Granulátumos módosított nyomtató"
@@ -16079,6 +16167,14 @@ msgstr "Hosszú visszahúzás extruderváltáskor"
msgid "Retraction distance when extruder change"
msgstr "Visszahúzási távolság extruderváltáskor"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Visszahúzás hossza (Eszközváltás)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Amikor a visszahúzás eszközváltás előtt aktiválódik, a filament a megadott értékkel húzódik vissza (a hossz a nyers filamenten mérve, mielőtt az az extruderbe kerülne)."
+
msgid "Z-hop height"
msgstr "Z-emelés magassága"
@@ -16172,6 +16268,10 @@ msgstr "Extra hossz újraindításkor"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Amikor a visszahúzás kompenzálásra kerül utazási mozgás után, az extruder ezt a további szálmennyiséget nyomja előre. Erre a beállításra ritkán van szükség."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Extra hossz újraindításkor (Eszközváltás)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Amikor a visszahúzás kompenzálásra kerül szerszámváltás után, az extruder ezt a további szálmennyiséget nyomja előre."
@@ -16588,6 +16688,14 @@ msgstr "Szerszámcsere a törlőtoronyban"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "A szerszámcsere parancs (Tx) kiadása előtt a törlőtoronyhoz mozgatja a szerszámfejet. Csak a 2-es típusú törlőtornyot használó többextruderes (több szerszámfejes) nyomtatóknál van jelentősége. Az Orca alapértelmezés szerint kihagyja ezt a mozgást a több szerszámfejes gépeknél, mert a fejcserét a firmware kezeli. Emiatt azonban előfordulhat, hogy a Tx parancsot a nyomtatott tárgy felett adja ki. Kapcsold be ezt a beállítást, ha azt szeretnéd, hogy a szerszámcsere mindig a törlőtorony felett történjen."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Várakozás a hőmérsékletre a törlőtornyon"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Felveszi az új szerszámot anélkül, hogy megvárná a nyomtatási hőmérséklet elérését, a törlőtoronyhoz áll, és ott várja meg a hőmérsékletet, közvetlenül az öblítés előtt. A felfűtés közben kiszivárgó anyag a toronyra kerül a modell helyett, a mozgás pedig átfedésben van a fűtéssel. Csak több extruderes (több szerszámfejes) nyomtatóknál releváns, amelyek 2-es típusú törlőtornyot használnak. A firmware vagy a szerszámváltó makró nem várhat magától a hőmérsékletre. Ha ki van kapcsolva, a hőmérsékletre várakozás közvetlenül a szerszámváltó parancs után kerül kiadásra."
+
msgid "No sparse layers (beta)"
msgstr "Nincsenek ritka rétegek (béta)"
@@ -19847,9 +19955,6 @@ msgstr "Fizikai nyomtató"
msgid "Print Host upload"
msgstr "Feltöltés a nyomtatóra"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Válaszd ki a nyomtatóval való kommunikációhoz használt hálózati ügynököt. Az elérhető ügynököket indításkor regisztrálja a rendszer."
-
# AI Translated
msgid "Select a Flashforge printer"
msgstr "Válassz egy Flashforge nyomtatót"
@@ -20791,9 +20896,6 @@ msgstr "Bejelentkezés közben váratlan hiba történt, próbáld újra."
msgid "User canceled."
msgstr "Felhasználó által megszakítva."
-msgid "Head diameter"
-msgstr "Fej átmérő"
-
msgid "Max angle"
msgstr "Maximális szög"
@@ -21607,6 +21709,22 @@ msgstr ""
"Kunkorodás elkerülése\n"
"Tudtad, hogy a kunkorodásra hajlamos anyagok (például ABS) nyomtatásakor az asztal hőmérsékletének növelése csökkentheti a kunkorodás valószínűségét?"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "A rétegmagasság túl kicsi.\n"
+#~ "A rendszer a min_layer_height értékre állítja.\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "A rétegmagasság meghaladja a Nyomtatóbeállítások -> Extruder -> Rétegmagasság limitek menüpontban megadott értéket, ez minőségbeli problémákat okozhat a nyomtatás során."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Szeretnéd az értéket automatikusan a beállított tartományhoz igazítani?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Fej átmérő"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Nyomtatási sorrend egyetlen rétegen belül."
diff --git a/localization/i18n/it/OrcaSlicer_it.po b/localization/i18n/it/OrcaSlicer_it.po
index 7be197c578..bc36e08d25 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: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -4741,6 +4741,23 @@ msgstr "L'attuale temperatura della camera è superiore alla temperatura di sicu
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "La temperatura minima della camera (%d℃) è superiore alla temperatura target della camera (%d℃). Il valore minimo è la soglia alla quale inizia la stampa mentre la camera continua a riscaldarsi verso il target, quindi non dovrebbe superarlo. Verrà limitato al valore target."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "L'altezza dello strato è troppo piccola. Sarà impostata al valore minimo (%g mm)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "L'altezza dello strato è fuori dai limiti impostati in Impostazioni stampante -> Estrusore -> Limiti Altezza Strato, ciò potrebbe causare problemi di qualità di stampa."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Regolarla automaticamente al limite (%g mm)?"
+
+msgid "Adjust"
+msgstr "Regola"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4860,6 +4877,13 @@ msgstr ""
"Sì - Abilita generatore di pareti Arachne\n"
"No - Disabilita generatore di pareti Arachne e imposta la modalità [Spostamento] della Superficie ruvida"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Raggio della tesa ad orecchio"
+
+msgid "Brim width"
+msgstr "Larghezza tesa"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "La modalità spirale funziona solo quando i perimetri sono 1, il supporto è disabilitato, il rilevamento degli ammassi tramite sondaggio è disabilitato, gli strati superiori della shell sono 0, la densità del riempimento sparso è 0 e il tipo di timelapse è tradizionale."
@@ -5114,6 +5138,14 @@ msgstr "Impossibile generare G-code di calibrazione"
msgid "Calibration error"
msgstr "Errore di calibrazione"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Questa stampante non dispone dell'hardware richiesto da questo controllo."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Questo controllo non è supportato su questa stampante."
+
# AI Translated
msgid "Network unavailable"
msgstr "Rete non disponibile"
@@ -5973,7 +6005,7 @@ msgstr "Volume:"
msgid "Size:"
msgstr "Dimensione:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "Sono stati trovati conflitti di percorsi nel G-code sullo strato %d, Z = %.2lfmm. Si prega di separare gli oggetti in conflitto (%s <-> %s)."
@@ -6154,6 +6186,10 @@ msgstr "Multi-dispositivo"
msgid "Project"
msgstr "Progetto"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Dispositivo (Web)"
+
msgid "Yes"
msgstr "Sì"
@@ -8244,21 +8280,21 @@ msgstr "La directory per la sostituzione non è stata selezionata"
msgid "Replaced with 3D files from directory:\n"
msgstr "Sostituito con file 3D dalla directory:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Saltato %1%: stesso file.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ Saltato %s: stesso file.\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Saltato %1%: il file non esiste.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ Saltato %s: il file non esiste.\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Saltato %1%: sostituzione fallita.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ Saltato %s: sostituzione fallita.\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Sostituito %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ Sostituito %s.\n"
msgid "Replaced volumes"
msgstr "Volumi sostituiti"
@@ -8995,6 +9031,18 @@ msgstr "Abilitando questa opzione, puoi inviare un'attività a più dispositivi
msgid "Pop up to select filament grouping mode"
msgstr "Popup per selezionare la modalità di raggruppamento filamenti"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Pagine dei plugin visibili"
+
+# AI Translated
+msgid "pages"
+msgstr "pagine"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Numero di pagine dei plugin mostrate come schede fisse prima che le pagine rimanenti vengano raccolte in un menu a discesa nell'ultima scheda."
+
msgid "Behaviour"
msgstr "Comportamento"
@@ -9381,6 +9429,18 @@ msgstr "Mostra i profili non supportati"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Mostra i profili incompatibili/non supportati negli elenchi a discesa di stampante e filamento. Questi profili non possono essere selezionati."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Sperimentale) Usa gli agenti stampante invece degli host di stampa"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Instrada i lavori di stampa delle stampanti non Bambu attraverso gli agenti plugin della stampante invece del classico flusso di caricamento sull'host di stampa.\n"
+"Quando è disattivato, OrcaSlicer usa il comportamento legacy dell'host di stampa."
+
# AI Translated
msgid "Experimental Features"
msgstr "Funzionalità sperimentali"
@@ -9650,9 +9710,25 @@ msgstr "Profilo utente"
msgid "Preset Inside Project"
msgstr "Profilo interno al progetto"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Copia in questo profilo tutti i valori ereditati dal profilo padre e rimuove la relazione di ereditarietà. I profili compatibili solo con il profilo padre potrebbero non essere più supportati."
+
msgid "Detach from parent"
msgstr "Scollega dal genitore"
+# AI Translated
+msgid "Unique preset"
+msgstr "Profilo unico"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Profilo padre"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Questo profilo non eredita da un altro profilo."
+
msgid "Name is unavailable."
msgstr "Nome non disponibile."
@@ -10392,22 +10468,6 @@ msgstr "Sei sicuro di voler abilitare questa opzione?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "I pattern di riempimento sono generalmente progettati per gestire automaticamente la rotazione per garantire una stampa corretta e ottenere gli effetti desiderati (ad es. Gyroid, Cubico). La rotazione del pattern di riempimento sparso corrente potrebbe portare a un supporto insufficiente. Procedere con cautela e verificare accuratamente eventuali problemi di stampa. Sei sicuro di voler abilitare questa opzione?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"L'altezza dello strato è troppo piccola.\n"
-"Sarà impostato su min_layer_height\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "L'altezza dello strato supera il limite in Impostazioni stampante -> Estrusore -> Limiti Altezza Strato. Ciò potrebbe causare problemi di qualità di stampa."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Regolare automaticamente l'intervallo impostato?\n"
-
-msgid "Adjust"
-msgstr "Regola"
-
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."
msgstr "Funzionalità sperimentale: ritrazione e taglio del filamento a una distanza maggiore durante i cambi di filamento per ridurre al minimo lo spurgo. Sebbene possa ridurre notevolmente lo spurgo, può anche aumentare il rischio di intasamento degli ugelli o di altre complicazioni di stampa."
@@ -10603,6 +10663,9 @@ msgstr "Parole chiave riservate trovate"
msgid "Setting Overrides"
msgstr "Sovrascrivi impostazioni"
+msgid "Retraction when switching material"
+msgstr "Retrazione quando si cambia materiale"
+
msgid "Basic information"
msgstr "Informazioni di base"
@@ -10734,6 +10797,12 @@ msgstr "Profili di processo compatibili"
msgid "Printable space"
msgstr "Spazio di stampa"
+msgid "Printer Agent"
+msgstr "Agente stampante"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Selezionare l'implementazione dell'agente di rete per la comunicazione con la stampante. Gli agenti disponibili vengono registrati all'avvio."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10859,9 +10928,6 @@ msgstr "Limiti altezza strati"
msgid "Z-Hop"
msgstr "Sollevamento Z"
-msgid "Retraction when switching material"
-msgstr "Retrazione quando si cambia materiale"
-
# AI Translated
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
@@ -12221,6 +12287,10 @@ msgstr " è troppo vicino all'area di esclusione e si verificheranno collisioni.
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " è troppo vicino all'area di rilevamento ammassi e verranno causate collisioni.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " è parzialmente fuori dall'area stampabile e non può essere stampato.\n"
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "Le temperature degli ugelli selezionate sono incompatibili. La temperatura dell'ugello per ciascun filamento deve rientrare nell'intervallo di temperatura consigliato per gli altri filamenti. In caso contrario, potrebbero verificarsi ostruzioni degli ugelli o danni alla stampante."
@@ -12550,9 +12620,6 @@ msgstr "Usa 3MF invece di G-code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Abilita questa opzione se la stampante accetta un file 3MF come processo di stampa. Quando è abilitata, Orca Slicer invia il file elaborato come .gcode.3mf, invece di un semplice file .gcode."
-msgid "Printer Agent"
-msgstr "Agente stampante"
-
msgid "Select the network agent implementation for printer communication."
msgstr "Selezionare l'implementazione dell'agente di rete per la comunicazione con la stampante."
@@ -13239,9 +13306,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Velocità dei ponti interni. Se il valore è espresso in percentuale, verrà calcolato in base a bridge_speed. Il valore predefinito è 150%."
-msgid "Brim width"
-msgstr "Larghezza tesa"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Questa è la distanza tra il modello e la linea più esterna della tesa."
@@ -13321,6 +13385,14 @@ msgstr ""
"La geometria verrà decimata prima di rilevare gli spigoli vivi. Questo parametro indica la lunghezza minima dello scostamento per la decimazione.\n"
"0 per disattivare."
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Tesa ad orecchio solo sul contorno esterno"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Genera gli orecchi di topo solo sul contorno esterno del modello, escludendo fori e sezioni chiuse."
+
msgid "upward compatible machine"
msgstr "macchina compatibile con versioni successive"
@@ -14495,6 +14567,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Giroide"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Fattore di arrotondamento del riempimento sparso"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Controlla quanto vengono arrotondati gli angoli del riempimento sparso. 0% mantiene il percorso originale con angoli vivi, mentre 100% produce le curve più ampie possibili tra linee di riempimento adiacenti."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Accelerazione del riempimento della superficie superiore. L'utilizzo di un valore inferiore può migliorare la qualità della superficie superiore."
@@ -15039,6 +15119,14 @@ msgstr "Con quale tipo di G-code la stampante è compatibile."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "Ometti il blocco di configurazione del G-code"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "Non scrive il CONFIG_BLOCK (le coppie chiave/valore della configurazione dello slicer) nel file G-code. Può essere utile con stampanti il cui firmware va in crash durante l'analisi di queste righe di commento (ad es. Anycubic go-klipper). Nota: il file G-code non conterrà più le impostazioni dello slicer, quindi reimportandolo in OrcaSlicer la configurazione non verrà ripristinata."
+
msgid "Pellet Modded Printer"
msgstr "Stampante modificata per granuli"
@@ -16098,6 +16186,14 @@ msgstr "Retrazione lunga al cambio estrusore"
msgid "Retraction distance when extruder change"
msgstr "Distanza di retrazione al cambio estrusore"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Lunghezza di retrazione (Cambio testina)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Quando la retrazione viene attivata prima di un cambio testina, il filamento viene ritirato della quantità specificata (la lunghezza è misurata sul filamento grezzo, prima che entri nell'estrusore)."
+
msgid "Z-hop height"
msgstr "Altezza sollevamento Z"
@@ -16195,6 +16291,10 @@ msgstr "Lunghezza aggiuntiva in ripresa"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Quando la retrazione è compensata dopo uno spostamento, l'estrusore espelle questa quantità aggiuntiva di filamento. Questa impostazione è raramente necessaria."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Lunghezza aggiuntiva in ripresa (Cambio testina)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Quando la retrazione è compensata dopo un cambio di testina, l'estrusore espelle questa quantità aggiuntiva di filamento."
@@ -16612,6 +16712,14 @@ msgstr "Cambio utensile sulla torre di spurgo"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Forza la testa di stampa a spostarsi sulla torre di spurgo prima di emettere il comando di cambio utensile (Tx). Rilevante solo per le stampanti multi-estrusore (multi-testa) che utilizzano una torre di spurgo di Tipo 2. Per impostazione predefinita Orca salta lo spostamento sulle macchine multi-testa perché il firmware gestisce il cambio della testa, il che può far sì che il comando Tx venga emesso sopra la parte stampata. Abilita questa opzione se desideri che il cambio utensile venga sempre emesso sopra la torre di spurgo."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Attendi la temperatura sulla torre di spurgo"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Preleva la nuova testina senza attendere che raggiunga la temperatura di stampa, si sposta sulla torre di spurgo e attende lì la temperatura, subito prima dello spurgo. Il trasudo dovuto al riscaldamento finisce sulla torre invece che sul modello, e lo spostamento si sovrappone al riscaldamento. Rilevante solo per stampanti multi-estrusore (multi-testina) che usano una torre di spurgo di tipo 2. Il firmware o la macro di cambio testina non devono attendere la temperatura autonomamente. Quando è disattivato, l'attesa della temperatura viene emessa subito dopo il comando di cambio testina."
+
msgid "No sparse layers (beta)"
msgstr "Nessuno strato sparso (beta)"
@@ -19865,9 +19973,6 @@ msgstr "Stampante fisica"
msgid "Print Host upload"
msgstr "Caricamento host di stampa"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Selezionare l'implementazione dell'agente di rete per la comunicazione con la stampante. Gli agenti disponibili vengono registrati all'avvio."
-
# AI Translated
msgid "Select a Flashforge printer"
msgstr "Seleziona una stampante Flashforge"
@@ -20810,9 +20915,6 @@ msgstr "Si è verificato un problema imprevisto durante il tentativo di accesso.
msgid "User canceled."
msgstr "Utente rimosso."
-msgid "Head diameter"
-msgstr "Diametro testa"
-
msgid "Max angle"
msgstr "Angolo massimo"
@@ -21631,6 +21733,22 @@ msgstr ""
"Evita le deformazioni\n"
"Sapevi che quando si stampano materiali soggetti a deformazioni come l'ABS, aumentare in modo appropriato la temperatura del piano riscaldato può ridurre la probabilità di deformazione?"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "L'altezza dello strato è troppo piccola.\n"
+#~ "Sarà impostato su min_layer_height\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "L'altezza dello strato supera il limite in Impostazioni stampante -> Estrusore -> Limiti Altezza Strato. Ciò potrebbe causare problemi di qualità di stampa."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Regolare automaticamente l'intervallo impostato?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Diametro testa"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Ordine di stampa all'interno di un singolo strato."
diff --git a/localization/i18n/ja/OrcaSlicer_ja.po b/localization/i18n/ja/OrcaSlicer_ja.po
index 1c78f50b54..1b70ddbf67 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: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -4750,6 +4750,23 @@ msgstr "現在のチャンバー温度が材料の安全温度を超えていま
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "最低庫内温度 (%d℃) が目標庫内温度 (%d℃) を上回っています。最低値は、チャンバーが目標に向けて加熱を続けながら印刷を開始するしきい値であるため、目標値を超えてはいけません。値は目標値に制限されます。"
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "積層ピッチが小さすぎます。最小値 (%g mm) に設定されます。"
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "積層ピッチが、プリンター設定 -> 押出機 -> 積層ピッチの制限 で設定された範囲を外れています。印刷品質の問題が発生する可能性があります。"
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "自動的に制限値 (%g mm) に調整しますか?"
+
+msgid "Adjust"
+msgstr "調整"
+
# AI Translated
msgid ""
"Layer height too small\n"
@@ -4873,6 +4890,13 @@ msgstr ""
"はい - Arachneウォールジェネレーターを有効にする\n"
"いいえ - Arachneウォールジェネレーターを無効にし、ファジースキンを[変位]モードに設定する"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "ブリムイヤー半径"
+
+msgid "Brim width"
+msgstr "ブリム幅"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "スパイラルモードは壁ループが1、サポートが無効、プロービングによるクランピング検出が無効、上部シェルレイヤーが0、スパースインフィル密度が0、タイムラプスタイプがトラディショナルの場合のみ機能します。"
@@ -5127,6 +5151,14 @@ msgstr "キャリブレーションG-codeの生成に失敗しました"
msgid "Calibration error"
msgstr "キャリブレーションエラー"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "このプリンターには、このコントロールに必要なハードウェアが設定されていません。"
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "このコントロールはこのプリンターではサポートされていません。"
+
# AI Translated
msgid "Network unavailable"
msgstr "ネットワークが利用できません"
@@ -5988,7 +6020,7 @@ msgstr "ボリューム"
msgid "Size:"
msgstr "サイズ:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "レイヤー%d、Z = %.2lfmmでG-codeパスの衝突が検出されました。衝突するオブジェクトをもっと離してください(%s <-> %s)。"
@@ -6164,6 +6196,10 @@ msgstr "マルチデバイス"
msgid "Project"
msgstr "プロジェクト"
+# AI Translated
+msgid "Device (Web)"
+msgstr "デバイス (Web)"
+
msgid "Yes"
msgstr "はい"
@@ -8262,21 +8298,21 @@ msgstr "置換用のディレクトリが選択されていません"
msgid "Replaced with 3D files from directory:\n"
msgstr "ディレクトリの3Dファイルで置換しました:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ スキップ %1%: 同一ファイル。\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ スキップ %s: 同一ファイル。\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ スキップ %1%: ファイルが存在しません。\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ スキップ %s: ファイルが存在しません。\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ スキップ %1%: 置換に失敗しました。\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ スキップ %s: 置換に失敗しました。\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ 置換しました %1%。\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ 置換しました %s。\n"
msgid "Replaced volumes"
msgstr "置換されたボリューム"
@@ -9015,6 +9051,18 @@ msgstr "このオプションを有効にすると、複数のデバイスに同
msgid "Pop up to select filament grouping mode"
msgstr "フィラメントグルーピングモード選択のポップアップ"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "表示するプラグインページ数"
+
+# AI Translated
+msgid "pages"
+msgstr "ページ"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "固定タブとして表示するプラグインページの数です。残りのページは最後のタブのドロップダウンにまとめられます。"
+
msgid "Behaviour"
msgstr "動作"
@@ -9404,6 +9452,18 @@ msgstr "非対応のプリセットを表示"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "プリンターとフィラメントのドロップダウンリストに、互換性のない/非対応のプリセットを表示します。これらのプリセットは選択できません。"
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(実験的) プリントホストの代わりにプリンターエージェントを使用"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Bambu 以外のプリンターの印刷ジョブを、従来のプリントホストへのアップロードではなく、プリンターのプラグインエージェント経由で送信します。\n"
+"無効の場合、OrcaSlicer は従来のプリントホストの動作を使用します。"
+
# AI Translated
msgid "Experimental Features"
msgstr "実験的機能"
@@ -9672,9 +9732,25 @@ msgstr "ユーザープリセット"
msgid "Preset Inside Project"
msgstr "プロジェクト プリセット"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "親プリセットから継承したすべての値をこのプリセットにコピーし、親との継承関係を解除します。親プリセットとのみ互換性のあるプリセットは、サポートされなくなる場合があります。"
+
msgid "Detach from parent"
msgstr "親から分離"
+# AI Translated
+msgid "Unique preset"
+msgstr "独立したプリセット"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "親プリセット"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "このプリセットは他のプリセットを継承していません。"
+
msgid "Name is unavailable."
msgstr "名称は使用できません"
@@ -10416,22 +10492,6 @@ msgstr "このオプションを有効にしてもよろしいですか?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
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 height limits, this may cause printing quality issues."
-msgstr "レイヤー高さがプリンター設定 -> エクストルーダー -> レイヤー高さ制限の上限を超えています。印刷品質の問題が発生する可能性があります。"
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "設定範囲に自動調整しますか?\n"
-
-msgid "Adjust"
-msgstr "調整"
-
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."
msgstr "実験的機能: フィラメント交換時により長い距離でフィラメントをリトラクト・カットしてフラッシュを最小化します。フラッシュを大幅に削減できますが、ノズル詰まりやその他の印刷問題のリスクが高まる可能性もあります。"
@@ -10621,6 +10681,9 @@ msgstr "保留キーワードが見つかりました"
msgid "Setting Overrides"
msgstr "上書き設定"
+msgid "Retraction when switching material"
+msgstr "素材変更時のリトラクション"
+
msgid "Basic information"
msgstr "基本情報"
@@ -10751,6 +10814,12 @@ msgstr "互換性のあるプロセスプロファイル"
msgid "Printable space"
msgstr "造形可能領域"
+msgid "Printer Agent"
+msgstr "プリンターエージェント"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "プリンター通信用のネットワークエージェント実装を選択します。使用可能なエージェントは起動時に登録されます。"
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10877,9 +10946,6 @@ msgstr "積層ピッチの制限"
msgid "Z-Hop"
msgstr "Z-ホップ"
-msgid "Retraction when switching material"
-msgstr "素材変更時のリトラクション"
-
# AI Translated
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
@@ -12258,6 +12324,10 @@ msgstr " は除外エリアに近すぎるため、衝突が発生します。\n
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " がクランピング検出エリアに近すぎ、衝突が発生します。\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " は造形可能領域から一部はみ出しているため、印刷できません。\n"
+
# AI Translated
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "選択したノズル温度に互換性がありません。各フィラメントのノズル温度は、他のフィラメントの推奨ノズル温度範囲内に収まる必要があります。そうでない場合、ノズル詰まりやプリンターの損傷が発生する可能性があります。"
@@ -12599,9 +12669,6 @@ msgstr "G-codeの代わりに3MFを使用"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "プリンターが印刷ジョブとして3MFファイルを受け付ける場合に有効にします。有効にすると、Orca Slicerはスライス済みファイルを通常の.gcodeファイルではなく.gcode.3mfとして送信します。"
-msgid "Printer Agent"
-msgstr "プリンターエージェント"
-
msgid "Select the network agent implementation for printer communication."
msgstr "プリンター通信用のネットワークエージェント実装を選択します。"
@@ -13320,9 +13387,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "内部ブリッジの速度です。値を%で指定した場合、bridge_speedを基準に計算されます。デフォルト値は150%です。"
-msgid "Brim width"
-msgstr "ブリム幅"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "一番外側のブリム線がモデルと距離です。"
@@ -13411,6 +13475,14 @@ msgstr ""
"鋭角を検出する前にジオメトリが間引かれます。このパラメータは、間引きにおける偏差の最小長さを指定します。\n"
"0で無効になります。"
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "ブリムイヤーを外側の輪郭のみ"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "穴や閉じた部分を除き、モデルの外側の輪郭にのみマウスイヤーを生成します。"
+
msgid "upward compatible machine"
msgstr "互換性のあるデバイス"
@@ -14634,6 +14706,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "ジャイロイド"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "スパース インフィルの平滑化係数"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "スパース インフィルの角をどの程度丸めるかを設定します。0% では元の鋭い経路のまま、100% では隣接するインフィル線の間で可能な限り大きな曲線になります。"
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "トップ面のインフィル加速度です。遅くすると表面の仕上がりが向上させることができます"
@@ -15233,6 +15313,14 @@ msgstr "プリンターが対応するG-code"
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "G-code の設定ブロックを省略"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "CONFIG_BLOCK (スライサー設定のキーと値のペア) を G-code ファイルに書き込みません。これらのコメント行の解析でファームウェアがクラッシュするプリンター (例: Anycubic go-klipper) で役立ちます。注意: G-code ファイルにスライサー設定が含まれなくなるため、OrcaSlicer に読み込み直しても設定は復元されません。"
+
# AI Translated
msgid "Pellet Modded Printer"
msgstr "ペレット改造プリンター"
@@ -16374,6 +16462,14 @@ msgstr "押出機切り替え時のロングリトラクション"
msgid "Retraction distance when extruder change"
msgstr "押出機切替時のリトラクション距離"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "リトラクション量 (ツール交換)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "ツール交換の前にリトラクションが行われるとき、指定した量だけフィラメントが引き戻されます (長さは押出機に入る前の未加工のフィラメントで測定されます)。"
+
# AI Translated
msgid "Z-hop height"
msgstr "Zホップの高さ"
@@ -16488,6 +16584,10 @@ msgstr "再開時の追加長さ"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "移動後に引込みが補償されると、エクストルーダーはこの追加量のフィラメントを押し出します。 この設定はほとんど必要ありません。"
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "再開時の追加長さ (ツール交換)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "ツールの交換後に吸込み分が補正されると、エクストルーダーはこの追加量のフィラメントを押し出します。"
@@ -16963,6 +17063,14 @@ msgstr "ワイプタワー上でツール交換"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "ツール交換コマンド (Tx) を発行する前に、ツールヘッドを強制的にワイプタワーへ移動させます。タイプ2のワイプタワーを使用するマルチ押出機 (マルチツールヘッド) プリンターにのみ関係します。デフォルトでは、マルチツールヘッド機ではファームウェアがヘッドの交換を処理するためOrcaは移動をスキップしますが、その結果Txコマンドが造形物の上で発行される場合があります。ツール交換を常にワイプタワーの上で発行したい場合は、このオプションを有効にしてください。"
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "ワイプタワーで温度待機"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "印刷温度に達するのを待たずに新しいツールを取り付け、ワイプタワーへ移動し、パージ直前にそこで温度を待ちます。加熱中の垂れ出しはモデルではなくタワーに落ち、移動時間が加熱と重なります。タイプ 2 のワイプタワーを使用するマルチ押出機 (マルチツールヘッド) プリンターでのみ有効です。ファームウェアやツール交換マクロ側で温度待機を行わないようにしてください。無効の場合、温度待機はツール交換コマンドの直後に出力されます。"
+
# AI Translated
msgid "No sparse layers (beta)"
msgstr "スパース層なし (ベータ)"
@@ -20389,9 +20497,6 @@ msgstr "実物プリンター"
msgid "Print Host upload"
msgstr "プリントホストのアップロード"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "プリンター通信用のネットワークエージェント実装を選択します。使用可能なエージェントは起動時に登録されます。"
-
# AI Translated
msgid "Select a Flashforge printer"
msgstr "Flashforgeプリンターを選択"
@@ -21363,9 +21468,6 @@ msgstr "ログイン中に予期しない問題が発生しました。再試行
msgid "User canceled."
msgstr "ユーザーがキャンセルしました。"
-msgid "Head diameter"
-msgstr "直径"
-
msgid "Max angle"
msgstr "最大角度"
@@ -22194,6 +22296,22 @@ msgstr ""
"反りを避ける\n"
"ABSのような反りやすい素材を印刷する場合、ヒートベッドの温度を適切に上げることで、反りが発生する確率を下げることができることをご存知ですか?"
+#~ 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 height limits, this may cause printing quality issues."
+#~ msgstr "レイヤー高さがプリンター設定 -> エクストルーダー -> レイヤー高さ制限の上限を超えています。印刷品質の問題が発生する可能性があります。"
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "設定範囲に自動調整しますか?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "直径"
+
#~ msgid "Print order within a single layer."
#~ msgstr "単一レイヤー内の印刷順序。"
diff --git a/localization/i18n/ko/OrcaSlicer_ko.po b/localization/i18n/ko/OrcaSlicer_ko.po
index debb3fb818..767674e525 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: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: 2025-06-02 17:12+0900\n"
"Last-Translator: crwusiz \n"
"Language-Team: \n"
@@ -4763,6 +4763,23 @@ msgstr "현재 챔버 온도가 재료의 안전 온도보다 높으므로 재
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "최소 챔버 온도(%d℃)가 목표 챔버 온도(%d℃)보다 높습니다. 최소값은 챔버가 목표 온도까지 계속 가열되는 동안 출력을 시작하는 기준값이므로 목표값을 초과해서는 안 됩니다. 이 값은 목표값으로 제한됩니다."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "레이어 높이가 너무 작습니다. 최솟값(%g mm)으로 설정됩니다."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "레이어 높이가 프린터 설정 -> 압출기 -> 레이어 높이 한도에서 설정한 범위를 벗어났습니다. 출력 품질 문제가 발생할 수 있습니다."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "한도(%g mm)에 맞게 자동으로 조정할까요?"
+
+msgid "Adjust"
+msgstr "조정"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4884,6 +4901,13 @@ msgstr ""
"예 - 아라크네 벽 생성기 활성화\n"
"아니오 - 아라크네 벽 생성기 비활성화 및 퍼지 스킨 [변위] 모드 설정"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "브림 귀 반경"
+
+msgid "Brim width"
+msgstr "브림 너비"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "나선형 모드는 벽 루프가 1이고, 서포트가 비활성화되고, 프로빙에 의한 클럼핑 감지가 비활성화되고, 상단 셸 레이어가 0이고, 희소 인필 밀도가 0이고 타임랩스 유형이 전통적인 경우에만 작동합니다."
@@ -5138,6 +5162,14 @@ msgstr "교정 Gcode를 생성하지 못했습니다"
msgid "Calibration error"
msgstr "교정 오류"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "이 프린터에는 이 컨트롤에 필요한 하드웨어가 구성되어 있지 않습니다."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "이 컨트롤은 이 프린터에서 지원되지 않습니다."
+
# AI Translated
msgid "Network unavailable"
msgstr "네트워크를 사용할 수 없음"
@@ -6001,7 +6033,7 @@ msgstr "용량:"
msgid "Size:"
msgstr "크기:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "레이어 %d, Z = %.2lf mm에서 Gcode 경로 충돌이 발견되었습니다. 충돌하는 객체를 더 멀리 분리하세요 (%s <-> %s)."
@@ -6178,6 +6210,10 @@ msgstr "멀티 디바이스"
msgid "Project"
msgstr "프로젝트"
+# AI Translated
+msgid "Device (Web)"
+msgstr "장치 (웹)"
+
msgid "Yes"
msgstr "예"
@@ -8288,24 +8324,24 @@ msgid "Replaced with 3D files from directory:\n"
msgstr "다음 디렉터리의 3D 파일로 교체했습니다:\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ 건너뜀 %1%: 동일한 파일입니다.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ 건너뜀 %s: 동일한 파일입니다.\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ 건너뜀 %1%: 파일이 존재하지 않습니다.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ 건너뜀 %s: 파일이 존재하지 않습니다.\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ 건너뜀 %1%: 교체하지 못했습니다.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ 건너뜀 %s: 교체하지 못했습니다.\n"
# AI Translated
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ %1%을(를) 교체했습니다.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ %s을(를) 교체했습니다.\n"
# AI Translated
msgid "Replaced volumes"
@@ -9077,6 +9113,18 @@ msgstr "활성화하면 여러 장치에 동시에 작업을 보내고 여러
msgid "Pop up to select filament grouping mode"
msgstr "필라멘트 그룹화 모드를 선택하기 위한 팝업"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "표시할 플러그인 페이지"
+
+# AI Translated
+msgid "pages"
+msgstr "페이지"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "고정 탭으로 표시되는 플러그인 페이지 수입니다. 나머지 페이지는 마지막 탭의 드롭다운으로 묶입니다."
+
# AI Translated
msgid "Behaviour"
msgstr "동작"
@@ -9491,6 +9539,18 @@ msgstr "지원되지 않는 사전 설정 표시"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "프린터 및 필라멘트 드롭다운 목록에 호환되지 않거나 지원되지 않는 사전 설정을 표시합니다. 이러한 사전 설정은 선택할 수 없습니다."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(실험적) 출력 호스트 대신 프린터 에이전트 사용"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Bambu 이외의 프린터 출력 작업을 기존 출력 호스트 업로드 방식 대신 프린터 플러그인 에이전트를 통해 전달합니다.\n"
+"비활성화하면 OrcaSlicer는 기존 출력 호스트 동작을 사용합니다."
+
# AI Translated
msgid "Experimental Features"
msgstr "실험적 기능"
@@ -9762,10 +9822,26 @@ msgstr "사용자 사전 설정"
msgid "Preset Inside Project"
msgstr "프로젝트 내부 사전 설정"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "상위 사전 설정에서 상속한 모든 값을 이 사전 설정으로 복사하고 상속 관계를 제거합니다. 상위 사전 설정에서만 호환되는 사전 설정은 지원되지 않을 수 있습니다."
+
# AI Translated
msgid "Detach from parent"
msgstr "상위 항목에서 분리"
+# AI Translated
+msgid "Unique preset"
+msgstr "독립 사전 설정"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "상위 사전 설정"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "이 사전 설정은 다른 사전 설정을 상속하지 않습니다."
+
msgid "Name is unavailable."
msgstr "이름을 사용할 수 없습니다."
@@ -10519,22 +10595,6 @@ msgstr "이 옵션을 사용하시겠습니까?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
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 height limits, this may cause printing quality issues."
-msgstr "레이어 높이가 프린터 설정 -> 압출기 -> 레이어의 제한을 초과합니다.높이 제한으로 인해 출력 품질 문제가 발생할 수 있습니다."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "설정 범위에 자동으로 맞춰지나요?\n"
-
-msgid "Adjust"
-msgstr "조정"
-
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."
msgstr "실험적 기능: 플러시를 최소화하기 위해 필라멘트 교체 중에 더 먼 거리에서 필라멘트를 집어넣고 절단합니다. 플러시를 눈에 띄게 줄일 수 있지만 노즐 막힘이나 기타 출력 문제의 위험이 높아질 수도 있습니다."
@@ -10728,6 +10788,9 @@ msgstr "예약어를 찾았습니다"
msgid "Setting Overrides"
msgstr "설정 덮어쓰기"
+msgid "Retraction when switching material"
+msgstr "재료 전환 시 후퇴"
+
msgid "Basic information"
msgstr "기본 정보"
@@ -10861,6 +10924,14 @@ msgstr "호환 프로세스 사전설정"
msgid "Printable space"
msgstr "출력 가능 공간"
+# AI Translated
+msgid "Printer Agent"
+msgstr "프린터 에이전트"
+
+# AI Translated
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "프린터 통신에 사용할 네트워크 에이전트 구현을 선택합니다. 사용 가능한 에이전트는 시작 시 등록됩니다."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10993,9 +11064,6 @@ msgstr "레이어 높이 한도"
msgid "Z-Hop"
msgstr "Z올리기"
-msgid "Retraction when switching material"
-msgstr "재료 전환 시 후퇴"
-
# AI Translated
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
@@ -12388,6 +12456,10 @@ msgstr " 이(가) 제외 영역에 너무 가깝습니다. 출력 시 충돌이
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " 뭉침 감지 영역에 너무 가까워 충돌이 발생할 수 있습니다.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " 이(가) 출력 가능 영역을 일부 벗어나 출력할 수 없습니다.\n"
+
# AI Translated
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "선택한 노즐 온도가 서로 호환되지 않습니다. 각 필라멘트의 노즐 온도는 다른 필라멘트의 권장 노즐 온도 범위 안에 있어야 합니다. 그렇지 않으면 노즐 막힘이나 프린터 손상이 발생할 수 있습니다."
@@ -12732,10 +12804,6 @@ msgstr "G-code 대신 3MF 사용"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "프린터가 출력 작업으로 3MF 파일을 허용하는 경우 이 옵션을 활성화하십시오. 활성화하면 Orca Slicer가 슬라이스된 파일을 일반 .gcode 파일 대신 .gcode.3mf로 전송합니다."
-# AI Translated
-msgid "Printer Agent"
-msgstr "프린터 에이전트"
-
# AI Translated
msgid "Select the network agent implementation for printer communication."
msgstr "프린터 통신에 사용할 네트워크 에이전트 구현을 선택합니다."
@@ -13446,9 +13514,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "내부 브릿지의 속도. 값을 백분율로 표현하면 bridge_speed를 기준으로 계산됩니다. 기본값은 150%입니다."
-msgid "Brim width"
-msgstr "브림 너비"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "모델과 가장 바깥쪽 브림 선까지의 거리"
@@ -13533,6 +13598,14 @@ msgstr ""
"날카로운 각도를 감지하기 전에 형상이 무시됩니다. 이 매개변수는 무시하는 형상의 최소 길이를 나타냅니다.\n"
"0으로 비활성화합니다"
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "브림 귀를 바깥쪽에만"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "구멍과 닫힌 영역을 제외하고 모델의 바깥쪽 윤곽에만 생쥐 귀를 생성합니다."
+
msgid "upward compatible machine"
msgstr "상향 호환 장치"
@@ -14729,6 +14802,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "자이로이드"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "드문 채우기 부드러움 계수"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "드문 채우기의 모서리를 얼마나 둥글게 할지 조절합니다. 0%는 원래의 날카로운 경로를 유지하고, 100%는 인접한 채우기 선 사이에 가능한 가장 큰 곡선을 만듭니다."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "상단 표면 가속도. 낮은 값을 사용하면 상단 표면 품질이 향상될 수 있습니다"
@@ -15291,6 +15372,14 @@ msgstr "프린터와 호환되는 Gcode 종류"
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "G-code 설정 블록 생략"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "CONFIG_BLOCK(슬라이서 설정의 키/값 쌍)을 G-code 파일에 기록하지 않습니다. 이 주석 줄을 해석할 때 펌웨어가 중단되는 프린터(예: Anycubic go-klipper)에 도움이 될 수 있습니다. 참고: G-code 파일에 슬라이서 설정이 더 이상 포함되지 않으므로, 이 파일을 OrcaSlicer로 다시 가져와도 설정이 복원되지 않습니다."
+
msgid "Pellet Modded Printer"
msgstr "펠릿 프린터"
@@ -16400,6 +16489,14 @@ msgstr "압출기 교체 시 긴 수축"
msgid "Retraction distance when extruder change"
msgstr "압출기 교체 시 수축 거리"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "후퇴 길이 (툴 체인지)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "툴 체인지 전에 후퇴가 실행되면 지정한 양만큼 필라멘트가 뒤로 당겨집니다 (길이는 압출기에 들어가기 전의 원래 필라멘트를 기준으로 측정됩니다)."
+
msgid "Z-hop height"
msgstr "Z올리기 높이"
@@ -16498,6 +16595,10 @@ msgstr "재 시작 시 추가 길이"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "이동 후 후퇴가 보상되면 압출기는 이 추가 양의 필라멘트를 밀어냅니다. 이 설정은 거의 필요하지 않습니다."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "재 시작 시 추가 길이 (툴 체인지)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "툴 체인지 후 후퇴가 보상되면 압출기는 이 추가 양의 필라멘트를 밀어냅니다."
@@ -16922,6 +17023,14 @@ msgstr "프라임 타워에서 툴 체인지"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "툴 체인지 명령(Tx)을 실행하기 전에 툴헤드가 반드시 프라임 타워로 이동하도록 합니다. 유형 2 프라임 타워를 사용하는 다중 압출기(멀티 툴헤드) 프린터에만 해당됩니다. 기본적으로 Orca는 멀티 툴헤드 장비에서 펌웨어가 헤드 교체를 처리하므로 이동을 생략하는데, 이 때문에 Tx 명령이 출력물 위에서 실행될 수 있습니다. 툴 체인지가 항상 프라임 타워 위에서 실행되도록 하려면 이 옵션을 활성화하십시오."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "프라임 타워에서 온도 대기"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "출력 온도에 도달할 때까지 기다리지 않고 새 툴을 집은 뒤 프라임 타워로 이동하여, 퍼지 직전에 그곳에서 온도를 기다립니다. 가열 중 흘러나온 재료는 모델이 아닌 타워에 떨어지고, 이동 시간이 가열 시간과 겹칩니다. 타입 2 프라임 타워를 사용하는 다중 압출기(다중 툴헤드) 프린터에만 해당합니다. 펌웨어나 툴 체인지 매크로가 직접 온도를 기다려서는 안 됩니다. 비활성화하면 툴 체인지 명령 직후에 온도 대기가 실행됩니다."
+
msgid "No sparse layers (beta)"
msgstr "희소 레이어 없음(베타)"
@@ -20261,10 +20370,6 @@ msgstr "물리 프린터"
msgid "Print Host upload"
msgstr "출력 호스트 업로드"
-# AI Translated
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "프린터 통신에 사용할 네트워크 에이전트 구현을 선택합니다. 사용 가능한 에이전트는 시작 시 등록됩니다."
-
# AI Translated
msgid "Select a Flashforge printer"
msgstr "Flashforge 프린터 선택"
@@ -21217,9 +21322,6 @@ msgstr "로그인을 시도하는 동안 예기치 않은 문제가 발생했습
msgid "User canceled."
msgstr "사용자가 취소했습니다."
-msgid "Head diameter"
-msgstr "헤드 직경"
-
msgid "Max angle"
msgstr "최대 각도"
@@ -22057,6 +22159,22 @@ msgstr ""
"뒤틀림 방지\n"
"ABS와 같이 뒤틀림이 발생하기 쉬운 소재를 출력할 때, 히트베드 온도를 적절하게 높이면 뒤틀림 가능성을 줄일 수 있다는 사실을 알고 계셨나요?"
+#~ 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 height limits, this may cause printing quality issues."
+#~ msgstr "레이어 높이가 프린터 설정 -> 압출기 -> 레이어의 제한을 초과합니다.높이 제한으로 인해 출력 품질 문제가 발생할 수 있습니다."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "설정 범위에 자동으로 맞춰지나요?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "헤드 직경"
+
#~ msgid "Print order within a single layer."
#~ msgstr "단일 레이어 내의 출력 순서"
diff --git a/localization/i18n/lt/OrcaSlicer_lt.po b/localization/i18n/lt/OrcaSlicer_lt.po
index 23d2aae6f1..ad5edffc9a 100644
--- a/localization/i18n/lt/OrcaSlicer_lt.po
+++ b/localization/i18n/lt/OrcaSlicer_lt.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: 2026-07-02 14:13+0300\n"
"Last-Translator: Gintaras Kučinskas \n"
"Language-Team: \n"
@@ -4728,6 +4728,23 @@ msgstr "Dabartinė kameros temperatūra yra aukštesnė už saugią medžiagos t
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "Minimali kameros temperatūra (%d℃) yra aukštesnė nei tikslinė kameros temperatūra (%d℃). Minimali vertė yra slenkstis, kurį pasiekus pradedamas spausdinimas, kol kamera vis dar kaitinama iki tikslinės temperatūros, todėl ji neturėtų viršyti tikslinės. Vertė bus apribota iki tikslinės temperatūros."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "Sluoksnio aukštis per mažas. Jis bus nustatytas į mažiausią reikšmę (%g mm)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "Sluoksnio aukštis yra už ribų, nurodytų Spausdintuvo nustatymai -> Ekstruderis -> Sluoksnio aukščio ribos, tai gali sukelti spausdinimo kokybės problemų."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Automatiškai sureguliuoti iki ribos (%g mm)?"
+
+msgid "Adjust"
+msgstr "Sureguliuoti"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4847,6 +4864,13 @@ msgstr ""
"Taip – įjungti „Arachne“ sienelių generatorių\n"
"Ne – išjungti „Arachne“ sienelių generatorių ir nustatyti „Šiurkštaus paviršius“ režimą [Slinktis]"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Apvado „ausies“ spindulys"
+
+msgid "Brim width"
+msgstr "Pado apvado plotis"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "Spiralinis režimas veikia tik tada, kai sienelės kilpų skaičius yra 1, atramos išjungtos, sulipimo aptikimas zonduojant išjungtas, viršutinių apvalkalo sluoksnių yra 0, reto užpildo tankis yra 0 %, o laiko intervalų vaizdo įrašo tipas – tradicinis."
@@ -5101,6 +5125,14 @@ msgstr "Nepavyko sugeneruoti kalibravimo G-kodo"
msgid "Calibration error"
msgstr "Kalibravimo klaida"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Šiame spausdintuve nėra sukonfigūruotos įrangos, kurios reikia šiam valdikliui."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Šis valdiklis šiame spausdintuve nepalaikomas."
+
# AI Translated
msgid "Network unavailable"
msgstr "Tinklas neprieinamas"
@@ -5961,7 +5993,7 @@ msgstr "Tūris:"
msgid "Size:"
msgstr "Dydis:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "Rasta G-kodo trajektorijų konfliktų %d sluoksnyje, Z = %.2lfmm. Prašome labiau atskirti konfliktuojančius objektus (%s <-> %s)."
@@ -6142,6 +6174,10 @@ msgstr "Kelių įrenginių valdymas (Multi-device)"
msgid "Project"
msgstr "Projektas"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Įrenginys (Web)"
+
msgid "Yes"
msgstr "Taip"
@@ -8239,21 +8275,21 @@ msgstr ""
"Pakeista 3D failais iš katalogo:\n"
"\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Praleistas %1%: tas pats failas.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ Praleistas %s: tas pats failas.\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Praleistas %1%: failas neegzistuoja.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ Praleistas %s: failas neegzistuoja.\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Praleistas %1%: nepavyko pakeisti.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ Praleistas %s: nepavyko pakeisti.\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Pakeistas %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ Pakeistas %s.\n"
msgid "Replaced volumes"
msgstr "Pakeisti tūriai"
@@ -8977,6 +9013,18 @@ msgstr "Kai įjungta ši funkcija, jūs galite siųsti užduotį keliems įrengi
msgid "Pop up to select filament grouping mode"
msgstr "Iššokantis langas gijų grupavimo režimui pasirinkti"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Matomi papildinių puslapiai"
+
+# AI Translated
+msgid "pages"
+msgstr "puslapiai"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Papildinių puslapių, rodomų kaip fiksuotos kortelės, skaičius; likę puslapiai sutraukiami į išskleidžiamąjį sąrašą paskutinėje kortelėje."
+
msgid "Behaviour"
msgstr "Elgsena"
@@ -9329,6 +9377,18 @@ msgstr "Rodyti nepalaikomus profilius"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Rodyti nesuderinamus / nepalaikomus profilius spausdintuvų ir gijų išskleidžiamuosiuose sąrašuose. Šių profilių pasirinkti negalima."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Eksperimentinė) Naudoti spausdintuvo agentus vietoj spausdinimo serverių"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Nukreipia ne Bambu spausdintuvų spausdinimo užduotis per spausdintuvo papildinių agentus, o ne per klasikinį įkėlimo į spausdinimo serverį srautą.\n"
+"Kai išjungta, OrcaSlicer naudoja senąjį spausdinimo serverio veikimą."
+
msgid "Experimental Features"
msgstr "Eksperimentinis"
@@ -9590,9 +9650,25 @@ msgstr "Naudotojo profilis"
msgid "Preset Inside Project"
msgstr "Profilis projekto viduje"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Nukopijuoja į šį profilį visas iš pirminio profilio paveldėtas reikšmes ir pašalina paveldėjimo ryšį. Profiliai, suderinami tik su pirminiu profiliu, gali tapti nepalaikomi."
+
msgid "Detach from parent"
msgstr "Atskirti nuo tėvinio profilio"
+# AI Translated
+msgid "Unique preset"
+msgstr "Savarankiškas profilis"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Pirminis profilis"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Šis profilis nepaveldi iš kito profilio."
+
msgid "Name is unavailable."
msgstr "Nėra pavadinimo."
@@ -10330,24 +10406,6 @@ msgstr "Ar tikrai norite įjungti šią parinktį?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "Užpildymo modeliai paprastai yra suprojektuoti taip, kad automatiškai tvarkytų sukimąsi, siekiant užtikrinti tinkamą spausdinimą ir pasiekti numatytus efektus (pvz., Gyroid, Cubic). Sukant esamą retą užpildymo modelį, gali atsirasti nepakankamas atraminis paviršius. Prašome elgtis atsargiai ir atidžiai patikrinti, ar nėra galimų spausdinimo problemų. Ar tikrai norite įjungti šią parinktį?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"Per mažas sluoksnio aukštis.\n"
-"Jis bus nustatytas į min_layer_height\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "Sluoksnio aukštis viršija ribą, nurodytą Spausdintuvo nustatymai -> Ekstruderis -> Sluoksnio aukščio ribos, tai gali sukelti spausdinimo kokybės problemų."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr ""
-"Sureguliuoti pagal nustatytą diapazoną automatiškai?\n"
-"\n"
-
-msgid "Adjust"
-msgstr "Sureguliuoti"
-
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."
msgstr "Eksperimentinė funkcija: gijos įtraukimas ir nukirpimas didesniu atstumu keičiant giją, siekiant sumažinti išvalymą (flush). Nors tai gali pastebimai sumažinti išvalymą, taip pat gali padidėti purkštuko užsikimšimo ar kitų spausdinimo komplikacijų rizika."
@@ -10547,6 +10605,9 @@ msgstr "Rasti rezervuoti raktažodžiai"
msgid "Setting Overrides"
msgstr "Nustatymų perrašymas"
+msgid "Retraction when switching material"
+msgstr "Įtraukimas keičiant medžiagą"
+
msgid "Basic information"
msgstr "Pagrindinė informacija"
@@ -10673,6 +10734,12 @@ msgstr "Suderinami apdorojimo profiliai"
msgid "Printable space"
msgstr "Erdvė spausdinimui"
+msgid "Printer Agent"
+msgstr "Spausdintuvo agentas"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Pasirinkite tinklo agento modulį ryšiui su spausdintuvu palaikyti. Prieinami agentai užregistruojami paleidimo metu."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10798,9 +10865,6 @@ msgstr "Sluoksnio aukščio ribos"
msgid "Z-Hop"
msgstr "Z šuolis"
-msgid "Retraction when switching material"
-msgstr "Įtraukimas keičiant medžiagą"
-
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
"\n"
@@ -12146,6 +12210,10 @@ msgstr ""
" yra per arti sulipimo aptikimo zonos, todėl įvyks susidūrimai.\n"
"\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " yra iš dalies už spausdinimo srities ribų ir negali būti atspausdintas.\n"
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "Pasirinktos purkštuko temperatūros yra nesuderinamos. Kiekvienos gijos purkštuko temperatūra turi patekti į kitų gijų rekomenduojamos temperatūros diapazoną. Priešingu atveju gali užsikimšti purkštukas arba sugesti spausdintuvas."
@@ -12459,9 +12527,6 @@ msgstr "Vietoj G-kodo naudoti 3MF"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Įjunkite, jei spausdintuvas spausdinimo užduotims priima 3MF failus. Kai įjungta, „Orca Slicer“ sugeneruotą failą siunčia kaip „.gcode.3mf“, o ne kaip paprastą „.gcode“ failą."
-msgid "Printer Agent"
-msgstr "Spausdintuvo agentas"
-
msgid "Select the network agent implementation for printer communication."
msgstr "Pasirinkite tinklo agento modulį ryšiui su spausdintuvu palaikyti."
@@ -13134,9 +13199,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Vidinių tiltelių spausdinimo greitis. Jei reikšmė nurodoma procentais, ji apskaičiuojama pagal „bridge_speed“ (tiltelių greitį). Numatytoji reikšmė – 150 %."
-msgid "Brim width"
-msgstr "Pado apvado plotis"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Atstumas nuo modelio iki išorinės krašto linijos"
@@ -13217,6 +13279,14 @@ msgstr ""
"Prieš aptinkant aštrius kampus, geometrija yra supaprastinama (decimuojama). Šis parametras nurodo minimalų nuokrypio ilgį supaprastinimui atlikti.\n"
"Įrašykite 0, kad išjungtumėte."
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Apvado „ausys“ tik išorėje"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Kuria peliukų ausis tik ant išorinio modelio kontūro, praleidžiant skyles ir uždaras sritis."
+
msgid "upward compatible machine"
msgstr "atgaliniu būdu suderinamas įrenginys"
@@ -14370,6 +14440,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Giroidas"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Reto užpildo glotninimo koeficientas"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Nustato, kaip stipriai suapvalinami reto užpildo kampai. 0% palieka pradinę aštrią trajektoriją, o 100% sukuria didžiausias įmanomas kreives tarp gretimų užpildo linijų."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Viršutinio paviršiaus užpildo pagreitis. Naudojant mažesnę vertę gali pagerėti viršutinio paviršiaus kokybė."
@@ -14914,6 +14992,14 @@ msgstr "Su kokiu G kodu suderinamas spausdintuvas."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "Praleisti G-code konfigūracijos bloką"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "Neįrašo CONFIG_BLOCK (pjaustyklės konfigūracijos raktų ir reikšmių porų) į G-code failą. Tai gali padėti su spausdintuvais, kurių programinė įranga stringa apdorodama šias komentarų eilutes (pvz., Anycubic go-klipper). Pastaba: G-code faile nebeliks pjaustyklės nustatymų, todėl importavus jį atgal į OrcaSlicer konfigūracija nebus atkurta."
+
msgid "Pellet Modded Printer"
msgstr "Modifikuotas granulinis spausdintuvas"
@@ -15955,6 +16041,14 @@ msgstr "Ilgas įtraukimas keičiant ekstruderį"
msgid "Retraction distance when extruder change"
msgstr "Įtraukimo atstumas keičiant ekstruderį"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Atitraukimo ilgis (Įrankio keitimas)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Kai atitraukimas suaktyvinamas prieš įrankio keitimą, gija atitraukiama nurodytu atstumu (ilgis matuojamas ant neapdorotos gijos, prieš jai patenkant į ekstruderį)."
+
msgid "Z-hop height"
msgstr "„Z-hop“ (pakėlimo) aukštis"
@@ -16049,6 +16143,10 @@ msgstr "Papildomas ilgis po sugrąžinimo"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Kai po judėjimo kompensuojamas gijos įtraukimas, ekstruderis papildomai išstums šį gijos kiekį. Šis nustatymas reikalingas retai."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Papildomas ilgis po sugrąžinimo (Įrankio keitimas)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Kai po įrankio pakeitimo kompensuojamas gijos įtraukimas, ekstruderis papildomai išstums šį gijos kiekį."
@@ -16461,6 +16559,14 @@ msgstr "Įrankio keitimas virš valymo bokšto"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Priverstinai nukreipti spausdinimo galvutę prie valymo bokšto prieš vykdant įrankio keitimo komandą (Tx). Aktualu tik spausdintuvams su keliais ekstruderiais (keliomis galvutėmis), naudojantiems 2 tipo valymo bokštą. Pagal numatytuosius nustatymus „OrcaSlicer“ praleidžia šį judesį kelių galvučių įrenginiuose, nes galvučių sukeitimą valdo aparatinė programinė įranga, todėl Tx komanda gali būti įvykdyta virš spausdinamos detalės. Įjunkite šią parinktį, jei norite, kad įrankio keitimas visada vyktų virš valymo bokšto."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Laukti temperatūros ant valymo bokšto"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Paima naują įrankį nelaukdamas, kol jis pasieks spausdinimo temperatūrą, nuvažiuoja prie valymo bokšto ir ten laukia temperatūros, prieš pat pravalymą. Kaitinant ištekėjusi medžiaga patenka ant bokšto, o ne ant modelio, o pervažiavimas persidengia su kaitinimu. Aktualu tik daugiaekstruderiams (kelių spausdinimo galvučių) spausdintuvams, naudojantiems 2 tipo valymo bokštą. Programinė įranga ar įrankio keitimo makrokomanda neturi pati laukti temperatūros. Kai išjungta, laukimo temperatūros komanda pateikiama iškart po įrankio keitimo komandos."
+
msgid "No sparse layers (beta)"
msgstr "Nėra retų sluoksnių (beta)"
@@ -19702,9 +19808,6 @@ msgstr "Fizinis spausdintuvas"
msgid "Print Host upload"
msgstr "Įkėlimas spausdinimui tinkle"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Pasirinkite tinklo agento modulį ryšiui su spausdintuvu palaikyti. Prieinami agentai užregistruojami paleidimo metu."
-
msgid "Select a Flashforge printer"
msgstr "Pasirinkite „Flashforge“ spausdintuvą"
@@ -20552,9 +20655,6 @@ msgstr "Bandant prisijungti įvyko kažkas netikėto. Bandykite dar kartą."
msgid "User canceled."
msgstr "Vartotojas atšaukė."
-msgid "Head diameter"
-msgstr "Galvutės skersmuo"
-
msgid "Max angle"
msgstr "Maksimalus kampas"
@@ -21336,6 +21436,24 @@ msgstr ""
"Venkite deformacijų (warping)\n"
"Ar žinojote, kad spausdinant medžiagas, kurios yra linkusios trauktis ir riestis (pvz., ABS), tinkamas kaitinamojo pagrindo temperatūros padidinimas gali sumažinti deformacijų (warping) tikimybę?"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "Per mažas sluoksnio aukštis.\n"
+#~ "Jis bus nustatytas į min_layer_height\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "Sluoksnio aukštis viršija ribą, nurodytą Spausdintuvo nustatymai -> Ekstruderis -> Sluoksnio aukščio ribos, tai gali sukelti spausdinimo kokybės problemų."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr ""
+#~ "Sureguliuoti pagal nustatytą diapazoną automatiškai?\n"
+#~ "\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Galvutės skersmuo"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Elementų spausdinimo eiliškumas vieno sluoksnio ribose."
diff --git a/localization/i18n/nl/OrcaSlicer_nl.po b/localization/i18n/nl/OrcaSlicer_nl.po
index a7ef340804..28ad63d455 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: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -5150,6 +5150,23 @@ msgstr "De huidige kamertemperatuur is hoger dan de veilige temperatuur van het
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "De minimale kamertemperatuur (%d℃) is hoger dan de doelkamertemperatuur (%d℃). De minimale waarde is de drempel waarbij het printen start terwijl de kamer verder opwarmt naar de doelwaarde; deze mag die dus niet overschrijden. De waarde wordt begrensd tot de doelwaarde."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "De laaghoogte is te klein. Deze wordt ingesteld op het minimum (%g mm)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "De laaghoogte valt buiten de limieten die zijn ingesteld in Printerinstellingen -> Extruder -> Laaghoogtelimieten, dit kan problemen met de afdrukkwaliteit veroorzaken."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Automatisch aanpassen naar de limiet (%g mm)?"
+
+msgid "Adjust"
+msgstr "Aanpassen"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -5277,6 +5294,13 @@ msgstr ""
"Ja - Arachne-wandgenerator inschakelen\n"
"Nee - Arachne-wandgenerator uitschakelen en de modus [Displacement] van Vage buitenkant instellen"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Straal van randoren"
+
+msgid "Brim width"
+msgstr "Rand breedte"
+
# AI Translated
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "De spiraalmodus werkt alleen wanneer Wanden 1 is, ondersteuning is uitgeschakeld, klontdetectie via aftasten is uitgeschakeld, het aantal bovenste buitenlagen 0 is, de dichtheid van de dunne vulling (infill) 0 is en het timelapse-type traditioneel is."
@@ -5582,6 +5606,14 @@ msgstr "Cali G-code niet gegenereerd"
msgid "Calibration error"
msgstr "Kalibratiefout"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Deze printer beschikt niet over de hardware die dit besturingselement nodig heeft."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Dit besturingselement wordt niet ondersteund op deze printer."
+
# AI Translated
msgid "Network unavailable"
msgstr "Netwerk niet beschikbaar"
@@ -6513,7 +6545,7 @@ msgid "Size:"
msgstr "Maat:"
# AI Translated
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "Er zijn conflicten tussen G-code-paden gevonden op laag %d, Z = %.2lfmm. Plaats de conflicterende objecten verder uit elkaar (%s <-> %s)."
@@ -6714,6 +6746,10 @@ msgstr "Meerdere apparaten"
msgid "Project"
msgstr "Project"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Apparaat (Web)"
+
msgid "Yes"
msgstr "Ja"
@@ -8999,24 +9035,24 @@ msgid "Replaced with 3D files from directory:\n"
msgstr "Vervangen door 3D-bestanden uit de map:\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Overgeslagen %1%: hetzelfde bestand.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ Overgeslagen %s: hetzelfde bestand.\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Overgeslagen %1%: bestand bestaat niet.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ Overgeslagen %s: bestand bestaat niet.\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Overgeslagen %1%: vervangen is mislukt.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ Overgeslagen %s: vervangen is mislukt.\n"
# AI Translated
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Vervangen %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ Vervangen %s.\n"
# AI Translated
msgid "Replaced volumes"
@@ -9827,6 +9863,18 @@ msgstr "Met deze optie ingeschakeld kunt u een taak tegelijkertijd naar meerdere
msgid "Pop up to select filament grouping mode"
msgstr "Pop-up om de filamentgroeperingsmodus te kiezen"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Zichtbare plug-inpagina's"
+
+# AI Translated
+msgid "pages"
+msgstr "pagina's"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Aantal plug-inpagina's dat als vaste tabbladen wordt getoond voordat de overige pagina's worden samengevouwen in een vervolgkeuzelijst op het laatste tabblad."
+
msgid "Behaviour"
msgstr "Gedrag"
@@ -10243,6 +10291,18 @@ msgstr "Niet-ondersteunde voorinstellingen tonen"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Toon incompatibele/niet-ondersteunde voorinstellingen in de keuzelijsten voor printer en filament. Deze voorinstellingen kunnen niet worden geselecteerd."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Experimenteel) Printeragents gebruiken in plaats van printhosts"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Stuurt printtaken voor niet-Bambu-printers via printer-plug-inagents in plaats van via de klassieke uploadstroom naar de printhost.\n"
+"Wanneer dit is uitgeschakeld, gebruikt OrcaSlicer het oude printhostgedrag."
+
# AI Translated
msgid "Experimental Features"
msgstr "Experimentele functies"
@@ -10523,10 +10583,26 @@ msgstr "Gebruikersvoorinstelling"
msgid "Preset Inside Project"
msgstr "Voorinstelling binnen project"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Kopieert alle overgeërfde waarden van de bovenliggende voorinstelling naar deze voorinstelling en verwijdert de overervingsrelatie. Voorinstellingen die alleen met de bovenliggende voorinstelling compatibel zijn, kunnen daardoor niet meer worden ondersteund."
+
# AI Translated
msgid "Detach from parent"
msgstr "Losmaken van bovenliggend element"
+# AI Translated
+msgid "Unique preset"
+msgstr "Unieke voorinstelling"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Bovenliggende voorinstelling"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Deze voorinstelling erft niet van een andere voorinstelling."
+
msgid "Name is unavailable."
msgstr "Naam is niet beschikbaar."
@@ -11336,22 +11412,6 @@ msgstr "Weet u zeker dat u deze optie wilt inschakelen?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "Vulpatronen zijn doorgaans ontworpen om rotatie automatisch af te handelen, zodat ze goed printen en hun beoogde effect bereiken (bijv. Gyroide, Kubisch). Het roteren van het huidige patroon voor de dunne vulling (infill) kan tot onvoldoende ondersteuning leiden. Ga voorzichtig te werk en controleer grondig op mogelijke printproblemen. Weet u zeker dat u deze optie wilt inschakelen?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"Laaghoogte is te klein.\n"
-"Het zal worden ingesteld op min_layer_height\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "De laaghoogte overschrijdt de limiet in Printerinstellingen -> Extruder -> Laaghoogtelimieten, dit kan problemen met de afdrukkwaliteit veroorzaken."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Automatisch aanpassen aan het ingestelde bereik?\n"
-
-msgid "Adjust"
-msgstr "Aanpassen"
-
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."
msgstr "Experimentele functie: Het filament op grotere afstand terugtrekken en afsnijden tijdens filamentwisselingen om flush te minimaliseren. Hoewel het het doorspoelen aanzienlijk kan verminderen, kan het ook het risico op een verstopt mondstuk of andere printcomplicaties vergroten."
@@ -11551,6 +11611,9 @@ msgstr "Gereserveerde zoekworden gevonden"
msgid "Setting Overrides"
msgstr "Overschrijvingen instellen"
+msgid "Retraction when switching material"
+msgstr "Terugtrekken (retraction) bij het wisselen van filament"
+
msgid "Basic information"
msgstr "Basisinformatie"
@@ -11689,6 +11752,14 @@ msgstr "Geschikte proces profielen"
msgid "Printable space"
msgstr "Ruimte waarbinnen geprint kan worden"
+# AI Translated
+msgid "Printer Agent"
+msgstr "Printeragent"
+
+# AI Translated
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Selecteer de implementatie van de netwerkagent voor de communicatie met de printer. Beschikbare agenten worden bij het opstarten geregistreerd."
+
# AI Translated
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
@@ -11829,9 +11900,6 @@ msgstr "Limieten voor laaghoogte"
msgid "Z-Hop"
msgstr "Z-hop"
-msgid "Retraction when switching material"
-msgstr "Terugtrekken (retraction) bij het wisselen van filament"
-
# AI Translated
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
@@ -13323,6 +13391,10 @@ msgstr " bevindt zich te dicht bij het uitsluitingsgebied en er zullen botsingen
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " ligt te dicht bij het gebied voor klontdetectie, waardoor er botsingen zullen ontstaan.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " ligt gedeeltelijk buiten het printbare gebied en kan niet worden geprint.\n"
+
# AI Translated
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "De geselecteerde mondstuktemperaturen zijn niet compatibel. De mondstuktemperatuur van elk filament moet binnen het aanbevolen mondstuktemperatuurbereik van de andere filamenten vallen. Anders kan het mondstuk verstopt raken of kan de printer beschadigd raken."
@@ -13686,10 +13758,6 @@ msgstr "3MF gebruiken in plaats van G-code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Schakel dit in als de printer een 3MF-bestand als printopdracht accepteert. Indien ingeschakeld verzendt Orca Slicer het geslicede bestand als een .gcode.3mf in plaats van als een gewoon .gcode-bestand."
-# AI Translated
-msgid "Printer Agent"
-msgstr "Printeragent"
-
# AI Translated
msgid "Select the network agent implementation for printer communication."
msgstr "Selecteer de implementatie van de netwerkagent voor de communicatie met de printer."
@@ -14443,9 +14511,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Snelheid van interne bruggen. Als de waarde als percentage wordt uitgedrukt, wordt deze berekend op basis van bridge_speed. De standaardwaarde is 150%."
-msgid "Brim width"
-msgstr "Rand breedte"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Dit is de afstand van het model tot de buitenste randlijn."
@@ -14537,6 +14602,14 @@ msgstr ""
"De geometrie wordt vereenvoudigd voordat scherpe hoeken worden gedetecteerd. Deze parameter geeft de minimale lengte van de afwijking voor die vereenvoudiging aan.\n"
"0 om uit te schakelen."
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Randoren alleen aan de buitenzijde"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Genereert alleen muisoren op de buitencontour van het model, met uitsluiting van gaten en gesloten secties."
+
msgid "upward compatible machine"
msgstr "opwaarts compatibele machine"
@@ -15846,6 +15919,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Gyroide"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Afvlakkingsfactor voor dunne vulling"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Bepaalt hoe sterk de hoeken van de dunne vulling worden afgerond. 0% behoudt het oorspronkelijke scherpe pad, terwijl 100% de grootst mogelijke bochten tussen aangrenzende vullijnen oplevert."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Versnelling van de topoppervlakte-invulling. Gebruik van een lagere waarde kan de kwaliteit van de bovenlaag verbeteren."
@@ -16456,6 +16537,14 @@ msgstr "Het type G-code waarmee de printer compatibel is."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "G-code-configuratieblok overslaan"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "Schrijft het CONFIG_BLOCK (de sleutel/waarde-paren van de slicerconfiguratie) niet naar het G-code-bestand. Dit kan helpen bij printers waarvan de firmware vastloopt bij het verwerken van deze commentaarregels (bijv. Anycubic go-klipper). Let op: het G-code-bestand bevat dan geen slicerinstellingen meer, dus door het weer in OrcaSlicer te importeren wordt de configuratie niet hersteld."
+
# AI Translated
msgid "Pellet Modded Printer"
msgstr "Printer omgebouwd voor pellets"
@@ -17653,6 +17742,14 @@ msgstr "Lange terugtrekking bij extruderwissel"
msgid "Retraction distance when extruder change"
msgstr "Terugtrekafstand bij extruderwissel"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Terugtreklengte (Gereedschapswissel)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Wanneer het terugtrekken vóór een gereedschapswissel wordt geactiveerd, wordt het filament met de opgegeven hoeveelheid teruggetrokken (de lengte wordt gemeten op het onbewerkte filament, voordat het de extruder ingaat)."
+
# AI Translated
msgid "Z-hop height"
msgstr "Z-hop-hoogte"
@@ -17763,6 +17860,10 @@ msgstr "Extra lengte bij herstart"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Als retracten wordt gecompenseerd na een beweging, wordt deze extra hoeveelheid filament geëxtrudeerd. Deze instelling is zelden van toepassing."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Extra lengte bij herstart (Gereedschapswissel)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Als retracten wordt gecompenseerd na een toolwisseling, wordt deze extra hoeveelheid filament geëxtrudeerd."
@@ -18255,6 +18356,14 @@ msgstr "Toolwissel op het afveegblok"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Dwing de printkop naar het afveegblok te bewegen voordat de opdracht voor de toolwissel (Tx) wordt gegeven. Alleen relevant voor printers met meerdere extruders (meerdere printkoppen) die een afveegblok van type 2 gebruiken. Standaard slaat Orca deze verplaatsing op machines met meerdere printkoppen over, omdat de firmware de kopwissel afhandelt, waardoor de Tx-opdracht boven het geprinte onderdeel kan worden gegeven. Schakel deze optie in als u wilt dat de toolwissel altijd boven het afveegblok wordt uitgevoerd."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Wachten op temperatuur bij het afveegblok"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Pakt het nieuwe gereedschap op zonder te wachten tot het de printtemperatuur bereikt, verplaatst zich naar het afveegblok en wacht daar op de temperatuur, vlak voor het spoelen. Het materiaal dat tijdens het opwarmen uitloopt komt op het blok terecht in plaats van op het model, en de verplaatsing overlapt met het opwarmen. Alleen relevant voor printers met meerdere extruders (meerdere printkoppen) die een afveegblok van type 2 gebruiken. De firmware of de gereedschapswisselmacro mag niet zelf op de temperatuur wachten. Wanneer dit is uitgeschakeld, wordt het wachten op de temperatuur direct na het gereedschapswisselcommando uitgevoerd."
+
# AI Translated
msgid "No sparse layers (beta)"
msgstr "Geen dunne lagen (bèta)"
@@ -21860,10 +21969,6 @@ msgstr "Fysieke printer"
msgid "Print Host upload"
msgstr "Host-upload afdrukken"
-# AI Translated
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Selecteer de implementatie van de netwerkagent voor de communicatie met de printer. Beschikbare agenten worden bij het opstarten geregistreerd."
-
# AI Translated
msgid "Select a Flashforge printer"
msgstr "Selecteer een Flashforge-printer"
@@ -22918,9 +23023,6 @@ msgstr "Er is iets onverwachts gebeurd bij het inloggen. Probeer het opnieuw."
msgid "User canceled."
msgstr "Gebruiker geannuleerd."
-msgid "Head diameter"
-msgstr "Kopdiameter"
-
# AI Translated
msgid "Max angle"
msgstr "Maximale hoek"
@@ -23781,6 +23883,22 @@ msgstr ""
"Kromtrekken voorkomen\n"
"Wist je dat bij het printen van materialen die gevoelig zijn voor kromtrekken, zoals ABS, een juiste verhoging van de temperatuur van het warmtebed de kans op kromtrekken kan verkleinen?"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "Laaghoogte is te klein.\n"
+#~ "Het zal worden ingesteld op min_layer_height\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "De laaghoogte overschrijdt de limiet in Printerinstellingen -> Extruder -> Laaghoogtelimieten, dit kan problemen met de afdrukkwaliteit veroorzaken."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Automatisch aanpassen aan het ingestelde bereik?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Kopdiameter"
+
# AI Translated
#~ msgid "Print order within a single layer."
#~ msgstr "Printvolgorde binnen één laag."
diff --git a/localization/i18n/pl/OrcaSlicer_pl.po b/localization/i18n/pl/OrcaSlicer_pl.po
index 8599e750e4..e8acc62a9b 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.3.0-rc\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: \n"
"Last-Translator: Krzysztof Morga <>\n"
"Language-Team: \n"
@@ -4843,6 +4843,23 @@ msgstr "Obecna temperatura komory jest wyższa niż bezpieczna temperatura dla f
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "Minimalna temperatura komory (%d℃) jest wyższa niż docelowa temperatura komory (%d℃). Wartość minimalna to próg, przy którym rozpoczyna się druk, podczas gdy komora nadal nagrzewa się do wartości docelowej, więc nie powinna jej przekraczać. Zostanie ograniczona do wartości docelowej."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "Wysokość warstwy jest zbyt mała. Zostanie ustawiona na minimum (%g mm)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "Wysokość warstwy wykracza poza limity ustawione w Ustawieniach Drukarki -> Ekstruder -> Limity wysokości warstwy, co może powodować problemy z jakością druku."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Dostosować ją automatycznie do limitu (%g mm)?"
+
+msgid "Adjust"
+msgstr "Dostosuj"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4965,6 +4982,13 @@ msgstr ""
"Tak — włącz generator ścian Arachne\n"
"Nie — wyłącz generator ścian Arachne i ustaw tryb [Przesunięcie] skóry fuzzy"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Promień ucha brim"
+
+msgid "Brim width"
+msgstr "Szerokość brimu"
+
# AI Translated
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "Tryb spiralny działa tylko wtedy, gdy liczba pętli ściany wynosi 1, podpory są wyłączone, wykrywanie zlepiania przez sondowanie jest wyłączone, liczba warstw górnej powłoki wynosi 0, gęstość wypełnienia wynosi 0, a typ timelapse jest tradycyjny."
@@ -5226,6 +5250,14 @@ msgstr "Nie udało się wygenerować kodu kalibracji"
msgid "Calibration error"
msgstr "Błąd kalibracji"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Ta drukarka nie ma skonfigurowanego sprzętu wymaganego przez ten element sterujący."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Ten element sterujący nie jest obsługiwany przez tę drukarkę."
+
# AI Translated
msgid "Network unavailable"
msgstr "Sieć niedostępna"
@@ -6109,7 +6141,7 @@ msgstr "Objętość:"
msgid "Size:"
msgstr "Rozmiar:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "Wykryto konflikty ścieżek G-code na warstwie %d, Z = %.2lfmm. Proszę oddalić od siebie obiekty będące w konflikcie (%s <-> %s)."
@@ -6295,6 +6327,10 @@ msgstr "Wiele urządzeń"
msgid "Project"
msgstr "Projekt"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Urządzenie (Web)"
+
msgid "Yes"
msgstr "Tak"
@@ -8444,24 +8480,24 @@ msgid "Replaced with 3D files from directory:\n"
msgstr "Zastąpiono plikami 3D z katalogu:\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Pominięto %1%: ten sam plik.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ Pominięto %s: ten sam plik.\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Pominięto %1%: plik nie istnieje.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ Pominięto %s: plik nie istnieje.\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Pominięto %1%: nie udało się zastąpić.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ Pominięto %s: nie udało się zastąpić.\n"
# AI Translated
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Zastąpiono %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ Zastąpiono %s.\n"
# AI Translated
msgid "Replaced volumes"
@@ -9232,6 +9268,18 @@ msgstr "Umożliwia wysyłanie zadania do wielu urządzeń jednocześnie i zarzą
msgid "Pop up to select filament grouping mode"
msgstr "Okno dialogowe do wyboru trybu grupowania filamentów"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Widoczne strony wtyczek"
+
+# AI Translated
+msgid "pages"
+msgstr "stron"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Liczba stron wtyczek wyświetlanych jako stałe karty, zanim pozostałe strony zostaną zwinięte do listy rozwijanej na ostatniej karcie."
+
# AI Translated
msgid "Behaviour"
msgstr "Zachowanie"
@@ -9647,6 +9695,18 @@ msgstr "Pokaż nieobsługiwane profile"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Pokazuj niekompatybilne/nieobsługiwane profile na listach rozwijanych drukarek i filamentów. Tych profili nie można wybrać."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Eksperymentalne) Używaj agentów drukarki zamiast serwerów druku"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Kieruje zadania druku dla drukarek innych niż Bambu przez agentów wtyczek drukarki zamiast klasycznego przesyłania do serwera druku.\n"
+"Gdy opcja jest wyłączona, OrcaSlicer korzysta z dotychczasowego działania serwera druku."
+
# AI Translated
msgid "Experimental Features"
msgstr "Funkcje eksperymentalne"
@@ -9918,10 +9978,26 @@ msgstr "Profil użytkownika"
msgid "Preset Inside Project"
msgstr "Profil wewnątrz projektu"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Kopiuje do tego profilu wszystkie wartości odziedziczone z profilu nadrzędnego i usuwa relację dziedziczenia. Profile zgodne wyłącznie z profilem nadrzędnym mogą przestać być obsługiwane."
+
# AI Translated
msgid "Detach from parent"
msgstr "Odłącz od elementu nadrzędnego"
+# AI Translated
+msgid "Unique preset"
+msgstr "Profil niezależny"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Profil nadrzędny"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Ten profil nie dziedziczy z innego profilu."
+
msgid "Name is unavailable."
msgstr "Nazwa jest niedostępna."
@@ -10684,22 +10760,6 @@ msgstr "Czy na pewno włączyć tę opcję?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "Wzory wypełnienia są zwykle projektowane tak, aby samodzielnie obsługiwać obrót, co zapewnia prawidłowy druk i zamierzony efekt (np. Gyroidalny, Sześcienny). Obracanie bieżącego wzoru wypełnienia może prowadzić do niewystarczającego podparcia. Zachowaj ostrożność i dokładnie sprawdź, czy nie występują problemy z drukiem. Czy na pewno chcesz włączyć tę opcję?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"Wysokość warstwy jest zbyt mała.\n"
-"Ustawione zostanie na min_layer_height\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "Wysokość warstwy przekracza limit w Ustawieniach Drukarki -> Extruder -> Limity wysokości warstwy, co może powodować problemy z jakością druku."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Dostosować automatycznie do ustawionego zakresu?\n"
-
-msgid "Adjust"
-msgstr "Dostosuj"
-
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."
msgstr "Funkcja eksperymentalna: Polega na wycofywaniu filamentu na większą odległość w celu zminimalizowania płukania, a następne jego odcięcie. Choć może to znacząco zmniejszyć ilość zużytego filamentu, może również zwiększyć ryzyko zatknięcia dyszy lub innych problemów z drukowaniem."
@@ -10899,6 +10959,9 @@ msgstr "Znaleziono zarezerwowane słowa kluczowe"
msgid "Setting Overrides"
msgstr "Nadpisywane Ustawień"
+msgid "Retraction when switching material"
+msgstr "Retrakcja podczas zmiany filamentu"
+
msgid "Basic information"
msgstr "Podstawowe informacje"
@@ -11033,6 +11096,14 @@ msgstr "Kompatybilne profile procesów"
msgid "Printable space"
msgstr "Przestrzeń do druku"
+# AI Translated
+msgid "Printer Agent"
+msgstr "Agent drukarki"
+
+# AI Translated
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Wybierz implementację agenta sieciowego do komunikacji z drukarką. Dostępni agenci są rejestrowani przy uruchamianiu."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -11165,9 +11236,6 @@ msgstr "Ograniczenia wysokości warstwy"
msgid "Z-Hop"
msgstr "Z-Hop"
-msgid "Retraction when switching material"
-msgstr "Retrakcja podczas zmiany filamentu"
-
# AI Translated
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
@@ -12559,6 +12627,10 @@ msgstr " jest zbyt blisko obszaru wykluczenia, mogą wystąpić kolizje.\n"
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " jest zbyt blisko obszaru wykrywania zalepienia dyszy, co doprowadzi do kolizji.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " znajduje się częściowo poza obszarem druku i nie może zostać wydrukowany.\n"
+
# AI Translated
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "Wybrane temperatury dyszy są niezgodne. Temperatura dyszy każdego filamentu musi mieścić się w zalecanym zakresie temperatur dyszy pozostałych filamentów. W przeciwnym razie może dojść do zatkania dyszy lub uszkodzenia drukarki."
@@ -12901,10 +12973,6 @@ msgstr "Użyj 3MF zamiast G-code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Włącz tę opcję, jeśli drukarka przyjmuje plik 3MF jako zadanie druku. Po włączeniu Orca Slicer wysyła plik po cięciu jako .gcode.3mf zamiast zwykłego pliku .gcode."
-# AI Translated
-msgid "Printer Agent"
-msgstr "Agent drukarki"
-
# AI Translated
msgid "Select the network agent implementation for printer communication."
msgstr "Wybierz implementację agenta sieciowego do komunikacji z drukarką."
@@ -13617,9 +13685,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Prędkość wewnętrznych mostów. Jeśli wartość jest wyrażona w procentach, będzie obliczana na podstawie prędkości mostu. Wartość domyślna wynosi 150%."
-msgid "Brim width"
-msgstr "Szerokość brimu"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Odległość od modelu do najbardziej zewnętrznej linii brimu"
@@ -13703,6 +13768,14 @@ msgstr ""
"Kształt zostanie zredukowany przed wykryciem ostrych kątów. Ten parametr wskazuje minimalną długość odchylenia dla redukcji.\n"
"0, aby dezaktywować"
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Uszy brim tylko na zewnątrz"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Generuje uszy myszy tylko na zewnętrznym obrysie modelu, z pominięciem otworów i zamkniętych sekcji."
+
msgid "upward compatible machine"
msgstr "drukarka kompatybilna i wzwyż"
@@ -14896,6 +14969,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Gyroidalny"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Współczynnik wygładzania wypełnienia"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Określa, jak mocno zaokrąglane są narożniki wypełnienia. 0% zachowuje oryginalną ostrą ścieżkę, a 100% tworzy największe możliwe łuki pomiędzy sąsiednimi liniami wypełnienia."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Przyspieszenie dla wypełnienia górnej powierzchni. Użycie niższej wartości może poprawić jakość górnej powierzchni"
@@ -15459,6 +15540,14 @@ msgstr "Z jakim rodzajem G-code drukarka jest kompatybilna."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "Pomiń blok konfiguracyjny G-code"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "Nie zapisuje bloku CONFIG_BLOCK (par klucz/wartość z konfiguracją slicera) do pliku G-code. Może to pomóc w przypadku drukarek, których firmware ulega awarii podczas przetwarzania tych linii komentarza (np. Anycubic go-klipper). Uwaga: plik G-code nie będzie już zawierał ustawień slicera, więc ponowne zaimportowanie go do OrcaSlicer nie przywróci konfiguracji."
+
msgid "Pellet Modded Printer"
msgstr "Drukarka do druku granulatem"
@@ -16571,6 +16660,14 @@ msgstr "Długa retrakcja podczas zmian ekstruderów"
msgid "Retraction distance when extruder change"
msgstr "Długość retrakcji podczas zmian ekstruderów"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Długość retrakcji (Zmiana narzędzia)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Gdy retrakcja jest wyzwalana przed zmianą narzędzia, filament zostaje wycofany o określoną wartość (długość mierzona jest na surowym filamencie, przed wejściem do ekstrudera)."
+
msgid "Z-hop height"
msgstr "Wysokość Z-hop"
@@ -16669,6 +16766,10 @@ msgstr "Dodatkowa ilość dla powrotu"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Gdy retrakcja jest kompensowana po przemieszczeniu, ekstruder przepycha tę dodatkową ilość filamentu. To opcja jest rzadko potrzebna."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Dodatkowa ilość dla powrotu (Zmiana narzędzia)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Jeśli retrakcja jest korygowana po zmianie narzędzia, extruder przepchnie taką dodatkową ilość filamentu."
@@ -17099,6 +17200,14 @@ msgstr "Zmiana narzędzia na wieży czyszczącej"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Wymusza przemieszczenie głowicy do wieży czyszczącej przed wydaniem polecenia zmiany narzędzia (Tx). Dotyczy tylko drukarek wieloekstruderowych (wielogłowicowych) korzystających z wieży czyszczącej typu 2. Domyślnie Orca pomija to przemieszczenie na maszynach wielogłowicowych, ponieważ zamianą głowic zajmuje się oprogramowanie sprzętowe, przez co polecenie Tx może zostać wydane nad drukowaną częścią. Włącz tę opcję, jeśli chcesz, aby zmiana narzędzia zawsze następowała nad wieżą czyszczącą."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Czekaj na temperaturę na wieży czyszczącej"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Pobiera nowe narzędzie bez czekania, aż osiągnie temperaturę druku, przejeżdża do wieży czyszczącej i tam czeka na temperaturę, tuż przed płukaniem. Materiał wyciekający podczas nagrzewania trafia na wieżę zamiast na model, a przejazd nakłada się na nagrzewanie. Dotyczy wyłącznie drukarek z wieloma ekstruderami (wieloma głowicami) używających wieży czyszczącej typu 2. Firmware ani makro zmiany narzędzia nie mogą samodzielnie czekać na temperaturę. Gdy opcja jest wyłączona, oczekiwanie na temperaturę jest wysyłane bezpośrednio po poleceniu zmiany narzędzia."
+
msgid "No sparse layers (beta)"
msgstr "Warstwy bez czyszczenia (beta)"
@@ -20445,10 +20554,6 @@ msgstr "Fizyczna drukarka"
msgid "Print Host upload"
msgstr "Przesyłanie do hosta drukowania"
-# AI Translated
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Wybierz implementację agenta sieciowego do komunikacji z drukarką. Dostępni agenci są rejestrowani przy uruchamianiu."
-
# AI Translated
msgid "Select a Flashforge printer"
msgstr "Wybierz drukarkę Flashforge"
@@ -21401,9 +21506,6 @@ msgstr "Wystąpił problem podczas próby logowania, proszę spróbować ponowni
msgid "User canceled."
msgstr "Anulowane przez użytkownika."
-msgid "Head diameter"
-msgstr "Średnica łącznika"
-
msgid "Max angle"
msgstr "Maksymalny kąt"
@@ -22234,6 +22336,22 @@ msgstr ""
"Unikaj odkształceń\n"
"Czy wiesz, że podczas drukowania filamentami podatnymi na odkształcenia, takimi jak ABS, odpowiednie zwiększenie temperatury podgrzewanej płyty może zmniejszyć prawdopodobieństwo odkształceń?"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "Wysokość warstwy jest zbyt mała.\n"
+#~ "Ustawione zostanie na min_layer_height\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "Wysokość warstwy przekracza limit w Ustawieniach Drukarki -> Extruder -> Limity wysokości warstwy, co może powodować problemy z jakością druku."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Dostosować automatycznie do ustawionego zakresu?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Średnica łącznika"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Kolejność druku obiektów w obrębie jednej warstwy. Domyślnie lub według listy obiektów"
diff --git a/localization/i18n/pt_BR/OrcaSlicer_pt_BR.po b/localization/i18n/pt_BR/OrcaSlicer_pt_BR.po
index 58eabd99ef..1b39d4a159 100644
--- a/localization/i18n/pt_BR/OrcaSlicer_pt_BR.po
+++ b/localization/i18n/pt_BR/OrcaSlicer_pt_BR.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: 2026-07-26 11:14-0300\n"
"Last-Translator: Alexandre Folle de Menezes\n"
"Language-Team: Portuguese, Brazilian\n"
@@ -217,7 +217,6 @@ msgstr "Os filamentos %s são duros e quebradiços, podendo se romper no AMS. E
msgid "%s has a risk of nozzle clogging when using 0.4, 0.6, 0.8mm high-flow nozzles. Use with caution."
msgstr "%s apresenta risco de entupimento do bico ao utilizar bicos de alto fluxo de 0,4, 0,6 ou 0,8 mm. Use com cautela."
-# AI Translated
#, c-format, boost-format
msgid "%s may fail to load or unload due to the Filament Track Switch. If you wish to continue."
msgstr "%s pode falhar ao carregar ou descarregar devido ao Filament Track Switch. Se você deseja continuar."
@@ -347,7 +346,6 @@ msgstr "Leitura "
msgid "Please wait"
msgstr "Por favor, aguarde"
-# AI Translated
msgid "Reading"
msgstr "Lendo"
@@ -700,7 +698,6 @@ msgstr "Redefinir posição"
msgid "Reset rotation"
msgstr "Redefinir rotação"
-# AI Translated
msgid "World"
msgstr "Mundo"
@@ -988,7 +985,6 @@ msgstr "Plano de corte com cavidade é inválido"
msgid "Connector"
msgstr "Conector"
-# AI Translated
#, boost-format
msgid ""
"Objects(%1%) have duplicated connectors. Some connectors may be missing in slicing result.\n"
@@ -2032,7 +2028,6 @@ msgstr ""
"\n"
"Se você não usava o Bambu Cloud para sincronizar perfis, esta mudança não afeta você e você pode ignorar esta mensagem com segurança."
-# AI Translated
msgid "Profile syncing change"
msgstr "Alteração de sincronização de perfil"
@@ -3429,7 +3424,7 @@ msgid "AMS has not been initialized. Please initialize it before use."
msgstr "O AMS não foi inicializado. Por favor, inicialize-o antes de usar."
msgid "Changing fan speed during printing may affect print quality, please choose carefully."
-msgstr "Mudar a velocidade do ventilador durante a impressão pode afetar a qualidade da impressão. Escolha com cuidado."
+msgstr "Mudar a velocidade da ventoinha durante a impressão pode afetar a qualidade da impressão. Escolha com cuidado."
msgid "Change Anyway"
msgstr "Mudar Mesmo Assim"
@@ -3441,7 +3436,7 @@ msgid "Filter"
msgstr "Filtrar"
msgid "Enabling filtration redirects the right fan to filter gas, which may reduce cooling performance."
-msgstr "Ativar a filtragem redireciona o ventilador direito para filtrar o gás, o que pode reduzir o desempenho de resfriamento."
+msgstr "Ativar a filtragem redireciona a ventoinha direito para filtrar o gás, o que pode reduzir o desempenho de resfriamento."
msgid "Enabling filtration during printing may reduce cooling and affect print quality. Please choose carefully."
msgstr "Habilitar a filtragem durante a impressão pode reduzir o resfriamento e afetar a qualidade da impressão. Escolha com cuidado."
@@ -3474,7 +3469,7 @@ msgid "Top"
msgstr "Topo"
msgid "The fan controls the temperature during printing to improve print quality. The system automatically adjusts the fan's switch and speed according to different printing materials."
-msgstr "O ventilador controla a temperatura durante a impressão para melhorar a qualidade da impressão. O sistema ajusta automaticamente a ativação e a velocidade do ventilador de acordo com os diferentes materiais de impressão."
+msgstr "A ventoinha controla a temperatura durante a impressão para melhorar a qualidade da impressão. O sistema ajusta automaticamente a ativação e a velocidade da ventoinha de acordo com os diferentes materiais de impressão."
msgid "Cooling mode is suitable for printing PLA/PETG/TPU materials and filters the chamber air."
msgstr "O modo de resfriamento é adequado para impressão com materiais PLA/PETG/TPU e filtra o ar da câmara."
@@ -4582,6 +4577,23 @@ msgstr "A temperatura da câmara atual está mais alta do que a temperatura segu
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "A temperatura mínima da câmara (%d℃) é superior à temperatura alvo da câmara (%d℃). O valor mínimo é o limite no qual a impressão começa enquanto a câmara continua aquecendo em direção ao alvo; portanto, não deve execedê-lo. O valor será limitado ao alvo."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "A altura da camada é muito pequena. Ela será definida para o mínimo (%g mm)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "A altura da camada está fora dos limites definidos em Configurações da Impressora -> Extrusora -> Limites de altura da camada, isso pode causar problemas de qualidade de impressão."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Ajustar automaticamente para o limite (%g mm)?"
+
+msgid "Adjust"
+msgstr "Ajustar"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4701,6 +4713,13 @@ msgstr ""
"Sim - Habilitar Gerador de Parede Arachne\n"
"Não - Desabilitar Gerador de Parede Arachne e setar o modo [Deslocamento] da Textura Difusa"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Raio da orelha da borda"
+
+msgid "Brim width"
+msgstr "Largura da borda"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "O modo espiral só funciona quando as voltas da parede são 1, o suporte está desativado, a detecção de aglomeração por sondagem está desativada, as camadas da casca de topo são 0, a densidade de preenchimento esparso é 0 e o tipo de timelapse é tradicional."
@@ -4798,7 +4817,7 @@ msgid "Pause (AMS offline)"
msgstr "Pausa (AMS offline)"
msgid "Pause (low speed of the heatbreak fan)"
-msgstr "Pausa (baixa velocidade do ventilador do heatbreak)"
+msgstr "Pausa (baixa velocidade da ventoinha do heatbreak)"
msgid "Pause (chamber temperature control problem)"
msgstr "Pausa (problema no controle de temperatura da câmara)"
@@ -4922,7 +4941,7 @@ msgstr "Para garantir sua segurança, certas tarefas de processamento (como o la
#, c-format, boost-format
msgid "The chamber temperature is too high, which may cause the filament to soften. Please wait until the chamber temperature drops below %d℃. You may open the front door or enable fans to cool down."
-msgstr "A temperatura da câmara está muito alta, o que pode causar o amolecimento do filamento. Aguarde até que a temperatura da câmara caia abaixo de %d℃. Você pode abrir a porta frontal ou ligar os ventiladores para resfriar."
+msgstr "A temperatura da câmara está muito alta, o que pode causar o amolecimento do filamento. Aguarde até que a temperatura da câmara caia abaixo de %d℃. Você pode abrir a porta frontal ou ligar as ventoinhas para resfriar."
#, c-format, boost-format
msgid "AMS temperature is too high, which may cause the filament to soften. Please wait until the AMS temperature drops below %d℃."
@@ -4955,6 +4974,14 @@ msgstr "Falha ao gerar o G-code de calibração"
msgid "Calibration error"
msgstr "Erro de calibração"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Esta impressora não está configurada com o hardware que este controle requer."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Este controle não é suportado nesta impressora."
+
msgid "Network unavailable"
msgstr "Rede indisponível"
@@ -5208,7 +5235,7 @@ msgid "Jerk"
msgstr "Jerk"
msgid "Fan Speed"
-msgstr "Velocidade do Ventilador"
+msgstr "Velocidade da Ventoinha"
msgid "Flow"
msgstr "Fluxo"
@@ -5314,7 +5341,7 @@ msgid "Flow: "
msgstr "Fluxo: "
msgid "Fan: "
-msgstr "Ventilador: "
+msgstr "Ventoinha: "
msgid "Temperature: "
msgstr "Temperatura: "
@@ -5350,7 +5377,7 @@ msgid "Flow rate"
msgstr "Taxa de fluxo"
msgid "Fan speed"
-msgstr "Velocidade do ventilador"
+msgstr "Velocidade da ventoinha"
msgid "Time"
msgstr "Tempo"
@@ -5464,7 +5491,7 @@ msgid "Jerk (mm/s)"
msgstr "Jerk (mm/s)"
msgid "Fan speed (%)"
-msgstr "Velocidade do ventilador (%)"
+msgstr "Velocidade da ventoinha (%)"
msgid "Temperature (℃)"
msgstr "Temperatura (℃)"
@@ -5798,7 +5825,7 @@ msgstr "Volume:"
msgid "Size:"
msgstr "Tamanho:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "Foram encontrados conflitos de caminhos de G-code na camada %d, Z = %.2lfmm. Por favor, separe mais os objetos em conflito (%s <-> %s)."
@@ -5979,6 +6006,10 @@ msgstr "Multi-dispositivo"
msgid "Project"
msgstr "Projeto"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Dispositivo (Web)"
+
msgid "Yes"
msgstr "Sim"
@@ -7368,12 +7399,11 @@ msgstr "Inferior"
msgid "Plugin Selection"
msgstr "Seleção de plugins"
-# AI Translated
msgid ""
"No plugins capabilities available for this type.\n"
"Enable or install some to use."
msgstr ""
-"Nenhum recurso de plugins disponível para este tipo.\n"
+"Nenhuma capacidade de plugin disponível para este tipo.\n"
"Ative ou instale algum para usar."
msgid "There is stringing-prone filament in the current print job. Enabling nozzle clumping detection now may degrade print quality. Are you sure you want to enable it?"
@@ -8026,21 +8056,21 @@ msgstr "Diretório para substituição não foi selecionado"
msgid "Replaced with 3D files from directory:\n"
msgstr "Substituído por arquivos 3D do diretório:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ %1% Ignorados: mesmo arquivo.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ %s Ignorados: mesmo arquivo.\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ %1% Ignorados: arquivo não existe.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ %s Ignorados: arquivo não existe.\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ %1% Ignorados: falha ao substituir.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ %s Ignorados: falha ao substituir.\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ %1% Substituídos.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ %s Substituídos.\n"
msgid "Replaced volumes"
msgstr "Volumes substiruídos"
@@ -8765,6 +8795,18 @@ msgstr "Com esta opção habilitada, você pode enviar uma tarefa para vários d
msgid "Pop up to select filament grouping mode"
msgstr "Abrir seleção do modo de agrupamento de filamento"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Páginas de plugin visíveis"
+
+# AI Translated
+msgid "pages"
+msgstr "páginas"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Número de páginas de plugin exibidas como abas fixas antes que as páginas restantes sejam agrupadas em um menu suspenso na última aba."
+
msgid "Behaviour"
msgstr "Comportamento"
@@ -9119,6 +9161,18 @@ msgstr "Mostrar predefinições não suportadas"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Exibir predefinições incompatíveis e não suportadas nas listas de impressora e filamento. Essas predefinições não podem ser selecionadas."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Experimental) Usar agentes de impressora em vez de hosts de impressão"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Encaminha os trabalhos de impressão de impressoras que não são Bambu pelos agentes de plugin de impressora em vez do fluxo clássico de envio ao host de impressão.\n"
+"Quando desativado, o OrcaSlicer usa o comportamento antigo do host de impressão."
+
msgid "Experimental Features"
msgstr "Recursos Experimentais"
@@ -9380,9 +9434,25 @@ msgstr "Predefinição do Usuário"
msgid "Preset Inside Project"
msgstr "Predefinição Dentro do Projeto"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Copia para esta predefinição todos os valores herdados da predefinição pai e remove a relação de herança. Predefinições compatíveis apenas com a predefinição pai podem deixar de ser suportadas."
+
msgid "Detach from parent"
msgstr "Separar do pai"
+# AI Translated
+msgid "Unique preset"
+msgstr "Predefinição única"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Predefinição pai"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Esta predefinição não herda de outra predefinição."
+
msgid "Name is unavailable."
msgstr "O nome não está disponível."
@@ -9758,7 +9828,7 @@ msgid "Unable to automatically match to suitable filament. Please click to manua
msgstr "Não foi possível encontrar automaticamente um filamento adequado. Clique para selecionar manualmente."
msgid "Install toolhead enhanced cooling fan to prevent filament softening."
-msgstr "Instale um ventilador de resfriamento aprimorado no cabeçote de impressão para evitar o amolecimento do filamento."
+msgstr "Instale uma ventoinha de resfriamento aprimorado no cabeçote de impressão para evitar o amolecimento do filamento."
msgid "Smooth Cool Plate"
msgstr "Placa Fria Lisa"
@@ -10102,24 +10172,6 @@ msgstr "Tem certeza de que deseja habilitar esta opção?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "Padrões de preenchimento são projetados para lidar com a rotação automaticamente para garantir a impressão adequada e atingir os efeitos pretendidos (Ex. Giroide, Cúbico). Girar o padrão de preenchimento esparso atual pode causar suporte insuficiente. Prossiga com cautela e verifique cuidadosamente se há possíveis problemas de impressão. Tem certeza de que deseja habilitar esta opção?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"A altura da camada é muito pequena.\n"
-"Ela será definida como altura mínima da camada\n"
-"A altura da camada é muito pequena.\n"
-"Ela será definida como altura mínima da camada\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "A altura da camada excede o limite em Configurações da Impressora -> Extrusora -> Limites de altura da camada, isso pode causar problemas de qualidade de impressão."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Ajustar automaticamente à faixa definida?\n"
-
-msgid "Adjust"
-msgstr "Ajustar"
-
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."
msgstr "Funcionalidade experimental: Retrair e cortar o filamento a uma distância maior durante mudanças de filamento para minimizar a purga. Embora possa reduzir notavelmente a purga, ele também pode elevar o risco de bolhas no bico ou outras complicações de impressão."
@@ -10314,6 +10366,9 @@ msgstr "Palavras-chave reservadas encontradas"
msgid "Setting Overrides"
msgstr "Sobrescrever configurações"
+msgid "Retraction when switching material"
+msgstr "Retração ao trocar material"
+
msgid "Basic information"
msgstr "Informações básicas"
@@ -10382,25 +10437,25 @@ msgid "Cooling for specific layer"
msgstr "Resfriamento para camada específica"
msgid "Part cooling fan"
-msgstr "Ventilador de resfriamento de peças"
+msgstr "Ventoinha de resfriamento de peças"
msgid "Min fan speed threshold"
-msgstr "Limiar de velocidade mínima do ventilador"
+msgstr "Limiar de velocidade mínima da ventoinha"
msgid "The part cooling fan will run at the minimum fan speed when the estimated layer time is longer than the threshold value. When the layer time is shorter than the threshold, the fan speed will be interpolated between the minimum and maximum fan speed according to layer printing time."
-msgstr "O ventilador de resfriamento de peças irá girar na velocidade mínima quando o tempo estimado da camada for mais longo do que o valor de limiar. Quando o tempo da camada for mais curto que o limiar, a velocidade do ventilador é interpolada entre a velocidade mínima e máxima de acordo com o tempo de impressão da camada."
+msgstr "A ventoinha de resfriamento de peças irá girar na velocidade mínima quando o tempo estimado da camada for mais longo do que o valor de limiar. Quando o tempo da camada for mais curto que o limiar, a velocidade da ventoinha é interpolada entre a velocidade mínima e máxima de acordo com o tempo de impressão da camada."
msgid "Max fan speed threshold"
-msgstr "Limiar de velocidade máxima do ventilador"
+msgstr "Limiar de velocidade máxima da ventoinha"
msgid "The part cooling fan will run at maximum speed when the estimated layer time is shorter than the threshold value."
-msgstr "O ventilador de resfriamento de peças irá girar na velocidade máxima quando o tempo estimado da camada for mais curto que o limiar."
+msgstr "A ventoinha de resfriamento de peças irá girar na velocidade máxima quando o tempo estimado da camada for mais curto que o limiar."
msgid "Auxiliary part cooling fan"
-msgstr "Ventilador auxiliar de resfriamento de peças"
+msgstr "Ventoinha auxiliar de resfriamento de peças"
msgid "Exhaust fan"
-msgstr "Ventilador de exaustão"
+msgstr "Ventoinha de exaustão"
msgid "During print"
msgstr "Durante a impressão"
@@ -10441,6 +10496,12 @@ msgstr "Perfis de processo compatíveis"
msgid "Printable space"
msgstr "Espaço de impressão"
+msgid "Printer Agent"
+msgstr "Agente de Impressora"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Selecione a implementação do agente de rede para comunicação com a impressora. Os agentes disponíveis são registrados na inicialização."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10450,10 +10511,10 @@ msgid "G-code flavor is switched"
msgstr "Tipo de G-code está trocado"
msgid "Cooling Fan"
-msgstr "Ventilador de resfriamento"
+msgstr "Ventoinha de resfriamento"
msgid "Fan speed-up time"
-msgstr "Tempo de aceleração do ventilador"
+msgstr "Tempo de aceleração da ventoinha"
msgid "Extruder Clearance"
msgstr "Folga da extrusora"
@@ -10566,9 +10627,6 @@ msgstr "Limites de altura da camada"
msgid "Z-Hop"
msgstr "Z-Hop"
-msgid "Retraction when switching material"
-msgstr "Retração ao trocar material"
-
# AI Translated
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
@@ -11770,7 +11828,6 @@ msgstr "Erro de agrupamento: "
msgid " can not be placed in the "
msgstr " não pode ser colocado na "
-# AI Translated
msgid "Group error in manual mode. Please check nozzle count or regroup."
msgstr "Erro de agrupamento no modo manual. Por favor, verifique o número de bicos ou reagrupe."
@@ -11900,6 +11957,10 @@ msgstr " está muito perto de uma área de exclusão, e colisões vão ocorrer.\
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " está muito perto da área de detecção de aglomeração, e ocorrerão colisões.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " está parcialmente fora da área imprimível, e não pode ser impresso.\n"
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "As temperaturas dos bicos selecionadas são incompatíveis. A temperatura do bico de cada filamento deve estar dentro da faixa de temperatura recomendada para os demais filamentos. Caso contrário, pode ocorrer entupimento do bico ou danos à impressora."
@@ -12096,7 +12157,6 @@ msgstr "A contração de filamento não será usada porque a contração dos fil
msgid "Generating skirt & brim"
msgstr "Gerando saia e borda"
-# AI Translated
msgid ""
"Per-object skirts cannot fit between the objects in By object print sequence.\n"
"\n"
@@ -12214,9 +12274,6 @@ msgstr "Usar 3MF em vez de G-code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Ative esta opção se a impressora aceitar um arquivo 3MF como trabalho de impressão. Quando ativada, o OrcaSlicer envia o arquivo fatiado como .gcode.3mf, em vez de um arquivo .gcode comum."
-msgid "Printer Agent"
-msgstr "Agente de Impressora"
-
msgid "Select the network agent implementation for printer communication."
msgstr "Selecione a implementação do agente de rede para comunicação com a impressora."
@@ -12277,9 +12334,8 @@ msgstr "API Key"
msgid "HTTP digest"
msgstr "Digest HTTP"
-# AI Translated
msgid "Configuration for the plugin capabilities this preset uses, overriding the global Capabilities configuration. Stored as a raw JSON array and edited through the dialog behind the button, never typed in directly."
-msgstr "Configuração dos recursos de plugin que esta predefinição usa, substituindo a configuração global de Recursos. Armazenada como um array JSON bruto e editada por meio da caixa de diálogo atrás do botão, nunca digitada diretamente."
+msgstr "Configuração das capacidades de plugin que esta predefinição usa, substituindo a configuração global de Capacidades. Armazenada como um array JSON bruto e editada por meio da caixa de diálogo atrás do botão, nunca digitada diretamente."
msgid "Avoid crossing walls"
msgstr "Evitar atravessar paredes"
@@ -12420,26 +12476,26 @@ msgid "Force cooling for overhangs and bridges"
msgstr "Resfriamento forçado para saliências e pontes"
msgid "Enable this option to allow adjustment of the part cooling fan speed for specifically for overhangs, internal and external bridges. Setting the fan speed specifically for these features can improve overall print quality and reduce warping."
-msgstr "Habilite esta opção para permitir o ajuste da velocidade do ventilador de resfriamento de peças especificamente para saliências, pontes internas e externas. Definir a velocidade do ventilador especificamente para esses recursos pode melhorar a qualidade geral da impressão e reduzir a deformação."
+msgstr "Habilite esta opção para permitir o ajuste da velocidade da ventoinha de resfriamento de peças especificamente para saliências, pontes internas e externas. Definir a velocidade da ventoinha especificamente para esses recursos pode melhorar a qualidade geral da impressão e reduzir a deformação."
msgid "Overhangs and external bridges fan speed"
-msgstr "Velocidade do ventilador para saliências e pontes externas"
+msgstr "Velocidade da ventoinha para saliências e pontes externas"
msgid ""
"Use this part cooling fan speed when printing bridges or overhang walls with an overhang threshold that exceeds the value set in the 'Overhangs cooling threshold' parameter above. Increasing the cooling specifically for overhangs and bridges can improve the overall print quality of these features.\n"
"\n"
"Please note, this fan speed is clamped on the lower end by the minimum fan speed threshold set above. It is also adjusted upwards up to the maximum fan speed threshold when the minimum layer time threshold is not met."
msgstr ""
-"Use esta parte da velocidade do ventilador de resfriamento ao imprimir pontes ou paredes salientes com um limite de saliência que exceda o valor definido no parâmetro 'Limiar de resfriamento de saliências' acima. Aumentar o resfriamento especificamente para saliências e pontes pode melhorar a qualidade geral de impressão desses recursos.\n"
+"Use esta parte da velocidade da ventoinha de resfriamento ao imprimir pontes ou paredes salientes com um limite de saliência que exceda o valor definido no parâmetro 'Limiar de resfriamento de saliências' acima. Aumentar o resfriamento especificamente para saliências e pontes pode melhorar a qualidade geral de impressão desses recursos.\n"
"\n"
-"Observe que esta velocidade do ventilador é fixada na extremidade inferior pelo limiar mínimo de velocidade do ventilador definido acima. Ela também é ajustada para cima até o limiar máximo de velocidade do ventilador quando o limiar mínimo de tempo da camada não é atingido."
+"Observe que esta velocidade da ventoinha é fixada na extremidade inferior pelo limiar mínimo de velocidade da ventoinha definido acima. Ela também é ajustada para cima até o limiar máximo de velocidade da ventoinha quando o limiar mínimo de tempo da camada não é atingido."
msgid "Overhang cooling activation threshold"
msgstr "Limiar de ativação de resfriamento de saliência"
#, no-c-format, no-boost-format
msgid "When the overhang exceeds this specified threshold, force the cooling fan to run at the 'Overhang Fan Speed' set below. This threshold is expressed as a percentage, indicating the portion of each line's width that is unsupported by the layer beneath it. Setting this value to 0% forces the cooling fan to run for all outer walls, regardless of the overhang degree."
-msgstr "Quando a saliência excede esse limiar especificado, força o ventilador de resfriamento a funcionar na 'Velocidade da ventoinha de saliência' definida abaixo. Esse limiar é expresso como uma porcentagem, indicando a parte da largura de cada linha que não é suportada pela camada abaixo dela. Definir esse valor como 0% força o ventilador de resfriamento a funcionar para todas as paredes externas, independentemente do grau de saliência."
+msgstr "Quando a saliência excede esse limiar especificado, força a ventoinha de resfriamento a funcionar na 'Velocidade da ventoinha de saliência' definida abaixo. Esse limiar é expresso como uma porcentagem, indicando a parte da largura de cada linha que não é suportada pela camada abaixo dela. Definir esse valor como 0% força a ventoinha de resfriamento a funcionar para todas as paredes externas, independentemente do grau de saliência."
msgid "External bridge infill direction"
msgstr "Direção de preenchimento de ponte externa"
@@ -12897,9 +12953,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Velocidade de pontes internas. Se o valor for expresso como uma porcentagem, ele será calculado com base na bridge_speed. O valor padrão é 150%."
-msgid "Brim width"
-msgstr "Largura da borda"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Essa é a distância do modelo até a linha da borda mais externa."
@@ -12979,6 +13032,14 @@ msgstr ""
"A geometria será decimada antes de detectar ângulos agudos. Este parâmetro indica o comprimento mínimo da divergência para a decimação.\n"
"0 para desativar."
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Orelhas da borda apenas externas"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Gera orelhas de rato apenas no contorno externo do modelo, excluindo furos e seções fechadas."
+
msgid "upward compatible machine"
msgstr "uáquina compatível ascendente"
@@ -13026,11 +13087,9 @@ msgstr ""
msgid "As object list"
msgstr "Como lista de objetos"
-# AI Translated
msgid "Best of all (shortest path)"
msgstr "Melhor de todas (caminho mais curto)"
-# AI Translated
msgid "Snake"
msgstr "Serpentina"
@@ -13038,7 +13097,7 @@ msgid "Slow printing down for better layer cooling"
msgstr "Diminuir a velocidade de impressão para melhor resfriamento de camada"
msgid "Enable this option to slow printing speed down to ensure that the final layer time is not shorter than the layer time threshold in \"Max fan speed threshold\", so that the layer can be cooled for a longer time. This can improve the quality for small details."
-msgstr "Ative esta opção para diminuir a velocidade de impressão para que o tempo da camada final não seja menor do que o limiar de tempo da camada em \"Limiar de velocidade máxima do ventilador\", para que a camada possa ser resfriada um tempo mais longo. Isso pode melhorar a qualidade para detalhes pequenos."
+msgstr "Ative esta opção para diminuir a velocidade de impressão para que o tempo da camada final não seja menor do que o limiar de tempo da camada em \"Limiar de velocidade máxima da ventoinha\", para que a camada possa ser resfriada um tempo mais longo. Isso pode melhorar a qualidade para detalhes pequenos."
msgid "Normal printing"
msgstr "Impressão normal"
@@ -13093,16 +13152,16 @@ msgid "Enable this to override the fan speed set in custom G-code after print co
msgstr "Habilite para substituir a velocidade da ventoinha definida no G-code personalizado após a conclusão da impressão."
msgid "Speed of exhaust fan during printing. This speed will override the speed in filament custom G-code."
-msgstr "Velocidade do ventilador de exaustão durante a impressão. Esta velocidade substituirá a velocidade no G-code personalizado do filamento."
+msgstr "Velocidade da ventoinha de exaustão durante a impressão. Esta velocidade substituirá a velocidade no G-code personalizado do filamento."
msgid "Speed of exhaust fan after printing completes."
-msgstr "Velocidade do ventilador de exaustão após a conclusão da impressão."
+msgstr "Velocidade da ventoinha de exaustão após a conclusão da impressão."
msgid "No cooling for the first"
msgstr "Sem resfriamento para as primeiras"
msgid "Turn off all cooling fans for the first few layers. This can be used to improve build plate adhesion."
-msgstr "Desligar todos os ventiladores de resfriamento para as primeiras camadas. Isso pode ser usado para obter uma melhor adesão à placa de impressão."
+msgstr "Desligar todos as ventoinhas de resfriamento para as primeiras camadas. Isso pode ser usado para obter uma melhor adesão à placa de impressão."
msgid "Don't support bridges"
msgstr "Não suportar pontes"
@@ -13278,11 +13337,9 @@ msgstr "Densidade da superfície superior"
msgid "Density of top surface layer. A value of 100% creates a fully solid, smooth top layer. Reducing this value results in a textured top surface, according to the chosen top surface pattern. A value of 0% will result in only the walls on the top layer being created. Intended for aesthetic or functional purposes, not to fix issues such as over-extrusion."
msgstr "Densidade da camada superior. Um valor de 100% cria uma camada superior totalmente sólida e lisa. Reduzir esse valor resulta em uma superfície superior texturizada, de acordo com o padrão de superfície superior escolhido. Um valor de 0% resultará na criação apenas das paredes da camada superior. Destinado a fins estéticos ou funcionais, não para corrigir problemas como extrusão excessiva."
-# AI Translated
msgid "Top surface expansion"
msgstr "Expansão da superfície superior"
-# AI Translated
msgid ""
"Expands the top surfaces by this distance to connect distinct top surfaces and fill gaps.\n"
"Useful for cases where the top surface is interrupted by a raised feature, such as text on a plane. Expanding it removes the holes beneath these features and creates a continuous path with a better finish for printing on top. The expansion is applied to the original top surface, before any other processing such as bridging or overhang detection."
@@ -13290,11 +13347,9 @@ msgstr ""
"Expande as superfícies superiores por esta distância para conectar superfícies superiores distintas e preencher lacunas.\n"
"Útil para casos em que a superfície superior é interrompida por um recurso elevado, como um texto sobre um plano. Expandi-la remove os buracos sob esses recursos e cria um caminho contínuo com melhor acabamento para imprimir por cima. A expansão é aplicada à superfície superior original, antes de qualquer outro processamento, como detecção de ponte ou de saliência."
-# AI Translated
msgid "Top expansion wall margin"
msgstr "Margem de parede da expansão superior"
-# AI Translated
msgid ""
"Using “Top surface expansion” may cause a surface that did not previously touch the model's outer walls to now do so.\n"
"This can cause contraction marks (such as the hull line) on the outer walls.\n"
@@ -13304,11 +13359,9 @@ msgstr ""
"Isso pode causar marcas de contração (como a linha do casco) nas paredes externas.\n"
"Ao adicionar uma pequena margem, essa contração não ocorrerá diretamente nas paredes, evitando assim uma marca visível."
-# AI Translated
msgid "Top expansion direction"
msgstr "Direção da expansão superior"
-# AI Translated
msgid ""
"Direction in which the top surface expansion grows.\n"
" - Inward grows into the holes and gaps left by features rising from the middle of a top surface.\n"
@@ -13335,11 +13388,9 @@ msgstr "Padrão de superfície inferior"
msgid "This is the line pattern of bottom surface infill, not including bridge infill."
msgstr "Este é o padrão de linha do preenchimento da superfície inferior, não incluindo o preenchimento de ponte."
-# AI Translated
msgid "Bottom surface density"
msgstr "Densidade da superfície inferior"
-# AI Translated
msgid ""
"Density of the bottom surface layer. Intended for aesthetic or functional purposes, not to fix issues such as over-extrusion.\n"
"WARNING: Lowering this value may negatively affect bed adhesion."
@@ -13347,31 +13398,27 @@ msgstr ""
"Densidade da camada da superfície inferior. Destinada a fins estéticos ou funcionais, não a corrigir problemas como sobre-extrusão.\n"
"AVISO: reduzir este valor pode afetar negativamente a aderência à mesa."
-# AI Translated
msgid "Top surface fill order"
msgstr "Ordem de preenchimento da superfície superior"
-# AI Translated
msgid ""
"Direction in which top surfaces are filled when using a center-based pattern (Concentric, Archimedean Chords, Octagram Spiral).\n"
"Outward starts at the center of the surface, so any excess material is pushed towards the edge where it is least visible. Inward starts at the edge and ends with the tight curves at the center.\n"
"Default uses shortest-path ordering, which may run in either direction."
msgstr ""
-"Direção em que as superfícies superiores são preenchidas ao usar um padrão baseado no centro (Concêntrico, Cordas de Arquimedes, Espiral Octograma).\n"
+"Direção em que as superfícies superiores são preenchidas ao usar um padrão baseado no centro (Concêntrico, Cordas de Arquimedes, Espiral de Octograma).\n"
"Para fora começa no centro da superfície, de modo que qualquer excesso de material seja empurrado em direção à borda, onde é menos visível. Para dentro começa na borda e termina com as curvas fechadas no centro.\n"
"O padrão usa a ordenação de caminho mais curto, que pode seguir em qualquer direção."
-# AI Translated
msgid "Bottom surface fill order"
msgstr "Ordem de preenchimento da superfície inferior"
-# AI Translated
msgid ""
"Direction in which bottom surfaces are filled when using a center-based pattern (Concentric, Archimedean Chords, Octagram Spiral).\n"
"Inward starts each surface with the wider outer curves, which improves first layer adhesion on build plates where the tight curves at the center may not stick. Outward starts at the center, pushing any excess material towards the edge.\n"
"Default uses shortest-path ordering, which may run in either direction."
msgstr ""
-"Direção em que as superfícies inferiores são preenchidas ao usar um padrão baseado no centro (Concêntrico, Cordas de Arquimedes, Espiral Octograma).\n"
+"Direção em que as superfícies inferiores são preenchidas ao usar um padrão baseado no centro (Concêntrico, Cordas de Arquimedes, Espiral de Octograma).\n"
"Para dentro começa cada superfície com as curvas externas mais largas, o que melhora a aderência da primeira camada em mesas onde as curvas fechadas no centro podem não aderir. Para fora começa no centro, empurrando qualquer excesso de material em direção à borda.\n"
"O padrão usa a ordenação de caminho mais curto, que pode seguir em qualquer direção."
@@ -13399,19 +13446,15 @@ msgstr "Limiar de pequenos perímetros"
msgid "This sets the threshold for small perimeter length. Default threshold is 0mm."
msgstr "Isso define o limiar para o comprimento do perímetro pequeno. O limiar padrão é 0 mm."
-# AI Translated
msgid "Small support perimeters"
msgstr "Pequenos perímetros de suporte"
-# AI Translated
msgid "Same as \"Small perimeters\", but for supports. This separate setting will affect the speed of support for areas <= `small_support_perimeter_threshold`. If expressed as a percentage (for example: 80%), it will be calculated on the support or support interface speed setting above. Set to zero for auto."
msgstr "Igual a \"Pequenos perímetros\", mas para suportes. Esta configuração separada afetará a velocidade do suporte para áreas <= `small_support_perimeter_threshold`. Se expressa como uma porcentagem (por exemplo: 80%), será calculada com base na configuração de velocidade de suporte ou de interface de suporte acima. Defina como zero para automático."
-# AI Translated
msgid "Small support perimeters threshold"
-msgstr "Limite de pequenos perímetros de suporte"
+msgstr "Limiar de pequenos perímetros de suporte"
-# AI Translated
msgid "This sets the threshold for small support perimeter length. The default threshold is 0mm."
msgstr "Isto define o limite para o comprimento de pequenos perímetros de suporte. O limite padrão é 0mm."
@@ -13603,7 +13646,6 @@ msgstr ""
msgid "Enable adaptive pressure advance within features (beta)"
msgstr "Habilitar pressure advance adaptativo nos recursos (beta)"
-# AI Translated
msgid ""
"Enable adaptive PA whenever there are flow changes in a feature, such as line width changes in a corner or overhangs.\n"
"\n"
@@ -13635,10 +13677,10 @@ msgid "Default line width if other line widths are set to 0. If expressed as a %
msgstr "Largura de linha padrão se outras larguras de linha estiverem definidas como 0. Se expresso como %, será calculado sobre o diâmetro do bico."
msgid "Keep fan always on"
-msgstr "Manter o ventilador sempre ligado"
+msgstr "Manter a ventoinha sempre ligado"
msgid "Enabling this setting means that part cooling fan will never stop entirely and will instead run at least at minimum speed to reduce the frequency of starting and stopping."
-msgstr "Habilitar esta configuração significa que o ventilador de resfriamento da peça nunca será desligado completamente e funcionará pelo menos na velocidade mínima para reduzir a frequência de inícios e paradas."
+msgstr "Habilitar esta configuração significa que a ventoinha de resfriamento da peça nunca será desligado completamente e funcionará pelo menos na velocidade mínima para reduzir a frequência de inícios e paradas."
msgid "Don't slow down outer walls"
msgstr "Não desacelerar as paredes externas"
@@ -13658,7 +13700,7 @@ msgid "Layer time"
msgstr "Tempo da camada"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
-msgstr "O ventilador de resfriamento de peças será ativado para camadas cujo tempo estimado seja mais curto que esse valor. A velocidade do ventilador é interpolada entre as velocidades mínima e máxima do ventilador de acordo com o tempo de impressão da camada."
+msgstr "A ventoinha de resfriamento de peças será ativado para camadas cujo tempo estimado seja mais curto que esse valor. A velocidade da ventoinha é interpolada entre as velocidades mínima e máxima da ventoinha de acordo com o tempo de impressão da camada."
msgid "s"
msgstr "s"
@@ -13706,7 +13748,6 @@ msgstr "Temperatura de purga"
msgid "Temperature when flushing filament. 0 indicates the upper bound of the recommended nozzle temperature range."
msgstr "Temperatura ao purgar filamento. 0 indica o limite superior da faixa de temperatura recomendada para o bico."
-# AI Translated
msgid "Flush temperature used in fast purge mode."
msgstr "Temperatura de purga usada no modo de purga rápida."
@@ -13972,11 +14013,9 @@ msgstr "Filamento imprimível"
msgid "The filament is printable in extruder."
msgstr "O filamento é imprimível na extrusora."
-# AI Translated
msgid "Filament-extruder compatibility"
msgstr "Compatibilidade filamento-extrusora"
-# AI Translated
msgid "A single 32-bit int encoding the compatibility level of a filament across all extruders (up to 10). Every 3 bits represent one extruder (bits [3*i, 3*i+2] for extruder i). 0: printable, 1: error, 2: critical warning, 3: warning, 4-7: reserved."
msgstr "Um único inteiro de 32 bits que codifica o nível de compatibilidade de um filamento em todas as extrusoras (até 10). Cada 3 bits representam uma extrusora (bits [3*i, 3*i+2] para a extrusora i). 0: imprimível, 1: erro, 2: aviso crítico, 3: aviso, 4-7: reservado."
@@ -14016,11 +14055,9 @@ msgstr "Direção do preenchimento sólido"
msgid "Angle for solid infill pattern, which controls the start or main direction of line."
msgstr "Ângulo para padrão de preenchimento sólido, que controla a direção inicial ou principal da linha."
-# AI Translated
msgid "Top layer direction"
msgstr "Direção da camada superior"
-# AI Translated
msgid ""
"Fixed angle for the top solid infill and ironing lines.\n"
"Set to -1 to follow the default solid infill direction."
@@ -14028,11 +14065,9 @@ msgstr ""
"Ângulo fixo para o preenchimento sólido superior e as linhas de alisamento.\n"
"Defina como -1 para seguir a direção padrão do preenchimento sólido."
-# AI Translated
msgid "Bottom layer direction"
msgstr "Direção da camada inferior"
-# AI Translated
msgid ""
"Fixed angle for the bottom solid infill lines.\n"
"Set to -1 to follow the default solid infill direction."
@@ -14047,11 +14082,9 @@ msgstr "Densidade do preenchimento esparso"
msgid "Density of internal sparse infill, 100% turns all sparse infill into solid infill and internal solid infill pattern will be used."
msgstr "Densidade do preenchimento esparso interno, 100% transforma todo o preenchimento esparso em preenchimento sólido e será usado o padrão de preenchimento sólido interno."
-# AI Translated
msgid "Align directions to model"
msgstr "Alinhar direções ao modelo"
-# AI Translated
msgid ""
"Aligns infill, bridge, ironing, and top/bottom surface directions to follow the model's orientation on the build plate.\n"
"When enabled, these directions rotate together with the model so the printed features keep their intended orientation relative to the part, preserving optimal strength and surface characteristics regardless of how the model is placed."
@@ -14071,11 +14104,9 @@ msgstr "Multilinhas de Preenchimento"
msgid "Using multiple lines for the infill pattern, if supported by infill pattern."
msgstr "Usar múltiplas linhas para o padrão de preenchimento, se suportado pelo padrão de preenchimento."
-# AI Translated
msgid "Z-buckling bias optimization (experimental)"
msgstr "Otimização de tendência à flambagem em Z (experimental)"
-# AI Translated
#, no-c-format, no-boost-format
msgid "Tightens the gyroid wave along the Z (vertical) axis at low infill density to shorten the effective vertical column length and improve Z-axis compression buckling resistance. Filament use is preserved. No effect at ~30% sparse infill density and above. Only applies when Sparse infill pattern is set to Gyroid."
msgstr "Aperta a onda giroide ao longo do eixo Z (vertical) em baixa densidade de preenchimento para encurtar o comprimento efetivo da coluna vertical e melhorar a resistência à flambagem por compressão no eixo Z. O uso de filamento é preservado. Sem efeito em densidade de preenchimento esparso de ~30% ou mais. Aplica-se apenas quando o padrão de Preenchimento esparso está definido como Giroide."
@@ -14143,6 +14174,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Giroide"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Fator de suavização do preenchimento esparso"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Controla o quanto os cantos do preenchimento esparso são arredondados. 0% mantém o trajeto original com cantos vivos, enquanto 100% produz as maiores curvas possíveis entre linhas de preenchimento adjacentes."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Esta é a aceleração do preenchimento da superfície superior. Usar um valor menor pode melhorar a qualidade da superfície superior."
@@ -14198,13 +14237,12 @@ msgstr "Jerk para primeira camada."
msgid "Jerk for travel."
msgstr "Jerk para deslocamento."
-# AI Translated
msgid ""
"Travel jerk of first layer.\n"
"The percentage value is relative to Travel Jerk."
msgstr ""
"Jerk de deslocamento da primeira camada.\n"
-"O valor percentual é relativo ao Jerk de deslocamento."
+"O valor percentual é relativo ao Jerk de Deslocamento."
msgid "Line width of the first layer. If expressed as a %, it will be computed over the nozzle diameter."
msgstr "Largura da linha da primeira camada. Se expresso como uma %, será calculado sobre o diâmetro do bico."
@@ -14243,10 +14281,10 @@ msgid "Nozzle temperature for printing the first layer with this filament"
msgstr "Temperatura do bico para imprimir a primeira camada com este filamento"
msgid "Full fan speed at layer"
-msgstr "Velocidade total do ventilador na camada"
+msgstr "Velocidade total da ventoinha na camada"
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."
-msgstr "A velocidade do ventilador aumentará linearmente de zero na camada \"close_fan_the_first_x_layers\" para o máximo na camada \"full_fan_speed_layer\". \"full_fan_speed_layer\" será ignorado se for menor que \"close_fan_the_first_x_layers\", caso em que o ventilador funcionará na velocidade máxima permitida na camada \"close_fan_the_first_x_layers\" + 1."
+msgstr "A velocidade da ventoinha aumentará linearmente de zero na camada \"close_fan_the_first_x_layers\" para o máximo na camada \"full_fan_speed_layer\". \"full_fan_speed_layer\" será ignorado se for menor que \"close_fan_the_first_x_layers\", caso em que a ventoinha funcionará na velocidade máxima permitida na camada \"close_fan_the_first_x_layers\" + 1."
msgid "layer"
msgstr "camada"
@@ -14254,7 +14292,6 @@ msgstr "camada"
msgid "First layer fan speed"
msgstr "Velocidade da ventoinha na primeira camada"
-# AI Translated
msgid ""
"Sets an exact fan speed for the first layer, overriding all other cooling settings. Useful for protecting 3D-printed toolhead parts (e.g. Voron-style ABS/ASA ducts) from a hot bed. A small amount of airflow cools the ducts down, without using full cooling that may in certain conditions hurt first-layer adhesion.\n"
"From the second layer onwards, normal cooling resumes.\n"
@@ -14262,44 +14299,44 @@ msgid ""
"Only available when \"No cooling for the first\" is 0.\n"
"Set to -1 to disable it."
msgstr ""
-"Define uma velocidade exata do ventilador para a primeira camada, substituindo todas as outras configurações de resfriamento. Útil para proteger peças impressas em 3D da cabeça da ferramenta (por exemplo, dutos ABS/ASA no estilo Voron) de uma mesa quente. Uma pequena quantidade de fluxo de ar resfria os dutos, sem usar o resfriamento total que pode, em certas condições, prejudicar a aderência da primeira camada.\n"
+"Define uma velocidade exata da ventoinha para a primeira camada, substituindo todas as outras configurações de resfriamento. Útil para proteger peças impressas em 3D da cabeça da ferramenta (por exemplo, dutos ABS/ASA no estilo Voron) de uma mesa aquecida. Uma pequena quantidade de fluxo de ar resfria os dutos, sem usar o resfriamento total que pode, em certas condições, prejudicar a aderência da primeira camada.\n"
"A partir da segunda camada, o resfriamento normal é retomado.\n"
-"Se \"Velocidade total do ventilador na camada\" também estiver definida, o ventilador aumenta suavemente deste valor na primeira camada até o seu alvo na camada escolhida.\n"
+"Se \"Velocidade total da ventoinha na camada\" também estiver definida, a ventoinha aumenta suavemente deste valor na primeira camada até o seu alvo na camada escolhida.\n"
"Disponível apenas quando \"Sem resfriamento nas primeiras\" é 0.\n"
"Defina como -1 para desativá-la."
msgid "Support interface fan speed"
-msgstr "Velocidade do ventilador para interface de suporte"
+msgstr "Velocidade da ventoinha para interface de suporte"
msgid ""
"This part cooling fan speed is applied when printing support interfaces. Setting this parameter to a higher than regular speed reduces the layer binding strength between supports and the supported part, making them easier to separate.\n"
"Set to -1 to disable it.\n"
"This setting is overridden by disable_fan_first_layers."
msgstr ""
-"Esta velocidade do ventilador de resfriamento de peças é aplicada ao imprimir interfaces de suporte. Definir este parâmetro para uma velocidade maior que a normal reduz a força de adesão de camada entre os suportes e a peça suportada, tornando-os mais fáceis de separar.\n"
+"Esta velocidade da ventoinha de resfriamento de peças é aplicada ao imprimir interfaces de suporte. Definir este parâmetro para uma velocidade maior que a normal reduz a força de adesão de camada entre os suportes e a peça suportada, tornando-os mais fáceis de separar.\n"
"Defina como -1 para desabilitá-lo.\n"
"Esta configuração é substituída por disable_fan_first_layers."
msgid "Internal bridges fan speed"
-msgstr "Velocidade do ventilador para pontes internas"
+msgstr "Velocidade da ventoinha para pontes internas"
msgid ""
"The part cooling fan speed used for all internal bridges. Set to -1 to use the overhang fan speed settings instead.\n"
"\n"
"Reducing the internal bridges fan speed, compared to your regular fan speed, can help reduce part warping due to excessive cooling applied over a large surface for a prolonged period of time."
msgstr ""
-"A velocidade do ventilador de resfriamento de peças usada para todas as pontes internas. Defina como -1 para usar as configurações de velocidade do ventilador de sobreposição.\n"
+"A velocidade da ventoinha de resfriamento de peças usada para todas as pontes internas. Defina como -1 para usar as configurações de velocidade da ventoinha de sobreposição.\n"
"\n"
-"Reduzir a velocidade do ventilador das pontes internas, em comparação com a velocidade normal do ventilador, pode ajudar a reduzir a deformação das peças devido ao resfriamento excessivo aplicado sobre uma grande superfície por um período prolongado de tempo."
+"Reduzir a velocidade da ventoinha das pontes internas, em comparação com a velocidade normal da ventoinha, pode ajudar a reduzir a deformação das peças devido ao resfriamento excessivo aplicado sobre uma grande superfície por um período prolongado de tempo."
msgid "Ironing fan speed"
-msgstr "Velocidade do ventilador para alisamento"
+msgstr "Velocidade da ventoinha para alisamento"
msgid ""
"This part cooling fan speed is applied when ironing. Setting this parameter to a lower than regular speed reduces possible nozzle clogging due to the low volumetric flow rate, making the interface smoother.\n"
"Set to -1 to disable it."
msgstr ""
-"Esta velocidade do ventilador de resfriamento de peças é aplicada durante o alisamento. Definir este parâmetro para uma velocidade menor que a normal reduz a possibilidade de entupimento do bico devido ao baixa taxa de fluxo volumétrico, tornando a interface mais suave.\n"
+"Esta velocidade da ventoinha de resfriamento de peças é aplicada durante o alisamento. Definir este parâmetro para uma velocidade menor que a normal reduz a possibilidade de entupimento do bico devido ao baixa taxa de fluxo volumétrico, tornando a interface mais suave.\n"
"Defina como -1 para desabilitá-lo."
msgid "Ironing flow"
@@ -14584,7 +14621,7 @@ msgid "Best auto arranging position in range [0,1] w.r.t. bed shape."
msgstr "Melhor posição de arranjo automático na faixa [0,1] em relação ao formato da mesa."
msgid "Enable this option if machine has auxiliary part cooling fan. G-code command: M106 P2 S(0-255)."
-msgstr "Habilitar esta opção se a máquina tiver ventilador auxiliar de resfriamento de peças. Comando G-code: M106 P2 S(0-255)."
+msgstr "Habilitar esta opção se a máquina tiver ventoinha auxiliar de resfriamento de peças. Comando G-code: M106 P2 S(0-255)."
msgid "Fan direction"
msgstr "Direção da ventoinha"
@@ -14592,7 +14629,6 @@ msgstr "Direção da ventoinha"
msgid "Cooling fan direction of the printer"
msgstr "Direção da ventoinha de resfriamento da impressora"
-# AI Translated
msgid "Both"
msgstr "Ambos"
@@ -14602,9 +14638,9 @@ msgid ""
"It won't move fan commands into the start G-code if the 'only custom start G-code' is activated.\n"
"Use 0 to deactivate."
msgstr ""
-"Ativar o ventilador este número de segundos antes do seu tempo de início alvo (você pode usar frações de segundos). Ele assume aceleração infinita para esta estimativa de tempo e levará em conta apenas os movimentos G1 e G0 (o ajuste de arco não é suportado).\n"
-"Não moverá G-code de comandos do ventilador personalizados (eles funcionam como uma espécie de 'barreira').\n"
-"Não moverá comandos do ventilador para o início do G-code se 'apenas G-code de início personalizado' estiver ativo.\n"
+"Ativar a ventoinha este número de segundos antes do seu tempo de início alvo (você pode usar frações de segundos). Ele assume aceleração infinita para esta estimativa de tempo e levará em conta apenas os movimentos G1 e G0 (o ajuste de arco não é suportado).\n"
+"Não moverá G-code de comandos da ventoinha personalizados (eles funcionam como uma espécie de 'barreira').\n"
+"Não moverá comandos da ventoinha para o início do G-code se 'apenas G-code de início personalizado' estiver ativo.\n"
"Use 0 para desativar."
msgid "Only overhangs"
@@ -14614,15 +14650,15 @@ msgid "Will only take into account the delay for the cooling of overhangs."
msgstr "Levará em conta apenas o atraso para o resfriamento das saliências."
msgid "Fan kick-start time"
-msgstr "Tempo de inicialização do ventilador"
+msgstr "Tempo de inicialização da ventoinha"
msgid ""
"Emit a max fan speed command for this amount of seconds before reducing to target speed to kick-start the cooling fan.\n"
"This is useful for fans where a low PWM/power may be insufficient to get the fan started spinning from a stop, or to get the fan up to speed faster.\n"
"Set to 0 to deactivate."
msgstr ""
-"Emita um comando de velocidade máxima do ventilador por esta quantidade de segundos antes de reduzir para a velocidade alvo para iniciar o ventilador de resfriamento.\n"
-"Isto é útil para ventiladores onde um baixo PWM/potência pode ser insuficiente para fazer o ventilador começar a girar a partir de uma parada, ou para fazer o ventilador alcançar a velocidade mais rapidamente.\n"
+"Emita um comando de velocidade máxima da ventoinha por esta quantidade de segundos antes de reduzir para a velocidade alvo para iniciar a ventoinha de resfriamento.\n"
+"Isto é útil para ventoinhas onde um baixo PWM/potência pode ser insuficiente para fazer a ventoinha começar a girar a partir de uma parada, ou para fazer a ventoinha alcançar a velocidade mais rapidamente.\n"
"Defina como 0 para desativar."
msgid "Minimum non-zero part cooling fan speed"
@@ -14681,6 +14717,14 @@ msgstr "Com que tipo de G-code a impressora é compatível."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "Omitir o bloco de configuração do G-code"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "Não grava o CONFIG_BLOCK (os pares chave/valor da configuração do fatiador) no arquivo G-code. Isso pode ajudar com impressoras cujo firmware trava ao interpretar essas linhas de comentário (por exemplo, Anycubic go-klipper). Observação: o arquivo G-code não conterá mais as configurações do fatiador, então importá-lo de volta no OrcaSlicer não restaurará a configuração."
+
msgid "Pellet Modded Printer"
msgstr "Impressora Modificada para Pellets"
@@ -14830,19 +14874,15 @@ msgstr "Ângulo de saliência do preenchimento"
msgid "The angle of the infill angled lines. 60° will result in a pure honeycomb."
msgstr "O ângulo das linhas de preenchimento. 60° resultará em um favo de mel puro."
-# AI Translated
msgid "Lightning overhang angle"
-msgstr "Ângulo de saliência Relâmpago"
+msgstr "Ângulo de saliência de Relâmpago"
-# AI Translated
msgid "Maximum overhang angle for Lightning infill support propagation."
msgstr "Ângulo máximo de saliência para a propagação de suporte do preenchimento Relâmpago."
-# AI Translated
msgid "Prune angle"
msgstr "Ângulo de poda"
-# AI Translated
msgid ""
"Controls how aggressively short or unsupported Lightning branches are pruned.\n"
"This angle is converted internally to a per-layer distance."
@@ -14850,11 +14890,9 @@ msgstr ""
"Controla a agressividade com que os ramos Relâmpago curtos ou sem suporte são podados.\n"
"Este ângulo é convertido internamente em uma distância por camada."
-# AI Translated
msgid "Straightening angle"
msgstr "Ângulo de retificação"
-# AI Translated
msgid "Maximum straightening angle used to simplify Lightning branches."
msgstr "Ângulo máximo de retificação usado para simplificar os ramos Relâmpago."
@@ -15205,7 +15243,6 @@ msgstr "Força máxima do eixo Y"
msgid "The allowed maximum output force of Y axis"
msgstr "A força máxima de saída permitida do eixo Y"
-# AI Translated
msgid "N"
msgstr "N"
@@ -15215,8 +15252,9 @@ msgstr "Massa da mesa do eixo Y"
msgid "The machine bed mass load of Y axis"
msgstr "A carga de massa da mesa do equipamento no eixo Y"
+# AI Translated
msgid "g"
-msgstr "G"
+msgstr "g"
msgid "The allowed max printed mass"
msgstr "Massa máxima de impressão permitida"
@@ -15369,7 +15407,7 @@ msgstr ""
"Para desativar o modelador de entrada, use o tipo Desativar."
msgid "The part cooling fan speed may be increased when auto cooling is enabled. This is the maximum speed for the part cooling fan."
-msgstr "A velocidade do ventilador de resfriamento de peças pode ser aumentada quando o resfriamento automático está habilitado. Este é o limite máximo de velocidade do ventilador de resfriamento de peças."
+msgstr "A velocidade da ventoinha de resfriamento de peças pode ser aumentada quando o resfriamento automático está habilitado. Este é o limite máximo de velocidade da ventoinha de resfriamento de peças."
msgid "The highest printable layer height for the extruder. Used to limit the maximum layer height when enable adaptive layer height."
msgstr "A maior altura de camada imprimível para a extrusora. Usada para limitar a altura máxima da camada quando a altura da camada adaptativa está ativada."
@@ -15432,31 +15470,31 @@ msgid "Applies extrusion rate smoothing only on external perimeters and overhang
msgstr "Aplica suavização de taxa de extrusão somente em perímetros externos e saliências. Isso pode ajudar a reduzir artefatos devido a transições de velocidade bruscas em saliências visíveis externamente sem impactar a velocidade de impressão de recursos que não serão visíveis ao usuário."
msgid "Minimum speed for part cooling fan."
-msgstr "Velocidade mínima para o ventilador de resfriamento de peças."
+msgstr "Velocidade mínima para a ventoinha de resfriamento de peças."
msgid ""
"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed during printing except the first several layers which is defined by no cooling layers.\n"
"Please enable auxiliary_fan in printer settings to use this feature. G-code command: M106 P2 S(0-255)"
msgstr ""
-"Velocidade do ventilador auxiliar de resfriamento de peças. O ventilador auxiliar funcionará nesta velocidade durante a impressão, exceto nas primeiras camadas, que são definidas por camadas sem resfriamento.\n"
+"Velocidade da ventoinha auxiliar de resfriamento de peças. A ventoinha auxiliar funcionará nesta velocidade durante a impressão, exceto nas primeiras camadas, que são definidas por camadas sem resfriamento.\n"
"\n"
-"Por favor, habilite o ventilador auxiliar nas configurações da impressora para usar esta função. Comando G-code: M106 P2 S(0-255)"
+"Por favor, habilite a ventoinha auxiliar nas configurações da impressora para usar esta função. Comando G-code: M106 P2 S(0-255)"
msgid "For the first"
msgstr "Para as primeiras"
msgid "Set special auxiliary cooling fan for the first certain layers."
-msgstr "Definir um ventilador auxiliar de resfriamento específico para as primeiras camadas."
+msgstr "Definir uma ventoinha auxiliar de resfriamento específico para as primeiras camadas."
msgid ""
"Auxiliary fan speed will be ramped up linearly from layer \"For the first\" to maximum at layer \"Full fan speed at layer\".\n"
"\"Full fan speed at layer\" will be ignored if lower than \"For the first\", in which case the fan will run at maximum allowed speed at layer \"For the first\" + 1."
msgstr ""
-"A velocidade do ventilador auxiliar aumentará linearmente da camada \"Para as primeiras\" até o máximo na camada \"Velocidade total do ventilador na camada\".\n"
-"A \"Velocidade total do ventilador na camada\" será ignorada se for menor que \"Para as primeiras\", caso em que o ventilador funcionará na velocidade máxima permitida na camada \"Para as primeiras\" + 1."
+"A velocidade da ventoinha auxiliar aumentará linearmente da camada \"Para as primeiras\" até o máximo na camada \"Velocidade total da ventoinha na camada\".\n"
+"A \"Velocidade total da ventoinha na camada\" será ignorada se for menor que \"Para as primeiras\", caso em que a ventoinha funcionará na velocidade máxima permitida na camada \"Para as primeiras\" + 1."
msgid "Special auxiliary cooling fan speed, effective only for the first x layers."
-msgstr "Velocidade especial do ventilador de resfriamento auxiliar, efetiva apenas para as primeiras x camadas."
+msgstr "Velocidade especial da ventoinha de resfriamento auxiliar, efetiva apenas para as primeiras x camadas."
msgid "The lowest printable layer height for the extruder. Used to limit the minimum layer height when enable adaptive layer height."
msgstr "A menor altura de camada imprimível para a extrusora. Usada para limitar a altura mínima da camada ao habilitar a altura de camada adaptativa."
@@ -15621,11 +15659,9 @@ msgstr "Este G-code é inserido quando a função de extrusão é trocada. Ele
msgid "Plugins Used"
msgstr "Plugins Utilizados"
-# AI Translated
msgid "Plugin capabilities referenced by this preset, stored as name;uuid;capability."
-msgstr "Recursos de plugin referenciados por esta predefinição, armazenados como name;uuid;capability."
+msgstr "Capacidades de plugin referenciados por esta predefinição, armazenados como name;uuid;capability."
-# AI Translated
msgid "Python plugin(s) invoked at each slicing pipeline step to read and modify intermediate slicing data, including a final G-code post-processing step. Research/experimental."
msgstr "Plugin(s) Python invocado(s) em cada etapa do pipeline de fatiamento para ler e modificar dados intermediários de fatiamento, incluindo uma etapa final de pós-processamento do G-code. Pesquisa/experimental."
@@ -15730,6 +15766,14 @@ msgstr "Retração longa na troca de extrusora"
msgid "Retraction distance when extruder change"
msgstr "Distância de retração na troca de extrusora"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Comprimento da retração (Troca de ferramenta)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Quando a retração é acionada antes da troca de ferramenta, o filamento é puxado de volta na quantidade especificada (o comprimento é medido no filamento bruto, antes de entrar na extrusora)."
+
msgid "Z-hop height"
msgstr "Altura de Z-hop"
@@ -15823,6 +15867,10 @@ msgstr "Comprimento extra na retração"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Quando a retração é compensada após o movimento de deslocamento, a extrusora empurrará essa quantidade adicional de filamento. Esta configuração é raramente necessária."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Comprimento extra na retração (Troca de ferramenta)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Quando a retração é compensada após a troca de ferramenta, a extrusora empurrará essa quantidade adicional de filamento."
@@ -16231,6 +16279,14 @@ msgstr "Troca de ferramenta na torre de purga"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Força o cabeçote de impressão a se deslocar até a torre de purga antes de emitir o comando de troca de ferramenta (Tx). Relevante apenas para impressoras com múltiplas extrusoras (múltiplos cabeçotes de impressão) que utilizam uma torre de purga Tipo 2. Por padrão, o Orca ignora o deslocamento em máquinas com múltiplos cabeçotes de impressão, pois o firmware gerencia a troca do cabeçote, o que pode resultar na emissão do comando Tx acima da peça impressa. Habilite esta opção se desejar que a troca de ferramenta seja sempre emitida acima da torre de purga."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Aguardar a temperatura na torre de purga"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Pega a nova ferramenta sem esperar que ela atinja a temperatura de impressão, desloca-se até a torre de purga e aguarda a temperatura ali, logo antes de purgar. O vazamento causado pelo aquecimento cai na torre em vez do modelo, e o deslocamento acontece durante o aquecimento. Relevante apenas para impressoras multiextrusora (multicabeça) que usam uma torre de purga do tipo 2. O firmware ou a macro de troca de ferramenta não devem aguardar a temperatura por conta própria. Quando desativado, a espera de temperatura é emitida logo após o comando de troca de ferramenta."
+
msgid "No sparse layers (beta)"
msgstr "Sem camadas esparsas (beta)"
@@ -16243,11 +16299,9 @@ msgstr "Preparar todas as extrusoras de impressão"
msgid "If enabled, all printing extruders will be primed at the front edge of the print bed at the start of the print."
msgstr "Se ativado, todos as extrusoras de impressão serão preparados na borda frontal da mesa de impressão no início da impressão."
-# AI Translated
msgid "Toolchange ordering"
msgstr "Ordenação de troca de ferramenta"
-# AI Translated
msgid ""
"Determines the order of tool changes on each layer.\n"
"- Default: Starts with the last used extruder to minimize tool changes.\n"
@@ -16257,7 +16311,6 @@ msgstr ""
"- Padrão: começa com a última extrusora usada para minimizar as trocas de ferramenta.\n"
"- Cíclico: usa uma sequência fixa de ferramentas em cada camada. Isso sacrifica a velocidade em prol de uma melhor qualidade de superfície, pois as trocas de ferramenta extras dão mais tempo para as camadas resfriarem."
-# AI Translated
msgid "Cyclic"
msgstr "Cíclico"
@@ -16638,7 +16691,6 @@ msgstr ""
"\n"
"Se habilitado, este parâmetro também define uma variável G-code chamada chamber_temperature, que pode ser usada para passar a temperatura desejada da câmara para sua macro de início de impressão ou uma macro de absorção de calor como esta: PRINT_START (outras variáveis) CHAMBER_TEMP=[chamber_temperature]. Isso pode ser útil se sua impressora não suportar comandos M141/M191 ou se você desejar lidar com a absorção de calor na macro de início de impressão se nenhum aquecedor de câmara ativo estiver instalado."
-# AI Translated
msgid ""
"This is the chamber temperature at which printing should start, while the chamber continues heating toward the \"Target\" chamber temperature. For example, set the Target to 60 and the Minimal to 50 to begin printing once the chamber reaches 50℃, without waiting for the full 60℃.\n"
"\n"
@@ -16646,11 +16698,11 @@ msgid ""
"\n"
"Unlike the \"Target\" chamber temperature, this option does not emit any M141/M191 commands; it only exposes the value to your custom G-code. It should not exceed the \"Target\" chamber temperature."
msgstr ""
-"Esta é a temperatura da câmara na qual a impressão deve começar, enquanto a câmara continua aquecendo em direção à temperatura da câmara \"Alvo\". Por exemplo, defina o Alvo como 60 e o Mínimo como 50 para começar a imprimir assim que a câmara atingir 50℃, sem esperar pelos 60℃ completos.\n"
+"Esta é a temperatura da câmara na qual a impressão deve começar, enquanto a câmara continua aquecendo em direção à temperatura \"Alvo\" da câmara. Por exemplo, defina o Alvo como 60 e o Mínimo como 50 para começar a imprimir assim que a câmara atingir 50℃, sem esperar pelos 60℃ completos.\n"
"\n"
"Isso define uma variável de G-code chamada chamber_minimal_temperature, que pode ser passada para a sua macro de início de impressão ou uma macro de aquecimento prolongado, assim: PRINT_START (outras variáveis) CHAMBER_MIN_TEMP=[chamber_minimal_temperature].\n"
"\n"
-"Ao contrário da temperatura da câmara \"Alvo\", esta opção não emite nenhum comando M141/M191; ela apenas expõe o valor ao seu G-code personalizado. Não deve exceder a temperatura da câmara \"Alvo\"."
+"Ao contrário da temperatura \"Alvo\" da câmara, esta opção não emite nenhum comando M141/M191; ela apenas expõe o valor ao seu G-code personalizado. Não deve exceder a temperatura \"Alvo\" da câmara."
msgid "Chamber minimal temperature"
msgstr "Temperatura mínima da câmara"
@@ -16694,20 +16746,18 @@ msgstr "Espessura da casca do topo"
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 a shell when layer height is small. 0 means that this setting is disabled and thickness of top shell is determined simply by the number of top shell layers."
msgstr "O número de camadas sólidas superiores é aumentado ao fatiar se a espessura calculada pelas camadas da casca do topo for menor do que este valor. Isso pode evitar que a casca seja muito fina quando a altura da camada é pequena. 0 significa que esta configuração está desativada e a espessura da casca do topo é determinada apenas pelo número de camadas da casca do topo."
-# AI Translated
msgid "Separated infills"
msgstr "Preenchimentos separados"
-# AI Translated
msgid ""
"Centers the internal infill of each part on itself, as if it were sliced on its own, instead of on the whole assembly. Parts that touch or overlap are treated as one body and share a center; separate parts (or distinct 3D objects) each get their own.\n"
"Useful when an assembly groups several objects that should each keep a consistent, self-centered infill.\n"
"Affects line and grid patterns and rotation-template infills.\n"
"Patterns locked to global coordinates (Gyroid, Honeycomb, TPMS, ...) are unaffected."
msgstr ""
-"Centraliza o preenchimento interno de cada peça em si mesma, como se fosse fatiada isoladamente, em vez de no conjunto inteiro. Peças que se tocam ou se sobrepõem são tratadas como um único corpo e compartilham um centro; peças separadas (ou objetos 3D distintos) recebem cada uma o seu próprio.\n"
+"Centraliza o preenchimento interno de cada peça em si mesmo, como se fosse fatiada isoladamente, em vez de no conjunto inteiro. Peças que se tocam ou se sobrepõem são tratadas como um único corpo e compartilham um centro; peças separadas (ou objetos 3D distintos) recebem cada uma o seu próprio.\n"
"Útil quando um conjunto agrupa vários objetos que devem manter, cada um, um preenchimento consistente e autocentrado.\n"
-"Afeta os padrões de linha e grade e os preenchimentos com modelo de rotação.\n"
+"Afeta os padrões de linha e grade e os preenchimentos com gabarito de rotação.\n"
"Os padrões fixados em coordenadas globais (Giroide, Favo de mel, TPMS, ...) não são afetados."
msgid "Center surface pattern on"
@@ -16776,11 +16826,9 @@ msgstr "Multiplicador de purga"
msgid "The actual flushing volumes is equal to the flush multiplier value multiplied by the flushing volumes in the table."
msgstr "Os volumes de purga reais são iguais ao multiplicador de purga multiplicado pelos volumes de purga na tabela."
-# AI Translated
msgid "Flush multiplier (Fast mode)"
msgstr "Multiplicador de purga (Modo rápido)"
-# AI Translated
msgid "The flush multiplier used in fast purge mode."
msgstr "O multiplicador de purga usado no modo de purga rápida."
@@ -16790,13 +16838,11 @@ msgstr "Volume de preparo"
msgid "This is the volume of material to prime the extruder with on the tower."
msgstr "Este é o volume de material para preparar a extrusora na torre."
-# AI Translated
msgid "Prime volume mode"
msgstr "Modo de volume de preparação"
-# AI Translated
msgid "Selects how the wipe-tower prime and flush volumes are computed on multi-extruder printers."
-msgstr "Seleciona como os volumes de preparação e de purga da torre de purga são calculados em impressoras com várias extrusoras."
+msgstr "Seleciona como os volumes de preparação e de purga da torre de purga são computados em impressoras com múltiplas extrusoras."
msgid "Saving"
msgstr "Salvando"
@@ -17116,7 +17162,7 @@ msgid "The maximum volumetric speed for ramming before extruder change, where -1
msgstr "A velocidade volumétrica máxima para compactação antes da troca de extrusor, onde -1 significa usar a velocidade volumétrica máxima."
msgid "To prevent oozing, the nozzle temperature will be cooled during ramming. Note: only a cooldown command and fan activation are triggered, reaching the target temperature is not guaranteed. 0 means disabled."
-msgstr "Para evitar o gotejamento, a temperatura do bico será reduzida durante a compactação. Nota: somente um comando de resfriamento e ativação do ventilador são acionados, não sendo garantido o alcance da temperatura alvo. 0 significa desativado."
+msgstr "Para evitar o gotejamento, a temperatura do bico será reduzida durante a compactação. Nota: somente um comando de resfriamento e ativação da ventoinha são acionados, não sendo garantido o alcance da temperatura alvo. 0 significa desativado."
msgid "The maximum volumetric speed for ramming before a hotend change, where -1 means using the maximum volumetric speed."
msgstr "A velocidade volumétrica máxima para compactação antes de uma troca de hotend, em que -1 significa usar a velocidade volumétrica máxima."
@@ -17130,15 +17176,12 @@ msgstr "Quando este valor de retração for modificado, ele será usado como a q
msgid "Support fast purge mode"
msgstr "Suporte ao modo de purga rápida"
-# AI Translated
msgid "Whether this printer supports fast purge mode with optimized temperature and multiplier."
msgstr "Se esta impressora suporta o modo de purga rápida com temperatura e multiplicador otimizados."
-# AI Translated
msgid "Filament change"
msgstr "Troca de filamento"
-# AI Translated
msgid "The volume of material required to prime the extruder on the tower, excluding a hotend change."
msgstr "O volume de material necessário para preparar a extrusora na torre, excluindo uma troca de hotend."
@@ -18323,11 +18366,9 @@ msgstr ""
"Há vários endereços IP resolvendo para o nome do host %1%.\n"
"Por favor, selecione um que deve ser usado."
-# AI Translated
msgid "Auto-scale for nozzle"
msgstr "Escala automática para o bico"
-# AI Translated
msgid ""
"This model is designed around a 0.4 mm nozzle with a 0.2 mm layer height. \n"
"When the scaling option is enabled (recommended), it dynamically resizes to match your current nozzle diameter and an appropriate layer height, making the test both accurate and easy to read.\n"
@@ -18473,11 +18514,9 @@ msgstr "Velocidade Inicial: "
msgid "End speed: "
msgstr "Velocidade Final: "
-# AI Translated
msgid "Auto-adjust to max volumetric speed"
msgstr "Ajuste automático à velocidade volumétrica máxima"
-# AI Translated
msgid "If the end speed would exceed the filament's maximum volumetric speed, automatically lower the layer height (keeping standard values and staying within the machine's limits) to reach it. If even the minimum layer height is not enough, lower the end speed instead."
msgstr "Se a velocidade final ultrapassar a velocidade volumétrica máxima do filamento, reduz automaticamente a altura de camada (mantendo valores padrão e respeitando os limites da máquina) para alcançá-la. Se nem mesmo a altura de camada mínima for suficiente, reduz a velocidade final."
@@ -18492,7 +18531,6 @@ msgstr ""
"passo >= 0\n"
"fim > início + passo"
-# AI Translated
#, c-format, boost-format
msgid ""
"The end speed (%.0f mm/s) exceeds the filament's maximum volumetric speed (%.1f mm³/s), which limits the outer wall to about %.0f mm/s at this line width and layer height.\n"
@@ -18500,12 +18538,11 @@ msgid ""
"\n"
"%s"
msgstr ""
-"A velocidade final (%.0f mm/s) ultrapassa a velocidade volumétrica máxima do filamento (%.1f mm³/s), o que limita a parede externa a cerca de %.0f mm/s com esta largura de linha e altura de camada.\n"
+"A velocidade final (%.0f mm/s) excede a velocidade volumétrica máxima do filamento (%.1f mm³/s), o que limita a parede externa a cerca de %.0f mm/s com esta largura de linha e altura de camada.\n"
" Velocidades acima disso serão limitadas, portanto os blocos superiores da torre não serão impressos na velocidade solicitada.\n"
"\n"
"%s"
-# AI Translated
#, c-format, boost-format
msgid ""
"The end speed (%.0f mm/s) exceeds the filament's maximum volumetric speed (%.1f mm³/s) at the default layer height (%.2f mm).\n"
@@ -18516,7 +18553,6 @@ msgstr ""
"\n"
"A altura de camada foi reduzida para %.2f mm (um valor usado pelos perfis desta impressora) para que a torre possa atingir a velocidade solicitada."
-# AI Translated
#, c-format, boost-format
msgid ""
"Even at the smallest layer height used by this printer's profiles (%.2f mm) the end speed (%.0f mm/s) exceeds the filament's maximum volumetric speed (%.1f mm³/s).\n"
@@ -18531,15 +18567,12 @@ msgstr ""
"\n"
"Continuar?"
-# AI Translated
msgid "Continue anyway?"
msgstr "Continuar mesmo assim?"
-# AI Translated
msgid "Enable \"Auto-adjust\" to fix this automatically, or continue anyway?"
msgstr "Ativar \"Ajuste automático\" para corrigir isso automaticamente ou continuar mesmo assim?"
-# AI Translated
msgid "Enable \"Auto-scale for nozzle\" and \"Auto-adjust\" to fix this automatically, or continue anyway?"
msgstr "Ativar \"Escala automática para o bico\" e \"Ajuste automático\" para corrigir isso automaticamente ou continuar mesmo assim?"
@@ -19440,9 +19473,6 @@ msgstr "Impressora Física"
msgid "Print Host upload"
msgstr "Upload do Host de Impressão"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Selecione a implementação do agente de rede para comunicação com a impressora. Os agentes disponíveis são registrados na inicialização."
-
msgid "Select a Flashforge printer"
msgstr "Selecione uma impressora Flashforge"
@@ -19644,9 +19674,8 @@ msgstr "Não foi possível decifrar a resposta do servidor."
msgid "Error saving session to file"
msgstr "Erro salvando sessão para arquivo"
-# AI Translated
msgid "Error session check"
-msgstr "Verificação de sessão de erro"
+msgstr "Erro na verificação de sessão"
msgid "Error during file upload"
msgstr "Erro durante a subida do arquivo"
@@ -20079,9 +20108,8 @@ msgstr "Impressão Falhou"
msgid "Removed"
msgstr "Removido"
-# AI Translated
msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings"
-msgstr "Ativar atribuição inteligente de filamento: atribui um filamento a vários bicos para maximizar a economia"
+msgstr "Ativar atribuição inteligente de filamento: Atribui um filamento a vários bicos para maximizar a economia"
msgid "Fila Saving"
msgstr "Econo Filamento"
@@ -20119,7 +20147,6 @@ msgstr "Tutorial em vídeo"
msgid "(Sync with printer)"
msgstr "(Sinc. com impressora)"
-# AI Translated
#, c-format, boost-format
msgid "Error: %s extruder has no available %s nozzle, current group result is invalid."
msgstr "Erro: a extrusora %s não tem nenhum bico %s disponível, o resultado do grupo atual é inválido."
@@ -20130,17 +20157,14 @@ msgstr "Vamos fatiar de acordo com este método de agrupamento:"
msgid "Tip: You can drag the filaments to reassign them to different nozzles."
msgstr "Dica: Você pode arrastar os filamentos para reatribuí-los a diferentes bicos."
-# AI Translated
msgid "Please adjust your grouping or click "
msgstr "Por favor, ajuste seu agrupamento ou clique em "
-# AI Translated
msgid " to set nozzle count"
msgstr " para definir o número de bicos"
-# AI Translated
msgid "Set the physical nozzle count..."
-msgstr "Definir o número físico de bicos..."
+msgstr "Definir o número de bicos físicos…"
msgid "The filament grouping method for current plate is determined by the dropdown option at the slicing plate button."
msgstr "O método de agrupamento de filamentos para a placa atual é determinado pela opção no botão de fatiamento da placa."
@@ -20290,9 +20314,6 @@ msgstr "Algo inesperado aconteceu ao tentar conectar, por favor tente novamente.
msgid "User canceled."
msgstr "Cancelado pelo usuário."
-msgid "Head diameter"
-msgstr "Diâmetro da cabeça"
-
msgid "Max angle"
msgstr "Ângulo máx"
@@ -20480,99 +20501,75 @@ msgstr "Numero de facetas triangulares"
msgid "Calculating, please wait..."
msgstr "Calculando, por favor aguarde…"
-# AI Translated
msgid "Save these settings as default"
msgstr "Salvar estas configurações como padrão"
-# AI Translated
msgid "If enabled, the values above are stored as the defaults used for future STEP imports (and shown in Preferences)."
msgstr "Se ativado, os valores acima são armazenados como os padrões usados para futuras importações STEP (e mostrados nas Preferências)."
-# AI Translated
msgid "PresetBundle"
msgstr "PresetBundle"
-# AI Translated
msgid "Bundle folder does not exist."
msgstr "A pasta do pacote não existe."
-# AI Translated
msgid "Failed to open folder."
msgstr "Falha ao abrir a pasta."
-# AI Translated
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr "Excluir o pacote selecionado da pasta e todas as predefinições carregadas a partir dele?"
-# AI Translated
msgid "Delete Bundle"
-msgstr "Excluir pacote"
+msgstr "Excluir Pacote"
-# AI Translated
msgid "Failed to remove bundle."
msgstr "Falha ao remover o pacote."
-# AI Translated
msgid "Remove Bundle"
msgstr "Remover pacote"
-# AI Translated
msgid "Unsubscribe bundle?"
msgstr "Cancelar a inscrição do pacote?"
-# AI Translated
msgid "UnsubscribeBundle"
msgstr "UnsubscribeBundle"
-# AI Translated
msgid "Failed to unsubscribe bundle."
msgstr "Falha ao cancelar a inscrição do pacote."
-# AI Translated
msgid "Unsubscribe Bundle"
-msgstr "Cancelar inscrição do pacote"
+msgstr "Cancelar inscrição do Pacote"
-# AI Translated
msgid "ExportPresetBundle"
msgstr "ExportPresetBundle"
-# AI Translated
msgid "Save preset bundle"
msgstr "Salvar pacote de predefinições"
-# AI Translated
msgid "Performing desktop integration failed - boost::filesystem::canonical did not return appimage path."
msgstr "Falha ao realizar a integração com a área de trabalho - boost::filesystem::canonical não retornou o caminho do appimage."
-# AI Translated
msgid "Performing desktop integration failed - Could not find executable."
msgstr "Falha ao realizar a integração com a área de trabalho - não foi possível encontrar o executável."
-# AI Translated
msgid "Performing desktop integration failed because the application directory was not found."
msgstr "Falha ao realizar a integração com a área de trabalho porque o diretório do aplicativo não foi encontrado."
-# AI Translated
msgid "Performing desktop integration failed - could not create Gcodeviewer desktop file. OrcaSlicer desktop file was probably created successfully."
msgstr "Falha ao realizar a integração com a área de trabalho - não foi possível criar o arquivo desktop do Gcodeviewer. O arquivo desktop do OrcaSlicer provavelmente foi criado com sucesso."
-# AI Translated
msgid "Performing downloader desktop integration failed - boost::filesystem::canonical did not return appimage path."
msgstr "Falha ao realizar a integração do downloader com a área de trabalho - boost::filesystem::canonical não retornou o caminho do appimage."
-# AI Translated
msgid "Performing downloader desktop integration failed - Could not find executable."
msgstr "Falha ao realizar a integração do downloader com a área de trabalho - não foi possível encontrar o executável."
-# AI Translated
msgid "Performing downloader desktop integration failed because the application directory was not found."
msgstr "Falha ao realizar a integração do downloader com a área de trabalho porque o diretório do aplicativo não foi encontrado."
-# AI Translated
msgid "Desktop Integration"
-msgstr "Integração com a área de trabalho"
+msgstr "Integração com a Área de Trabalho"
-# AI Translated
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
@@ -20596,40 +20593,33 @@ msgstr "Arquivar pré-visualização"
msgid "Open File"
msgstr "Abrir Arquivo"
-# AI Translated
msgid "AMS Dryness Control"
-msgstr "Controle de secura do AMS"
+msgstr "Controle de Secura do AMS"
-# AI Translated
msgid "Filament Drying Settings"
-msgstr "Configurações de secagem de filamento"
+msgstr "Configurações de Secagem de Filamento"
msgid "Stopping"
msgstr "Parando"
-# AI Translated
msgid "Unable to dry temporarily due to ..."
-msgstr "Não é possível secar temporariamente devido a ..."
+msgstr "Não é possível secar temporariamente devido a…"
msgid "Drying Error"
msgstr "Erro de Secagem"
-# AI Translated
msgid "Please check the Assistant for troubleshooting"
msgstr "Por favor, verifique o Assistente para solução de problemas"
-# AI Translated
msgid "Please remove and store the filament (as shown)."
msgstr "Por favor, remova e guarde o filamento (como mostrado)."
-# AI Translated
msgid "The AMS can rotate the filament which is properly stored, providing better drying results."
msgstr "O AMS pode girar o filamento que está corretamente armazenado, proporcionando melhores resultados de secagem."
msgid "Rotate spool when drying"
msgstr "Girar o carretel durante a secagem"
-# AI Translated
msgctxt "amsdrying"
msgid "Back"
msgstr "Voltar"
@@ -20649,11 +20639,9 @@ msgstr " temperatura mínima de secagem é "
msgid "This filament may not be completely dried."
msgstr "Este filamento pode não estar completamente seco."
-# AI Translated
msgid "This AMS is currently printing. To ensure print quality, the drying temperature cannot exceed the recommended drying temperature."
msgstr "Este AMS está imprimindo no momento. Para garantir a qualidade da impressão, a temperatura de secagem não pode exceder a temperatura de secagem recomendada."
-# AI Translated
msgid "The temperature shall not exceed the filament's heat distortion temperature"
msgstr "A temperatura não deve exceder a temperatura de distorção térmica do filamento"
@@ -20666,22 +20654,18 @@ msgstr "O valor máximo de tempo não pode ser superior a 24."
msgid "Insufficient power"
msgstr "Potência insuficiente"
-# AI Translated
msgid " Too many AMS drying simultaneously. Please plug in the power or stop other drying processes before starting."
msgstr " Muitos AMS secando simultaneamente. Por favor, conecte à energia ou pare outros processos de secagem antes de iniciar."
msgid "AMS is busy"
msgstr "O AMS está ocupado"
-# AI Translated
msgid " AMS is calibrating | reading RFID | loading/unloading material, please wait."
msgstr " O AMS está calibrando | lendo RFID | carregando/descarregando material, por favor aguarde."
-# AI Translated
msgid "Filament in AMS outlet"
msgstr "Filamento na saída do AMS"
-# AI Translated
msgid " The high drying temperature may cause AMS blockage, please unload first."
msgstr " A alta temperatura de secagem pode causar bloqueio do AMS, por favor descarregue primeiro."
@@ -20694,18 +20678,15 @@ msgstr "Não suportado no modo 2D"
msgid "Task in progress"
msgstr "Tarefa em progresso"
-# AI Translated
msgid " The AMS might be in use during Task."
msgstr " O AMS pode estar em uso durante a Tarefa."
msgid " Firmware update in progress, please wait..."
-msgstr " Atualização de firmware em progresso, por favor aguarde..."
+msgstr " Atualização de firmware em progresso, por favor aguarde…"
-# AI Translated
msgid " Please plug in the power and then use the drying function."
-msgstr " Por favor, conecte à energia e depois use a função de secagem."
+msgstr " Por favor, conecte à energia e então use a função de secagem."
-# AI Translated
msgid " The high drying temperature may cause AMS blockage. Please unload the filament manually before proceeding."
msgstr " A alta temperatura de secagem pode causar bloqueio do AMS. Por favor, descarregue o filamento manualmente antes de prosseguir."
@@ -20713,7 +20694,7 @@ msgid "System is busy"
msgstr "O sistema está ocupado"
msgid " Initiating other drying processes, please wait a few seconds..."
-msgstr " Iniciando outros processos de secagem, por favor aguarde alguns segundos..."
+msgstr " Iniciando outros processos de secagem, por favor aguarde alguns segundos…"
msgid "For better drying results, remove the filament and allow it to rotate."
msgstr "Para obter melhores resultados de secagem, remova o filamento e permita que ele gire."
@@ -20803,8 +20784,8 @@ msgid ""
"Auxiliary fan\n"
"Did you know that OrcaSlicer supports Auxiliary part cooling fan?"
msgstr ""
-"Ventilador auxiliar\n"
-"Você sabia que o OrcaSlicer suporta ventilador auxiliar de resfriamento de peças?"
+"Ventoinha auxiliar\n"
+"Você sabia que o OrcaSlicer suporta ventoinha auxiliar de resfriamento de peças?"
#: resources/data/hints.ini: [hint:Air filtration]
msgid ""
@@ -21066,6 +21047,24 @@ msgstr ""
"Evitar empenamento\n"
"Você sabia que ao imprimir materiais propensos ao empenamento como ABS, aumentar adequadamente a temperatura da mesa aquecida pode reduzir a probabilidade de empenamento?"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "A altura da camada é muito pequena.\n"
+#~ "Ela será definida como altura mínima da camada\n"
+#~ "A altura da camada é muito pequena.\n"
+#~ "Ela será definida como altura mínima da camada\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "A altura da camada excede o limite em Configurações da Impressora -> Extrusora -> Limites de altura da camada, isso pode causar problemas de qualidade de impressão."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Ajustar automaticamente à faixa definida?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Diâmetro da cabeça"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Ordem de impressão dentro de uma única camada."
@@ -21078,17 +21077,6 @@ msgstr ""
#~ msgid "Rear"
#~ msgstr "Traseira"
-# AI Translated
-#, boost-format
-#~ msgid ""
-#~ "Objects(%1%) have duplicated connectors. Some connectors may be missing in slicing result.\n"
-#~ "Please report to PrusaSlicer team in which scenario this issue happened.\n"
-#~ "Thank you."
-#~ msgstr ""
-#~ "Os objetos(%1%) têm conectores duplicados. Alguns conectores podem estar faltando no resultado do fatiamento.\n"
-#~ "Por favor, informe à equipe do PrusaSlicer em qual cenário esse problema ocorreu.\n"
-#~ "Obrigado."
-
#~ msgid "Skip for Now"
#~ msgstr "Pular por Enquanto"
@@ -22009,7 +21997,7 @@ msgstr ""
#~ msgstr "Pausado devido à perda do AMS"
#~ msgid "Paused due to low speed of the heat break fan"
-#~ msgstr "Pausado devido a baixa velocidade do ventilador do bloco de aquecimento"
+#~ msgstr "Pausado devido a baixa velocidade da ventoinha do bloco de aquecimento"
#~ msgid "Paused due to chamber temperature control error"
#~ msgstr "Pausado devido a erro no controle de temperatura da câmara"
@@ -22538,20 +22526,20 @@ msgstr ""
#~ msgstr "Forçar resfriamento para saliências e pontes"
#~ msgid "Enable this option to optimize part cooling fan speed for overhang and bridge to get better cooling"
-#~ msgstr "Ative esta opção para otimizar a velocidade do ventilador de resfriamento de peças para saliência e ponte para obter melhor resfriamento"
+#~ msgstr "Ative esta opção para otimizar a velocidade da ventoinha de resfriamento de peças para saliência e ponte para obter melhor resfriamento"
#~ msgid "Fan speed for overhang"
-#~ msgstr "Velocidade do ventilador para saliência"
+#~ msgstr "Velocidade da ventoinha para saliência"
#~ 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"
-#~ msgstr "Forçar o ventilador de resfriamento de peças a ser nesta velocidade ao imprimir ponte ou parede saliente que tenha um grande grau de saliência. Forçar o resfriamento para saliência e ponte pode obter melhor qualidade para estas partes"
+#~ msgstr "Forçar a ventoinha de resfriamento de peças a ser nesta velocidade ao imprimir ponte ou parede saliente que tenha um grande grau de saliência. Forçar o resfriamento para saliência e ponte pode obter melhor qualidade para estas partes"
#~ msgid "Cooling overhang threshold"
#~ msgstr "Limiar de resfriamento de saliência"
#, c-format
#~ msgid "Force cooling fan to be specific speed when overhang degree of printed part exceeds this value. Expressed as percentage which indicates 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 "Forçar o ventilador de resfriamento a ser uma velocidade específica quando o grau de saliência das peças impressa excede este valor. Expresso como porcentagem, que indica quanto da largura da linha sem suporte da camada inferior. Zero significa forçar o resfriamento para toda a parede externa, não importa quanto seja o grau de saliência"
+#~ msgstr "Forçar a ventoinha de resfriamento a ser uma velocidade específica quando o grau de saliência das peças impressa excede este valor. Expresso como porcentagem, que indica quanto da largura da linha sem suporte da camada inferior. Zero significa forçar o resfriamento para toda a parede externa, não importa quanto seja o grau de saliência"
#~ msgid "Density of external bridges. 100% means solid bridge. Default is 100%."
#~ msgstr "Densidade de pontes externas. 100% significa ponte sólida. O padrão é 100%."
diff --git a/localization/i18n/ru/OrcaSlicer_ru.po b/localization/i18n/ru/OrcaSlicer_ru.po
index a0a48560ff..2372471707 100644
--- a/localization/i18n/ru/OrcaSlicer_ru.po
+++ b/localization/i18n/ru/OrcaSlicer_ru.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: OrcaSlicer V2.5.0\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: 2026-02-25 13:38+0300\n"
"Last-Translator: Felix14_v2\n"
"Language-Team: Felix14_v2 (ДС/ТГ: @felix14_v2, почта: aleks111001@list.ru), Andylg \n"
@@ -27,15 +27,12 @@ msgstr "Основной экструдер"
msgid "main extruder"
msgstr "основной экструдер"
-# AI Translated
msgid "Auxiliary Extruder"
msgstr "Вспомогательный экструдер"
-# AI Translated
msgid "Auxiliary extruder"
msgstr "Вспомогательный экструдер"
-# AI Translated
msgid "auxiliary extruder"
msgstr "вспомогательный экструдер"
@@ -57,27 +54,21 @@ msgstr "Правый экструдер"
msgid "right extruder"
msgstr "правый экструдер"
-# AI Translated
msgid "Main Nozzle"
msgstr "Основное сопло"
-# AI Translated
msgid "Main nozzle"
msgstr "Основное сопло"
-# AI Translated
msgid "main nozzle"
msgstr "основное сопло"
-# AI Translated
msgid "Auxiliary Nozzle"
msgstr "Вспомогательное сопло"
-# AI Translated
msgid "Auxiliary nozzle"
msgstr "Вспомогательное сопло"
-# AI Translated
msgid "auxiliary nozzle"
msgstr "вспомогательное сопло"
@@ -99,67 +90,51 @@ msgstr "Правый экструдер"
msgid "right nozzle"
msgstr "правого сопла"
-# AI Translated
msgid "Main Hotend"
msgstr "Основной хотэнд"
-# AI Translated
msgid "Main hotend"
msgstr "Основной хотэнд"
-# AI Translated
msgid "main hotend"
msgstr "основной хотэнд"
-# AI Translated
msgid "Auxiliary Hotend"
msgstr "Вспомогательный хотэнд"
-# AI Translated
msgid "Auxiliary hotend"
msgstr "Вспомогательный хотэнд"
-# AI Translated
msgid "auxiliary hotend"
msgstr "вспомогательный хотэнд"
-# AI Translated
msgid "Left Hotend"
msgstr "Левый хотэнд"
-# AI Translated
msgid "Left hotend"
msgstr "Левый хотэнд"
-# AI Translated
msgid "left hotend"
msgstr "левый хотэнд"
-# AI Translated
msgid "Right Hotend"
msgstr "Правый хотэнд"
-# AI Translated
msgid "Right hotend"
msgstr "Правый хотэнд"
-# AI Translated
msgid "right hotend"
msgstr "правый хотэнд"
-# AI Translated
msgid "main"
msgstr "основной"
-# AI Translated
msgid "auxiliary"
msgstr "вспомогательный"
-# AI Translated
msgid "Main"
msgstr "Основной"
-# AI Translated
msgid "Auxiliary"
msgstr "Вспомогательный"
@@ -279,7 +254,7 @@ msgstr "Высокий расход"
msgid "Standard"
msgstr "Обычный"
-# AI Translated
+# На бамбувики просто "хотэнд ТПУ". Очевидно, машинный перевод. Оставляю оригинальное.
msgid "TPU High Flow"
msgstr "TPU High Flow"
@@ -295,7 +270,6 @@ msgstr "Нержавеющая сталь"
msgid "Tungsten Carbide"
msgstr "Карбид вольфрама"
-# AI Translated
msgid "The toolhead and hotend rack may move. Please keep your hands away from the chamber."
msgstr "Печатающая голова и стойка хотэндов могут смещаться. Держите руки подальше от камеры."
@@ -350,15 +324,12 @@ msgstr "Версия:"
msgid "Latest version"
msgstr "Последняя версия"
-# AI Translated
msgid "Row A"
msgstr "Ряд A"
-# AI Translated
msgid "Row B"
-msgstr "Ряд B"
+msgstr "Ряд Б"
-# AI Translated
msgid "Toolhead"
msgstr "Печатающая голова"
@@ -368,9 +339,8 @@ msgstr "Пусто"
msgid "Error"
msgstr "Ошибка"
-# AI Translated
msgid "Induction Hotend Rack"
-msgstr "Индукционная стойка хотэндов"
+msgstr "Стойка индукционных хотэндов"
msgid "Hotends Info"
msgstr "Информация о хотэндах"
@@ -384,30 +354,25 @@ msgstr "Чтение "
msgid "Please wait"
msgstr "Подождите"
-# AI Translated
msgid "Reading"
msgstr "Чтение"
-# AI Translated
msgid "Running..."
msgstr "Выполнение..."
-# AI Translated
+# Ряд
msgid "Raised"
-msgstr "Поднято"
+msgstr "Поднят"
-# AI Translated
msgid "The hotend is in an abnormal state and currently unavailable. Please go to 'Device -> Upgrade' to upgrade firmware."
-msgstr "Хотэнд находится в нештатном состоянии и сейчас недоступен. Перейдите в «Устройство -> Обновление», чтобы обновить прошивку."
+msgstr "Хотэнд находится в нештатном состоянии и сейчас недоступен. Перейдите в «Принтер» → «Обновление», чтобы обновить прошивку."
-# AI Translated
msgid "Abnormal Hotend"
msgstr "Нештатное состояние хотэнда"
msgid "Cancel"
msgstr "Отмена"
-# AI Translated
msgid "Jump to the upgrade page"
msgstr "Перейти на страницу обновления"
@@ -417,9 +382,8 @@ msgstr "Обновить"
msgid "Refreshing"
msgstr "Обновление"
-# AI Translated
msgid "Hotend status abnormal, unavailable at present. Please upgrade the firmware and try again."
-msgstr "Состояние хотэнда нештатное, сейчас недоступно. Обновите прошивку и повторите попытку."
+msgstr "Хотэнд находится в нештатном состоянии и сейчас недоступен. Обновите прошивку и попробуйте ещё раз."
msgid "SN"
msgstr "Серийный номер"
@@ -431,19 +395,16 @@ msgstr "Версия"
msgid "Used Time: %s"
msgstr "Время использования: %s"
-# AI Translated
+# Полагаю, речь об этом https://wiki.bambulab.com/ru/software/bambu-studio/filament-track-switch-dynamic-mapping
msgid "Dynamic nozzles are allocated on the current plate. Picking hotend is not supported."
msgstr "На текущем столе назначены динамические сопла. Выбор хотэнда не поддерживается."
-# AI Translated
msgid "Hotend Rack"
msgstr "Стойка хотэндов"
-# AI Translated
msgid "ToolHead"
msgstr "Печатающая голова"
-# AI Translated
msgid "Nozzle information needs to be read"
msgstr "Необходимо считать информацию о сопле"
@@ -948,7 +909,6 @@ msgstr "Снять выбор"
msgid "Select all connectors"
msgstr "Выбрать все соединения"
-# AI Translated
msgctxt "Cut tool"
msgid "Cut"
msgstr "Разрезать"
@@ -1885,14 +1845,14 @@ msgid ""
"Select 2 faces on objects and \n"
" make objects assemble together."
msgstr ""
-"Выберите две грани на моделях и\n"
-"соберите объекты вместе."
+"Выберите две грани на моделях и соберите\n"
+"объекты вместе."
msgid ""
"Select 2 points or circles on objects and \n"
" specify distance between them."
msgstr ""
-"Выберите 2 точки или окружности на моделях \n"
+"Выберите 2 точки или окружности на моделях\n"
"и укажите расстояние между ними."
msgid "Face"
@@ -1954,7 +1914,6 @@ msgstr "Запуск режима измерения"
msgid "Leaving Measure gizmo"
msgstr "Выход из режима измерения"
-# AI Translated
msgctxt "Assembly tool"
msgid "Assemble"
msgstr "Собрать"
@@ -1968,8 +1927,9 @@ msgstr "Выберите минимум две модели."
msgid "(Moving)"
msgstr "(подвижная)"
+# Пробел в конце, чтобы не срезалась часть
msgid "Point and point assembly"
-msgstr "Сборка по точкам"
+msgstr "Сборка по точкам "
# Зачем здесь "внимание"? Это просто руководство к действию
msgid "Warning: please select two different meshes."
@@ -1992,8 +1952,9 @@ msgstr ""
"для получения возможности поднимать их\n"
"над столом."
+# Пробел в конце, чтобы не срезалась часть
msgid "Face and face assembly"
-msgstr "Сборка по граням"
+msgstr "Сборка по граням "
msgid "Entering Assembly gizmo"
msgstr "Запуск режима сборки"
@@ -2133,7 +2094,7 @@ msgstr ""
"\n"
"Для автоматического переноса существующих профилей войдите в Orca Cloud. Посетите нашу Вики, чтобы узнать подробнее о ручном переносе, хранении и синхронизации профилей.\n"
"\n"
-"Можно спокойно игнорировать это сообщение, если вы ранее не использовали Bambu Cloud для синхронизации."
+"Можно спокойно игнорировать это сообщение, если вы ранее не использовали Bambu Cloud для синхронизации. "
msgid "Profile syncing change"
msgstr "Изменения в синхронизации профилей"
@@ -2214,7 +2175,6 @@ msgstr "Загрузка плагинов"
msgid "Plugin %s is no longer available."
msgstr "Плагин «%s» больше недоступен."
-# AI Translated
#, c-format, boost-format
msgid "Plugin %s access is unauthorized."
msgstr "Доступ к плагину %s не авторизован."
@@ -3661,10 +3621,9 @@ msgid "Left(Aux)"
msgstr "Левый (вспом.)"
# FAN_HEAT_BREAK_0_IDX - охлаждение термобарьера в первом хотэнде
-# AI Translated
msgctxt "Hotend Heat Breaker Fan"
msgid "Hotend"
-msgstr "Хотэнд"
+msgstr "1 термобарьер"
msgid "Parts"
msgstr "Основной"
@@ -3713,29 +3672,23 @@ msgstr "Подтверждение экструзии"
msgid "Check filament location"
msgstr "Проверка расположения прутка"
-# AI Translated
msgid "Switch"
msgstr "Переключить"
-# AI Translated
msgid "hotend"
msgstr "хотэнд"
-# AI Translated
msgid "Wait for AMS cooling"
msgstr "Дождитесь охлаждения AMS"
-# AI Translated
msgid "Switch current filament at Filament Track Switch"
msgstr "Переключить текущий материал на Filament Track Switch"
-# AI Translated
msgid "Pull back current filament at Filament Track Switch"
msgstr "Втянуть текущий материал на Filament Track Switch"
-# AI Translated
msgid "Switch track at Filament Track Switch"
-msgstr "Переключить дорожку на Filament Track Switch"
+msgstr "Переключить подачу на Filament Track Switch"
msgid "The maximum temperature cannot exceed "
msgstr "Температура не должна превышать "
@@ -3743,45 +3696,37 @@ msgstr "Температура не должна превышать "
msgid "The minmum temperature should not be less than "
msgstr "Температура не должна быть ниже "
-# AI Translated
msgid "Type to filter..."
-msgstr "Введите текст для фильтрации..."
+msgstr "Поиск..."
# в Сохранение толщины вертикальной оболочки.
# было Везде, но из-за условия совместимости изменено.... как тогда быть?
msgid "All"
msgstr "Все"
-# AI Translated
msgid "No selected items..."
-msgstr "Нет выбранных элементов..."
+msgstr "Ничего не выбрано..."
-# AI Translated
msgid "All items selected..."
-msgstr "Выбраны все элементы..."
+msgstr "Выбраны все..."
-# AI Translated
msgid "No matching items..."
-msgstr "Нет подходящих элементов..."
+msgstr "Ничего не найдено..."
msgid "Deselect All"
msgstr "Снять выбор со всего"
-# AI Translated
msgid "Select visible"
msgstr "Выбрать видимые"
-# AI Translated
msgid "Deselect visible"
msgstr "Снять выбор с видимых"
-# AI Translated
msgid "Filter selected"
-msgstr "Отфильтровать выбранные"
+msgstr "Фильтровать выбранные"
-# AI Translated
msgid "Filter nonSelected"
-msgstr "Отфильтровать невыбранные"
+msgstr "Фильтровать невыбранные"
msgid "Simple settings"
msgstr "Простые настройки"
@@ -3799,18 +3744,15 @@ msgstr "Режим разработчика"
msgid "Launch troubleshoot center"
msgstr "Запустить экран отладки"
-# AI Translated
msgid "Set nozzle count"
msgstr "Задать количество сопел"
-# AI Translated
msgid "Please set nozzle count"
-msgstr "Задайте количество сопел"
+msgstr "Укажите количество сопел"
msgid "Error: Can not set both nozzle count to zero."
msgstr "Ошибка: оба значения не могут быть нулевыми."
-# AI Translated
#, c-format, boost-format
msgid "Error: Nozzle count can not exceed %d."
msgstr "Ошибка: количество сопел не может превышать %d."
@@ -3821,45 +3763,36 @@ msgstr "Подтвердить"
msgid "Extruder"
msgstr "Экструдер"
-# AI Translated
msgid "Nozzle Selection"
msgstr "Выбор сопла"
-# AI Translated
msgid "Available Nozzles"
msgstr "Доступные сопла"
msgid "Nozzle Info"
msgstr "Информация о сопле"
-# AI Translated
msgid "Sync Nozzle status"
msgstr "Синхронизировать состояние сопла"
-# AI Translated
msgid "Caution: Mixing nozzle diameters in one print is not supported. If the selected size is only on one extruder, single-extruder printing will be enforced."
-msgstr "Внимание: смешивание диаметров сопел в одной печати не поддерживается. Если выбранный размер есть только на одном экструдере, будет принудительно применена печать одним экструдером."
+msgstr "Внимание: смешивание диаметров сопел в одной печати не поддерживается. Печать будет производиться одним соплом, если выбранный диаметр есть только на одном экструдере."
-# AI Translated
#, c-format, boost-format
msgid "Refresh %d/%d..."
-msgstr "Обновление %d/%d..."
+msgstr "Обновить %d/%d..."
-# AI Translated
msgid "Unknown nozzle detected. Refresh to update info (unrefreshed nozzles will be excluded during slicing). Verify nozzle diameter & flow rate against displayed values."
-msgstr "Обнаружено неизвестное сопло. Обновите, чтобы получить сведения (необновлённые сопла будут исключены при нарезке). Сверьте диаметр сопла и расход с отображаемыми значениями."
+msgstr "Обнаружено неизвестное сопло. Обновите для получения сведений (неизвестные сопла будут исключены при нарезке). Сверьте диаметр сопла и расход с отображаемыми значениями."
-# AI Translated
msgid "Unknown nozzle detected. Refresh to update (unrefreshed nozzles will be skipped in slicing)."
-msgstr "Обнаружено неизвестное сопло. Обновите для получения сведений (необновлённые сопла будут пропущены при нарезке)."
+msgstr "Обнаружено неизвестное сопло. Обновите для получения сведений (неизвестные сопла будут пропущены при нарезке)."
-# AI Translated
msgid "Please confirm whether the required nozzle diameter and flow rate match the currently displayed values."
msgstr "Убедитесь, что требуемый диаметр сопла и расход соответствуют отображаемым значениям."
-# AI Translated
msgid "Your printer has different nozzles installed. Please select a nozzle for this print."
-msgstr "На вашем принтере установлены разные сопла. Выберите сопло для этой печати."
+msgstr "В принтере установлены разные сопла. Выберите сопло для этой печати."
msgid "Ignore"
msgstr "Игнорировать"
@@ -3888,15 +3821,14 @@ msgstr "Расстановка..."
msgid "Arranging"
msgstr "Расстановка"
-# AI Translated
msgid "Arranging "
-msgstr "Расстановка "
+msgstr "Расстановка: "
msgid "Arranging canceled."
msgstr "Расстановка отменена."
msgid "Arranging complete, but some items were not able to be arranged. Reduce spacing and try again."
-msgstr "Расстановка завершена, но не всё удалось уместить на столе. Уменьшите отступ расстановки и повторите попытку."
+msgstr "Расстановка завершена, но не всё удалось уместить на столе. Уменьшите отступ и повторите попытку."
msgid "Arranging done."
msgstr "Расстановка выполнена."
@@ -4346,8 +4278,8 @@ msgid ""
"Lower half area: The filament from original project will be used when unmapped.\n"
"And you can click it to modify"
msgstr ""
-"Верхняя половина: Исходный\n"
-"Нижняя половина: При отсутствии назначения будет использоваться филамент из исходного проекта.\n"
+"Сверху: оригинальный материал\n"
+"Снизу: материал исходного проекта (если не назначен).\n"
"Нажмите для изменения"
msgid ""
@@ -4357,7 +4289,7 @@ msgid ""
msgstr ""
"Сверху: оригинальный материал\n"
"Снизу: материал из AMS\n"
-"Нажмите, чтобы изменить"
+"Нажмите для изменения"
msgid ""
"Upper half area: Original\n"
@@ -4371,45 +4303,41 @@ msgid "AMS Slots"
msgstr "Слоты AMS"
msgid "Please select from the following filaments"
-msgstr "Пожалуйста, выберите из следующих филаментов"
+msgstr "Выберите из следующих материалов"
-# AI Translated
#, c-format, boost-format
msgid "Select filament that installed to the %s"
msgstr "Выберите материал, установленный в %s"
msgid "Left AMS"
-msgstr "Левый AMS"
+msgstr "Левая AMS"
+# Оверюзиниг: внешние мосты/внешняя катушка
msgid "External"
msgstr "Внешние"
msgid "Reset current filament mapping"
-msgstr "Сбросить текущее назначение филамента"
+msgstr "Сбросить переназначенные материалы"
msgid "Right AMS"
-msgstr "Правый AMS"
+msgstr "Правая AMS"
#, c-format, boost-format
msgid "Printing with the current nozzle may produce an extra %0.2f g of waste."
msgstr "Печать текущим соплом может привести к дополнительным затратам %0.2f г материала."
-# AI Translated
#, c-format, boost-format
msgid "Tips: the filament type(%s) does not match with the filament type(%s) in the slicing file. If you want to use this slot, you can install %s instead of %s and change slot information on the 'Device' page."
-msgstr "Совет: тип материала (%s) не совпадает с типом материала (%s) в файле нарезки. Если вы хотите использовать этот слот, установите %s вместо %s и измените информацию о слоте на странице «Устройство»."
+msgstr "Совет: тип материала (%s) не совпадает с типом материала (%s) в файле нарезки. Если вы хотите использовать этот слот, установите %s вместо %s и измените информацию о слоте на странице «Принтер»."
-# AI Translated
#, c-format, boost-format
msgid "Cannot select: the filament type(%s) does not match with the filament type(%s) in the slicing file. If you want to use this slot, you can install %s instead of %s and change slot information on the 'Device' page."
-msgstr "Невозможно выбрать: тип материала (%s) не совпадает с типом материала (%s) в файле нарезки. Если вы хотите использовать этот слот, установите %s вместо %s и измените информацию о слоте на странице «Устройство»."
+msgstr "Невозможно выбрать: тип материала (%s) не совпадает с типом материала (%s) в файле нарезки. Если вы хотите использовать этот слот, установите %s вместо %s и измените информацию о слоте на странице «Принтер»."
-# AI Translated
#, c-format, boost-format
msgid "Cannot select: the slot is empty or undefined. If you want to use this slot, you can install %s and change slot information on the 'Device' page."
-msgstr "Невозможно выбрать: слот пуст или не определён. Если вы хотите использовать этот слот, установите %s и измените информацию о слоте на странице «Устройство»."
+msgstr "Невозможно выбрать: слот пуст или не определён. Если вы хотите использовать этот слот, установите %s и измените информацию о слоте на странице «Принтер»."
-# AI Translated
msgid "Cannot select: No filament loaded in current slot."
msgstr "Невозможно выбрать: в текущий слот не загружен материал."
@@ -4451,12 +4379,10 @@ msgstr "Использовать для печати материал с вне
msgid "Print with filament in AMS"
msgstr "Печать материалом из AMS"
-# AI Translated
msgctxt "Nozzle position"
msgid "Left"
msgstr "Левое"
-# AI Translated
msgctxt "Nozzle position"
msgid "Right"
msgstr "Правое"
@@ -4526,7 +4452,7 @@ msgid "Update remaining capacity"
msgstr "Обновлять оставшуюся ёмкость катушки"
msgid "AMS will attempt to estimate the remaining capacity of the Bambu Lab filaments."
-msgstr "AMS попытается оценить оставшееся количество филаментов Bambu Lab."
+msgstr "AMS будет пытаться оценивать оставшееся количество материалов Bambu Lab."
msgid "AMS filament backup"
msgstr "Резервирование материала AMS"
@@ -4789,6 +4715,23 @@ msgstr "Текущая температура внутри термокамер
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "Стартовая температура внутри термокамеры (%d℃) превышает целевую (%d℃). Подразумевается, что печать начинается заранее, поэтому стартовая температура не должна превышать её. Значение будет уменьшено."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "Высота слоя слишком мала. Будет установлено минимальное значение (%g мм)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "Высота слоя выходит за пределы, заданные в настройках принтера → Экструдер → Ограничение высоты слоя. Это может вызвать проблемы с качеством печати."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Автоматически подстроить под предел (%g мм)?"
+
+msgid "Adjust"
+msgstr "Подстроиться"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4808,9 +4751,9 @@ msgid ""
"\n"
"The first layer height will be reset to 0.2."
msgstr ""
-"Нулевая высота начального слоя недопустима.\n"
+"Нулевая высота первого слоя недопустима.\n"
"\n"
-"Высота первого слоя будет сброшена до 0.2."
+"Значение будет сброшено до 0,2."
# Оба первых предложения легко объединяются в одно.
msgid ""
@@ -4913,6 +4856,13 @@ msgid ""
"No - Disable Arachne Wall Generator and set [Displacement] mode of the Fuzzy Skin"
msgstr "Использовать нечёткую оболочку с движком Arachne?"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Радиус ушек каймы"
+
+msgid "Brim width"
+msgstr "Ширина каймы"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr ""
"Для печати в режиме вазы необходимы следующие настройки:\n"
@@ -5050,9 +5000,9 @@ msgstr "Измерение точности движений"
msgid "Enhancing motion precision"
msgstr "Улучшение точности движений"
-# ??? Измерение точности позиционирования
+# Относится к motion accuracy points – точкам фактического положения головы на сетке с эталонными координатами
msgid "Measure motion accuracy"
-msgstr "Измерение точности перемещения"
+msgstr "Измерение точности позиционирования"
msgid "Nozzle offset calibration"
msgstr "Калибровка смещения сопла"
@@ -5061,30 +5011,30 @@ msgid "High temperature auto bed leveling"
msgstr "Измерение кривизны разогретого стола"
msgid "Auto Check: Quick Release Lever"
-msgstr "Автопроверка: быстросъёмный рычаг"
+msgstr "Проверка: быстросъёмный модуль"
msgid "Auto Check: Door and Upper Cover"
-msgstr "Автопроверка: дверца и верхняя крышка"
+msgstr "Проверка: дверца и верхняя крышка"
msgid "Laser Calibration"
msgstr "Калибровка лазера"
msgid "Auto Check: Platform"
-msgstr "Автопроверка: платформа"
+msgstr "Проверка: стол"
-# ??? Подтверждение положения камеры
msgid "Confirming BirdsEye Camera location"
-msgstr "Подтверждение расположения камеры BirdsEye"
+msgstr "Подтверждение положения камеры"
# ??? Калибровка ракурса камеры
msgid "Calibrating BirdsEye Camera"
msgstr "Калибровка камеры BirdsEye"
+# Нет здесь никакого выравнивания, у бамбуков даже крутилок нет. Это просто снятие карты высот.
msgid "Auto bed leveling -phase 1"
-msgstr "Автоматическое выравнивание стола — фаза 1"
+msgstr "Измерение кривизны стола — фаза 1"
msgid "Auto bed leveling -phase 2"
-msgstr "Автоматическое выравнивание стола — фаза 2"
+msgstr "Измерение кривизны стола — фаза 2"
msgid "Heating chamber"
msgstr "Нагрев камеры"
@@ -5096,19 +5046,22 @@ msgid "Printing calibration lines"
msgstr "Печать калибровочных линий"
msgid "Auto Check: Material"
-msgstr "Автопроверка: материал"
+msgstr "Проверка: материал"
+# https://wiki.bambulab.com/ru/h2/troubleshooting/hmscode/0C00_0300_0002_0014#:~:text=калибровку%20камеры%20реального%20времени,-:
msgid "Live View Camera Calibration"
-msgstr "Калибровка камеры Live View"
+msgstr "Калибровка камеры реального времени"
msgid "Waiting for heatbed to reach target temperature"
msgstr "Ожидание нагрева стола"
+# у H2D система определяет, где лежит обрезок листа. Но может также относиться и к 3D-гравировке, где определяется расстояние до поверхности.
msgid "Auto Check: Material Position"
-msgstr "Автопроверка: положение материала"
+msgstr "Проверка: положение заготовки"
+# https://wiki.bambulab.com/ru/h2/troubleshooting/hmscode/0500_0400_0002_0037
msgid "Cutting Module Offset Calibration"
-msgstr "Калибровка смещения режущего модуля"
+msgstr "Калибровка смещения модуля резки"
msgid "Measuring Surface"
msgstr "Измерение поверхности"
@@ -5141,7 +5094,7 @@ msgid "Timelapse is not supported while the storage is readonly."
msgstr "Запись таймлапсов невозможна на защищённый от записи накопитель."
msgid "To ensure your safety, certain processing tasks (such as laser) can only be resumed on printer."
-msgstr "В целях безопасности некоторые задачи обработки (например, лазерная) могут быть возобновлены только на принтере."
+msgstr "В целях безопасности некоторые виды обработки (например, лазерная) можно возобновить только вручную на принтере."
#, c-format, boost-format
msgid "The chamber temperature is too high, which may cause the filament to soften. Please wait until the chamber temperature drops below %d℃. You may open the front door or enable fans to cool down."
@@ -5179,6 +5132,13 @@ msgid "Calibration error"
msgstr "Ошибка калибровки"
# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "На этом принтере не настроено оборудование, необходимое для этого элемента управления."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Этот элемент управления не поддерживается на этом принтере."
+
msgid "Network unavailable"
msgstr "Сеть недоступна"
@@ -5194,9 +5154,9 @@ msgstr "Продолжить (проблема решена)"
msgid "Stop Printing"
msgstr "Остановить печать"
-# ??? Перейти к помощнику, Помощник по проверке
+# "Ассистент" плохо ложится в "обратитесь к ассистенту", когда речь о руководстве.
msgid "Check Assistant"
-msgstr "Ассистент проверки"
+msgstr "Помощник проверки"
msgid "Filament Extruded, Continue"
msgstr "Пруток выдавлен, продолжить"
@@ -5217,9 +5177,9 @@ msgstr "Просмотр трансляции"
msgid "No Reminder Next Time"
msgstr "Больше не спрашивать"
-# AI Translated
+# Перепроверить
msgid "Recheck"
-msgstr "Проверить снова"
+msgstr "Перепроверить"
msgid "Ignore. Don't Remind Next Time"
msgstr "Игнорировать и больше не спрашивать"
@@ -5231,7 +5191,7 @@ msgid "Problem Solved and Resume"
msgstr "Проблема решена, продолжить"
msgid "Got it, Turn off the Fire Alarm."
-msgstr "Понятно, выключить пожарную сигнализацию."
+msgstr "Ясно, выключить пожарную сигнализацию."
msgid "Retry (problem solved)"
msgstr "Повторить (проблема решена)"
@@ -5242,15 +5202,12 @@ msgstr "Остановить сушку"
msgid "Proceed"
msgstr "Продолжить"
-# AI Translated
msgid "Abort"
msgstr "Прервать"
-# AI Translated
msgid "Disable Purification for This Print"
msgstr "Отключить очистку воздуха для этой печати"
-# AI Translated
msgid "Don't Remind Me"
msgstr "Не напоминать"
@@ -5263,7 +5220,6 @@ msgstr "Продолжить"
msgid "Unknown error."
msgstr "Неизвестная ошибка."
-# AI Translated
msgid "Loading ..."
msgstr "Загрузка ..."
@@ -5344,8 +5300,9 @@ msgstr "слой(-я)"
msgid "Range"
msgstr "Диапазон"
+# Подставляется в "По умолчанию" в подсказке к параметрам. Не уверен, нужно ли здесь "строка", может просто "пусто"?
msgid "Empty string"
-msgstr "Пустая строка"
+msgstr "пустая строка"
msgid "Value is out of range."
msgstr "Введённое значение вне диапазона."
@@ -5731,7 +5688,7 @@ msgid "Fan speed (%)"
msgstr "Скорость вентилятора (%)"
msgid "Temperature (℃)"
-msgstr "Температура (°C)"
+msgstr "Температура (℃)"
msgid "Volumetric flow rate (mm³/s)"
msgstr "Объёмный расход (мм³/с)"
@@ -5815,9 +5772,8 @@ msgid "Adaptive"
msgstr "Адаптировать"
msgid "Quality / Speed"
-msgstr "Качество/Скорость"
+msgstr "Качество/скорость"
-# AI Translated
msgctxt "Mesh action"
msgid "Smooth"
msgstr "Сгладить"
@@ -5919,7 +5875,6 @@ msgstr "Избегать зону калибровки экструзии"
msgid "Align to Y axis"
msgstr "Выравнивать по оси Y"
-# AI Translated
msgctxt "Camera View"
msgid "Front"
msgstr "Спереди"
@@ -5928,13 +5883,11 @@ msgctxt "Camera View"
msgid "Back"
msgstr "Сзади"
-# AI Translated
#. TRN To be shown in the main menu View->Top
msgctxt "Camera View"
msgid "Top"
msgstr "Сверху"
-# AI Translated
#. TRN To be shown in the main menu View->Bottom
msgctxt "Camera View"
msgid "Bottom"
@@ -6007,7 +5960,7 @@ msgstr "Назад"
# 2026). Похоже, это внутреннее название кнопки с панелью управления визуалом
# пространства моделей.
msgid "Canvas Toolbar"
-msgstr "Панель инструментов холста"
+msgstr "Панель инструментов рабочей области"
# Тут баг с переносом строк, каждое слово переносится. Чем короче – тем лучше.
msgid "Fit camera to scene or selected object."
@@ -6070,7 +6023,7 @@ msgstr "Объём:"
msgid "Size:"
msgstr "Размер:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "В G-коде на %d слое (z = %.2lf мм) обнаружен конфликт путей. Пожалуйста, разместите конфликтующие модели дальше друг от друга (%s <-> %s)."
@@ -6138,7 +6091,7 @@ msgid "PLA and PETG filaments detected in the mixture. Adjust parameters accordi
msgstr "Обнаружено совместное использование PLA и PETG. Для повышения качества рекомендуется настроить печать в соответствии с"
msgid "The prime tower extends beyond the plate boundary."
-msgstr "Башня очистки выходит за пределы области печати."
+msgstr "Черновая башня выходит за пределы области печати."
# После строки подставляется кнопка настройки
msgid "Partial flushing volume set to 0. Multi-color printing may cause color mixing in models. Please readjust flushing settings."
@@ -6231,15 +6184,16 @@ msgid ""
"You can find it in \"Settings > Network > Access code\"\n"
"on the printer, as shown in the figure:"
msgstr ""
-"Вы можете найти его на принтере в разделе \n"
-"Настройки > Сеть > Код подключения, как показано на рисунке:"
+"Его можно найти на принтере в разделе\n"
+"«Настройки» > «Сеть» > «Код подключения», как показано на рисунке:"
msgid ""
"You can find it in \"Setting > Setting > LAN only > Access Code\"\n"
"on the printer, as shown in the figure:"
msgstr ""
-"Вы можете найти его в «Настройки > Настройки > Только LAN > Код доступа»\n"
-"на принтере, как показано на рисунке:"
+"Его можно найти на принтере в разделе\n"
+"«Настройки» > «Настройки» > «Только LAN» > «Код доступа»,\n"
+"как показано на рисунке:"
msgid "Invalid input"
msgstr "Неверный ввод"
@@ -6276,6 +6230,10 @@ msgstr "Принтеры"
msgid "Project"
msgstr "Проект"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Принтер (веб)"
+
msgid "Yes"
msgstr "Да"
@@ -6283,7 +6241,7 @@ msgid "No"
msgstr "Нет"
msgid "will be closed before creating a new model. Do you want to continue?"
-msgstr "будет закрыт перед созданием новой модели. Продолжить?"
+msgstr "будет закрыт перед созданием нового проекта. Продолжить?"
# Возможно, имеет смысл убрать тут "стол". Подавляющее большинство проектов –
# это размещение моделей и их печать на одном столе, поэтому намёк на работу с
@@ -6372,7 +6330,6 @@ msgstr "Вид снизу"
msgid "Front View"
msgstr "Вид спереди"
-# AI Translated
msgctxt "Camera View"
msgid "Rear"
msgstr "Сзади"
@@ -6589,7 +6546,6 @@ msgstr "Отображение контура вокруг выбранных м
msgid "Preferences"
msgstr "Настройки"
-# AI Translated
msgctxt "Menu"
msgid "Edit"
msgstr "Правка"
@@ -7009,7 +6965,7 @@ msgstr ""
"Если накопитель не определяется, попробуйте отформатировать его."
msgid "The firmware version of the printer is too low. Please update the firmware and try again."
-msgstr "Версия прошивки принтера слишком старая. Пожалуйста, обновите прошивку и попробуйте снова."
+msgstr "Слишком старая версия прошивки принтера. Пожалуйста, обновите прошивку и попробуйте снова."
msgid "The file already exists, do you want to replace it?"
msgstr "Файл уже существует, заменить?"
@@ -7217,7 +7173,6 @@ msgstr "Настройки печати"
msgid "Safety Options"
msgstr "Настройки защиты"
-# AI Translated
msgid "Hotends"
msgstr "Хотэнды"
@@ -7254,11 +7209,9 @@ msgstr "Во время паузы смена материала поддерж
msgid "Current extruder is busy changing filament."
msgstr "В экструдере производится смена материала."
-# AI Translated
msgid "\"Load\" or \"Unload\" is not supported for external spool while using Filament Track Switch."
msgstr "«Загрузка» и «Выгрузка» не поддерживаются для внешней катушки при использовании Filament Track Switch."
-# AI Translated
msgid "The Filament Track Switch has not been setup. Please setup on printer."
msgstr "Filament Track Switch не настроен. Выполните настройку на принтере."
@@ -7268,10 +7221,9 @@ msgstr "Слот уже занят."
msgid "The selected slot is empty."
msgstr "Выбранный слот пуст."
-# Так и не нашёл, что это за 2D-режим такой. Выводится в пояснении к
-# отключённой функции.
+# Так и не нашёл, что это за 2D-режим такой. Выводится в пояснении к отключённой кнопке калибровки. Вероятно, блокировка калибровок печати у H2D при работе с лазерной (и не только) резкой
msgid "Printer 2D mode does not support 3D calibration"
-msgstr "2D-режим принтера не поддерживает 3D-калибровку"
+msgstr "3D-калиброка недоступна в 2D-режиме"
msgid "Downloading..."
msgstr "Загрузка..."
@@ -7298,7 +7250,7 @@ msgid "Chamber temperature cannot be changed in cooling mode while printing."
msgstr "Температуру камеры нельзя изменить при печати в режиме «Охлаждение»."
msgid "If the chamber temperature exceeds 40℃, the system will automatically switch to heating mode. Please confirm whether to switch."
-msgstr "Если температура камеры превысит 40℃, система автоматически переключится в режим нагрева. Подтвердите переключение."
+msgstr "Если температура камеры превышает 40℃, система автоматически переключится в режим нагрева. Подтвердите переключение."
msgid "Please select an AMS slot before calibration"
msgstr "Пожалуйста, выберите слот AMS перед калибровкой"
@@ -7440,6 +7392,7 @@ msgctxt "Firmware"
msgid "Update"
msgstr "Обновление"
+# https://wiki.bambulab.com/ru/hms/home
msgid "Assistant(HMS)"
msgstr "Помощник (HMS)"
@@ -7653,7 +7606,7 @@ msgid "Serious warning:"
msgstr "Серьёзное предупреждение:"
msgid " (Repair)"
-msgstr " (Восстановить)"
+msgstr "(Восстановить)"
msgid " Click here to install it."
msgstr " Нажмите здесь, чтобы установить."
@@ -7701,33 +7654,27 @@ msgctxt "Layers"
msgid "Bottom"
msgstr "Снизу"
-# AI Translated
msgid "Plugin Selection"
-msgstr "Выбор плагина"
+msgstr "Выбор плагинов"
-# AI Translated
msgid ""
"No plugins capabilities available for this type.\n"
"Enable or install some to use."
msgstr ""
-"Для этого типа нет доступных возможностей плагинов.\n"
+"Плагины с требуемым функционалом отсутствуют для этого типа.\n"
"Включите или установите их для использования."
-# AI Translated
msgid "There is stringing-prone filament in the current print job. Enabling nozzle clumping detection now may degrade print quality. Are you sure you want to enable it?"
-msgstr "В текущем задании печати есть материал, склонный к образованию волос. Включение обнаружения налипания на сопло сейчас может ухудшить качество печати. Вы уверены, что хотите включить его?"
+msgstr "В текущем проекте есть материал, склонный к образованию паутины. Работа проверки налипаний на сопле сейчас может ухудшить качество печати. Вы действительно хотите включить её?"
-# AI Translated
msgid "Enable Nozzle Clumping Detection"
msgstr "Включить обнаружение налипания на сопло"
-# AI Translated
msgid "When enabled, the printer will automatically capture photos of printed parts and upload them to the cloud. Would you like to enable this option?"
-msgstr "Когда включено, принтер будет автоматически делать фотографии печатаемых деталей и загружать их в облако. Хотите включить эту опцию?"
+msgstr "Принтер будет автоматически делать фотографии печатаемых деталей и загружать их в облако. Включить эту настройку?"
-# AI Translated
msgid "Confirm Enable Print Status Snapshot"
-msgstr "Подтвердите включение снимков состояния печати"
+msgstr "Подтверждение активации снимков состояния печати"
msgid "Enable detection of build plate position"
msgstr "Определение положения покрытия"
@@ -7741,28 +7688,23 @@ msgstr "Обнаружение покрытия стола"
msgid "Identifies the type and position of the build plate on the heatbed. Pausing printing if a mismatch is detected."
msgstr "Определение типа и положения покрытия стола. В случае обнаружения смещения печать приостанавливается."
-# AI Translated
msgid "Purifies the chamber air as the print finishes, based on the selected mode."
msgstr "Очищает воздух в камере по завершении печати в соответствии с выбранным режимом."
-# AI Translated
msgid "Purifies the chamber air through internal circulation as each print finishes."
msgstr "Очищает воздух в камере за счёт внутренней циркуляции по завершении каждой печати."
-# AI Translated
msgid "Automatically match the corresponding switch strategy for leak-prone filaments (disable blob detection) and regular filaments (enable blob detection)."
-msgstr "Автоматически подбирает соответствующую стратегию переключения для склонных к вытеканию материалов (отключает обнаружение налипаний) и обычных материалов (включает обнаружение налипаний)."
+msgstr "Автоматически подбирает соответствующую стратегию для склонных к подтёкам материалов (отключает обнаружение налипаний) и обычных материалов (включает обнаружение налипаний)."
-# AI Translated
msgid "Detect whether the nozzle is wrapped by filament or other foreign matter."
-msgstr "Определяет, обмотано ли сопло материалом или иными посторонними частицами."
+msgstr "Определяет налипший на сопло пластик или иные объекты."
-# AI Translated
msgid "After disabling, nozzle wrapping cannot be detected, which may lead to print failure or nozzle damage."
-msgstr "После отключения обмотку сопла нельзя будет обнаружить, что может привести к сбою печати или повреждению сопла."
+msgstr "После отключения налипший пластик на сопле нельзя будет обнаружить, что может привести к сбою печати или повреждению сопла."
msgid "AI Detections"
-msgstr "ИИ-обнаружение"
+msgstr "ИИ-мониторинг"
msgid "Printer will send assistant message or pause printing if any of the following problem is detected."
msgstr "Принтер отправит сообщение помощника или приостановит печать, если обнаружит одну из следующих проблем."
@@ -7774,27 +7716,27 @@ msgstr "Контроль печати с помощью ИИ"
msgid "Pausing Sensitivity:"
msgstr "Чувствительность:"
+# Печать воздухом/в воздухе – другой частный случай при перехлёсте прутка или заторе
msgid "Spaghetti Detection"
-msgstr "Обнаружение «спагетти»"
+msgstr "Обнаружение слетевших моделей"
msgid "Detect spaghetti failures (scattered lose filament)."
-msgstr "Обнаружение дефектов типа «спагетти» (разбросанная нить)."
+msgstr "Обнаружение «спагетти» при печати в воздухе."
msgid "Purge Chute Pile-Up Detection"
-msgstr "Обнаружение скопления в лотке очистки"
+msgstr "Обнаружение заполнения лотка прочистки"
msgid "Monitor if the waste is piled up in the purge chute."
-msgstr "Контроль скопления отходов в лотке очистки."
+msgstr "Контроль скопления отходов в лотке прочистки."
-# ???протечки, засорения
msgid "Nozzle Clumping Detection"
msgstr "Обнаружение пластика на сопле"
msgid "Check if the nozzle is clumping by filaments or other foreign objects."
-msgstr "Определение налипшего на сопле пластика или иных объектов."
+msgstr "Определение налипшего на сопло пластика или иных объектов."
msgid "Detects air printing caused by nozzle clogging or filament grinding."
-msgstr "Определение холостой печати из-за затора или перетирания прутка."
+msgstr "Определение холостой печати из-за затора или перехлёста/перетирания прутка."
msgid "First Layer Inspection"
msgstr "Проверка первого слоя"
@@ -7805,9 +7747,8 @@ msgstr "Автовосстановление после смещения сло
msgid "Store Sent Files on External Storage"
msgstr "Сохранять файлы печати на внешнем накопителе"
-# AI Translated
msgid "Save the printing files sent from the slicer and other apps on External Storage"
-msgstr "Сохранять файлы печати, отправленные из слайсера и других приложений, на внешнем накопителе"
+msgstr "Сохранять на внешнем накопителе файлы печати, отправленные из слайсера и других приложений"
msgid "Allow Prompt Sound"
msgstr "Разрешить звуковые уведомления"
@@ -7818,41 +7759,32 @@ msgstr "Обнаружение запутывания прутка"
msgid "Check if the nozzle is clumping by filament or other foreign objects."
msgstr "Обнаружение скапливания на сопле материала в результате засорения/протечки сопла или других причин."
-# AI Translated
msgid "Purify Air at Print End"
msgstr "Очищать воздух по завершении печати"
-# AI Translated
msgid "Internal Circulation"
msgstr "Внутренняя циркуляция"
-# AI Translated
msgid "Alignment Detection"
msgstr "Обнаружение смещения"
-# AI Translated
msgid "Pauses printing when build plate misalignment is detected."
msgstr "Приостанавливает печать при обнаружении смещения стола."
-# AI Translated
msgid "Foreign Object Detection"
msgstr "Обнаружение посторонних предметов"
-# AI Translated
msgid "Checks for any objects on the build plate at the start of a print to avoid collisions."
msgstr "Проверяет наличие любых предметов на столе в начале печати во избежание столкновений."
-# AI Translated
msgid "Printed Part Displacement Detection"
msgstr "Обнаружение смещения печатаемой детали"
-# AI Translated
msgid "Monitors the printed part during printing and alerts immediately if it shifts or collapses."
-msgstr "Отслеживает печатаемую деталь во время печати и немедленно предупреждает, если она сместилась или обрушилась."
+msgstr "Отслеживает положение детали во время печати и немедленно предупреждает, если она сместилась или обрушилась."
-# AI Translated
msgid "Checks if the nozzle is clumping by filament or other foreign objects."
-msgstr "Проверяет, не залипло ли сопло материалом или иными посторонними предметами."
+msgstr "Проверяет присутствие пластика или инородных объектов на сопле."
msgid "On"
msgstr "Вкл"
@@ -7866,13 +7798,11 @@ msgstr "Уведомление"
msgid "Pause printing"
msgstr "Пауза печати"
-# AI Translated
msgid "Print Status Snapshot"
msgstr "Снимок состояния печати"
-# AI Translated
msgid "Automatically capture and upload print photos, showing defects during printing and the final result for remote viewing."
-msgstr "Автоматически делает и загружает фотографии печати, показывая дефекты во время печати и итоговый результат для удалённого просмотра."
+msgstr "Автоматически снимает и загружает в облако фотографии печати, показывая дефекты во время печати и итоговый результат для удалённого просмотра."
msgctxt "Nozzle Type"
msgid "Type"
@@ -7887,7 +7817,7 @@ msgid "Flow"
msgstr "Расход"
msgid "Please change the nozzle settings on the printer."
-msgstr "Пожалуйста, измените настройки сопла на принтере."
+msgstr "Измените настройки сопла на принтере."
msgid "Brass"
msgstr "Латунь"
@@ -7895,7 +7825,6 @@ msgstr "Латунь"
msgid "High flow"
msgstr "Высокий расход"
-# AI Translated
msgid "TPU High flow"
msgstr "TPU High flow"
@@ -7918,9 +7847,8 @@ msgstr "Общие"
msgid "Objects"
msgstr "Модели"
-# AI Translated
msgid "Cycle settings visibility"
-msgstr "Переключать видимость настроек"
+msgstr "Переключить видимость настроек"
msgid "Compare presets"
msgstr "Сравнить профили"
@@ -8033,11 +7961,9 @@ msgstr "Переключение диаметра"
msgid "Configuration incompatible"
msgstr "Несовместимый профиль"
-# AI Translated
msgid "Filament switcher detected. All AMS filaments are now available for both extruders. The slicer will auto-assign for optimal printing."
-msgstr "Обнаружен переключатель материалов. Все материалы AMS теперь доступны для обоих экструдеров. Слайсер автоматически распределит их для оптимальной печати."
+msgstr "Обнаружен переключатель материалов. Все материалы из AMS теперь доступны для обоих экструдеров. Слайсер автоматически распределит их для оптимальной печати."
-# AI Translated
msgid "A filament switcher is detected but not calibrated and thus currently unavailable. Please calibrate it on the printer and synchronize before use."
msgstr "Обнаружен переключатель материалов, но он не откалиброван и потому сейчас недоступен. Откалибруйте его на принтере и синхронизируйте перед использованием."
@@ -8052,12 +7978,13 @@ msgid ""
"The currently selected machine preset is inconsistent with the connected printer type.\n"
"Are you sure to continue syncing?"
msgstr ""
-"Текущий выбранный профиль принтера не соответствует типу подключённого принтера.\n"
+"Выбранный профиль принтера не соответствует типу подключённого принтера.\n"
"Продолжить синхронизацию?"
msgid "There are unset nozzle types. Please set the nozzle types of all extruders before synchronizing."
msgstr "Типы сопел не заданы. Перед синхронизацией необходимо указать типы всех установленных сопел."
+# О сопле/соплах?
msgid "Sync extruder infomation"
msgstr "Синхронизировать информацию об экструдере"
@@ -8071,12 +7998,11 @@ msgid "Click to edit preset"
msgstr "Изменить профиль"
msgid "Nozzle"
-msgstr "Экструдер"
+msgstr "Сопло"
msgid "Project Filaments"
msgstr "Материалы проекта"
-# AI Translated
msgid "Purge mode"
msgstr "Режим прочистки"
@@ -8101,9 +8027,10 @@ msgstr "Поиск стола, модели или части..."
msgid "Pellets"
msgstr "Гранулы"
+# Порядок слов сильно зависит от контекста; не могу воспроизвести в интерфейсе. По идее, выводится при bool Sidebar::is_new_project_in_gcode3mf(), но что-либо менять в нарезанном .gcode.3mf вообще нельзя
#, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project."
-msgstr "После завершения операции проект %s будет закрыт и создан новый проект."
+msgstr "После завершения операции и закрытия текущего проекта %s будет создан новый проект."
msgid "There are no compatible filaments, and sync is not performed."
msgstr "Синхронизация не выполнена ввиду отсутствия совместимых материалов."
@@ -8120,7 +8047,7 @@ msgid "Only filament color information has been synchronized from printer."
msgstr "Синхронизирована только информация о цвете материала."
msgid "Filament type and color information have been synchronized, but slot information is not included."
-msgstr "Информация о типе и цвете филамента синхронизирована, но информация о слотах не включена."
+msgstr "Синхронизирована информация о типе и цвете материала, но не о слотах."
#, boost-format
msgid "Do you want to save changes to \"%1%\"?"
@@ -8355,22 +8282,18 @@ msgstr ""
"Это действие приведёт к удалению информации о разрезе.\n"
"Целостность модели после этого не гарантируется."
-# AI Translated
msgid "Delete Object"
msgstr "Удалить модель"
-# AI Translated
msgid "Delete All Objects"
msgstr "Удалить все модели"
-# AI Translated
msgid "Reset Project"
msgstr "Сбросить проект"
msgid "The selected object couldn't be split."
msgstr "Невозможно разделить выбранную модель."
-# AI Translated
msgid "Split to Objects"
msgstr "Разделить на модели"
@@ -8399,9 +8322,8 @@ msgstr "Выбор нового файла"
msgid "File for the replacement wasn't selected"
msgstr "Файл для замены не выбран"
-# AI Translated
msgid "Replace with 3D file"
-msgstr "Заменить 3D-файлом"
+msgstr "Замена файла модели"
# В заголовке окна выбора папки и ошибки "папка не найдена"
msgid "Select folder to replace from"
@@ -8413,21 +8335,21 @@ msgstr "Расположение для замены не указано"
msgid "Replaced with 3D files from directory:\n"
msgstr "Заменено файлами из расположения:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Пропущен %1%: идентичный файл.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ Пропущен %s: идентичный файл.\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Пропущен %1%: файл не существует.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ Пропущен %s: файл не существует.\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Пропущен %1%: не удалось заменить.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ Пропущен %s: не удалось заменить.\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Заменён %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ Заменён %s.\n"
msgid "Replaced volumes"
msgstr "Модели заменены"
@@ -8450,7 +8372,6 @@ msgstr "Не удалось перезагрузить:"
msgid "Error during reload"
msgstr "Ошибка во время перезагрузки"
-# AI Translated
msgid "Reload all"
msgstr "Перезагрузить всё"
@@ -8497,9 +8418,9 @@ msgid ""
"After syncing, software can optimize printing time and filament usage when slicing.\n"
"Would you like to sync now?"
msgstr ""
-"Информация о типе сопла и количестве AMS не синхронизирована с подключённого принтера.\n"
-"После синхронизации программа сможет оптимизировать время печати и расход филамента при нарезке.\n"
-"Хотите синхронизировать сейчас?"
+"Синхронизация информации о типе сопла и количестве AMS подключённого принтера не выполнена.\n"
+"После синхронизации программа сможет оптимизировать время печати и расход материала при нарезке.\n"
+"Выполнить синхронизацию?"
msgid "Sync now"
msgstr "Синхронизировать"
@@ -8549,10 +8470,10 @@ msgid "INFO:"
msgstr "Информация:"
msgid "No accelerations provided for calibration. Use default acceleration value "
-msgstr "Не заданы ускорения для калибровки. Использовать значение ускорения по умолчанию "
+msgstr "Не заданы ускорения для калибровки. Используется значение по умолчанию: "
msgid "No speeds provided for calibration. Use default optimal speed "
-msgstr "Не заданы скорости для калибровки. Использовать оптимальную скорость по умолчанию "
+msgstr "Не заданы скорости для калибровки. Используется значение по умолчанию: "
msgid "Import SLA archive"
msgstr "Импорт SLA архива"
@@ -8664,17 +8585,15 @@ msgstr "Причина: «%1%» не имеет пересечений с дру
msgid "Unable to perform boolean operation on model meshes. Only positive parts will be exported."
msgstr "Невозможно выполнить булеву операцию над сетками модели. Будут экспортированы только положительные части."
-# AI Translated
msgid "Flashforge host is not available."
msgstr "Хост Flashforge недоступен."
# Авторизация принтера Flashforge не удалась.
-# AI Translated
msgid "Unable to log in to the Flashforge printer."
-msgstr "Не удалось войти в принтер Flashforge."
+msgstr "Не удалось авторизоваться в панели управления Flashforge."
msgid "Is the printer ready? Is the print sheet in place, empty and clean?"
-msgstr "Готов ли Принтер? Печатная пластина на месте, пустая и чистая?"
+msgstr "Готов ли принтер? Проверьте установку и состояние покрытия стола."
msgid "Upload and Print"
msgstr "Загрузить и напечатать"
@@ -8729,47 +8648,36 @@ msgstr "«Принтер»"
msgid "Synchronize AMS Filament Information"
msgstr "Синхронизировать материалы в AMS"
-# AI Translated
msgid "OrcaCloud plugins required by the current preset are not installed:"
-msgstr "Плагины OrcaCloud, необходимые для текущего профиля, не установлены:"
+msgstr "Для текущего профиля требуется установка плагинов OrcaCloud:"
-# AI Translated
msgid "Install Plugins"
msgstr "Установить плагины"
-# AI Translated
msgid "Local plugins required by the current preset are missing:"
-msgstr "Отсутствуют локальные плагины, необходимые для текущего профиля:"
+msgstr "Для текущего профиля требуются локальные плагины:"
-# AI Translated
msgid "Find on OrcaCloud"
msgstr "Найти в OrcaCloud"
-# AI Translated
msgid "Plugins required by the current preset are not activated:"
-msgstr "Плагины, необходимые для текущего профиля, не активированы:"
+msgstr "Для текущего профиля требуются неактивные плагины:"
-# AI Translated
msgid "Activate Now"
-msgstr "Активировать сейчас"
+msgstr "Активировать"
-# AI Translated
msgid "The installed plugin does not provide the required capability — it may be outdated:"
-msgstr "Установленный плагин не предоставляет требуемую возможность — возможно, он устарел:"
+msgstr "В установленном плагине отсутствует нужный функционал (устаревшая версия?):"
-# AI Translated
msgid "Preparing to install plugins..."
msgstr "Подготовка к установке плагинов..."
-# AI Translated
msgid "Installing plugins"
msgstr "Установка плагинов"
-# AI Translated
msgid "Cancelling — finishing the current plugin..."
msgstr "Отмена — завершение текущего плагина..."
-# AI Translated
#, boost-format
msgid "Installing %1%..."
msgstr "Установка %1%..."
@@ -8813,9 +8721,8 @@ msgstr "Объём: %1% мм³\n"
msgid "Triangles: %1%\n"
msgstr "Треугольников: %1%\n"
-# AI Translated
msgid "Use \"Fix Model\" to repair the mesh."
-msgstr "Используйте «Исправить модель» для восстановления сетки."
+msgstr "Используйте «Восстановить» для исправления сетки. "
#, c-format, boost-format
msgid "Plate %d: %s is not suggested for use printing filament %s (%s). If you still want to do this print job, please set this filament's bed temperature to a number that is not zero."
@@ -9167,7 +9074,19 @@ msgstr "Если включено, вы сможете управлять нес
# Запрашивать выбор режима группировки?
msgid "Pop up to select filament grouping mode"
-msgstr "Всплывающее окно для выбора режима группировки филаментов"
+msgstr "Всплывающее окно для выбора режима группировки материалов"
+
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Видимые страницы плагинов"
+
+# AI Translated
+msgid "pages"
+msgstr "стр."
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Количество страниц плагинов, отображаемых как закреплённые вкладки, прежде чем остальные страницы будут свёрнуты в выпадающий список на последней вкладке."
msgid "Behaviour"
msgstr "Автоматизация"
@@ -9290,15 +9209,14 @@ msgstr "Графика"
msgid "Smooth normals"
msgstr "Сглаживание бликов"
-# AI Translated
msgid ""
"Applies smooth normals to the model.\n"
"\n"
"Requires manual scene reload to take effect (right-click on 3D view → \"Reload All\")."
msgstr ""
-"Применяет сглаженные нормали к модели.\n"
+"Применять сглаживание нормалей моделей.\n"
"\n"
-"Для вступления в силу требуется ручная перезагрузка сцены (правый клик в 3D-виде → «Перезагрузить всё»)."
+"Для применения изменений требуется ручная перезагрузка сцены (контекстное меню стола → «Перезагрузить всё»)."
msgid "Phong shading"
msgstr "Затенение по Фонгу"
@@ -9315,9 +9233,9 @@ msgstr "Применять фоновое затенение в простран
msgid "Shadows"
msgstr "Тени"
-# AI Translated
+# Опять переусложнили техническим нюансом. Изначально тени рисовались только на столе, потом это исправили и решили отметить здесь.
msgid "Renders cast shadows on the plate, other objects, and each object onto itself in realistic view."
-msgstr "Отображает отбрасываемые тени на столе, других моделях и на самой модели в режиме продвинутой графики."
+msgstr "Отрисовывать тени в режиме продвинутой графики."
msgid "Anti-aliasing"
msgstr "Сглаживание"
@@ -9379,32 +9297,28 @@ msgstr "Отображать частоту кадров"
msgid "Displays current viewport FPS in the top-right corner."
msgstr "Выводить частоту кадров рабочего пространства в правом верхнем углу."
-# AI Translated
msgid "G-code Preview"
-msgstr "Предпросмотр G-code"
+msgstr "Просмотр нарезки"
-# AI Translated
msgid "Dim lower layers"
-msgstr "Затемнять нижние слои"
+msgstr "Затемнять предыдущие слои"
-# AI Translated
msgid "When scrubbing the layer slider in the sliced preview, render the layers below the current one darkened so that only the layer being viewed is shown at full brightness."
-msgstr "При перемещении ползунка слоёв в предпросмотре нарезки слои ниже текущего отображаются затемнёнными, так что на полной яркости показан только просматриваемый слой."
+msgstr "Затемнять слои, находящиеся ниже текущего. Просматриваемый слой отображается на полной яркости."
-# AI Translated
msgid "Dimmed layer brightness"
msgstr "Яркость затемнённых слоёв"
msgid "%"
msgstr "%"
-# AI Translated
msgid ""
"How brightly the dimmed layers are rendered when \"Dim lower layers\" is enabled.\n"
"99% is barely darkened, 0% renders them black. Capped at 99% because 100% would be the same as disabling the option."
msgstr ""
-"Насколько ярко отображаются затемнённые слои, когда включена опция «Затемнять нижние слои».\n"
-"99% — затемнение почти незаметно, 0% — слои становятся чёрными. Максимум ограничен 99%, так как 100% равносильно отключению опции."
+"Процент яркости предыдущих слоёв при включении их затемнения.\n"
+"99% — почти полная яркость.\n"
+"0% — полное затенение."
msgid "Login region"
msgstr "Регион входа"
@@ -9534,6 +9448,18 @@ msgstr ""
"\n"
"Примечание: профили остаются недоступными для выбора."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Экспериментально) Использовать агентов принтера вместо хостов печати"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Отправлять задания печати для принтеров, отличных от Bambu, через агентов плагинов принтера вместо классической загрузки на хост печати.\n"
+"Если отключено, OrcaSlicer использует прежнее поведение хоста печати."
+
msgid "Experimental Features"
msgstr "Экспериментальные настройки"
@@ -9639,7 +9565,6 @@ msgstr "Несовместимые профили"
msgid "My Printer"
msgstr "Мой принтер"
-# AI Translated
msgid "AMS filaments"
msgstr "Материалы AMS"
@@ -9650,7 +9575,7 @@ msgid "AMS filament"
msgstr "Материал AMS"
msgid "Right filaments"
-msgstr "Филаменты правого экструдера"
+msgstr "Материалы правого экструдера"
msgid "Click to select filament color"
msgstr "Изменить цвет"
@@ -9661,7 +9586,6 @@ msgstr "Добавить/удалить профиль"
msgid "Edit preset"
msgstr "Изменить профиль"
-# AI Translated
msgid "Change extruder color"
msgstr "Изменить цвет экструдера"
@@ -9705,10 +9629,9 @@ msgstr "Несовместимы"
msgid "The selected preset is null!"
msgstr "Выбранный профиль пуст!"
-# AI Translated
msgctxt "Layer range"
msgid "End"
-msgstr "до конца"
+msgstr "конца"
msgid "Customize"
msgstr "Настроить"
@@ -9803,9 +9726,25 @@ msgstr "Пользовательский профиль"
msgid "Preset Inside Project"
msgstr "Профиль внутри проекта"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Копирует в этот профиль все значения, унаследованные от родительского профиля, и удаляет связь наследования. Профили, совместимые только с родительским, могут стать неподдерживаемыми."
+
msgid "Detach from parent"
msgstr "Сделать независимым"
+# AI Translated
+msgid "Unique preset"
+msgstr "Независимый профиль"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Родительский профиль"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Этот профиль не наследуется от другого профиля."
+
msgid "Name is unavailable."
msgstr "Имя недоступно."
@@ -9818,10 +9757,14 @@ msgstr "Профиль «%1%» уже существует."
#, boost-format
msgid "Preset \"%1%\" already exists and is incompatible with the current printer."
-msgstr "Профиль «%1%» уже существует и несовместим с текущим принтером."
+msgstr ""
+"Профиль «%1%» уже существует и\n"
+"несовместим с текущим принтером."
msgid "Please note that saving will overwrite the current preset."
-msgstr "Обратите внимание, что при сохранении произойдёт перезапись текущего профиля."
+msgstr ""
+"Обратите внимание: при сохранении произойдёт\n"
+"перезапись текущего профиля."
msgid "The name cannot be the same as a preset alias name."
msgstr "Имя не должно совпадать с именем предустановленного профиля."
@@ -9883,8 +9826,9 @@ msgstr "Отправка задания на печать"
msgid "Not satisfied with the grouping of filaments? Regroup and slice ->"
msgstr "Не нравится текущая группировка материалов? Нажмите сюда, чтобы изменить и нарезать заново."
+# Подсказка
msgid "Manually change external spool during printing for multi-color printing"
-msgstr "Ручная смена внешней катушки во время печати для многоцветной печати"
+msgstr "Смена внешней катушки вручную во время многоцветной печати"
msgid "Multi-color with external"
msgstr "Многоцветная печать с внешней катушкой"
@@ -9892,23 +9836,23 @@ msgstr "Многоцветная печать с внешней катушкой
msgid "Your filament grouping method in the sliced file is not optimal."
msgstr "Группировка материалов в файле печати не оптимальна."
-# AI Translated
msgid "To ensure print quality, the drying temperature will be lowered during printing."
-msgstr "Для обеспечения качества печати температура сушки будет снижена во время печати."
+msgstr "Температура сушки будет снижена на время печати во избежание проблем с качеством."
-# AI Translated
msgid "Select timelapse storage location"
msgstr "Выберите место хранения таймлапсов"
+# Ничего тут не выравнивается, банбуки чисто карту снимают
msgid "Auto Bed Leveling"
-msgstr "Автоматическое выравнивание стола"
+msgstr "Измерение кривизны стола"
+# "Пропуск" – это пояснение логики работы режима или призыв к действию?
msgid ""
"This checks the flatness of heatbed. Leveling makes extruded height uniform.\n"
"*Automatic mode: Run a leveling check(about 10 seconds). Skip if surface is fine."
msgstr ""
-"Проверка ровности нагревательного стола. Выравнивание обеспечивает равномерную высоту экструзии.\n"
-"*Автоматический режим: выполнить проверку (около 10 секунд). Пропустить, если поверхность в порядке."
+"Снятие карты высот стола. Позволяет обеспечить равномерность высоты слоя.\n"
+"*Автоматический режим: выполнить проверку (около 10 секунд). Пропуск, если поверхность в порядке."
msgid "Flow Dynamics Calibration"
msgstr "Калибровка динамики потока"
@@ -9917,24 +9861,22 @@ msgid ""
"This process determines the dynamic flow values to improve overall print quality.\n"
"*Automatic mode: Skip if the filament was calibrated recently."
msgstr ""
-"Этот процесс определяет значения динамического потока для улучшения общего качества печати.\n"
-"*Автоматический режим: пропустить, если филамент был откалиброван недавно."
+"Анализ инертности системы подачи материала для улучшения общего качества печати.\n"
+"*Автоматический режим: пропуск, если материал был недавно откалиброван."
msgid "Nozzle Offset Calibration"
-msgstr "Калибровка смещения сопла"
+msgstr "Калибровка смещения сопел"
msgid ""
"Calibrate nozzle offsets to enhance print quality.\n"
"*Automatic mode: Check for calibration before printing. Skip if unnecessary."
msgstr ""
-"Калибровка смещений сопел для улучшения качества печати.\n"
-"*Автоматический режим: проверять калибровку перед печатью. Пропустить, если не требуется."
+"Калибровка смещения сопел для улучшения качества печати.\n"
+"*Автоматический режим: выполнять калибровку перед печатью по необходимости."
-# AI Translated
msgid "Shared PA Profile"
msgstr "Общий профиль PA"
-# AI Translated
msgid "Nozzles and filaments of the same type share the same PA profile."
msgstr "Сопла и материалы одного типа используют общий профиль PA."
@@ -9950,50 +9892,40 @@ msgstr "Описание ошибки"
msgid "Extra info"
msgstr "Доп. информация"
-# AI Translated
msgid "The Filament Track Switch installed on the printer does not match the slicing file. Please re-slice to avoid print quality issues."
-msgstr "Filament Track Switch, установленный на принтере, не соответствует файлу нарезки. Выполните повторную нарезку во избежание проблем с качеством печати."
+msgstr "Filament Track Switch в принтере не соответствует файлу нарезки. Выполните повторную нарезку во избежание проблем с качеством печати."
-# AI Translated
msgid "This print requires a Filament Track Switch. Please install it first."
-msgstr "Для этой печати требуется Filament Track Switch. Сначала установите его."
+msgstr "Для печати этого файла требуется Filament Track Switch. Сначала установите его."
-# AI Translated
msgid "The Filament Track Switch has not been setup. Please setup it first."
msgstr "Filament Track Switch не настроен. Сначала выполните его настройку."
-# AI Translated
#, c-format, boost-format
msgid "Failed to send nozzle auto-mapping request to printer { code: %d }. Please try to refresh the printer information. If it still does not recover, you can try to rebind the printer and check the network connection."
-msgstr "Не удалось отправить запрос на авто-сопоставление сопел принтеру { code: %d }. Попробуйте обновить информацию о принтере. Если это не помогает, попробуйте перепривязать принтер и проверить сетевое соединение."
+msgstr "Не удалось отправить принтеру запрос на сопоставление сопел { код: %d }. Попробуйте обновить информацию о принтере. Если это не помогает, попробуйте проверить соединение и перепривязать принтер."
-# AI Translated
msgid "The printer is calculating nozzle mapping."
-msgstr "Принтер вычисляет сопоставление сопел."
+msgstr "Принтер выполняет сопоставление сопел."
-# AI Translated
msgid "Please wait a moment..."
msgstr "Пожалуйста, подождите..."
-# AI Translated
#, c-format, boost-format
msgid "Failed to receive nozzle auto-mapping table from printer { msg: %s }. Please refresh the printer information."
-msgstr "Не удалось получить таблицу авто-сопоставления сопел от принтера { msg: %s }. Обновите информацию о принтере."
+msgstr "Не удалось получить от принтера таблицу сопоставления сопел { ответ: %s }. Обновите информацию о принтере."
-# AI Translated
#, c-format, boost-format
msgid "The printer failed to build the nozzle auto-mapping table { code: %d }. Please refresh nozzle information."
-msgstr "Принтеру не удалось построить таблицу авто-сопоставления сопел { code: %d }. Обновите информацию о соплах."
+msgstr "Принтеру не удалось составить таблицу сопоставления сопел { код: %d }. Обновите информацию о соплах."
-# AI Translated
#, c-format, boost-format
msgid "The current nozzle mapping may produce an extra %0.2f g of waste."
-msgstr "Текущее сопоставление сопел может привести к дополнительным %0.2f г отходов."
+msgstr "Текущее сопоставление сопел может привести к дополнительным затратам %0.2fг материала."
-# AI Translated
#, c-format, boost-format
msgid "Recommended filament arrangement saves %s->"
-msgstr "Рекомендуемое расположение материалов экономит %s->"
+msgstr "Рекомендуемое расположение материалов экономит %s→"
#, c-format, boost-format
msgid "Filament %s does not match the filament in AMS slot %s. Please update the printer firmware to support AMS slot assignment."
@@ -10012,18 +9944,17 @@ msgstr "При включении режима вазы принтеры с ки
msgid "The current printer does not support timelapse in Traditional Mode when printing By-Object."
msgstr "Принтер не поддерживает таймлапс в режиме по умолчанию при печати моделей по очереди."
-# AI Translated
msgid "I have checked the installed nozzle and want to print anyway."
-msgstr "Я проверил установленное сопло и всё равно хочу печатать."
+msgstr "Установленное сопло проверено, продолжить в любом случае."
msgid "Errors"
msgstr "Ошибок"
msgid "More than one filament types have been mapped to the same external spool, which may cause printing issues. The printer won't pause during printing."
-msgstr "Несколько типов филамента назначены на одну внешнюю катушку, что может вызвать проблемы при печати. Принтер не будет приостанавливаться во время печати."
+msgstr "На одну внешнюю катушку назначено несколько типов материала, что может вызвать проблемы при печати. Принтер не будет приостанавливаться во время печати."
msgid "The filament type setting of external spool is different from the filament in the slicing file."
-msgstr "Тип филамента на внешней катушке отличается от филамента в файле нарезки."
+msgstr "Тип материала на внешней катушке отличается от материала в файле нарезки."
msgid "The printer type selected when generating G-code is not consistent with the currently selected printer. It is recommended that you use the same printer type for slicing."
msgstr "Выбранный профиль принтера в настройках слайсера не совпадает с фактическим принтером. Для нарезки рекомендуется использовать тот же профиль принтера."
@@ -10041,48 +9972,40 @@ msgid "Please click the confirm button if you still want to proceed with printin
msgstr "Нажмите кнопку подтверждения, если всё ещё хотите продолжить печать."
msgid "This checks the flatness of heatbed. Leveling makes extruded height uniform."
-msgstr "Проверка ровности нагревательного стола. Выравнивание обеспечивает равномерную высоту экструзии."
+msgstr "Проверка кривизны стола. Обеспечивает равномерную высоту слоя."
msgid "This process determines the dynamic flow values to improve overall print quality."
-msgstr "Этот процесс определяет значения динамического потока для улучшения общего качества печати."
+msgstr "Определение коэффициента динамического потока для улучшения общего качества печати."
msgid "Internal"
msgstr "Внутренние"
-# AI Translated
+# Подставляется storage_name
#, c-format, boost-format
msgid "%s space less than 20MB. Timelapse may not save properly. You can turn it off or"
-msgstr "%s: свободного места меньше 20 МБ. Таймлапс может сохраниться некорректно. Вы можете отключить его или"
+msgstr "%s: свободного места меньше 20 МБ. Таймлапс может сохраниться некорректно. Рекомендуется отключить его или "
-# AI Translated
msgid "Clean up files"
-msgstr "Очистить файлы"
+msgstr "очистить файлы"
-# AI Translated
msgid "Low internal storage. This timelapse will overwrite the oldest video files."
msgstr "Мало внутренней памяти. Этот таймлапс перезапишет самые старые видеофайлы."
-# AI Translated
msgid "Low external storage. This timelapse will overwrite the oldest video files."
msgstr "Мало внешней памяти. Этот таймлапс перезапишет самые старые видеофайлы."
-# AI Translated
msgid "Insufficient external storage for time-lapse photography. Connect to computer to delete files, or use a larger memory card."
msgstr "Недостаточно внешней памяти для съёмки таймлапса. Подключитесь к компьютеру для удаления файлов или используйте карту памяти большего объёма."
-# AI Translated
msgid "Storage Space Not Enough"
msgstr "Недостаточно места в хранилище"
-# AI Translated
msgid "Confirm & Print"
-msgstr "Подтвердить и печатать"
+msgstr "Подтвердить и продолжить"
-# AI Translated
msgid "Cancel Timelapse & Print"
-msgstr "Отменить таймлапс и печатать"
+msgstr "Отключить таймлапс и продолжить"
-# AI Translated
msgid "Clean Up"
msgstr "Очистить"
@@ -10100,47 +10023,38 @@ msgstr "Будет затрачено на %d г материала и на %d
msgid "nozzle"
msgstr "сопло"
-# AI Translated
#, c-format, boost-format
msgid "Refreshing information of hotends(%d/%d)."
msgstr "Обновление информации о хотэндах (%d/%d)."
-# AI Translated
msgid "There are not enough available hotends currently."
-msgstr "Сейчас недостаточно доступных хотэндов."
+msgstr "Доступных хотэндов сейчас недостаточно."
-# AI Translated
msgid "Please complete the hotend rack setup and try again."
msgstr "Завершите настройку стойки хотэндов и повторите попытку."
-# AI Translated
msgid "Please refresh the nozzle information and try again."
msgstr "Обновите информацию о соплах и повторите попытку."
-# AI Translated
msgid "Please re-slice to avoid filament waste."
-msgstr "Выполните повторную нарезку во избежание расхода материала впустую."
+msgstr "Выполните повторную нарезку во избежание излишнего расхода материала."
-# AI Translated
msgid "The reported hotend information may be unreliable."
msgstr "Переданная информация о хотэнде может быть недостоверной."
-# AI Translated
#, c-format, boost-format
msgid "The printer has no nozzle matching the slicing file (%s)."
msgstr "На принтере нет сопла, соответствующего файлу нарезки (%s)."
-# AI Translated
msgid "Please install a matching nozzle in the hotend rack, or set the corresponding printer preset while slicing."
msgstr "Установите подходящее сопло в стойку хотэндов или задайте соответствующий профиль принтера при нарезке."
-# AI Translated
msgid "The toolhead and hotend rack are full. Please remove at least one hotend before printing."
-msgstr "Печатающая голова и стойка хотэндов заполнены. Перед печатью снимите хотя бы один хотэнд."
+msgstr "Все места в печатающей голове и стойке хотэндов заняты. Перед печатью снимите хотя бы один хотэнд."
#, c-format, boost-format
msgid "The nozzle flow setting of %s(%s) doesn't match with the slicing file(%s). Please make sure the nozzle installed matches with settings in printer, then set the corresponding printer preset while slicing."
-msgstr "Настройка потока сопла %s(%s) не совпадает с файлом нарезки (%s). Убедитесь, что настройки принтера соответствуют установленному соплу, затем выберите соответствующий профиль принтера при нарезке."
+msgstr "Настройка расхода сопла %s(%s) не совпадает с файлом нарезки (%s). Убедитесь, что настройки принтера соответствуют установленному соплу, затем выберите соответствующий профиль принтера при нарезке."
msgid "Tips: If you changed your nozzle of your printer lately, please go to 'Device -> Printer parts' to change your nozzle setting."
msgstr "Совет: после замены сопла в принтере необходимо обновить его настройки («Принтер» → «Части принтера»)."
@@ -10158,28 +10072,23 @@ msgstr "обоих экструдерах"
#, c-format, boost-format
msgid "The hardness of current material (%s) exceeds the hardness of %s(%s). Please verify the nozzle or material settings and try again."
-msgstr "Требования к твёрдости у выбранного материала (%s) превышают возможности %s(%s). Проверьте настройки профиля принтера или материала и попробуйте ещё раз."
+msgstr "Требования к твёрдости у выбранного материала (%s) превышают возможности %s (%s). Проверьте настройки профиля принтера или материала и попробуйте ещё раз."
-# AI Translated
msgid "Your current firmware version cannot start this print job. Please update to the latest version and try again."
-msgstr "Текущая версия прошивки не может запустить это задание печати. Обновите до последней версии и повторите попытку."
+msgstr "Текущая версия прошивки не может обработать этот файл. Обновитесь до последней версии и повторите попытку."
-# AI Translated
#, c-format, boost-format
msgid "The hardness of current material (%s) exceeds the hardness of %s(%s). It may cause nozzle wear, leading to material leakage and unstable flow. Please exercise caution when using it."
-msgstr "Твёрдость текущего материала (%s) превышает твёрдость %s(%s). Это может вызвать износ сопла, приводящий к утечке материала и нестабильному потоку. Соблюдайте осторожность при использовании."
+msgstr "Требования к твёрдости у выбранного материала (%s) превышают возможности %s (%s). Это может привести к износу сопла и утечкам материала/нестабильному потоку в будущем. Используйте материал с осторожностью."
-# AI Translated
msgid "Some filaments may switch between extruders during printing. Manual K-value calibration cannot be applied throughout the entire print, which may affect print quality. Enabling Flow Dynamics Calibration is recommended."
-msgstr "Некоторые материалы могут переключаться между экструдерами во время печати. Ручную калибровку K-value нельзя применить на протяжении всей печати, что может повлиять на её качество. Рекомендуется включить калибровку динамики потока (Flow Dynamics Calibration)."
+msgstr "Некоторые материалы могут переключаться между экструдерами во время печати. Ручная калибровка K-фактора не применима для всей печати, что может повлиять на её качество. Рекомендуется включить калибровку динамики потока (Flow Dynamics Calibration)."
-# AI Translated
msgid "There is stringing-prone filament in this file. For best print quality, we recommend switching nozzle clumping detection to Auto mode."
-msgstr "В этом файле есть материал, склонный к образованию волос. Для наилучшего качества печати рекомендуем переключить обнаружение налипания на сопло в режим «Авто»."
+msgstr "В текущем проекте есть материал, склонный к образованию паутины. Во избежание проблем с качеством рекомендуется включить автоматический режим обнаружения налипаний на сопло."
-# AI Translated
msgid "If 'Dynamic Flow Calibration' is set to Auto/On, the system will use the manual calibration value or the default value and skip the flow calibration process. You can perform a manual flow calibration for TPU filament on the 'Calibration' page."
-msgstr "Если «Динамическая калибровка потока» установлена в «Авто/Вкл», система будет использовать значение ручной калибровки или значение по умолчанию и пропустит процесс калибровки потока. Вы можете выполнить ручную калибровку потока для материала TPU на странице «Калибровка»."
+msgstr "Если «Калибровка динамики потока» установлена в «Авто/Вкл», система будет использовать значение ручной калибровки или значение по умолчанию и пропустит процесс калибровки. Ручную калибровку TPU можно выполнить на странице «Калибровка»."
#, c-format, boost-format
msgid "[ %s ] requires printing in a high-temperature environment. Please close the door."
@@ -10250,16 +10159,16 @@ msgid "The printer is executing instructions. Please restart printing after it e
msgstr "Принтер выполняет команды. Перезапустите печать после их завершения."
msgid "AMS is setting up. Please try again later."
-msgstr "AMS настраивается. Пожалуйста, попробуйте позже."
+msgstr "AMS настраивается. Попробуйте позднее."
msgid "Not all filaments used in slicing are mapped to the printer. Please check the mapping of filaments."
-msgstr "Не все филаменты, использованные при нарезке, назначены на принтер. Проверьте назначение филаментов."
+msgstr "Не все материалы, использованные при нарезке, сопоставлены с принтером. Проверьте назначение материалов."
msgid "Please do not mix-use the Ext with AMS."
-msgstr "Пожалуйста, не используйте одновременно внешнюю катушку и AMS."
+msgstr "Не стоит использовать AMS и внешние катушки совместно."
msgid "Invalid nozzle information, please refresh or manually set nozzle information."
-msgstr "Недопустимая информация о сопле. Обновите или вручную задайте информацию о сопле."
+msgstr "Недопустимая информация о сопле. Обновите или задайте её вручную."
msgid "Storage needs to be inserted before printing via LAN."
msgstr "Перед печатью по локальной сети необходимо вставить хранилище данных."
@@ -10286,24 +10195,21 @@ msgid "TPU 90A/TPU 85A is too soft and does not support automatic Flow Dynamics
msgstr "TPU 85A/90A слишком мягкий для автоматической калибровки."
msgid "Set dynamic flow calibration to 'OFF' to enable custom dynamic flow value."
-msgstr "Установите калибровку динамического потока в «ВЫКЛ.», чтобы задать пользовательское значение динамического потока."
+msgstr "Отключите калибровку динамики потока, чтобы задать пользовательское значение."
msgid "This printer does not support printing all plates."
msgstr "Принтер не поддерживает печать нескольких столов."
-# AI Translated
#, c-format, boost-format
msgid "The current firmware supports a maximum of %s materials. You can either reduce the number of materials to %s or fewer on the Preparation Page, or try updating the firmware. If you are still restricted after the update, please wait for subsequent firmware support."
-msgstr "Текущая прошивка поддерживает не более %s материалов. Вы можете либо уменьшить количество материалов до %s или менее на странице подготовки, либо попробовать обновить прошивку. Если после обновления ограничение сохраняется, дождитесь поддержки в последующих версиях прошивки."
+msgstr "Текущая прошивка поддерживает не более %s материалов. Попробуйте обновить прошивку или уменьшить количество материалов до %s (или менее) на странице подготовки. Если после обновления ограничение сохраняется, ожидайте добавления поддержки в последующих версиях."
msgid "The type of external filament is unknown or does not match with the filament type in the slicing file. Please make sure you have installed the correct filament in the external spool."
msgstr "Тип материала на внешней катушке неизвестен или не соответствует материалу в файле печати. Убедитесь, что установлена внешняя катушка с требуемым материалом."
-# AI Translated
msgid "TPU 90A/TPU 85A are too soft. It is recommended to perform manual flow calibration on the 'Calibration' page. If 'Dynamic Flow Calibration' is set to auto/on, the system will use the previous calibration value and skip the flow calibration process."
-msgstr "TPU 90A/TPU 85A слишком мягкие. Рекомендуется выполнить ручную калибровку потока на странице «Калибровка». Если «Динамическая калибровка потока» установлена в «авто/вкл», система будет использовать предыдущее значение калибровки и пропустит процесс калибровки потока."
+msgstr "TPU 90A/TPU 85A слишком мягкий. Рекомендуется выполнить ручную калибровку потока на странице «Калибровка». Если «Калибровка динамики потока» установлена в «Авто/Вкл», система будет использовать предыдущие результаты и пропустит процесс калибровки."
-# AI Translated
msgid "The filament in the AMS may be insufficient for this print. Please refill or replace it."
msgstr "Материала в AMS может быть недостаточно для этой печати. Пополните или замените его."
@@ -10475,7 +10381,6 @@ msgstr "Удалить этот профиль"
msgid "Search in preset"
msgstr "Поиск в профиле"
-# AI Translated
msgid "Synchronization of different extruder drives or nozzle volume types is not supported."
msgstr "Синхронизация разных приводов экструдера или типов объёма сопла не поддерживается."
@@ -10485,9 +10390,8 @@ msgstr "Перенести изменения в настройки другог
msgid "Click to reset all settings to the last saved preset."
msgstr "Сбросить все изменения"
-# AI Translated
msgid "Prime tower is required for nozzle changing. There may be flaws on the model without prime tower. Are you sure you want to disable prime tower?"
-msgstr "Для смены сопла требуется черновая башня. Без черновой башни на модели могут появиться дефекты. Вы уверены, что хотите отключить черновую башню?"
+msgstr "Для смены сопла требуется черновая башня. Без черновой башни на модели могут появиться дефекты. Вы действительно хотите отключить черновую башню?"
msgid "A prime tower is required for smooth timelapse mode. There may be flaws on the model without a prime tower. Are you sure you want to disable the prime tower?"
msgstr "Для сглаженного таймлапса требуется черновая башня, без неё на модели могут возникнуть дефекты. Вы действительно хотите отключить черновую башню?"
@@ -10503,7 +10407,7 @@ msgid "A prime tower is required for clumping detection. There may be flaws on t
msgstr "Для обнаружения налипаний на сопле требуется черновая башня, без неё на модели могут образоваться дефекты. Включить обнаружение налипаний?"
msgid "Enabling both precise Z height and the prime tower may cause slicing errors. Do you still want to enable precise Z height?"
-msgstr "Включение «Точной высоты по Z» вместе с черновой башней может привести к ошибкам нарезки. Продолжить?"
+msgstr "Включение «Точной высоты по Z» совместно с черновой башней может привести к ошибкам нарезки. Продолжить?"
msgid "A prime tower is required for smooth timelapse mode. There may be flaws on the model without prime tower. Do you want to enable the prime tower?"
msgstr "Для сглаженного таймлапса требуется черновая башня, без неё на модели могут возникнуть дефекты. Включить черновую башню?"
@@ -10563,22 +10467,6 @@ msgstr "Вы действительно хотите задействовать
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
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 height limits, this may cause printing quality issues."
-msgstr "Высота слоя не может превышать ограничения, установленные в настройках принтера → Экструдер → Ограничение высоты слоя. Это может вызвать проблемы с качеством печати."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Автоматически подстроиться под заданный в настройках диапазон?\n"
-
-msgid "Adjust"
-msgstr "Подстроиться"
-
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."
msgstr "[Экспериментальная функция] Втягивание и обрезка прутка на большем расстоянии во время его замены для минимизации очистки. Хотя это значительно сокращает величину очистки, это может повысить риск возникновения затора или вызвать другие проблемы при печати."
@@ -10715,6 +10603,7 @@ msgstr "Материал поддержки"
msgid "Support ironing"
msgstr "Разглаживание поддержки"
+# Технически точной локализацией было бы "фрактальные поддержки", т.к. сама структура представляет собой фрактал, а не дерево. Но у всех уже на слуху, так что менять нет смысла. Хотя звучало бы прям круто :3
msgid "Tree supports"
msgstr "Древовидная поддержка"
@@ -10741,13 +10630,12 @@ msgstr "G-код при смене типа линии"
msgid "Post-processing Scripts"
msgstr "Скрипты постобработки"
-# AI Translated
msgid "Slicing Pipeline Plugin"
msgstr "Плагин конвейера нарезки"
-# AI Translated
+# В данном контексте можно, наверное, "конфигурация", т.к. тут именно управление набором плагинов, а не просто их настройками
msgid "Plugin Configuration"
-msgstr "Настройка плагина"
+msgstr "Настройка плагинов"
msgid "Notes"
msgstr "Заметки"
@@ -10778,6 +10666,9 @@ msgstr "Найдены зарезервированные ключевые сл
msgid "Setting Overrides"
msgstr "Замещение настроек"
+msgid "Retraction when switching material"
+msgstr "Откат при смене материала"
+
msgid "Basic information"
msgstr "Основные"
@@ -10904,7 +10795,7 @@ msgid "Multi Filament"
msgstr "Печать несколькими материалами"
msgid "Tool change parameters with single extruder MM printers"
-msgstr "Смена материала при комбинированной печати одним экструдером"
+msgstr "Смена материала при печати одним экструдером"
msgid "Set"
msgstr "Выбор"
@@ -10925,6 +10816,12 @@ msgstr "Совместимые настройки"
msgid "Printable space"
msgstr "Область печати"
+msgid "Printer Agent"
+msgstr "Сетевой агент"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Реализация сетевого агента для обмена информацией с принтером. Доступные реализации определяются при запуске."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -11053,9 +10950,6 @@ msgstr "Ограничение высоты слоя"
msgid "Z-Hop"
msgstr "Подъём головы при откате"
-msgid "Retraction when switching material"
-msgstr "Откат при смене материала"
-
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
"\n"
@@ -11069,10 +10963,8 @@ msgstr ""
msgid "Firmware Retraction"
msgstr "Откат из прошивки"
-# Изменения в настройках ... будут сброшены при переключении на принтер с
-# другим типом или количеством сопел.
msgid "Switching to a printer with different extruder types or numbers will discard or reset changes to extruder or multi-nozzle-related parameters."
-msgstr "Переключение на принтер с другим типом или количеством экструдеров приведёт к сбросу или удалению изменений параметров, связанных с экструдерами и многосопельной конфигурацией."
+msgstr "Изменения в настройках экструдера и параметрах сопел не будут перенесены в профиль принтера с другим типом или количеством сопел."
msgid "Use Modified Value"
msgstr "Использовать изменённое значение"
@@ -11087,7 +10979,7 @@ msgstr ""
"• профили материалов: %d\n"
"• профили настроек: %d\n"
"\n"
-"Эти профили будут удалены при удалении принтера."
+"Эти профили будут удалены вместе с принтером."
# ??? Профили, наследуемые от других профилей, не могут быть удалены.
msgid "Presets inherited by other presets cannot be deleted!"
@@ -11115,8 +11007,8 @@ msgid ""
"If the preset corresponds to a filament currently in use on your printer, please reset the filament information for that slot."
msgstr ""
"Вы действительно хотите удалить выбранный профиль? \n"
-"Если материал из этого профиля сейчас используется в вашем принтере,\n"
-"необходимо сбросить информацию о материале для этого слота."
+"Если вы используете его в принтере, сбросьте информацию\n"
+"о нём у соответствующего слота."
#, boost-format
msgid "Are you sure you want to %1% the selected preset?"
@@ -11173,7 +11065,6 @@ msgstr "Продолжить"
msgid "Don't warn again for this preset"
msgstr "Больше не спрашивать для этого профиля"
-# AI Translated
#, c-format, boost-format
msgid "%s: %s"
msgstr "%s: %s"
@@ -11326,16 +11217,15 @@ msgstr ""
msgid "Extruder count"
msgstr "Количество экструдеров"
+# Какая-то древняя строка. Ранее – "Характеристики принтера", сейчас используется ещё и в конфигурации плагинов в профиле материала (вкладка "Расширенные")
msgid "Capabilities"
-msgstr "Характеристики принтера"
+msgstr "Возможности"
-# AI Translated
msgid "Left: "
-msgstr "Слева: "
+msgstr "Левый: "
-# AI Translated
msgid "Right: "
-msgstr "Справа: "
+msgstr "Правый: "
msgid "Show all presets (including incompatible)"
msgstr "Показать все профили (включая несовместимые)"
@@ -11488,7 +11378,7 @@ msgid "Color match"
msgstr "Подбор цвета"
msgid "Approximate color matching."
-msgstr "Приблизительный подбор по цвету ваших прутков."
+msgstr "Приблизительный подбор по цвету ваших материалов."
msgid "Append"
msgstr "Добавить"
@@ -11510,7 +11400,7 @@ msgid ""
msgstr "выбор цветов можно изменить вручную."
msgid "—> "
-msgstr "—> "
+msgstr "→ "
msgid ""
"Synchronizing AMS filaments will discard your modified but unsaved filament presets.\n"
@@ -11534,7 +11424,7 @@ msgid "Plate"
msgstr "Стол"
msgid "The connected printer does not match the currently selected printer. Please change the selected printer."
-msgstr "Подключённый принтер не соответствует текущему выбранному принтеру. Пожалуйста, измените выбранный принтер."
+msgstr "Подключённый принтер не соответствует текущему выбранному. Пожалуйста, измените выбранный принтер."
msgid "Mapping"
msgstr "Назначение"
@@ -11543,7 +11433,7 @@ msgid "Overwriting"
msgstr "Переназначение"
msgid "Reset all filament mapping"
-msgstr "Сбросить все назначения филаментов"
+msgstr "Сбросить назначения всех материалов"
msgid "(Recommended filament)"
msgstr "(рекомендуется)"
@@ -11555,8 +11445,8 @@ msgid ""
"Check heatbed flatness. Leveling makes extruded height uniform.\n"
"*Automatic mode: Level first (about 10 seconds). Skip if surface is fine."
msgstr ""
-"Проверка ровности стола. Выравнивание обеспечивает равномерную высоту экструзии.\n"
-"*Автоматический режим: сначала выполнить выравнивание (около 10 секунд). Пропустить, если поверхность в порядке."
+"Снятие карты высот стола. Обеспечивает равномерную высоту слоя.\n"
+"*Автоматический режим: выполнить проверку (около 10 секунд). Пропуск, если поверхность в порядке."
msgid ""
"Calibrate nozzle offsets to enhance print quality.\n"
@@ -11572,43 +11462,43 @@ msgid "Tip"
msgstr "Совет"
msgid "Only synchronize filament type and color, not including AMS slot information."
-msgstr "Синхронизировать только тип и цвет филамента, без информации о слотах AMS."
+msgstr "Синхронизировать только тип и цвет материала, без информации о слотах AMS."
msgid "Replace the project filaments list sequentially based on printer filaments. And unused printer filaments will be automatically added to the end of the list."
-msgstr "Заменить список филаментов проекта последовательно на основе филаментов принтера. Неиспользуемые филаменты принтера будут автоматически добавлены в конец списка."
+msgstr "Заменить список материалов проекта последовательно на основе материалов принтера. Свободные материалы будут автоматически добавлены в конец списка."
msgid "Add unused AMS filaments to filaments list."
msgstr "Добавить незадействованные материалы из AMS в список"
msgid "Automatically merge the same colors in the model after mapping."
-msgstr "Автоматически объединять одинаковые цвета в модели после назначения."
+msgstr "Автоматически объединять одинаковые цвета в модели после их назначения."
msgid "After being synced, this action cannot be undone."
msgstr "После синхронизации это действие нельзя отменить."
msgid "After being synced, the project's filament presets and colors will be replaced with the mapped filament types and colors. This action cannot be undone."
-msgstr "После синхронизации профили филаментов и цвета проекта будут заменены назначенными типами и цветами филаментов. Это действие нельзя отменить."
+msgstr "После синхронизации профили и цвета материалов проекта будут заменены назначенными им типами и цветами материалов. Это действие нельзя отменить."
msgid "Are you sure to synchronize the filaments?"
-msgstr "Вы уверены, что хотите синхронизировать филаменты?"
+msgstr "Вы уверены, что хотите синхронизировать материалы?"
msgid "Synchronize now"
msgstr "Синхронизировать"
msgid "Synchronize Filament Information"
-msgstr "Синхронизация информации о филаменте"
+msgstr "Синхронизация информации о материале"
msgid "Add unused filaments to filaments list."
-msgstr "Добавить неиспользуемые филаменты в список."
+msgstr "Добавить неиспользуемые материалы в список."
msgid "Only synchronize filament type and color, not including slot information."
-msgstr "Синхронизировать только тип и цвет филамента, без информации о слотах."
+msgstr "Синхронизировать только тип и цвет материала, без информации о слотах."
msgid "Ext spool"
msgstr "Внешняя катушка"
msgid "Please check whether the nozzle type of the device is the same as the preset nozzle type."
-msgstr "Проверьте, совпадает ли тип сопла устройства с типом сопла в профиле."
+msgstr "Проверьте, совпадает ли тип сопла в принтере с типом сопла в профиле."
msgid "Storage is not available or is in read-only mode."
msgstr "Хранилище недоступно или защищено от записи."
@@ -11621,7 +11511,7 @@ msgid "Timelapse is not supported because Print sequence is set to \"By object\"
msgstr "Таймлапс не поддерживается, поскольку для последовательности печати установлено значение «Печать по очереди»."
msgid "You selected external and AMS filament at the same time in an extruder, you will need manually change external filament."
-msgstr "Вы выбрали одновременно внешний филамент и филамент из AMS в одном экструдере. Вам нужно будет вручную менять внешний филамент."
+msgstr "Для одного экструдера одновременно выбраны внешняя катушка и катушка из AMS. Потребуется ручная смена прутка."
msgid "Successfully synchronized nozzle information."
msgstr "Информация о сопле успешно синхронизирована."
@@ -11629,9 +11519,8 @@ msgstr "Информация о сопле успешно синхронизир
msgid "Successfully synchronized nozzle and AMS number information."
msgstr "Информация о сопле и количестве AMS успешно синхронизирована."
-# AI Translated
msgid "Do you want to continue to sync filaments?"
-msgstr "Хотите продолжить синхронизацию материалов?"
+msgstr "Продолжить синхронизацию материалов?"
msgid "Successfully synchronized filament color from printer."
msgstr "Цвет материала успешно синхронизирован с принтером."
@@ -11657,7 +11546,7 @@ msgstr ""
#, boost-format
msgid "For constant flow rate, hold %1% while dragging."
-msgstr "Для постоянного объёмного расхода удерживайте нажатой клавишу %1% при перетаскивании."
+msgstr "Для выравнивания значений расхода удерживайте клавишу %1% при перетаскивании."
msgid "ms"
msgstr "мс"
@@ -11710,7 +11599,7 @@ msgid "BambuSource has not correctly been registered for media playing! Press Ye
msgstr "Компонент BambuSource неправильно зарегистрирован для воспроизведения медиафайлов! Нажмите «Да», чтобы повторно зарегистрировать его"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
-msgstr "Отсутствует компонент BambuSource для воспроизведения медиа! Пожалуйста, переустановите OrcaSlicer или обратитесь за помощью к сообществу."
+msgstr "Отсутствует компонент BambuSource для воспроизведения медиа. Переустановите OrcaSlicer или обратитесь за помощью к сообществу."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "При использовании компонентов BambuSource из другого инсталлятора, воспроизведение видео может работать некорректно! Нажмите «Да», чтобы исправить это."
@@ -11718,7 +11607,6 @@ 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)."
-# AI Translated
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "Облачный агент недоступен. Перезапустите OrcaSlicer и повторите попытку."
@@ -11734,9 +11622,8 @@ msgstr "Войти"
msgid "Login failed. Please try again."
msgstr "Ошибка входа. Попробуйте ещё раз."
-# AI Translated
msgid "parse json failed"
-msgstr "не удалось разобрать JSON"
+msgstr "не удалось обработать JSON"
msgid "[Action Required] "
msgstr "[Требуется действие] "
@@ -11928,12 +11815,10 @@ msgctxt "Keyboard Shortcut"
msgid "Space"
msgstr "Пробел"
-# AI Translated
msgid "Open actions speed dial"
-msgstr "Открыть панель быстрых действий"
+msgstr "Открыть строку быстрых действий"
# Plater – это название библиотеки. Используется в меню горячих клавиш в качестве заголовка сочетаний клавиш, которые работают внутри пространства Plater. Как минимум на Windows не отображается.
-# AI Translated
msgid "Plater"
msgstr "Рабочая область"
@@ -12012,17 +11897,15 @@ msgstr "Информация об изменениях в версии %s:"
msgid "Network plug-in update"
msgstr "Обновление сетевого плагина"
-# AI Translated
msgid "Click OK to update the Network plug-in now. If a file is in use, the update will be applied the next time Orca Slicer launches."
-msgstr "Нажмите OK, чтобы обновить сетевой плагин сейчас. Если файл используется, обновление будет применено при следующем запуске Orca Slicer."
+msgstr "Нажмите OK для обновления сетевого плагина. Если файл занят, обновление будет завершено при следующем запуске Orca Slicer."
-# AI Translated
msgid "A new Network plug-in is available. Do you want to install it?"
-msgstr "Доступен новый сетевой плагин. Хотите установить его?"
+msgstr "Доступна новая версия сетевого плагина. Выполнить установку?"
#, c-format, boost-format
msgid "A new Network plug-in (%s) is available. Do you want to install it?"
-msgstr "Доступен новый сетевой плагин (%s). Хотите установить?"
+msgstr "Доступна новая версия сетевого плагина: %s. Выполнить установку?"
msgid "New version of Orca Slicer"
msgstr "Доступна новая версия Orca Slicer"
@@ -12077,9 +11960,8 @@ msgstr "Имя принтера"
msgid "Where to find your printer's IP and Access Code?"
msgstr "Где найти IP-адрес и код доступа к вашему принтеру?"
-# AI Translated
msgid "How to trouble shooting"
-msgstr "Как устранить неполадки"
+msgstr "Помощь в устранении неполадок"
msgid "Connect"
msgstr "Подключить"
@@ -12140,13 +12022,13 @@ msgid "Laser 40W"
msgstr "40 Вт лазер"
msgid "Cutting Module"
-msgstr "Модуль обрезки"
+msgstr "Модуль резки"
# система пожаротушения?
msgid "Auto Fire Extinguishing System"
msgstr "Автоматическая система пожаротушения"
-# AI Translated
+# По сути, локализовывается как "Переключатель AMS". Но сами бамбуки используют кривой машинный перевод в русскоязычной документации, и там переводится от случая к случаю. Поэтому имеет полный смысл оставить брендированное название.
msgid "Filament Track Switch"
msgstr "Filament Track Switch"
@@ -12168,7 +12050,6 @@ msgstr "Сбой обновления"
msgid "Update successful"
msgstr "Обновление успешно завершено"
-# AI Translated
msgid "Hotends on Rack"
msgstr "Хотэнды на стойке"
@@ -12266,9 +12147,8 @@ msgstr ""
"Input Shaping поддерживается только в Marlin 2.1.2 и новее.\n"
"Обновите прошивку и установите тип G-кода на «Marlin 2»."
-# AI Translated
msgid "Input shaping is only supported by Klipper, RepRapFirmware and Marlin 2."
-msgstr "Input shaping поддерживается только Klipper, RepRapFirmware и Marlin 2."
+msgstr "Input shaping поддерживается только в Klipper, RepRapFirmware и Marlin 2."
msgid "Grouping error: "
msgstr "Ошибка группировки: "
@@ -12277,9 +12157,8 @@ msgstr "Ошибка группировки: "
msgid " can not be placed in the "
msgstr " нельзя заправить в "
-# AI Translated
msgid "Group error in manual mode. Please check nozzle count or regroup."
-msgstr "Ошибка группировки в ручном режиме. Проверьте количество сопел или перегруппируйте."
+msgstr "Ошибка группировки в ручном режиме. Проверьте количество сопел или измените группировку."
msgid "Internal Bridge"
msgstr "Внутренний мост"
@@ -12407,6 +12286,10 @@ msgstr " находится слишком близко к области иск
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " находится слишком близко к зоне обнаружения налипаний, столкновения неизбежны.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " частично находится за пределами области печати и не может быть напечатан.\n"
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "Обнаружен недопустимый перепад температур. Каждый из используемых материалов должен иметь в профиле температуру печати в пределах допустимого диапазона других материалов. В противном случае сопло может забиться и повредить принтер."
@@ -12427,10 +12310,10 @@ msgid "Clumping detection is not supported when \"by object\" sequence is enable
msgstr "Обнаружение налипаний не поддерживается при печати моделей по очереди."
msgid "Enabling both precise Z height and the prime tower may cause slicing errors."
-msgstr "Одновременное включение точной высоты Z и башни очистки может вызвать ошибки нарезки."
+msgstr "Совместное использование точной высоты Z и черновой башни может вызвать ошибки нарезки."
msgid "A prime tower is required for clumping detection; otherwise, there may be flaws on the model."
-msgstr "Для обнаружения налипаний требуется башня очистки; в противном случае на модели могут быть дефекты."
+msgstr "Для обнаружения налипаний требуется черновая башня; в противном случае на модели могут возникнуть дефекты."
msgid "Please select \"By object\" print sequence to print multiple objects in spiral vase mode."
msgstr "Выберите последовательность печати «По очереди» для поддержки печати несколько моделей в режиме вазы."
@@ -12529,10 +12412,10 @@ msgid "Organic support branch diameter must not be smaller than support tree tip
msgstr "Диаметр ветвей органической поддержки не может быть меньше диаметра их кончиков."
msgid "The Hollow base pattern is not supported by this support type; Rectilinear will be used instead."
-msgstr "Шаблон полого основания не поддерживается этим типом поддержки; вместо него будет использоваться прямолинейный."
+msgstr "Шаблон «Полость» не поддерживается этим типом поддержек и будет заменён на «Зигзаг»."
msgid "Support enforcers are used but support is not enabled. Please enable support."
-msgstr "Используется принудительная поддержка, но её генерация не включена. Пожалуйста, включите генерацию поддержки в настройках слайсера."
+msgstr "Используется принудительная поддержка, но её генерация не включена. Включите генерацию поддержек в настройках слайсера."
msgid "Layer height cannot exceed nozzle diameter."
msgstr "Высота слоя не может быть больше диаметра сопла."
@@ -12540,24 +12423,21 @@ msgstr "Высота слоя не может быть больше диамет
msgid "Bridge line width must not exceed nozzle diameter"
msgstr "Ширина линии моста не может превышать диаметр сопла"
-# AI Translated
msgid "\"G92 E0\" was found in before_layer_change_gcode, but the G or E are not uppercase. Please change them to the exact uppercase \"G92 E0\"."
-msgstr "«G92 E0» обнаружено в before_layer_change_gcode, но G или E не в верхнем регистре. Измените их на точное «G92 E0» в верхнем регистре."
+msgstr "В G-коде перед сменой слоя обнаружена команда «G92 E0» с неправильным регистром. Измените регистр «G92 E0» на заглавные буквы."
-# AI Translated
msgid "\"G92 E0\" was found in layer_change_gcode, but the G or E are not uppercase. Please change them to the exact uppercase \"G92 E0\"."
-msgstr "«G92 E0» обнаружено в layer_change_gcode, но G или E не в верхнем регистре. Измените их на точное «G92 E0» в верхнем регистре."
+msgstr "В G-коде после смены слоя обнаружена команда «G92 E0» с неправильным регистром. Измените регистр «G92 E0» на заглавные буквы."
msgid "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 "При относительной адресации экструдера его положение необходимо корректировать на каждом слое, чтобы предотвратить потерю точности с плавающей запятой. Добавьте \"G92 E0\" в G-код выполняемый при смене слоя (layer_gcode)."
-# AI Translated
+# на самом деле, вполне совместима и часто используется в самих прошивках при сбросе координат
msgid "\"G92 E0\" was found in before_layer_change_gcode, which is incompatible with absolute extruder addressing."
-msgstr "«G92 E0» обнаружено в before_layer_change_gcode, что несовместимо с абсолютной адресацией экструдера."
+msgstr "В G-коде перед сменой слоя обнаружена команда «G92 E0», которая несовместима с абсолютными координатами экструдера."
-# AI Translated
msgid "\"G92 E0\" was found in layer_change_gcode, which is incompatible with absolute extruder addressing."
-msgstr "«G92 E0» обнаружено в layer_change_gcode, что несовместимо с абсолютной адресацией экструдера."
+msgstr "В G-коде после смены слоя обнаружена команда «G92 E0», которая несовместима с абсолютными координатами экструдера."
#, c-format, boost-format
msgid "Plate %d: %s does not support filament %s"
@@ -12614,15 +12494,14 @@ msgstr "Компенсация усадки материала не будет
msgid "Generating skirt & brim"
msgstr "Генерация юбки и каймы"
-# AI Translated
msgid ""
"Per-object skirts cannot fit between the objects in By object print sequence.\n"
"\n"
"Move the objects farther apart, reduce brim/skirt size, switch Skirt type to Combined, or switch Print sequence to By layer."
msgstr ""
-"Пообъектные юбки не помещаются между моделями при последовательности печати «По объектам».\n"
+"Независимые юбки не помещаются между моделями при печати моделей по очереди.\n"
"\n"
-"Раздвиньте модели дальше друг от друга, уменьшите размер каймы/юбки, переключите тип юбки на «Комбинированная» или измените последовательность печати на «По слоям»."
+"Попробуйте увеличить отступ между моделями, уменьшить размер юбки/каймы, использовать совместный тип юбки или печатать модели послойно."
msgid "Exporting G-code"
msgstr "Экспорт в G-код"
@@ -12642,29 +12521,23 @@ msgstr "Область печати"
msgid "Extruder printable area"
msgstr "Область печати экструдера"
-# AI Translated
msgid "Support parallel printheads"
-msgstr "Поддержка параллельных печатающих головок"
+msgstr "Поддержка параллельных печатающих голов"
-# AI Translated
msgid "Enable printer settings for machines that can use multiple printheads in parallel."
-msgstr "Включает настройки принтера для машин, способных использовать несколько печатающих головок параллельно."
+msgstr "Отобразить настройки для принтеров, способных параллельно использовать несколько зависимых печатающих голов."
-# AI Translated
msgid "Parallel printheads count"
-msgstr "Количество параллельных печатающих головок"
+msgstr "Количество зависимых голов"
-# AI Translated
msgid "Set the number of parallel printheads for machines like OrangeStorm Giga printer."
-msgstr "Задаёт количество параллельных печатающих головок для машин вроде принтера OrangeStorm Giga."
+msgstr "Задаёт количество зависимых печатающих голов для принтеров вроде OrangeStorm Giga."
-# AI Translated
msgid "Parallel printheads bed exclude areas"
-msgstr "Исключаемые зоны стола для параллельных печатающих головок"
+msgstr "Области исключения для зависимых голов"
-# AI Translated
msgid "Ordered list of bed exclude areas by parallel printhead count. Item 1 applies to one printhead, item 2 to two printheads, and so on. Leave an item empty for no excluded area."
-msgstr "Упорядоченный список исключаемых зон стола по количеству параллельных печатающих голов. Поле 1 применяется к одной голове, поле 2 — к двум, и так далее. Оставьте поле пустым, если исключаемые зоны отсутствуют."
+msgstr "Список исключаемых областей стола, упорядоченный по количеству зависимых голов. 1 – область для одной головы, 2 — область для двух, и т.д. Оставьте пустым, если исключаемые области отсутствуют."
msgid "Excluded bed area"
msgstr "Область исключения"
@@ -12685,23 +12558,21 @@ msgid "This shrinks the first layer on the build plate to compensate for elephan
msgstr "Сужает контур первого слоя на заданное значение для компенсации дефекта слоновьей ноги."
msgid "Elephant foot compensation layers"
-msgstr "Компенсирующих слоёв «слоновьей ноги»"
+msgstr "Слои компенсации"
msgid "The number of layers on which the elephant foot compensation will be active. The first layer will be shrunk by the elephant foot compensation value, then the next layers will be linearly shrunk less, up to the layer indicated by this value."
-msgstr "Количество слоёв, на которые будет распространяться компенсация слоновьей ноги. Первый слой будет уменьшен на величину компенсации слоновьей ноги с последующим линейным уменьшением до слоя, указанного здесь."
+msgstr "Количество слоёв для компенсации избытка материала. Сужение контура первого слоя управляется настройкой выше, последующие слои линейно расширяются до нормального размера."
msgid "Elephant foot layers density"
-msgstr "Плотность слоёв компенсации"
+msgstr "Плотность слоя компенсации"
-# AI Translated
msgid ""
"Density of internal solid infill for Elephant foot layers compensation.\n"
"The initial value for the second layer is set.\n"
"Subsequent layers become linearly denser by the height specified in elefant_foot_compensation_layers."
msgstr ""
-"Плотность внутреннего сплошного заполнения для компенсации слоёв «слоновьей ноги».\n"
-"Задаётся начальное значение для второго слоя.\n"
-"Последующие слои линейно уплотняются на высоту, заданную в elefant_foot_compensation_layers."
+"Начальное значение плотности сплошного заполнения для компенсации дефекта «слоновьей ноги».\n"
+"Позволяет компенсировать избыток материала за счёт снижения плотности первых слоёв с постепенным её восстановлением к слою, указанному выше."
msgid "This is the height for each layer. Smaller layer heights give greater accuracy but longer printing time."
msgstr "Высота каждого слоя. Чем меньше, тем выше качество поверхности и затраты времени (и наоборот)."
@@ -12735,14 +12606,11 @@ msgid "Allow controlling BambuLab's printer through 3rd party print hosts."
msgstr "Позволяет управлять принтером BambuLab через сторонние хосты печати."
msgid "Use 3MF instead of G-code"
-msgstr "Сжимать G-код перед отправкой"
+msgstr "Сжатие G-кода перед отправкой"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Рекомендуется для принтеров, поддерживающих печать из архивов 3MF. Файлы печати будут отправляться с расширением \".gcode.3mf\"."
-msgid "Printer Agent"
-msgstr "Сетевой агент"
-
msgid "Select the network agent implementation for printer communication."
msgstr "Реализация сетевого агента для обмена информацией с принтером."
@@ -12803,9 +12671,8 @@ msgstr "API-ключ"
msgid "HTTP digest"
msgstr "HTTP digest-авторизация"
-# AI Translated
msgid "Configuration for the plugin capabilities this preset uses, overriding the global Capabilities configuration. Stored as a raw JSON array and edited through the dialog behind the button, never typed in directly."
-msgstr "Конфигурация возможностей плагинов, используемых этим профилем, переопределяющая глобальную конфигурацию возможностей. Хранится как необработанный массив JSON и редактируется через диалоговое окно за кнопкой, а не вводится напрямую."
+msgstr "Настройки функционала плагинов, используемого этим профилем. Переопределяет глобальные настройки функционала. Хранится как необработанный массив JSON и редактируется через диалоговое окно по кнопке."
# Логическая ошибка; пересекаются не периметры, а траектория холостого
# перемещения со стенкой модели
@@ -13255,7 +13122,7 @@ msgstr ""
"Фактический поток для поддержек рассчитывается путём умножения этого значения на поток материала и общий поток модели (если он задан)."
msgid "Support interface flow ratio"
-msgstr "Интерфейс поддержек"
+msgstr "Связующие слои"
msgid ""
"This factor affects the amount of material for the support interface.\n"
@@ -13302,6 +13169,7 @@ msgstr "Дополнительные периметры на нависания
msgid "Create additional perimeter paths over steep overhangs and areas where bridges cannot be anchored."
msgstr ""
"Создание дополнительных периметров над крутыми нависаниями и участками, где невозможно закрепить мосты.\n"
+"\n"
"Внимание: включение этой настройки может повлиять на корректность генерации мостов!"
# ??? Реверс на чётных слоях нависаний
@@ -13384,7 +13252,7 @@ msgstr "Включение динамического управления ск
msgid "Slow down for curled perimeters"
msgstr "Замедляться на изогнутых периметрах"
-# AI Translated
+# Обновил, отформатировал и провёл семантическую оптимизацию
#, no-c-format, no-boost-format
msgid ""
"Enable this option to slow down printing in areas where perimeters may have curled upwards.\n"
@@ -13402,20 +13270,20 @@ msgid ""
"Note: When this option is enabled, overhang perimeters are treated like overhangs, meaning the overhang speed is applied even if the overhanging perimeter is part of a bridge.\n"
"For example, when the perimeters are 100% overhanging, with no wall supporting them from underneath, the 100% overhang speed will be applied."
msgstr ""
-"Включите эту опцию, чтобы замедлять печать в областях, где периметры могли загнуться вверх.\n"
-"Например, дополнительное замедление будет применяться при печати нависаний на острых углах, таких как нос корпуса Benchy, уменьшая загибание, которое накапливается на нескольких слоях.\n"
+"Позволяет автоматически замедлять печать в областях, где выступающие периметры могут деформироваться из-за усадки.\n"
+"Например, форштевень Benchy, который сильнее подвержен накоплению усадочной деформации.\n"
"\n"
-"Обычно рекомендуется держать эту опцию включённой, если только охлаждение вашего принтера не достаточно мощное или скорость печати не достаточно низкая, чтобы загибание периметров не происходило. \n"
-"При печати с высокой скоростью внешнего периметра этот параметр может вносить артефакты на стенках при замедлении из-за потенциально большого разброса скоростей печати, из-за которого экструдер не успевает за требуемым изменением потока.\n"
-"Коренная причина этих артефактов, скорее всего, — слегка неточная настройка PA, особенно в сочетании с большим временем сглаживания PA.\n"
+"Рекомендуется использовать в случаях, если скоростной режим, конструкция принтера или его система охлаждения не способны обеспечить качественного сопротивления усадке материала.\n"
"\n"
-"Рекомендации при включении этой опции:\n"
-"1. Уменьшите время сглаживания Pressure Advance до 0,015 - 0,02, чтобы экструдер быстро реагировал на изменения скорости.\n"
-"2. Увеличьте минимальные скорости печати, чтобы ограничить величину замедления и уменьшить разброс между быстрыми и медленными участками.\n"
-"3. Если артефакты всё ещё появляются, включите сглаживание скорости экструзии (ERS) для дальнейшего сглаживания переходов потока.\n"
+"Примечание: отключает скоростной режим мостов для нависающих периметров (передаёт его в управление настройкам нависаний ниже).\n"
"\n"
-"Примечание: когда эта опция включена, нависающие периметры рассматриваются как нависания, то есть скорость нависания применяется, даже если нависающий периметр является частью моста.\n"
-"Например, когда периметры нависают на 100%, без стенки, поддерживающей их снизу, будет применена скорость нависания 100%."
+"Внимание: требуется крайне точная настройка коррекции давления. В противном случае при быстрой печати стенок в местах перепада скоростей будут возникать заметные артефакты поверхности.\n"
+"\n"
+"Рекомендации по настройке:\n"
+"1. Уменьшите время сглаживания Pressure Advance до 0.015-0.02, чтобы\n"
+" повысить реактивность экструдера на изменения скорости.\n"
+"2. Повысьте ограничения скоростей нависаний.\n"
+"3. Если это не помогло, воспользуйтесь сглаживанием расхода."
msgid "mm/s or %"
msgstr "мм/с или %"
@@ -13433,9 +13301,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Скорость печати внутреннего моста. Можно указать процент от скорости внешнего моста (bridge_speed). По умолчанию – 150%."
-msgid "Brim width"
-msgstr "Ширина каймы"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Расстояние от модели до внешней линии каймы."
@@ -13517,6 +13382,14 @@ msgstr ""
"Геометрия модели будет упрощена перед обнаружением острых углов. Этот параметр задаёт минимальную длину отклонения для её упрощения.\n"
"Установите 0 для отключения."
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Ушки каймы только снаружи"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Создавать мышиные ушки только на внешнем контуре модели, исключая отверстия и замкнутые участки."
+
msgid "upward compatible machine"
msgstr "условия для совместимых принтеров"
@@ -13546,11 +13419,12 @@ msgstr "Послойно"
msgid "By object"
msgstr "По очереди"
-# ???Внутрислойный порядок печати
msgid "Intra-layer order"
msgstr "Очерёдность моделей"
-# AI Translated
+# До 2.5.0 было легко и просто, теперь взяли и кучу подкапотных алгоритмов на пользователя вывалили... Упростил, насколько это возможно без потери смысла, чтобы всем угодить. Контекст: в 2.5.0 настройку переработали, чтобы все алгоритмы создавали цикличный маршрут, при котором конечная точка была бы максимально близко к началу (предположительно, следующего слоя). Цикличный маршрут позволяет избежать перемещений над уже напечатанным на слое, что убирает необходимость в Z-hop для простых моделей. PR: https://github.com/OrcaSlicer/OrcaSlicer/pull/13578
+#
+# Примечания: Default использует алгоритм Greedy, 2-opt – алгоритм устранения самопересечений. Кратчайший путь проверяет всего 2 стратегии, остальные уже удалены как неэффективные и медленные.
msgid ""
"Order in which object instances are visited within a single layer, which controls how much travel is spent moving between them.\n"
"\n"
@@ -13561,23 +13435,26 @@ msgid ""
"\n"
"With multiple filaments or tools in the same layer, minimizing tool changes takes priority: objects are grouped by filament first and this setting only orders the instances within each filament group, so the overall sequence may not look like the shortest path across the plate."
msgstr ""
-"Порядок обхода экземпляров моделей в пределах одного слоя; определяет, сколько перемещений тратится на переходы между ними.\n"
+"Последовательность печати моделей в пределах одного слоя. Влияет на суммарное время перемещений от модели к модели.\n"
"\n"
-"По умолчанию: построение цепочки методом ближайшего соседа с последующим улучшением алгоритмом 2-opt и устранением пересечений. Хороший универсальный вариант.\n"
-"По списку: экземпляры печатаются в том же порядке, что и в списке моделей, без какой-либо оптимизации пути. Используйте, когда нужен предсказуемый, задаваемый вручную порядок.\n"
-"Лучший из всех (кратчайший путь): оцениваются все стратегии и применяется та, что даёт кратчайший путь. Порядок экземпляров моделей определяется один раз для всей печати, а порядок отдельных островков — для каждого слоя, поэтому на разных слоях могут использоваться разные стратегии. Нарезка идёт немного медленнее.\n"
-"Змейкой: змеевидный обход ряд за рядом с улучшением алгоритмом 2-opt. Хорошо подходит для регулярных сеток из множества мелких деталей.\n"
+"• По умолчанию: поиск ближайших моделей с оптимизацией пути\n"
+" и устранением пересечений. Быстрый универсальный вариант.\n"
+"• По списку: сохранять тот же порядок, что и в списке моделей, без\n"
+" какой-либо оптимизации. Полезно для ручной настройки очерёдности.\n"
+"• Кратчайший путь: выбор кратчайшего маршрута из всех стратегий.\n"
+" Маршрут может меняться от слоя к слою из-за изменения числа\n"
+" отдельных контуров. Требует больше времени.\n"
+"• Змейкой: зигзагообразный маршрут с оптимизацией. Хорошо\n"
+" подходит для массивов из множества мелких деталей.\n"
"\n"
-"Если в одном слое используется несколько материалов или инструментов, приоритет отдаётся минимизации смен инструмента: модели сначала группируются по материалу, и эта настройка упорядочивает только экземпляры внутри каждой группы, поэтому общая последовательность может не выглядеть как кратчайший путь по столу."
+"Примечание: при использовании нескольких материалов приоритет отдаётся минимизации числа их смен. Очерёдность определяется для каждого материала отдельно, и визуально маршрут может казаться неоптимальным."
msgid "As object list"
msgstr "По списку"
-# AI Translated
msgid "Best of all (shortest path)"
-msgstr "Лучший из всех (кратчайший путь)"
+msgstr "Кратчайший путь"
-# AI Translated
msgid "Snake"
msgstr "Змейкой"
@@ -13632,17 +13509,17 @@ msgstr ""
"Включение вытяжного вентилятора для лучшего охлаждения внутренней области принтера.\n"
"Команда G-кода: M106 P3 S(0-255)"
-# AI Translated
+# Сломано и не отображается, портировано для X2D
msgid "Enable this to override the fan speed set in custom G-code during print."
-msgstr "Включите, чтобы переопределить скорость вентилятора, заданную в пользовательском G-code во время печати."
+msgstr "Заменять процент скорости вентилятора во время печати, указанную через пользовательский G-код."
-# AI Translated
+# Сломано и не отображается, портировано для X2D
msgid "On completion"
msgstr "По завершении"
-# AI Translated
+# Сломано и не отображается, портировано для X2D
msgid "Enable this to override the fan speed set in custom G-code after print completion."
-msgstr "Включите, чтобы переопределить скорость вентилятора, заданную в пользовательском G-code после завершения печати."
+msgstr "Заменить процент скорости вентилятора после завершения печати, указанную через пользовательский G-код."
msgid "Speed of exhaust fan during printing. This speed will override the speed in filament custom G-code."
msgstr "Скорость вытяжного вентилятора во время печати. Эта скорость переопределяет скорость в пользовательском G-коде материала."
@@ -14134,7 +14011,7 @@ msgid "Extruder Color"
msgstr "Цвет экструдера"
msgid "Only used as a visual help on UI."
-msgstr "Используется только в качестве визуальной помощи в пользовательском интерфейсе."
+msgstr "Используется для визуализации в интерфейсе слайсера."
msgid "Extruder offset"
msgstr "Смещение координат экструдера"
@@ -14211,11 +14088,11 @@ msgstr ""
" • наиболее высокий расход при печати (обычно, заполнения).\n"
"Выбор тестируемых ускорений:\n"
" • наиболее низкое ускорение из настроек печати\n"
-" • наиболее высокое ускорение (не должно превышать\n"
-" рекомендуемый предел калибровщика Input Shaper в Klipper)\n"
+" • наиболее высокое ускорение (не должно превышать предел\n"
+" рекомендуемого шейпера в Klipper)\n"
"\n"
-"2. Выпишите коэффициенты PA по примеру выше для каждой пары расхода/ускорения. Удельный расход можно посмотреть в «Просмотре нарезки», выбрав режим отображения «Объёмный расход». Значение отображается над горизонтальной шкалой печати слоя. Особенности:\n"
-"• Как правило, значение PA должно снижаться с повышением расхода.\n"
+"2. Выпишите коэффициенты PA по примеру выше для каждой пары расхода/ускорения. Значения расхода можно посмотреть в «Просмотре нарезки», выбрав режим отображения «Объёмный расход». Значение отображается над горизонтальной шкалой печати слоя. Особенности:\n"
+"• Как правило, коэффициент должен снижаться с повышением расхода.\n"
" Если это не так, проверьте экструдер и корректность тестов.\n"
"• Диапазон PA растёт со снижением скоростей и ускорений.\n"
"• Если разницы между тестами не наблюдается, выбирайте PA из\n"
@@ -14226,7 +14103,6 @@ msgstr ""
msgid "Enable adaptive pressure advance within features (beta)"
msgstr "Адаптироваться к изменениям линии"
-# AI Translated
msgid ""
"Enable adaptive PA whenever there are flow changes in a feature, such as line width changes in a corner or overhangs.\n"
"\n"
@@ -14234,11 +14110,11 @@ msgid ""
"\n"
"This is an experimental option, as if the PA profile is not set accurately, it will cause uniformity issues."
msgstr ""
-"Включает адаптивный PA всякий раз, когда в элементе есть изменения потока, например изменение ширины линии на углу или нависаниях.\n"
+"Экспериментальный режим смены коэффициента РА прямо посреди печати линии для адаптации к изменениям расхода на ней (например, на нависаниях или периметрах переменной ширины).\n"
"\n"
-"Несовместимо с принтерами Prusa, так как они делают паузу для обработки изменений PA, что вызывает задержки и дефекты.\n"
+"Предупреждение: неточный подбор значений РА может привести к дефектам при работе этой настройки.\n"
"\n"
-"Это экспериментальная опция: если профиль PA задан неточно, это вызовет проблемы с однородностью."
+"Внимание: несовместимо с принтерами Prusa, поскольку им требуется остановка для изменения коэффициента РА."
msgid "Static pressure advance for bridges"
msgstr "Фиксированный PA на мостах"
@@ -14309,18 +14185,18 @@ msgid "Minimum HRC of nozzle required to print the filament. A value of 0 means
msgstr "Минимальная твёрдость материала сопла (HRC), необходимая для печати материалом. 0 – отключение проверки твёрдости сопел."
msgid "Filament map to extruder"
-msgstr "Назначение филамента на экструдер"
+msgstr "Назначение материала на экструдер"
msgid "Filament map to extruder."
-msgstr "Назначение филамента на экструдер."
+msgstr "Назначение материала на экструдер."
msgid "Auto For Flush"
msgstr "Авто для прочистки"
+# Не смог найти в интерфейсе
msgid "Auto For Match"
msgstr "Авто для сопоставления"
-# AI Translated
msgid "Nozzle Manual"
msgstr "Ручная настройка сопел"
@@ -14330,9 +14206,8 @@ msgstr "Температура прочистки"
msgid "Temperature when flushing filament. 0 indicates the upper bound of the recommended nozzle temperature range."
msgstr "Температура при прочистке. 0 – использовать максимально допустимую температуру."
-# AI Translated
msgid "Flush temperature used in fast purge mode."
-msgstr "Температура прочистки, используемая в режиме быстрой прочистки."
+msgstr "Температура в режиме быстрой прочистки."
msgid "Flush volumetric speed"
msgstr "Расход при прочистке"
@@ -14402,9 +14277,9 @@ msgid ""
"\n"
"Note: Experimental and incomplete feature imported from BBS. Functional for some profiles that already have the variable saved."
msgstr ""
-"При включении поток экструзии ограничивается меньшим из расчётного значения (вычисленного по ширине линии и высоте слоя) и заданного пользователем максимального потока. При отключении применяется только заданный пользователем максимальный поток.\n"
+"Регулирует значение максимального расхода при печати тонких и узких линий для достижения оптимальной линейной скорости. По сути, ограничивает расход материала в случаях, когда завышенная скорость движения сопла не позволяет материалу надёжно спекаться с предыдущим слоем.\n"
"\n"
-"Примечание: экспериментальная и неполная функция, перенесённая из BBS. Работает для некоторых профилей, в которых уже сохранена эта переменная."
+"Внимание: требует настройки модели расхода и пока работает только у преднастроенных производителем профилей материалов."
msgid "Max volumetric speed multinomial coefficients"
msgstr "Коэффициенты расчёта максимального расхода"
@@ -14496,28 +14371,33 @@ msgstr "Мин. объём прочистки на черновой башне"
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."
msgstr "После смены инструмента, точное положение вновь загруженного прутка внутри него может быть неизвестно, и давление прутка, вероятно, ещё не стабильно. Перед тем, как очистить печатающую головку в заполнение или в «жертвенную» модель Orca Slicer всегда будет выдавливать это количество материала на черновую башню, чтобы обеспечить надёжную печать заполнения или «жертвенной» модели."
-# AI Translated
+# Не реализовано
msgid "Wipe tower cooling"
-msgstr "Охлаждение черновой башни"
+msgstr "Охлаждение на черновой башне"
-# AI Translated
msgid "Temperature drop before entering filament tower"
-msgstr "Снижение температуры перед входом в башню материала"
+msgstr "Снижение температуры перед входом в башню"
msgid "Interface layer pre-extrusion distance"
-msgstr "Расстояние предэкструзии слоя интерфейса"
+msgstr "Дистанция избыточной подачи при смене"
msgid "Pre-extrusion distance for prime tower interface layer (where different materials meet)."
-msgstr "Расстояние предэкструзии слоя интерфейса башни очистки (где соприкасаются разные материалы)."
+msgstr ""
+"Протяжённость первичного движения прочистки после смены материала. Позволяет быстро набрать давление в сопле и сбросить перегретый материал.\n"
+"\n"
+"Примечание: фактическая длина может быть ограничена шириной башни."
msgid "Interface layer pre-extrusion length"
-msgstr "Длина предэкструзии слоя интерфейса"
+msgstr "Длина прутка для избыточной подачи"
msgid "Pre-extrusion length for prime tower interface layer (where different materials meet)."
-msgstr "Длина предэкструзии слоя интерфейса башни очистки (где соприкасаются разные материалы)."
+msgstr ""
+"Длина прутка, которую необходимо продавить на этапе избыточной подачи.\n"
+"\n"
+"0 – отключить этот этап."
msgid "Tower ironing area"
-msgstr "Разглаживание черновой башни"
+msgstr "Разглаживание кончиков"
# У H2D не требует, на Вики при этом написано, что требует... В баганном порте
# "улучшений" башни вообще не работает ни при каких обстоятельствах.
@@ -14530,15 +14410,18 @@ msgstr ""
msgid "mm²"
msgstr "мм²"
+# Сломано и ни на что не влияет, даже на H2D и даже в Bambu Studio.
msgid "Interface layer purge length"
msgstr "Прочистка на слое интерфейса"
+# Из ченжлогов Bambu: Studio will do nozzle wiping before flushing rather than after flushing, and print the prime tower directly, reducing extrusion volume fluctuations and improving layer height consistency. Added a new parameter for interface-layer flushing length.
msgid "Purge length for prime tower interface layer (where different materials meet)."
-msgstr "Длина прочистки на слое интерфейса башни (где соприкасаются разные материалы)."
+msgstr "В настоящее время ничего не делает. Задумывалось как настройка расстояния внешней очистки сопла перед основной процедурой его прочистки."
msgid "Interface layer print temperature"
msgstr "Температура при прочистке"
+# Не используется, настройка сломана. Перевёл на случай, если починят в будущем.
msgid "Print temperature for prime tower interface layer (where different materials meet). If set to -1, use max recommended nozzle temperature."
msgstr ""
"Целевая температура при печати слоёв прочистки в черновой башне (место контакта разных материалов).\n"
@@ -14613,11 +14496,9 @@ msgstr "Пригодный для печати"
msgid "The filament is printable in extruder."
msgstr "Материалом можно печатать через экструдер."
-# AI Translated
msgid "Filament-extruder compatibility"
msgstr "Совместимость материала и экструдера"
-# AI Translated
msgid "A single 32-bit int encoding the compatibility level of a filament across all extruders (up to 10). Every 3 bits represent one extruder (bits [3*i, 3*i+2] for extruder i). 0: printable, 1: error, 2: critical warning, 3: warning, 4-7: reserved."
msgstr "Одно 32-битное целое число, кодирующее уровень совместимости материала со всеми экструдерами (до 10). Каждые 3 бита представляют один экструдер (биты [3*i, 3*i+2] для экструдера i). 0: пригоден для печати, 1: ошибка, 2: критическое предупреждение, 3: предупреждение, 4-7: зарезервировано."
@@ -14825,6 +14706,14 @@ msgstr "ТПМП Фишера-Коха S"
msgid "Gyroid"
msgstr "Гироид"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Коэффициент сглаживания заполнения"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Определяет, насколько сильно скругляются углы заполнения. 0% сохраняет исходную траекторию с острыми углами, а 100% создаёт максимально возможные скругления между соседними линиями заполнения."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Ускорение на верхней поверхности. Использование меньшего значения может улучшить качество верхней поверхности."
@@ -14863,36 +14752,35 @@ msgstr ""
"Внимание: параметр является устаревшим и в новых версиях Klipper был переименован в \"minimum_cruise_ratio\"."
msgid "Default jerk."
-msgstr "Рывок по умолчанию."
+msgstr "Рывки по умолчанию."
msgid "Marlin Firmware Junction Deviation (replaces the traditional XY Jerk setting)."
msgstr "Junction Deviation для прошивки Marlin (заменяет традиционную настройку рывка XY)."
msgid "Jerk of outer walls."
-msgstr "Рывок для внешних периметров."
+msgstr "Рывки на внешних периметрах."
msgid "Jerk of inner walls."
-msgstr "Рывок для внутренних периметров."
+msgstr "Рывки на внутренних периметрах."
msgid "Jerk for top surface."
-msgstr "Рывок для верхней поверхности."
+msgstr "Рывки на верхней поверхности."
msgid "Jerk for infill."
-msgstr "Рывок для заполнения."
+msgstr "Рывки на заполнении."
msgid "Jerk for the first layer."
-msgstr "Рывок для первого слоя."
+msgstr "Рывки на первом слое."
msgid "Jerk for travel."
-msgstr "Рывок при перемещении."
+msgstr "Рывки при перемещениях."
-# AI Translated
msgid ""
"Travel jerk of first layer.\n"
"The percentage value is relative to Travel Jerk."
msgstr ""
-"Рывок перемещения первого слоя.\n"
-"Процентное значение задаётся относительно рывка перемещения."
+"Рывки при перемещениях на первом слое.\n"
+"Можно указать процент от рывков при обычных перемещениях."
msgid "Line width of the first layer. If expressed as a %, it will be computed over the nozzle diameter."
msgstr "Ширина линий первого слоя. Можно указать процент от диаметра сопла."
@@ -15015,7 +14903,7 @@ msgid "Ironing line spacing"
msgstr "Интервал линий"
msgid "Filament-specific override for ironing line spacing. This allows you to customize the spacing between ironing lines for each filament type."
-msgstr "Индивидуальная настройка расстояния между линиями разглаживания для каждого типа филамента."
+msgstr "Замещение интервала между линиями разглаживания. Позволяет настроить интервал отдельно для каждого материала."
# "Разглаживание" явно задано в заголовке раздела
msgid "Ironing inset"
@@ -15115,7 +15003,7 @@ msgid ""
msgstr ""
"Тип шума, используемый для генерации нечёткой оболочки.\n"
"\n"
-"• Случайный: равномерно резкий шум.\n"
+"• Классический: равномерно резкий шум.\n"
"• Шум Перлина: согласованный однородный шум.\n"
"• Волновой: более резкий вариант шума Перлина.\n"
"• Ребристый: резкий сглаженный шум с мраморной текстурой.\n"
@@ -15124,9 +15012,9 @@ msgstr ""
"\n"
"Примечание: для разных алгоритмов оптимальны разные масштабы."
-# Поменял на "случайный" из-за нехватки места.
+# Поменял на "случайный" из-за нехватки места. UPD: Вернул из-за конфликта с генератором периметров
msgid "Classic"
-msgstr "Случайный"
+msgstr "Классический"
msgid "Perlin"
msgstr "Шум Перлина"
@@ -15312,31 +15200,28 @@ msgstr "Наилучшее расположение модели при авто
msgid "Enable this option if machine has auxiliary part cooling fan. G-code command: M106 P2 S(0-255)."
msgstr ""
-"Если в принтере имеется вспомогательный вентилятор для охлаждения моделей (обычно это боковой вентилятор), можете включить эту опцию.\n"
+"Включить управление вспомогательным вентилятором из настроек материала.\n"
"Команда G-кода: M106 P2 S(0-255)."
-# AI Translated
msgid "Fan direction"
msgstr "Направление вентилятора"
-# AI Translated
msgid "Cooling fan direction of the printer"
-msgstr "Направление вентилятора охлаждения принтера"
+msgstr "Направление потока охлаждения вспомогательного вентилятора"
-# AI Translated
msgid "Both"
-msgstr "Оба"
+msgstr "Обе стороны"
+# "only custom start G-code" в Орке не существует. Вероятно, забыли стереть при портировании из SuperSlicer.
msgid ""
"Start the fan this number of seconds earlier than its target start time (you can use fractional seconds). It assumes infinite acceleration for this time estimation, and will only take into account G1 and G0 moves (arc fitting is unsupported).\n"
"It won't move fan commands from custom G-code (they act as a sort of 'barrier').\n"
"It won't move fan commands into the start G-code if the 'only custom start G-code' is activated.\n"
"Use 0 to deactivate."
msgstr ""
-"Запуск вентилятора на указанное количество секунд раньше целевого времени запуска (поддерживаются доли секунды). При этом предполагается бесконечное ускорение для оценки этого времени, и учёт только перемещений G1 и G0 (Аппроксимация дугами).\n"
-"Это не приведёт к сдвигу команд вентилятора из пользовательских G-кодов (они действуют как своего рода барьер).\n"
-"Это не приведёт к сдвигу команд вентилятора в стартовом G-коде, если активировано «только пользовательский стартовый G-код».\n"
-"Установите 0 для отключения."
+"Сместить управление вентилятором на заданное время для его запуска заранее. Можно указать дробное количество секунд.\n"
+"\n"
+"Примечание: расчёт смещения не учитывает ускорения, команды движения по дуге (аппроксимацию дугами) и пользовательский G-код."
msgid "Only overhangs"
msgstr "Только на нависаниях"
@@ -15352,7 +15237,8 @@ msgid ""
"This is useful for fans where a low PWM/power may be insufficient to get the fan started spinning from a stop, or to get the fan up to speed faster.\n"
"Set to 0 to deactivate."
msgstr ""
-"Время принудительного запуска (kick-start) вентилятора на максимальной скорости, после чего скорость снижается до целевой. Это необходимо для вентиляторов у которых низкое значение уровня ШИМ/мощности может быть недостаточен для запуска вентилятора после остановки или для более быстрого увеличения скорости его вращения.\n"
+"Время принудительного запуска на максимальных оборотах перед выходом на заданный процент скорости. Полезно для повышения отзывчивости вентиляторов с инертным ротором (а также в случаях, когда для его страгивания требуется дополнительное усилие).\n"
+"\n"
"Установите 0 для отключения."
msgid "Minimum non-zero part cooling fan speed"
@@ -15396,16 +15282,15 @@ msgid ""
"Enable this if printer support air filtration\n"
"G-code command: M106 P3 S(0-255)"
msgstr ""
-"Если в принтере имеется вытяжной вентилятор и вам требуется дополнительное охлаждение внутренней области принтера, включите эту опцию.\n"
+"Включить управление вытяжным вентилятором из настроек материала.\n"
"Команда G-кода: M106 P3 S(0-255)"
-# AI Translated
+# Из ченжлогов Bambu: Added a filtering option with cooling mode for the adaptive air circulation system. This option can be enabled via the slicer or the printer UI, and it's mainly used to filter the air when exhausting the air for low-temperature filaments
msgid "Use cooling filter"
-msgstr "Использовать фильтр охлаждения"
+msgstr "Охлаждать через фильтр"
-# AI Translated
msgid "Enable this if printer support cooling filter"
-msgstr "Включите, если принтер поддерживает фильтр охлаждения"
+msgstr "Включить управление вытяжным вентилятором."
msgid "G-code flavor"
msgstr "Тип G-кода"
@@ -15416,6 +15301,14 @@ msgstr "Выбор типа G-кода для совместимости с пр
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "Пропустить блок конфигурации в G-code"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "Не записывать CONFIG_BLOCK (пары ключ/значение с настройками слайсера) в файл G-code. Это может помочь с принтерами, прошивка которых аварийно завершается при разборе этих строк комментариев (например, Anycubic go-klipper). Примечание: файл G-code больше не будет содержать настройки слайсера, поэтому при обратном импорте в OrcaSlicer конфигурация не восстановится."
+
msgid "Pellet Modded Printer"
msgstr "Гранульная модификация принтера"
@@ -15586,33 +15479,28 @@ msgstr "Угол нависания заполнения"
msgid "The angle of the infill angled lines. 60° will result in a pure honeycomb."
msgstr "Угол нависания линий заполнения. При 60° получаются правильные соты."
-# AI Translated
msgid "Lightning overhang angle"
-msgstr "Угол нависания для «Молнии»"
+msgstr "Наклон поверхности для поддержки молнией"
-# AI Translated
msgid "Maximum overhang angle for Lightning infill support propagation."
-msgstr "Максимальный угол нависания для распространения поддержки заполнения «Молния»."
+msgstr "Максимальный угол наклона внутренних поверхностей для их поддержки отдельными ветвями молнии."
-# AI Translated
msgid "Prune angle"
-msgstr "Угол обрезки"
+msgstr "Наклон опор"
-# AI Translated
+# Оооочень технично. Самая главная проблема в понимании – шаблон генерируется "сверху вниз" (а не наоборот, как можно бы подумать), из-за чего и возникает вся эта техничность в содержании подсказок. На Вики чуть понятнее, но всё равно чрезвычайно технично. Убрал описание тонкостей фильтрации алгоритма и заменил на то, что по сути делает настройка.
msgid ""
"Controls how aggressively short or unsupported Lightning branches are pruned.\n"
"This angle is converted internally to a per-layer distance."
-msgstr ""
-"Определяет, насколько агрессивно обрезаются короткие или неподдерживаемые ветви «Молнии».\n"
-"Внутренне этот угол преобразуется в расстояние на слой."
+msgstr "Допустимый наклон опор молнии. Чем выше, тем быстрее и экономичнее распространяются её ветви."
-# AI Translated
+# "Выпрямление" здесь, вопреки первой мысли – это как раз-таки наоборот искажение шаблона по ходу печати для сокращения количества ветвей. Короче, опять путаница из-за того, что генерация ветвей происходит сверху вниз. При печати снизу вверх шаблон именно что искажается.
msgid "Straightening angle"
-msgstr "Угол выпрямления"
+msgstr "Наклон локальных искажений"
-# AI Translated
+# При минимальном значении сразу понятно, что делает. Может стоит это указать, чтобы людям было проще осваивать настройку.
msgid "Maximum straightening angle used to simplify Lightning branches."
-msgstr "Максимальный угол выпрямления, используемый для упрощения ветвей «Молнии»."
+msgstr "Дополнительные искажения позволяют эффективнее объединять опоры для ветвей. Чем больше наклон, тем сильнее может искажаться контур молнии."
msgid "Sparse infill anchor length"
msgstr "Длина привязок шаблона заполнения"
@@ -15983,37 +15871,30 @@ msgstr "Минимальная скорость холостых перемещ
msgid "Minimum travel speed (M205 T)"
msgstr "Минимальная скорость перемещения без печати (M205 T)"
-# AI Translated
msgid "Maximum force of the Y axis"
msgstr "Максимальное усилие оси Y"
-# AI Translated
+# По сути, перемножение массы на ускорение
msgid "The allowed maximum output force of Y axis"
-msgstr "Допустимое максимальное выходное усилие оси Y"
+msgstr "Максимально допустимое усилие по оси Y."
-# AI Translated
msgid "N"
msgstr "Н"
-# AI Translated
msgid "Bed mass of the Y axis"
-msgstr "Масса стола по оси Y"
+msgstr "Масса стола (оси Y)"
-# AI Translated
msgid "The machine bed mass load of Y axis"
-msgstr "Массовая нагрузка стола машины по оси Y"
+msgstr "Пассивная нагрузка механики оси Y массой стола."
-# AI Translated
msgid "g"
msgstr "г"
-# AI Translated
msgid "The allowed max printed mass"
-msgstr "Допустимая максимальная масса печати"
+msgstr "Максимально допустимая масса печати"
-# AI Translated
msgid "The allowed max printed mass on a plate"
-msgstr "Допустимая максимальная масса печати на столе"
+msgstr "Максимально допустимая масса деталей на столе."
msgid "Maximum acceleration for extruding"
msgstr "Максимальное ускорение при печати"
@@ -16171,8 +16052,9 @@ msgid "The highest printable layer height for the extruder. Used to limit the ma
msgstr "Максимальная высота слоя для печати этим экструдером. Используется в качестве ограничения при использовании адаптивной высоты слоя."
msgid "Extrusion rate smoothing"
-msgstr "Сглаживание подачи"
+msgstr "Сглаживание расхода"
+# Провёл семантическую оптимизацию, очень уж длинно расписано. Плюс убрал про PrusaSlicer, т.к. в локализациях одинаково. + пояснения про скорость/ширину, т.к. Орка теперь умеет напрямую раскрашивать расход без необходимости считать его ручками.
msgid ""
"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"
@@ -16188,16 +16070,15 @@ msgid ""
"\n"
"Note: this parameter disables arc fitting."
msgstr ""
-"Сглаживает резкие изменения скорости подачи материала, которые происходят при переходе от печати с большим расходом (высокая скорость/большая ширина линии) к печати с меньшим расходом (меньшая скорость/меньшая ширина) и наоборот.\n"
+"Сглаживает резкие изменения скорости подачи материала, которые происходят при переходе от печати с бóльшим расходом к печати с меньшим (и наоборот).\n"
+"\n"
+"По сути, ограничение производной от расхода: ограничивает скорость, с которой расход материала может меняться за единицу времени. Чем выше лимит, тем быстрее может меняться расход.\n"
"\n"
-"Параметр задаёт максимальную скорость, с которой расход материала может измениться за единицу времени. Чем выше лимит, тем быстрее может меняться расход материала. \n"
"Установите 0 для отключения.\n"
"\n"
-"Для скоростных принтеров с прямой системой подачи и производительным экструдером (например, Bambu lab или Voron) сглаживание подачи обычно не требуется. Однако в некоторых случаях, когда скорость печати сильно различается, это может принести дополнительную пользу. Например, когда происходят резкие замедления из-за нависаний. В этих случаях рекомендуется использовать высокое значение, составляющее около 300-350 мм³/с², при оптимально настроенном Pressure Advance (коррекции давления) это поможет достичь более плавного перехода.\n"
+"Для скоростных принтеров с производительным экструдером сглаживание обычно не требуется, но может быть полезным в местах с высоким перепадом скоростей. Например, для сглаживания замедлений при печати нависаний. При точно настроенной коррекции давления (коэффициент PA и время сглаживания) значения около 300-350 мм³/с² помогут дополнительно сгладить такие места.\n"
"\n"
-"У более медленных принтеров с внешней системой подачи или прошивкой без коррекции давления значение должно быть значительно ниже. 10-15 мм³/с² является хорошей отправной точкой для экструдеров с прямой подачей и 5-10 мм³/с² для внешней.\n"
-"\n"
-"В Prusa Slicer эта функция известна как «Сглаживание расхода» (Pressure equalizer).\n"
+"Для более медленных принтеров с внешней системой подачи или прошивкой без коррекции давления значение должно быть гораздо ниже: 10-15 мм³/с² при прямой подаче и 5-10 мм³/с² при внешней.\n"
"\n"
"Примечание: при ненулевом значении отключает аппроксимацию дугами."
@@ -16205,7 +16086,7 @@ msgid "mm³/s²"
msgstr "мм³/с²"
msgid "Smoothing segment length"
-msgstr "Длина сглаживающего сегмента"
+msgstr "Протяжённость сглаживания"
msgid ""
"A lower value results in smoother extrusion rate transitions. However, this results in a significantly larger G-code file and more instructions for the printer to process.\n"
@@ -16220,14 +16101,13 @@ msgstr ""
"\n"
"Допустимые значения: 0,5–5"
-# ???
msgid "Apply only on external features"
-msgstr "Применять только к видимым элементам"
+msgstr "Применять только к видимым элементам"
msgid "Applies extrusion rate smoothing only on external perimeters and overhangs. This can help reduce artefacts due to sharp speed transitions on externally visible overhangs without impacting the print speed of features that will not be visible to the user."
msgstr ""
-"Сглаживание скорости экструзии будет применяться только к внешним периметрам и нависаниям.\n"
-"Это помогает уменьшить количество артефактов, вызванные резкими перепадами скорости на видимых внешних участках, без влияния на скорость печати внутренних элементов, которые не видны пользователю."
+"Применять сглаживание расхода только к внешним периметрам и нависаниям.\n"
+"Помогает компенсировать видимые артефакты перепада скоростей без влияния на скорость печати внутренних элементов."
msgid "Minimum speed for part cooling fan."
msgstr "Минимальная скорость вентилятора обдува модели."
@@ -16236,29 +16116,28 @@ msgid ""
"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed during printing except the first several layers which is defined by no cooling layers.\n"
"Please enable auxiliary_fan in printer settings to use this feature. G-code command: M106 P2 S(0-255)"
msgstr ""
-"Скорость вращения вспомогательного вентилятора для охлаждения моделей. Обычно это боковой вентилятор. Он всегда будет работать с этой скоростью, за исключением первых нескольких слоёв, которые обычно настроены на работу без охлаждения.\n"
-"Пожалуйста, включите вспомогательный вентилятор для охлаждения моделей (auxiliary_fan) в настройках принтера, чтобы использовать эту функцию.\n"
+"Процент скорости вспомогательного вентилятора для охлаждения моделей. Используется на протяжении всей печати (кроме слоёв, указанных в разделе «Охлаждение начала печати»).\n"
+"Для работы этой настройки необходимо включить поддержку вспомогательного вентилятора на стороне принтера в его профиле.\n"
"Команда G-кода: M106 P2 S(0-255)."
-# AI Translated
msgid "For the first"
msgstr "Для первых"
-# AI Translated
msgid "Set special auxiliary cooling fan for the first certain layers."
-msgstr "Задаёт особую скорость вспомогательного вентилятора обдува для первых нескольких слоёв."
+msgstr "Особая скорость вспомогательного вентилятора для первых нескольких слоёв."
-# AI Translated
msgid ""
"Auxiliary fan speed will be ramped up linearly from layer \"For the first\" to maximum at layer \"Full fan speed at layer\".\n"
"\"Full fan speed at layer\" will be ignored if lower than \"For the first\", in which case the fan will run at maximum allowed speed at layer \"For the first\" + 1."
msgstr ""
-"Скорость вспомогательного вентилятора будет линейно увеличиваться от слоя «Для первых» до максимума на слое «Полная скорость вентилятора на слое».\n"
-"«Полная скорость вентилятора на слое» будет проигнорирована, если она меньше «Для первых»; в этом случае вентилятор будет работать на максимально допустимой скорости на слое «Для первых» + 1."
+"Начиная с указанного слоя, интенсивность охлаждения будет равномерно меняться для перехода к требуемым условиям обдува детали.\n"
+"\n"
+"Если активна настройка «Не обдувать первые N слоёв» – с учётом этих слоёв.\n"
+"\n"
+"Примечание: если слоёв с заблокированным обдувом больше, чем указано здесь, то восстановление происходит моментально на первом доступном слое."
-# AI Translated
msgid "Special auxiliary cooling fan speed, effective only for the first x layers."
-msgstr "Особая скорость вспомогательного вентилятора обдува, действует только для первых x слоёв."
+msgstr "Особая скорость вспомогательного вентилятора для первых N слоёв."
msgid "The lowest printable layer height for the extruder. Used to limit the minimum layer height when enable adaptive layer height."
msgstr "Минимальная высота слоя для печати этим экструдером. Используется в качестве ограничения при использовании адаптивной высоты слоя."
@@ -16380,9 +16259,9 @@ msgstr "Глухие отверстия в основании модели ра
msgid "Detect overhang walls"
msgstr "Обнаруживать нависающие периметры"
-#, fuzzy, c-format, boost-format
+#, c-format, boost-format
msgid "This detects the overhang percentage relative to line width and uses a different speed to print. For 100%% overhang, bridging speed is used."
-msgstr "Определяет процент нависания относительно ширины линии и использует разную скорость печати. Для 100%-го нависания используется скорость печати мостов."
+msgstr "Использовать разную скорость печати в зависимости от выноса линии относительно её опоры. Для нависаний без опоры используется скорость печати мостов."
# В секции "Материал для линий"
msgid "Outer walls"
@@ -16440,17 +16319,15 @@ msgstr "G-код при смене типа линии (настройки пе
msgid "This G-code is inserted when the extrusion role is changed. It runs after the machine and filament extrusion role G-code."
msgstr "Команды в G-коде, которые выполняются между печатью разных элементов структуры (например, при переходе от периметра к заполнению). Выполняются после команд смены типа линии из настроек принтера и материала."
-# AI Translated
msgid "Plugins Used"
msgstr "Используемые плагины"
-# AI Translated
+# Функционал плагинов для этого прояиля, указывается...
msgid "Plugin capabilities referenced by this preset, stored as name;uuid;capability."
-msgstr "Возможности плагинов, на которые ссылается этот профиль, хранятся как name;uuid;capability."
+msgstr "Функционал плагинов, на который ссылается этот профиль, указывается как name;uuid;capability."
-# AI Translated
msgid "Python plugin(s) invoked at each slicing pipeline step to read and modify intermediate slicing data, including a final G-code post-processing step. Research/experimental."
-msgstr "Плагины Python, вызываемые на каждом шаге конвейера нарезки для чтения и изменения промежуточных данных нарезки, включая финальный шаг постобработки G-code. Исследовательская/экспериментальная функция."
+msgstr "Python-плагины, вызываемые на каждом этапе нарезки для чтения и изменения промежуточных её данных (включая финальную постобработку G-кода). Тестовая/экспериментальная функция."
msgid "Printer type"
msgstr "Тип принтера"
@@ -16519,18 +16396,16 @@ msgstr ""
"\n"
"Примечание: значение не может быть меньше 25% или больше 100% и будет скорректировано автоматически при нарезке."
-# AI Translated
msgid "Retract amount after wipe"
-msgstr "Величина отката после обтирания"
+msgstr "Вторичный откат"
-# AI Translated
#, no-c-format, no-boost-format
msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr ""
-"Длина быстрого отката после обтирания относительно длины отката.\n"
-"Значение будет ограничено 100% минус величина отката до обтирания."
+"Быстрый откат после очистки, выраженный в процентах от общей длины отката. В некоторых случаях позволяет значительно снизить количество «паутины».\n"
+"Примечание: суммарное значение не должно превышать 100% и будет скорректировано автоматически."
msgid "Retract on layer change"
msgstr "Откат при смене слоя"
@@ -16563,6 +16438,14 @@ msgstr "Длинный откат перед сменой экструдера"
msgid "Retraction distance when extruder change"
msgstr "Длина отката перед сменой экструдера"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Длина отката (смена инструмента)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "При срабатывании отката перед сменой инструмента материал втягивается на указанную величину (длина измеряется по прутку материала до его входа в экструдер)."
+
msgid "Z-hop height"
msgstr "Высота подъёма"
@@ -16657,18 +16540,16 @@ msgstr "Прямой (Direct)"
msgid "Bowden"
msgstr "Внешний (Bowden)"
-# AI Translated
+# https://wiki.bambulab.com/ru/h2c/manual/bambu-studio-h2c-operation#:~:text=Гибридный
msgid "Hybrid"
msgstr "Гибридный"
-# Разобраться позже: wiki.bambulab.com/en/software/bambu-studio/filament-track-switch-dynamic-mapping
-# AI Translated
+# https://wiki.bambulab.com/ru/software/bambu-studio/filament-track-switch-dynamic-mapping
msgid "Enable filament dynamic map"
-msgstr "Включить динамическое сопоставление материалов"
+msgstr "Динамическое сопоставление материалов"
-# AI Translated
msgid "Enable dynamic filament mapping during print."
-msgstr "Включает динамическое сопоставление материалов во время печати."
+msgstr "Включить динамическое сопоставление материалов во время печати."
msgid "Has filament switcher"
msgstr "Автосмена материала"
@@ -16682,6 +16563,10 @@ msgstr "Доп. подача после отката"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Дополнительная длина подачи при возврате прутка после отката. Требуется крайне редко (например, для компенсации багов прошивки принтера)."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Доп. подача после отката (смена инструмента)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Дополнительная длина подачи после смены насадки."
@@ -16695,15 +16580,15 @@ msgid "Deretraction speed"
msgstr "Скорость возврата"
msgid "Speed for reloading filament into the nozzle. Zero means same speed of retraction."
-msgstr "Скорость возврата материала в экструдер после отката. При значении 0 используется скорость отката."
+msgstr ""
+"Скорость возврата материала в сопло после отката.\n"
+"0 – использовать скорость отката."
-# AI Translated
msgid "Deretraction speed (extruder change)"
-msgstr "Скорость подачи (смена экструдера)"
+msgstr "Скорость возврата (смена экструдера)"
-# AI Translated
msgid "Speed for reloading filament into the nozzle when switching extruder."
-msgstr "Скорость возврата материала в сопло при смене экструдера."
+msgstr "Скорость возврата материала в сопло после смены экструдера."
msgid "Use firmware retraction"
msgstr "Откат на уровне прошивки"
@@ -16964,13 +16849,13 @@ msgstr "Тип юбки"
# Про расширенное описание см. в комментарии к перевод подсказки настройки "Skirt minimum extrusion length"
msgid "Combined - single skirt for all objects, Per object - individual object skirt."
msgstr ""
-"Выбор типа печатаемой юбки – одна общая для всех моделей или отдельные юбки для каждой модели.\n"
+"Выбор типа печатаемой юбки – одна общая для всех моделей или независимые юбки для каждой модели.\n"
"\n"
"Внимание: при создании индивидуальных юбок проверка пересечения не совершается, из-за чего при близком расположении моделей они могут накладываться друг на друга. В таких случаях рекомендуется понизить количество контуров."
# Отдельный (антоним к "совместный")
msgid "Per object"
-msgstr "Для каждой модели"
+msgstr "Независимый"
msgid "Skirt loops"
msgstr "Контуров юбки"
@@ -17076,21 +16961,20 @@ 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, a prime tower is required for smooth mode to wipe the nozzle."
-msgstr "На протяжении всей печати встроенная камера делает снимки, которые затем объединяются в ускоренное видео. Избыточные резкие движения в кадре можно сгладить при помощи соответствующего режима; после печати каждого слоя для создания снимка экструдер будет отводиться к лотку для удаления излишков. В этом режиме необходима черновая башня для устранения возможных подтёков во время создания снимка."
+msgstr "На протяжении всей печати в конце слоя встроенная камера делает снимки, которые затем объединяются в ускоренное видео. Избыточные резкие движения в кадре можно сгладить при помощи «Плавного» режима, в котором для создания снимка экструдер будет отводиться к лотку для сброса материала. В этом режиме необходима черновая башня для устранения возможных подтёков во время создания снимка."
msgid "Traditional"
-msgstr "По умолчанию"
+msgstr "Обычный"
+# Для кнопки "Сгладить" добавили контекст, теперь их можно разделить.
msgid "Smooth"
-msgstr "Сгладить"
+msgstr "Плавный"
-# AI Translated
msgid "Farthest point timelapse"
-msgstr "Таймлапс из дальней точки"
+msgstr "Съёмка из дальней точки"
-# AI Translated
msgid "When enabled, the timelapse snapshot is taken at the farthest point from camera instead of traveling to the wipe tower or excess chute. Only effective in traditional timelapse mode on non-I3 printers."
-msgstr "Когда включено, снимок таймлапса делается из наиболее удалённой от камеры точки вместо перемещения к черновой башне или лотку сброса излишков. Действует только в традиционном режиме таймлапса на принтерах, отличных от I3."
+msgstr "Делать снимки из наиболее удалённой от камеры точки вместо перемещения к черновой башне или лотку для сброса материала. Работает только в обычном режиме таймлапса на принтерах с кинематикой, отличной от I3."
msgid "Temperature variation"
msgstr "Разница температур"
@@ -17140,10 +17024,10 @@ msgid "Enable this option to omit the custom Change filament G-code only at the
msgstr "Полезно для смены материала вручную при совместной печати через общий экструдер, где для этого используются команды M600/PAUSE. Отключает выполнение «G-кода смены материала» в самом начале печати (обычно это не требуется, так как пруток уже заправлен). Команда смены инструмента (например, T0) будет пропускаться на протяжении всей печати."
msgid "Wipe tower type"
-msgstr "Тип башни очистки"
+msgstr "Тип черновой башни"
msgid "Choose the wipe tower implementation for multi-material prints. Type 1 is recommended for Bambu and Qidi printers with a filament cutter. Type 2 offers better compatibility with multi-tool and MMU printers and provide overall better compatibility."
-msgstr "Выберите реализацию башни очистки для многоматериальной печати. Тип 1 рекомендуется для принтеров Bambu и Qidi с обрезчиком филамента. Тип 2 обеспечивает лучшую совместимость с многоинструментальными и MMU-принтерами и в целом более универсален."
+msgstr "Выбор реализации черновой башни при печати несколькими материалами. Тип 1 рекомендуется для принтеров Bambu и Qidi с обрезкой прутка. Тип 2 – универсальный вариант с поддержкой широкого спектра принтеров (в т.ч. с системами смены материала и инструментов)."
msgid "Type 1"
msgstr "Тип 1"
@@ -17169,6 +17053,14 @@ msgstr ""
"\n"
"Внимание: применимо только к многоэкструдерным принтерам с черновой башней 2 типа."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Ожидание температуры на черновой башне"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Забирает новый инструмент, не дожидаясь достижения температуры печати, перемещается к черновой башне и ждёт нагрева там, непосредственно перед прочисткой. Подтёки при нагреве попадают на башню, а не на модель, а перемещение совмещается с нагревом. Актуально только для принтеров с несколькими экструдерами (несколькими печатающими головами), использующих черновую башню типа 2. Прошивка или макрос смены инструмента не должны сами ждать нагрева. Если отключено, команда ожидания температуры выдаётся сразу после команды смены инструмента."
+
msgid "No sparse layers (beta)"
msgstr "Без разреженных слоёв (beta)"
@@ -17780,24 +17672,22 @@ msgstr ""
"\n"
"Примечание: влияет только на принтеры Bambu, в остальных случаях башня автоматически сужается по необходимости."
-# ??? настройка отключена в коде
+# настройка отключена в коде
msgid "Purging volumes"
msgstr "Объём прочистки"
-# ??? настройка отключена в коде
+# настройка отключена в коде
msgid "Flush multiplier"
msgstr "Множитель прочистки"
msgid "The actual flushing volumes is equal to the flush multiplier value multiplied by the flushing volumes in the table."
msgstr "Реальные объёмы прочистки равны произведению множителя и значений, указанных в таблице."
-# AI Translated
msgid "Flush multiplier (Fast mode)"
msgstr "Множитель прочистки (быстрый режим)"
-# AI Translated
msgid "The flush multiplier used in fast purge mode."
-msgstr "Множитель прочистки, используемый в режиме быстрой прочистки."
+msgstr "Множитель для режима быстрой прочистки."
msgid "Prime volume"
msgstr "Объём сброса материала на черновой башне"
@@ -17805,24 +17695,20 @@ msgstr "Объём сброса материала на черновой баш
msgid "This is the volume of material to prime the extruder with on the tower."
msgstr "Объём материала, который необходимо выдавить для подготовки экструдера на черновой башне."
-# AI Translated
msgid "Prime volume mode"
-msgstr "Режим объёма подготовки"
+msgstr "Режим прочистки"
-# AI Translated
msgid "Selects how the wipe-tower prime and flush volumes are computed on multi-extruder printers."
-msgstr "Определяет, как вычисляются объёмы подготовки и прочистки черновой башни на многоэкструдерных принтерах."
+msgstr "Режим расчёта прочистки на черновой башне для многоэкструдерных принтеров."
-# AI Translated
msgid "Saving"
msgstr "Экономия"
-# AI Translated
msgid "Fast"
msgstr "Быстрый"
msgid "This is the width of prime towers."
-msgstr "Размер черновой башни по оси X. Размер по оси Y будет автоматически вычислен исходя из необходимого объёма очистки и ширины башни. Таким образом, увеличивая ширину башни вы уменьшаете её длину и наоборот."
+msgstr "Размер черновой башни по оси X. Размер по оси Y будет автоматически вычислен исходя из необходимого объёма прочистки и ширины башни. Таким образом, увеличивая ширину башни вы уменьшаете её длину и наоборот."
msgid "Wipe tower rotation angle"
msgstr "Угол поворота черновой башни"
@@ -17854,7 +17740,7 @@ msgid ""
"For the wipe tower external perimeters the internal perimeter speed is used regardless of this setting."
msgstr ""
"Максимальная скорость печати при очистке в черновую башню и печати её разреженных слоёв.\n"
-"Во время очистки программа сопоставляет скорость разреженного заполнения и скорость, рассчитанную по 'максимальному объёмному расходу', и использует наименьшую.\n"
+"Во время прочистки программа сопоставляет скорость разреженного заполнения и скорость, рассчитанную по 'максимальному объёмному расходу', и использует наименьшую.\n"
"При печати разреженных слоёв программа сопоставляет скорость внутренних периметров и скорость, рассчитанную по 'максимальному объёмному расходу', и также использует наименьшую.\n"
"\n"
"Увеличение этой скорости может повлиять на устойчивость башни, а также увеличить силу, с которой сопло сталкивается с любыми наплывами, которые могли образоваться на черновой башне.\n"
@@ -17888,7 +17774,7 @@ msgid "Extra rib length"
msgstr "Вынос основания ребра"
msgid "Positive values can increase the size of the rib wall, while negative values can reduce the size. However, the size of the rib wall can not be smaller than that determined by the cleaning volume."
-msgstr "Положительное значение может увеличить длину ребра, а отрицательное - уменьшить. Однако она не может быть меньше размера, определяемого объёмом очистки."
+msgstr "Положительное значение может увеличить длину ребра, а отрицательное - уменьшить. Однако она не может быть меньше размера, определяемого объёмом прочистки."
msgid "Rib width"
msgstr "Ширина ребра"
@@ -18150,79 +18036,70 @@ msgstr ""
"\n"
"Примечание: периметр может расширяться до ширины элемента."
-# AI Translated
msgid "Hotend change time"
msgstr "Время смены хотэнда"
-# AI Translated
msgid "Time to change hotend."
-msgstr "Время смены хотэнда."
+msgstr "Время, затрачиваемое на смену хотэнда."
-# AI Translated
msgid "Hotend change"
msgstr "Смена хотэнда"
-# AI Translated
msgid "When changing the hotend, it is recommended to extrude a certain length of filament from the original nozzle. This helps minimize nozzle oozing."
-msgstr "При смене хотэнда рекомендуется выдавить определённую длину материала из исходного сопла. Это помогает минимизировать вытекание из сопла."
+msgstr "При смене хотэнда рекомендуется выдавить немного материала из прежнего сопла. Помогает минимизировать последующие подтёки."
-# AI Translated
msgid "Extruder change"
msgstr "Смена экструдера"
msgid "To prevent oozing, the nozzle will perform a reverse travel movement for a certain period after the ramming is complete. The setting define the travel time."
-msgstr "Чтобы материал не подтекал, материал после рэмминга немного отъезжает назад. Этот параметр задаёт время движения в обратном направлении."
+msgstr "Время движения сопла в обратном направлении во избежание подтёков из него. Выполняется по завершении рэмминга."
msgid "To prevent oozing, the nozzle temperature will be cooled during ramming. Therefore, the ramming time must be greater than the cooldown time. 0 means disabled."
-msgstr "Для предотвращения подтекания материала, температура сопла будет снижена во время рэмминга. Поэтому время рэмминга должно быть больше времени охлаждения. 0 значит отключено."
+msgstr "Во избежание подтёков температура сопла будет снижена на время рэмминга. Поэтому время рэмминга должно быть больше времени охлаждения. 0 значит отключено."
-# AI Translated
msgid "The maximum volumetric speed for ramming before extruder change, where -1 means using the maximum volumetric speed."
-msgstr "Максимальный объёмный расход при рэмминге перед сменой экструдера, где -1 означает использование максимального объёмного расхода."
+msgstr ""
+"Максимальный объёмный расход для рэмминга перед сменой экструдера.\n"
+"-1 – использовать максимальный расход."
-# AI Translated
msgid "To prevent oozing, the nozzle temperature will be cooled during ramming. Note: only a cooldown command and fan activation are triggered, reaching the target temperature is not guaranteed. 0 means disabled."
-msgstr "Во избежание вытекания температура сопла будет снижена во время рэмминга. Примечание: срабатывают только команда охлаждения и включение вентилятора; достижение целевой температуры не гарантируется. 0 означает отключено."
+msgstr ""
+"Во избежание подтёков температура сопла будет снижена на время рэмминга.\n"
+"0 – не менять температуру.\n"
+"\n"
+"Примечание: срабатывают только команда охлаждения и включение вентилятора; достижение целевой температуры не гарантируется."
-# AI Translated
msgid "The maximum volumetric speed for ramming before a hotend change, where -1 means using the maximum volumetric speed."
-msgstr "Максимальный объёмный расход при рэмминге перед сменой хотэнда, где -1 означает использование максимального объёмного расхода."
+msgstr ""
+"Максимальный объёмный расход для рэмминга перед сменой хотэнда.\n"
+"-1 – использовать максимальный расход."
-# AI Translated
msgid "length when change hotend"
-msgstr "длина при смене хотэнда"
+msgstr "Откат при смене хотэнда"
-# AI Translated
msgid "When this retraction value is modified, it will be used as the amount of filament retracted inside the hotend before changing hotends."
-msgstr "При изменении этого значения отката оно будет использоваться как величина отката материала внутри хотэнда перед сменой хотэндов."
+msgstr "Величина отката материала внутри хотэнда перед его сменой."
-# AI Translated
msgid "Support fast purge mode"
-msgstr "Поддержка режима быстрой прочистки"
+msgstr "Режим быстрой прочистки"
-# AI Translated
msgid "Whether this printer supports fast purge mode with optimized temperature and multiplier."
-msgstr "Поддерживает ли этот принтер режим быстрой прочистки с оптимизированной температурой и множителем."
+msgstr "Поддерживает ли принтер режим быстрой прочистки с оптимизированной температурой и множителем."
-# AI Translated
msgid "Filament change"
msgstr "Смена материала"
-# AI Translated
msgid "The volume of material required to prime the extruder on the tower, excluding a hotend change."
-msgstr "Объём материала, необходимый для подготовки экструдера на башне, исключая смену хотэнда."
+msgstr "Объём материала, необходимый для прочистки экструдера на башне, не считая смены хотэнда."
-# AI Translated
msgid "The volume of material required to prime the extruder for a hotend change on the tower."
-msgstr "Объём материала, необходимый для подготовки экструдера при смене хотэнда на башне."
+msgstr "Объём материала, необходимый для прочистки экструдера на башне при смене хотэнда."
-# AI Translated
msgid "Preheat temperature delta"
-msgstr "Дельта температуры предварительного нагрева"
+msgstr "Дельта преднагрева"
-# AI Translated
msgid "Temperature delta applied during pre-heating before tool change."
-msgstr "Дельта температуры, применяемая при предварительном нагреве перед сменой инструмента."
+msgstr "Разница температуры для предварительного нагрева перед сменой инструмента."
msgid "Detect narrow internal solid infills"
msgstr "Оптимизация заполнения узких мест"
@@ -18345,11 +18222,11 @@ msgstr "Экспорт настроек в файл."
# командная строка? нужен ли пеевод?
msgid "Send progress to pipe"
-msgstr "Отправлять прогресс в канал"
+msgstr "Send progress to pipe"
# ??? это относится к командной строке
msgid "Send progress to pipe."
-msgstr "Отправлять прогресс в канал."
+msgstr "Send progress to pipe."
msgid "Arrange Options"
msgstr "Параметры расстановки"
@@ -18499,15 +18376,14 @@ msgstr ""
msgid "Log file"
msgstr "Файл журнала"
-# AI Translated
msgid "Redirects debug logging to file.\n"
-msgstr "Перенаправляет отладочный журнал в файл.\n"
+msgstr "Направляет отладочные записи в файл.\n"
msgid "Enable timelapse for print"
msgstr "Вкл. таймлапс для печати"
msgid "If enabled, this slicing will be considered using timelapse."
-msgstr "Если включено, текущая нарезка будет выполнена с учётом функции таймлапса."
+msgstr "Выполнять нарезку с учётом записи таймлапса."
msgid "Load custom G-code"
msgstr "Загрузить пользовательский G-код"
@@ -18515,7 +18391,7 @@ msgstr "Загрузить пользовательский G-код"
msgid "Load custom G-code from json."
msgstr "Загрузить G-код из json."
-# ??? назначить идентификаторы
+# назначить идентификаторы
msgid "Load filament IDs"
msgstr "Загрузить идентификаторы материалов"
@@ -18525,7 +18401,6 @@ msgstr "Загрузить идентификаторы материалов д
msgid "Allow multiple colors on one plate"
msgstr "Игнорировать разницу в цвете"
-# ????
msgid "If enabled, Arrange will allow multiple colors on one plate."
msgstr "Если включено, модели разных цветов не будут разделяться на разные столы."
@@ -18574,9 +18449,8 @@ msgstr "Список значений метаданных, добавляемы
msgid "Allow 3MF with newer version to be sliced"
msgstr "Разрешить нарезку 3MF более новой версии"
-# ???
msgid "Allow 3MF with newer version to be sliced."
-msgstr "Разрешить нарезку новых версий 3MF-файлов."
+msgstr "Разрешить нарезку проектов из более новых версий."
msgid "Current Z-hop"
msgstr "Подъём оси Z"
@@ -18921,13 +18795,13 @@ msgid ""
"An object's XY size compensation will not be used because it is also color-painted.\n"
"XY Size compensation cannot be combined with color-painting."
msgstr ""
-"Коррекция горизонтальных размеров модели не будет действовать, поскольку для этой модели была выполнена операция окрашивания.\n"
-"Коррекция горизонтальных размеров модели не может использоваться в сочетании с функцией раскрашивания."
+"Функция «Расширение контура/пустот слоя» игнорируется.\n"
+"Коррекцию невозможно выполнить для нескольких материалов в окрашенной модели."
msgid ""
"An object has enabled XY Size compensation which will not be used because it is also fuzzy skin painted.\n"
"XY Size compensation cannot be combined with fuzzy skin painting."
-msgstr "Функция «Расширение контура слоя» игнорируется. Коррекцию контура слоя невозможно выполнить, если его часть принадлежит нечёткой оболочке."
+msgstr "Функция «Расширение контура/пустот слоя» игнорируется. Коррекцию невозможно выполнить, если часть слоя принадлежит нечёткой оболочке."
msgid "Object name"
msgstr "Имя модели"
@@ -19078,7 +18952,7 @@ msgstr ""
#, c-format, boost-format
msgid "Only one of the results with the same name: %s will be saved. Are you sure you want to override the other results?"
-msgstr "Будет сохранён только один из одноимённых результатов (%s). Вы действительно хотите перезаписать остальные?"
+msgstr "Будет сохранён только один из одноимённых результатов (%s). Перезаписать остальные?"
#, c-format, boost-format
msgid "There is already a previous calibration result with the same name: %s. Only one result with a name is saved. Are you sure you want to overwrite the previous result?"
@@ -19089,7 +18963,7 @@ msgid ""
"Within the same extruder, the name(%s) must be unique when the filament type, nozzle diameter, and nozzle flow are the same.\n"
"Are you sure you want to override the historical result?"
msgstr ""
-"Для одного экструдера имя (%s) должно быть уникальным, если тип материала, диаметр сопла и поток одинаковы.\n"
+"В рамках одного экструдера имя (%s) должно быть уникальным, если тип материала, диаметр сопла и поток одинаковы.\n"
"Перезаписать прошлый результат?"
#, c-format, boost-format
@@ -19221,13 +19095,11 @@ msgstr "Введите имя для сохранения на принтере.
msgid "The name cannot exceed 40 characters."
msgstr "Максимальная длина имени 40 символов."
-# AI Translated
msgid "Nozzle ID"
msgstr "ID сопла"
-# AI Translated
msgid "Standard Flow"
-msgstr "Стандартный расход"
+msgstr "Обычный расход"
msgid "Please find the best line on your plate"
msgstr "Пожалуйста, найдите лучшую линию на столе"
@@ -19394,7 +19266,7 @@ msgstr "История успешных результатов калибров
msgid "Refreshing the previous Flow Dynamics Calibration records"
msgstr "Обновление записей прошлых калибровок динамики потока"
-# AI Translated
+# Подставляется toolhead_display_name
#, c-format, boost-format
msgid "Note: The hotend number on the %s is tied to the holder. When the hotend is moved to a new holder, its number will update automatically."
msgstr "Примечание: номер хотэнда на %s привязан к держателю. При перемещении хотэнда в новый держатель его номер обновится автоматически."
@@ -19411,7 +19283,7 @@ msgstr "Редактировать калибровку динамики пот
#, c-format, boost-format
msgid "Within the same extruder, the name '%s' must be unique when the filament type, nozzle diameter, and nozzle flow are identical. Please choose a different name."
-msgstr "Для одного экструдера имя «%s» должно быть уникальным при одинаковых типе филамента, диаметре и потоке сопла. Пожалуйста, выберите другое имя."
+msgstr "В рамках одного экструдера имя (%s) должно быть уникальным, если тип материала, диаметр сопла и поток одинаковы. Укажите другое имя."
msgid "New Flow Dynamic Calibration"
msgstr "Новая калибровка динамики потока"
@@ -19457,19 +19329,19 @@ msgstr ""
"По имени хоста %1% обнаружено несколько IP-адресов.\n"
"Выберите адрес для использования."
-# AI Translated
+# В калибровке температуры и расхода
msgid "Auto-scale for nozzle"
-msgstr "Автомасштабирование под сопло"
+msgstr "Адаптация к соплу"
-# AI Translated
+# Речь о температурной башне
msgid ""
"This model is designed around a 0.4 mm nozzle with a 0.2 mm layer height. \n"
"When the scaling option is enabled (recommended), it dynamically resizes to match your current nozzle diameter and an appropriate layer height, making the test both accurate and easy to read.\n"
"Turn scaling off only if you wish to print the reference model exactly as-is."
msgstr ""
-"Эта модель рассчитана на сопло 0,4 мм и высоту слоя 0,2 мм. \n"
-"Если включено масштабирование (рекомендуется), размер модели динамически подстраивается под диаметр вашего текущего сопла и подходящую высоту слоя, благодаря чему тест получается и точным, и легко читаемым.\n"
-"Отключайте масштабирование, только если хотите напечатать эталонную модель ровно в исходном виде."
+"Тестовая модель рассчитана на сопло 0,4 мм и высоту слоя 0,2 мм.\n"
+"При включении адаптации (рекомендуется) её размер динамически подстраивается под диаметр текущего сопла и подходящую высоту слоя, благодаря чему тест получается более точным и читаемым.\n"
+"Отключать имееет смысл для печати эталонной модели ровно в исходном виде."
# В заголовке окна куча места
msgid "PA Calibration"
@@ -19607,13 +19479,14 @@ msgstr "Начальная скорость: "
msgid "End speed: "
msgstr "Конечная скорость: "
-# AI Translated
msgid "Auto-adjust to max volumetric speed"
-msgstr "Автоподстройка под предел объёмного расхода"
+msgstr "Адаптация к расходу"
-# AI Translated
msgid "If the end speed would exceed the filament's maximum volumetric speed, automatically lower the layer height (keeping standard values and staying within the machine's limits) to reach it. If even the minimum layer height is not enough, lower the end speed instead."
-msgstr "Если конечная скорость превысит предел объёмного расхода материала, автоматически уменьшать высоту слоя (сохраняя стандартные значения и оставаясь в пределах ограничений принтера), чтобы её достичь. Если даже минимальной высоты слоя недостаточно, вместо этого снижается конечная скорость."
+msgstr ""
+"Автоматически уменьшать высоту слоя для обеспечения требуемой скорости. Позволяет не упираться в предел объёмного расхода материала.\n"
+"\n"
+"Примечание: скорость всё равно может снижаться в случае упора в минимальную высоту слоя из заданных ограничений принтера."
msgid ""
"Please input valid values:\n"
@@ -19626,7 +19499,6 @@ msgstr ""
"Шаг ≥ 0\n"
"Конечное > начальное + шаг"
-# AI Translated
#, c-format, boost-format
msgid ""
"The end speed (%.0f mm/s) exceeds the filament's maximum volumetric speed (%.1f mm³/s), which limits the outer wall to about %.0f mm/s at this line width and layer height.\n"
@@ -19634,23 +19506,20 @@ msgid ""
"\n"
"%s"
msgstr ""
-"Конечная скорость (%.0f мм/с) превышает предел объёмного расхода материала (%.1f мм³/с), который при такой ширине линии и высоте слоя ограничивает скорость внешних периметров примерно до %.0f мм/с.\n"
-" Более высокие скорости будут ограничены, поэтому верхние блоки башни не напечатаются с заданной скоростью.\n"
+"Конечная скорость (%.0f мм/с) приводит к превышению предела объёмного расхода материала (%.1f мм³/с). При такой ширине линии периметров и высоте слоя расход ограничивает линейную скорость примерно до %.0f мм/с, и верхние сегменты башни не смогут достичь заданной скорости.\n"
"\n"
"%s"
-# AI Translated
#, c-format, boost-format
msgid ""
"The end speed (%.0f mm/s) exceeds the filament's maximum volumetric speed (%.1f mm³/s) at the default layer height (%.2f mm).\n"
"\n"
"The layer height has been reduced to %.2f mm (a value used by this printer's profiles) so the tower can reach the requested speed."
msgstr ""
-"Конечная скорость (%.0f мм/с) превышает предел объёмного расхода материала (%.1f мм³/с) при высоте слоя по умолчанию (%.2f мм).\n"
+"Конечная скорость (%.0f мм/с) приводит к превышению предела объёмного расхода материала (%.1f мм³/с) при высоте слоя по умолчанию (%.2f мм).\n"
"\n"
-"Высота слоя уменьшена до %.2f мм (значение, используемое профилями этого принтера), чтобы башня могла достичь заданной скорости."
+"Высота слоя уменьшена до %.2f мм (минимально значение из профиля принтера), чтобы башня могла достичь заданной скорости."
-# AI Translated
#, c-format, boost-format
msgid ""
"Even at the smallest layer height used by this printer's profiles (%.2f mm) the end speed (%.0f mm/s) exceeds the filament's maximum volumetric speed (%.1f mm³/s).\n"
@@ -19659,23 +19528,24 @@ msgid ""
"\n"
"Continue?"
msgstr ""
-"Даже при наименьшей высоте слоя, используемой профилями этого принтера (%.2f мм), конечная скорость (%.0f мм/с) превышает предел объёмного расхода материала (%.1f мм³/с).\n"
+"Конечная скорость (%.0f мм/с) приводит к превышению предела объёмного расхода материала (%.1f мм³/с) даже при минимально допустимой высоте слоя (в соответствии с профилем принтера, %.2f мм).\n"
"\n"
-"Высота слоя будет установлена в %.2f мм, а конечная скорость снижена до %.0f мм/с.\n"
+"Высота слоя будет установлена на %.2f мм, а конечная скорость снижена до %.0f мм/с.\n"
"\n"
"Продолжить?"
-# AI Translated
msgid "Continue anyway?"
msgstr "Всё равно продолжить?"
-# AI Translated
msgid "Enable \"Auto-adjust\" to fix this automatically, or continue anyway?"
-msgstr "Включить «Автоподстройку» для автоматического исправления или всё равно продолжить?"
+msgstr ""
+"Включить адаптацию к расходу для автоматического исправления?\n"
+"Нет – игнорировать предупреждение."
-# AI Translated
msgid "Enable \"Auto-scale for nozzle\" and \"Auto-adjust\" to fix this automatically, or continue anyway?"
-msgstr "Включить «Автомасштабирование под сопло» и «Автоподстройку» для автоматического исправления или всё равно продолжить?"
+msgstr ""
+"Включить адаптацию к соплу и расходу для автоматического исправления?\n"
+"Нет – игнорировать предупреждение."
msgid "Start retraction length: "
msgstr "Начальная длина отката: "
@@ -20173,10 +20043,10 @@ msgid "Create Nozzle for Existing Printer"
msgstr "Сопло для принтера"
msgid "Create from Template"
-msgstr "Создать из шаблона"
+msgstr "Создать из общих шаблонов"
msgid "Create Based on Current Printer"
-msgstr "Создать на основе профиля выбранного принтера"
+msgstr "Создать из профилей производителя"
msgid "Import Preset"
msgstr "Импорт профиля"
@@ -20305,8 +20175,8 @@ msgid ""
"The system preset does not allow creation. \n"
"Please re-enter the printer model or nozzle diameter."
msgstr ""
-"Системный профиль не допускает создания.\n"
-"Пожалуйста, повторно введите модель принтера или диаметр сопла."
+"Имя совпадает с системным профилем.\n"
+"Назовите модель принтера или диаметр сопла иначе."
msgid ""
"\n"
@@ -20500,11 +20370,12 @@ msgid ""
"All the filament presets belong to this filament would be deleted.\n"
"If you are using this filament on your printer, please reset the filament information for that slot."
msgstr ""
-"Все профили прутка, относящиеся к этому материалу, будут удалены.\n"
-"Если вы используете этот пруток в принтере, пожалуйста, сбросьте информацию о прутке для этого слота."
+"Все профили, относящиеся к этому материалу, будут удалены.\n"
+"Если вы используете его в принтере, сбросьте информацию о\n"
+"нём у соответствующего слота."
msgid "Delete filament"
-msgstr "Удаление прутка"
+msgstr "Удаление материала"
msgid "Add Preset"
msgstr "Добавить профиль"
@@ -20513,13 +20384,13 @@ msgid "Add preset for new printer"
msgstr "Добавление профиля для нового принтера"
msgid "Copy preset from filament"
-msgstr "Копировать профиль из прутка"
+msgstr "Копировать профиль из материала"
msgid "The filament choice not find filament preset, please reselect it"
-msgstr "Не удалось найти профиль прутка. Выберите его повторно"
+msgstr "Не удалось найти профиль материала. Выберите его повторно"
msgid "[Delete Required]"
-msgstr "[Необходимо удалить]"
+msgstr "[Требуется удаление]"
msgid "Edit Preset"
msgstr "Изменить профиль"
@@ -20586,8 +20457,8 @@ msgid ""
"The currently selected nozzle type of %s extruder does not match the actual printer nozzle type.\n"
"Please click the Sync button above and restart the calibration."
msgstr ""
-"Выбранный тип сопла экструдера %s не соответствует фактическому типу сопла принтера.\n"
-"Нажмите кнопку «Синхронизация» выше и перезапустите калибровку."
+"Выбранный тип сопла экструдера (%s) не соответствует фактическому типу сопла принтера.\n"
+"Нажмите кнопку синхронизации выше и перезапустите калибровку."
msgid "Unable to calibrate: maybe because the set calibration value range is too large, or the step is too small"
msgstr "Невозможно выполнить калибровку: возможно, установленный диапазон значений калибровки слишком велик или шаг слишком мал"
@@ -20598,9 +20469,6 @@ msgstr "Физический принтер"
msgid "Print Host upload"
msgstr "Загрузка на хост печати"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Реализация сетевого агента для обмена информацией с принтером. Доступные реализации определяются при запуске."
-
msgid "Select a Flashforge printer"
msgstr "Выберите принтер Flashforge"
@@ -21249,11 +21117,9 @@ msgstr "Ошибка печати"
msgid "Removed"
msgstr "Удалено"
-# AI Translated
msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings"
-msgstr "Включить умное назначение материалов: назначайте один материал нескольким соплам для максимальной экономии"
+msgstr "Включить умное назначение материалов: назначить один материал нескольким соплам для максимальной экономии"
-# AI Translated
msgid "Fila Saving"
msgstr "Экономия материала"
@@ -21292,10 +21158,10 @@ msgstr "Видеоурок"
msgid "(Sync with printer)"
msgstr " (состояние принтера)"
-# AI Translated
+# Отвратительная подстановка левое/правое и тип расхода сопла
#, c-format, boost-format
msgid "Error: %s extruder has no available %s nozzle, current group result is invalid."
-msgstr "Ошибка: у экструдера %s нет доступного сопла %s, текущий результат группировки недействителен."
+msgstr "Ошибка: %s сопло не поддерживает требуемый расход (%s), результат текущей группировки недействителен."
msgid "We will slice according to this grouping method:"
msgstr "Осуществлять нарезку в соответствии с этой группировкой:"
@@ -21303,15 +21169,12 @@ msgstr "Осуществлять нарезку в соответствии с
msgid "Tip: You can drag the filaments to reassign them to different nozzles."
msgstr "Совет: для назначения материала перетащите его в нужное поле."
-# AI Translated
msgid "Please adjust your grouping or click "
-msgstr "Отрегулируйте группировку или нажмите "
+msgstr "Измените группировку или нажмите "
-# AI Translated
msgid " to set nozzle count"
msgstr " для задания количества сопел"
-# AI Translated
msgid "Set the physical nozzle count..."
msgstr "Задать физическое количество сопел..."
@@ -21464,9 +21327,6 @@ msgstr "При попытке войти произошла какая-то ош
msgid "User canceled."
msgstr "Отменено пользователем."
-msgid "Head diameter"
-msgstr "Диаметр уха"
-
msgid "Max angle"
msgstr "Макс. угол"
@@ -21548,7 +21408,7 @@ msgid "Skipping objects."
msgstr "Исключение объектов."
msgid "Select Filament"
-msgstr "Выбрать филамент"
+msgstr "Выбрать материал"
msgid "Null Color"
msgstr "Цвет не задан"
@@ -21581,7 +21441,7 @@ msgstr "Ошибка: %s"
msgid "Show details"
msgstr "Подробнее"
-# AI Translated
+# В информации о сетевом плагине
msgid "Hide details"
msgstr "Скрыть подробности"
@@ -21610,9 +21470,8 @@ msgstr "Установить обновление"
msgid "(Latest)"
msgstr "(новейшая)"
-# AI Translated
msgid "(installed)"
-msgstr "(установлено)"
+msgstr "(установлена)"
msgid "The Bambu Network Plug-in has been installed successfully."
msgstr "Сетевой плагин Bambu успешно установлен."
@@ -21664,7 +21523,6 @@ msgstr "Сохранить как настройки по умолчанию"
msgid "If enabled, the values above are stored as the defaults used for future STEP imports (and shown in Preferences)."
msgstr "Активируйте для сохранения настроек импорта после его завершения."
-# AI Translated
msgid "PresetBundle"
msgstr "PresetBundle"
@@ -21691,7 +21549,6 @@ msgstr "Удаление пакета"
msgid "Unsubscribe bundle?"
msgstr "Отписаться от пакета?"
-# AI Translated
msgid "UnsubscribeBundle"
msgstr "UnsubscribeBundle"
@@ -21702,11 +21559,9 @@ msgstr "Не удалось отписаться от пакета."
msgid "Unsubscribe Bundle"
msgstr "Ошибка"
-# AI Translated
msgid "ExportPresetBundle"
msgstr "ExportPresetBundle"
-# AI Translated
msgid "Save preset bundle"
msgstr "Сохранить пакет профилей"
@@ -21760,190 +21615,146 @@ msgstr "Просмотр архива"
msgid "Open File"
msgstr "Открыть файл"
-# AI Translated
msgid "AMS Dryness Control"
msgstr "Управление сушкой AMS"
-# AI Translated
msgid "Filament Drying Settings"
msgstr "Настройки сушки материала"
-# AI Translated
msgid "Stopping"
msgstr "Остановка"
-# AI Translated
msgid "Unable to dry temporarily due to ..."
msgstr "Временно невозможно выполнить сушку из-за ..."
-# AI Translated
msgid "Drying Error"
msgstr "Ошибка сушки"
-# AI Translated
msgid "Please check the Assistant for troubleshooting"
msgstr "Обратитесь к Помощнику для устранения неполадок"
-# AI Translated
msgid "Please remove and store the filament (as shown)."
msgstr "Извлеките и уберите материал на хранение (как показано)."
-# AI Translated
msgid "The AMS can rotate the filament which is properly stored, providing better drying results."
-msgstr "AMS может вращать правильно уложенный на хранение материал, обеспечивая лучший результат сушки."
+msgstr "AMS может вращать правильно уложенный на хранение материал, тем самым улучшая эффективность сушки."
-# AI Translated
msgid "Rotate spool when drying"
msgstr "Вращать катушку при сушке"
-# AI Translated
msgctxt "amsdrying"
msgid "Back"
msgstr "Назад"
-# AI Translated
msgid "Drying-Heating"
msgstr "Сушка — нагрев"
-# AI Translated
msgid "Drying-Dehumidifying"
-msgstr "Сушка — осушение"
+msgstr "Сушка — вывод влаги"
-# AI Translated
msgid " maximum drying temperature is "
msgstr " максимальная температура сушки — "
-# AI Translated
msgid " minimum drying temperature is "
msgstr " минимальная температура сушки — "
-# AI Translated
msgid "This filament may not be completely dried."
-msgstr "Этот материал может быть высушен не полностью."
+msgstr "Сушка этого материала может не быть эффективной."
-# AI Translated
msgid "This AMS is currently printing. To ensure print quality, the drying temperature cannot exceed the recommended drying temperature."
-msgstr "Этот AMS сейчас печатает. Для обеспечения качества печати температура сушки не может превышать рекомендованную температуру сушки."
+msgstr "AMS сейчас печатает. Во избежание проблем с печатью температура сушки не должна превышать рекомендованную."
-# AI Translated
msgid "The temperature shall not exceed the filament's heat distortion temperature"
-msgstr "Температура не должна превышать температуру тепловой деформации материала"
+msgstr "Температура сушки не должна превышать температуру размягчения материала."
-# AI Translated
msgid "Minimum time value cannot be less than 1."
-msgstr "Минимальное значение времени не может быть меньше 1."
+msgstr "Минимальное время не может быть меньше 1."
-# AI Translated
msgid "Maximum time value cannot be greater than 24."
-msgstr "Максимальное значение времени не может быть больше 24."
+msgstr "Максимальное время не может быть больше 24."
-# AI Translated
msgid "Insufficient power"
-msgstr "Недостаточно питания"
+msgstr "Нехватка мощности"
-# AI Translated
msgid " Too many AMS drying simultaneously. Please plug in the power or stop other drying processes before starting."
-msgstr " Слишком много AMS сушат одновременно. Подключите питание или остановите другие процессы сушки перед началом."
+msgstr " Слишком много AMS выполняют сушку. Подключите питание или остановите другие сеансы сушки перед началом."
-# AI Translated
msgid "AMS is busy"
-msgstr "AMS занят"
+msgstr "AMS занята"
-# AI Translated
msgid " AMS is calibrating | reading RFID | loading/unloading material, please wait."
-msgstr " AMS калибруется | считывает RFID | загружает/выгружает материал, подождите."
+msgstr " AMS калибруется | считывает RFID | меняет материал, подождите."
-# AI Translated
+# на Вики бамбу есть упоминание: https://wiki.bambulab.com/ru/h2/troubleshooting/hmscode/0700_2000_0002_0025#:~:text=выходного%20отверстия%20AMS
msgid "Filament in AMS outlet"
msgstr "Материал в выходном отверстии AMS"
-# AI Translated
msgid " The high drying temperature may cause AMS blockage, please unload first."
-msgstr " Высокая температура сушки может вызвать засорение AMS, сначала выгрузите материал."
+msgstr " Из-за высокой температуры сушки пруток может застрять в AMS, сначала выгрузите материал."
-# AI Translated
msgid "Initiating AMS drying"
msgstr "Запуск сушки AMS"
-# AI Translated
msgid "Not supported in 2D mode"
-msgstr "Не поддерживается в режиме 2D"
+msgstr "Не поддерживается в 2D-режиме"
-# AI Translated
msgid "Task in progress"
msgstr "Выполняется задача"
-# AI Translated
+# CannotDryReason: DryingInProgress
msgid " The AMS might be in use during Task."
-msgstr " AMS может использоваться во время задачи."
+msgstr " AMS может иметь задачи в процессе."
-# AI Translated
msgid " Firmware update in progress, please wait..."
msgstr " Выполняется обновление прошивки, подождите..."
-# AI Translated
msgid " Please plug in the power and then use the drying function."
msgstr " Подключите питание, а затем используйте функцию сушки."
-# AI Translated
msgid " The high drying temperature may cause AMS blockage. Please unload the filament manually before proceeding."
-msgstr " Высокая температура сушки может вызвать засорение AMS. Перед продолжением выгрузите материал вручную."
+msgstr " Из-за высокой температуры сушки пруток может застрять в AMS. Перед продолжением выгрузите материал вручную."
-# AI Translated
msgid "System is busy"
msgstr "Система занята"
-# AI Translated
msgid " Initiating other drying processes, please wait a few seconds..."
msgstr " Запускаются другие процессы сушки, подождите несколько секунд..."
-# AI Translated
msgid "For better drying results, remove the filament and allow it to rotate."
-msgstr "Для лучшего результата сушки извлеките материал и дайте ему вращаться."
+msgstr "Для лучшего результата сушки извлеките материал и включите вращение катушки."
-# AI Translated
msgid "The AMS will automatically rotate the stored filament slots to enhance the drying performance."
-msgstr "AMS будет автоматически вращать слоты с уложенным на хранение материалом для повышения эффективности сушки."
+msgstr "AMS будет автоматически вращать слоты с хранящимися катушками для повышения эффективности сушки."
-# AI Translated
msgid "Alternatively, you can dry the filament without removing it."
-msgstr "Кроме того, вы можете сушить материал, не извлекая его."
+msgstr "Кроме того, сушить материал можно без его извлечения."
-# AI Translated
msgid "Unknown filaments will be treated as PLA."
msgstr "Неизвестные материалы будут рассматриваться как PLA."
-# AI Translated
msgid "Please store the filament marked with an exclamation mark."
msgstr "Уберите на хранение материал, отмеченный восклицательным знаком."
-# AI Translated
msgid "Filament left in the feeder during drying may soften because the drying temperature exceeds the softening point of materials like PLA and TPU."
-msgstr "Материал, оставленный в подающем механизме во время сушки, может размягчиться, поскольку температура сушки превышает точку размягчения таких материалов, как PLA и TPU."
+msgstr "Заправленный материал может размягчиться во время сушки, поскольку её сушки превышает точку размягчения материалов вроде PLA и TPU."
-# AI Translated
msgid "Starting: Checking adapter connection"
msgstr "Запуск: проверка подключения адаптера"
-# AI Translated
msgid "Starting: Checking filament status"
msgstr "Запуск: проверка состояния материала"
-# AI Translated
msgid "Starting: Checking drying presets"
msgstr "Запуск: проверка профилей сушки"
-# AI Translated
msgid "Starting: Checking filament location"
msgstr "Запуск: проверка расположения материала"
-# AI Translated
msgid "Starting: Checking air intake"
msgstr "Запуск: проверка забора воздуха"
-# AI Translated
msgid "Starting: Checking air vent"
-msgstr "Запуск: проверка вентиляционного отверстия"
+msgstr "Запуск: проверка вентиляции"
msgid "The filament may not be compatible with the current machine settings. Generic filament presets will be used."
msgstr "Материал может быть несовместим с текущими настройками принтера. Будет использоваться базовый профиль материала."
@@ -21953,14 +21764,14 @@ msgstr "Материал может быть несовместим с теку
# подобных). Она задаётся вручную в файле профиля (производителем) и
# отсутствует у большинства системных профилей.
msgid "The filament model is unknown. Still using the previous filament preset."
-msgstr "Модель филамента неизвестна. Используется предыдущий профиль филамента."
+msgstr "Модель материала неизвестна. Используется предыдущий профиль материала."
# Не знаю, что за "модель" материала, пропускаю. Возможно, имеется ввиду
# модель коррекции объёмного расхода для функции адаптивного расхода у TPU (и
# подобных). Она задаётся вручную в файле профиля (производителем) и
# отсутствует у большинства системных профилей.
msgid "The filament model is unknown. Generic filament presets will be used."
-msgstr "Модель филамента неизвестна. Будут использованы стандартные профили филамента."
+msgstr "Модель материала неизвестна. Будут использованы стандартные профили материала."
msgid "The filament may not be compatible with the current machine settings. A random filament preset will be used."
msgstr "Материал может быть несовместим с текущими настройками принтера. Будет использоваться случайный профиль материала."
@@ -21970,7 +21781,7 @@ msgstr "Материал может быть несовместим с теку
# подобных). Она задаётся вручную в файле профиля (производителем) и
# отсутствует у большинства системных профилей.
msgid "The filament model is unknown. A random filament preset will be used."
-msgstr "Модель филамента неизвестна. Будет использован случайный профиль филамента."
+msgstr "Модель материала неизвестна. Будет использован случайный профиль материала."
#: resources/data/hints.ini: [hint:Precise wall]
msgid ""
@@ -22270,6 +22081,22 @@ msgstr ""
"Предотвращение коробления материала\n"
"Знаете ли вы, что при печати материалами, склонными к короблению, таких как ABS, повышение температуры подогреваемого стола может снизить эту вероятность?"
+#~ 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 height limits, this may cause printing quality issues."
+#~ msgstr "Высота слоя не может превышать ограничения, установленные в настройках принтера → Экструдер → Ограничение высоты слоя. Это может вызвать проблемы с качеством печати."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Автоматически подстроиться под заданный в настройках диапазон?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Диаметр уха"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Последовательность печати моделей в пределах одного слоя."
@@ -22372,9 +22199,6 @@ msgstr ""
#~ "\n"
#~ "Внимание: несовместимо с принтерами Prusa, поскольку им требуется остановка для изменения коэффициента PA."
-#~ msgid "Continue to sync filaments"
-#~ msgstr "Продолжить синхронизацию филаментов"
-
#~ msgctxt "Sync_Nozzle_AMS"
#~ msgid "Cancel"
#~ msgstr "Отмена"
diff --git a/localization/i18n/sv/OrcaSlicer_sv.po b/localization/i18n/sv/OrcaSlicer_sv.po
index 6d28e4e66f..432000f96d 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: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"Language: sv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -5213,6 +5213,23 @@ msgstr "Kammarens aktuella temperatur är högre än materialets säkra temperat
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "Kammarens minimitemperatur (%d℃) är högre än kammarens måltemperatur (%d℃). Minimivärdet är tröskeln där utskriften startar medan kammaren fortsätter värmas mot målet, så det bör inte överstiga målet. Värdet begränsas till måltemperaturen."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "Lagerhöjden är för liten. Den kommer att sättas till minimivärdet (%g mm)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "Lagerhöjden ligger utanför gränserna som anges i Skrivarinställningar -> Extruder -> Lagerhöjds gränser, detta kan orsaka problem med utskriftskvaliteten."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Justera automatiskt till gränsvärdet (%g mm)?"
+
+msgid "Adjust"
+msgstr "Justera"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -5339,6 +5356,13 @@ msgstr ""
"Ja – Aktivera Arachne-väggeneratorn\n"
"Nej – Inaktivera Arachne-väggeneratorn och ställ in läget [Förskjutning] för ojämn yta"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Radie för brim-öra"
+
+msgid "Brim width"
+msgstr "Brim bredd"
+
# AI Translated
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "Spiralläget fungerar bara när antal väggar är 1, support är avstängt, detektering av klumpbildning med sondering är avstängd, antal översta skallager är 0, sparsam ifyllnadsdensitet är 0 och timelapse-typen är traditionell."
@@ -5645,6 +5669,14 @@ msgstr "Misslyckades med att generera cali G kod"
msgid "Calibration error"
msgstr "Fel vid kalibrering"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Den här skrivaren är inte konfigurerad med den maskinvara som den här kontrollen kräver."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Den här kontrollen stöds inte på den här skrivaren."
+
# AI Translated
msgid "Network unavailable"
msgstr "Nätverket är inte tillgängligt"
@@ -6596,7 +6628,7 @@ msgid "Size:"
msgstr "Storlek:"
# AI Translated
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "Konflikter mellan G-code-banor hittades på lager %d, Z = %.2lfmm. Placera de objekt som krockar längre ifrån varandra (%s <-> %s)."
@@ -6798,6 +6830,10 @@ msgstr "Flera enheter"
msgid "Project"
msgstr "Projekt"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Enhet (Webb)"
+
msgid "Yes"
msgstr "Ja"
@@ -9088,24 +9124,24 @@ msgid "Replaced with 3D files from directory:\n"
msgstr "Ersatt med 3D-filer från mappen:\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Hoppade över %1%: samma fil.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ Hoppade över %s: samma fil.\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Hoppade över %1%: filen finns inte.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ Hoppade över %s: filen finns inte.\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Hoppade över %1%: det gick inte att ersätta.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ Hoppade över %s: det gick inte att ersätta.\n"
# AI Translated
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Ersatte %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ Ersatte %s.\n"
# AI Translated
msgid "Replaced volumes"
@@ -9933,6 +9969,18 @@ msgstr "Med det här alternativet aktiverat kan du skicka en uppgift till flera
msgid "Pop up to select filament grouping mode"
msgstr "Visa dialogruta för val av filamentgrupperingsläge"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Synliga insticksmodulsidor"
+
+# AI Translated
+msgid "pages"
+msgstr "sidor"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Antal insticksmodulsidor som visas som fasta flikar innan de återstående sidorna fälls ihop i en rullgardinsmeny på den sista fliken."
+
# AI Translated
msgid "Behaviour"
msgstr "Beteende"
@@ -10357,6 +10405,18 @@ msgstr "Visa förinställningar som inte stöds"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Visa inkompatibla förinställningar och förinställningar som inte stöds i rullgardinslistorna för skrivare och filament. Dessa förinställningar kan inte väljas."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Experimentellt) Använd skrivaragenter i stället för utskriftsvärdar"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Skickar utskriftsjobb för icke-Bambu-skrivare via skrivarens insticksmodulagenter i stället för det klassiska uppladdningsflödet till utskriftsvärden.\n"
+"När detta är avaktiverat använder OrcaSlicer det äldre beteendet för utskriftsvärdar."
+
# AI Translated
msgid "Experimental Features"
msgstr "Experimentella funktioner"
@@ -10637,10 +10697,26 @@ msgstr "Användar förinställning"
msgid "Preset Inside Project"
msgstr "Projekt förinställning"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Kopierar alla ärvda värden från den överordnade förinställningen till den här förinställningen och tar bort arvsrelationen. Förinställningar som endast är kompatibla med den överordnade förinställningen kan sluta stödjas."
+
# AI Translated
msgid "Detach from parent"
msgstr "Koppla loss från överordnad"
+# AI Translated
+msgid "Unique preset"
+msgstr "Unik förinställning"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Överordnad förinställning"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Den här förinställningen ärver inte från någon annan förinställning."
+
msgid "Name is unavailable."
msgstr "Namnet ej tillgängligt."
@@ -11459,23 +11535,6 @@ msgstr "Är du säker på att du vill aktivera det här alternativet?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "Ifyllnadsmönster är oftast konstruerade för att hantera rotation automatiskt så att de skrivs ut korrekt och ger avsedd effekt (t.ex. Gyroid, Kubisk). Att rotera det aktuella sparsamma ifyllnadsmönstret kan ge otillräckligt stöd. Var försiktig och kontrollera noga om det uppstår utskriftsproblem. Är du säker på att du vill aktivera det här alternativet?"
-# AI Translated
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"Lagerhöjden är för liten.\n"
-"Den ställs in på min_layer_height\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "Lagerhöjden överskrider gränsen i Skrivarinställningar -> Extruder -> Lagerhöjds gränser, detta kan orsaka problem med utskriftskvaliteten."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Justera automatiskt till det inställda området?\n"
-
-msgid "Adjust"
-msgstr "Justera"
-
# AI Translated
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."
msgstr "Experimentell funktion: Filamentet dras tillbaka och kapas på ett längre avstånd vid filamentbyten för att minimera rensningen. Det kan minska rensningen avsevärt, men kan också öka risken för igensatt nozzel eller andra utskriftsproblem."
@@ -11707,6 +11766,9 @@ msgstr "Hittade reserverade nyckelord"
msgid "Setting Overrides"
msgstr "Åsidosätter inställningar"
+msgid "Retraction when switching material"
+msgstr "Reduktion vid material byte"
+
msgid "Basic information"
msgstr "Allmän information"
@@ -11848,6 +11910,14 @@ msgstr "Kompatibla process profiler"
msgid "Printable space"
msgstr "Utskriftsbar yta"
+# AI Translated
+msgid "Printer Agent"
+msgstr "Skrivaragent"
+
+# AI Translated
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Välj vilken nätverksagentimplementation som ska användas för kommunikation med skrivaren. Tillgängliga agenter registreras vid start."
+
# AI Translated
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
@@ -11992,9 +12062,6 @@ msgstr "Lagerhöjds begränsning"
msgid "Z-Hop"
msgstr "Z-Hop"
-msgid "Retraction when switching material"
-msgstr "Reduktion vid material byte"
-
# AI Translated
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
@@ -13486,6 +13553,10 @@ msgstr " är för nära uteslutningsområdet, och kollisioner kommer att orsakas
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " ligger för nära området för klumpdetektering, vilket kommer att orsaka kollisioner.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " är delvis utanför det utskrivbara området och kan inte skrivas ut.\n"
+
# AI Translated
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "De valda nozzeltemperaturerna är inkompatibla. Varje filaments nozzeltemperatur måste ligga inom de andra filamentens rekommenderade nozzeltemperaturintervall. Annars kan nozzeln sättas igen eller skrivaren skadas."
@@ -13856,10 +13927,6 @@ msgstr "Använd 3MF i stället för G-code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Aktivera detta om skrivaren tar emot en 3MF-fil som utskriftsjobb. När det är aktiverat skickar Orca Slicer den beredda filen som en .gcode.3mf i stället för en vanlig .gcode-fil."
-# AI Translated
-msgid "Printer Agent"
-msgstr "Skrivaragent"
-
# AI Translated
msgid "Select the network agent implementation for printer communication."
msgstr "Välj vilken nätverksagentimplementation som ska användas för kommunikation med skrivaren."
@@ -14616,9 +14683,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Hastighet för inre bridges. Om värdet anges i procent beräknas det utifrån bridge_speed. Standardvärdet är 150 %."
-msgid "Brim width"
-msgstr "Brim bredd"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Avståndet från modellen till yttersta brim linjen"
@@ -14707,6 +14771,14 @@ msgstr ""
"Geometrin decimeras innan skarpa vinklar detekteras. Den här parametern anger avvikelsens minsta längd för decimeringen.\n"
"0 för att avaktivera."
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Brim-öron endast utvändigt"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Genererar musöron endast på modellens yttre kontur, exklusive hål och slutna sektioner."
+
msgid "upward compatible machine"
msgstr "uppåt kompatibel maskin"
@@ -16039,6 +16111,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Gyroid"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Utjämningsfaktor för sparsam ifyllnad"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Styr hur kraftigt hörnen i den sparsamma ifyllnaden rundas av. 0% behåller den ursprungliga skarpa banan, medan 100% ger största möjliga kurvor mellan intilliggande ifyllnadslinjer."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Acceleration av fyllning av toppytan. Att använda ett lägre värde kan förbättra ytkvaliteten"
@@ -16651,6 +16731,14 @@ msgstr "Vilken typ av G-kod är skrivaren kompatibel med"
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "Hoppa över G-code-konfigurationsblocket"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "Skriver inte CONFIG_BLOCK (nyckel/värde-paren för slicerkonfigurationen) till G-code-filen. Detta kan hjälpa med skrivare vars firmware kraschar när dessa kommentarrader tolkas (t.ex. Anycubic go-klipper). Obs: G-code-filen kommer inte längre att innehålla slicerinställningarna, så att importera den tillbaka till OrcaSlicer återställer inte konfigurationen."
+
# AI Translated
msgid "Pellet Modded Printer"
msgstr "Skrivare ombyggd för pellets"
@@ -17868,6 +17956,14 @@ msgstr "Lång reduktion vid extruderbyte"
msgid "Retraction distance when extruder change"
msgstr "Reduktionssträcka vid extruderbyte"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Reduktionslängd (Verktygsbyte)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "När reduktionen utlöses före ett verktygsbyte dras filamentet tillbaka med den angivna mängden (längden mäts på det obearbetade filamentet, innan det når extrudern)."
+
# AI Translated
msgid "Z-hop height"
msgstr "Z-hop-höjd"
@@ -17983,6 +18079,10 @@ msgstr "Extra längd vid omstart"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "När reduktionen kompenseras efter flyttrörelsen trycker extrudern fram den här extra mängden filament. Den här inställningen behövs sällan."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Extra längd vid omstart (Verktygsbyte)"
+
# AI Translated
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "När reduktionen kompenseras efter verktygsbyte trycker extrudern fram den här extra mängden filament."
@@ -18477,6 +18577,14 @@ msgstr "Verktygsbyte vid prime tornet"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Tvinga verktygshuvudet att flytta till prime tornet innan verktygsbyteskommandot (Tx) skickas. Endast relevant för skrivare med flera extrudrar (flera verktygshuvuden) som använder ett prime torn av typ 2. Som standard hoppar Orca över flytten på maskiner med flera verktygshuvuden, eftersom den fasta programvaran hanterar huvudbytet, vilket kan leda till att Tx-kommandot skickas ovanför den utskrivna delen. Aktivera det här alternativet om du vill att verktygsbytet alltid ska ske ovanför prime tornet i stället."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Vänta på temperatur vid prime tornet"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Hämtar det nya verktyget utan att vänta på att det ska nå utskriftstemperatur, förflyttar sig till prime tornet och väntar på temperaturen där, precis före rensningen. Materialet som droppar under uppvärmningen hamnar på tornet i stället för på modellen, och förflyttningen sker samtidigt som uppvärmningen. Endast relevant för skrivare med flera extrudrar (flera verktygshuvuden) som använder ett prime torn av typ 2. Firmware eller verktygsbytesmakrot får inte vänta på temperaturen själv. När detta är avaktiverat utfärdas temperaturväntan direkt efter verktygsbyteskommandot."
+
# AI Translated
msgid "No sparse layers (beta)"
msgstr "Inga glesa lager (beta)"
@@ -22101,10 +22209,6 @@ msgstr "Fysisk printer"
msgid "Print Host upload"
msgstr "Uppladdning utskriftsvärd"
-# AI Translated
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Välj vilken nätverksagentimplementation som ska användas för kommunikation med skrivaren. Tillgängliga agenter registreras vid start."
-
# AI Translated
msgid "Select a Flashforge printer"
msgstr "Välj en Flashforge-skrivare"
@@ -23181,10 +23285,6 @@ msgstr "Något oväntat hände vid inloggningen, försök igen."
msgid "User canceled."
msgstr "Användaren avbröt."
-# AI Translated
-msgid "Head diameter"
-msgstr "Huvuddiameter"
-
# AI Translated
msgid "Max angle"
msgstr "Maxvinkel"
@@ -24071,6 +24171,24 @@ msgstr ""
"Undvik vridning\n"
"Visste du att när du skriver ut material som är benägna att vrida, såsom ABS, kan en lämplig ökning av värmebäddens temperatur minska sannolikheten för vridning?"
+# AI Translated
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "Lagerhöjden är för liten.\n"
+#~ "Den ställs in på min_layer_height\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "Lagerhöjden överskrider gränsen i Skrivarinställningar -> Extruder -> Lagerhöjds gränser, detta kan orsaka problem med utskriftskvaliteten."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Justera automatiskt till det inställda området?\n"
+
+# AI Translated
+#~ msgid "Head diameter"
+#~ msgstr "Huvuddiameter"
+
# AI Translated
#~ msgid "Print order within a single layer."
#~ msgstr "Utskriftsordning inom ett enskilt lager."
diff --git a/localization/i18n/th/OrcaSlicer_th.po b/localization/i18n/th/OrcaSlicer_th.po
index 84b41505a9..a0c0079125 100644
--- a/localization/i18n/th/OrcaSlicer_th.po
+++ b/localization/i18n/th/OrcaSlicer_th.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: 2026-06-19 13:40+0700\n"
"Last-Translator: Icezaza\n"
"Language-Team: Thai\n"
@@ -843,7 +843,7 @@ msgid "Hexagon"
msgstr "หกเหลี่ยม"
msgid "Keep orientation"
-msgstr "รักษาปฐมนิเทศ"
+msgstr "คงการวางแนว"
msgid "Place on cut"
msgstr "วางบนการตัด"
@@ -891,7 +891,7 @@ msgid "Cut position"
msgstr "ตำแหน่งตัด"
msgid "Build Volume"
-msgstr "ปริมาตรพื้นที่พิมพ์"
+msgstr "ปริมาตรการพิมพ์ (Build Volume)"
msgid "Multiple"
msgstr "หลายรายการ"
@@ -1200,7 +1200,7 @@ msgid "Horizontal text"
msgstr "ข้อความแนวนอน"
msgid "Shift+"
-msgstr "กะ+"
+msgstr "Shift+"
msgid "Mouse move up or down"
msgstr "เมาส์เลื่อนขึ้นหรือลง"
@@ -2592,7 +2592,7 @@ msgid "Ironing"
msgstr "รีดผิว"
msgid "Fuzzy skin"
-msgstr "ผิวฟัซซี"
+msgstr "ผิวฟัซซี (Fuzzy Skin)"
msgid "Extruders"
msgstr "ชุดดันเส้น"
@@ -2817,10 +2817,10 @@ msgid "current"
msgstr "ปัจจุบัน"
msgid "Scale to build volume"
-msgstr "ปรับขนาดเพื่อสร้างปริมาณ"
+msgstr "ปรับขนาดให้พอดีกับปริมาตรการพิมพ์"
msgid "Scale an object to fit the build volume"
-msgstr "ปรับขนาดวัตถุให้พอดีกับปริมาณงานสร้าง"
+msgstr "ปรับขนาดวัตถุให้พอดีกับปริมาตรการพิมพ์"
msgid "Flush Options"
msgstr "ตัวเลือกการไล่เส้น"
@@ -2898,10 +2898,10 @@ msgid "Change SVG source file, projection, size, ..."
msgstr "เปลี่ยนไฟล์ต้นฉบับ SVG, การฉายภาพ, ขนาด, ..."
msgid "Invalidate cut info"
-msgstr "ข้อมูลการตัดไม่ถูกต้อง"
+msgstr "ยกเลิกข้อมูลการตัด"
msgid "Add Primitive"
-msgstr "เพิ่มดั้งเดิม"
+msgstr "เพิ่มรูปทรงพื้นฐาน"
msgid "Add Handy models"
msgstr "เพิ่มรุ่นแฮนดี้"
@@ -3027,7 +3027,7 @@ msgid "Center"
msgstr "กึ่งกลาง"
msgid "Drop"
-msgstr "หยด"
+msgstr "วางลงฐานพิมพ์"
msgid "Edit Process Settings"
msgstr "แก้ไขการตั้งค่ากระบวนการ"
@@ -3182,7 +3182,7 @@ msgid "Switch to per-object setting mode to edit process settings of selected ob
msgstr "สลับไปที่โหมดการตั้งค่าต่ออ็อบเจ็กต์เพื่อแก้ไขการตั้งค่ากระบวนการของอ็อบเจ็กต์ที่เลือก"
msgid "Remove paint-on fuzzy skin"
-msgstr "ลบสีบนผิวที่คลุมเครือ"
+msgstr "ลบการระบายสีผิวฟัซซี"
# AI Translated
msgid "Delete Settings"
@@ -3242,7 +3242,7 @@ msgid "Add layers"
msgstr "เพิ่มเลเยอร์"
msgid "Cut Connectors information"
-msgstr "ตัดข้อมูลตัวเชื่อมต่อ"
+msgstr "ข้อมูลตัวเชื่อมสำหรับการตัด"
msgid "Object manipulation"
msgstr "การจัดการวัตถุ"
@@ -3279,7 +3279,7 @@ msgid "Layer"
msgstr "เลเยอร์"
msgid "Selection conflicts"
-msgstr "ข้อขัดแย้งในการคัดเลือก"
+msgstr "การเลือกขัดแย้งกัน"
msgid "If the first selected item is an object, the second should also be an object."
msgstr "หากรายการแรกที่เลือกเป็นวัตถุ รายการที่สองก็ควรเป็นวัตถุด้วย"
@@ -3390,7 +3390,7 @@ msgid "Plate"
msgstr "ฐานพิมพ์"
msgid "Brim"
-msgstr "ขอบยึดชิ้นงาน"
+msgstr "ขอบยึดชิ้นงาน (Brim)"
msgid "Object/Part Settings"
msgstr "การตั้งค่าวัตถุ/ชิ้นส่วน"
@@ -4720,6 +4720,23 @@ msgstr "อุณหภูมิห้องพิมพ์ปัจจุบั
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "อุณหภูมิห้องพิมพ์ต่ำสุด (%d℃) สูงกว่าอุณหภูมิห้องพิมพ์เป้าหมาย (%d℃) ค่าต่ำสุดคือเกณฑ์ที่การพิมพ์จะเริ่มต้นในขณะที่ห้องพิมพ์ยังคงร้อนขึ้นไปสู่เป้าหมาย จึงไม่ควรเกินค่าเป้าหมาย ระบบจะจำกัดค่าให้เท่ากับเป้าหมาย"
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "ความสูงเลเยอร์น้อยเกินไป จะถูกตั้งค่าเป็นค่าต่ำสุด (%g mm)"
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "ความสูงเลเยอร์อยู่นอกขีดจำกัดที่ตั้งไว้ใน การตั้งค่าเครื่องพิมพ์ -> ชุดดันเส้น -> การจำกัดความสูงของเลเยอร์ ซึ่งอาจทำให้เกิดปัญหาคุณภาพการพิมพ์"
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "ปรับเป็นค่าขีดจำกัด (%g mm) โดยอัตโนมัติหรือไม่?"
+
+msgid "Adjust"
+msgstr "ปรับ"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4786,7 +4803,7 @@ msgid ""
"YES - Keep Prime Tower\n"
"NO - Keep Adaptive Layer Height and Independent Support Layer Height"
msgstr ""
-"ไพรม์ทาวเวอร์ไม่ทำงานเมื่อเปิดใช้งาน Adaptive Layer Height หรือ Independent ส่วนรองรับ Layer Height\n"
+"Prime Tower ไม่ทำงานเมื่อเปิดใช้งาน Adaptive Layer Height หรือ Independent ส่วนรองรับ Layer Height\n"
"คุณต้องการเก็บอันไหน?\n"
"ใช่ - เก็บ Prime Tower ไว้\n"
"ไม่ - คงความสูงของเลเยอร์แบบปรับได้และความสูงของเลเยอร์รองรับที่เป็นอิสระ"
@@ -4797,7 +4814,7 @@ msgid ""
"YES - Keep Prime Tower\n"
"NO - Keep Adaptive Layer Height"
msgstr ""
-"ไพรม์ทาวเวอร์ไม่ทำงานเมื่อเปิด Adaptive Layer Height\n"
+"Prime Tower ไม่ทำงานเมื่อเปิด Adaptive Layer Height\n"
"คุณต้องการเก็บอันไหน?\n"
"ใช่ - เก็บ Prime Tower ไว้\n"
"ไม่ - คงความสูงของเลเยอร์แบบปรับได้"
@@ -4808,7 +4825,7 @@ msgid ""
"YES - Keep Prime Tower\n"
"NO - Keep Independent Support Layer Height"
msgstr ""
-"ไพร์มทาวเวอร์ไม่ทำงานเมื่อเปิดความสูงของเลเยอร์รองรับอิสระ\n"
+"Prime Tower ไม่ทำงานเมื่อเปิดความสูงของเลเยอร์รองรับอิสระ\n"
"คุณต้องการเก็บอันไหน?\n"
"ใช่ - เก็บ Prime Tower ไว้\n"
"ไม่ - รักษาความสูงของชั้นรองรับที่เป็นอิสระ"
@@ -4840,6 +4857,13 @@ msgstr ""
"ใช่ - เปิดใช้งาน Arachne Wall Generator\n"
"ไม่ - ปิดการใช้งาน Arachne Wall Generator และตั้งค่าโหมด [Displacement] ของ Fuzzy Skin"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "รัศมีของหูขอบยึดชิ้นงาน"
+
+msgid "Brim width"
+msgstr "ความกว้าง ขอบยึดชิ้นงาน"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "โหมดเกลียวจะทำงานเฉพาะเมื่อลูปติดผนังเป็น 1, ปิดใช้งานส่วนรองรับ, การตรวจจับการจับตัวเป็นก้อนโดยการตรวจวัดถูกปิดใช้งาน, ชั้นเปลือกด้านบนเป็น 0, ความหนาแน่นของไส้ในแบบกระจายเป็น 0 และประเภทไทม์แลปส์เป็นแบบดั้งเดิม"
@@ -5094,6 +5118,14 @@ msgstr "ไม่สามารถสร้าง cali G-code"
msgid "Calibration error"
msgstr "ข้อผิดพลาดในการสอบเทียบ"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "เครื่องพิมพ์นี้ไม่ได้ตั้งค่าฮาร์ดแวร์ที่ตัวควบคุมนี้ต้องการ"
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "ตัวควบคุมนี้ไม่รองรับบนเครื่องพิมพ์นี้"
+
# AI Translated
msgid "Network unavailable"
msgstr "เครือข่ายไม่พร้อมใช้งาน"
@@ -5381,7 +5413,7 @@ msgid "Pressure Advance"
msgstr "แรงดันล่วงหน้า (Pressure Advance)"
msgid "Noop"
-msgstr "นะ"
+msgstr "ไม่มีการดำเนินการ"
msgid "Retract"
msgstr "ดึงกลับ"
@@ -5405,7 +5437,7 @@ msgid "Travel"
msgstr "เดินหัวเปล่า"
msgid "Wipe"
-msgstr "เช็ดหัวฉีด"
+msgstr "เช็ดหัวฉีด (Wipe)"
msgid "Extrude"
msgstr "ฉีดเส้น"
@@ -5441,7 +5473,7 @@ msgid "Support interface"
msgstr "ผิวสัมผัสส่วนรองรับ"
msgid "Prime tower"
-msgstr "ทาวเวอร์ไล่เส้น"
+msgstr "Prime Tower"
msgid "Bottom surface"
msgstr "ผิวด้านล่าง"
@@ -5486,7 +5518,7 @@ msgid "Jerk: "
msgstr "เจิร์ก: "
msgid "PA: "
-msgstr "พ่อ:"
+msgstr "PA: "
msgid "mm/s"
msgstr "มม./วินาที"
@@ -5552,7 +5584,7 @@ msgid "Tips:"
msgstr "เคล็ดลับ:"
msgid "Current grouping of slice result is not optimal."
-msgstr "การจัดกลุ่มผลลัพธ์การแบ่งส่วนในปัจจุบันไม่เหมาะสมที่สุด"
+msgstr "การจัดกลุ่มผลการสไลซ์ปัจจุบันยังไม่เหมาะสม"
#, boost-format
msgid "Increase %1%g filament and %2% changes compared to optimal grouping."
@@ -5585,7 +5617,7 @@ msgid "Regroup filament"
msgstr "จัดกลุ่มเส้นพลาสติกใหม่"
msgid "up to"
-msgstr "ขึ้นไป"
+msgstr "สูงสุด"
msgid "above"
msgstr "ข้างบน"
@@ -5642,7 +5674,7 @@ msgid "Filament change times"
msgstr "จำนวนครั้งที่เปลี่ยนเส้น"
msgid "Tool changes"
-msgstr "การเปลี่ยนแปลงเครื่องมือ"
+msgstr "การเปลี่ยนเครื่องมือ"
msgid "Color change"
msgstr "เปลี่ยนสี"
@@ -5673,7 +5705,7 @@ msgid "Model printing time"
msgstr "ระยะเวลาในการพิมพ์โมเดล"
msgid "Show stealth mode"
-msgstr "แสดงโหมดซ่อนตัว"
+msgstr "แสดงโหมดเงียบ"
msgid "Show normal mode"
msgstr "แสดงโหมดปกติ"
@@ -5690,10 +5722,10 @@ msgid ""
"Please solve the problem by moving it totally on or off the plate, and confirming that the height is within the build volume."
msgstr ""
"วัตถุวางอยู่เหนือขอบเขตของแผ่นหรือสูงเกินขีดจำกัดความสูง\n"
-"โปรดแก้ไขปัญหาด้วยการเลื่อนเข้าหรือออกจากเพลตโดยสิ้นเชิง และยืนยันว่าความสูงอยู่ภายในปริมาตรงานประกอบ"
+"โปรดแก้ไขปัญหาด้วยการเลื่อนเข้าหรือออกจากเพลตโดยสิ้นเชิง และยืนยันว่าความสูงอยู่ภายในปริมาตรการพิมพ์"
msgid "Variable layer height"
-msgstr "ความสูงของชั้นตัวแปร"
+msgstr "ความสูงเลเยอร์แบบแปรผัน"
msgid "Adaptive"
msgstr "ปรับตัวได้"
@@ -5743,7 +5775,7 @@ msgid "Following objects are laid over the boundary of plate or exceeds the heig
msgstr "วัตถุต่อไปนี้วางอยู่เหนือขอบเขตของแผ่นหรือสูงเกินขีดจำกัดความสูง:\n"
msgid "Please solve the problem by moving it totally on or off the plate, and confirming that the height is within the build volume.\n"
-msgstr "โปรดแก้ไขปัญหาด้วยการเลื่อนเข้าหรือออกจากเพลตโดยสิ้นเชิง และยืนยันว่าความสูงอยู่ภายในปริมาตรงานประกอบ\n"
+msgstr "โปรดแก้ไขปัญหาด้วยการเลื่อนเข้าหรือออกจากเพลตโดยสิ้นเชิง และยืนยันว่าความสูงอยู่ภายในปริมาตรการพิมพ์\n"
#, c-format, boost-format
msgid "The position or size of some models exceeds the %s's printable range."
@@ -5783,7 +5815,7 @@ msgid "Optimize support interface area"
msgstr "ปรับพื้นที่อินเทอร์เฟซส่วนรองรับให้เหมาะสม"
msgid "Orient"
-msgstr "ตะวันออก"
+msgstr "จัดวางแนว"
msgid "Arrange options"
msgstr "ตัวเลือกจัดเรียง"
@@ -5929,7 +5961,7 @@ msgid "Paint Toolbar"
msgstr "แถบเครื่องมือสี"
msgid "Explosion Ratio"
-msgstr "อัตราส่วนการระเบิด"
+msgstr "ระดับการแยกชิ้นส่วน"
msgid "Section View"
msgstr "มุมมองส่วน"
@@ -5952,7 +5984,7 @@ msgstr "ปริมาณ:"
msgid "Size:"
msgstr "ขนาด:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "พบความขัดแย้งของเส้นทางรหัส G ที่เลเยอร์ %d, Z = %.2lfmm โปรดแยกวัตถุที่ขัดแย้งกันให้ไกลออกไป (%s <-> %s)"
@@ -6002,7 +6034,7 @@ msgid "PLA and PETG filaments detected in the mixture. Adjust parameters accordi
msgstr "ตรวจพบเส้นพลาสติก PLA และ PETG ในส่วนผสม ปรับพารามิเตอร์ตาม Wiki เพื่อรับรองคุณภาพการพิมพ์"
msgid "The prime tower extends beyond the plate boundary."
-msgstr "หอคอยหลักขยายออกไปเกินขอบเขตแผ่นเปลือกโลก"
+msgstr "Prime Tower ยื่นออกนอกขอบเขตของเพลตพิมพ์"
msgid "Partial flushing volume set to 0. Multi-color printing may cause color mixing in models. Please readjust flushing settings."
msgstr "ตั้งค่าปริมาณการไล่เส้นบางส่วนเป็น 0 การพิมพ์หลายสีอาจทำให้เกิดการผสมสีในรุ่นต่างๆ โปรดปรับการตั้งค่าการไล่เส้นใหม่"
@@ -6133,6 +6165,10 @@ msgstr "หลายอุปกรณ์"
msgid "Project"
msgstr "โปรเจกต์"
+# AI Translated
+msgid "Device (Web)"
+msgstr "อุปกรณ์ (เว็บ)"
+
msgid "Yes"
msgstr "ใช่"
@@ -7953,7 +7989,7 @@ msgid "Enabling traditional timelapse photography may cause surface imperfection
msgstr "การเปิดใช้งานการถ่ายภาพไทม์แลปส์แบบดั้งเดิมอาจทำให้เกิดความไม่สมบูรณ์ของพื้นผิวได้ ขอแนะนำให้เปลี่ยนเป็นโหมดราบรื่น"
msgid "Smooth mode for timelapse is enabled, but the prime tower is off, which may cause print defects. Please enable the prime tower, re-slice and print again."
-msgstr "เปิดใช้งานโหมด Smooth สำหรับไทม์แลปส์แล้ว แต่ไพรม์ทาวเวอร์ปิดอยู่ ซึ่งอาจทำให้เกิดข้อบกพร่องในการพิมพ์ โปรดเปิดใช้งานไพร์มทาวเวอร์ สไลซ์ใหม่และพิมพ์อีกครั้ง"
+msgstr "เปิดใช้งานโหมด Smooth สำหรับไทม์แลปส์แล้ว แต่ Prime Tower ปิดอยู่ ซึ่งอาจทำให้เกิดข้อบกพร่องในการพิมพ์ โปรดเปิดใช้งาน Prime Tower สไลซ์ใหม่และพิมพ์อีกครั้ง"
msgid "Expand sidebar"
msgstr "ขยายแถบด้านข้าง"
@@ -8199,21 +8235,21 @@ msgstr "ไม่ได้เลือกไดเรกทอรีสำหร
msgid "Replaced with 3D files from directory:\n"
msgstr "แทนที่ด้วยไฟล์ 3D จากไดเรกทอรี:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ ข้าม %1%: ไฟล์เดียวกัน\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ ข้าม %s: ไฟล์เดียวกัน\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ ข้าม %1%: ไม่มีไฟล์อยู่\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ ข้าม %s: ไม่มีไฟล์อยู่\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ ข้าม %1%: ไม่สามารถแทนที่ได้\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ ข้าม %s: ไม่สามารถแทนที่ได้\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔แทนที่ %1%\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔แทนที่ %s\n"
msgid "Replaced volumes"
msgstr "ปริมาณที่ถูกแทนที่"
@@ -8945,6 +8981,18 @@ msgstr "เมื่อเปิดใช้งานตัวเลือกน
msgid "Pop up to select filament grouping mode"
msgstr "ปรากฏขึ้นเพื่อเลือกโหมดการจัดกลุ่มเส้นพลาสติก"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "หน้าปลั๊กอินที่แสดง"
+
+# AI Translated
+msgid "pages"
+msgstr "หน้า"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "จำนวนหน้าปลั๊กอินที่แสดงเป็นแท็บถาวร ก่อนที่หน้าที่เหลือจะถูกยุบรวมเป็นเมนูแบบเลื่อนลงในแท็บสุดท้าย"
+
msgid "Behaviour"
msgstr "พฤติกรรม"
@@ -9299,6 +9347,18 @@ msgstr "แสดงค่าที่ตั้งไว้ล่วงหน้
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "แสดงค่าที่ตั้งไว้ล่วงหน้าที่ไม่เข้ากันหรือไม่รองรับในรายการเลือกเครื่องพิมพ์และเส้นพลาสติก ไม่สามารถเลือกค่าที่ตั้งไว้ล่วงหน้าเหล่านี้ได้"
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(ทดลอง) ใช้เอเจนต์เครื่องพิมพ์แทนโฮสต์การพิมพ์"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"ส่งงานพิมพ์ของเครื่องพิมพ์ที่ไม่ใช่ Bambu ผ่านเอเจนต์ปลั๊กอินของเครื่องพิมพ์ แทนการอัพโหลดไปยังโฮสต์การพิมพ์แบบเดิม\n"
+"เมื่อปิดใช้ OrcaSlicer จะใช้พฤติกรรมโฮสต์การพิมพ์แบบเดิม"
+
# AI Translated
msgid "Experimental Features"
msgstr "ฟีเจอร์ทดลอง"
@@ -9311,7 +9371,7 @@ msgid ""
"Attempt to keep painted features (color/seam/support/fuzzy etc.) after changing the object mesh (such as cut/reload from disk/simplify/fix etc.)\n"
"Highly experimental! Slow and may create artifact."
msgstr ""
-"พยายามคงคุณสมบัติการทาสีไว้ (สี/รอยตะเข็บ/ส่วนรองรับ/คลุมเครือ ฯลฯ) หลังจากเปลี่ยนตาข่ายวัตถุ (เช่น ตัด/โหลดซ้ำจากดิสก์/ลดความซับซ้อน/แก้ไข ฯลฯ)\n"
+"พยายามคงคุณสมบัติการทาสีไว้ (สี/รอยตะเข็บ/ส่วนรองรับ/ผิวฟัซซี ฯลฯ) หลังจากเปลี่ยนตาข่ายวัตถุ (เช่น ตัด/โหลดซ้ำจากดิสก์/ลดความซับซ้อน/แก้ไข ฯลฯ)\n"
"น่าทดลองมาก! ช้าและอาจสร้างสิ่งประดิษฐ์"
msgid "Allow Abnormal Storage"
@@ -9563,9 +9623,25 @@ msgstr "พรีเซ็ตผู้ใช้"
msgid "Preset Inside Project"
msgstr "พรีเซ็ตภายในโปรเจ็กต์"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "คัดลอกค่าที่สืบทอดมาจากพรีเซ็ตแม่ทั้งหมดมาไว้ในพรีเซ็ตนี้ และตัดความสัมพันธ์กับพรีเซ็ตแม่ พรีเซ็ตที่เข้ากันได้กับพรีเซ็ตแม่เท่านั้นอาจไม่ได้รับการรองรับอีกต่อไป"
+
msgid "Detach from parent"
msgstr "แยกออกจากพรีเซ็ตแม่"
+# AI Translated
+msgid "Unique preset"
+msgstr "พรีเซ็ตอิสระ"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "พรีเซ็ตแม่"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "พรีเซ็ตนี้ไม่ได้สืบทอดมาจากพรีเซ็ตอื่น"
+
msgid "Name is unavailable."
msgstr "ชื่อไม่พร้อมใช้งาน"
@@ -10241,25 +10317,25 @@ msgstr "คลิกเพื่อรีเซ็ตการตั้งค่
# AI Translated
msgid "Prime tower is required for nozzle changing. There may be flaws on the model without prime tower. Are you sure you want to disable prime tower?"
-msgstr "จำเป็นต้องใช้ทาวเวอร์ไล่เส้นสำหรับการเปลี่ยนหัวฉีด อาจเกิดข้อบกพร่องบนโมเดลหากไม่มีทาวเวอร์ไล่เส้น คุณแน่ใจหรือไม่ว่าต้องการปิดทาวเวอร์ไล่เส้น?"
+msgstr "จำเป็นต้องใช้ Prime Tower สำหรับการเปลี่ยนหัวฉีด อาจเกิดข้อบกพร่องบนโมเดลหากไม่มี Prime Tower คุณแน่ใจหรือไม่ว่าต้องการปิด Prime Tower?"
msgid "A prime tower is required for smooth timelapse mode. There may be flaws on the model without a prime tower. Are you sure you want to disable the prime tower?"
-msgstr "โหมดไทม์แลปส์แบบราบรื่นต้องใช้ไพรม์ทาวเวอร์ หากไม่มีไพรม์ทาวเวอร์อาจเกิดตำหนิบนโมเดลได้ คุณแน่ใจหรือไม่ว่าต้องการปิดไพรม์ทาวเวอร์?"
+msgstr "จำเป็นต้องใช้ Prime Tower สำหรับโหมดไทม์แลปส์แบบราบรื่น หากไม่มี Prime Tower อาจเกิดตำหนิบนโมเดลได้ คุณแน่ใจหรือไม่ว่าต้องการปิด Prime Tower?"
msgid "A prime tower is required for clumping detection. There may be flaws on the model without prime tower. Are you sure you want to disable prime tower?"
-msgstr "ต้องใช้ไพรม์ทาวเวอร์ในการตรวจจับการจับกันเป็นก้อน อาจมีตำหนิตรงรุ่นที่ไม่มีไพร์มทาวเวอร์ คุณแน่ใจหรือไม่ว่าต้องการปิดการใช้งานไพร์มทาวเวอร์?"
+msgstr "จำเป็นต้องใช้ Prime Tower ในการตรวจจับการจับกันเป็นก้อน อาจมีตำหนิบนโมเดลที่ไม่มี Prime Tower คุณแน่ใจหรือไม่ว่าต้องการปิด Prime Tower?"
msgid "Enabling both precise Z height and the prime tower may cause slicing errors. Do you still want to enable?"
-msgstr "การเปิดใช้งานทั้งความสูง Z ที่แม่นยำและหอคอยหลักอาจทำให้เกิดข้อผิดพลาดในการแบ่งส่วน คุณยังต้องการเปิดใช้งานหรือไม่?"
+msgstr "การเปิดใช้งานทั้งความสูง Z ที่แม่นยำและ Prime Tower อาจทำให้เกิดข้อผิดพลาดในการแบ่งส่วน คุณยังต้องการเปิดใช้งานหรือไม่?"
msgid "A prime tower is required for clumping detection. There may be flaws on the model without prime tower. Do you still want to enable clumping detection?"
-msgstr "ต้องใช้ไพรม์ทาวเวอร์ในการตรวจจับการจับกันเป็นก้อน อาจมีตำหนิตรงรุ่นที่ไม่มีไพร์มทาวเวอร์ คุณยังต้องการเปิดใช้งานการตรวจจับการจับกันเป็นก้อนหรือไม่"
+msgstr "จำเป็นต้องใช้ Prime Tower ในการตรวจจับการจับกันเป็นก้อน อาจมีตำหนิบนโมเดลที่ไม่มี Prime Tower คุณยังต้องการเปิดใช้งานการตรวจจับการจับกันเป็นก้อนหรือไม่"
msgid "Enabling both precise Z height and the prime tower may cause slicing errors. Do you still want to enable precise Z height?"
-msgstr "การเปิดใช้งานทั้งความสูง Z ที่แม่นยำและหอคอยหลักอาจทำให้เกิดข้อผิดพลาดในการแบ่งส่วน คุณยังต้องการเปิดใช้งานความสูง Z ที่แม่นยำหรือไม่"
+msgstr "การเปิดใช้งานทั้งความสูง Z ที่แม่นยำและ Prime Tower อาจทำให้เกิดข้อผิดพลาดในการแบ่งส่วน คุณยังต้องการเปิดใช้งานความสูง Z ที่แม่นยำหรือไม่"
msgid "A prime tower is required for smooth timelapse mode. There may be flaws on the model without prime tower. Do you want to enable the prime tower?"
-msgstr "โหมดไทม์แลปส์แบบราบรื่นต้องใช้ไพรม์ทาวเวอร์ หากไม่มีไพรม์ทาวเวอร์อาจเกิดตำหนิบนโมเดลได้ ต้องการเปิดใช้ไพรม์ทาวเวอร์หรือไม่?"
+msgstr "จำเป็นต้องใช้ Prime Tower สำหรับโหมดไทม์แลปส์แบบราบรื่น หากไม่มี Prime Tower อาจเกิดตำหนิบนโมเดลได้ ต้องการเปิดใช้ Prime Tower หรือไม่?"
msgid "Still print by object?"
msgstr "ยังคงพิมพ์ตามวัตถุใช่ไหม"
@@ -10305,22 +10381,6 @@ msgstr "คุณแน่ใจหรือไม่ว่าต้องกา
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "โดยทั่วไปรูปแบบไส้ในได้รับการออกแบบให้รองรับการหมุนโดยอัตโนมัติเพื่อให้แน่ใจว่าการพิมพ์ถูกต้องและบรรลุผลตามที่ต้องการ (เช่น Gyroid, ลูกบาศก์) การหมุนรูปแบบ ไส้ใน แบบกระจัดกระจายในปัจจุบันอาจทำให้ส่วนรองรับไม่เพียงพอ โปรดดำเนินการด้วยความระมัดระวังและตรวจสอบปัญหาการพิมพ์ที่อาจเกิดขึ้นอย่างละเอียด คุณแน่ใจหรือไม่ว่าต้องการเปิดใช้งานตัวเลือกนี้"
-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 height limits, this may cause printing quality issues."
-msgstr "ความสูงของเลเยอร์เกินขีดจำกัดในการตั้งค่าเครื่องพิมพ์ -> ชุดดันเส้น -> ขีดจำกัดความสูงของเลเยอร์ ซึ่งอาจทำให้เกิดปัญหาคุณภาพการพิมพ์"
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "ปรับเป็นช่วงที่ตั้งไว้อัตโนมัติ?\n"
-
-msgid "Adjust"
-msgstr "ปรับ"
-
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."
msgstr "คุณลักษณะการทดลอง: การดึงกลับและตัดเส้นพลาสติกออกในระยะห่างที่มากขึ้นระหว่างการเปลี่ยนเส้นพลาสติกเพื่อลดการไล่เส้น แม้ว่าจะสามารถลดการไล่เส้นได้อย่างเห็นได้ชัด แต่ก็อาจเพิ่มความเสี่ยงของการอุดตันของหัวฉีดหรือภาวะแทรกซ้อนในการพิมพ์อื่นๆ อีกด้วย"
@@ -10411,7 +10471,7 @@ msgid "Z contouring"
msgstr "รูปร่าง Z"
msgid "Wall generator"
-msgstr "เครื่องกำเนิดไฟฟ้าติดผนัง"
+msgstr "ตัวสร้างผนัง"
msgid "Walls and surfaces"
msgstr "ผนังและพื้นผิว"
@@ -10477,7 +10537,7 @@ msgid "G-code output"
msgstr "เอาต์พุตรหัส G"
msgid "Change extrusion role G-code"
-msgstr "เปลี่ยนบทบาทการอัดขึ้นรูป G-code"
+msgstr "เปลี่ยนประเภทการพิมพ์ G-code"
msgid "Post-processing Scripts"
msgstr "สคริปต์หลังการประมวลผล"
@@ -10513,6 +10573,9 @@ msgstr "พบคีย์เวิร์ดที่สงวนไว้"
msgid "Setting Overrides"
msgstr "การตั้งค่าการแทนที่"
+msgid "Retraction when switching material"
+msgstr "การร่นกลับเมื่อเปลี่ยนวัสดุ"
+
msgid "Basic information"
msgstr "ข้อมูลพื้นฐาน"
@@ -10616,7 +10679,7 @@ msgid "Filament end G-code"
msgstr "G-code สิ้นสุดของเส้นพลาสติก"
msgid "Wipe tower parameters"
-msgstr "พารามิเตอร์ทาวเวอร์เช็ดหัวฉีด"
+msgstr "พารามิเตอร์ Wipe Tower"
msgid "Multi Filament"
msgstr "เส้นพลาสติกแบบหลากหลาย"
@@ -10642,6 +10705,12 @@ msgstr "โปรไฟล์กระบวนการที่เข้าก
msgid "Printable space"
msgstr "พื้นที่ที่สามารถพิมพ์ได้"
+msgid "Printer Agent"
+msgstr "ตัวแทนเครื่องพิมพ์"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "เลือกการใช้งานตัวแทนเครือข่ายสำหรับการสื่อสารของเครื่องพิมพ์ ตัวแทนที่มีอยู่จะได้รับการลงทะเบียนเมื่อเริ่มต้น"
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10753,7 +10822,7 @@ msgid "Nozzle diameter"
msgstr "เส้นผ่านศูนย์กลางหัวฉีด"
msgid "Wipe tower"
-msgstr "ทาวเวอร์เช็ดหัวฉีด"
+msgstr "Wipe Tower"
msgid "Single extruder multi-material parameters"
msgstr "พารามิเตอร์วัสดุหลายชุดดันเส้นเดี่ยว"
@@ -10767,9 +10836,6 @@ msgstr "การจำกัดความสูงของเลเยอร
msgid "Z-Hop"
msgstr "ยกแกน Z"
-msgid "Retraction when switching material"
-msgstr "การร่นกลับเมื่อเปลี่ยนวัสดุ"
-
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
"\n"
@@ -10780,7 +10846,7 @@ msgstr ""
"ต้องการตั้งค่าเป็น 100% เพื่อเปิดใช้งาน Firmware Retraction หรือไม่?"
msgid "Firmware Retraction"
-msgstr "การเพิกถอนเฟิร์มแวร์"
+msgstr "การดึงกลับด้วยเฟิร์มแวร์ (Firmware Retraction)"
msgid "Switching to a printer with different extruder types or numbers will discard or reset changes to extruder or multi-nozzle-related parameters."
msgstr "การเปลี่ยนไปใช้เครื่องพิมพ์ที่มีประเภทหรือหมายเลขชุดดันเส้นที่แตกต่างกันจะยกเลิกหรือรีเซ็ตการเปลี่ยนแปลงในชุดดันเส้นหรือพารามิเตอร์ที่เกี่ยวข้องกับหัวฉีดหลายตัว"
@@ -11596,7 +11662,7 @@ msgid "Gizmo mesh boolean"
msgstr "Gizmo mesh บูลีน"
msgid "Gizmo FDM paint-on fuzzy skin"
-msgstr "Gizmo FDM เพ้นท์บนผิวที่คลุมเครือ"
+msgstr "Gizmo FDM เพ้นท์ผิวฟัซซี"
msgid "Gizmo SLA support points"
msgstr "จุดส่วนรองรับ Gizmo SLA"
@@ -11614,7 +11680,7 @@ msgid "Gizmo assemble"
msgstr "กิสโมประกอบ"
msgid "Gizmo brim ears"
-msgstr "กิสโม่ขอบหู"
+msgstr "Gizmo หูขอบยึดชิ้นงาน (Brim Ears)"
msgid "Zoom in"
msgstr "ซูมเข้า"
@@ -11936,10 +12002,10 @@ msgid "Parts of the object at these heights may be too thin or the object may ha
msgstr "บางส่วนของวัตถุที่ความสูงเหล่านี้อาจบางเกินไป หรือวัตถุอาจมี mesh ผิดปกติ"
msgid "Process change extrusion role G-code"
-msgstr "กระบวนการเปลี่ยนบทบาทการอัดขึ้นรูป G-code"
+msgstr "กระบวนการเปลี่ยนประเภทการพิมพ์ G-code"
msgid "Filament change extrusion role G-code"
-msgstr "เส้นพลาสติกเปลี่ยนบทบาทการอัดขึ้นรูป G-code"
+msgstr "เส้นพลาสติกเปลี่ยนประเภทการพิมพ์ G-code"
msgid "No object can be printed. It may be too small."
msgstr "ไม่สามารถพิมพ์วัตถุได้ อาจจะเล็กเกินไป"
@@ -12100,7 +12166,7 @@ msgid " is too close to clumping detection area, there may be collisions when pr
msgstr "อยู่ใกล้พื้นที่การตรวจจับการจับตัวกันมากเกินไป อาจเกิดการชนกันเมื่อพิมพ์"
msgid "Prime Tower"
-msgstr "ทาวเวอร์ไล่เส้น"
+msgstr "Prime Tower"
msgid " is too close to others, and collisions may be caused.\n"
msgstr "อยู่ใกล้ผู้อื่นมากเกินไปและอาจเกิดการชนได้\n"
@@ -12111,6 +12177,10 @@ msgstr "อยู่ใกล้เขตหวงห้ามมากเกิ
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr "อยู่ใกล้พื้นที่การตรวจจับการจับตัวกันมากเกินไป และจะเกิดการชนกัน\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr "อยู่นอกพื้นที่การพิมพ์บางส่วน จึงไม่สามารถพิมพ์ได้\n"
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "อุณหภูมิหัวฉีดที่เลือกเข้ากันไม่ได้ อุณหภูมิหัวฉีดของเส้นพลาสติกแต่ละเส้นต้องอยู่ในช่วงอุณหภูมิหัวฉีดที่แนะนำของเส้นพลาสติกอื่นๆ มิฉะนั้นอาจเกิดการอุดตันของหัวฉีดหรือเครื่องพิมพ์เสียหายได้"
@@ -12130,10 +12200,10 @@ msgid "Clumping detection is not supported when \"by object\" sequence is enable
msgstr "ไม่รองรับการตรวจจับการจับกันเป็นก้อนเมื่อเปิดใช้งานลำดับ \"ตามวัตถุ\""
msgid "Enabling both precise Z height and the prime tower may cause slicing errors."
-msgstr "การเปิดใช้งานทั้งความสูง Z ที่แม่นยำและหอคอยหลักอาจทำให้เกิดข้อผิดพลาดในการแบ่งส่วน"
+msgstr "การเปิดใช้งานทั้งความสูง Z ที่แม่นยำและ Prime Tower อาจทำให้เกิดข้อผิดพลาดในการแบ่งส่วน"
msgid "A prime tower is required for clumping detection; otherwise, there may be flaws on the model."
-msgstr "จำเป็นต้องใช้หอคอยหลักในการตรวจจับการจับกันเป็นก้อน มิฉะนั้นอาจมีข้อบกพร่องในแบบจำลอง"
+msgstr "จำเป็นต้องใช้ Prime Tower ในการตรวจจับการจับกันเป็นก้อน มิฉะนั้นอาจมีข้อบกพร่องในแบบจำลอง"
msgid "Please select \"By object\" print sequence to print multiple objects in spiral vase mode."
msgstr "โปรดเลือกลำดับการพิมพ์ \"ตามวัตถุ\" เพื่อพิมพ์วัตถุหลายชิ้นในโหมดแจกันเกลียว"
@@ -12143,15 +12213,15 @@ msgstr "โหมดแจกันเกลียวจะไม่ทำงา
#, boost-format
msgid "While the object %1% itself fits the build volume, it exceeds the maximum build volume height because of material shrinkage compensation."
-msgstr "แม้ว่าวัตถุ %1% จะพอดีกับปริมาตรการสร้าง แต่วัตถุนั้นเกินความสูงของปริมาตรการสร้างสูงสุดเนื่องจากการชดเชยการหดตัวของวัสดุ"
+msgstr "แม้ว่าวัตถุ %1% จะพอดีกับปริมาตรการพิมพ์ แต่วัตถุนั้นเกินความสูงของปริมาตรการพิมพ์สูงสุดเนื่องจากการชดเชยการหดตัวของวัสดุ"
#, boost-format
msgid "The object %1% exceeds the maximum build volume height."
-msgstr "วัตถุ %1% เกินความสูงของปริมาตรบิลด์สูงสุด"
+msgstr "วัตถุ %1% เกินความสูงของปริมาตรการพิมพ์สูงสุด"
#, boost-format
msgid "While the object %1% itself fits the build volume, its last layer exceeds the maximum build volume height."
-msgstr "แม้ว่าออบเจ็กต์ %1% จะพอดีกับปริมาณการสร้าง แต่เลเยอร์สุดท้ายก็เกินความสูงของปริมาตรการสร้างสูงสุด"
+msgstr "แม้ว่าวัตถุ %1% จะพอดีกับปริมาตรการพิมพ์ แต่วัตถุนั้นเกินความสูงของปริมาตรการพิมพ์สูงสุด"
msgid "You might want to reduce the size of your model or change current print settings and retry."
msgstr "คุณอาจต้องการลดขนาดแบบจำลองของคุณหรือเปลี่ยนการตั้งค่าการพิมพ์ปัจจุบันแล้วลองอีกครั้ง"
@@ -12160,40 +12230,40 @@ msgid "Variable layer height is not supported with Organic supports."
msgstr "ไม่รองรับความสูงของเลเยอร์ที่แปรผันได้ด้วยการรองรับแบบออร์แกนิก"
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
-msgstr "เส้นผ่านศูนย์กลางของหัวฉีดที่แตกต่างกันและเส้นผ่านศูนย์กลางของเส้นพลาสติกที่แตกต่างกันอาจทำงานได้ไม่ดีนักเมื่อเปิดใช้งานไพรม์ทาวเวอร์ ยังเป็นการทดลองอยู่มาก ดังนั้นโปรดดำเนินการด้วยความระมัดระวัง"
+msgstr "เส้นผ่านศูนย์กลางของหัวฉีดที่แตกต่างกันและเส้นผ่านศูนย์กลางของเส้นพลาสติกที่แตกต่างกันอาจทำงานได้ไม่ดีนักเมื่อเปิดใช้งาน Prime Tower ยังเป็นการทดลองอยู่มาก ดังนั้นโปรดดำเนินการด้วยความระมัดระวัง"
msgid "The Wipe Tower is currently only supported with the relative extruder addressing (use_relative_e_distances=1)."
msgstr "ขณะนี้ Wipe Tower รองรับการกำหนดที่อยู่ของชุดดันเส้นแบบสัมพันธ์เท่านั้น (use_relative_e_distances=1)"
msgid "Ooze prevention is only supported with the wipe tower when 'single_extruder_multi_material' is off."
-msgstr "รองรับการป้องกันน้ำซึมด้วยหอเช็ดเมื่อปิด 'single_extruder_multi_material' เท่านั้น"
+msgstr "รองรับการป้องกันน้ำซึมด้วย Wipe Tower เมื่อปิด 'single_extruder_multi_material' เท่านั้น"
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-code เท่านั้น"
+msgstr "ขณะนี้ Prime Tower รองรับเฉพาะรสชาติ Marlin, RepRap/Sprinter, RepRapFirmware และ Repetier G-code เท่านั้น"
msgid "A prime tower is not supported in “By object” print."
-msgstr "ไม่รองรับไพรม์ทาวเวอร์ในการพิมพ์ \"ตามวัตถุ\""
+msgstr "ไม่รองรับ Prime Tower ในการพิมพ์ \"ตามวัตถุ\""
msgid "A prime tower is not supported when adaptive layer height is on. It requires that all objects have the same layer height."
-msgstr "ไม่รองรับไพรม์ทาวเวอร์เมื่อเปิดความสูงของเลเยอร์แบบปรับได้ กำหนดให้วัตถุทั้งหมดมีความสูงของชั้นเท่ากัน"
+msgstr "ไม่รองรับ Prime Tower เมื่อเปิดความสูงของเลเยอร์แบบปรับได้ กำหนดให้วัตถุทั้งหมดมีความสูงของชั้นเท่ากัน"
msgid "A prime tower requires any “support gap” to be a multiple of layer height."
-msgstr "ไพรม์ทาวเวอร์ต้องการให้ “support gap” เป็นจำนวนเท่าของความสูงชั้น"
+msgstr "Prime Tower ต้องการให้ “support gap” เป็นจำนวนเท่าของความสูงชั้น"
msgid "A prime tower requires that all objects have the same layer height."
-msgstr "ไพรม์ทาวเวอร์ต้องการให้วัตถุทั้งหมดมีความสูงชั้นเท่ากัน"
+msgstr "Prime Tower ต้องการให้วัตถุทั้งหมดมีความสูงชั้นเท่ากัน"
msgid "A prime tower requires that all objects are printed over the same number of raft layers."
-msgstr "ไพรม์ทาวเวอร์ต้องการให้วัตถุทั้งหมดพิมพ์บนจำนวนชั้น raft เท่ากัน"
+msgstr "Prime Tower ต้องการให้วัตถุทั้งหมดพิมพ์บนจำนวนชั้น raft เท่ากัน"
msgid "The prime tower is only supported for multiple objects if they are printed with the same support_top_z_distance."
-msgstr "ไพรม์ทาวเวอร์รองรับวัตถุหลายชิ้นเท่านั้นหากพิมพ์ด้วย support_top_z_distance เท่ากัน"
+msgstr "Prime Tower รองรับวัตถุหลายชิ้นเท่านั้นหากพิมพ์ด้วย support_top_z_distance เท่ากัน"
msgid "A prime tower requires that all objects are sliced with the same layer height."
-msgstr "ไพรม์ทาวเวอร์ต้องการให้วัตถุทั้งหมดถูกสไลซ์ด้วยความสูงชั้นเท่ากัน"
+msgstr "Prime Tower ต้องการให้วัตถุทั้งหมดถูกสไลซ์ด้วยความสูงชั้นเท่ากัน"
msgid "The prime tower is only supported if all objects have the same variable layer height."
-msgstr "ไพรม์ทาวเวอร์ได้รับส่วนรองรับก็ต่อเมื่อวัตถุทั้งหมดมีความสูงของเลเยอร์ที่แปรผันเท่ากัน"
+msgstr "Prime Tower ได้รับส่วนรองรับก็ต่อเมื่อวัตถุทั้งหมดมีความสูงของเลเยอร์ที่แปรผันเท่ากัน"
msgid "One or more object were assigned an extruder that the printer does not have."
msgstr "วัตถุอย่างน้อยหนึ่งชิ้นถูกกำหนดให้เป็นชุดดันเส้นที่เครื่องพิมพ์ไม่มี"
@@ -12208,7 +12278,7 @@ msgid "Printing with multiple extruders of differing nozzle diameters. If suppor
msgstr "การพิมพ์ด้วยชุดดันเส้นหลายเครื่องที่มีเส้นผ่านศูนย์กลางหัวฉีดต่างกัน หากจะพิมพ์ส่วนรองรับด้วยฟิลาเมนต์ปัจจุบัน (support_filament == 0 หรือ support_interface_filament == 0) หัวฉีดทั้งหมดจะต้องมีเส้นผ่านศูนย์กลางเท่ากัน"
msgid "A prime tower requires that support has the same layer height as the object."
-msgstr "ไพรม์ทาวเวอร์ต้องการให้ส่วนรองรับมีความสูงชั้นเท่ากับวัตถุ"
+msgstr "Prime Tower ต้องการให้ส่วนรองรับมีความสูงชั้นเท่ากับวัตถุ"
msgid "For Organic supports, two walls are supported only with the Hollow/Default base pattern."
msgstr "สำหรับการรองรับแบบออร์แกนิก ผนังทั้งสองได้รับการรองรับด้วยรูปแบบฐานกลวง/ค่าเริ่มต้นเท่านั้น"
@@ -12426,9 +12496,6 @@ msgstr "ใช้ 3MF แทน G-code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "เปิดใช้งานหากเครื่องพิมพ์รับไฟล์ 3MF เป็นงานพิมพ์ เมื่อเปิดใช้งาน OrcaSlicer จะส่งไฟล์ที่สไลซ์แล้วเป็น .gcode.3mf แทนไฟล์ .gcode ธรรมดา"
-msgid "Printer Agent"
-msgstr "ตัวแทนเครื่องพิมพ์"
-
msgid "Select the network agent implementation for printer communication."
msgstr "เลือกการใช้งานตัวแทนเครือข่ายสำหรับการสื่อสารของเครื่องพิมพ์"
@@ -12845,9 +12912,9 @@ msgid ""
"\n"
"For the first layer, the actual flow ratio for each path role (does not affect brims and skirts) will be multiplied by this value."
msgstr ""
-"ปัจจัยนี้ส่งผลต่อปริมาณวัสดุในชั้นแรกสำหรับบทบาทเส้นทางการอัดขึ้นรูปที่แสดงอยู่ในส่วนนี้\n"
+"ปัจจัยนี้ส่งผลต่อปริมาณวัสดุในชั้นแรกสำหรับประเภทการพิมพ์ที่แสดงอยู่ในส่วนนี้\n"
"\n"
-"สำหรับชั้นแรก อัตราการไหลตามจริงสำหรับแต่ละบทบาทของเส้นทาง (ไม่ส่งผลต่อขอบยึดชิ้นงานและเส้นล้อมชิ้นงาน) จะถูกคูณด้วยค่านี้"
+"สำหรับชั้นแรก อัตราการไหลตามจริงสำหรับแต่ละประเภทการพิมพ์ (ไม่ส่งผลต่อขอบยึดชิ้นงานและเส้นล้อมชิ้นงาน) จะถูกคูณด้วยค่านี้"
msgid "Outer wall flow ratio"
msgstr "อัตราส่วนการไหลของผนังด้านนอก"
@@ -13103,9 +13170,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "ความเร็วของสะพานภายใน หากค่าแสดงเป็นเปอร์เซ็นต์ ค่าดังกล่าวจะถูกคำนวณตาม bridge_speed ค่าเริ่มต้นคือ 150%"
-msgid "Brim width"
-msgstr "ความกว้าง ขอบยึดชิ้นงาน"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "ระยะห่างจากแบบจำลองถึงเส้นขอบยึดชิ้นงานด้านนอกสุด"
@@ -13138,7 +13202,7 @@ msgstr ""
"หมายเหตุ: ค่าผลลัพธ์จะไม่ได้รับผลกระทบจากอัตราส่วนการไหลของชั้นแรก"
msgid "Brim follows compensated outline"
-msgstr "ขอบยึดชิ้นงาน ปฏิบัติตามโครงร่างที่ได้รับการชดเชย"
+msgstr "Brim ตามแนวที่ชดเชยแล้ว"
msgid ""
"When enabled, the brim is aligned with the first-layer perimeter geometry after Elephant Foot Compensation is applied.\n"
@@ -13161,10 +13225,10 @@ msgid "Brim ears"
msgstr "หู ขอบยึดชิ้นงาน"
msgid "Only draw brim over the sharp edges of the model."
-msgstr "วาดขอบยึดชิ้นงานไว้เหนือขอบคมของนางแบบเท่านั้น"
+msgstr "วาดขอบยึดชิ้นงานไว้เหนือขอบคมของชิ้นงานเท่านั้น"
msgid "Brim ear max angle"
-msgstr "มุมสูงสุดของหูขอบยึดชิ้นงานนก"
+msgstr "มุมสูงสุดของหูขอบยึดชิ้นงาน (Brim Ears)"
msgid ""
"Maximum angle to let a brim ear appear.\n"
@@ -13185,6 +13249,14 @@ msgstr ""
"รูปทรงจะถูกทำลายก่อนที่จะตรวจจับมุมแหลม พารามิเตอร์นี้ระบุความยาวขั้นต่ำของการเบี่ยงเบนสำหรับการทำลาย\n"
"0 เพื่อปิดการใช้งาน"
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "หูขอบยึดชิ้นงานเฉพาะด้านนอก"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "สร้างหูหนูเฉพาะบนคอนทัวร์ด้านนอกของโมเดล โดยไม่รวมรูและส่วนที่ปิดล้อม"
+
msgid "upward compatible machine"
msgstr "เครื่องที่รองรับขึ้นไป"
@@ -13753,7 +13825,7 @@ msgstr ""
"อัตราการไหลของวัตถุขั้นสุดท้ายคือค่านี้คูณด้วยอัตราการไหลของเส้นพลาสติก"
msgid "Enable pressure advance"
-msgstr "เปิดใช้งานPressure Advance"
+msgstr "เปิดใช้ Pressure Advance"
msgid "Enable pressure advance, auto calibration result will be overwritten once enabled."
msgstr "เปิดใช้งานการเลื่อนแรงดัน ผลลัพธ์การสอบเทียบอัตโนมัติจะถูกเขียนทับเมื่อเปิดใช้งาน"
@@ -13762,7 +13834,7 @@ msgid "Pressure advance (Klipper) AKA Linear advance factor (Marlin)."
msgstr "แรงดันล่วงหน้า (Pressure Advance) (Klipper) AKA Linear Advance Factor (Marlin)"
msgid "Enable adaptive pressure advance (beta)"
-msgstr "เปิดใช้งานการปรับPressure Advance (เบต้า)"
+msgstr "เปิดใช้ Adaptive Pressure Advance (เบต้า)"
#, no-c-format, no-boost-format
msgid ""
@@ -13780,7 +13852,7 @@ msgstr ""
"เมื่อเปิดใช้งาน ค่าล่วงหน้าของแรงดันด้านบนจะถูกแทนที่ อย่างไรก็ตาม แนะนำให้ใช้ค่าเริ่มต้นที่สมเหตุสมผลด้านบนเพื่อเป็นทางเลือกและเมื่อมีการเปลี่ยนเครื่องมือ\n"
msgid "Adaptive pressure advance measurements (beta)"
-msgstr "การวัดล่วงหน้าด้วยแรงดันแบบปรับได้ (เบต้า)"
+msgstr "ข้อมูลวัด Adaptive Pressure Advance (เบต้า)"
#, no-c-format, no-boost-format
msgid ""
@@ -14021,7 +14093,7 @@ msgid "Loading speed"
msgstr "ความเร็วกำลังโหลด"
msgid "Speed used for loading the filament on the wipe tower."
-msgstr "ความเร็วที่ใช้ในการโหลดเส้นพลาสติกบนไวด์ทาวเวอร์"
+msgstr "ความเร็วที่ใช้ในการโหลดเส้นพลาสติกบน Wipe Tower"
msgid "Loading speed at the start"
msgstr "ความเร็วในการโหลดเมื่อเริ่มต้น"
@@ -14033,7 +14105,7 @@ msgid "Unloading speed"
msgstr "ความเร็วในการขนถ่าย"
msgid "Speed used for unloading the filament on the wipe tower (does not affect initial part of unloading just after ramming)."
-msgstr "ความเร็วที่ใช้ในการขนถ่ายเส้นพลาสติกบนไวด์ทาวเวอร์ (ไม่ส่งผลต่อส่วนเริ่มแรกของการขนถ่ายหลังจากการชน)"
+msgstr "ความเร็วที่ใช้ในการขนถ่ายเส้นพลาสติกบน Wipe Tower (ไม่ส่งผลต่อส่วนเริ่มแรกของการขนถ่ายหลังจากการชน)"
msgid "Unloading speed at the start"
msgstr "ขนถ่ายความเร็วที่จุดเริ่มต้น"
@@ -14075,10 +14147,10 @@ msgid "Minimal purge on wipe tower"
msgstr "การล้างข้อมูลบน Wipe Tower น้อยที่สุด"
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."
-msgstr "หลังจากเปลี่ยนเครื่องมือ อาจไม่ทราบตำแหน่งที่แน่นอนของเส้นพลาสติกที่เพิ่งโหลดใหม่ภายในหัวฉีด และความดันเส้นพลาสติกก็มีแนวโน้มว่ายังไม่เสถียร ก่อนที่จะล้างหัวพิมพ์ลงในวัสดุไส้ในหรือวัตถุบูชายัญ Orca Slicer จะเตรียมวัสดุจำนวนนี้ลงในหอเช็ดเสมอเพื่อสร้างการอัดขึ้นรูปวัตถุแบบไส้ในหรือบูชายัญต่อเนื่องกันอย่างน่าเชื่อถือ"
+msgstr "หลังจากเปลี่ยนเครื่องมือ อาจไม่ทราบตำแหน่งที่แน่นอนของเส้นพลาสติกที่เพิ่งโหลดใหม่ภายในหัวฉีด และความดันเส้นพลาสติกก็มีแนวโน้มว่ายังไม่เสถียร ก่อนที่จะล้างหัวพิมพ์ลงในวัสดุไส้ในหรือวัตถุบูชายัญ Orca Slicer จะเตรียมวัสดุจำนวนนี้ลงใน Wipe Tower เสมอเพื่อสร้างการอัดขึ้นรูปวัตถุแบบไส้ในหรือบูชายัญต่อเนื่องกันอย่างน่าเชื่อถือ"
msgid "Wipe tower cooling"
-msgstr "เช็ดทาวเวอร์คูลลิ่ง"
+msgstr "Wipe Tower คูลลิ่ง"
msgid "Temperature drop before entering filament tower"
msgstr "อุณหภูมิลดลงก่อนเข้าหอใย"
@@ -14087,19 +14159,19 @@ msgid "Interface layer pre-extrusion distance"
msgstr "ระยะการอัดรีดชั้นอินเตอร์เฟซ"
msgid "Pre-extrusion distance for prime tower interface layer (where different materials meet)."
-msgstr "ระยะก่อนการอัดขึ้นรูปสำหรับชั้นอินเทอร์เฟซของไพรม์ทาวเวอร์ (ที่วัสดุที่แตกต่างกันมาบรรจบกัน)"
+msgstr "ระยะก่อนการอัดขึ้นรูปสำหรับชั้นอินเทอร์เฟซของ Prime Tower (ที่วัสดุที่แตกต่างกันมาบรรจบกัน)"
msgid "Interface layer pre-extrusion length"
msgstr "ความยาวชั้นอินเตอร์เฟซก่อนการอัดขึ้นรูป"
msgid "Pre-extrusion length for prime tower interface layer (where different materials meet)."
-msgstr "ความยาวก่อนการอัดขึ้นรูปสำหรับชั้นอินเทอร์เฟซของไพรม์ทาวเวอร์ (ที่วัสดุที่แตกต่างกันมาบรรจบกัน)"
+msgstr "ความยาวก่อนการอัดขึ้นรูปสำหรับชั้นอินเทอร์เฟซของ Prime Tower (ที่วัสดุที่แตกต่างกันมาบรรจบกัน)"
msgid "Tower ironing area"
msgstr "พื้นที่รีดผิวแบบทาวเวอร์"
msgid "Ironing area for prime tower interface layer (where different materials meet)."
-msgstr "พื้นที่รีดผิวสำหรับชั้นอินเทอร์เฟซของไพร์มทาวเวอร์ (บริเวณที่วัสดุต่างกันมาบรรจบกัน)"
+msgstr "พื้นที่รีดผิวสำหรับชั้นอินเทอร์เฟซของ Prime Tower (บริเวณที่วัสดุต่างกันมาบรรจบกัน)"
msgid "mm²"
msgstr "มม.²"
@@ -14108,13 +14180,13 @@ msgid "Interface layer purge length"
msgstr "ความยาวการล้างเลเยอร์อินเทอร์เฟซ"
msgid "Purge length for prime tower interface layer (where different materials meet)."
-msgstr "ความยาวในการไล่ล้างสำหรับชั้นอินเทอร์เฟซของไพรม์ทาวเวอร์ (เมื่อวัสดุต่างกันมาบรรจบกัน)"
+msgstr "ความยาวในการไล่ล้างสำหรับชั้นอินเทอร์เฟซของ Prime Tower (เมื่อวัสดุต่างกันมาบรรจบกัน)"
msgid "Interface layer print temperature"
msgstr "อุณหภูมิการพิมพ์เลเยอร์อินเทอร์เฟซ"
msgid "Print temperature for prime tower interface layer (where different materials meet). If set to -1, use max recommended nozzle temperature."
-msgstr "อุณหภูมิการพิมพ์สำหรับชั้นอินเทอร์เฟซของไพรม์ทาวเวอร์ (เมื่อวัสดุต่างกันมาบรรจบกัน) หากตั้งค่าเป็น -1 ให้ใช้อุณหภูมิหัวฉีดสูงสุดที่แนะนำ"
+msgstr "อุณหภูมิการพิมพ์สำหรับชั้นอินเทอร์เฟซของ Prime Tower (เมื่อวัสดุต่างกันมาบรรจบกัน) หากตั้งค่าเป็น -1 ให้ใช้อุณหภูมิหัวฉีดสูงสุดที่แนะนำ"
msgid "Speed of the last cooling move"
msgstr "ความเร็วของการทำความเย็นครั้งล่าสุด"
@@ -14132,7 +14204,7 @@ msgid "Enable ramming for multi-tool setups"
msgstr "เปิดใช้งานการกระแทกสำหรับการตั้งค่าหลายเครื่องมือ"
msgid "Perform ramming when using multi-tool printer (i.e. when the 'Single Extruder Multimaterial' in Printer Settings is unchecked). When checked, a small amount of filament is rapidly extruded on the wipe tower just before the tool change. This option is only used when the wipe tower is enabled."
-msgstr "ทำการกระแทกเมื่อใช้เครื่องพิมพ์แบบหลายเครื่องมือ (เช่น เมื่อไม่ได้เลือก 'Single ชุดดันเส้น Multimaterial' ในการตั้งค่าเครื่องพิมพ์) เมื่อตรวจสอบแล้ว เส้นพลาสติกจำนวนเล็กน้อยจะถูกอัดรีดอย่างรวดเร็วบนไวด์ทาวเวอร์ก่อนที่จะเปลี่ยนเครื่องมือ ตัวเลือกนี้ใช้เฉพาะเมื่อเปิดใช้งาน Wipe Tower เท่านั้น"
+msgstr "ทำการกระแทกเมื่อใช้เครื่องพิมพ์แบบหลายเครื่องมือ (เช่น เมื่อไม่ได้เลือก 'Single ชุดดันเส้น Multimaterial' ในการตั้งค่าเครื่องพิมพ์) เมื่อตรวจสอบแล้ว เส้นพลาสติกจำนวนเล็กน้อยจะถูกอัดรีดอย่างรวดเร็วบน Wipe Tower ก่อนที่จะเปลี่ยนเครื่องมือ ตัวเลือกนี้ใช้เฉพาะเมื่อเปิดใช้งาน Wipe Tower เท่านั้น"
msgid "Multi-tool ramming volume"
msgstr "ปริมาณการกระแทกหลายเครื่องมือ"
@@ -14351,6 +14423,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "ไจรอยด์"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "ค่าความเรียบของไส้ในแบบโปร่ง"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "ควบคุมระดับความมนของมุมไส้ในแบบโปร่ง ค่า 0% จะคงเส้นทางเดิมที่เป็นมุมแหลม ส่วน 100% จะสร้างส่วนโค้งที่ใหญ่ที่สุดเท่าที่เป็นไปได้ระหว่างเส้นไส้ในที่อยู่ติดกัน"
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "ความเร่งของไส้ในพื้นผิวด้านบน การใช้ค่าที่ต่ำกว่าอาจปรับปรุงคุณภาพพื้นผิวด้านบนได้"
@@ -14517,13 +14597,13 @@ msgid "Filament-specific override for ironing flow. This allows you to customize
msgstr "การแทนที่เส้นพลาสติกเฉพาะสำหรับกระแสการรีดผิว ซึ่งช่วยให้คุณปรับแต่งกระแสการรีดผิวสำหรับเส้นพลาสติกแต่ละประเภทได้ ค่าที่สูงเกินไปส่งผลให้เกิดการอัดขึ้นรูปมากเกินไปบนพื้นผิว"
msgid "Ironing line spacing"
-msgstr "ระยะห่างระหว่างสายรีดผิว"
+msgstr "ระยะห่างระหว่างเส้นรีดผิว"
msgid "Filament-specific override for ironing line spacing. This allows you to customize the spacing between ironing lines for each filament type."
msgstr "การแทนที่เส้นพลาสติกเฉพาะสำหรับระยะห่างระหว่างรีดผิว ซึ่งช่วยให้คุณปรับแต่งระยะห่างระหว่างเส้นรีดผิวสำหรับเส้นพลาสติกแต่ละประเภทได้"
msgid "Ironing inset"
-msgstr "อุปกรณ์รีดผิว"
+msgstr "ระยะเว้นขอบการรีดผิว"
msgid "Filament-specific override for ironing inset. This allows you to customize the distance to keep from the edges when ironing for each filament type."
msgstr "การแทนที่เส้นพลาสติกเฉพาะสำหรับส่วนเสริมการรีดผิว ซึ่งช่วยให้คุณปรับแต่งระยะห่างจากขอบเมื่อรีดผิวสำหรับเส้นพลาสติกแต่ละประเภทได้"
@@ -14565,10 +14645,10 @@ msgid "The average distance between the random points introduced on each line se
msgstr "ระยะห่างเฉลี่ยระหว่างจุดสุ่มที่แนะนำในแต่ละส่วนของเส้น"
msgid "Apply fuzzy skin to first layer"
-msgstr "ทาผิวที่คลุมเครือเป็นชั้นแรก"
+msgstr "ใช้ Fuzzy Skin กับชั้นแรก"
msgid "Whether to apply fuzzy skin on the first layer."
-msgstr "ไม่ว่าจะทาผิวฟุ้งๆในชั้นแรกหรือไม่"
+msgstr "กำหนดว่าจะใช้ Fuzzy Skin กับชั้นแรกหรือไม่"
msgid "Fuzzy skin generator mode"
msgstr "โหมดสร้างผิวฟัซซี"
@@ -14599,7 +14679,7 @@ msgid "Combined"
msgstr "รวม"
msgid "Fuzzy skin noise type"
-msgstr "ประเภทเสียงผิวเลือน"
+msgstr "ประเภท Noise ของ Fuzzy Skin"
msgid ""
"Noise type to use for fuzzy skin generation:\n"
@@ -14610,12 +14690,12 @@ msgid ""
"Voronoi: Divides the surface into voronoi cells, and displaces each one by a random amount. Creates a patchwork texture.\n"
"Ripple: Uniform ripple pattern that ripples left and right of the original path. Repeating pattern, woven appearance."
msgstr ""
-"ประเภทเสียงรบกวนที่ใช้สำหรับการสร้างผิวที่คลุมเครือ:\n"
+"ประเภท Noise ที่ใช้สำหรับการสร้างผิวฟัซซี:\n"
"คลาสสิก: เสียงสุ่มเครื่องแบบคลาสสิก\n"
"Perlin: เสียง Perlin ซึ่งให้เนื้อสัมผัสที่สม่ำเสมอยิ่งขึ้น\n"
"Billow: คล้ายกับเสียงเพอร์ลิน แต่เป็นกลุ่มมากกว่า\n"
"Ridged Multifractal: สัญญาณรบกวนที่คมชัดพร้อมคุณสมบัติหยัก สร้างพื้นผิวเหมือนหินอ่อน\n"
-"โวโรนอย: แบ่งพื้นผิวออกเป็นเซลล์โวโรนอย และแทนที่แต่ละเซลล์ด้วยจำนวนสุ่ม สร้างพื้นผิวแบบเย็บปะติดปะต่อกัน\n"
+"Voronoi: แบ่งพื้นผิวออกเป็นเซลล์ Voronoi และแทนที่แต่ละเซลล์ด้วยจำนวนสุ่ม สร้างพื้นผิวแบบเย็บปะติดปะต่อกัน\n"
"ระลอกคลื่น: รูปแบบระลอกคลื่นสม่ำเสมอที่กระเพื่อมไปทางซ้ายและขวาของเส้นทางเดิม ลายซ้ำ ลักษณะการทอ."
msgid "Classic"
@@ -14631,7 +14711,7 @@ msgid "Ridged Multifractal"
msgstr "Multifractal แบบสัน"
msgid "Voronoi"
-msgstr "โวโรน้อย"
+msgstr "Voronoi"
msgid "Ripple"
msgstr "ระลอกคลื่น"
@@ -14643,13 +14723,13 @@ msgid "The base size of the coherent noise features, in mm. Higher values will r
msgstr "ขนาดฐานของคุณสมบัติเสียงที่สอดคล้องกัน หน่วยเป็น มม. ค่าที่สูงกว่าจะส่งผลให้มีคุณลักษณะที่ใหญ่ขึ้น"
msgid "Fuzzy Skin Noise Octaves"
-msgstr "อ็อกเทฟเสียงผิวฟัซซี"
+msgstr "จำนวน Octave ของ Noise ใน Fuzzy Skin"
msgid "The number of octaves of coherent noise to use. Higher values increase the detail of the noise, but also increase computation time."
msgstr "จำนวนอ็อกเทฟของสัญญาณรบกวนที่สอดคล้องกันที่จะใช้ ค่าที่สูงกว่าจะเพิ่มรายละเอียดของสัญญาณรบกวน แต่ยังเพิ่มเวลาในการคำนวณด้วย"
msgid "Fuzzy skin noise persistence"
-msgstr "ความคงอยู่ของเสียงผิวเลือน"
+msgstr "ค่า Persistence ของ Noise ใน Fuzzy Skin"
msgid "The decay rate for higher octaves of the coherent noise. Lower values will result in smoother noise."
msgstr "อัตราการสลายตัวของอ็อกเทฟที่สูงขึ้นของสัญญาณรบกวนที่สอดคล้องกัน ค่าที่ต่ำกว่าจะส่งผลให้มีสัญญาณรบกวนที่นุ่มนวลขึ้น"
@@ -14893,6 +14973,14 @@ msgstr "เครื่องพิมพ์ G-code ชนิดใดที่
msgid "Klipper"
msgstr "คลิปเปอร์"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "ข้ามบล็อกการตั้งค่าใน G-code"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "ไม่เขียน CONFIG_BLOCK (คู่คีย์/ค่าของการตั้งค่าโปรแกรมสไลซ์) ลงในไฟล์ G-code ซึ่งอาจช่วยได้กับเครื่องพิมพ์ที่เฟิร์มแวร์ขัดข้องเมื่ออ่านบรรทัดคอมเมนต์เหล่านี้ (เช่น Anycubic go-klipper) หมายเหตุ: ไฟล์ G-code จะไม่มีการตั้งค่าโปรแกรมสไลซ์อีกต่อไป ดังนั้นการนำเข้ากลับมาใน OrcaSlicer จะไม่คืนค่าการตั้งค่า"
+
msgid "Pellet Modded Printer"
msgstr "เครื่องพิมพ์ Modded เม็ด"
@@ -15737,7 +15825,7 @@ msgid "The start and end points which are from the cutter area to the excess chu
msgstr "จุดเริ่มต้นและจุดสิ้นสุดตั้งแต่บริเวณเครื่องตัดถึงถังขยะ"
msgid "Reduce infill retraction"
-msgstr "ลดการหดตัวของ ไส้ใน"
+msgstr "ลดการดึงกลับในไส้ใน"
msgid "Don't retract when the travel is entirely within an infill area. 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. Note that z-hop is also not performed in areas where retraction is skipped."
msgstr "อย่าถอยกลับเมื่อการเดินทางอยู่ภายในพื้นที่ที่ไส้ในเข้าไปทั้งหมด นั่นหมายความว่าไม่สามารถมองเห็นการรั่วไหลได้ วิธีนี้จะช่วยลดเวลาในการดึงกลับสำหรับโมเดลที่ซับซ้อนและประหยัดเวลาในการพิมพ์ แต่จะทำให้การแบ่งส่วนและการสร้าง G-code ช้าลง โปรดทราบว่า z-hop จะไม่ดำเนินการในพื้นที่ที่มีการข้ามการถอนกลับ"
@@ -15825,10 +15913,10 @@ msgid "If you want to process the output G-code through custom scripts, just lis
msgstr "หากคุณต้องการประมวลผลเอาต์พุต G-code ผ่านสคริปต์ที่กำหนดเอง เพียงระบุเส้นทางสัมบูรณ์ของสคริปต์ไว้ที่นี่ แยกสคริปต์หลายรายการด้วยเครื่องหมายอัฒภาค สคริปต์จะถูกส่งผ่านเส้นทางสัมบูรณ์ไปยังไฟล์ G-code เป็นอาร์กิวเมนต์แรก และสคริปต์เหล่านี้สามารถเข้าถึงการตั้งค่าการกำหนดค่า Orca Slicer ได้โดยการอ่านตัวแปรสภาพแวดล้อม"
msgid "Change extrusion role G-code (process)"
-msgstr "เปลี่ยนบทบาทการอัดขึ้นรูป G-code (กระบวนการ)"
+msgstr "เปลี่ยนประเภทการพิมพ์ G-code (กระบวนการ)"
msgid "This G-code is inserted when the extrusion role is changed. It runs after the machine and filament extrusion role G-code."
-msgstr "G-code นี้จะถูกแทรกเมื่อบทบาทการอัดขึ้นรูปมีการเปลี่ยนแปลง มันทำงานหลังจากบทบาทการอัดขึ้นรูปของเครื่องจักรและการอัดขึ้นรูปเส้นพลาสติก G-code"
+msgstr "G-code นี้จะถูกแทรกเมื่อประเภทการพิมพ์มีการเปลี่ยนแปลง มันทำงานหลังจากประเภทการพิมพ์ของเครื่องจักรและเส้นพลาสติก G-code"
# AI Translated
msgid "Plugins Used"
@@ -15897,7 +15985,7 @@ msgid "Only trigger retraction when the travel distance is longer than this thre
msgstr "ทริกเกอร์การถอนกลับเมื่อระยะการเดินทางยาวกว่าเกณฑ์นี้เท่านั้น"
msgid "Retract amount before wipe"
-msgstr "ถอนจำนวนก่อนเช็ด"
+msgstr "สัดส่วนการดึงกลับก่อน Wipe"
msgid "This is the length of fast retraction before a wipe, relative to retraction length."
msgstr "ความยาวของการดึงกลับอย่างรวดเร็วก่อนเช็ด สัมพันธ์กับความยาวการดึงกลับ"
@@ -15916,7 +16004,7 @@ msgstr ""
"ค่าจะถูกจำกัดด้วย 100% ลบด้วยปริมาณการดึงกลับก่อนค่าเช็ดหัว"
msgid "Retract on layer change"
-msgstr "ถอนออกเมื่อเปลี่ยนเลเยอร์"
+msgstr "ดึงเส้นกลับเมื่อเปลี่ยนเลเยอร์"
msgid "This forces a retraction on layer changes."
msgstr "บังคับให้ถอนกลับเมื่อเปลี่ยนเลเยอร์"
@@ -15925,7 +16013,7 @@ msgid "Retraction Length"
msgstr "ระยะดึงกลับ"
msgid "Some amount of material in extruder is pulled back to avoid ooze during long travel. Set zero to disable retraction."
-msgstr "วัสดุบางส่วนในชุดดันเส้นถูกดึงกลับเพื่อหลีกเลี่ยงไม่ให้ซึ่มในระหว่างการเดินทางระยะไกล ตั้งค่าเป็นศูนย์เพื่อปิดใช้งานการเพิกถอน"
+msgstr "วัสดุบางส่วนในชุดดันเส้นถูกดึงกลับเพื่อหลีกเลี่ยงไม่ให้ซึ่มในระหว่างการเดินทางระยะไกล ตั้งเป็น 0 เพื่อปิดการดึงกลับ"
msgid "Long retraction when cut (beta)"
msgstr "การถอยกลับยาวเมื่อตัด (เบต้า)"
@@ -15945,6 +16033,14 @@ msgstr "การถอยกลับนานเมื่อเปลี่ย
msgid "Retraction distance when extruder change"
msgstr "ระยะการดึงกลับเมื่อชุดดันเส้นเปลี่ยน"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "ความยาวการดึงกลับ (การเปลี่ยนเครื่องมือ)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "เมื่อการดึงกลับทำงานก่อนการเปลี่ยนเครื่องมือ เส้นพลาสติกจะถูกดึงกลับตามระยะที่กำหนด (วัดความยาวบนเส้นพลาสติกดิบ ก่อนเข้าสู่ชุดดันเส้น)"
+
msgid "Z-hop height"
msgstr "ความสูงยกแกน Z"
@@ -16039,6 +16135,10 @@ msgstr "ความยาวพิเศษเมื่อรีสตาร์
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "เมื่อชดเชยการดึงกลับหลังการเคลื่อนที่เดินทาง ชุดดันเส้นจะดันเส้นพลาสติกเพิ่มเติมในปริมาณนี้ การตั้งค่านี้ไม่ค่อยจำเป็น"
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "ความยาวพิเศษเมื่อรีสตาร์ท (การเปลี่ยนเครื่องมือ)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "เมื่อชดเชยการดึงกลับหลังเปลี่ยนเครื่องมือ ชุดดันเส้นจะดันเส้นพลาสติกเพิ่มเติมในปริมาณนี้"
@@ -16049,7 +16149,7 @@ msgid "Speed for retracting filament from the nozzle."
msgstr "ความเร็วในการดึงเส้นพลาสติกออกจากหัวฉีด"
msgid "Deretraction speed"
-msgstr "ความเร็วในการถอนกลับ"
+msgstr "ความเร็วคืนเส้นหลังดึงกลับ"
msgid "Speed for reloading filament into the nozzle. Zero means same speed of retraction."
msgstr "ความเร็วในการบรรจุเส้นพลาสติกลงในหัวฉีด ศูนย์หมายถึงความเร็วการถอยกลับเท่ากัน"
@@ -16063,7 +16163,7 @@ msgid "Speed for reloading filament into the nozzle when switching extruder."
msgstr "ความเร็วในการโหลดเส้นพลาสติกกลับเข้าหัวฉีดเมื่อเปลี่ยนชุดดันเส้น"
msgid "Use firmware retraction"
-msgstr "ใช้การเพิกถอนเฟิร์มแวร์"
+msgstr "ใช้การดึงกลับด้วยเฟิร์มแวร์"
msgid "This experimental setting uses G10 and G11 commands to have the firmware handle the retraction. This is only supported in recent Marlin."
msgstr "การตั้งค่าทดลองนี้ใช้คำสั่ง G10 และ G11 เพื่อให้เฟิร์มแวร์จัดการกับการเพิกถอน สิ่งนี้รองรับใน Marlin ล่าสุดเท่านั้น"
@@ -16115,16 +16215,16 @@ msgstr ""
"ปริมาณนี้สามารถระบุได้ในหน่วยมิลลิเมตรหรือเป็นเปอร์เซ็นต์ของเส้นผ่านศูนย์กลางของชุดดันเส้นในปัจจุบัน ค่าเริ่มต้นสำหรับพารามิเตอร์นี้คือ 10%"
msgid "Scarf joint seam (beta)"
-msgstr "รอยต่อเฉียง (เบต้า)"
+msgstr "รอยต่อ Scarf (เบต้า)"
msgid "Use scarf joint to minimize seam visibility and increase seam strength."
-msgstr "ใช้ข้อต่อเฉียงเพื่อลดการมองเห็นรอยตะเข็บและเพิ่มความแข็งแรงของรอยตะเข็บ"
+msgstr "ใช้รอยต่อ Scarf เพื่อลดการมองเห็นรอยตะเข็บและเพิ่มความแข็งแรง"
msgid "Conditional scarf joint"
-msgstr "ข้อต่อเฉียงแบบมีเงื่อนไข"
+msgstr "รอยต่อ Scarf แบบมีเงื่อนไข"
msgid "Apply scarf joints only to smooth perimeters where traditional seams do not conceal the seams at sharp corners effectively."
-msgstr "ใช้ข้อต่อเฉียงกับขอบเรียบเท่านั้น โดยที่รอยตะเข็บแบบเดิมไม่สามารถปกปิดรอยตะเข็บที่มุมแหลมคมได้อย่างมีประสิทธิภาพ"
+msgstr "ใช้รอยต่อ Scarf กับขอบเรียบเท่านั้น โดยที่รอยตะเข็บแบบเดิมไม่สามารถปกปิดรอยตะเข็บที่มุมแหลมคมได้อย่างมีประสิทธิภาพ"
msgid "Conditional angle threshold"
msgstr "เกณฑ์มุมแบบมีเงื่อนไข"
@@ -16133,67 +16233,67 @@ 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°."
msgstr ""
-"ตัวเลือกนี้จะกำหนดมุมเกณฑ์สำหรับการใช้รอยตะเข็บข้อต่อเฉียงแบบมีเงื่อนไข\n"
-"หากมุมสูงสุดภายในวงรอบปริมณฑลเกินค่านี้ (แสดงว่าไม่มีมุมแหลมคม) จะใช้รอยตะเข็บข้อต่อเฉียง ค่าเริ่มต้นคือ 155°"
+"ตัวเลือกนี้จะกำหนดมุมเกณฑ์สำหรับการใช้รอยต่อ Scarf แบบมีเงื่อนไข\n"
+"หากมุมสูงสุดภายในวงรอบปริมณฑลเกินค่านี้ (แสดงว่าไม่มีมุมแหลมคม) จะใช้รอยต่อ Scarf ค่าเริ่มต้นคือ 155°"
msgid "Conditional overhang threshold"
msgstr "เกณฑ์ระยะยื่นแบบมีเงื่อนไข"
#, no-c-format, no-boost-format
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 degree of overhang is estimated."
-msgstr "ตัวเลือกนี้จะกำหนดเกณฑ์ส่วนยื่นสำหรับการใช้รอยตะเข็บข้อต่อเฉียง หากส่วนที่ไม่ได้รับส่วนรองรับของเส้นรอบวงน้อยกว่าเกณฑ์นี้ จะมีการเย็บรอยตะเข็บเฉียง เกณฑ์เริ่มต้นตั้งไว้ที่ 40% ของความกว้างของผนังภายนอก เมื่อพิจารณาถึงประสิทธิภาพแล้ว ระดับของระยะยื่นจึงถูกประมาณไว้"
+msgstr "ตัวเลือกนี้จะกำหนดเกณฑ์ส่วนยื่นสำหรับการใช้รอยต่อ Scarf หากส่วนที่ไม่ได้รับส่วนรองรับของเส้นรอบวงน้อยกว่าเกณฑ์นี้ จะใช้รอยต่อ Scarf เกณฑ์เริ่มต้นตั้งไว้ที่ 40% ของความกว้างของผนังภายนอก เมื่อพิจารณาถึงประสิทธิภาพแล้ว ระดับของระยะยื่นจึงถูกประมาณไว้"
msgid "Scarf joint speed"
-msgstr "ความเร็วของข้อต่อเฉียง"
+msgstr "ความเร็วรอยต่อ Scarf"
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%."
-msgstr "ตัวเลือกนี้จะตั้งค่าความเร็วในการพิมพ์สำหรับข้อต่อเฉียง ขอแนะนำให้พิมพ์ข้อต่อเฉียงด้วยความเร็วต่ำ (น้อยกว่า 100 มม./วินาที) ขอแนะนำให้เปิดใช้งาน 'การปรับอัตราการอัดรีดให้เรียบ' หากความเร็วที่ตั้งไว้แตกต่างอย่างมากจากความเร็วของผนังด้านนอกหรือด้านใน หากความเร็วที่ระบุที่นี่สูงกว่าความเร็วของผนังด้านนอกหรือด้านใน เครื่องพิมพ์จะตั้งค่าเริ่มต้นไว้ที่ความเร็วที่ช้ากว่าทั้งสอง เมื่อระบุเป็นเปอร์เซ็นต์ (เช่น 80%) ความเร็วจะคำนวณตามความเร็วผนังด้านนอกหรือด้านในตามลำดับ ค่าเริ่มต้นตั้งไว้ที่ 100%"
+msgstr "ตัวเลือกนี้จะตั้งค่าความเร็วในการพิมพ์สำหรับรอยต่อ Scarf ขอแนะนำให้พิมพ์รอยต่อ Scarfด้วยความเร็วต่ำ (น้อยกว่า 100 มม./วินาที) ขอแนะนำให้เปิดใช้งาน 'การปรับอัตราการอัดรีดให้เรียบ' หากความเร็วที่ตั้งไว้แตกต่างอย่างมากจากความเร็วของผนังด้านนอกหรือด้านใน หากความเร็วที่ระบุที่นี่สูงกว่าความเร็วของผนังด้านนอกหรือด้านใน เครื่องพิมพ์จะตั้งค่าเริ่มต้นไว้ที่ความเร็วที่ช้ากว่าทั้งสอง เมื่อระบุเป็นเปอร์เซ็นต์ (เช่น 80%) ความเร็วจะคำนวณตามความเร็วผนังด้านนอกหรือด้านในตามลำดับ ค่าเริ่มต้นตั้งไว้ที่ 100%"
msgid "Scarf joint flow ratio"
-msgstr "อัตราการไหลของข้อต่อเฉียง"
+msgstr "อัตราส่วนการไหลของรอยต่อ Scarf"
msgid "This factor affects the amount of material for scarf joints."
-msgstr "ปัจจัยนี้ส่งผลต่อปริมาณวัสดุสำหรับข้อต่อเฉียง"
+msgstr "ปัจจัยนี้ส่งผลต่อปริมาณวัสดุสำหรับรอยต่อ Scarf"
msgid "Scarf start height"
-msgstr "ความสูงเริ่มต้นของเฉียง"
+msgstr "ความสูงเริ่มต้นของรอยต่อ Scarf"
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."
msgstr ""
-"เริ่มต้นความสูงของเฉียง\n"
+"ความสูงเริ่มต้นของรอยต่อ Scarf\n"
"จำนวนนี้สามารถระบุได้ในหน่วยมิลลิเมตรหรือเป็นเปอร์เซ็นต์ของความสูงของเลเยอร์ปัจจุบัน ค่าเริ่มต้นสำหรับพารามิเตอร์นี้คือ 0"
msgid "Scarf around entire wall"
-msgstr "เฉียงพันรอบผนังทั้งหมด"
+msgstr "ใช้รอยต่อ Scarf ตลอดทั้งผนัง"
msgid "The scarf extends to the entire length of the wall."
-msgstr "เฉียงยาวตลอดความยาวของผนัง"
+msgstr "รอยต่อ Scarf ครอบคลุมตลอดความยาวผนัง"
msgid "Scarf length"
-msgstr "ความยาวเฉียง"
+msgstr "ความยาวรอยต่อ Scarf"
msgid "Length of the scarf. Setting this parameter to zero effectively disables the scarf."
-msgstr "ความยาวของเฉียง. การตั้งค่าพารามิเตอร์นี้เป็นศูนย์จะปิดใช้เฉียงอย่างมีประสิทธิภาพ"
+msgstr "ความยาวของรอยต่อ Scarf ตั้งเป็น 0 เพื่อปิดการใช้ Scarf"
msgid "Scarf steps"
-msgstr "ขั้นตอนเฉียง"
+msgstr "จำนวนขั้นของรอยต่อ Scarf"
msgid "Minimum number of segments of each scarf."
-msgstr "จำนวนขั้นต่ำของส่วนเฉียงแต่ละอัน"
+msgstr "จำนวนเซกเมนต์ขั้นต่ำของรอยต่อ Scarf"
msgid "Scarf joint for inner walls"
-msgstr "ข้อต่อเฉียงสำหรับผนังด้านใน"
+msgstr "รอยต่อ Scarf สำหรับผนังด้านใน"
msgid "Use scarf joint for inner walls as well."
-msgstr "ใช้ข้อต่อเฉียงสำหรับผนังด้านในด้วย"
+msgstr "ใช้รอยต่อ Scarf กับผนังด้านในด้วย"
msgid "Role base wipe speed"
-msgstr "ความเร็วในการล้างฐานบทบาท"
+msgstr "ความเร็ว Wipe ตามประเภทการพิมพ์"
msgid "The wipe speed is determined by the speed of the current extrusion role. e.g. if a wipe action is executed immediately following an outer wall extrusion, the speed of the outer wall extrusion will be utilized for the wipe action."
-msgstr "ความเร็วในการเช็ดถูกกำหนดโดยความเร็วของบทบาทการอัดขึ้นรูปในปัจจุบัน เช่น หากการดำเนินการเช็ดถูกดำเนินการทันทีหลังจากการอัดขึ้นรูปผนังด้านนอก ความเร็วของการอัดขึ้นรูปผนังด้านนอกจะถูกใช้สำหรับการดำเนินการเช็ด"
+msgstr "ความเร็ว Wipe จะอิงจากความเร็วของประเภทการพิมพ์ปัจจุบัน เช่น หากการ Wipe เกิดขึ้นทันทีหลังจากพิมพ์ผนังด้านนอก ความเร็วของผนังด้านนอกจะถูกใช้สำหรับการ Wipe"
msgid "Wipe on loops"
msgstr "เช็ดบนลูป"
@@ -16241,10 +16341,10 @@ msgid "Single loop after first layer"
msgstr "วนรอบเดียวหลังจากชั้นแรก"
msgid "Limits the skirt/draft shield loops to one wall after the first layer. This is useful, on occasion, to conserve filament but may cause the draft shield/skirt to warp / crack."
-msgstr "จำกัดห่วงสเกิร์ต/โล่ครอบไว้ที่ผนังด้านหนึ่งหลังจากชั้นแรก สิ่งนี้มีประโยชน์ในบางครั้งเพื่ออนุรักษ์เส้นพลาสติก แต่อาจทำให้โครง/เส้นล้อมชิ้นงานบิดเบี้ยว/แตกร้าวได้"
+msgstr "จำกัดห่วงสเกิร์ต/แนวป้องกันลม (Draft Shield) ไว้ที่ผนังเดียวหลังจากชั้นแรก สิ่งนี้มีประโยชน์ในบางครั้งเพื่อประหยัดเส้นพลาสติก แต่อาจทำให้แนวป้องกันลม/เส้นล้อมชิ้นงานบิดเบี้ยว/แตกร้าวได้"
msgid "Draft shield"
-msgstr "โล่ร่าง"
+msgstr "แนวป้องกันลม (Draft Shield)"
msgid ""
"A draft shield is useful to protect an ABS or ASA print from warping and detaching from print bed due to wind draft. It is usually needed only with open frame printers, i.e. without an enclosure.\n"
@@ -16252,10 +16352,10 @@ msgid ""
"Enabled = skirt is as tall as the highest printed object. Otherwise 'Skirt height' is used.\n"
"Note: With the draft shield active, the skirt will be printed at skirt 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"
+"แนวป้องกันลม (Draft Shield) มีประโยชน์ในการปกป้องงานพิมพ์ ABS หรือ ASA จากการบิดงอและการหลุดออกจากฐานพิมพ์เนื่องจากกระแสลม โดยทั่วไปจำเป็นต้องใช้กับเครื่องพิมพ์แบบเปิดเฟรมเท่านั้น กล่าวคือ ไม่มีกล่องหุ้ม\n"
"\n"
"Enabled = เส้นล้อมชิ้นงานสูงเท่ากับวัตถุที่พิมพ์สูงสุด มิฉะนั้น จะใช้ 'ความสูงของเส้นล้อมชิ้นงาน'\n"
-"หมายเหตุ: เมื่อใช้งานดราฟชีลด์ เส้นล้อมชิ้นงานจะถูกพิมพ์ที่ระยะห่างจากเส้นล้อมชิ้นงานจากวัตถุ ดังนั้นหากขอบยึดชิ้นงานยังทำงานอยู่ ขอบยึดชิ้นงานอาจตัดกัน เพื่อหลีกเลี่ยงปัญหานี้ ให้เพิ่มค่าระยะห่างของเส้นล้อมชิ้นงาน\n"
+"หมายเหตุ: เมื่อใช้งานแนวป้องกันลม (Draft Shield) เส้นล้อมชิ้นงานจะถูกพิมพ์ที่ระยะห่างจากวัตถุ ดังนั้นหากขอบยึดชิ้นงานยังทำงานอยู่ ขอบยึดชิ้นงานอาจตัดกัน เพื่อหลีกเลี่ยงปัญหานี้ ให้เพิ่มค่าระยะห่างของเส้นล้อมชิ้นงาน\n"
msgid "Enabled"
msgstr "เปิดใช้"
@@ -16362,7 +16462,7 @@ msgid "Sets the finishing flow ratio while ending the spiral. Normally the spira
msgstr "ตั้งค่าอัตราส่วนการไหลขั้นสุดท้ายขณะสิ้นสุดเกลียว โดยปกติการเปลี่ยนผ่านของเกลียวจะปรับขนาดอัตราส่วนการไหลจาก 100% เป็น 0% ในระหว่างลูปสุดท้าย ซึ่งในบางกรณีอาจนำไปสู่การรีดขึ้นรูปที่ปลายเกลียว"
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, a prime tower is required for smooth mode to wipe the nozzle."
-msgstr "หากเลือกโหมดเรียบหรือโหมดดั้งเดิม วิดีโอไทม์แลปส์จะถูกสร้างขึ้นสำหรับการพิมพ์แต่ละครั้ง หลังจากพิมพ์แต่ละชั้นแล้ว กล้องจะถ่ายภาพสแนปช็อตด้วยกล้องแชมเบอร์ สแน็ปช็อตทั้งหมดนี้จะถูกประกอบเป็นวิดีโอไทม์แลปส์เมื่อการพิมพ์เสร็จสิ้น หากเลือกโหมดเรียบ หัวเครื่องมือจะย้ายไปยังรางส่วนเกินหลังจากพิมพ์แต่ละเลเยอร์แล้วจึงถ่ายภาพสแน็ปช็อต เนื่องจากเส้นพลาสติกที่หลอมละลายอาจรั่วไหลออกจากหัวฉีดในระหว่างขั้นตอนการถ่ายภาพ จึงจำเป็นต้องมีไพรม์ทาวเวอร์เพื่อให้โหมดราบรื่นในการเช็ดหัวฉีด"
+msgstr "หากเลือกโหมดเรียบหรือโหมดดั้งเดิม วิดีโอไทม์แลปส์จะถูกสร้างขึ้นสำหรับการพิมพ์แต่ละครั้ง หลังจากพิมพ์แต่ละชั้นแล้ว กล้องจะถ่ายภาพสแนปช็อตด้วยกล้องแชมเบอร์ สแน็ปช็อตทั้งหมดนี้จะถูกประกอบเป็นวิดีโอไทม์แลปส์เมื่อการพิมพ์เสร็จสิ้น หากเลือกโหมดเรียบ หัวเครื่องมือจะย้ายไปยังรางส่วนเกินหลังจากพิมพ์แต่ละเลเยอร์แล้วจึงถ่ายภาพสแน็ปช็อต เนื่องจากเส้นพลาสติกที่หลอมละลายอาจรั่วไหลออกจากหัวฉีดในระหว่างขั้นตอนการถ่ายภาพ จึงจำเป็นต้องมี Prime Tower เพื่อให้โหมดราบรื่นในการเช็ดหัวฉีด"
msgid "Traditional"
msgstr "แบบดั้งเดิม"
@@ -16376,7 +16476,7 @@ msgstr "ไทม์แลปส์จุดไกลสุด"
# AI Translated
msgid "When enabled, the timelapse snapshot is taken at the farthest point from camera instead of traveling to the wipe tower or excess chute. Only effective in traditional timelapse mode on non-I3 printers."
-msgstr "เมื่อเปิดใช้งาน ภาพไทม์แลปส์จะถูกถ่ายที่จุดไกลสุดจากกล้องแทนที่จะเดินหัวไปยังทาวเวอร์เช็ดหัวฉีดหรือช่องทิ้งส่วนเกิน มีผลเฉพาะในโหมดไทม์แลปส์แบบดั้งเดิมบนเครื่องพิมพ์ที่ไม่ใช่ I3"
+msgstr "เมื่อเปิดใช้งาน ภาพไทม์แลปส์จะถูกถ่ายที่จุดไกลสุดจากกล้องแทนที่จะเดินหัวไปยัง Wipe Tower หรือช่องทิ้งส่วนเกิน มีผลเฉพาะในโหมดไทม์แลปส์แบบดั้งเดิมบนเครื่องพิมพ์ที่ไม่ใช่ I3"
msgid "Temperature variation"
msgstr "การเปลี่ยนแปลงของอุณหภูมิ"
@@ -16425,10 +16525,10 @@ msgid "Enable this option to omit the custom Change filament G-code only at the
msgstr "เปิดใช้งานตัวเลือกนี้เพื่อละเว้น G-code เปลี่ยนฟิลาเมนต์แบบกำหนดเองเฉพาะตอนเริ่มต้นการพิมพ์เท่านั้น คำสั่งเปลี่ยนเครื่องมือ (เช่น T0) จะถูกข้ามไปตลอดการพิมพ์ทั้งหมด สิ่งนี้มีประโยชน์สำหรับการพิมพ์หลายวัสดุด้วยตนเอง โดยที่เราใช้ M600/PAUSE เพื่อกระตุ้นการดำเนินการเปลี่ยนเส้นพลาสติกด้วยตนเอง"
msgid "Wipe tower type"
-msgstr "ชนิดทาวเวอร์เช็ด"
+msgstr "ชนิด Wipe Tower"
msgid "Choose the wipe tower implementation for multi-material prints. Type 1 is recommended for Bambu and Qidi printers with a filament cutter. Type 2 offers better compatibility with multi-tool and MMU printers and provide overall better compatibility."
-msgstr "เลือกการใช้งานไวด์ทาวเวอร์สำหรับการพิมพ์แบบหลายวัสดุ แนะนำให้ใช้ประเภท 1 สำหรับเครื่องพิมพ์ Bambu และ Qidi ที่มีเครื่องตัดเส้นพลาสติก Type 2 ให้ความเข้ากันได้ที่ดีกว่ากับเครื่องพิมพ์หลายเครื่องมือและ MMU และให้ความเข้ากันได้โดยรวมดีขึ้น"
+msgstr "เลือกการใช้งาน Wipe Tower สำหรับการพิมพ์แบบหลายวัสดุ แนะนำให้ใช้ประเภท 1 สำหรับเครื่องพิมพ์ Bambu และ Qidi ที่มีเครื่องตัดเส้นพลาสติก Type 2 ให้ความเข้ากันได้ที่ดีกว่ากับเครื่องพิมพ์หลายเครื่องมือและ MMU และให้ความเข้ากันได้โดยรวมดีขึ้น"
msgid "Type 1"
msgstr "ประเภทที่ 1"
@@ -16437,25 +16537,33 @@ msgid "Type 2"
msgstr "ประเภทที่ 2"
msgid "Purge in prime tower"
-msgstr "ระยะเว้นในไพร์มทาวเวอร์"
+msgstr "ระยะเว้นใน Prime Tower"
msgid "Purge remaining filament into prime tower."
-msgstr "ล้างเส้นพลาสติกที่เหลือลงในไพร์มทาวเวอร์"
+msgstr "ล้างเส้นพลาสติกที่เหลือลงใน Prime Tower"
msgid "Enable filament ramming"
msgstr "เปิดใช้งานการอัดกระแทกเส้นเส้นพลาสติก"
msgid "Tool change on wipe tower"
-msgstr "การเปลี่ยนเครื่องมือบนไวด์ทาวเวอร์"
+msgstr "การเปลี่ยนเครื่องมือบน Wipe Tower"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
-msgstr "บังคับให้หัวเครื่องมือเคลื่อนที่ไปที่หอเช็ดก่อนที่จะออกคำสั่งเปลี่ยนเครื่องมือ (Tx) เกี่ยวข้องเฉพาะกับเครื่องพิมพ์ที่มีชุดดันเส้นหลายเครื่อง (หลายหัวเครื่องมือ) ที่ใช้แผ่นเช็ดแบบ Type 2 ตามค่าเริ่มต้น Orca จะข้ามการเดินทางบนเครื่องที่มีหัวเครื่องมือหลายหัวเนื่องจากเฟิร์มแวร์จัดการการสลับหัว ซึ่งอาจส่งผลให้มีการออกคำสั่ง Tx เหนือส่วนที่พิมพ์ เปิดใช้งานตัวเลือกนี้หากคุณต้องการให้ทำการเปลี่ยนแปลงเครื่องมือเหนือหอเช็ดแทนเสมอ"
+msgstr "บังคับให้หัวเครื่องมือเคลื่อนที่ไปที่ Wipe Tower ก่อนที่จะออกคำสั่งเปลี่ยนเครื่องมือ (Tx) เกี่ยวข้องเฉพาะกับเครื่องพิมพ์ที่มีชุดดันเส้นหลายเครื่อง (หลายหัวเครื่องมือ) ที่ใช้แผ่นเช็ดแบบ Type 2 ตามค่าเริ่มต้น Orca จะข้ามการเดินทางบนเครื่องที่มีหัวเครื่องมือหลายหัวเนื่องจากเฟิร์มแวร์จัดการการสลับหัว ซึ่งอาจส่งผลให้มีการออกคำสั่ง Tx เหนือส่วนที่พิมพ์ เปิดใช้งานตัวเลือกนี้หากคุณต้องการให้ทำการเปลี่ยนแปลงเครื่องมือเหนือ Wipe Tower แทนเสมอ"
+
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "รอให้ถึงอุณหภูมิที่ Wipe Tower"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "รับเครื่องมือใหม่โดยไม่รอให้ถึงอุณหภูมิการพิมพ์ แล้วเคลื่อนที่ไปยัง Wipe Tower และรออุณหภูมิที่นั่นก่อนไล่เส้นทันที เส้นพลาสติกที่ซึมออกมาระหว่างการอุ่นจะตกลงบน Wipe Tower แทนที่จะตกบนโมเดล และการเคลื่อนที่จะเกิดขึ้นพร้อมกับการอุ่น ใช้ได้เฉพาะกับเครื่องพิมพ์แบบหลายชุดดันเส้น (หลายหัวพิมพ์) ที่ใช้ Wipe Tower ชนิดที่ 2 เฟิร์มแวร์หรือแมโครการเปลี่ยนเครื่องมือต้องไม่รออุณหภูมิเอง เมื่อปิดใช้ คำสั่งรออุณหภูมิจะถูกส่งทันทีหลังคำสั่งเปลี่ยนเครื่องมือ"
msgid "No sparse layers (beta)"
msgstr "ไม่มีชั้นกระจัดกระจาย (เบต้า)"
msgid "If enabled, the wipe tower will not be printed on layers with no tool changes. On layers with a tool change, extruder will travel downward to print the wipe tower. User is responsible for ensuring there is no collision with the print."
-msgstr "หากเปิดใช้งาน หอเช็ดจะไม่ถูกพิมพ์บนเลเยอร์โดยไม่มีการเปลี่ยนแปลงเครื่องมือ บนเลเยอร์ที่มีการเปลี่ยนเครื่องมือ ชุดดันเส้นจะเคลื่อนลงด้านล่างเพื่อพิมพ์ไวด์ทาวเวอร์ ผู้ใช้มีหน้าที่รับผิดชอบในการตรวจสอบให้แน่ใจว่าไม่มีการชนกันกับงานพิมพ์"
+msgstr "หากเปิดใช้งาน Wipe Tower จะไม่ถูกพิมพ์บนเลเยอร์โดยไม่มีการเปลี่ยนแปลงเครื่องมือ บนเลเยอร์ที่มีการเปลี่ยนเครื่องมือ ชุดดันเส้นจะเคลื่อนลงด้านล่างเพื่อพิมพ์ Wipe Tower ผู้ใช้มีหน้าที่รับผิดชอบในการตรวจสอบให้แน่ใจว่าไม่มีการชนกันกับงานพิมพ์"
msgid "Prime all printing extruders"
msgstr "ใช้ชุดดันเส้นการพิมพ์ทั้งหมด"
@@ -16720,7 +16828,7 @@ msgid "Independent support layer height"
msgstr "ความสูงของชั้นรองรับอิสระ"
msgid "Support layer uses layer height independent with object layer. This is to support customizing Z-gap and save print time. This option will be invalid when the prime tower is enabled."
-msgstr "เลเยอร์ส่วนรองรับใช้ความสูงของเลเยอร์ที่เป็นอิสระจากเลเยอร์วัตถุ เพื่อรองรับการปรับแต่ง Z-gap และประหยัดเวลาในการพิมพ์ ตัวเลือกนี้จะไม่ถูกต้องเมื่อเปิดใช้งานไพรม์ทาวเวอร์"
+msgstr "เลเยอร์ส่วนรองรับใช้ความสูงของเลเยอร์ที่เป็นอิสระจากเลเยอร์วัตถุ เพื่อรองรับการปรับแต่ง Z-gap และประหยัดเวลาในการพิมพ์ ตัวเลือกนี้จะไม่ถูกต้องเมื่อเปิดใช้งาน Prime Tower"
msgid "Threshold angle"
msgstr "มุมเกณฑ์"
@@ -16885,13 +16993,13 @@ msgid "This G-code is inserted when filament is changed, including T commands to
msgstr "รหัส G นี้จะถูกแทรกเมื่อมีการเปลี่ยนเส้นพลาสติก รวมถึงคำสั่ง T เพื่อกระตุ้นการเปลี่ยนเครื่องมือ"
msgid "This G-code is inserted when the extrusion role is changed."
-msgstr "G-code นี้จะถูกแทรกเมื่อบทบาทการอัดขึ้นรูปมีการเปลี่ยนแปลง"
+msgstr "G-code นี้จะถูกแทรกเมื่อประเภทการพิมพ์มีการเปลี่ยนแปลง"
msgid "Change extrusion role G-code (filament)"
-msgstr "เปลี่ยนบทบาทการอัดขึ้นรูป G-code (เส้นพลาสติก)"
+msgstr "เปลี่ยนประเภทการพิมพ์ G-code (เส้นพลาสติก)"
msgid "This G-code is inserted when the extrusion role is changed for the active filament."
-msgstr "รหัส G นี้จะถูกแทรกเมื่อมีการเปลี่ยนบทบาทการอัดขึ้นรูปสำหรับเส้นพลาสติกที่ใช้งานอยู่"
+msgstr "รหัส G นี้จะถูกแทรกเมื่อมีการเปลี่ยนประเภทการพิมพ์สำหรับเส้นพลาสติกที่ใช้งานอยู่"
msgid "Line width for top surfaces. If expressed as a %, it will be computed over the nozzle diameter."
msgstr "ความกว้างของเส้นสำหรับพื้นผิวด้านบน หากแสดงเป็น % จะคำนวณตามเส้นผ่านศูนย์กลางของหัวฉีด"
@@ -16981,13 +17089,13 @@ msgstr ""
"การตั้งค่าในจำนวนการถอนก่อนการล้างการตั้งค่าด้านล่างจะทำการถอนส่วนที่เกินก่อนการล้าง มิฉะนั้นจะดำเนินการหลังจากนั้น"
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
-msgstr "หอเช็ดสามารถใช้เพื่อทำความสะอาดสิ่งตกค้างบนหัวฉีด และทำให้แรงดันในห้องภายในหัวฉีดคงที่ เพื่อหลีกเลี่ยงข้อบกพร่องในลักษณะที่ปรากฏเมื่อพิมพ์วัตถุ"
+msgstr "Wipe Tower สามารถใช้เพื่อทำความสะอาดสิ่งตกค้างบนหัวฉีด และทำให้แรงดันในห้องภายในหัวฉีดคงที่ เพื่อหลีกเลี่ยงข้อบกพร่องในลักษณะที่ปรากฏเมื่อพิมพ์วัตถุ"
msgid "Internal ribs"
-msgstr "ซี่โครงภายใน"
+msgstr "ครีบเสริมภายใน"
msgid "Enable internal ribs to increase the stability of the prime tower."
-msgstr "เปิดใช้งานซี่โครงภายในเพื่อเพิ่มความมั่นคงของหอคอยหลัก"
+msgstr "เปิดใช้ครีบเสริมภายในเพื่อเพิ่มความมั่นคงของ Prime Tower"
msgid "Purging volumes"
msgstr "ปริมาตรการไล่เส้น"
@@ -17007,10 +17115,10 @@ msgid "The flush multiplier used in fast purge mode."
msgstr "ตัวคูณการไล่เส้นที่ใช้ในโหมดไล่เส้นเร็ว"
msgid "Prime volume"
-msgstr "ปริมาณเฉพาะ"
+msgstr "ปริมาตร Prime"
msgid "This is the volume of material to prime the extruder with on the tower."
-msgstr "ปริมาตรวัสดุสำหรับเตรียมหัวฉีดบนไพรม์ทาวเวอร์"
+msgstr "ปริมาตรวัสดุสำหรับเตรียมหัวฉีดบน Prime Tower"
# AI Translated
msgid "Prime volume mode"
@@ -17018,7 +17126,7 @@ msgstr "โหมดปริมาณการไพรม์"
# AI Translated
msgid "Selects how the wipe-tower prime and flush volumes are computed on multi-extruder printers."
-msgstr "เลือกวิธีการคำนวณปริมาณการไพรม์และการไล่เส้นของทาวเวอร์เช็ดหัวฉีดบนเครื่องพิมพ์แบบหลายชุดดันเส้น"
+msgstr "เลือกวิธีการคำนวณปริมาณการไพรม์และการไล่เส้นของ Wipe Tower บนเครื่องพิมพ์แบบหลายชุดดันเส้น"
# AI Translated
msgid "Saving"
@@ -17029,25 +17137,25 @@ msgid "Fast"
msgstr "เร็ว"
msgid "This is the width of prime towers."
-msgstr "ความกว้างของไพรม์ทาวเวอร์"
+msgstr "ความกว้างของ Prime Tower"
msgid "Wipe tower rotation angle"
-msgstr "เช็ดมุมการหมุนของทาวเวอร์"
+msgstr "มุมหมุนของ Wipe Tower"
msgid "Wipe tower rotation angle with respect to X axis."
-msgstr "เช็ดมุมการหมุนของทาวเวอร์ตามแกน X"
+msgstr "มุมหมุนของ Wipe Tower เทียบกับแกน X"
msgid "Brim width of prime tower, negative number means auto calculated width based on the height of prime tower."
-msgstr "ความกว้างขอบของหอคอยหลัก ตัวเลขติดลบหมายถึงความกว้างที่คำนวณโดยอัตโนมัติตามความสูงของหอคอยหลัก"
+msgstr "ความกว้างขอบของ Prime Tower ตัวเลขติดลบหมายถึงความกว้างที่คำนวณโดยอัตโนมัติตามความสูงของ Prime Tower"
msgid "Stabilization cone apex angle"
msgstr "มุมเอเพ็กซ์ของกรวยป้องกันการสั่นไหว"
msgid "Angle at the apex of the cone that is used to stabilize the wipe tower. Larger angle means wider base."
-msgstr "มุมที่ปลายกรวยที่ใช้เพื่อรักษาเสถียรภาพของหอเช็ด มุมที่ใหญ่ขึ้นหมายถึงฐานที่กว้างขึ้น"
+msgstr "มุมที่ปลายกรวยที่ใช้เพื่อรักษาเสถียรภาพของ Wipe Tower มุมที่ใหญ่ขึ้นหมายถึงฐานที่กว้างขึ้น"
msgid "Maximum wipe tower print speed"
-msgstr "ความเร็วการพิมพ์ไวต์ทาวเวอร์สูงสุด"
+msgstr "ความเร็วการพิมพ์ Wipe Tower สูงสุด"
msgid ""
"The maximum print speed when purging in the wipe tower and printing the wipe tower sparse layers. When purging, if the sparse infill speed or calculated speed from the filament max volumetric speed is lower, the lowest will be used instead.\n"
@@ -17064,11 +17172,11 @@ msgstr ""
"\n"
"เมื่อพิมพ์ชั้นเบาบาง หากความเร็วเส้นรอบวงภายในหรือความเร็วที่คำนวณจากความเร็วปริมาตรสูงสุดของเส้นพลาสติกต่ำกว่า ความเร็วต่ำสุดจะถูกนำมาใช้แทน\n"
"\n"
-"การเพิ่มความเร็วนี้อาจส่งผลต่อเสถียรภาพของทาวเวอร์ รวมทั้งเพิ่มแรงที่หัวฉีดชนกับหยดใดๆ ที่อาจก่อตัวบนทาวเวอร์เช็ด\n"
+"การเพิ่มความเร็วนี้อาจส่งผลต่อเสถียรภาพของทาวเวอร์ รวมทั้งเพิ่มแรงที่หัวฉีดชนกับหยดใดๆ ที่อาจก่อตัวบน Wipe Tower\n"
"\n"
"ก่อนที่จะเพิ่มพารามิเตอร์นี้เกินกว่าค่าเริ่มต้นที่ 90 มม./วินาที ตรวจสอบให้แน่ใจว่าเครื่องพิมพ์ของคุณสามารถเชื่อมต่อที่ความเร็วที่เพิ่มขึ้นได้อย่างน่าเชื่อถือ และจะมีการควบคุมอย่างดีเมื่อเปลี่ยนเครื่องมือ\n"
"\n"
-"สำหรับปริมณฑลภายนอกของไวต์ทาวเวอร์ ความเร็วของปริมณฑลภายในจะถูกใช้โดยไม่คำนึงถึงการตั้งค่านี้"
+"สำหรับปริมณฑลภายนอกของ Wipe Tower ความเร็วของปริมณฑลภายในจะถูกใช้โดยไม่คำนึงถึงการตั้งค่านี้"
msgid "Wall type"
msgstr "ชนิดติดผนัง"
@@ -17079,10 +17187,10 @@ msgid ""
"2. Cone: A cone with a fillet at the bottom to help stabilize the wipe tower.\n"
"3. Rib: Adds four ribs to the tower wall for enhanced stability."
msgstr ""
-"เช็ดทาวเวอร์ชนิดผนังด้านนอก\n"
+"Wipe Tower ชนิดผนังด้านนอก\n"
"1. สี่เหลี่ยมผืนผ้า: ประเภทผนังเริ่มต้น ซึ่งเป็นสี่เหลี่ยมผืนผ้าที่มีความกว้างและความสูงคงที่\n"
-"2. กรวย: กรวยที่มีเนื้ออยู่ด้านล่างเพื่อช่วยรักษาเสถียรภาพของหอเช็ด\n"
-"3. ซี่โครง: เพิ่มสี่ซี่โครงเข้ากับผนังหอคอยเพื่อเพิ่มความมั่นคง"
+"2. กรวย: กรวยที่มีเนื้ออยู่ด้านล่างเพื่อช่วยรักษาเสถียรภาพของ Wipe Tower\n"
+"3. ซี่โครง: เพิ่มสี่ซี่โครงเข้ากับผนัง Wipe Tower เพื่อเพิ่มความมั่นคง"
msgid "Rectangle"
msgstr "สี่เหลี่ยมผืนผ้า"
@@ -17100,40 +17208,40 @@ msgid "Rib width"
msgstr "ความกว้างของซี่โครง"
msgid "Rib width is always less than half the prime tower side length."
-msgstr "ความกว้างของซี่โครงจะน้อยกว่าครึ่งหนึ่งของความยาวด้านของไพรม์ทาวเวอร์เสมอ"
+msgstr "ความกว้างของซี่โครงจะน้อยกว่าครึ่งหนึ่งของความยาวด้านของ Prime Tower เสมอ"
msgid "Fillet wall"
msgstr "ผนังเนื้อ"
msgid "The wall of prime tower will fillet."
-msgstr "ผนังของไพร์มทาวเวอร์จะแล่เป็นเนื้อเดียวกัน"
+msgstr "ผนังของ Prime Tower จะแล่เป็นเนื้อเดียวกัน"
msgid "The extruder to use when printing perimeter of the wipe tower. Set to 0 to use the one that is available (non-soluble would be preferred)."
-msgstr "ชุดดันเส้นที่จะใช้ในการพิมพ์ปริมณฑลของหอเช็ด ตั้งค่าเป็น 0 เพื่อใช้อันที่มีอยู่ (แนะนำให้ใช้แบบไม่ละลายน้ำ)"
+msgstr "ชุดดันเส้นที่จะใช้ในการพิมพ์ปริมณฑลของ Wipe Tower ตั้งค่าเป็น 0 เพื่อใช้อันที่มีอยู่ (แนะนำให้ใช้แบบไม่ละลายน้ำ)"
msgid "Purging volumes - load/unload volumes"
msgstr "การล้างไดรฟ์ข้อมูล - โหลด/ยกเลิกการโหลดไดรฟ์ข้อมูล"
msgid "This vector saves required volumes to change from/to each tool used on the wipe tower. These values are used to simplify creation of the full purging volumes below."
-msgstr "เวกเตอร์นี้จะบันทึกปริมาณที่ต้องการเพื่อเปลี่ยนจาก/ไปยังแต่ละเครื่องมือที่ใช้บนไวด์ทาวเวอร์ ค่าเหล่านี้ใช้เพื่อทำให้การสร้างวอลุ่มการล้างข้อมูลทั้งหมดด้านล่างง่ายขึ้น"
+msgstr "เวกเตอร์นี้จะบันทึกปริมาณที่ต้องการเพื่อเปลี่ยนจาก/ไปยังแต่ละเครื่องมือที่ใช้บน Wipe Tower ค่าเหล่านี้ใช้เพื่อทำให้การสร้างวอลุ่มการล้างข้อมูลทั้งหมดด้านล่างง่ายขึ้น"
msgid "Skip points"
msgstr "ข้ามจุด"
msgid "The wall of prime tower will skip the start points of wipe path."
-msgstr "ผนังของไพร์มทาวเวอร์จะข้ามจุดเริ่มต้นของเส้นทางการเช็ด"
+msgstr "ผนังของ Prime Tower จะข้ามจุดเริ่มต้นของเส้นทางการเช็ด"
msgid "Enable tower interface features"
msgstr "เปิดใช้งานคุณสมบัติอินเทอร์เฟซแบบทาวเวอร์"
msgid "Enable optimized prime tower interface behavior when different materials meet."
-msgstr "เปิดใช้งานพฤติกรรมอินเทอร์เฟซของไพรม์ทาวเวอร์ที่ได้รับการปรับให้เหมาะสมเมื่อวัสดุที่แตกต่างกันมาบรรจบกัน"
+msgstr "เปิดใช้งานพฤติกรรมอินเทอร์เฟซของ Prime Tower ที่ได้รับการปรับให้เหมาะสมเมื่อวัสดุที่แตกต่างกันมาบรรจบกัน"
msgid "Cool down from interface boost during prime tower"
-msgstr "เย็นลงจากการเพิ่มอินเทอร์เฟซระหว่างหอคอยหลัก"
+msgstr "การระบายความร้อนที่เลเยอร์อินเทอร์เฟซของ Prime Tower"
msgid "When interface-layer temperature boost is active, set the nozzle back to print temperature at the start of the prime tower so it cools down during the tower."
-msgstr "เมื่อเปิดใช้งานการเพิ่มอุณหภูมิของชั้นอินเทอร์เฟซ ให้ตั้งค่าหัวฉีดกลับไปเป็นอุณหภูมิการพิมพ์ที่จุดเริ่มต้นของไพรม์ทาวเวอร์ เพื่อให้เย็นลงระหว่างทาวเวอร์"
+msgstr "เมื่อเปิดใช้งานการเพิ่มอุณหภูมิของชั้นอินเทอร์เฟซ ให้ตั้งค่าหัวฉีดกลับไปเป็นอุณหภูมิการพิมพ์ที่จุดเริ่มต้นของ Prime Tower เพื่อให้เย็นลงระหว่าง Prime Tower"
msgid "Infill gap"
msgstr "การเติมช่องว่าง"
@@ -17142,13 +17250,13 @@ msgid "Infill gap."
msgstr "การเติมช่องว่าง."
msgid "Purging after filament change will be done inside objects' infills. This may lower the amount of waste and decrease the print time. If the walls are printed with transparent filament, the mixed color infill will be visible. It will not take effect unless the prime tower is enabled."
-msgstr "การล้างหลังจากเปลี่ยนเส้นพลาสติกจะดำเนินการภายในส่วนไส้ในของวัตถุ สิ่งนี้อาจลดปริมาณขยะและลดเวลาในการพิมพ์ หากผนังพิมพ์ด้วยเส้นพลาสติกโปร่งใส จะเห็นไส้ในสีผสมไว้ด้านนอก มันจะไม่มีผลเว้นแต่จะเปิดใช้งานไพรม์ทาวเวอร์"
+msgstr "การล้างหลังจากเปลี่ยนเส้นพลาสติกจะดำเนินการภายในส่วนไส้ในของวัตถุ สิ่งนี้อาจลดปริมาณขยะและลดเวลาในการพิมพ์ หากผนังพิมพ์ด้วยเส้นพลาสติกโปร่งใส จะเห็นไส้ในสีผสมไว้ด้านนอก มันจะไม่มีผลเว้นแต่จะเปิดใช้งาน Prime Tower"
msgid "Purging after filament change will be done inside objects' support. This may lower the amount of waste and decrease the print time. It will not take effect unless a prime tower is enabled."
-msgstr "การล้างข้อมูลหลังจากเปลี่ยนเส้นพลาสติกจะดำเนินการภายในส่วนรองรับของวัตถุ สิ่งนี้อาจลดปริมาณขยะและลดเวลาในการพิมพ์ มันจะไม่มีผลเว้นแต่จะเปิดใช้งานไพรม์ทาวเวอร์"
+msgstr "การล้างข้อมูลหลังจากเปลี่ยนเส้นพลาสติกจะดำเนินการภายในส่วนรองรับของวัตถุ สิ่งนี้อาจลดปริมาณขยะและลดเวลาในการพิมพ์ มันจะไม่มีผลเว้นแต่จะเปิดใช้งาน Prime Tower"
msgid "This object will be used to purge the nozzle after a filament change to save filament and decrease the print time. Colors of the objects will be mixed as a result. It will not take effect unless the prime tower is enabled."
-msgstr "วัตถุนี้จะใช้ในการล้างหัวฉีดหลังจากเปลี่ยนเส้นพลาสติกเพื่อประหยัดเส้นพลาสติกและลดเวลาในการพิมพ์ สีของวัตถุจะผสมกัน มันจะไม่มีผลเว้นแต่จะเปิดใช้งานไพรม์ทาวเวอร์"
+msgstr "วัตถุนี้จะใช้ในการล้างหัวฉีดหลังจากเปลี่ยนเส้นพลาสติกเพื่อประหยัดเส้นพลาสติกและลดเวลาในการพิมพ์ สีของวัตถุจะผสมกัน มันจะไม่มีผลเว้นแต่จะเปิดใช้งาน Prime Tower"
msgid "Maximal bridging distance"
msgstr "ระยะเชื่อมต่อสูงสุด"
@@ -17157,16 +17265,16 @@ msgid "Maximal distance between supports on sparse infill sections."
msgstr "ระยะห่างสูงสุดระหว่างส่วนรองรับในส่วน ไส้ใน แบบกระจัดกระจาย"
msgid "Wipe tower purge lines spacing"
-msgstr "เช็ดระยะห่างบรรทัดล้างทาวเวอร์"
+msgstr "ระยะห่างเส้นไล่พลาสติกของ Wipe Tower"
msgid "Spacing of purge lines on the wipe tower."
-msgstr "ระยะห่างของเส้นไล่ล้างบนหอเช็ด"
+msgstr "ระยะห่างของเส้นไล่ล้างบน Wipe Tower"
msgid "Extra flow for purging"
msgstr "กระแสพิเศษสำหรับการล้าง"
msgid "Extra flow used for the purging lines on the wipe tower. This makes the purging lines thicker or narrower than they normally would be. The spacing is adjusted automatically."
-msgstr "การไหลพิเศษที่ใช้สำหรับท่อไล่ล้างบนหอเช็ด ซึ่งจะทำให้เส้นการล้างหนาหรือแคบกว่าปกติ ระยะห่างจะถูกปรับโดยอัตโนมัติ"
+msgstr "การไหลพิเศษที่ใช้สำหรับท่อไล่ล้างบน Wipe Tower ซึ่งจะทำให้เส้นการล้างหนาหรือแคบกว่าปกติ ระยะห่างจะถูกปรับโดยอัตโนมัติ"
msgid "Idle temperature"
msgstr "อุณหภูมิว่าง"
@@ -17748,10 +17856,10 @@ msgid "Specific for sequential printing. Zero-based index of currently printed o
msgstr "เฉพาะสำหรับการพิมพ์ตามลำดับ ดัชนีแบบศูนย์ของวัตถุที่พิมพ์ในปัจจุบัน"
msgid "Has wipe tower"
-msgstr "มีหอเช็ด"
+msgstr "มี Wipe Tower"
msgid "Whether or not wipe tower is being generated in the print."
-msgstr "มีการสร้างเช็ดทาวเวอร์ในการพิมพ์หรือไม่"
+msgstr "มีการสร้าง Wipe Tower ในการพิมพ์หรือไม่"
msgid "Initial extruder"
msgstr "ชุดดันเส้นเริ่มต้น"
@@ -17838,16 +17946,16 @@ msgid "Total cost of all material used in the print. Calculated from filament_co
msgstr "ต้นทุนรวมของวัสดุทั้งหมดที่ใช้ในการพิมพ์ คำนวณจากค่า fil_cost ในการตั้งค่า เส้นพลาสติก"
msgid "Total wipe tower cost"
-msgstr "ต้นทุนเช็ดทาวเวอร์ทั้งหมด"
+msgstr "ต้นทุน Wipe Tower ทั้งหมด"
msgid "Total cost of the material wasted on the wipe tower. Calculated from filament_cost value in Filament Settings."
-msgstr "ต้นทุนรวมของวัสดุที่เสียไปบนไวด์ทาวเวอร์ คำนวณจากค่า fil_cost ในการตั้งค่า เส้นพลาสติก"
+msgstr "ต้นทุนรวมของวัสดุที่เสียไปบน Wipe Tower คำนวณจากค่า fil_cost ในการตั้งค่า เส้นพลาสติก"
msgid "Wipe tower volume"
msgstr "เช็ดปริมาตรทาวเวอร์"
msgid "Total filament volume extruded on the wipe tower."
-msgstr "ปริมาตรเส้นพลาสติกทั้งหมดที่อัดบนไวด์ทาวเวอร์"
+msgstr "ปริมาตรเส้นพลาสติกทั้งหมดที่อัดบน Wipe Tower"
msgid "Used filament"
msgstr "เส้นพลาสติกที่ใช้แล้ว"
@@ -18045,8 +18153,8 @@ msgid ""
"An object has enabled XY Size compensation which will not be used because it is also fuzzy skin painted.\n"
"XY Size compensation cannot be combined with fuzzy skin painting."
msgstr ""
-"วัตถุได้เปิดใช้งานการชดเชยขนาด XY ซึ่งจะไม่ถูกใช้เนื่องจากเป็นสีที่ไม่ชัดเจนเช่นกัน\n"
-"การชดเชยขนาด XY ไม่สามารถใช้ร่วมกับการลงสีผิวแบบคลุมเครือได้"
+"วัตถุได้เปิดใช้งานการชดเชยขนาด XY ซึ่งจะไม่ถูกใช้เนื่องจากถูกระบายสีผิวฟัซซีไว้เช่นกัน\n"
+"การชดเชยขนาด XY ไม่สามารถใช้ร่วมกับการระบายสีผิวฟัซซีได้"
msgid "Object name"
msgstr "ชื่อออบเจ็กต์"
@@ -19681,9 +19789,6 @@ msgstr "เครื่องพิมพ์ทางกายภาพ"
msgid "Print Host upload"
msgstr "อัพโหลดโฮสต์การพิมพ์"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "เลือกการใช้งานตัวแทนเครือข่ายสำหรับการสื่อสารของเครื่องพิมพ์ ตัวแทนที่มีอยู่จะได้รับการลงทะเบียนเมื่อเริ่มต้น"
-
msgid "Select a Flashforge printer"
msgstr "เลือกเครื่องพิมพ์ Flashforge"
@@ -20575,9 +20680,6 @@ msgstr "เกิดสิ่งที่ไม่คาดคิดขณะพ
msgid "User canceled."
msgstr "ผู้ใช้ยกเลิก"
-msgid "Head diameter"
-msgstr "เส้นผ่านศูนย์กลางหัว"
-
msgid "Max angle"
msgstr "มุมสูงสุด"
@@ -20591,7 +20693,7 @@ msgid "Auto-generate"
msgstr "สร้างอัตโนมัติ"
msgid "Generate brim ears using Max angle and Detection radius"
-msgstr "สร้างหูขอบยึดชิ้นงานนกโดยใช้มุมสูงสุดและรัศมีการตรวจจับ"
+msgstr "สร้างหูขอบยึดชิ้นงาน (Brim Ears) โดยใช้มุมสูงสุดและรัศมีการตรวจจับ"
msgid "Add or Select"
msgstr "เพิ่มหรือเลือก"
@@ -20606,7 +20708,7 @@ msgid "invalid brim ears"
msgstr "หูขอบยึดชิ้นงานไม่ถูกต้อง"
msgid "Brim Ears"
-msgstr "หูขอบยึดชิ้นงาน"
+msgstr "หูขอบยึดชิ้นงาน (Brim Ears)"
msgid "Please select single object."
msgstr "กรุณาเลือกวัตถุเดียว"
@@ -21361,6 +21463,22 @@ msgstr ""
"หลีกเลี่ยงการบิดเบี้ยว\n"
"คุณรู้หรือไม่ว่าเมื่อพิมพ์วัสดุที่มีแนวโน้มที่จะเกิดการบิดเบี้ยว เช่น ABS การเพิ่มอุณหภูมิฐานพิมพ์อย่างเหมาะสมสามารถลดความน่าจะเป็นของการบิดเบี้ยวได้"
+#~ 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 height limits, this may cause printing quality issues."
+#~ msgstr "ความสูงของเลเยอร์เกินขีดจำกัดในการตั้งค่าเครื่องพิมพ์ -> ชุดดันเส้น -> ขีดจำกัดความสูงของเลเยอร์ ซึ่งอาจทำให้เกิดปัญหาคุณภาพการพิมพ์"
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "ปรับเป็นช่วงที่ตั้งไว้อัตโนมัติ?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "เส้นผ่านศูนย์กลางหัว"
+
#~ msgid "Print order within a single layer."
#~ msgstr "สั่งพิมพ์ภายในชั้นเดียว"
@@ -21572,7 +21690,7 @@ msgstr ""
#~ msgstr "เนื้อหาที่ตั้งไว้ล่วงหน้ามีขนาดใหญ่เกินกว่าจะซิงค์กับระบบคลาวด์ (เกิน 1MB) โปรดลดขนาดที่กำหนดไว้ล่วงหน้าโดยการลบการกำหนดค่าที่กำหนดเองออกหรือใช้เฉพาะในเครื่องเท่านั้น"
#~ msgid "Enable adaptive pressure advance for overhangs (beta)"
-#~ msgstr "เปิดใช้งานการปรับPressure Advanceสำหรับระยะยื่น (เบต้า)"
+#~ msgstr "เปิดใช้ Adaptive Pressure Advance สำหรับส่วนยื่น (เบต้า)"
#~ msgid ""
#~ "Enable adaptive PA for overhangs as well as when flow changes within the same feature. This is an experimental option, as if the PA profile is not set accurately, it will cause uniformity issues on the external surfaces before and after overhangs.\n"
@@ -21582,7 +21700,7 @@ msgstr ""
#~ "ไม่รองรับเครื่องพิมพ์ Prusa เพราะจะหยุดชั่วคราวเพื่อประมวลผลการเปลี่ยน PA ทำให้เกิดความล่าช้าและข้อบกพร่อง"
#~ msgid "Pressure advance for bridges"
-#~ msgstr "แรงดันล่วงหน้า (Pressure Advance)สำหรับสะพาน"
+#~ msgstr "Pressure Advance สำหรับสะพาน"
#~ msgid ""
#~ "Pressure advance value for bridges. Set to 0 to disable.\n"
diff --git a/localization/i18n/tr/OrcaSlicer_tr.po b/localization/i18n/tr/OrcaSlicer_tr.po
index 7ef4d33cfd..c3deff8bd8 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: 2026-07-29 17:40-0300\n"
-"PO-Revision-Date: 2026-04-08 23:59+0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
+"PO-Revision-Date: 2026-08-21 23:18+0300\n"
"Last-Translator: GlauTech\n"
"Language-Team: \n"
"Language: tr\n"
@@ -12,29 +12,23 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n==1) ? 0 : 1;\n"
-"X-Generator: Po Translator App\n"
+"X-Generator: Poedit 3.9\n"
-# AI Translated
msgid "Main Extruder"
msgstr "Ana Ekstruder"
-# AI Translated
msgid "Main extruder"
msgstr "Ana ekstruder"
-# AI Translated
msgid "main extruder"
msgstr "ana ekstruder"
-# AI Translated
msgid "Auxiliary Extruder"
msgstr "Yardımcı Ekstruder"
-# AI Translated
msgid "Auxiliary extruder"
msgstr "Yardımcı ekstruder"
-# AI Translated
msgid "auxiliary extruder"
msgstr "yardımcı ekstruder"
@@ -56,27 +50,21 @@ msgstr "Sağ ekstruder"
msgid "right extruder"
msgstr "sağ ekstruder"
-# AI Translated
msgid "Main Nozzle"
msgstr "Ana Nozul"
-# AI Translated
msgid "Main nozzle"
msgstr "Ana nozul"
-# AI Translated
msgid "main nozzle"
msgstr "ana nozul"
-# AI Translated
msgid "Auxiliary Nozzle"
msgstr "Yardımcı Nozul"
-# AI Translated
msgid "Auxiliary nozzle"
msgstr "Yardımcı nozul"
-# AI Translated
msgid "auxiliary nozzle"
msgstr "yardımcı nozul"
@@ -84,10 +72,10 @@ msgid "Left Nozzle"
msgstr "Sol Nozul"
msgid "Left nozzle"
-msgstr "Sol meme"
+msgstr "Sol nozul"
msgid "left nozzle"
-msgstr "sol meme"
+msgstr "sol nozul"
msgid "Right Nozzle"
msgstr "Sağ Nozul"
@@ -96,7 +84,7 @@ msgid "Right nozzle"
msgstr "Sağ nozul"
msgid "right nozzle"
-msgstr "sağ meme"
+msgstr "sağ nozul"
# AI Translated
msgid "Main Hotend"
@@ -106,59 +94,45 @@ msgstr "Ana Hotend"
msgid "Main hotend"
msgstr "Ana hotend"
-# AI Translated
msgid "main hotend"
msgstr "ana hotend"
-# AI Translated
msgid "Auxiliary Hotend"
msgstr "Yardımcı Hotend"
-# AI Translated
msgid "Auxiliary hotend"
msgstr "Yardımcı hotend"
-# AI Translated
msgid "auxiliary hotend"
msgstr "yardımcı hotend"
-# AI Translated
msgid "Left Hotend"
msgstr "Sol Hotend"
-# AI Translated
msgid "Left hotend"
msgstr "Sol hotend"
-# AI Translated
msgid "left hotend"
msgstr "sol hotend"
-# AI Translated
msgid "Right Hotend"
msgstr "Sağ Hotend"
-# AI Translated
msgid "Right hotend"
msgstr "Sağ hotend"
-# AI Translated
msgid "right hotend"
msgstr "sağ hotend"
-# AI Translated
msgid "main"
msgstr "ana"
-# AI Translated
msgid "auxiliary"
msgstr "yardımcı"
-# AI Translated
msgid "Main"
msgstr "Ana"
-# AI Translated
msgid "Auxiliary"
msgstr "Yardımcı"
@@ -738,9 +712,8 @@ msgstr "Sabit adım sürükleme"
msgid "Context Menu"
msgstr "Bağlam Menüsü"
-# AI Translated
msgid "Toggle Auto-Drop"
-msgstr "Otomatik Bırakmayı Aç/Kapat"
+msgstr "Otomatik düşürmeyi aç / kapat"
msgid "Single sided scaling"
msgstr "Tek taraflı ölçekleme"
@@ -791,9 +764,8 @@ msgstr "Nesne"
msgid "Part"
msgstr "Parça"
-# AI Translated
msgid "Relative"
-msgstr "Göreli"
+msgstr "Göreceli"
# AI Translated
msgid "Coordinate system used for transform actions."
@@ -818,7 +790,7 @@ msgid "Size"
msgstr "Boyut"
msgid "Uniform scale"
-msgstr "düzgün ölçek"
+msgstr "Orantılı ölçekleme"
msgid "Planar"
msgstr "Düzlemsel"
@@ -1159,7 +1131,7 @@ msgid "Show wireframe"
msgstr "Wireframe göster"
msgid "Unable to apply when processing preview"
-msgstr "İşlem önizlemesi sırasında uygulanamaz."
+msgstr "Önizleme işlenirken uygulanamaz"
msgid "Operation already cancelling. Please wait a few seconds."
msgstr "İşlem zaten iptal ediliyor. Lütfen birkaç saniye bekleyin."
@@ -1239,7 +1211,7 @@ msgid "Text move"
msgstr "Metin taşıma"
msgid "Set Mirror"
-msgstr "Aynayı Ayarla"
+msgstr "Aynalamayı ayarla"
msgid "Embossed text"
msgstr "Kabartmalı metin"
@@ -1727,7 +1699,7 @@ msgid "Change file"
msgstr "Dosyayı değiştir"
msgid "Change to another SVG file."
-msgstr "Başka bir .svg dosyasına geçin"
+msgstr "Farklı bir SVG dosyası seç."
msgid "Forget the file path"
msgstr "Dosya yolunu unut"
@@ -1754,7 +1726,7 @@ msgid "Save SVG file"
msgstr "SVG dosyasını kaydet"
msgid "Save as SVG file."
-msgstr "'.svg' dosyası olarak kaydet"
+msgstr "SVG dosyası olarak kaydet."
msgid "Size in emboss direction."
msgstr "Kabartma yönünde boyut."
@@ -1786,10 +1758,10 @@ msgid "Lock/unlock rotation angle when dragging above the surface."
msgstr "Yüzeyin üzerinde sürüklerken dönüş açısını kilitleyin/kilidini açın."
msgid "Mirror vertically"
-msgstr "Dikey olarak yansıt"
+msgstr "Dikey aynala"
msgid "Mirror horizontally"
-msgstr "Yatay olarak yansıt"
+msgstr "Yatay aynala"
#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else).
msgid "Change SVG Type"
@@ -1797,7 +1769,7 @@ msgstr "SVG Türünü Değiştir"
#. TRN - Input label. Be short as possible
msgid "Mirror"
-msgstr "Ayna"
+msgstr "Aynala"
msgid "Choose SVG file for emboss:"
msgstr "Kabartma için SVG dosyasını seçin:"
@@ -2074,10 +2046,10 @@ msgid "3MF files"
msgstr "3MF dosyaları"
msgid "G-code 3MF files"
-msgstr "Gcode 3MF dosyaları"
+msgstr "G-code 3MF dosyaları"
msgid "G-code files"
-msgstr "G kodu dosyaları"
+msgstr "G-code dosyaları"
msgid "Supported files"
msgstr "Desteklenen dosyalar"
@@ -2306,7 +2278,7 @@ msgid "new or open project file is not allowed during the slicing process!"
msgstr "dilimleme işlemi sırasında yeni veya açık proje dosyasına izin verilmez!"
msgid "Open Project"
-msgstr "Projeyi Aç"
+msgstr "Projeyi aç"
msgid "The version of Orca Slicer is too low and needs to be updated to the latest version before it can be used normally."
msgstr "Orca Slicer'ın sürümü çok düşük ve normal şekilde kullanılabilmesi için en son sürüme güncellenmesi gerekiyor."
@@ -2430,7 +2402,7 @@ msgstr "Gizlilik Politikası Güncellemesi"
# AI Translated
#, c-format, boost-format
msgid "your Orca Cloud profile (user ID: \"%s\")"
-msgstr "Orca Cloud profiliniz (kullanıcı kimliği: \"%s\")"
+msgstr "orca Cloud profiliniz (Kullanıcı ID: \"%s\")"
# AI Translated
msgid "your default profile"
@@ -2571,7 +2543,7 @@ msgid "Ongoing uploads"
msgstr "Devam eden yüklemeler"
msgid "Select a G-code file:"
-msgstr "G kodu dosyası seçin:"
+msgstr "G-code dosyası seçin:"
msgid "Could not start URL download. Destination folder is not set. Please choose destination folder in Configuration Wizard."
msgstr "URL indirme işlemi başlatılamadı. Hedef klasör ayarlanmamış. Lütfen Yapılandırma Sihirbazı’nda hedef klasörü seçin."
@@ -2665,7 +2637,7 @@ msgid "Add Negative Part"
msgstr "Negatif parça ekle"
msgid "Add Modifier"
-msgstr "Değiştirici Ekle"
+msgstr "Değiştirici ekle"
msgid "Add Support Blocker"
msgstr "Destek engelleyici ekle"
@@ -2734,16 +2706,15 @@ msgstr "Simit"
msgid "Orca Cube"
msgstr "Orca Küpü"
-# AI Translated
msgid "OrcaSliced Combo"
-msgstr "OrcaSliced Combo"
+msgstr "Orca Dilimleme Paketi"
# AI Translated
msgid "Orca Badge"
msgstr "Orca Rozeti"
msgid "Orca Tolerance Test"
-msgstr "Orca tolerans testi"
+msgstr "Orca Tolerans Testi"
msgid "3DBenchy"
msgstr "3DBenchy"
@@ -2807,17 +2778,16 @@ msgid "Set as Individual Objects"
msgstr "Bireysel nesneler olarak ayarla"
msgid "Fill bed with copies"
-msgstr "Yatağı kopyalarla doldurun"
+msgstr "Yatağı kopyalarla doldur"
msgid "Fill the remaining area of bed with copies of the selected object"
-msgstr "Yatağın kalan alanını seçilen nesnenin kopyalarıyla doldurun"
+msgstr "Yatağın kalan alanını seçili nesnenin kopyalarıyla doldur"
msgid "Printable"
msgstr "Yazdırılabilir"
-# AI Translated
msgid "Auto Drop"
-msgstr "Otomatik Bırakma"
+msgstr "Otomatik düşür"
# AI Translated
msgid "Automatically drops the selected object to the build plate."
@@ -2925,19 +2895,19 @@ msgid "Along X Axis"
msgstr "X ekseni boyunca"
msgid "Mirror along the X Axis"
-msgstr "X ekseni boyunca aynalama"
+msgstr "X ekseni boyunca aynala"
msgid "Along Y Axis"
msgstr "Y ekseni boyunca"
msgid "Mirror along the Y Axis"
-msgstr "Y ekseni boyunca aynalama"
+msgstr "Y ekseni boyunca aynala"
msgid "Along Z Axis"
msgstr "Z ekseni boyunca"
msgid "Mirror along the Z Axis"
-msgstr "Z ekseni boyunca aynalama"
+msgstr "Z ekseni boyunca aynala"
msgid "Mirror object"
msgstr "Nesneyi aynala"
@@ -2967,7 +2937,7 @@ msgid "Add Models"
msgstr "Model ekle"
msgid "Show Labels"
-msgstr "Etiketleri Göster"
+msgstr "Etiketleri göster"
msgid "To Objects"
msgstr "Nesnelere"
@@ -2991,25 +2961,25 @@ msgid "Auto orientation"
msgstr "Otomatik yönlendirme"
msgid "Auto orient the object to improve print quality"
-msgstr "Baskı kalitesini artırmak için nesneyi otomatik olarak yönlendirin."
+msgstr "Baskı kalitesini artırmak için nesneyi otomatik yönlendir"
msgid "Edit"
msgstr "Düzenle"
msgid "Merge with"
-msgstr "Şununla birleştir:"
+msgstr "Şununla birleştir"
msgid "Delete this filament"
-msgstr "Bu filamanı sil"
+msgstr "Bu filamenti sil"
msgid "Select All"
msgstr "Hepsini seç"
msgid "Select all objects on the current plate"
-msgstr "geçerli plakadaki tüm nesneleri seç"
+msgstr "Mevcut plakadaki tüm nesneleri seç"
msgid "Select All Plates"
-msgstr "Tüm Plakaları Seç"
+msgstr "Tüm plakaları seç"
msgid "Select all objects on all plates"
msgstr "Tüm plakalardaki tüm nesneleri seç"
@@ -3018,7 +2988,7 @@ msgid "Delete All"
msgstr "Hepsini sil"
msgid "Delete all objects on the current plate"
-msgstr "geçerli plakadaki tüm nesneleri sil"
+msgstr "Mevcut tabladaki tüm nesneleri sil"
msgid "Arrange"
msgstr "Hizala"
@@ -3045,28 +3015,28 @@ msgid "Remove the selected plate"
msgstr "Seçilen plakayı kaldır"
msgid "Add instance"
-msgstr "Örnek ekle"
+msgstr "Eş kopya ekle"
msgid "Add one more instance of the selected object"
-msgstr "Seçilen nesnenin bir örneğini daha ekle"
+msgstr "Seçili nesneye bir eş kopya ekle"
msgid "Remove instance"
-msgstr "Örneği kaldır"
+msgstr "Eş kopyayı kaldır"
msgid "Remove one instance of the selected object"
-msgstr "Seçilen nesnenin bir örneğini kaldır"
+msgstr "Seçili nesnenin bir eş kopyasını kaldır"
msgid "Set number of instances"
-msgstr "Örnek sayısını ayarlayın"
+msgstr "Eş kopya sayısını ayarla"
msgid "Change the number of instances of the selected object"
-msgstr "Seçilen nesnenin örnek sayısını değiştirme"
+msgstr "Seçili nesnenin eş kopya sayısını değiştir"
msgid "Fill bed with instances"
-msgstr "Yatağı örneklerle doldurun"
+msgstr "Yatağı eş kopyalarla doldur"
msgid "Fill the remaining area of bed with instances of the selected object"
-msgstr "Yatağın kalan alanını seçilen nesnenin örnekleriyle doldurun"
+msgstr "Yatağın kalan alanını seçili nesnenin eş kopyalarıyla doldur"
msgid "Clone"
msgstr "Klon oluştur"
@@ -3075,7 +3045,7 @@ msgid "Simplify Model"
msgstr "Modeli basitleştir"
msgid "Subdivision mesh"
-msgstr "Alt bölüm ağı"
+msgstr "Poligon artırma"
msgid "(Lost color)"
msgstr "(Renk kaybı)"
@@ -3090,10 +3060,10 @@ msgid "Edit Process Settings"
msgstr "İşlem ayarlarını düzenle"
msgid "Copy Process Settings"
-msgstr "İşlem Ayarlarını Kopyala"
+msgstr "İşlem ayarlarını kopyala"
msgid "Paste Process Settings"
-msgstr "İşlem Ayarlarını Yapıştır"
+msgstr "İşlem ayarlarını yapıştır"
msgid "Edit print parameters for a single object"
msgstr "Tek bir nesne için yazdırma parametrelerini düzenleme"
@@ -3325,7 +3295,7 @@ msgid "Part manipulation"
msgstr "Parça manipülasyonu"
msgid "Instance manipulation"
-msgstr "Örnek manipülasyonu"
+msgstr "Eş kopya manipülasyonu"
msgid "Height ranges"
msgstr "Yükseklik aralıkları"
@@ -3361,7 +3331,7 @@ msgstr "Parça tipini seçin"
# AI Translated
msgid "Instances to Separated Objects"
-msgstr "Örnekleri Ayrı Nesnelere Dönüştür"
+msgstr "Eş Kopyaları Ayrı Nesnelere Dönüştür"
msgid "Enter new name"
msgstr "Yeni adı girin"
@@ -3410,7 +3380,7 @@ msgid "Invalid numeric."
msgstr "Geçersiz sayı."
msgid "One cell can only be copied to one or more cells in the same column."
-msgstr "bir hücre aynı sütundaki yalnızca bir veya daha fazla hücreye kopyalanabilir"
+msgstr "Bir hücre yalnızca aynı sütundaki bir veya daha fazla hücreye kopyalanabilir."
msgid "Copying multiple cells is not supported."
msgstr "Birden fazla hücre kopyalama desteklenmiyor."
@@ -3478,13 +3448,13 @@ msgid "More"
msgstr "Daha"
msgid "Open Preferences"
-msgstr "Tercihler'i açın."
+msgstr "Tercihleri aç"
msgid "Open next tip"
-msgstr "Sonraki ipucunu açın."
+msgstr "Sonraki ipucunu aç"
msgid "Open documentation in web browser"
-msgstr "Belgeleri web tarayıcısında açın."
+msgstr "Dokümantasyonu web tarayıcısında aç"
msgid "Color"
msgstr "Renk"
@@ -3505,19 +3475,19 @@ msgid "Custom Template:"
msgstr "Özel Şablon:"
msgid "Custom G-code:"
-msgstr "Özel G kodu:"
+msgstr "Özel G-code:"
msgid "Custom G-code"
-msgstr "Özel G kodu"
+msgstr "Özel G-code"
msgid "Enter Custom G-code used on current layer:"
-msgstr "Geçerli katmanda kullanılan Özel G kodunu girin:"
+msgstr "Geçerli katmanda kullanılan Özel G-code'u girin:"
msgid "Jump to layer"
msgstr "Katmana Atla"
msgid "Please enter the layer number."
-msgstr "Lütfen katman numarasını girin"
+msgstr "Lütfen katman numarasını girin."
msgid "Add Pause"
msgstr "Duraklatma Ekle"
@@ -3526,16 +3496,16 @@ msgid "Insert a pause command at the beginning of this layer."
msgstr "Bu katmanın başına bir duraklatma komutu ekleyin."
msgid "Add Custom G-code"
-msgstr "Özel G Kodu Ekle"
+msgstr "Özel G-code Ekle"
msgid "Insert custom G-code at the beginning of this layer."
-msgstr "Bu katmanın başına özel G kodunu ekleyin."
+msgstr "Bu katmanın başına özel G-code'u ekleyin."
msgid "Add Custom Template"
msgstr "Özel Şablon Ekle"
msgid "Insert template custom G-code at the beginning of this layer."
-msgstr "Bu katmanın başlangıcına şablon özel G kodunu ekleyin."
+msgstr "Bu katmanın başlangıcına şablon özel G-code'u ekleyin."
# AI Translated
msgid "Filament "
@@ -3551,10 +3521,10 @@ msgid "Delete Custom Template"
msgstr "Özel Şablonu Sil"
msgid "Edit Custom G-code"
-msgstr "Özel G Kodunu Düzenle"
+msgstr "Özel G-code'u Düzenle"
msgid "Delete Custom G-code"
-msgstr "Özel G Kodunu Sil"
+msgstr "Özel G-code'u Sil"
msgid "Delete Filament Change"
msgstr "Filament Değişikliğini Sil"
@@ -3605,7 +3575,7 @@ msgid "Choose an AMS slot then press \"Load\" or \"Unload\" button to automatica
msgstr "Bir AMS yuvası seçin ve filamentleri otomatik olarak yüklemek veya boşaltmak için “Yükle” veya “Boşalt” düğmesine basın."
msgid "Filament type is unknown which is required to perform this action. Please set target filament's informations."
-msgstr "Bu eylemi gerçekleştirmek için gereken filaman türü bilinmiyor. Lütfen hedef filamanın bilgilerini ayarlayın."
+msgstr "Bu eylemi gerçekleştirmek için gereken filament türü bilinmiyor. Lütfen hedef filamentin bilgilerini ayarlayın."
# AI Translated
msgid "AMS has not been initialized. Please initialize it before use."
@@ -3759,10 +3729,10 @@ msgid "Switch track at Filament Track Switch"
msgstr "Filament Track Switch'te hattı değiştir"
msgid "The maximum temperature cannot exceed "
-msgstr "Maksimum sıcaklık aşılamaz"
+msgstr "Maksimum sıcaklık şu değeri aşamaz: "
msgid "The minmum temperature should not be less than "
-msgstr "Minimum sıcaklık,"
+msgstr "Minimum sıcaklık şu değerden az olamaz: "
# AI Translated
msgid "Type to filter..."
@@ -4069,10 +4039,10 @@ msgid "Encountered an unknown error with the Storage status. Please try again."
msgstr "Depolama durumuyla ilgili bilinmeyen bir hatayla karşılaşıldı. Lütfen tekrar deneyin."
msgid "Sending G-code file over LAN"
-msgstr "LAN üzerinden gcode dosyası gönderiliyor"
+msgstr "LAN üzerinden G-code dosyası gönderiliyor"
msgid "Sending G-code file to SD card"
-msgstr "Gcode dosyası sdcard'a gönderiliyor"
+msgstr "G-code dosyası sdcard'a gönderiliyor"
#, c-format, boost-format
msgid "Successfully sent. Close current page in %s s"
@@ -4082,7 +4052,7 @@ msgid "Storage needs to be inserted before sending to printer."
msgstr "Yazıcıya göndermeden önce depolama biriminin eklenmesi gerekir."
msgid "Sending G-code file over LAN, but the Storage in the printer is abnormal and print-issues may be caused by this."
-msgstr "G kodu dosyası LAN üzerinden gönderiliyor ancak yazıcıdaki Depolama anormal ve yazdırma sorunları bundan kaynaklanabilir."
+msgstr "G-code dosyası LAN üzerinden gönderiliyor ancak yazıcıdaki Depolama anormal ve yazdırma sorunları bundan kaynaklanabilir."
msgid "The Storage in the printer is abnormal. Please replace it with a normal Storage before sending to printer."
msgstr "Yazıcıdaki Depolama anormal. Lütfen yazıcıya göndermeden önce normal bir Depolama ile değiştirin."
@@ -4284,7 +4254,7 @@ msgid ""
"The nozzle flow is not set. Please set the nozzle flow rate before editing the filament.\n"
"'Device -> Print parts'"
msgstr ""
-"Meme akışı ayarlanmamış. Lütfen filamenti düzenlemeden önce nozül akış hızını ayarlayın.\n"
+"Nozul akışı ayarlanmamış. Lütfen filamenti düzenlemeden önce nozul akış hızını ayarlayın.\n"
"'Cihaz -> Parçaları yazdır'"
msgid "AMS"
@@ -4370,7 +4340,7 @@ msgid ""
"And you can click it to modify"
msgstr ""
"Üst yarı alanı: Orijinal\n"
-"Alt yarı alan: Eşleme kaldırıldığında orijinal projedeki filaman kullanılacaktır.\n"
+"Alt yarı alan: Eşleme kaldırıldığında orijinal projedeki filament kullanılacaktır.\n"
"Ve değiştirmek için tıklayabilirsiniz"
msgid ""
@@ -4471,7 +4441,7 @@ msgstr "AMS'yi Etkinleştirme"
# AI Translated
msgid "Print using filament on external spool."
-msgstr "Harici makaradaki filamenti kullanarak yazdırma"
+msgstr "Harici makaradaki filamenti kullanarak yazdır."
msgid "Print with filament in AMS"
msgstr "AMS içerisindeki filamentlerle yazdırma"
@@ -4508,7 +4478,7 @@ msgid ""
"When the current filament runs out, the printer will use identical filament to continue printing.\n"
"*Identical filament: same brand, type and color."
msgstr ""
-"Mevcut filaman bittiğinde yazıcı, yazdırmaya devam etmek için aynı filamanı kullanacaktır.\n"
+"Mevcut filament bittiğinde yazıcı, yazdırmaya devam etmek için aynı filamenti kullanacaktır.\n"
"*Aynı filament: aynı marka, tip ve renkte."
msgid "DRY"
@@ -4527,14 +4497,14 @@ msgid "The AMS will automatically read the filament information when inserting a
msgstr "AMS, yeni bir Bambu Lab filamenti takıldığında filament bilgilerini otomatik olarak okuyacaktır. Bu yaklaşık 20 saniye sürer."
msgid "Note: if a new filament is inserted during printing, the AMS will not automatically read any information until printing is completed."
-msgstr "Not: Yazdırma sırasında yeni bir filaman takılırsa AMS, yazdırma tamamlanana kadar herhangi bir bilgiyi otomatik olarak okumayacaktır."
+msgstr "Not: Yazdırma sırasında yeni bir filament takılırsa AMS, yazdırma tamamlanana kadar herhangi bir bilgiyi otomatik olarak okumayacaktır."
msgid "When inserting a new filament, the AMS will not automatically read its information, leaving it blank for you to enter manually."
msgstr "Yeni bir filament yerleştirirken AMS, bilgileri otomatik olarak okumaz ve manuel olarak girmeniz için boş bırakır."
# AI Translated
msgid "Update on startup"
-msgstr "Başlangıçta güncelle"
+msgstr "Açılışta güncelle"
msgid "The AMS will automatically read the information of inserted filament on start-up. It will take about 1 minute. The reading process will rotate the 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."
@@ -4570,7 +4540,7 @@ msgid "The printer is busy and cannot switch AMS type."
msgstr "Yazıcı meşgul ve AMS türünü değiştiremiyor."
msgid "Please unload all filament before switching."
-msgstr "Lütfen değiştirmeden önce tüm filamanı boşaltın."
+msgstr "Lütfen değiştirmeden önce tüm filamenti boşaltın."
msgid "AMS type switching needs firmware update, taking about 30s. Switch now?"
msgstr "AMS tipi anahtarlama, yaklaşık 30 saniye süren ürün yazılımı güncellemesi gerektirir. Şimdi değiştirilsin mi?"
@@ -4594,7 +4564,7 @@ msgid "Failed to install the plug-in. The plug-in file may be in use. Please res
msgstr "Eklenti yüklenemedi. Eklenti dosyası kullanımda olabilir. Lütfen OrcaSlicer'ı yeniden başlatın ve tekrar deneyin. Ayrıca anti-virüs yazılımı tarafından engellenip engellenmediğini veya silinip silinmediğini de kontrol edin."
msgid "Click here to see more info"
-msgstr "daha fazla bilgi görmek için burayı tıklayın"
+msgstr "Daha fazla bilgi görmek için buraya tıklayın"
msgid "The network plug-in was installed but could not be loaded. Please restart the application."
msgstr "Ağ eklentisi kuruldu ancak yüklenemedi. Lütfen uygulamayı yeniden başlatın."
@@ -4612,7 +4582,7 @@ msgid "Go Home"
msgstr "Anasayfaya Git"
msgid "An error occurred. The system may have run out of memory, or a bug may have occurred."
-msgstr "Bir hata oluştu. Belki sistemin hafızası yeterli değildir veya programın bir hatasıdır"
+msgstr "Bir hata oluştu. Sistem belleği tükenmiş veya bir yazılım hatası meydana gelmiş olabilir."
#, boost-format
msgid "A fatal error occurred: \"%1%\""
@@ -4622,7 +4592,7 @@ msgid "Please save your project and restart the application."
msgstr "Lütfen projeyi kaydedin ve programı yeniden başlatın."
msgid "Processing G-Code from previous file…"
-msgstr "Önceki dosyadan G Kodu işleniyor..."
+msgstr "Önceki dosyadan G-code işleniyor…"
msgid "Slicing complete"
msgstr "Dilimleme tamamlandı"
@@ -4655,38 +4625,38 @@ msgid "Successfully executed post-processing script"
msgstr "İşlem sonrası komut dosyası başarıyla çalıştırıldı"
msgid "Unknown error occurred during exporting G-code."
-msgstr "G kodu dışa aktarılırken bilinmeyen bir hata oluştu."
+msgstr "G-code dışa aktarılırken bilinmeyen bir hata oluştu."
#, boost-format
msgid ""
"Copying of the temporary G-code to the output G-code failed. Maybe the SD card is write locked?\n"
"Error message: %1%"
msgstr ""
-"Geçici G kodunun çıkış G koduna kopyalanması başarısız oldu. Belki SD kart yazma kilitlidir.\n"
+"Geçici G-code'un çıkış G-code'a kopyalanması başarısız oldu. Belki SD kart yazma kilitlidir.\n"
"Hata mesajı: %1%"
#, boost-format
msgid "Copying of the temporary G-code to the output G-code failed. There might be problem with target device, please try exporting again or using different 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."
+msgstr "Geçici G-code'un çıkış G-code'a 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-code %1%.tmp konumunda."
#, boost-format
msgid "Renaming of the G-code after copying to the selected destination folder has failed. Current path is %1%.tmp. Please try exporting again."
-msgstr "Seçilen hedef klasöre kopyalandıktan sonra G kodunun yeniden adlandırılması başarısız oldu. Geçerli yol: %1%.tmp. Lütfen dışa aktarmayı tekrar deneyin."
+msgstr "Seçilen hedef klasöre kopyalandıktan sonra G-code'un yeniden adlandırılması başarısız oldu. Geçerli yol: %1%.tmp. Lütfen dışa aktarmayı tekrar deneyin."
#, boost-format
msgid "Copying of the temporary G-code has finished but the original code at %1% couldn't be opened during copy check. The output G-code is at %2%.tmp."
-msgstr "Geçici G kodunun kopyalanması tamamlandı ancak %1% konumundaki orijinal kod kopyalama kontrolü sırasında açılamadı. Çıkış G kodu %2%.tmp konumundadır."
+msgstr "Geçici G-code'un kopyalanması tamamlandı ancak %1% konumundaki orijinal kod kopyalama kontrolü sırasında açılamadı. Çıkış G-code %2%.tmp konumundadır."
#, boost-format
msgid "Copying of the temporary G-code has finished but the exported code couldn't be opened during copy check. The output G-code is at %1%.tmp."
-msgstr "Geçici G kodunun kopyalanması tamamlandı ancak kopya kontrolü sırasında dışa aktarılan kod açılamadı. Çıkış G kodu %1%.tmp konumundadır."
+msgstr "Geçici G-code'un kopyalanması tamamlandı ancak kopya kontrolü sırasında dışa aktarılan kod açılamadı. Çıkış G-code %1%.tmp konumundadır."
#, boost-format
msgid "G-code file exported to %1%"
-msgstr "G kodu dosyası %1%’e aktarıldı"
+msgstr "G-code dosyası %1%’e aktarıldı"
msgid "Unknown error with G-code export"
-msgstr "G kodunu dışa aktarırken bilinmeyen hata."
+msgstr "G-code dışa aktarımında bilinmeyen hata"
#, boost-format
msgid ""
@@ -4694,12 +4664,12 @@ msgid ""
"Error message: %1%.\n"
"Source file %2%."
msgstr ""
-"Gcode dosyası kaydedilemedi.\n"
+"G-code dosyası kaydedilemedi.\n"
"Hata mesajı: %1%.\n"
"Kaynak dosya %2%."
msgid "Copying of the temporary G-code to the output G-code failed."
-msgstr "Geçici G kodunun çıkış G koduna kopyalanması başarısız oldu"
+msgstr "Geçici G-code dosyasının çıktı G-code dosyasına kopyalanması başarısız oldu."
#, boost-format
msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue"
@@ -4712,7 +4682,7 @@ msgid "Size in X and Y of the rectangular plate."
msgstr "Dikdörtgen plakanın X ve Y boyutları."
msgid "Distance of the 0,0 G-code coordinate from the front left corner of the rectangle."
-msgstr "0,0 G kodu koordinatının dikdörtgenin sol ön köşesinden uzaklığı."
+msgstr "0,0 G-code koordinatının dikdörtgenin sol ön köşesinden uzaklığı."
msgid "Diameter of the print bed. It is assumed that origin (0,0) is located in the center."
msgstr "Baskı yatağının çapı. Orjinin (0,0) merkezde olduğu varsayılmaktadır."
@@ -4801,7 +4771,7 @@ msgid ""
"Value was reset to 0.5"
msgstr ""
"Maksimum hacimsel hız çok küçük.\n"
-"0,5'e sıfırla."
+"Değer 0.5 olarak sıfırlandı"
#, c-format, boost-format
msgid "Current chamber temperature is higher than the material's safe temperature; this may result in material softening and nozzle clogs. The maximum safe temperature for the material is %d"
@@ -4812,28 +4782,45 @@ msgstr "Mevcut hazne sıcaklığı malzemenin güvenli sıcaklığından yüksek
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "Minimum oda sıcaklığı (%d℃), hedef oda sıcaklığından (%d℃) yüksek. Minimum değer, oda hedefe doğru ısınmaya devam ederken baskının başladığı eşiktir; bu nedenle hedefi aşmamalıdır. Değer hedefe sınırlandırılacak."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "Katman yüksekliği çok küçük. Minimum değere (%g mm) ayarlanacak."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer 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ünde ayarlanan sınırların dışında, bu durum baskı kalitesi sorunlarına neden olabilir."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Otomatik olarak sınır değerine (%g mm) ayarlansın mı?"
+
+msgid "Adjust"
+msgstr "Ayarla"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
msgstr ""
-"Katman yüksekliği çok küçük.\n"
-"0,2'ye sıfırla."
+"Katman yüksekliği çok küçük\n"
+"Değer 0.2 olarak yeniden ayarlandı"
msgid ""
"Ironing spacing too small\n"
"It has been reset to 0.1"
msgstr ""
-"Çok küçük ütüleme aralığı.\n"
-"0,1'e sıfırla."
+"Ütüleme satır aralığı çok küçük\n"
+"Değer 0.1 olarak yeniden ayarlandı"
msgid ""
"Zero initial layer height is invalid.\n"
"\n"
"The first layer height will be reset to 0.2."
msgstr ""
-"Sıfır başlangıç katman yüksekliği geçersiz.\n"
+"İlk katman yüksekliği sıfır olamaz.\n"
"\n"
-"İlk katman yüksekliği 0.2 olarak sıfırlanacak."
+"İlk katman yüksekliği 0.2 olarak sıfırlandı."
# AI Translated
msgid ""
@@ -4909,8 +4896,8 @@ msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n"
"Reset to 0."
msgstr ""
-"Dikiş eğimi başlangıç yüksekliğinin katman yüksekliğinden daha küçük olması gerekir.\n"
-"0 a sıfırla."
+"seam_slope_start_height, layer_height değerinden küçük olmalıdır.\n"
+"Değeri 0 yapın."
#, no-c-format, no-boost-format
msgid ""
@@ -4932,6 +4919,13 @@ msgstr ""
"Evet - Arachne Duvarı Oluşturucusunu Etkinleştir\n"
"Hayır - Arachne Duvarı Oluşturucusunu Devre Dışı Bırak ve Pütürlü Yüzey [Yer Değiştirme] modunu ayarla"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Kenar kulak yarıçapı"
+
+msgid "Brim width"
+msgstr "Kenar genişliği"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "Spiral mod yalnızca duvar döngüleri 1 olduğunda, destek devre dışı bırakıldığında, problama yoluyla topaklanma tespiti devre dışı bırakıldığında, üst kabuk katmanları 0 olduğunda, seyrek dolgu yoğunluğu 0 olduğunda ve hızlandırılmış tip geleneksel olduğunda çalışır."
@@ -4969,7 +4963,7 @@ msgid "Paused (filament ran out)"
msgstr "Duraklatıldı (filament bitti)"
msgid "Heating nozzle"
-msgstr "Isıtma memesi"
+msgstr "Isıtma nozulü"
msgid "Calibrating dynamic flow"
msgstr "Dinamik akışı kalibre etme"
@@ -5038,7 +5032,7 @@ msgid "Cooling chamber"
msgstr "Soğutma haznesi"
msgid "Pause (G-code inserted by user)"
-msgstr "Duraklat (Kullanıcı tarafından eklenen G kodu)"
+msgstr "Duraklat (Kullanıcı tarafından eklenen G-code)"
msgid "Motor noise showoff"
msgstr "Motor gürültü gösterimi"
@@ -5065,7 +5059,7 @@ msgid "Measure motion accuracy"
msgstr "Hareket doğruluğunu ölçün"
msgid "Nozzle offset calibration"
-msgstr "Meme ofset kalibrasyonu"
+msgstr "Nozul ofset kalibrasyonu"
msgid "High temperature auto bed leveling"
msgstr "Yüksek sıcaklıkta otomatik yatak tesviyesi"
@@ -5122,7 +5116,7 @@ msgid "Measuring Surface"
msgstr "Ölçüm Yüzeyi"
msgid "Calibrating the detection position of nozzle clumping"
-msgstr "Meme topaklanmasının algılama konumunu kalibre etme"
+msgstr "Nozul topaklanmasının algılama konumunu kalibre etme"
msgid "Update successful."
msgstr "Güncelleme başarılı."
@@ -5153,17 +5147,17 @@ msgstr "Güvenliğinizi sağlamak için belirli işleme görevleri (lazer gibi)
#, c-format, boost-format
msgid "The chamber temperature is too high, which may cause the filament to soften. Please wait until the chamber temperature drops below %d℃. You may open the front door or enable fans to cool down."
-msgstr "Oda sıcaklığı çok yüksek, bu da filamanın yumuşamasına neden olabilir. Lütfen hazne sıcaklığı %d°C'nin altına düşene kadar bekleyin. Ön kapıyı açabilir veya fanların soğumasını sağlayabilirsiniz."
+msgstr "Oda sıcaklığı çok yüksek, bu da filamentin yumuşamasına neden olabilir. Lütfen hazne sıcaklığı %d°C'nin altına düşene kadar bekleyin. Ön kapıyı açabilir veya fanların soğumasını sağlayabilirsiniz."
#, c-format, boost-format
msgid "AMS temperature is too high, which may cause the filament to soften. Please wait until the AMS temperature drops below %d℃."
-msgstr "AMS sıcaklığı çok yüksek, bu da filamanın yumuşamasına neden olabilir. Lütfen AMS sıcaklığı %d°C'nin altına düşene kadar bekleyin."
+msgstr "AMS sıcaklığı çok yüksek, bu da filamentin yumuşamasına neden olabilir. Lütfen AMS sıcaklığı %d°C'nin altına düşene kadar bekleyin."
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."
msgstr "Mevcut hazne sıcaklığı veya hedef hazne sıcaklığı 45°C'yi aşıyor. Ekstruderin tıkanmasını önlemek için düşük sıcaklık filamentinin (PLA/PETG/TPU) yüklenmesine izin verilmez."
msgid "Low temperature filament(PLA/PETG/TPU) is loaded in the extruder. In order to avoid extruder clogging, it is not allowed to set the chamber temperature."
-msgstr "Ekstrudere düşük sıcaklık filamanı (PLA/PETG/TPU) yüklenir. Ekstruderin tıkanmasını önlemek için hazne sıcaklığının ayarlanmasına izin verilmez."
+msgstr "Ekstrudere düşük sıcaklık filamenti (PLA/PETG/TPU) yüklenir. Ekstruderin tıkanmasını önlemek için hazne sıcaklığının ayarlanmasına izin verilmez."
msgid "When you set the chamber temperature below 40℃, the chamber temperature control will not be activated, and the target chamber temperature will automatically be set to 0℃."
msgstr "Hazne sıcaklığını 40°C'nin altına ayarladığınızda, hazne sıcaklık kontrolü etkinleştirilmeyecektir. Ve hedef hazne sıcaklığı otomatik olarak 0°C'ye ayarlanacaktır."
@@ -5186,6 +5180,14 @@ msgstr "Cali G-code oluşturma başarısız oldu"
msgid "Calibration error"
msgstr "Kalibrasyon hatası"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Bu yazıcı, bu denetimin ihtiyaç duyduğu donanımla yapılandırılmamış."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Bu denetim bu yazıcıda desteklenmiyor."
+
# AI Translated
msgid "Network unavailable"
msgstr "Ağ kullanılamıyor"
@@ -5278,16 +5280,16 @@ msgstr "varsayılan"
#, boost-format
msgid "Edit Custom G-code (%1%)"
-msgstr "Özel G Kodunu Düzenle (%1%)"
+msgstr "Özel G-code'u Düzenle (%1%)"
msgid "Built-in placeholders (Double click item to add to G-code)"
-msgstr "Yerleşik yer tutucular (G koduna eklemek için öğeye çift tıklayın)"
+msgstr "Yerleşik yer tutucular (G-code'a eklemek için öğeye çift tıklayın)"
msgid "Search G-code placeholders"
-msgstr "Gcode yer tutucularını arayın"
+msgstr "G-code yer tutucularını arayın"
msgid "Add selected placeholder to G-code"
-msgstr "Seçili yer tutucuyu G koduna ekle"
+msgstr "Seçili yer tutucuyu G-code'a ekle"
msgid "Select placeholder"
msgstr "Yer tutucuyu seçin"
@@ -5450,10 +5452,10 @@ msgid "Acceleration"
msgstr "Hızlanma"
msgid "Jerk"
-msgstr "Jerk"
+msgstr "Sarsıntı"
msgid "Fan Speed"
-msgstr "Fan hızı"
+msgstr "Fan Hızı"
msgid "Flow"
msgstr "Akış"
@@ -5468,7 +5470,7 @@ msgid "Layer Time"
msgstr "Katman Süresi"
msgid "Layer Time (log)"
-msgstr "Katman Süresi (günlük)"
+msgstr "Katman Süresi (log)"
msgid "Pressure Advance"
msgstr "Basınç İlerlemesi"
@@ -5480,7 +5482,7 @@ msgid "Retract"
msgstr "Geri çekme"
msgid "Unretract"
-msgstr "İleri İtme"
+msgstr "İleri itme"
msgid "Seam"
msgstr "Dikiş"
@@ -5568,20 +5570,20 @@ msgid "Layer Time: "
msgstr "Katman Süresi: "
msgid "Tool: "
-msgstr "Alet:"
+msgstr "Kafa: "
msgid "Color: "
-msgstr "Renk:"
+msgstr "Renk: "
# AI Translated
msgid "Acceleration: "
msgstr "İvme: "
msgid "Jerk: "
-msgstr "Jerk: "
+msgstr "Sarsıntı: "
msgid "PA: "
-msgstr "PA:"
+msgstr "PA: "
msgid "mm/s"
msgstr "mm/s"
@@ -5608,7 +5610,7 @@ msgid "Actual speed profile"
msgstr "Gerçek hız profili"
msgid "Statistics of All Plates"
-msgstr "Tüm Plakaların İstatistikleri"
+msgstr "Tüm plakaların istatistikleri"
msgid "Display"
msgstr "Ekran"
@@ -5708,7 +5710,7 @@ msgid "Acceleration (mm/s²)"
msgstr "İvme (mm/s²)"
msgid "Jerk (mm/s)"
-msgstr "Jerk (mm/s)"
+msgstr "Sarsıntı (mm/s)"
msgid "Fan speed (%)"
msgstr "Fan hızı (%)"
@@ -5759,9 +5761,8 @@ msgstr "Normal mod"
msgid "Total Filament"
msgstr "Toplam filament"
-# AI Translated
msgid "Model Filament"
-msgstr "Model Filamenti"
+msgstr "Model filamenti"
msgid "Prepare time"
msgstr "Hazırlık süresi"
@@ -5780,7 +5781,7 @@ msgid ""
"Please ensure the filaments used by this object are not arranged to other nozzles."
msgstr ""
"Yalnızca sol/sağ püskürtme ucu alanına bir nesne yerleştirilmiş veya sol püskürtme ucunun yazdırılabilir yüksekliğini aşıyor.\n"
-"Lütfen bu nesne tarafından kullanılan filamanların diğer püskürtme uçlarına göre düzenlenmediğinden emin olun."
+"Lütfen bu nesne tarafından kullanılan filamentlerin diğer püskürtme uçlarına göre düzenlenmediğinden emin olun."
msgid ""
"An object is laid over the boundary of plate or exceeds the height limit.\n"
@@ -5852,7 +5853,7 @@ msgid "The position or size of the model %s exceeds the %s's printable range."
msgstr "%s modelinin konumu veya boyutu %s'nin yazdırılabilir aralığını aşıyor."
msgid " Please check and adjust the part's position or size to fit the printable range:\n"
-msgstr "Lütfen parçanın konumunu veya boyutunu kontrol edip yazdırılabilir aralığa uyacak şekilde ayarlayın:\n"
+msgstr " Lütfen parçanın konumunu veya boyutunu basılabilir alana sığacak şekilde kontrol edip ayarlayın:\n"
#, boost-format
msgid "Left nozzle: X:%1%-%2%, Y:%3%-%4%, Z:%5%-%6%\n"
@@ -5958,7 +5959,7 @@ msgid "Select Plate"
msgstr "Plaka Seç"
msgid "Slicing"
-msgstr "Dilimleniyor"
+msgstr "Dilimleme"
msgid "Slice all"
msgstr "Hepsini dilimle"
@@ -6050,18 +6051,18 @@ msgstr "Hacim:"
msgid "Size:"
msgstr "Boyut:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
-msgstr "%d katmanında gcode yollarında çakışmalar bulundu, Z = %.2lfmm. Lütfen çakışan nesneleri daha uzağa ayırın (%s <-> %s)."
+msgstr "%d katmanında G-code yollarında çakışmalar bulundu, Z = %.2lfmm. Lütfen çakışan nesneleri daha uzağa ayırın (%s <-> %s)."
msgid "An object is laid over the plate boundaries."
msgstr "Plakanın sınırına bir nesne serilir."
msgid "A G-code path goes beyond the max print height."
-msgstr "Bir G kodu yolu maksimum baskı yüksekliğinin ötesine geçer."
+msgstr "Bir G-code yolu maksimum baskı yüksekliğinin ötesine geçer."
msgid "A G-code path goes beyond plate boundaries."
-msgstr "Bir G kodu yolu plakanın sınırlarının ötesine geçer."
+msgstr "Bir G-code yolu plakanın sınırlarının ötesine geçer."
msgid "Not support printing 2 or more TPU filaments."
msgstr "2 veya daha fazla TPU filamentinin yazdırılmasını desteklemez."
@@ -6072,19 +6073,19 @@ msgstr "Araç %d"
#, c-format, boost-format
msgid "Filament %s is placed in the %s, but the generated G-code path exceeds the printable range of the %s."
-msgstr "%s filamanı %s içine yerleştirildi, ancak oluşturulan G kodu yolu %s'nin yazdırılabilir aralığını aşıyor."
+msgstr "%s filamenti %s içine yerleştirildi, ancak oluşturulan G-code yolu %s'nin yazdırılabilir aralığını aşıyor."
#, c-format, boost-format
msgid "Filaments %s are placed in the %s, but the generated G-code path exceeds the printable range of the %s."
-msgstr "%s filamanları %s içine yerleştirildi, ancak oluşturulan G kodu yolu %s'nin yazdırılabilir aralığını aşıyor."
+msgstr "%s filamentleri %s içine yerleştirildi, ancak oluşturulan G-code yolu %s'nin yazdırılabilir aralığını aşıyor."
#, c-format, boost-format
msgid "Filament %s is placed in the %s, but the generated G-code path exceeds the printable height of the %s."
-msgstr "%s filamanı %s'e yerleştirildi, ancak oluşturulan G kodu yolu %s'nin yazdırılabilir yüksekliğini aşıyor."
+msgstr "%s filamenti %s'e yerleştirildi, ancak oluşturulan G-code yolu %s'nin yazdırılabilir yüksekliğini aşıyor."
#, c-format, boost-format
msgid "Filaments %s are placed in the %s, but the generated G-code path exceeds the printable height of the %s."
-msgstr "%s filamanları %s'e yerleştirildi, ancak oluşturulan G kodu yolu %s'nin yazdırılabilir yüksekliğini aşıyor."
+msgstr "%s filamentleri %s'e yerleştirildi, ancak oluşturulan G-code yolu %s'nin yazdırılabilir yüksekliğini aşıyor."
msgid "Open wiki for more information."
msgstr "Daha fazla bilgi için wiki'yi açın."
@@ -6200,7 +6201,7 @@ msgstr ""
"şekilde gösterildiği gibi yazıcıda:"
msgid "Invalid input"
-msgstr "Geçersiz Giriş."
+msgstr "Geçersiz değer"
msgid "New Window"
msgstr "Yeni Pencere"
@@ -6232,6 +6233,10 @@ msgstr "Çoklu cihaz"
msgid "Project"
msgstr "Proje"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Cihaz (Web)"
+
msgid "Yes"
msgstr "Evet"
@@ -6248,7 +6253,7 @@ msgid "Print plate"
msgstr "Plakayı Yazdır"
msgid "Export G-code file"
-msgstr "G-kod dosyasını dışa aktar"
+msgstr "G-code dosyasını dışa aktar"
msgctxt "Verb"
msgid "Print"
@@ -6282,20 +6287,19 @@ msgid "Setup Wizard"
msgstr "Kurulum sihirbazı"
msgid "Show Configuration Folder"
-msgstr "Yapılandırma Klasörünü Göster"
+msgstr "Yapılandırma klasörünü göster"
-# AI Translated
msgid "Troubleshoot Center"
-msgstr "Sorun Giderme Merkezi"
+msgstr "Sorun giderme merkezi"
msgid "Open Network Test"
-msgstr "Ağ Testini Aç"
+msgstr "Ağ testini aç"
msgid "Show Tip of the Day"
-msgstr "Günün İpucunu Göster"
+msgstr "Günün ipucunu göster"
msgid "Check for Updates"
-msgstr "Güncellemeleri Kontrol Et"
+msgstr "Güncellemeleri kontrol et"
#, c-format, boost-format
msgid "&About %s"
@@ -6349,7 +6353,7 @@ msgid "Recent files"
msgstr "Son dosyalar"
msgid "Save Project"
-msgstr "Projeyi Kaydet"
+msgstr "Projeyi kaydet"
msgid "Save current project to file"
msgstr "Mevcut projeyi dosyaya kaydet"
@@ -6406,22 +6410,22 @@ msgid "Export all plate sliced file"
msgstr "Dilimlenmiş tüm plaka dosyalarını dışa aktar"
msgid "Export G-code"
-msgstr "G-kodunu dışa aktar"
+msgstr "G-code'u dışa aktar"
msgid "Export current plate as G-code"
-msgstr "Geçerli plakayı G kodu olarak dışa aktar"
+msgstr "Geçerli plakayı G-code olarak dışa aktar"
msgid "Export toolpaths as OBJ"
msgstr "Takımyollarını OBJ olarak dışa aktar"
msgid "Export Preset Bundle"
-msgstr "Ön Ayar Paketini Dışa Aktar"
+msgstr "Ön ayar paketini dışa aktar"
msgid "Export current configuration to files"
msgstr "Geçerli yapılandırmayı dosyalara aktar"
msgid "Export"
-msgstr "Dışa Aktar"
+msgstr "Dışa aktar"
msgid "Quit"
msgstr "Çıkış"
@@ -6478,13 +6482,13 @@ msgid "Deselects all objects"
msgstr "Tüm nesnelerin seçimini kaldırır"
msgid "Use Perspective View"
-msgstr "Perspektif Görünüm"
+msgstr "Perspektif görünüm"
msgid "Use Orthogonal View"
-msgstr "Ortogonal Görünüm"
+msgstr "Ortogonal görünüm"
msgid "Auto Perspective"
-msgstr "Otomatik Perspektif"
+msgstr "Otomatik perspektif"
msgid "Automatically switch between orthographic and perspective when changing from top/bottom/side views."
msgstr "Üst/Alt/Yan görünümler arasında geçiş yaparken ortografik ve perspektif arasında otomatik olarak geçiş yapın."
@@ -6493,40 +6497,40 @@ msgid "Show &G-code Window"
msgstr "&G-code Penceresini Göster"
msgid "Show G-code window in Preview scene."
-msgstr "Previce sahnesinde G-kodu penceresini göster."
+msgstr "Previce sahnesinde G-code penceresini göster."
msgid "Show 3D Navigator"
-msgstr "3D Gezgini Göster"
+msgstr "3D gezgini göster"
msgid "Show 3D navigator in Prepare and Preview scene."
msgstr "Hazırlama ve Önizleme sahnesinde 3D gezgini göster."
msgid "Show Gridlines"
-msgstr "Kılavuz Çizgilerini Göster"
+msgstr "Kılavuz çizgilerini göster"
msgid "Show Gridlines on plate"
msgstr "Kılavuz Çizgilerini plaka üzerinde göster"
msgid "Reset Window Layout"
-msgstr "Pencere Düzenini Sıfırla"
+msgstr "Pencere düzenini sıfırla"
msgid "Reset to default window layout"
msgstr "Varsayılan pencere düzenine sıfırla"
msgid "Show &Labels"
-msgstr "Etiketleri Göster"
+msgstr "Etiketleri göster"
msgid "Show object labels in 3D scene."
msgstr "3B sahnede nesne etiketlerini göster."
msgid "Show &Overhang"
-msgstr "Çıkıntıyı Göster"
+msgstr "Çıkıntıyı göster"
msgid "Show object overhang highlight in 3D scene."
msgstr "3B sahnede nesne çıkıntısı vurgusunu göster."
msgid "Show Selected Outline (beta)"
-msgstr "Seçilen Taslağı Göster (Deneysel)"
+msgstr "Seçilen taslağı göster (deneysel)"
msgid "Show outline around selected object in 3D scene."
msgstr "3D sahnede seçilen nesnenin etrafındaki ana hatları göster."
@@ -6542,13 +6546,11 @@ msgstr "Düzen"
msgid "View"
msgstr "Görünüm"
-# AI Translated
msgid "Preset Bundle"
-msgstr "Ön Ayar Paketi"
+msgstr "Ön ayar paketi"
-# AI Translated
msgid "Sync Presets"
-msgstr "Ön Ayarları Eşitle"
+msgstr "Ön ayarları eşitle"
# AI Translated
msgid "Pull and apply the latest presets from OrcaCloud"
@@ -6581,7 +6583,7 @@ msgid "Flow Rate Calibration"
msgstr "Akış Hızı Kalibrasyonu"
msgid "Retraction"
-msgstr "Geri Çekme"
+msgstr "Geri çekme"
msgid "Cornering"
msgstr "Köşe dönüşü"
@@ -6590,10 +6592,10 @@ msgid "Cornering calibration"
msgstr "Viraj kalibrasyonu"
msgid "Input Shaping Frequency"
-msgstr "Input shaping Frekansı"
+msgstr "Input shaping frekansı"
msgid "Input Shaping Damping/zeta factor"
-msgstr "Input shaping Sönümleme/zeta faktörü"
+msgstr "Input shaping sönümleme/zeta faktörü"
msgid "Input Shaping"
msgstr "Input shaping"
@@ -6601,15 +6603,14 @@ msgstr "Input shaping"
msgid "VFA"
msgstr "VFA"
-# AI Translated
msgid "Calibration Guide"
-msgstr "Kalibrasyon Kılavuzu"
+msgstr "Kalibrasyon kılavuzu"
msgid "&Open G-code"
-msgstr "&G kodunu aç"
+msgstr "&G-code'u aç"
msgid "Open a G-code file"
-msgstr "G kodu dosyası aç"
+msgstr "G-code dosyası aç"
msgid "Re&load from Disk"
msgstr "Diskten yeniden yükle"
@@ -6900,7 +6901,7 @@ msgid "Failed to parse model information."
msgstr "Model bilgileri ayrıştırılamadı."
msgid "The .gcode.3mf file contains no G-code data. Please slice it with Orca Slicer and export a new .gcode.3mf file."
-msgstr ".gcode.3mf dosyası hiçbir G kodu verisi içermiyor. Lütfen dosyayı Bambu Studio ile dilimleyin ve yeni bir .gcode.3mf dosyasını dışa aktarın."
+msgstr ".gcode.3mf dosyası hiçbir G-code verisi içermiyor. Lütfen dosyayı Bambu Studio ile dilimleyin ve yeni bir .gcode.3mf dosyasını dışa aktarın."
#, c-format, boost-format
msgid "File '%s' was lost! Please download it again."
@@ -7193,7 +7194,7 @@ msgid "When printing is paused, filament loading and unloading are only supporte
msgstr "Yazdırma duraklatıldığında filament yükleme ve boşaltma yalnızca harici yuvalar için desteklenir."
msgid "Current extruder is busy changing filament."
-msgstr "Mevcut ekstruder filamanı değiştirmekle meşgul."
+msgstr "Mevcut ekstruder filamenti değiştirmekle meşgul."
# AI Translated
msgid "\"Load\" or \"Unload\" is not supported for external spool while using Filament Track Switch."
@@ -7336,7 +7337,7 @@ msgid "Upload failed\n"
msgstr "Yükleme başarısız\n"
msgid "Obtaining instance_id failed\n"
-msgstr "instance_id alınamadı\n"
+msgstr "Örnek kimliği (instance_id) alınamadı\n"
msgid ""
"Your comment result cannot be uploaded due to the following reasons:\n"
@@ -7505,13 +7506,13 @@ msgid "Undo integration failed."
msgstr "Entegrasyon geri alınamadı."
msgid "Exporting"
-msgstr "Dışa Aktarılıyor."
+msgstr "Dışa aktarılıyor"
msgid "An update is available!"
-msgstr "Yazılımın Yeni sürümü var."
+msgstr "Yeni bir güncelleme mevcut!"
msgid "Go to download page"
-msgstr "İndirme sayfasına gidin."
+msgstr "İndirme sayfasına git"
msgid "Open Folder."
msgstr "Klasörü Aç."
@@ -7602,7 +7603,7 @@ msgid "Your model needs support! Please enable support material."
msgstr "Modelinizin desteğe ihtiyacı var! Lütfen destek materyalini etkinleştirin."
msgid "G-code path overlap"
-msgstr "Gcode yolu çakışması"
+msgstr "G-code yolu çakışması"
msgid "Cut connectors"
msgstr "Konektörleri kes"
@@ -7726,10 +7727,10 @@ msgid "Nozzle Clumping Detection"
msgstr "Nozul Topaklanma Algılaması"
msgid "Check if the nozzle is clumping by filaments or other foreign objects."
-msgstr "Memenin filamanlar veya diğer yabancı nesneler tarafından topaklanıp topaklanmadığını kontrol edin."
+msgstr "Nozulun filamentler veya diğer yabancı nesneler tarafından topaklanıp topaklanmadığını kontrol edin."
msgid "Detects air printing caused by nozzle clogging or filament grinding."
-msgstr "Nozul tıkanması veya filaman taşlamasından kaynaklanan hava baskısını algılar."
+msgstr "Nozul tıkanması veya filament taşlamasından kaynaklanan hava baskısını algılar."
msgid "First Layer Inspection"
msgstr "Birinci Katman Denetimi"
@@ -7901,14 +7902,14 @@ msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "Yazdırmada %1% ile %2%'nin karıştırılması önerilmez.\n"
msgid " nozzle"
-msgstr "meme"
+msgstr " nozul"
#, boost-format
msgid "It is not recommended to print the following filament(s) with %1%: %2%\n"
msgstr "Aşağıdaki filament(ler)in %1%: %2% ile yazdırılması önerilmez.\n"
msgid "It is not recommended to use the following nozzle and filament combinations:\n"
-msgstr "Aşağıdaki nozul ve filaman kombinasyonlarının kullanılması tavsiye edilmez:\n"
+msgstr "Aşağıdaki nozul ve filament kombinasyonlarının kullanılması tavsiye edilmez:\n"
#, boost-format
msgid "%1% with %2%\n"
@@ -7982,7 +7983,7 @@ msgstr ""
"Senkronizasyona devam edeceğinizden emin misiniz?"
msgid "There are unset nozzle types. Please set the nozzle types of all extruders before synchronizing."
-msgstr "Ayarlanmamış nozul tipleri vardır. Lütfen senkronizasyondan önce tüm ekstrüderlerin nozül tiplerini ayarlayın."
+msgstr "Ayarlanmamış nozul tipleri vardır. Lütfen senkronizasyondan önce tüm ekstrüderlerin nozul tiplerini ayarlayın."
msgid "Sync extruder infomation"
msgstr "Ekstruder bilgilerini senkronize et"
@@ -8045,7 +8046,7 @@ msgstr ""
"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."
msgid "Only filament color information has been synchronized from printer."
-msgstr "Yazıcıdan yalnızca filaman renk bilgisi senkronize edildi."
+msgstr "Yazıcıdan yalnızca filament renk bilgisi senkronize edildi."
msgid "Filament type and color information have been synchronized, but slot information is not included."
msgstr "Filament türü ve renk bilgisi senkronize edilmiştir ancak slot bilgisi dahil edilmemiştir."
@@ -8153,19 +8154,19 @@ msgid "Please correct them in the Param tabs"
msgstr "Lütfen bunları parametre sekmelerinde düzeltin"
msgid "The 3MF has the following modified G-code in filament or printer presets:"
-msgstr "3mf dosyasında filament veya yazıcı ön ayarlarında şu değiştirilmiş G-kodları bulunmaktadır:"
+msgstr "3mf dosyasında filament veya yazıcı ön ayarlarında şu değiştirilmiş G-code'ları bulunmaktadır:"
msgid "Please confirm that all modified G-code is safe to prevent any damage to the machine!"
-msgstr "Lütfen bu değiştirilmiş G-kodlarının makineye herhangi bir zarar vermemesi için güvenli olduğunu onaylayın!"
+msgstr "Lütfen bu değiştirilmiş G-code'larının makineye herhangi bir zarar vermemesi için güvenli olduğunu onaylayın!"
msgid "Modified G-code"
-msgstr "G-kodları Değişti"
+msgstr "G-code'ları Değişti"
msgid "The 3MF has the following customized filament or printer presets:"
msgstr "3mf dosyasında şu özel filament veya yazıcı ayarları bulunmaktadır:"
msgid "Please confirm that the G-code within these presets is safe to prevent any damage to the machine!"
-msgstr "Lütfen bu ön ayarlar içindeki G-kodlarının makineye herhangi bir zararı önlemek için güvenli olduğunu onaylayın!"
+msgstr "Lütfen bu ön ayarlar içindeki G-code'larının makineye herhangi bir zararı önlemek için güvenli olduğunu onaylayın!"
msgid "Customized Preset"
msgstr "Özel Ayar"
@@ -8219,9 +8220,8 @@ msgstr "Bu dosyalar birden fazla parçadan oluşan tek bir nesne olarak mı yük
msgid "An object with multiple parts was detected"
msgstr "Birden fazla parçaya sahip nesne algılandı"
-# AI Translated
msgid "Auto-Drop"
-msgstr "Otomatik Bırakma"
+msgstr "Otomatik düşür"
#, c-format, boost-format
msgid "Connected printer is %s. It must match the project preset for printing.\n"
@@ -8249,7 +8249,7 @@ msgid "Export AMF file:"
msgstr "AMF dosyasını dışa aktar:"
msgid "Save file as"
-msgstr "Farklı kaydet:"
+msgstr "Dosyayı farklı kaydet"
msgid "Export OBJ file:"
msgstr "OBJ dosyasını dışa aktar:"
@@ -8296,9 +8296,8 @@ msgstr "Seçilen nesne bölünemedi."
msgid "Split to Objects"
msgstr "Nesnelere Ayır"
-# AI Translated
msgid "Disable Auto-Drop to preserve Z positioning?\n"
-msgstr "Z konumunu korumak için Otomatik Bırakma devre dışı bırakılsın mı?\n"
+msgstr "Z konumunu korumak için Otomatik düşürme devre dışı bırakılsın mı?\n"
# AI Translated
msgid "Object with floating parts was detected"
@@ -8335,21 +8334,21 @@ msgstr "Değiştirme için dizin seçilmedi"
msgid "Replaced with 3D files from directory:\n"
msgstr "Dizindeki 3D dosyalarla değiştirildi:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ %1% atlandı: aynı dosya.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ %s atlandı: aynı dosya.\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ %1% atlandı: dosya mevcut değil.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ %s atlandı: dosya mevcut değil.\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ %1% atlandı: değiştirilemedi.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ %s atlandı: değiştirilemedi.\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ %1% değiştirildi.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ %s değiştirildi.\n"
msgid "Replaced volumes"
msgstr "Değiştirilen birimler"
@@ -8412,7 +8411,7 @@ msgid ""
"The loaded file contains G-code only, cannot enter the Prepare page."
msgstr ""
"Yalnızca önizleme modu:\n"
-"Yüklenen dosya yalnızca Gcode içeriyor, hazırlama sayfasına girilemiyor."
+"Yüklenen dosya yalnızca G-code içeriyor, hazırlama sayfasına girilemiyor."
msgid ""
"The nozzle type and AMS quantity information has not been synced from the connected printer.\n"
@@ -8420,7 +8419,7 @@ msgid ""
"Would you like to sync now?"
msgstr ""
"Püskürtme ucu türü ve AMS miktarı bilgileri bağlı yazıcıdan senkronize edilmedi.\n"
-"Senkronizasyondan sonra yazılım, dilimleme sırasında baskı süresini ve filaman kullanımını optimize edebilir.\n"
+"Senkronizasyondan sonra yazılım, dilimleme sırasında baskı süresini ve filament kullanımını optimize edebilir.\n"
"Şimdi senkronize etmek ister misiniz?"
msgid "Sync now"
@@ -8433,7 +8432,7 @@ msgid "Creating a new project"
msgstr "Yeni bir proje oluşturma"
msgid "Load project"
-msgstr "Projeyi Aç"
+msgstr "Projeyi aç"
msgid ""
"Failed to save the project.\n"
@@ -8455,7 +8454,7 @@ msgid "Download failed; unknown file format."
msgstr "İndirme başarısız oldu, dosya türü bilinmiyor."
msgid "Downloading project..."
-msgstr "proje indiriliyor..."
+msgstr "Proje indiriliyor..."
msgid "Download failed; File size exception."
msgstr "İndirme başarısız oldu, Dosya boyutu sorunlu."
@@ -8483,10 +8482,10 @@ msgid "The selected file"
msgstr "Seçili dosya"
msgid "Does not contain valid G-code."
-msgstr "geçerli gcode içermiyor."
+msgstr "Geçerli bir G-code içermiyor."
msgid "An Error has occurred while loading the G-code file."
-msgstr "G kodu dosyası yüklenirken hata oluşuyor"
+msgstr "G-code dosyası yüklenirken bir hata oluştu."
#. TRN %1% is archive path
#, boost-format
@@ -8515,16 +8514,16 @@ msgid "Import geometry only"
msgstr "Yalnızca geometriyi içe aktar"
msgid "Only one G-code file can be opened at a time."
-msgstr "Aynı anda yalnızca bir G kodu dosyası açılabilir."
+msgstr "Aynı anda yalnızca bir G-code dosyası açılabilir."
msgid "G-code loading"
-msgstr "G-kod yükleniyor"
+msgstr "G-code yükleniyor"
msgid "G-code files and models cannot be loaded together!"
-msgstr "G kodu dosyaları modellerle birlikte yüklenemez!"
+msgstr "G-code dosyaları modellerle birlikte yüklenemez!"
msgid "Unable to add models in preview mode"
-msgstr "Önizleme modundayken model eklenemiyor!"
+msgstr "Önizleme modundayken model ekleyemezsiniz"
msgid "All objects will be removed, continue?"
msgstr "Tüm nesneler kaldırılacak, devam edilsin mi?"
@@ -8539,7 +8538,7 @@ msgid "Copies of the selected object"
msgstr "Seçilen nesnenin kopyaları"
msgid "Save G-code file as:"
-msgstr "G-kod dosyasını şu şekilde kaydedin:"
+msgstr "G-code dosyasını şu şekilde kaydedin:"
msgid "Save SLA file as:"
msgstr "SLA dosyasını farklı bir isimle kaydet:"
@@ -8558,7 +8557,7 @@ msgid "The file %s has been sent to the printer's storage space and can be viewe
msgstr "%s dosyası yazıcının depolama alanına gönderildi ve yazıcıda görüntülenebiliyor."
msgid "The nozzle type is not set. Please set the nozzle and try again."
-msgstr "Nozül tipi ayarlanmamış. Lütfen memeyi ayarlayın ve tekrar deneyin."
+msgstr "Nozul tipi ayarlanmamış. Lütfen nozulu ayarlayın ve tekrar deneyin."
msgid "The nozzle type is not set. Please check."
msgstr "Nozül tipi ayarlanmamış. Lütfen kontrol edin."
@@ -8610,7 +8609,7 @@ msgstr ""
"Yazdırma sırasında çarpışmaları önlemek için otomatik düzenlemeyi kullanmanızı önerin."
msgid "Send G-code"
-msgstr "G-kodu gönder"
+msgstr "G-code gönder"
msgid "Send to printer"
msgstr "Yazıcıya gönder"
@@ -8813,7 +8812,7 @@ msgid ""
msgstr ""
"Önemli ölçüde farklı sıcaklıklara sahip filamentlerin kullanılması aşağıdakilere neden olabilir:\n"
"• Ekstruder tıkanması\n"
-"• Meme hasarı\n"
+"• Nozul hasarı\n"
"• Katman yapışma sorunları\n"
"\n"
"Bu özelliği etkinleştirmeye devam etmek istiyor musunuz?"
@@ -8863,7 +8862,7 @@ msgid "Associate"
msgstr "Ortak"
msgid "with OrcaSlicer so that Orca can open models from"
-msgstr "Orca’nın modelleri açabilmesi için OrcaSlicer ile"
+msgstr "orca'nın modelleri şuradan açabilmesi için OrcaSlicer ile (ilişkilendir / eşleştir)"
msgid "Current Association: "
msgstr "Mevcut Bağlantı: "
@@ -8899,13 +8898,13 @@ msgid "Enable dark Mode"
msgstr "Karanlık modu etkinleştir"
msgid "Allow only one OrcaSlicer instance"
-msgstr "Yalnızca bir OrcaSlicer örneğine izin ver"
+msgstr "Yalnızca tek 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."
-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 çalıştırılmasına izin verilir. Böyle bir durumda bu ayarlar yalnızca bir örneğe izin verecektir."
+msgstr "macOS'ta varsayılan olarak her zaman uygulamanın yalnızca tek bir örneği çalışır. Ancak komut satırından aynı uygulamanın birden fazla örneğinin çalıştırılmasına izin verilir. Böyle bir durumda bu ayar, yalnızca tek bir ö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."
-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 etkinleştirilecektir."
+msgstr "Bu seçenek etkinleştirildiğinde; OrcaSlicer başlatılırken aynı OrcaSlicer'ın başka bir örneği zaten çalışıyorsa, yeni bir pencere yerine o örnek yeniden etkinleştirilir."
msgid "Show splash screen"
msgstr "Açılış ekranını göster"
@@ -8960,7 +8959,7 @@ msgid "Add STL/STEP files to recent files list"
msgstr "STL/STEP dosyalarını son dosyalar listesine ekle"
msgid "Don't warn when loading 3MF with modified G-code"
-msgstr "Değiştirilmiş G-kodları içeren 3MF dosyalarını yüklerken uyarma"
+msgstr "Değiştirilmiş G-code'ları içeren 3MF dosyalarını yüklerken uyarma"
msgid "Show options when importing STEP file"
msgstr "STEP dosyasını içe aktarırken seçenekleri göster"
@@ -9038,7 +9037,7 @@ msgid "If enabled, saved projects store the absolute path to imported source fil
msgstr "Etkinleştirildiğinde kaydedilen projeler, içe aktarılan kaynak dosyaların (STEP/STL/...) mutlak yolunu saklar; böylece kaynak dosya projeden farklı bir klasörde tutulsa bile \"Diskten yeniden yükle\" çalışmayı sürdürür. Devre dışı bırakıldığında yalnızca dosya adı saklanır; bu da projeleri taşınabilir tutar ve mutlak yolların gömülmesini önler."
msgid "Preset"
-msgstr "Ön ayar"
+msgstr "Ön Ayar"
msgid "Remember printer configuration"
msgstr "Yazıcı yapılandırmasını hatırla"
@@ -9065,7 +9064,7 @@ msgid "filaments"
msgstr "filamentler"
msgid "Optimizes filament area maximum height by chosen filament count."
-msgstr "Seçilen filaman sayısına göre filaman alanı maksimum yüksekliğini optimize eder."
+msgstr "Seçilen filament sayısına göre filament alanı maksimum yüksekliğini optimize eder."
# AI Translated
msgid "Show shared profiles notification"
@@ -9079,7 +9078,7 @@ msgid "Features"
msgstr "Özellikler"
msgid "Multi device management"
-msgstr "Çoklu Cihaz Yönetimi"
+msgstr "Çoklu cihaz yönetimi"
msgid "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."
@@ -9087,6 +9086,18 @@ msgstr "Bu seçenek etkinleştirildiğinde, aynı anda birden fazla cihaza bir g
msgid "Pop up to select filament grouping mode"
msgstr "Filament gruplama modunu seçmek için açılır pencere"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Görünür eklenti sayfaları"
+
+# AI Translated
+msgid "pages"
+msgstr "sayfa"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Kalan sayfalar son sekmedeki açılır listeye toplanmadan önce sabit sekme olarak gösterilen eklenti sayfalarının sayısı."
+
msgid "Behaviour"
msgstr "Davranış"
@@ -9159,7 +9170,7 @@ msgstr "Kaydır"
# AI Translated
msgid "Left Mouse Drag"
-msgstr "Sol Fare Sürükleme"
+msgstr "Sol fare sürükleme"
# AI Translated
msgid "Set the action that dragging the left mouse button should perform."
@@ -9167,7 +9178,7 @@ msgstr "Sol fare düğmesiyle sürüklemenin gerçekleştireceği eylemi ayarlay
# AI Translated
msgid "Middle Mouse Drag"
-msgstr "Orta Fare Sürükleme"
+msgstr "Orta fare sürükleme"
# AI Translated
msgid "Set the action that dragging the middle mouse button should perform."
@@ -9175,14 +9186,14 @@ msgstr "Orta fare düğmesiyle sürüklemenin gerçekleştireceği eylemi ayarla
# AI Translated
msgid "Right Mouse Drag"
-msgstr "Sağ Fare Sürükleme"
+msgstr "Sağ fare sürükleme"
# AI Translated
msgid "Set the action that dragging the right mouse button should perform."
msgstr "Sağ fare düğmesiyle sürüklemenin gerçekleştireceği eylemi ayarlayın."
msgid "Clear my choice on..."
-msgstr "Seçimimi temizle..."
+msgstr "Seçimimi Temizle"
msgid "Unsaved projects"
msgstr "Kaydedilmemiş projeler"
@@ -9245,7 +9256,7 @@ msgid "Renders cast shadows on the plate, other objects, and each object onto it
msgstr "Gerçekçi görünümde plakaya, diğer nesnelere ve her nesnenin kendi üzerine düşen gölgeleri işler."
msgid "Anti-aliasing"
-msgstr "Anti-aliasing"
+msgstr "Anti-Aliasing"
# AI Translated
msgid "MSAA Multiplier"
@@ -9382,7 +9393,7 @@ msgid "Allow logging into Bambu Cloud alongside Orca Cloud. When enabled, a Bamb
msgstr "Orca Cloud'un yanı sıra Bambu Cloud'a giriş yapılmasına izin verir. Etkinleştirildiğinde ana sayfada bir Bambu giriş bölümü görünür."
msgid "Update & sync"
-msgstr "Güncelle ve senkronize et"
+msgstr "Güncelle ve Senkronize Et"
msgid "Check for stable updates only"
msgstr "Yalnızca kararlı güncellemeleri kontrol edin"
@@ -9394,7 +9405,7 @@ msgid "Filament sync mode"
msgstr "Filament senkronizasyon modu"
msgid "Choose whether sync updates both filament preset and color, or only color."
-msgstr "Senkronizasyonun hem filaman ön ayarını hem de rengini mi, yoksa yalnızca rengi mi güncelleyeceğini seçin."
+msgstr "Senkronizasyonun hem filament ön ayarını hem de rengini mi, yoksa yalnızca rengi mi güncelleyeceğini seçin."
msgid "Filament & Color"
msgstr "Filament ve Renk"
@@ -9403,7 +9414,7 @@ msgid "Color only"
msgstr "Yalnızca renk"
msgid "Update built-in presets automatically."
-msgstr "Yerleşik Ön Ayarları otomatik olarak güncelleyin."
+msgstr "Yerleşik ön ayarları otomatik olarak güncelleyin."
msgid "Use encrypted file for token storage"
msgstr "Belirteç depolaması için şifrelenmiş dosyayı kullan"
@@ -9413,7 +9424,7 @@ msgstr "Kimlik doğrulama belirteçlerini sistem anahtarlığı yerine şifrelen
# AI Translated
msgid "Bambu network plug-in"
-msgstr "Bambu ağ eklentisi"
+msgstr "Bambu Ağ Eklentisi"
# AI Translated
msgid "Enable Bambu network plug-in"
@@ -9440,7 +9451,7 @@ msgid "Associate 3MF files to OrcaSlicer"
msgstr ".3mf dosyalarını OrcaSlicer ile ilişkilendirin"
msgid "If enabled, this sets OrcaSlicer as the default application to open 3MF files."
-msgstr "Etkinleştirilirse, OrcaSlicer'ı .3mf dosyalarını açacak varsayılan uygulama olarak ayarlar"
+msgstr "Etkinleştirilirse, 3MF dosyalarını açmak için OrcaSlicer'ı varsayılan uygulama olarak ayarlar."
msgid "Associate DRC files to OrcaSlicer"
msgstr "DRC dosyalarını OrcaSlicer ile ilişkilendirin"
@@ -9452,13 +9463,13 @@ msgid "Associate STL files to OrcaSlicer"
msgstr ".stl dosyalarını OrcaSlicer ile ilişkilendirin"
msgid "If enabled, this sets OrcaSlicer as the default application to open STL files."
-msgstr "Etkinleştirilirse OrcaSlicer'ı .stl dosyalarını açmak için varsayılan uygulama olarak ayarlar"
+msgstr "Etkinleştirilirse, STL dosyalarını açmak için OrcaSlicer'ı varsayılan uygulama olarak ayarlar."
msgid "Associate STEP files to OrcaSlicer"
msgstr ".step/.stp dosyalarını OrcaSlicer ile ilişkilendirin"
msgid "If enabled, this sets OrcaSlicer as the default application to open STEP files."
-msgstr "Etkinleştirilirse, OrcaSlicer'ı .step dosyalarını açmak için varsayılan uygulama olarak ayarlar"
+msgstr "Etkinleştirilirse, STEP dosyalarını açmak için OrcaSlicer'ı varsayılan uygulama olarak ayarlar."
msgid "Associate web links to OrcaSlicer"
msgstr "Web bağlantılarını OrcaSlicer ile ilişkilendirin"
@@ -9477,6 +9488,18 @@ msgstr "Desteklenmeyen ön ayarları göster"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Yazıcı ve filament açılır listelerinde uyumsuz/desteklenmeyen ön ayarları gösterir. Bu ön ayarlar seçilemez."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Deneysel) Baskı sunucuları yerine yazıcı aracılarını kullan"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Bambu olmayan yazıcıların baskı işlerini, klasik baskı sunucusuna yükleme akışı yerine yazıcı eklenti aracıları üzerinden yönlendirir.\n"
+"Devre dışı bırakıldığında OrcaSlicer eski baskı sunucusu davranışını kullanır."
+
# AI Translated
msgid "Experimental Features"
msgstr "Deneysel Özellikler"
@@ -9561,10 +9584,10 @@ msgid "Product host"
msgstr "Ürün ana bilgisayarı"
msgid "Debug save button"
-msgstr "hata ayıklama kaydet düğmesi"
+msgstr "Hata ayıklama kaydetme butonu"
msgid "Save debug settings"
-msgstr "hata ayıklama ayarlarını kaydet"
+msgstr "Hata ayıklama ayarlarını kaydet"
msgid "Debug settings have been saved successfully!"
msgstr "DEBUG ayarları başarıyla kaydedildi!"
@@ -9612,7 +9635,7 @@ msgid "Change extruder color"
msgstr "Ekstruder rengini değiştir"
msgid "Unspecified"
-msgstr "belirtilmemiş"
+msgstr "Tanımlanmamış"
msgid "Project-inside presets"
msgstr "Proje içi ön ayarlar"
@@ -9744,9 +9767,25 @@ msgstr "Kullanıcı Ön Ayarı"
msgid "Preset Inside Project"
msgstr "Ön ayar içerisinde proje"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Üst ön ayardan devralınan tüm değerleri bu ön ayara kopyalar ve üst ön ayarla olan ilişkiyi kaldırır. Yalnızca üst ön ayarla uyumlu olan ön ayarlar desteklenmeyebilir."
+
msgid "Detach from parent"
msgstr "Ebeveynden ayrıl"
+# AI Translated
+msgid "Unique preset"
+msgstr "Bağımsız ön ayar"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Üst ön ayar"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Bu ön ayar başka bir ön ayardan devralmıyor."
+
msgid "Name is unavailable."
msgstr "Ad kullanılamıyor."
@@ -9799,22 +9838,22 @@ msgstr "Görev iptal edildi"
# AI Translated
msgid "Bambu Cool Plate"
-msgstr "Bambu Soğuk Plaka"
+msgstr "Bambu Cool Plate"
msgid "PLA Plate"
msgstr "PLA Plaka"
msgid "Bambu Engineering Plate"
-msgstr "Bambu Mühendislik Plakası"
+msgstr "Bambu Engineering Plate"
msgid "Bambu Smooth PEI Plate"
-msgstr "Bambu Pürüzsüz PEI Plaka"
-
-msgid "High temperature Plate"
msgstr "Bambu Smooth PEI Plate"
+msgid "High temperature Plate"
+msgstr "High temperature Plate"
+
msgid "Bambu Textured PEI Plate"
-msgstr "Bambu Dokulu PEI Plaka"
+msgstr "Bambu Textured PEI Plate"
msgid "Bambu Cool Plate SuperTack"
msgstr "Bambu Cool Plate SuperTack"
@@ -9832,7 +9871,7 @@ msgid "Multi-color with external"
msgstr "Çok renkli harici"
msgid "Your filament grouping method in the sliced file is not optimal."
-msgstr "Dilimlenmiş dosyadaki filaman gruplama yönteminiz optimal değil."
+msgstr "Dilimlenmiş dosyadaki filament gruplama yönteminiz optimal değil."
# AI Translated
msgid "To ensure print quality, the drying temperature will be lowered during printing."
@@ -9881,7 +9920,7 @@ msgid "Nozzles and filaments of the same type share the same PA profile."
msgstr "Aynı tipteki nozullar ve filamentler aynı PA profilini paylaşır."
msgid "Send complete"
-msgstr "gönderme tamamlandı"
+msgstr "Gönderme tamamlandı"
msgid "Error code"
msgstr "Hata kodu"
@@ -9962,13 +10001,13 @@ msgid "Errors"
msgstr "Hatalar"
msgid "More than one filament types have been mapped to the same external spool, which may cause printing issues. The printer won't pause during printing."
-msgstr "Aynı harici makaraya birden fazla filaman türü eşlenmiştir; bu durum, yazdırma sorunlarına neden olabilir. Yazıcı yazdırma sırasında duraklamaz."
+msgstr "Aynı harici makaraya birden fazla filament türü eşlenmiştir; bu durum, yazdırma sorunlarına neden olabilir. Yazıcı yazdırma sırasında duraklamaz."
msgid "The filament type setting of external spool is different from the filament in the slicing file."
-msgstr "Harici makaranın filaman türü ayarı, dilimleme dosyasındaki filamandan farklıdır."
+msgstr "Harici makaranın filament türü ayarı, dilimleme dosyasındaki filamentden farklıdır."
msgid "The printer type selected when generating G-code is not consistent with the currently selected printer. It is recommended that you use the same printer type for slicing."
-msgstr "G Kodu oluşturulurken seçilen yazıcı türü mevcut seçili yazıcıyla tutarlı değil. Dilimleme için aynı yazıcı tipini kullanmanız tavsiye edilir."
+msgstr "G-code oluşturulurken seçilen yazıcı türü mevcut seçili yazıcıyla tutarlı değil. Dilimleme için aynı yazıcı tipini kullanmanız tavsiye edilir."
msgid "There are some unknown filaments in the AMS mappings. Please check whether they are the required filaments. If they are okay, click \"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 için \"Onayla\"ya basın."
@@ -10039,7 +10078,7 @@ msgid "Cost %dg filament and %d changes more than optimal grouping."
msgstr "Maliyet %dg filament ve %d, optimum gruplandırmadan daha fazla değişir."
msgid "nozzle"
-msgstr "meme"
+msgstr "nozul"
# AI Translated
#, c-format, boost-format
@@ -10092,7 +10131,7 @@ msgstr "Geçerli yazıcının %s çapı(%.1fmm) dilimleme dosyasıyla (%.1fmm) e
#, c-format, boost-format
msgid "The current nozzle diameter (%.1fmm) doesn't match with the slicing file (%.1fmm). Please make sure the nozzle installed matches with settings in printer, then set the corresponding printer preset when slicing."
-msgstr "Mevcut nozül çapı (%.1fmm) dilimleme dosyasıyla (%.1fmm) eşleşmiyor. Lütfen takılan püskürtme ucunun yazıcıdaki ayarlarla eşleştiğinden emin olun, ardından dilimleme sırasında ilgili yazıcı ön ayarını yapın."
+msgstr "Mevcut nozul çapı (%.1fmm) dilimleme dosyasıyla (%.1fmm) eşleşmiyor. Lütfen takılan püskürtme ucunun yazıcıdaki ayarlarla eşleştiğinden emin olun, ardından dilimleme sırasında ilgili yazıcı ön ayarını yapın."
msgid "both extruders"
msgstr "her iki ekstruder"
@@ -10132,33 +10171,33 @@ msgstr "[ %s ] yüksek sıcaklıktaki bir ortamda yazdırmayı gerektirir."
#, c-format, boost-format
msgid "The filament on %s may soften. Please unload."
-msgstr "%s üzerindeki filaman yumuşayabilir. Lütfen boşaltın."
+msgstr "%s üzerindeki filament yumuşayabilir. Lütfen boşaltın."
#, c-format, boost-format
msgid "The filament on %s is unknown and may soften. Please set filament."
-msgstr "%s üzerindeki filaman bilinmiyor ve yumuşayabilir. Lütfen filamenti ayarlayın."
+msgstr "%s üzerindeki filament bilinmiyor ve yumuşayabilir. Lütfen filamenti ayarlayın."
msgid "Unable to automatically match to suitable filament. Please click to manually match."
-msgstr "Uygun filamanla otomatik olarak eşleştirilemiyor. Manuel olarak eşleştirmek için lütfen tıklayın."
+msgstr "Uygun filamentle otomatik olarak eşleştirilemiyor. Manuel olarak eşleştirmek için lütfen tıklayın."
msgid "Install toolhead enhanced cooling fan to prevent filament softening."
msgstr "Filament yumuşamasını önlemek için takım başlığı geliştirilmiş soğutma fanını takın."
# AI Translated
msgid "Smooth Cool Plate"
-msgstr "Pürüzsüz Soğuk Plaka"
+msgstr "Smooth Cool Plate"
# AI Translated
msgid "Engineering Plate"
-msgstr "Mühendislik Plakası"
+msgstr "Engineering Plate"
# AI Translated
msgid "Smooth High Temp Plate"
-msgstr "Pürüzsüz Yüksek Sıcaklık Plakası"
+msgstr "Smooth High Temp Plate"
# AI Translated
msgid "Textured PEI Plate"
-msgstr "Dokulu PEI Plaka"
+msgstr "Textured PEI Plate"
msgid "Cool Plate (SuperTack)"
msgstr "Cool Plate (SuperTack)"
@@ -10167,25 +10206,25 @@ msgid "Click here if you can't connect to the printer"
msgstr "Yazıcıya bağlanamıyorsanız burayı tıklayın"
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çılmadı; yalnızca LAN modundaki yazıcılar görüntüleniyor."
msgid "Connecting to server..."
-msgstr "Sunucuya baglanıyor"
+msgstr "Sunucuya bağlanılıyor..."
msgid "Synchronizing device information..."
-msgstr "Cihaz bilgileri senkronize ediliyor"
+msgstr "Cihaz bilgileri senkronize ediliyor..."
msgid "Synchronizing device information timed out."
-msgstr "Cihaz bilgilerinin senkronize edilmesi zaman aşımı"
+msgstr "Cihaz bilgileri senkronizasyonu zaman aşımına uğradı."
msgid "Cannot send a print job when the printer is not at FDM mode."
msgstr "Yazıcı FDM modunda değilken yazdırma işi gönderilemiyor."
msgid "Cannot send a print job while the printer is updating firmware."
-msgstr "Yazıcı ürün yazılımını güncellerken yazdırma işi gönderilemiyor"
+msgstr "Yazıcı yazılımı güncellenirken yeni bir baskı başlatılamaz."
msgid "The printer is executing instructions. Please restart printing after it ends."
-msgstr "Yazıcı talimatları yürütüyor. Lütfen bittikten sonra yazdırmayı yeniden başlatın"
+msgstr "Yazıcı komutları yürütüyor. Lütfen işlem bittikten sonra baskıyı tekrar başlatın."
msgid "AMS is setting up. Please try again later."
msgstr "AMS kuruluyor. Lütfen daha sonra tekrar deneyin."
@@ -10212,7 +10251,7 @@ msgid "Cannot send the print job to a printer whose firmware must be updated."
msgstr "Yazdırma işi, ürün yazılımının güncellenmesi gereken bir yazıcıya gönderilemiyor."
msgid "Cannot send a print job for an empty plate."
-msgstr "Boş kalıp için yazdırma işi gönderilemiyor"
+msgstr "Boş bir tabla için baskı işi gönderilemez."
msgid "Storage needs to be inserted to record timelapse."
msgstr "Hızlandırılmış çekimi kaydetmek için depolama biriminin eklenmesi gerekir."
@@ -10227,7 +10266,7 @@ msgid "Set dynamic flow calibration to 'OFF' to enable custom dynamic flow value
msgstr "Özel dinamik akış değerini etkinleştirmek için dinamik akış kalibrasyonunu 'KAPALI' olarak ayarlayın."
msgid "This printer does not support printing all plates."
-msgstr "Bu yazıcı tüm kalıpların yazdırılmasını desteklemiyor"
+msgstr "Bu yazıcı tüm plakaların bastırılmasını desteklemiyor."
# AI Translated
#, c-format, boost-format
@@ -10296,7 +10335,7 @@ msgid "Sending failed, please try again!"
msgstr "Gönderme başarısız oldu, lütfen yeniden deneyin!"
msgid "Slice complete"
-msgstr "Dilimleme tamam."
+msgstr "Dilimleme tamamlandı"
msgid "View all Daily tips"
msgstr "Tüm Günlük ipuçlarını görüntüleyin"
@@ -10475,8 +10514,8 @@ msgid ""
"No - Do not change these settings for me."
msgstr ""
"Bu ayarlar otomatik olarak değiştirilsin mi?\n"
-"Evet - Bu ayarları otomatik olarak değiştir\n"
-"Hayır - Bu ayarları benim için değiştirme"
+"Evet - Ayarları otomatik olarak uygula.\n"
+"Hayır - Ayarları değiştirme."
msgid ""
"When using soluble material for the support interface, we recommend the following settings:\n"
@@ -10496,27 +10535,11 @@ msgstr "Bu seçeneği etkinleştirmek istediğinizden emin misiniz?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "Dolgu desenleri genellikle, doğru baskı alınmasını ve istenen etkilerin (ör. Gyroid, Kübik) elde edilmesini sağlamak için döndürme işlemini otomatik olarak yapacak şekilde tasarlanmıştır. Mevcut seyrek dolgu desenini döndürmek, yetersiz destekle sonuçlanabilir. Lütfen dikkatli ilerleyin ve olası baskı sorunlarını iyice kontrol edin. Bu seçeneği etkinleştirmek istediğinizden emin misiniz?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"Katman yüksekliği çok küçük.\n"
-"min_layer_height olarak ayarlanacak\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer 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."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Ayarlanan aralığa otomatik olarak ayarlansın mı?\n"
-
-msgid "Adjust"
-msgstr "Ayarla"
-
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."
-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 ölçüde azaltabilmesine rağmen, aynı zamanda nozül tıkanmaları veya diğer yazdırma komplikasyonları riskini de artırabilir."
+msgstr "Deneysel özellik: Filament değişiklikleri sırasında, floşu en aza indirmek için filamenti daha büyük bir mesafeden geri çekmek ve kesmek. Flush’u önemli ölçüde azaltabilmesine rağmen, aynı zamanda nozul tıkanmaları veya diğer yazdırma komplikasyonları riskini de artırabilir."
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. Please use with the latest printer firmware."
-msgstr "Deneysel özellik: Filament değişiklikleri sırasında, filamanın en aza indirilmesi için filamanın daha büyük bir mesafeden geri çekilmesi ve kesilmesi. Akmayı önemli ölçüde azaltabilmesine rağmen, aynı zamanda püskürtme uçları tıkanması veya diğer yazdırma komplikasyonları riskini de artırabilir. Lütfen en son yazıcı ürün yazılımını kullanın."
+msgstr "Deneysel özellik: Filament değişiklikleri sırasında, filamentin en aza indirilmesi için filamentin daha büyük bir mesafeden geri çekilmesi ve kesilmesi. Akmayı önemli ölçüde azaltabilmesine rağmen, aynı zamanda püskürtme uçları tıkanması veya diğer yazdırma komplikasyonları riskini de artırabilir. Lütfen en son yazıcı ürün yazılımını kullanın."
msgid ""
"When recording timelapse without toolhead, it is recommended to add a \"Timelapse Wipe Tower\" \n"
@@ -10600,7 +10623,7 @@ msgstr "Hassasiyet"
# AI Translated
msgid "Z contouring"
-msgstr "Z konturlama"
+msgstr "Z Konturlama"
msgid "Wall generator"
msgstr "Duvar Türü"
@@ -10619,7 +10642,7 @@ msgstr "Alt / Üst Katmanlar"
# AI Translated
msgid "First layer speed"
-msgstr "İlk katman hızı"
+msgstr "İlk Katman Hızı"
msgid "Other layers speed"
msgstr "Diğer Katmanlar"
@@ -10653,7 +10676,7 @@ msgid "Support ironing"
msgstr "Destek Ütüleme"
msgid "Tree supports"
-msgstr "Ağaç destekler"
+msgstr "Ağaç Destekler"
msgid "Multimaterial"
msgstr "Çoklu Malzeme"
@@ -10668,10 +10691,10 @@ msgid "Special mode"
msgstr "Özel Mod"
msgid "G-code output"
-msgstr "G Kodu Çıktısı"
+msgstr "G-code Çıktısı"
msgid "Change extrusion role G-code"
-msgstr "Ekstrüzyon Rolü G-kodu Değiştirme"
+msgstr "Ekstrüzyon Rolü G-code Değiştirme"
msgid "Post-processing Scripts"
msgstr "İşlem Sonrası Komut Dosyaları"
@@ -10699,16 +10722,19 @@ msgid_plural ""
"Please remove them, or G-code visualization and print time estimation will be broken."
msgstr[0] ""
"Aşağıdaki %s satırı ayrılmış anahtar kelimeler içeriyor.\n"
-"Lütfen onu kaldırın, aksi takdirde G kodu görselleştirmesini ve yazdırma süresi tahminini geçeceksiniz."
+"Lütfen onu kaldırın, aksi takdirde G-code görselleştirmesini ve yazdırma süresi tahminini geçeceksiniz."
msgstr[1] ""
"Aşağıdaki satırlar %s ayrılmış anahtar sözcükler içeriyor.\n"
-"Lütfen bunları kaldırın, aksi takdirde G kodu görselleştirmesini ve yazdırma süresi tahminini geçeceksiniz."
+"Lütfen bunları kaldırın, aksi takdirde G-code görselleştirmesini ve yazdırma süresi tahminini geçeceksiniz."
msgid "Reserved keywords found"
msgstr "Ayrılmış anahtar kelimeler bulundu"
msgid "Setting Overrides"
-msgstr "Ayarların Üzerine Yazma"
+msgstr "Ayarların Üzerine Yaz"
+
+msgid "Retraction when switching material"
+msgstr "Malzemeyi Değiştirirken Geri Çekme"
msgid "Basic information"
msgstr "Temel Bilgiler"
@@ -10750,14 +10776,14 @@ msgid "Bed temperature when the Cool Plate SuperTack is installed. A value of 0
msgstr "Cool Plate SuperTack takılıyken yatak sıcaklığı. 0 değeri, filamentin Cool Plate SuperTack üzerine baskıyı desteklemediği anlamına gelir."
msgid "Cool Plate"
-msgstr "Soğuk plaka"
+msgstr "Cool Plate"
msgid "This is the bed temperature when the Cool Plate is installed. A value of 0 means the filament does not support printing on the Cool Plate."
msgstr "Cool Plate takıldığında yatak sıcaklığı. 0 değeri, filamentin Cool Plate üzerine yazdırmayı desteklemediği anlamına gelir."
# AI Translated
msgid "Textured Cool Plate"
-msgstr "Dokulu Soğuk Plaka"
+msgstr "Textured Cool Plate"
# AI Translated
msgid "This is the bed temperature when the Textured Cool Plate is installed. A value of 0 means the filament does not support printing on the Textured Cool Plate."
@@ -10768,7 +10794,7 @@ msgstr "Engineering Plate takıldığında yatak sıcaklığı. Değer 0, filame
# AI Translated
msgid "Smooth PEI Plate / High Temp Plate"
-msgstr "Pürüzsüz PEI Plaka / Yüksek Sıcaklık Plakası"
+msgstr "Smooth PEI Plate / High Temp Plate"
msgid "This is the bed temperature when the Smooth PEI Plate/High Temperature Plate is installed. A value of 0 means the filament does not support printing on the Smooth PEI Plate/High Temp Plate."
msgstr "Smooth PEI Plate / High Temp Plate takılığın da yatak sıcaklığı. 0 Değeri, filamentin Smooth PEI Plate / High Temp Plate üzerine baskı yapmayı desteklemediği anlamına gelir."
@@ -10790,13 +10816,13 @@ msgstr "Minimum fan hızı"
# AI Translated
msgid "The part cooling fan will run at the minimum fan speed when the estimated layer time is longer than the threshold value. When the layer time is shorter than the threshold, the fan speed will be interpolated between the minimum and maximum fan speed according to layer printing time."
-msgstr "Tahmini katman süresi eşik değerinden uzun olduğunda parça soğutma fanı minimum fan hızında çalışır. Katman süresi eşikten kısa olduğunda fan hızı, katman yazdırma süresine göre minimum ve maksimum fan hızı arasında enterpole edilir"
+msgstr "Tahmini katman süresi eşik değerden uzun olduğunda parça soğutma fanı minimum fan hızında çalışır. Katman süresi eşik değerden kısa olduğunda fan hızı, katman baskı süresine göre minimum ve maksimum hızlar arasında kademeli olarak ayarlanır."
msgid "Max fan speed threshold"
msgstr "Maksimum fan hızı"
msgid "The part cooling fan will run at maximum speed when the estimated layer time is shorter than the threshold value."
-msgstr "Tahmini katman süresi ayar değerinden kısa olduğunda parça soğutma fanı hızı maksimum olacaktır"
+msgstr "Tahmini katman süresi eşik değerden kısa olduğunda parça soğutma fanı maksimum hızda çalışır."
msgid "Auxiliary part cooling fan"
msgstr "Yardımcı parça soğutma fanı"
@@ -10811,10 +10837,10 @@ msgid "Complete print"
msgstr "Baskı tamamlanınca"
msgid "Filament start G-code"
-msgstr "Filament Başlangıç G Kodu"
+msgstr "Filament Başlangıç G-code"
msgid "Filament end G-code"
-msgstr "Filament Bitiş G Kodu"
+msgstr "Filament Bitiş G-code"
msgid "Wipe tower parameters"
msgstr "Silme Kulesi Parametreleri"
@@ -10843,13 +10869,19 @@ msgstr "Uyumlu süreç profilleri"
msgid "Printable space"
msgstr "Plaka Ayarı"
+msgid "Printer Agent"
+msgstr "Yazıcı Aracısı"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Yazıcı iletişimi için ağ aracısı uygulamasını seçin. Kullanılabilir aracılar başlangıçta kaydedilir."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
msgstr "%1% parametresi için geçersiz değer sağlandı: %2%"
msgid "G-code flavor is switched"
-msgstr "G-kod çeşidi değiştirildi"
+msgstr "G-code çeşidi değiştirildi"
msgid "Cooling Fan"
msgstr "Soğutucu Fan"
@@ -10867,40 +10899,40 @@ msgid "Accessory"
msgstr "Aksesuar"
msgid "Machine G-code"
-msgstr "Yazıcı G-kod"
+msgstr "Yazıcı G-code"
msgid "File header G-code"
-msgstr "Dosya başlığı G kodu"
+msgstr "Dosya başlığı G-code"
msgid "Machine start G-code"
-msgstr "Yazıcı Başlangıç G-kod"
+msgstr "Yazıcı Başlangıç G-code"
msgid "Machine end G-code"
-msgstr "Yazıcı Bitiş G-kod"
+msgstr "Yazıcı Bitiş G-code"
msgid "Printing by object G-code"
-msgstr "Nesneye Göre Yazdırma G-kod"
+msgstr "Nesneye Göre Yazdırma G-code"
msgid "Before layer change G-code"
-msgstr "Katman Değişimi Öncesi G-kod"
+msgstr "Katman Değişimi Öncesi G-code"
msgid "Layer change G-code"
-msgstr "Katman Değişimi G-kod"
+msgstr "Katman Değişimi G-code"
msgid "Timelapse G-code"
-msgstr "Timelapse G-kod"
+msgstr "Timelapse G-code"
msgid "Clumping Detection G-code"
-msgstr "Topaklanma Tespiti G Kodu"
+msgstr "Topaklanma Tespiti G-code"
msgid "Change filament G-code"
-msgstr "Filament Değişimi G-kod"
+msgstr "Filament Değişimi G-code"
msgid "Pause G-code"
-msgstr "Duraklatma G-Kod"
+msgstr "Duraklatma G-code"
msgid "Template Custom G-code"
-msgstr "Şablon Özel G-kod"
+msgstr "Şablon Özel G-code"
msgid "Motion ability"
msgstr "Hareket"
@@ -10973,9 +11005,6 @@ msgstr "Katman Yüksekliği Sınırları"
msgid "Z-Hop"
msgstr "Z Sıçraması"
-msgid "Retraction when switching material"
-msgstr "Malzemeyi Değiştirirken Geri Çekme"
-
# AI Translated
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
@@ -11017,8 +11046,8 @@ msgstr "%1% Ön Ayar"
msgid "The following preset will be deleted too:"
msgid_plural "The following presets will be deleted too:"
-msgstr[0] "Aşağıdaki ön ayar da silinecektir."
-msgstr[1] "Aşağıdaki ön ayarlar da silinecektir."
+msgstr[0] "Aşağıdaki önayar da silinecektir:"
+msgstr[1] "Aşağıdaki önayarlar da silinecektir:"
msgid ""
"Are you sure to delete the selected preset?\n"
@@ -11122,7 +11151,7 @@ msgid "Process Settings"
msgstr "İşlem Ayarları"
msgid "unsaved changes"
-msgstr "Kaydedilmemiş Değişiklikler"
+msgstr "kaydedilmemiş değişiklikler"
msgid "Transfer or discard changes"
msgstr "Değişiklikleri Çıkart veya Sakla"
@@ -11187,7 +11216,7 @@ msgid "Click the right mouse button to display the full text."
msgstr "Tam metni görüntülemek için farenin sağ tuşuna tıklayın."
msgid "No changes will be saved."
-msgstr "Tüm değişiklikler kaydedilmeyecek"
+msgstr "Hiçbir değişiklik kaydedilmeyecek."
msgid "All changes will be discarded."
msgstr "Tüm değişiklikler iptal edilecek."
@@ -11403,7 +11432,7 @@ msgid "view"
msgstr "görüş"
msgid "Current filament colors"
-msgstr "Mevcut filaman renkleri"
+msgstr "Mevcut filament renkleri"
msgid "Matching"
msgstr "Eşleştirme"
@@ -11433,8 +11462,8 @@ msgid ""
"The color has been selected, you can choose OK \n"
" to continue or manually adjust it."
msgstr ""
-"Renk seçildi, Tamam'ı seçebilirsiniz \n"
-" Devam etmek veya manuel olarak ayarlamak için"
+"Renk seçildi; devam etmek için Tamam'ı seçebilir\n"
+"veya elle ayarlayabilirsiniz."
msgid "—> "
msgstr "—> "
@@ -11443,7 +11472,7 @@ msgid ""
"Synchronizing AMS filaments will discard your modified but unsaved filament presets.\n"
"Are you sure you want to continue?"
msgstr ""
-"AMS filamanlarının senkronize edilmesi, değiştirilmiş ancak kaydedilmemiş filaman ön ayarlarınızı siler.\n"
+"AMS filamentlerinin senkronize edilmesi, değiştirilmiş ancak kaydedilmemiş filament ön ayarlarınızı siler.\n"
"Devam etmek istediğinizden emin misiniz?"
msgctxt "Sync_AMS"
@@ -11470,10 +11499,10 @@ msgid "Overwriting"
msgstr "Üzerine yazma"
msgid "Reset all filament mapping"
-msgstr "Tüm filaman eşlemesini sıfırla"
+msgstr "Tüm filament eşlemesini sıfırla"
msgid "(Recommended filament)"
-msgstr "(Önerilen filaman)"
+msgstr "(Önerilen filament)"
msgid "Advanced Options"
msgstr "Gelişmiş Seçenekler"
@@ -11499,7 +11528,7 @@ msgid "Tip"
msgstr "Uç"
msgid "Only synchronize filament type and color, not including AMS slot information."
-msgstr "AMS yuvası bilgileri hariç, yalnızca filaman tipini ve rengini senkronize edin."
+msgstr "AMS yuvası bilgileri hariç, yalnızca filament tipini ve rengini senkronize edin."
msgid "Replace the project filaments list sequentially based on printer filaments. And unused printer filaments will be automatically added to the end of the list."
msgstr "Proje filamentleri listesini yazıcı filamentlerine göre sırayla değiştirin. Kullanılmayan yazıcı filamentleri ise otomatik olarak listenin sonuna eklenecektir."
@@ -11514,7 +11543,7 @@ msgid "After being synced, this action cannot be undone."
msgstr "Senkronize edildikten sonra bu işlem geri alınamaz."
msgid "After being synced, the project's filament presets and colors will be replaced with the mapped filament types and colors. This action cannot be undone."
-msgstr "Senkronize edildikten sonra projenin filaman ön ayarları ve renkleri, eşlenen filaman türleri ve renkleri ile değiştirilecektir. Bu eylem geri alınamaz."
+msgstr "Senkronize edildikten sonra projenin filament ön ayarları ve renkleri, eşlenen filament türleri ve renkleri ile değiştirilecektir. Bu eylem geri alınamaz."
msgid "Are you sure to synchronize the filaments?"
msgstr "Filamentleri senkronize ettiğinizden emin misiniz?"
@@ -11529,7 +11558,7 @@ msgid "Add unused filaments to filaments list."
msgstr "Kullanılmayan filamentleri filament listesine ekleyin."
msgid "Only synchronize filament type and color, not including slot information."
-msgstr "Yuva bilgisi hariç, yalnızca filaman tipini ve rengini senkronize edin."
+msgstr "Yuva bilgisi hariç, yalnızca filament tipini ve rengini senkronize edin."
msgid "Ext spool"
msgstr "Harici makara"
@@ -11564,7 +11593,7 @@ msgid "Successfully synchronized filament color from printer."
msgstr "Filament rengi yazıcıdan başarıyla senkronize edildi."
msgid "Successfully synchronized color and type of filament from printer."
-msgstr "Yazıcıdan filamanın rengi ve türü başarıyla senkronize edildi."
+msgstr "Yazıcıdan filamentin rengi ve türü başarıyla senkronize edildi."
msgctxt "FinishSyncAms"
msgid "OK"
@@ -11587,7 +11616,7 @@ msgid "For constant flow rate, hold %1% while dragging."
msgstr "Sabit akış hızı için sürüklerken %1% basılı tutun."
msgid "ms"
-msgstr "Bayan"
+msgstr "ms"
msgid "Total ramming"
msgstr "Toplam çarpma"
@@ -11599,7 +11628,7 @@ msgid "Ramming line"
msgstr "Çarpma hattı"
msgid "Orca would re-calculate your flushing volumes everytime the filaments color changed or filaments changed. You could disable the auto-calculate in Orca Slicer > Preferences"
-msgstr "Orca, filamentlerin rengi her değiştiğinde veya filamentler değiştiğinde yıkama hacimlerinizi yeniden hesaplar. Otomatik hesaplamayı Orca Dilimleyici > Tercihler'de devre dışı bırakabilirsiniz."
+msgstr "Orca, filament rengi veya filament değiştirildiğinde tahliye miktarlarını her defasında yeniden hesaplar. Otomatik hesaplamayı Orca Slicer > Tercihler altından devre dışı bırakabilirsiniz"
msgid "Flushing volume (mm³) for each filament pair."
msgstr "Her filament çifti için yıkama hacmi (mm³)."
@@ -11622,7 +11651,7 @@ msgid "Flushing volumes for filament change"
msgstr "Filament değişimi için temizleme hacmi"
msgid "Please choose the filament colour"
-msgstr "Lütfen filaman rengini seçin"
+msgstr "Lütfen filament rengini seçin"
# AI Translated
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
@@ -11669,7 +11698,7 @@ msgid "parse json failed"
msgstr "json ayrıştırma başarısız oldu"
msgid "[Action Required] "
-msgstr "[İşlem Gerekli]"
+msgstr "[İşlem Gerekli] "
msgid "[Action Required]"
msgstr "[İşlem Gerekli]"
@@ -11777,7 +11806,7 @@ msgid "Movement step set to 1mm"
msgstr "Hareket adımı 1 mm'ye ayarlandı"
msgid "Keyboard 1-9: set filament for object/part"
-msgstr "klavye 1-9: nesne/parça için filamenti ayarlayın"
+msgstr "Klavye 1-9: nesneye/parçaya filament ata"
msgid "Camera view - Default"
msgstr "Kamera görünümü - Varsayılan"
@@ -11919,7 +11948,7 @@ msgid "On/Off one layer mode of the vertical slider"
msgstr "Dikey kaydırıcının tek katman modunu açma/kapama"
msgid "On/Off G-code window"
-msgstr "G-kodu penceresini aç/kapat"
+msgstr "G-code penceresini aç/kapat"
msgid "Move slider 5x faster"
msgstr "Kaydırıcıyı 5 kat daha hızlı hareket ettirin"
@@ -12134,7 +12163,7 @@ msgid "Repair finished"
msgstr "Onarım tamamlandı"
msgid "Repair failed"
-msgstr "Onarım başarısız oldu."
+msgstr "Onarım başarısız oldu"
msgid "Repair canceled"
msgstr "Onarım iptal edildi"
@@ -12153,10 +12182,10 @@ msgid " updated to "
msgstr " güncellendi "
msgid "Open G-code file:"
-msgstr "G kodu dosyasını açın:"
+msgstr "G-code dosyasını açın:"
msgid "One object has an empty first layer and can't be printed. Please Cut the bottom or enable supports."
-msgstr "Bir nesnenin başlangıç katmanı boş ve yazdırılamıyor. Lütfen alt kısmı kesin veya destekleri etkinleştirin."
+msgstr "Bir nesnenin ilk katmanı boş ve yazdırılamıyor. Lütfen alt kısmı kesin veya destekleri etkinleştirin."
#, boost-format
msgid "The object has empty layers between %1% and %2% and can’t be printed."
@@ -12167,7 +12196,7 @@ msgid "Object: %1%"
msgstr "Nesne: %1%"
msgid "Parts of the object at these heights may be too thin or the object may have a faulty mesh."
-msgstr "Belki nesnenin bu yükseklikteki bazı kısımları çok incedir veya nesnenin ağı hatalı olabilir"
+msgstr "Nesnenin bu yüksekliklerdeki kısımları çok ince olabilir veya nesne bozuk bir ağ yapısına (mesh) sahip olabilir."
# AI Translated
msgid "Process change extrusion role G-code"
@@ -12178,7 +12207,7 @@ msgid "Filament change extrusion role G-code"
msgstr "Filament ekstrüzyon rolü değişim G-code'u"
msgid "No object can be printed. It may be too small."
-msgstr "Hiçbir nesne yazdırılamaz. Belki çok küçük"
+msgstr "Hiçbir nesne basılamıyor. Nesne çok küçük olabilir."
msgid "Your print is very close to the priming regions. Make sure there is no collision."
msgstr "Baskınız hazırlama bölgelerine çok yakın. Çarpışma olmadığından emin olun."
@@ -12187,15 +12216,15 @@ msgid ""
"Failed to generate G-code for invalid custom G-code.\n"
"\n"
msgstr ""
-"Geçersiz özel G kodu için gcode oluşturulamadı.\n"
+"Geçersiz özel G-code için G-code oluşturulamadı.\n"
"\n"
msgid "Please check the custom G-code or use the default custom G-code."
-msgstr "Lütfen özel G kodunu kontrol edin veya varsayılan özel G kodunu kullanın."
+msgstr "Lütfen özel G-code'u kontrol edin veya varsayılan özel G-code'u kullanın."
#, boost-format
msgid "Generating G-code: layer %1%"
-msgstr "G kodu oluşturuluyor: katman %1%"
+msgstr "G-code oluşturuluyor: katman %1%"
msgid "Flush volumes matrix do not match to the correct size!"
msgstr "Yıkama hacimleri matrisi doğru boyutla eşleşmiyor!"
@@ -12217,17 +12246,17 @@ msgid "Input shaping is only supported by Klipper, RepRapFirmware and Marlin 2."
msgstr "Input shaping yalnızca Klipper, RepRapFirmware ve Marlin 2 tarafından desteklenir."
msgid "Grouping error: "
-msgstr "Gruplama hatası:"
+msgstr "Gruplama hatası: "
msgid " can not be placed in the "
-msgstr "içine yerleştirilemez"
+msgstr " içine yerleştirilemez "
# AI Translated
msgid "Group error in manual mode. Please check nozzle count or regroup."
msgstr "Elle modda gruplama hatası. Lütfen nozul sayısını denetleyin veya yeniden gruplayın."
msgid "Internal Bridge"
-msgstr "İç Köprü"
+msgstr "İç köprü"
msgid "undefined error"
msgstr "bilinmeyen hata"
@@ -12236,7 +12265,7 @@ msgid "too many files"
msgstr "çok fazla dosya"
msgid "File too large"
-msgstr "dosya çok büyük"
+msgstr "Dosya çok büyük"
msgid "unsupported method"
msgstr "desteklenmeyen yöntem"
@@ -12306,7 +12335,7 @@ msgid "invalid filename"
msgstr "geçersiz dosya adı"
msgid "Buffer too small"
-msgstr "arabellek çok küçük"
+msgstr "Arabellek çok küçük"
msgid "internal error"
msgstr "dahili hata"
@@ -12315,7 +12344,7 @@ msgid "file not found"
msgstr "dosya bulunamadı"
msgid "Archive too large"
-msgstr "arşiv çok büyük"
+msgstr "Arşiv çok büyük"
msgid "validation failed"
msgstr "doğrulama başarısız"
@@ -12339,7 +12368,7 @@ msgid " is too close to exclusion area, there may be collisions when printing."
msgstr " Hariç tutma alanına çok yakın olduğundan yazdırma sırasında çarpışmalar meydana gelebilir."
msgid " is too close to clumping detection area, there may be collisions when printing."
-msgstr "topaklanma algılama alanına çok yakın olduğundan yazdırma sırasında çarpışmalar meydana gelebilir."
+msgstr " topaklanma algılama alanına çok yakın, baskı sırasında çarpışmalar meydana gelebilir."
msgid "Prime Tower"
msgstr "Başbakan Kulesi"
@@ -12351,7 +12380,11 @@ msgid " is too close to an exclusion area, and collisions will be caused.\n"
msgstr " dışlama alanına çok yakın ve çarpışmalara neden olacak.\n"
msgid " is too close to clumping detection area, and collisions will be caused.\n"
-msgstr "topaklanma tespit alanına çok yakınsa çarpışmalara neden olur.\n"
+msgstr " topaklanma algılama alanına çok yakın, çarpışmalar meydana gelecektir.\n"
+
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " yazdırılabilir alanın kısmen dışında ve yazdırılamaz.\n"
# AI Translated
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
@@ -12405,7 +12438,7 @@ msgid "Variable layer height is not supported with Organic supports."
msgstr "Değişken katman yüksekliği Organik desteklerle desteklenmez."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
-msgstr "Farklı püskürtme ucu çapları ve farklı filaman çapları, ana kule etkinleştirildiğinde iyi çalışmayabilir. Oldukça deneysel olduğundan lütfen dikkatli ilerleyin."
+msgstr "Farklı püskürtme ucu çapları ve farklı filament çapları, ana kule etkinleştirildiğinde iyi çalışmayabilir. Oldukça deneysel olduğundan lütfen dikkatli ilerleyin."
msgid "The Wipe Tower is currently only supported with the relative extruder addressing (use_relative_e_distances=1)."
msgstr "Temizleme Kulesi şu anda yalnızca ilgili ekstruder adreslemesiyle desteklenmektedir (use_relative_e_distances=1)."
@@ -12414,7 +12447,7 @@ msgid "Ooze prevention is only supported with the wipe tower when 'single_extrud
msgstr "Sızıntı önleme yalnızca ‘tek ekstruder çoklu malzeme’ kapalıyken silme kulesiyle desteklenir."
msgid "The prime tower is currently only supported for the Marlin, RepRap/Sprinter, RepRapFirmware and Repetier G-code flavors."
-msgstr "Prime tower şu anda yalnızca Marlin, RepRap/Sprinter, RepRapFirmware ve Repetier G kodu türleri için desteklenmektedir."
+msgstr "Prime tower şu anda yalnızca Marlin, RepRap/Sprinter, RepRapFirmware ve Repetier G-code türleri için desteklenmektedir."
msgid "A prime tower is not supported in “By object” print."
msgstr "Prime tower, \"Nesneye göre\" yazdırmada desteklenmez."
@@ -12569,10 +12602,10 @@ msgstr ""
"Nesneleri birbirinden uzaklaştırın, kenar/etek boyutunu küçültün, Etek tipini Birleşik olarak değiştirin veya Yazdırma sırasını Katmana göre olarak değiştirin."
msgid "Exporting G-code"
-msgstr "G kodu dışa aktarılıyor"
+msgstr "G-code dışa aktarılıyor"
msgid "Generating G-code"
-msgstr "G kodu oluşturuluyor"
+msgstr "G-code oluşturuluyor"
# AI Translated
msgid "Processing of the filename_format template failed."
@@ -12688,9 +12721,6 @@ msgstr "G-code yerine 3MF kullan"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Yazıcı, baskı işi olarak 3MF dosyası kabul ediyorsa bunu etkinleştirin. Etkinleştirildiğinde Orca Slicer, dilimlenmiş dosyayı düz bir .gcode dosyası yerine .gcode.3mf olarak gönderir."
-msgid "Printer Agent"
-msgstr "Yazıcı Aracısı"
-
msgid "Select the network agent implementation for printer communication."
msgstr "Yazıcı iletişimi için ağ aracısı uygulamasını seçin."
@@ -12698,7 +12728,7 @@ msgid "Hostname, IP or URL"
msgstr "Ana bilgisayar adı, IP veya URL"
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/"
-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/"
+msgstr "OrcaSlicer, G-code 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ğrulaması etkin ve HAProxy arkasında çalışan yazıcı ana bilgisayarlarına URL içine kullanıcı adı ve parola şu biçimde eklenerek erişilebilir: https://kullaniciadi:parola@octopi-adresiniz/"
msgid "Device UI"
msgstr "Cihaz kullanıcı arayüzü"
@@ -12710,7 +12740,7 @@ msgid "API Key / Password"
msgstr "API Anahtarı / Şifre"
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."
+msgstr "Orca Slicer, G-code 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."
# AI Translated
msgid "Serial Number"
@@ -12794,7 +12824,7 @@ msgid "This is the bed temperature for layers except for the first one. A value
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."
msgid "First layer"
-msgstr "Başlangıç katmanı"
+msgstr "İlk katman"
msgid "First layer bed temperature"
msgstr "İlk katman yatak sıcaklığı"
@@ -12818,7 +12848,7 @@ msgid "This is the bed temperature of the first layer. A value of 0 means the fi
msgstr "İlk katmanın yatak sıcaklığı. 0 Değeri, filamentin Dokulu PEI Plaka üzerine yazdırmayı desteklemediği anlamına gelir."
msgid "Plate types supported by the printer"
-msgstr "Yazıcının desteklediği yatak türleri."
+msgstr "Yazıcı tarafından desteklenen plaka tipleri"
msgid "Default bed type"
msgstr "Varsayılan yatak türü"
@@ -12839,7 +12869,7 @@ msgid "Other layers filament sequence"
msgstr "Diğer katmanlar filament dizisi"
msgid "This G-code is inserted at every layer change before the Z lift."
-msgstr "Bu G kodu, z'yi kaldırmadan önce her katman değişikliğinde eklenir."
+msgstr "Bu G-code, z'yi kaldırmadan önce her katman değişikliğinde eklenir."
msgid "Bottom shell layers"
msgstr "Alt katmanlar"
@@ -12920,7 +12950,6 @@ msgstr "Çıkıntı bu belirtilen eşiği aştığında, soğutma fanını aşa
msgid "External bridge infill direction"
msgstr "Dış köprü dolgu yönü"
-# AI Translated
#, no-c-format, no-boost-format
msgid ""
"External Bridging angle override.\n"
@@ -12937,14 +12966,13 @@ msgstr ""
"Aksi hâlde verilen açı şuna göre kullanılır:\n"
" - Mutlak koordinatlar\n"
" - Mutlak koordinatlar + Model dönüşü: Yönleri modele hizala etkinse\n"
-" - En uygun otomatik açı + bu değer: 'Göreli Köprü Açısı' etkinse\n"
+" - En uygun otomatik açı + bu değer: ‘Göreceli Köprü Açısı' etkinse\n"
"\n"
"Sıfır mutlak açı için 180° kullanın."
msgid "Internal bridge infill direction"
msgstr "İç köprü dolgu yönü"
-# AI Translated
msgid ""
"Internal Bridging angle override.\n"
"If left to zero, the bridging angle will be calculated automatically for each specific bridge.\n"
@@ -12960,13 +12988,12 @@ msgstr ""
"Aksi hâlde verilen açı şuna göre kullanılır:\n"
" - Mutlak koordinatlar\n"
" - Mutlak koordinatlar + Model dönüşü: Yönleri modele hizala etkinse\n"
-" - En uygun otomatik açı + bu değer: 'Göreli Köprü Açısı' etkinse\n"
+" - En uygun otomatik açı + bu değer: 'Göreceli Köprü Açısı' etkinse\n"
"\n"
"Sıfır mutlak açı için 180° kullanın."
-# AI Translated
msgid "Relative bridge angle"
-msgstr "Göreli köprü açısı"
+msgstr "Göreceli köprü açısı"
# AI Translated
msgid "When enabled, the bridge angle values are added to the automatically calculated bridge direction instead of overriding it."
@@ -13130,7 +13157,7 @@ msgid ""
msgstr ""
"Bu faktör dış duvarlar için malzeme miktarını etkiler.\n"
"\n"
-"Kullanılan gerçek dış duvar akışı, bu değerin filaman akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
+"Kullanılan gerçek dış duvar akışı, bu değerin filament akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
msgid "Inner wall flow ratio"
msgstr "İç duvar akış oranı"
@@ -13142,7 +13169,7 @@ msgid ""
msgstr ""
"Bu faktör iç duvarlar için malzeme miktarını etkiler.\n"
"\n"
-"Kullanılan gerçek iç duvar akışı, bu değerin filaman akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
+"Kullanılan gerçek iç duvar akışı, bu değerin filament akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
msgid "Overhang flow ratio"
msgstr "Çıkıntı akış oranı"
@@ -13154,7 +13181,7 @@ msgid ""
msgstr ""
"Bu faktör çıkıntılar için malzeme miktarını etkiler.\n"
"\n"
-"Kullanılan gerçek sarkma akışı, bu değerin filaman akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
+"Kullanılan gerçek sarkma akışı, bu değerin filament akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
msgid "Sparse infill flow ratio"
msgstr "Seyrek dolgu akış oranı"
@@ -13166,7 +13193,7 @@ msgid ""
msgstr ""
"Bu faktör seyrek dolgu için malzeme miktarını etkiler.\n"
"\n"
-"Kullanılan gerçek seyrek dolgu akışı, bu değerin filaman akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
+"Kullanılan gerçek seyrek dolgu akışı, bu değerin filament akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
msgid "Internal solid infill flow ratio"
msgstr "Dahili katı dolgu akış oranı"
@@ -13178,7 +13205,7 @@ msgid ""
msgstr ""
"Bu faktör, iç katı dolgu için malzeme miktarını etkiler.\n"
"\n"
-"Kullanılan gerçek dahili katı dolgu akışı, bu değerin filaman akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
+"Kullanılan gerçek dahili katı dolgu akışı, bu değerin filament akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
msgid "Gap fill flow ratio"
msgstr "Boşluk doldurma akış oranı"
@@ -13190,7 +13217,7 @@ msgid ""
msgstr ""
"Bu faktör boşlukları dolduracak malzeme miktarını etkiler.\n"
"\n"
-"Kullanılan gerçek boşluk doldurma akışı, bu değerin filaman akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
+"Kullanılan gerçek boşluk doldurma akışı, bu değerin filament akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
msgid "Support flow ratio"
msgstr "Destek akış oranı"
@@ -13202,7 +13229,7 @@ msgid ""
msgstr ""
"Bu faktör destek için malzeme miktarını etkiler.\n"
"\n"
-"Kullanılan gerçek destek akışı, bu değerin filaman akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
+"Kullanılan gerçek destek akışı, bu değerin filament akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
msgid "Support interface flow ratio"
msgstr "Destek arayüzü akış oranı"
@@ -13214,7 +13241,7 @@ msgid ""
msgstr ""
"Bu faktör, destek arayüzü için malzeme miktarını etkiler.\n"
"\n"
-"Kullanılan gerçek destek arayüzü akışı, bu değerin filaman akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
+"Kullanılan gerçek destek arayüzü akışı, bu değerin filament akış oranıyla ve ayarlandıysa nesnenin akış oranıyla çarpılmasıyla hesaplanır."
msgid "Precise wall"
msgstr "Hassas duvar"
@@ -13236,7 +13263,7 @@ msgid ""
"If a top surface has to be printed and it's partially covered by another layer, it won't be considered at a top layer where its width is below this value. This can be useful to not let the 'one perimeter on top' trigger on surface that should be covered only by perimeters. This value can be a mm or a % of the perimeter extrusion width.\n"
"Warning: If enabled, artifacts can be created if you have some thin features 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 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"
+"Eğer bir üst yüzey basılacaksa ve kısmen başka bir katman tarafından kaplıysa katman 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"
"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."
msgid "Only one wall on first layer"
@@ -13376,9 +13403,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "İç köprülerin hızı. Değer yüzde olarak ifade edilirse köprü hızına göre hesaplanacaktır. Varsayılan değer %150’dir."
-msgid "Brim width"
-msgstr "Kenar genişliği"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Modelden en dış kenar çizgisine kadar olan mesafe."
@@ -13413,7 +13437,7 @@ msgstr ""
"Not: Elde edilen değer ilk katman akış oranından etkilenmez."
msgid "Brim follows compensated outline"
-msgstr "Kenar telafi edilen taslağı takip ediyor"
+msgstr "Kenar toleranslı dış sınırı takip etsin"
# AI Translated
msgid ""
@@ -13463,6 +13487,14 @@ msgstr ""
"Keskin açılar algılanmadan önce geometri azaltılacaktır. Bu parametre, azaltma için minimum sapma uzunluğunu belirtir.\n"
"Devre dışı bırakmak için 0."
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Kenar kulakları yalnızca dışta"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Fare kulaklarını yalnızca modelin dış konturunda oluşturur, delikleri ve kapalı bölümleri hariç tutar."
+
msgid "upward compatible machine"
msgstr "yukarı doğru uyumlu makine"
@@ -13487,7 +13519,6 @@ msgstr "Nesneye göre"
msgid "Intra-layer order"
msgstr "Katman içi sıra"
-# AI Translated
msgid ""
"Order in which object instances are visited within a single layer, which controls how much travel is spent moving between them.\n"
"\n"
@@ -13498,14 +13529,17 @@ msgid ""
"\n"
"With multiple filaments or tools in the same layer, minimizing tool changes takes priority: objects are grouped by filament first and this setting only orders the instances within each filament group, so the overall sequence may not look like the shortest path across the plate."
msgstr ""
-"Tek bir katman içinde nesne örneklerinin hangi sırayla ziyaret edileceği; bu da aralarında ne kadar seyahat harcanacağını belirler.\n"
+"Tek bir katman içinde nesne eş kopyalarının (instances) basılma sırasıdır; bunlar arasındaki seyahat mesafesini ve süresini kontrol eder.\n"
"\n"
-"Varsayılan: en yakın komşu zincirlemesi, 2-opt ve kesişim giderme ile iyileştirilir. İyi bir genel seçim.\n"
-"Nesne listesi olarak: örnekler, herhangi bir yol optimizasyonu olmadan nesne listesindeki sırayla yazdırılır. Öngörülebilir, elle denetlenen bir sıraya ihtiyacınız olduğunda kullanın.\n"
-"Hepsinin en iyisi (en kısa yol): her strateji değerlendirilir ve en kısa olanı kullanılır. Nesne örneklerinin sırası tüm baskı için bir kez belirlenir, tek tek adaların sırası ise her katman için ayrı belirlenir; bu nedenle farklı katmanlar farklı stratejiler kullanabilir. Dilimleme biraz daha yavaştır.\n"
-"Yılankavi: satır satır ilerleyen yılankavi geçiş, 2-opt ile iyileştirilir. Çok sayıda küçük parçadan oluşan düzenli ızgaralar için çok uygundur.\n"
+"Varsayılan (Default): 2-opt algoritması ve hat kesişimi giderme ile iyileştirilmiş en yakın komşu zincirleme yöntemi. Genel kullanım için dengeli ve ideal bir tercihtir.\n"
"\n"
-"Aynı katmanda birden fazla filament veya araç varsa, araç değişimlerini en aza indirmek önceliklidir: nesneler önce filamente göre gruplanır ve bu ayar yalnızca her filament grubu içindeki örnekleri sıralar; bu nedenle genel sıra, tabla genelindeki en kısa yol gibi görünmeyebilir."
+"Nesne listesi olarak (As object list): Eş kopyalar (instances), herhangi bir rota optimizasyonu yapılmadan doğrudan nesne listesindeki sıralamayla basılır. Manuel ve öngörülebilir bir sıra istendiğinde kullanılır.\n"
+"\n"
+"Hepsinin en iyisi (en kısa yol): Mevcut tüm stratejiler hesaplanır ve en kısa mesafe sunan rota seçilir. Nesne eş kopyalarının sırası tüm baskı için tek seferde kararlaştırılırken, bağımsız adacıkların sıralaması katman bazında hesaplanır (farklı katmanlarda farklı stratejiler devreye girebilir). Dilimleme süresini biraz uzatabilir.\n"
+"\n"
+"Yılankavi (Snake): 2-opt ile optimize edilmiş satır satır kıvrımlı (serpantin) tarama rotası. Yatağa ızgara şeklinde dizilmiş çok sayıda küçük parçalı baskılar için son derece uygundur.\n"
+"\n"
+"Aynı katmanda birden fazla filament veya nozül/takım kullanıldığında, takım değişimlerini en aza indirmek önceliklidir: Nesneler önce filamente göre gruplanır; bu ayar ise sadece ilgili filament grubu içindeki eş kopyaları (instances) sıralar. Bu nedenle genel hareket sırası plakanın tamamına bakıldığında her zaman en kısa rota gibi görünmeyebilir."
msgid "As object list"
msgstr "Nesne listesi olarak"
@@ -13568,7 +13602,7 @@ msgid "Activate air filtration"
msgstr "Hava filtrelemesini etkinleştirin"
msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)"
-msgstr "Daha iyi hava filtrasyonu için etkinleştirin. G-kodu komutu: M106 P3 S(0-255)"
+msgstr "Daha iyi hava filtrasyonu için etkinleştirin. G-code komutu: M106 P3 S(0-255)"
# AI Translated
msgid "Enable this to override the fan speed set in custom G-code during print."
@@ -13583,7 +13617,7 @@ msgid "Enable this to override the fan speed set in custom G-code after print co
msgstr "Baskı tamamlandıktan sonra özel G-code'da ayarlanan fan hızını geçersiz kılmak için bunu etkinleştirin."
msgid "Speed of exhaust fan during printing. This speed will override the speed in filament custom G-code."
-msgstr "Baskı sırasında egzoz fanının hızı. Bu hız, filament özel gcode'undaki hızın üzerine yazılacaktır."
+msgstr "Baskı sırasında egzoz fanının hızı. Bu hız, filament özel G-code'undaki hızın üzerine yazılacaktır."
msgid "Speed of exhaust fan after printing completes."
msgstr "Baskı tamamlandıktan sonra egzoz fanının hızı."
@@ -13697,22 +13731,22 @@ msgid "This is the maximum length of bridges that don't need support. Set it to
msgstr "Desteğe ihtiyaç duymayan maksimum köprü uzunluğu. Tüm köprülerin desteklenmesini istiyorsanız bunu 0'a, hiçbir köprünün desteklenmesini istemiyorsanız çok büyük bir değere ayarlayın."
msgid "End G-code"
-msgstr "Bitiş G kodu"
+msgstr "Bitiş G-code"
msgid "Add end G-Code when finishing the entire print."
-msgstr "Tüm yazdırmayı tamamladığında çalışacak olan G Kodu."
+msgstr "Tüm yazdırmayı tamamladığında çalışacak olan G-code."
msgid "Between Object G-code"
-msgstr "Nesne Arası Gcode"
+msgstr "Nesne Arası G-code"
msgid "Insert G-code between objects. This parameter will only come into effect when you print your models object by object."
-msgstr "Nesnelerin arasına Gcode ekleyin. Bu parametre yalnızca modellerinizi nesne nesne yazdırdığınızda etkili olacaktır."
+msgstr "Nesnelerin arasına G-code ekleyin. Bu parametre yalnızca modellerinizi nesne nesne yazdırdığınızda etkili olacaktır."
msgid "Add end G-code when finishing the printing of this filament."
-msgstr "Bu filament ile baskı bittiğinde çalışacak G kod."
+msgstr "Bu filament ile baskı bittiğinde çalışacak G-code."
msgid "Ensure vertical shell thickness"
-msgstr "Dikey kabuk kalınlığını onayla"
+msgstr "Dikey kabuk kalınlığını koru"
msgid ""
"Add solid infill near sloping surfaces to guarantee the vertical shell thickness (top+bottom solid layers)\n"
@@ -13724,13 +13758,13 @@ msgid ""
msgstr ""
"Dikey kabuk kalınlığını garanti etmek için eğimli yüzeylerin yakınına katı 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"
+"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 "Kritik"
msgid "Moderate"
msgstr "Orta"
@@ -14031,14 +14065,14 @@ msgid "Extruder offset"
msgstr "Ekstruder konumu"
msgid "The material may have volumetric change after switching between molten and crystalline states. This setting changes all extrusion flow of this filament in G-code proportionally. The recommended value range is between 0.95 and 1.05. You may be able to tune this value to get a nice flat surface if there is 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 akışını orantılı olarak değiştirir. Önerilen değer aralığı 0,95 ile 1,05 arasındadır. Belki hafif taşma veya taşma olduğunda güzel düz bir yüzey elde etmek için bu değeri ayarlayabilirsiniz."
+msgstr "Malzeme, erimiş hal ile kristal hal arasında geçiş yaptıktan sonra hacimsel değişime sahip olabilir. Bu ayar, bu filamentin G-code'daki tüm ekstrüzyon akışını orantılı olarak değiştirir. Önerilen değer aralığı 0,95 ile 1,05 arasındadır. Belki hafif taşma veya taşma olduğunda güzel düz bir yüzey elde etmek için bu değeri ayarlayabilirsiniz."
msgid ""
"The material may have volumetric change after switching between molten and crystalline states. This setting changes all extrusion flow of this filament in G-code proportionally. The recommended value range is between 0.95 and 1.05. You may be able to tune this value to get a nice flat surface if there is slight overflow or underflow.\n"
"\n"
"The final object flow ratio is this value multiplied by the filament flow ratio."
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 akışını orantılı olarak değiştirir. Önerilen değer aralığı 0,95 ile 1,05 arasındadır. Belki hafif taşma veya taşma olduğunda güzel düz bir yüzey elde etmek için bu değeri ayarlayabilirsiniz.\n"
+"Malzeme, erimiş hal ile kristal hal arasında geçiş yaptıktan sonra hacimsel değişime sahip olabilir. Bu ayar, bu filamentin G-code’daki tüm ekstrüzyon akışını orantılı olarak değiştirir. Önerilen değer aralığı 0,95 ile 1,05 arasındadır. Belki hafif taşma veya taşma olduğunda güzel düz bir yüzey elde etmek için bu değeri ayarlayabilirsiniz.\n"
"\n"
"Nihai nesne akış oranı, bu değerin filament akış oranıyla çarpılmasıyla elde edilir."
@@ -14185,10 +14219,10 @@ msgid "Minimum HRC of nozzle required to print the filament. A value of 0 means
msgstr "Filamenti yazdırmak için gereken minimum HRC nozul. Sıfır, nozulun HRC'sinin kontrol edilmediği anlamına gelir."
msgid "Filament map to extruder"
-msgstr "Ekstrudere filaman haritası"
+msgstr "Ekstrudere filament haritası"
msgid "Filament map to extruder."
-msgstr "Ekstrudere filaman haritası."
+msgstr "Ekstrudere filament haritası."
msgid "Auto For Flush"
msgstr "Yıkama İçin Otomatik"
@@ -14204,7 +14238,7 @@ msgid "Flush temperature"
msgstr "Yıkama sıcaklığı"
msgid "Temperature when flushing filament. 0 indicates the upper bound of the recommended nozzle temperature range."
-msgstr "Filament yıkanırken sıcaklık. 0, önerilen meme sıcaklık aralığının üst sınırını gösterir."
+msgstr "Filament yıkanırken sıcaklık. 0, önerilen nozul sıcaklık aralığının üst sınırını gösterir."
# AI Translated
msgid "Flush temperature used in fast purge mode."
@@ -14247,10 +14281,10 @@ msgid "By First filament"
msgstr "İlk filamente göre"
msgid "By Highest Temp"
-msgstr "En Yüksek Sıcaklığa Göre"
+msgstr "En yüksek sıcaklığa göre"
msgid "Filament diameter is used to calculate extrusion variables in G-code, so it is important that this is accurate and precise."
-msgstr "Filament çapı, gcode'da ekstrüzyonu hesaplamak için kullanılır; bu nedenle önemlidir ve doğru olmalıdır."
+msgstr "Filament çapı, G-code'da ekstrüzyonu hesaplamak için kullanılır; bu nedenle önemlidir ve doğru olmalıdır."
msgid "Pellet flow coefficient"
msgstr "Pelet akış katsayısı"
@@ -14326,7 +14360,7 @@ msgid "Speed used for unloading the filament on the wipe tower (does not affect
msgstr "Filamenti silme kulesinde boşaltmak için kullanılan hız (sıkıştırmadan hemen sonra boşaltmanın ilk kısmını etkilemez)."
msgid "Unloading speed at the start"
-msgstr "Başlangıçta boşaltma hızı"
+msgstr "Başlangıçtaki boşaltma hızı"
msgid "Speed used for unloading the tip of the filament immediately after ramming."
msgstr "Sıkıştırmadan hemen sonra filamentin ucunu boşaltmak için kullanılan hız."
@@ -14353,7 +14387,7 @@ msgid "Stamping distance measured from the center of the cooling tube"
msgstr "Soğutma tüpünün merkezinden ölçülen damgalama mesafesi"
msgid "If set to non-zero value, filament is moved toward the nozzle between the individual cooling moves (\"stamping\"). This option configures how long this movement should be before the filament is retracted again."
-msgstr "Sıfırdan farklı bir değere ayarlanırsa filaman bireysel soğutma hareketleri arasında (“damgalama”) nüzule doğru hareket ettirilir. Bu seçenek, filamanın tekrar geri çekilmesinden önce bu hareketin ne kadar sürmesi gerektiğini yapılandırır."
+msgstr "Sıfırdan farklı bir değere ayarlanırsa filament bireysel soğutma hareketleri arasında (“damgalama”) nüzule doğru hareket ettirilir. Bu seçenek, filamentin tekrar geri çekilmesinden önce bu hareketin ne kadar sürmesi gerektiğini yapılandırır."
msgid "Speed of the first cooling move"
msgstr "İlk soğutma hareketi hızı"
@@ -14448,7 +14482,7 @@ msgid "g/cm³"
msgstr "g/cm³"
msgid "Filament material type"
-msgstr "Filament malzeme türü."
+msgstr "Filament malzeme türü"
msgid "Soluble material"
msgstr "Çözünür malzeme"
@@ -14460,7 +14494,7 @@ msgid "Filament ramming length"
msgstr "Filament sıkıştırma uzunluğu"
msgid "When changing the extruder, it is recommended to extrude a certain length of filament from the original extruder. This helps minimize nozzle oozing."
-msgstr "Ekstrüderi değiştirirken, orijinal ekstrüderden belirli bir uzunlukta filamanın çıkarılması tavsiye edilir. Bu, meme sızıntısını en aza indirmeye yardımcı olur."
+msgstr "Ekstrüderi değiştirirken, orijinal ekstrüderden belirli bir uzunlukta filamentin çıkarılması tavsiye edilir. Bu, nozul sızıntısını en aza indirmeye yardımcı olur."
msgid "Support material"
msgstr "Destek malzemesi"
@@ -14586,7 +14620,7 @@ msgid "Sparse infill pattern"
msgstr "Dolgu deseni"
msgid "This is the line pattern for internal sparse infill."
-msgstr "İç dolgu deseni."
+msgstr "Bu, iç seyrek dolgu için çizgi desenidir."
msgid "Zig Zag"
msgstr "Zig zag"
@@ -14647,6 +14681,14 @@ msgstr "Tpms-fk"
msgid "Gyroid"
msgstr "Jiroid"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Dolgu yumuşatma faktörü"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Dolgu köşelerinin ne kadar yuvarlatılacağını belirler. 0% özgün keskin yolu korur, 100% ise komşu dolgu çizgileri arasında mümkün olan en büyük eğrileri üretir."
+
msgid "This is the 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."
@@ -14663,7 +14705,7 @@ msgid "Acceleration of internal solid infill. If the value is expressed as a per
msgstr "İç katı dolgunun hızlandırılması. Değer yüzde olarak ifade edilirse (örn. %100), varsayılan ivmeye göre hesaplanacaktır."
msgid "This is the printing acceleration for the first layer. Using limited acceleration can improve build plate adhesion."
-msgstr "Başlangıç katmanının hızlandırılması. Daha düşük bir değerin kullanılması baskı plakası yapışkanlığını iyileştirebilir."
+msgstr "İlk katman için baskı ivmelenmesidir. Sınırlı bir ivmelenme kullanmak, baskı tablasına yapışmayı artırabilir."
msgid "Enable accel_to_decel"
msgstr "Accel_to_decel'i etkinleştir"
@@ -14685,36 +14727,35 @@ msgid "Marlin Firmware Junction Deviation (replaces the traditional XY Jerk sett
msgstr "Marlin Firmware Köşe Sapması (geleneksel XY Sarsıntı ayarının yerini alır)"
msgid "Jerk of outer walls."
-msgstr "Dış duvar JERK değeri."
+msgstr "Dış duvar sarsıntı değeri."
msgid "Jerk of inner walls."
-msgstr "İç duvarlar JERK değeri."
+msgstr "İç duvarlar sarsıntı değeri."
msgid "Jerk for top surface."
-msgstr "Üst yüzey için JERK değeri."
+msgstr "Üst yüzey için Sarsıntı değeri."
msgid "Jerk for infill."
-msgstr "Dolgu için JERK değeri."
+msgstr "Dolgu için Sarsıntı değeri."
msgid "Jerk for the first layer."
-msgstr "İlk katman için JERK değeri."
+msgstr "İlk katman için Sarsıntı değeri."
msgid "Jerk for travel."
-msgstr "Seyahat için JERK değeri."
+msgstr "Seyahat için Sarsıntı değeri."
-# AI Translated
msgid ""
"Travel jerk of first layer.\n"
"The percentage value is relative to Travel Jerk."
msgstr ""
-"İlk katmanın seyahat jerk'i.\n"
-"Yüzde değeri Seyahat Jerk'ine göredir."
+"İlk katmanın seyahat sarsıntısı (travel jerk).\n"
+"Yüzde değeri, Seyahat Sarsıntısı (Travel Jerk) değerine bağlıdır."
msgid "Line width of the first layer. If expressed as a %, it will be computed over the nozzle diameter."
msgstr "İlk katmanın çizgi genişliği. % olarak ifade edilirse Nozul çapı üzerinden hesaplanacaktır."
msgid "First layer height"
-msgstr "Başlangıç katman yüksekliği"
+msgstr "İlk katman yüksekliği"
msgid "Height of the first layer. Making the first layer height thicker can improve build plate adhesion."
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."
@@ -14723,7 +14764,7 @@ msgid "This is the speed for the first layer except for solid infill sections."
msgstr "Katı dolgu kısmı dışındaki ilk katmanın hızı."
msgid "First layer infill"
-msgstr "Başlangıç katman dolgusu"
+msgstr "İlk katman dolgusu"
msgid "This is the speed for solid infill parts of the first layer."
msgstr "İlk katmanın katı dolgu kısmının hızı."
@@ -14745,7 +14786,7 @@ msgid "First layer nozzle temperature"
msgstr "İlk katman nozul sıcaklığı"
msgid "Nozzle temperature for printing the first layer with this filament"
-msgstr "Bu filamenti kullanırken ilk katmanı yazdırmak için nozul sıcaklığı."
+msgstr "Bu filament ile ilk katmanı basmak için nozul sıcaklığı"
msgid "Full fan speed at layer"
msgstr "Maksimum fan hızı"
@@ -14813,25 +14854,25 @@ msgid "Ironing flow"
msgstr "Ütüleme akışı"
msgid "Filament-specific override for ironing flow. This allows you to customize the ironing flow for each filament type. Too high value results in overextrusion on the surface."
-msgstr "Ütüleme akışı için filamana özgü geçersiz kılma. Bu, her filaman türü için ütüleme akışını özelleştirmenize olanak tanır. Çok yüksek değer yüzeyde aşırı ekstrüzyona neden olur."
+msgstr "Ütüleme akışı için filamente özgü geçersiz kılma. Bu, her filament türü için ütüleme akışını özelleştirmenize olanak tanır. Çok yüksek değer yüzeyde aşırı ekstrüzyona neden olur."
msgid "Ironing line spacing"
msgstr "Ütüleme çizgi aralığı"
msgid "Filament-specific override for ironing line spacing. This allows you to customize the spacing between ironing lines for each filament type."
-msgstr "Ütüleme hattı aralığı için filamente özel geçersiz kılma. Bu, her filaman türü için ütüleme çizgileri arasındaki boşluğu özelleştirmenize olanak tanır."
+msgstr "Ütüleme hattı aralığı için filamente özel geçersiz kılma. Bu, her filament türü için ütüleme çizgileri arasındaki boşluğu özelleştirmenize olanak tanır."
msgid "Ironing inset"
msgstr "Ütüleme boşluğu"
msgid "Filament-specific override for ironing inset. This allows you to customize the distance to keep from the edges when ironing for each filament type."
-msgstr "İç parçayı ütülemek için filamente özel geçersiz kılma. Bu, her filaman türü için ütüleme sırasında kenarlardan korunacak mesafeyi özelleştirmenize olanak tanır."
+msgstr "İç parçayı ütülemek için filamente özel geçersiz kılma. Bu, her filament türü için ütüleme sırasında kenarlardan korunacak mesafeyi özelleştirmenize olanak tanır."
msgid "Ironing speed"
msgstr "Ütüleme hızı"
msgid "Filament-specific override for ironing speed. This allows you to customize the print speed of ironing lines for each filament type."
-msgstr "Ütüleme hızı için filamana özgü geçersiz kılma. Bu, her filaman türü için ütüleme hatlarının baskı hızını özelleştirmenize olanak tanır."
+msgstr "Ütüleme hızı için filamente özgü geçersiz kılma. Bu, her filament türü için ütüleme hatlarının baskı hızını özelleştirmenize olanak tanır."
msgid "This setting makes the toolhead randomly jitter while printing walls so that the surface has a rough textured look. This setting controls the fuzzy position."
msgstr "Duvara baskı yaparken rastgele titreme, böylece yüzeyin pürüzlü bir görünüme sahip olması. Bu ayar pütürlü konumu kontrol eder."
@@ -14884,8 +14925,8 @@ msgid ""
"Attention! The [Extrusion] and [Combined] modes works only the fuzzy_skin_thickness parameter not more than the thickness of printed loop. At the same time, the width of the extrusion for a particular layer should also not be below a certain level. It is usually equal 15-25%% of a layer height. Therefore, the maximum fuzzy skin thickness with a perimeter width of 0.4 mm and a layer height of 0.2 mm will be 0.4-(0.2*0.25)=±0.35mm! If you enter a higher parameter than this, the error Flow::spacing() will displayed, and the model will not be sliced. You can choose this number until this error is repeated."
msgstr ""
"Pütürlü yüzey oluşturma modu. Sadece Arachne ile çalışır!\n"
-"Yer Değiştirme: Desen, nozülün orijinal yoldan yana kaydırılmasıyla oluşturulduğu klasik mod.\n"
-"Ekstrüzyon: Desenin ekstrüde edilen plastik miktarına göre oluşturulduğu mod. Bu, nozül sarsıntısı olmadan pürüzsüz bir desen veren hızlı ve düz bir algoritmadır. Ancak, tüm dizilimde gevşek duvarlar oluşturmak için daha kullanışlıdır.\n"
+"Yer Değiştirme: Desen, nozulun orijinal yoldan yana kaydırılmasıyla oluşturulduğu klasik mod.\n"
+"Ekstrüzyon: Desenin ekstrüde edilen plastik miktarına göre oluşturulduğu mod. Bu, nozul sarsıntısı olmadan pürüzsüz bir desen veren hızlı ve düz bir algoritmadır. Ancak, tüm dizilimde gevşek duvarlar oluşturmak için daha kullanışlıdır.\n"
"Birleşik: Eklem modu [Yer Değiştirme] + [Ekstrüzyon]. Duvarların görünümü [Yer Değiştirme] Moduna benzer, ancak çevreler arasında gözenek bırakmaz.\n"
"\n"
"Dikkat! [Ekstrüzyon] ve [Birleşik] modları yalnızca fuzzy_skin_thickness parametresini çalıştırır, yazdırılan ilmeğin kalınlığından daha fazla olmamalıdır. Aynı zamanda, belirli bir katman için ekstrüzyon genişliği de belirli bir seviyenin altında olmamalıdır. Genellikle katman yüksekliğinin %%15-25'ine eşittir. Bu nedenle, 0,4 mm çevre genişliği ve 0,2 mm katman yüksekliğine sahip maksimum pütürlü yüzey kalınlığı 0,4-(0,2*0,25)=±0,35 mm olacaktır! Bundan daha yüksek bir parametre girerseniz, Flow::spacing() hatası görüntülenir ve model dilimlenmez. Bu hata tekrarlanana kadar bu sayıyı seçebilirsiniz."
@@ -15027,7 +15068,7 @@ msgid ""
"\n"
"Note: For Klipper machines, this option is recommended 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"
+"G2 ve G3 hareketlerine sahip bir G-code dosyası elde etmek için bunu etkinleştirin. Montaj toleransı çözünürlükle aynıdır.\n"
"\n"
"Not: Klipper makineler için bu seçeneğin devre dışı bırakılması önerilir. Klipper, yazılım tarafından tekrar çizgi bölümlerine bölündüğü için yay komutlarından faydalanmaz. Bu, çizgi bölümlerinin dilimleyici tarafından yaylara dönüştürülmesi ve ardından donanım yazılımı tarafından tekrar çizgi bölümlerine dönüştürülmesi nedeniyle yüzey kalitesinde bir azalmaya neden olur."
@@ -15035,7 +15076,7 @@ msgid "Add line number"
msgstr "Satır numarası ekle"
msgid "Enable this to add line number(Nx) at the beginning of each G-code line."
-msgstr "Her G Kodu satırının başına satır numarası (Nx) eklemek için bunu etkinleştirin."
+msgstr "Her G-code satırının başına satır numarası (Nx) eklemek için bunu etkinleştirin."
msgid "Scan first layer"
msgstr "İlk katmanı tara"
@@ -15047,7 +15088,7 @@ msgid "Power Loss Recovery"
msgstr "Güç Kaybının Geri Kazanımı"
msgid "Choose how to control power loss recovery. When set to Printer configuration, the slicer will not emit power loss recovery G-code and will leave the printer's configuration unchanged. Applicable to Bambu Lab or Marlin 2 firmware based printers."
-msgstr "Güç kaybı kurtarmanın nasıl kontrol edileceğini seçin. Yazıcı yapılandırması olarak ayarlandığında, dilimleyici güç kaybı kurtarma G kodunu yayınlamayacak ve yazıcının yapılandırmasını değiştirmeden bırakacaktır. Bambu Lab veya Marlin 2 ürün yazılımı tabanlı yazıcılar için geçerlidir."
+msgstr "Güç kaybı kurtarmanın nasıl kontrol edileceğini seçin. Yazıcı yapılandırması olarak ayarlandığında, dilimleyici güç kaybı kurtarma G-code'u yayınlamayacak ve yazıcının yapılandırmasını değiştirmeden bırakacaktır. Bambu Lab veya Marlin 2 ürün yazılımı tabanlı yazıcılar için geçerlidir."
msgid "Printer configuration"
msgstr "Yazıcı yapılandırması"
@@ -15123,7 +15164,7 @@ msgid ""
msgstr ""
"Fanı hedef başlangıç zamanından bu kadar saniye önce başlatın (kesirli saniyeleri kullanabilirsiniz). Bu süre tahmini için sonsuz ivme varsayar ve yalnızca G1 ve G0 hareketlerini hesaba katar (yay uydurma desteklenmez).\n"
"Fan komutlarını özel kodlardan taşımaz (bir çeşit 'bariyer' görevi görürler).\n"
-"'Yalnızca özel başlangıç gcode'u etkinleştirilmişse, fan komutları başlangıç gcode'una taşınmayacaktır.\n"
+"'Yalnızca özel başlangıç G-code'u etkinleştirilmişse, fan komutları başlangıç G-code'una taşınmayacaktır.\n"
"Devre dışı bırakmak için 0'ı kullanın."
msgid "Only overhangs"
@@ -15200,11 +15241,19 @@ msgid "G-code flavor"
msgstr "G-code türü"
msgid "What kind of G-code the printer is compatible with."
-msgstr "Yazıcının ne tür bir gcode ile uyumlu olduğu."
+msgstr "Yazıcının ne tür bir G-code ile uyumlu olduğu."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "G-code yapılandırma bloğunu atla"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "CONFIG_BLOCK bloğunu (dilimleyici yapılandırmasının anahtar/değer çiftlerini) G-code dosyasına yazmaz. Bu, bu yorum satırlarını ayrıştırırken donanım yazılımı çöken yazıcılarda yardımcı olabilir (ör. Anycubic go-klipper). Not: G-code dosyası artık dilimleyici ayarlarını içermeyeceğinden, dosyayı OrcaSlicer'a geri aktarmak yapılandırmayı geri yüklemez."
+
msgid "Pellet Modded Printer"
msgstr "Pelet modlu yazıcı"
@@ -15227,13 +15276,13 @@ 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-code'a EXCLUDE OBJECT komutunu eklemek için bu seçeneği etkinleştirin."
msgid "Verbose G-code"
msgstr "Ayrıntılı G-code"
msgid "Enable this to get a commented G-code file, with each line explained by a descriptive text. If you print from SD card, the additional weight of the file could make your firmware slow down."
-msgstr "Her satırın açıklayıcı bir metinle açıklandığı, yorumlu bir G kodu dosyası almak için bunu etkinleştirin. SD karttan yazdırırsanız dosyanın ilave ağırlığı ürün yazılımınızın yavaşlamasına neden olabilir."
+msgstr "Her satırın açıklayıcı bir metinle açıklandığı, yorumlu bir G-code dosyası almak için bunu etkinleştirin. SD karttan yazdırırsanız dosyanın ilave ağırlığı ürün yazılımınızın yavaşlamasına neden olabilir."
msgid "Infill combination"
msgstr "Dolgu kombinasyonu"
@@ -15251,7 +15300,7 @@ msgid "Sparse infill rotation template"
msgstr "Seyrek dolgu döndürme şablonu"
msgid "Rotate the sparse infill direction per layer using a template of angles. Enter comma-separated degrees (e.g., '0,30,60,90'). Angles are applied in order by layer and repeat when the list ends. Advanced syntax is supported: '+5' rotates +5° every layer; '+5#5' rotates +5° every 5 layers. See the Wiki for details. When a template is set, the standard infill direction setting is ignored. Note: some infill patterns (e.g., Gyroid) control rotation themselves; use with care."
-msgstr "Seyrek dolgu yönünü katman katman açı şablonuna göre döndürün. Virgülle ayrılmış açıları girin (örn. '0,30,60,90'). Açılar katman sırasına göre uygulanır ve liste sona erdiğinde tekrarlanır. Gelişmiş sözdizimi desteklenir: '+5' her katmanda +5° döndürür; '+5#5' her 5 katmanda +5° döndürür. Detaylar için Viki’ye bakın. Bir şablon ayarlandığında, standart dolgu yönü ayarı yok sayılır. NOT: bazı dolgu desenleri (örn. Gyroid) kendi döndürmesini kontrol eder; dikkatli kullanın"
+msgstr "Açı şablonu kullanarak seyrek dolgu yönünü katman bazında döndürün. Virgülle ayrılmış açılar girin (ör. '0,30,60,90'). Açılar katman sırasına göre uygulanır ve liste bittiğinde tekrarlanır. Gelişmiş sözdizimi desteklenir: '+5' her katmanda +5° döndürür; '+5#5' her 5 katmanda bir +5° döndürür. Detaylar için Wiki'ye bakın. Bir şablon ayarlandığında, standart dolgu yönü ayarı göz ardı edilir. Not: Bazı dolgu desenleri (ör. Gyroid) dönmeyi kendisi kontrol eder; dikkatli kullanın."
msgid "Solid infill rotation template"
msgstr "Katı dolgu döndürme şablonu"
@@ -15263,7 +15312,7 @@ msgid "Skeleton infill density"
msgstr "İskelet dolgu yoğunluğu"
msgid "The remaining part of the model contour after removing a certain depth from the surface is called the skeleton. This parameter is used to adjust the density of this section. When two regions have the same sparse infill settings but different skeleton densities, their skeleton areas will develop overlapping sections. Default is as same as infill density."
-msgstr "üzeyden belirli bir derinlik çıkarıldıktan sonra model konturunda kalan kısma 'iskelet' denir. Bu parametre, bu bölümün yoğunluğunu ayarlamak için kullanılır. İki bölge aynı seyrek dolgu ayarlarına sahip fakat farklı iskelet yoğunluklarına sahipse, iskelet alanları üst üste binen bölümler oluşturabilir. Varsayılan değer, dolgu yoğunluğu ile aynıdır."
+msgstr "Yüzeyden belirli bir derinlik çıkarıldıktan sonra model hatlarının geriye kalan kısmına iskelet adı verilir. Bu parametre, söz konusu alanın yoğunluğunu ayarlamak için kullanılır. İki bölge aynı seyrek dolgu ayarlarına ancak farklı iskelet yoğunluklarına sahip olduğunda, iskelet alanlarında çakışan kesitler oluşur. Varsayılan değer dolgu yoğunluğu ile aynıdır."
msgid "Skin infill density"
msgstr "Yüzey dolgu yoğunluğu"
@@ -15494,7 +15543,7 @@ msgid "The distance from the boundary between filaments to generate interlocking
msgstr "Hücrelerde ölçülen, birbirine kenetlenen yapıyı oluşturmak için filamentler arasındaki sınırdan mesafe. Çok az hücre yapışmanın zayıf olmasına neden olur."
msgid "Interlocking boundary avoidance"
-msgstr "Birbirine kenetlenen sınırdan kaçınma"
+msgstr "Kenetleme sınır mesafesi koruması"
msgid "The distance from the outside of a model where interlocking structures will not be generated, measured in cells."
msgstr "Birbirine kenetlenen yapıların oluşturulmayacağı bir modelin dışına olan mesafe, hücrelerde ölçülür."
@@ -15530,7 +15579,7 @@ msgid "This is the distance between the lines used for ironing."
msgstr "Ütü çizgileri arasındaki mesafe."
msgid "The distance to keep from the edges. A value of 0 sets this to half of the nozzle diameter."
-msgstr "Kenarlardan korunacak mesafe. 0 değeri bunu nozül çapının yarısına ayarlar."
+msgstr "Kenarlardan korunacak mesafe. 0 değeri bunu nozul çapının yarısına ayarlar."
msgid "This is the print speed for ironing lines."
msgstr "Ütüleme çizgilerinin baskı hızı."
@@ -15598,20 +15647,20 @@ msgstr ""
"Ayrıca dilimleme düzlemini de denetler."
msgid "This G-code is inserted at every layer change after the Z lift."
-msgstr "Bu gcode kısmı, z kaldırma işleminden sonra her katman değişikliğinde eklenir."
+msgstr "Bu G-code kısmı, z kaldırma işleminden sonra her katman değişikliğinde eklenir."
msgid "Clumping detection G-code"
-msgstr "Topaklanma tespiti G kodu"
+msgstr "Topaklanma tespiti G-code"
# AI Translated
msgid "Silent Mode"
msgstr "Sessiz mod"
msgid "Whether the machine supports silent mode in which machine uses lower acceleration to print more quietly"
-msgstr "Makinenin yazdırmak için daha düşük hızlanma kullandığı sessiz modu destekleyip desteklemediği."
+msgstr "Daha sessiz baskı için ivmelenmeyi düşüren sessiz mod desteği"
msgid "Emit limits to G-code"
-msgstr "G-kod sınırları"
+msgstr "G-code sınırları"
msgid "Machine limits"
msgstr "Yazıcı sınırları"
@@ -15620,14 +15669,14 @@ msgid ""
"If enabled, the machine limits will be emitted to G-code file.\n"
"This option will be ignored if the G-code flavor is set to Klipper."
msgstr ""
-"Etkinleştirilirse, makine sınırları G kodu dosyasına aktarılacaktır.\n"
-"G kodu tadı Klipper olarak ayarlandığında bu seçenek göz ardı edilecektir."
+"Etkinleştirilirse, makine sınırları G-code dosyasına aktarılacaktır.\n"
+"G-code 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. Users can insert pause G-code in the G-code 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."
+msgstr "Bu G-code duraklatma yazdırması için bir kod olarak kullanılacaktır. Kullanıcı G-code görüntüleyiciye duraklatma G-code'u ekleyebilir."
msgid "This G-code will be used as a custom code."
-msgstr "Bu G kodu özel kod olarak kullanılacak."
+msgstr "Bu G-code özel kod olarak kullanılacak."
msgid "Small area flow compensation (beta)"
msgstr "Küçük alan akış telafisi (beta)"
@@ -15721,7 +15770,7 @@ msgid ""
"If your Marlin 2 printer uses Classic Jerk set this value to 0.)"
msgstr ""
"Maksimum bağlantı sapması (M205 J, yalnızca Marlin Aygıt Yazılımı için JD > 0 ise geçerlidir)\n"
-"Marlin 2 yazıcınız Classic Jerk kullanıyorsa bu değeri 0 olarak ayarlayın.)"
+"Marlin 2 yazıcınız Classic sarsıntı kullanıyorsa bu değeri 0 olarak ayarlayın.)"
msgid "Minimum speed for extruding"
msgstr "Ekstrüzyon için minimum hız"
@@ -15881,7 +15930,7 @@ msgstr ""
"RRF: X ve Y değerleri eşittir."
msgid "Hz"
-msgstr "Hz."
+msgstr "Hz"
msgid "Y"
msgstr "Y"
@@ -15969,7 +16018,7 @@ msgid ""
"\n"
"Allowed values: 0.5-5"
msgstr ""
-"Daha düşük bir değer, daha düzgün ekstrüzyon hızı geçişleriyle sonuçlanır. Ancak bu, önemli ölçüde daha büyük bir gcode dosyasına ve yazıcının işlemesi için daha fazla talimata neden olur.\n"
+"Daha düşük bir değer, daha düzgün ekstrüzyon hızı geçişleriyle sonuçlanır. Ancak bu, önemli ölçüde daha büyük bir G-code dosyasına ve yazıcının işlemesi için daha fazla talimata neden olur.\n"
"\n"
"Varsayılan 3 değeri çoğu durumda işe yarar. Yazıcınız tutukluk yapıyorsa, yapılan ayarlama sayısını azaltmak için bu değeri artırın\n"
"\n"
@@ -16026,19 +16075,19 @@ msgid "Configuration notes"
msgstr "Yapılandırma notları"
msgid "You can put here your personal notes. This text will be added to the G-code header comments."
-msgstr "Buraya kişisel notlarınızı yazabilirsiniz. Bu not G-kodu başlık yorumlarına eklenecektir."
+msgstr "Buraya kişisel notlarınızı yazabilirsiniz. Bu not G-code başlık yorumlarına eklenecektir."
msgid "Host Type"
msgstr "Bağlantı Türü"
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."
+msgstr "Orca Slicer, G-code 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"
msgid "Volume of nozzle between the filament cutter and the end of the nozzle"
-msgstr "Kesici ile nozulun ucu arasındaki nozul hacmi."
+msgstr "Filament kesici ile nozul ucu arasındaki nozul hacmi"
msgid "Cooling tube position"
msgstr "Soğutma borusu konumu"
@@ -16081,7 +16130,7 @@ msgstr "Dolguda geri çekmeyi azalt"
# AI Translated
msgid "Don't retract when the travel is entirely within an infill area. 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. Note that z-hop is also not performed in areas where retraction is skipped."
-msgstr "Hareket tamamen dolgu alanı içindeyken geri çekme yapılmaz. Bu, sızıntının görülemeyeceği anlamına gelir. Bu, karmaşık modellerde geri çekme sayısını azaltabilir ve yazdırma süresinden tasarruf sağlayabilir, ancak dilimlemeyi ve G kodu oluşturmayı yavaşlatır. Geri çekmenin atlandığı alanlarda z-hop'un da uygulanmadığını unutmayın."
+msgstr "Hareket tamamen dolgu alanı içindeyken geri çekme yapılmaz. Bu, sızıntının görülemeyeceği anlamına gelir. Bu, karmaşık modellerde geri çekme sayısını azaltabilir ve yazdırma süresinden tasarruf sağlayabilir, ancak dilimlemeyi ve G-code oluşturmayı yavaşlatır. Geri çekmenin atlandığı alanlarda z-hop'un da uygulanmadığını unutmayın."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
msgstr "Bu seçenek sızıntıyı önlemek için aktif olmayan ekstrüderlerin sıcaklığını düşürecektir."
@@ -16167,7 +16216,7 @@ msgstr ""
"İlave çevrelerin sabitleneceği dolgu sınırlı olduğundan, bu seçenekle birlikte yıldırım dolgusunun kullanılması önerilmez."
msgid "If you want to process the output G-code through custom scripts, just list their absolute paths here. Separate multiple scripts with a semicolon. Scripts will be passed the absolute path to the G-code file as the first 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."
+msgstr "Çıktı G-code'u ö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."
# AI Translated
msgid "Change extrusion role G-code (process)"
@@ -16217,7 +16266,7 @@ msgid "This expands all raft layers in XY plane."
msgstr "XY düzlemindeki tüm rafa katmanlarını genişlet."
msgid "First layer density"
-msgstr "Başlangıç katman yoğunluğu"
+msgstr "İlk katman yoğunluğu"
msgid "This is the density of the first raft or support layer."
msgstr "İlk sal veya destek katmanının yoğunluğu."
@@ -16235,7 +16284,7 @@ msgid "Object will be raised by this number of support layers. Use this function
msgstr "Nesne bu sayıdaki destek katmanı tarafından yükseltilecektir. ABS yazdırırken sarmayı önlemek için bu işlevi kullanın."
msgid "The G-code path is generated after simplifying the contour of models to avoid too many points and G-code lines. Smaller values mean higher resolution and more time required to slice."
-msgstr "Gcode dosyasında çok fazla nokta ve gcode çizgisinin olmaması için modelin konturu basitleştirildikten sonra G-code yolu oluşturulur. Daha küçük değer, daha yüksek çözünürlük ve dilimleme için daha fazla zaman anlamına gelir."
+msgstr "G-code dosyasında çok fazla nokta ve G-code çizgisinin olmaması için modelin konturu basitleştirildikten sonra G-code yolu oluşturulur. Daha küçük değer, daha yüksek çözünürlük ve dilimleme için daha fazla zaman anlamına gelir."
msgid "Travel distance threshold"
msgstr "Seyahat mesafesi"
@@ -16292,6 +16341,14 @@ msgstr "Ekstruder değiştiğinde uzun geri çekilme"
msgid "Retraction distance when extruder change"
msgstr "Ekstruder değiştiğinde geri çekilme mesafesi"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Geri çekme uzunluğu (Takım değişimi)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Takım değişiminden önce geri çekme tetiklendiğinde, filament belirtilen miktarda geri çekilir (uzunluk, ekstrudere girmeden önce ham filament üzerinde ölçülür)."
+
msgid "Z-hop height"
msgstr "Z-Sıçrama yüksekliği"
@@ -16391,6 +16448,10 @@ msgstr "Yeniden başlatma sırasında ekstra uzunluk"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "İlerleme hareketinden sonra geri çekilme telafi edildiğinde, ekstruder bu ek filament miktarını itecektir. Bu ayara nadiren ihtiyaç duyulur."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Yeniden başlatma sırasında ekstra uzunluk (Takım değişimi)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Takım değiştirildikten sonra geri çekilme telafi edildiğinde, ekstruder bu ilave filament miktarını itecektir."
@@ -16404,7 +16465,7 @@ msgid "Deretraction speed"
msgstr "İleri itme hızı"
msgid "Speed for reloading filament into the nozzle. Zero means same speed of retraction."
-msgstr "Filamentin nozüle yeniden yüklenme hızı. Sıfır, geri çekilme hızının aynı olduğu anlamına gelir."
+msgstr "Filamentin nozule yeniden yüklenme hızı. Sıfır, geri çekilme hızının aynı olduğu anlamına gelir."
# AI Translated
msgid "Deretraction speed (extruder change)"
@@ -16427,7 +16488,7 @@ msgid "Disable set remaining print time"
msgstr "Kalan yazdırma süresini ayarlamayı devre dışı bırak"
msgid "Disable generating of the M73: Set remaining print time in the final G-code."
-msgstr "M73'ün oluşturulmasını devre dışı bırakın: Son gcode'da kalan yazdırma süresini ayarlayın."
+msgstr "M73'ün oluşturulmasını devre dışı bırakın: Son G-code'da kalan yazdırma süresini ayarlayın."
msgid "Seam position"
msgstr "Dikiş konumu"
@@ -16467,16 +16528,16 @@ msgstr ""
"Bu miktar milimetre cinsinden veya mevcut ekstruder çapının yüzdesi olarak belirtilebilir. Bu parametrenin varsayılan değeri %10'dur."
msgid "Scarf joint seam (beta)"
-msgstr "Eğik birleşim dikişi (beta)"
+msgstr "Atkı dikişi birleşimi (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 eğik birleşimini kullanın."
+msgstr "Dikiş izini en aza indirmek ve dikiş mukavemetini artırmak için atkı dikişi kullanın."
msgid "Conditional scarf joint"
-msgstr "Koşullu eğik birleşimi"
+msgstr "Koşullu atkı dikişi"
msgid "Apply scarf joints only to smooth perimeters where traditional seams do not conceal the seams at sharp corners effectively."
-msgstr "Eğik bağlantılarını yalnızca geleneksel dikişlerin keskin köşelerdeki dikişleri etkili bir şekilde gizleyemediği düzgün kenarlara uygulayın."
+msgstr "Atkı dikişini yalnızca, geleneksel dikişlerin keskin köşelerde gizlenemediği düz çevre hatlarına uygular."
msgid "Conditional angle threshold"
msgstr "Koşullu açı eşiği"
@@ -16485,61 +16546,61 @@ 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°."
msgstr ""
-"Bu seçenek, koşullu bir eğik eklem dikişi uygulamak için eşik açısını ayarlar.\n"
-"Çevre halkası içindeki maksimum açı bu değeri aşarsa (keskin köşelerin bulunmadığını gösterir), bir eğik birleştirme dikişi kullanılacaktır. Varsayılan değer 155°'dir."
+"Bu seçenek, koşullu atkı dikişinin uygulanacağı eşik açısını belirler.\n"
+"Çevre döngüsü içindeki maksimum açı bu değeri aşarsa (keskin köşelerin olmadığını gösterir), atkı dikişi kullanılır. Varsayılan değer 155°'dir."
msgid "Conditional overhang threshold"
msgstr "Koşullu çıkıntı eşiği"
#, no-c-format, no-boost-format
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 degree of overhang is estimated."
-msgstr "Bu seçenek, eğik bağlantı dikişlerinin uygulanması için sarkma eşiğini belirler. Çevrenin desteklenmeyen kısmı bu eşikten az ise eğik birleştirme dikişleri uygulanacaktır. Varsayılan eşik, dış duvar genişliğinin %40'ına ayarlanmıştır. Performans değerlendirmeleri nedeniyle çıkıntının derecesi tahmin edilir."
+msgstr "Bu seçenek, atkı dikişlerinin uygulanacağı çıkıntı eşiğini belirler. Çevrenin desteklenmeyen kısmı bu eşikten azsa, atkı dikişi uygulanır. Varsayılan eşik değeri, dış duvar genişliğinin %40'ı olarak ayarlanmıştır. Performans değerlendirmeleri nedeniyle çıkıntı derecesi tahmini olarak hesaplanır."
msgid "Scarf joint speed"
-msgstr "Eğik birleşim hızı"
+msgstr "Atkı dikişi 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%."
-msgstr "Bu seçenek, eğik bağlantılarının yazdırma hızını ayarlar. Eğik 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."
+msgstr "Bu seçenek, atkı birleşimlerinin baskı hızını belirler. Atkı birleşimlerinin düşük hızlarda (100 mm/s altında) basılması önerilir. Belirlenen hız, dış veya iç duvar hızından belirgin şekilde farklıysa 'Akış hızı yumuşatma' özelliğinin etkinleştirilmesi tavsiye edilir. Buradaki hız dış veya iç duvar hızından daha yüksekse, yazıcı varsayılan olarak bu iki hızdan yavaş olanı kullanır. Yüzde olarak belirtildiğinde (ör. %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 "Eğik birleşimi akış oranı"
+msgstr "Atkı dikişi akış oranı"
msgid "This factor affects the amount of material for scarf joints."
-msgstr "Bu faktör eğik birleşimlerinde kullanılacak materyal miktarını değiştirir."
+msgstr "Bu faktör, atkı dikişleri için kullanılacak malzeme miktarını etkiler."
msgid "Scarf start height"
-msgstr "Eğik başlangıç yüksekliği"
+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."
msgstr ""
-"Eğik başlangıç yüksekliği.\n"
-"Bu miktar milimetre cinsinden veya geçerli katman yüksekliğinin yüzdesi olarak belirtilebilir. Bu parametrenin varsayılan değeri 0'dır."
+"Atkı başlangıç yüksekliği.\n"
+"Bu değer milimetre cinsinden veya mevcut katman yüksekliğinin yüzdesi olarak belirtilebilir. Varsayılan değer 0'dır."
msgid "Scarf around entire wall"
-msgstr "Tüm duvarın etrafına atkıla"
+msgstr "Tüm duvara atkı uygula"
msgid "The scarf extends to the entire length of the wall."
-msgstr "Eğik duvarın tüm uzunluğu boyunca uzanır."
+msgstr "Atkı birleşimi, duvarın tüm uzunluğu boyunca uzanacak şekilde genişletilir."
msgid "Scarf length"
-msgstr "Eğik uzunluğu"
+msgstr "Atkı dikişi uzunluğu"
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."
+msgstr "Atkı birleşiminin uzunluğudur. Bu parametrenin 0 (sıfır) olarak ayarlanması atkı dikişini devre dışı bırakır."
msgid "Scarf steps"
-msgstr "Eğik kademesi"
+msgstr "Atkı adımları"
msgid "Minimum number of segments of each scarf."
-msgstr "Her atkının minimum segment sayısı."
+msgstr "Her bir atkının minimum segment sayısı."
msgid "Scarf joint for inner walls"
-msgstr "İç duvarlar için eğik birleşimi"
+msgstr "İç duvarlar için atkı dikişi"
msgid "Use scarf joint for inner walls as well."
-msgstr "İç duvarlar için de eğik birleşimini kullanın."
+msgstr "İç duvarlarda da atkı dikişi kullan."
msgid "Role base wipe speed"
msgstr "Otomatik temizleme hızı"
@@ -16587,7 +16648,7 @@ msgid "Skirt height"
msgstr "Etek yüksekliği"
msgid "Number of skirt layers: usually only one"
-msgstr "Etek katman sayısı. Genellikle tek katman."
+msgstr "Etek katman sayısı: Genelde tek katman"
msgid "Single loop after first layer"
msgstr "İlk katmandan sonra tek duvar"
@@ -16642,13 +16703,13 @@ msgid ""
"Using a non-zero value is useful if the printer is set up to print without a prime line.\n"
"Final number of loops is not taking into account while arranging or validating objects distance. Increase loop number in such case."
msgstr ""
-"Etek yazdırılırken mm cinsinden minimum filaman ekstrüzyon uzunluğu. Sıfır, bu özelliğin devre dışı olduğu anlamına gelir.\n"
+"Etek yazdırılırken mm cinsinden minimum filament ekstrüzyon uzunluğu. Sıfır, bu özelliğin devre dışı olduğu anlamına gelir.\n"
"\n"
"Yazıcı ana hat olmadan yazdırmak üzere ayarlanmışsa sıfır dışında bir değer kullanmak yararlı olur.\n"
"Nihai döngü sayısı, nesnelerin mesafesini düzenlerken veya doğrularken dikkate alınmaz. Böyle bir durumda döngü sayısını artırın."
msgid "The printing speed in exported G-code will be slowed down when the estimated layer time is shorter than this value in order to get better cooling for these layers."
-msgstr "Tahmini katman süresi bu değerden kısa olduğunda, bu katmanlar için daha iyi soğutma sağlamak amacıyla, dışa aktarılan gcode'daki yazdırma hızı yavaşlatılacaktır."
+msgstr "Tahmini katman süresi bu değerden kısa olduğunda, bu katmanlar için daha iyi soğutma sağlamak amacıyla, dışa aktarılan G-code'daki yazdırma hızı yavaşlatılacaktır."
msgid "Minimum sparse infill threshold"
msgstr "Minimum seyrek dolgu"
@@ -16700,7 +16761,7 @@ msgstr "Maksimum XY yumuşatma"
#, no-c-format, no-boost-format
msgid "Maximum distance to move points in XY to try to achieve a smooth spiral. If expressed as a %, it will be computed over nozzle diameter."
-msgstr "Düzgün bir spiral elde etmek için XY'deki noktaları hareket ettirmek için maksimum mesafe % olarak ifade edilirse nozül çapı üzerinden hesaplanacaktır."
+msgstr "Düzgün bir spiral elde etmek için XY'deki noktaları hareket ettirmek için maksimum mesafe % olarak ifade edilirse nozul çapı üzerinden hesaplanacaktır."
msgid "Spiral starting flow ratio"
msgstr "Spiral başlangıç akış oranı"
@@ -16756,16 +16817,16 @@ msgid "Insert multiple preheat commands (e.g. M104.1). Only useful for Prusa XL.
msgstr "Birden fazla ön ısıtma komutu ekleyin (örn. M104.1). Yalnızca Prusa XL için kullanışlıdır. Diğer yazıcılar için lütfen 1’e ayarlayın."
msgid "G-code written at the very top of the output file, before any other content. Useful for adding metadata that printer firmware reads from the first lines of the file (e.g. estimated print time, filament usage). Supports placeholders like {print_time_sec} and {used_filament_length}."
-msgstr "G kodu, çıktı dosyasının en üstünde, diğer içeriklerden önce yazılır. Yazıcı ürün yazılımının dosyanın ilk satırlarından okuduğu meta verileri (ör. tahmini yazdırma süresi, filaman kullanımı) eklemek için kullanışlıdır. {print_time_sec} ve {used_filament_length} gibi yer tutucuları destekler."
+msgstr "G-code, çıktı dosyasının en üstünde, diğer içeriklerden önce yazılır. Yazıcı ürün yazılımının dosyanın ilk satırlarından okuduğu meta verileri (ör. tahmini yazdırma süresi, filament kullanımı) eklemek için kullanışlıdır. {print_time_sec} ve {used_filament_length} gibi yer tutucuları destekler."
msgid "Start G-code"
-msgstr "Başlangıç G Kodu"
+msgstr "Başlangıç G-code"
msgid "G-code added when starting a print."
-msgstr "Baskı başladığında çalışacak G Kodu."
+msgstr "Baskı başladığında çalışacak G-code."
msgid "G-code added when the printer starts using this filament"
-msgstr "Bu filament ile baskı başladığında çalıştırılacak G-Kod."
+msgstr "Bu filament kullanılırken yazıcı başladığında eklenen G-code"
msgid "Single Extruder Multi Material"
msgstr "Tek ekstruder çoklu malzeme"
@@ -16777,7 +16838,7 @@ msgid "Manual Filament Change"
msgstr "Manuel filament değişimi"
msgid "Enable this option to omit the custom Change filament G-code only at the beginning of the print. The tool change command (e.g., T0) will be skipped throughout the entire print. This is useful for manual multi-material printing, where we use M600/PAUSE to trigger the manual filament change action."
-msgstr "Sadece baskının başında özel Filament Değiştirme G-kodu'nu atlamak için bu seçeneği etkinleştirin. Aracı değiştirme komutu (örneğin, T0), baskının tamamı boyunca atlanacaktır. Bu, manuel çoklu malzeme baskısı için kullanışlıdır, burada manuel filament değişim eylemini tetiklemek için M600/PAUSE kullanırız."
+msgstr "Sadece baskının başında özel Filament Değiştirme G-code'u atlamak için bu seçeneği etkinleştirin. Aracı değiştirme komutu (örneğin, T0), baskının tamamı boyunca atlanacaktır. Bu, manuel çoklu malzeme baskısı için kullanışlıdır, burada manuel filament değişim eylemini tetiklemek için M600/PAUSE kullanırız."
msgid "Wipe tower type"
msgstr "Temizleme kulesi tipi"
@@ -16808,6 +16869,14 @@ msgstr "Silme kulesinde takım değişimi"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Takım değişimi komutu (Tx) verilmeden önce baskı kafasını silme kulesine gitmeye zorlar. Yalnızca Tip 2 silme kulesi kullanan çok ekstruderli (çok baskı kafalı) yazıcılar için geçerlidir. Orca, çok baskı kafalı makinelerde bu seyahati varsayılan olarak atlar çünkü kafa değişimini ürün yazılımı yönetir; bu da Tx komutunun yazdırılan parçanın üzerinde verilmesine yol açabilir. Takım değişiminin her zaman silme kulesinin üzerinde verilmesini istiyorsanız bu seçeneği etkinleştirin."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Silme kulesinde sıcaklığı bekle"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Yeni takımı baskı sıcaklığına ulaşmasını beklemeden alır, silme kulesine gider ve sıcaklığı orada, yıkamadan hemen önce bekler. Isınma sırasında sızan malzeme modele değil kuleye düşer ve hareket ısınmayla çakışır. Yalnızca 2. tip silme kulesi kullanan çok ekstruderli (çok baskı kafalı) yazıcılar için geçerlidir. Donanım yazılımı veya takım değişimi makrosu sıcaklığı kendisi beklememelidir. Devre dışı bırakıldığında, sıcaklık bekleme komutu takım değişimi komutundan hemen sonra verilir."
+
msgid "No sparse layers (beta)"
msgstr "Seyrek katman yok (beta)"
@@ -16866,7 +16935,7 @@ msgid "Z offset"
msgstr "Z ofseti"
msgid "This value will be added (or subtracted) from all the Z coordinates in the output G-code. It is used to compensate for bad Z endstop position: for example, if your endstop zero actually leaves the nozzle 0.3mm far from the 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ı plakasından 0.3mm uzakta bırakıyorsa, bu değeri -0.3 olarak ayarlayın (veya endstop'unuzu düzeltin)."
+msgstr "Bu değer, çıkış G-code 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ı plakası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"
@@ -16914,7 +16983,7 @@ msgid "This setting only generates supports that begin on the build plate."
msgstr "Model yüzeyinde destek oluşturmayın, yalnızca baskı plakasında."
msgid "Support critical regions only"
-msgstr "Yalnızca kritik bölgeleri destekleyin"
+msgstr "Kritik bölgeleri destekleyin"
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."
@@ -17110,7 +17179,7 @@ msgid "This setting determines the maximum overhang angle that the branches of t
msgstr "Bu ayar, ağaç desteğinin dallarının oluşmasına izin verilen maksimum çıkıntı açısını belirler. Açı artırılırsa, dallar daha yatay olarak basılabilir ve daha uzağa ulaşır."
msgid "Preferred Branch Angle"
-msgstr "Tercih Edilen Dal Açısı"
+msgstr "Tercih edilen dal açısı"
#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle"
msgid "The preferred angle of the branches, when they do not have to avoid the model. Use a lower angle to make them more vertical and more stable. Use a higher angle for branches to merge faster."
@@ -17123,7 +17192,7 @@ msgid "This setting determines the distance between neighboring tree support nod
msgstr "Bu ayar, komşu ağaç destek düğümleri arasındaki mesafeyi belirler."
msgid "Branch Density"
-msgstr "Dal Yoğunluğu"
+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."
@@ -17142,7 +17211,7 @@ msgid "Distance from tree branch to the outermost brim line."
msgstr "Ağaç dalından en dış kenar çizgisine kadar olan mesafe."
msgid "Tip Diameter"
-msgstr "Uç Çapı"
+msgstr "Uç çapı"
#. TRN PrintSettings: "Organic supports" > "Tip Diameter"
msgid "Branch tip diameter for organic supports."
@@ -17156,7 +17225,7 @@ msgstr "Bu ayar, destek düğümlerinin başlangıç çapını belirler."
#. TRN PrintSettings: #lmFIXME
msgid "Branch Diameter Angle"
-msgstr "Dal Çapı Açısı"
+msgstr "Dal çapı açısı"
#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle"
msgid "The angle of the branches' diameter as they gradually become thicker towards the bottom. An angle of 0 will cause the branches to have uniform thickness over their length. A bit of an angle can increase stability of the organic support."
@@ -17184,13 +17253,13 @@ msgid "Support Ironing Pattern"
msgstr "Destek ütüleme deseni"
msgid "Support Ironing flow"
-msgstr "Destek ütüleme akışı"
+msgstr "Destek ütüleme akış oranı"
msgid "The amount of material to extrude during ironing. Relative to flow of normal support interface layer height. Too high value results in overextrusion on the surface."
msgstr "Ütüleme sırasında ekstrüde edilecek malzeme miktarı. Normal destek arayüzü katman yüksekliğinin akışına göre. Çok yüksek bir değer, yüzeyde aşırı ekstrüzyona neden olur."
msgid "Support Ironing line spacing"
-msgstr "Destek ütüleme satır aralığı"
+msgstr "Destek ütüleme çizgi aralığı"
msgid "Activate temperature control"
msgstr "Sıcaklık kontrolünü etkinleştirin"
@@ -17217,7 +17286,7 @@ msgstr ""
"\n"
"PLA, PETG, TPU, PVA ve diğer düşük sıcaklıktaki malzemeler için, ısı kırılmasında malzemenin yumuşamasından kaynaklanan ekstrüderin tıkanmasını önlemek için oda sıcaklığının düşük olması gerektiğinden bu seçenek devre dışı bırakılmalıdır (0’a ayarlanmalıdır).\n"
"\n"
-"Etkinleştirilirse, bu parametre aynı zamanda istenen oda sıcaklığını yazdırma başlatma makronuza veya şuna benzer bir ısı emme makrosuna iletmek için kullanılabilecek Chamber_temperature adlı bir gcode değişkenini de ayarlar: PRINT_START (diğer değişkenler) CHAMBER_TEMP=[chamber_temperature]. Yazıcınız M141/M191 komutlarını desteklemiyorsa veya aktif oda ısıtıcısı takılı değilse yazdırma başlatma makrosunda ısı bekletme işlemini gerçekleştirmek istiyorsanız bu yararlı olabilir."
+"Etkinleştirilirse, bu parametre aynı zamanda istenen oda sıcaklığını yazdırma başlatma makronuza veya şuna benzer bir ısı emme makrosuna iletmek için kullanılabilecek Chamber_temperature adlı bir G-code değişkenini de ayarlar: PRINT_START (diğer değişkenler) CHAMBER_TEMP=[chamber_temperature]. Yazıcınız M141/M191 komutlarını desteklemiyorsa veya aktif oda ısıtıcısı takılı değilse yazdırma başlatma makrosunda ısı bekletme işlemini gerçekleştirmek istiyorsanız bu yararlı olabilir."
# AI Translated
msgid ""
@@ -17238,7 +17307,7 @@ msgid "Chamber minimal temperature"
msgstr "Minimum bölme sıcaklığı"
msgid "Nozzle temperature after the first layer"
-msgstr "İlk katmandan sonraki katmanlar için nozul sıcaklığı."
+msgstr "İlk katmandan sonraki nozul sıcaklığı"
msgid "Detect thin walls"
msgstr "İnce duvarı algıla"
@@ -17247,10 +17316,10 @@ msgid "This detects thin walls which can’t contain two lines and uses a single
msgstr "İki çizgi genişliğini içeremeyen ince duvarı tespit edin. Ve yazdırmak için tek satır kullanın. Kapalı döngü olmadığından pek iyi basılmamış olabilir."
msgid "This G-code is inserted when filament is changed, including T commands to trigger tool change."
-msgstr "Bu gcode, takım değişimini tetiklemek için T komutu da dahil olmak üzere filament değiştirildiğinde eklenir."
+msgstr "Bu G-code, takım değişimini tetiklemek için T komutu da dahil olmak üzere filament değiştirildiğinde eklenir."
msgid "This G-code is inserted when the extrusion role is changed."
-msgstr "Bu gcode, ekstrüzyon rolü değiştirildiğinde eklenir."
+msgstr "Bu G-code, ekstrüzyon rolü değiştirildiğinde eklenir."
# AI Translated
msgid "Change extrusion role G-code (filament)"
@@ -17344,7 +17413,7 @@ msgid ""
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 filamenti 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 takdirde silme işleminden sonra gerçekleştirilecektir."
@@ -17355,7 +17424,7 @@ msgid "Internal ribs"
msgstr "İç kaburgalar"
msgid "Enable internal ribs to increase the stability of the prime tower."
-msgstr "Ana kulenin stabilitesini artırmak için iç kaburgaları etkinleştirin."
+msgstr "Hazırlık kulesinin (prime tower) stabilitesini ve mukavemetini artırmak için kulenin içerisine dikey kaburga (takviye) duvarları ekler."
msgid "Purging volumes"
msgstr "Hacimlerin temizlenmesi"
@@ -17428,11 +17497,11 @@ msgid ""
"\n"
"For the wipe tower external perimeters the internal perimeter speed is used regardless of this setting."
msgstr ""
-"Silme kulesinde temizleme yaparken ve silme kulesi seyrek katmanlarını yazdırırken maksimum yazdırma hızı. Temizleme sırasında seyrek dolum hızı veya filamanın maksimum hacimsel hızından hesaplanan hız daha düşükse, bunun yerine en düşük olanı kullanılacaktır.\n"
+"Silme kulesinde temizleme yaparken ve silme kulesi seyrek katmanlarını yazdırırken maksimum yazdırma hızı. Temizleme sırasında seyrek dolum hızı veya filamentin maksimum hacimsel hızından hesaplanan hız daha düşükse, bunun yerine en düşük olanı kullanılacaktır.\n"
"\n"
-"Seyrek katmanları yazdırırken iç çevre hızı veya filamanın maksimum hacimsel hızından hesaplanan hız daha düşükse bunun yerine en düşük olanı kullanılacaktır.\n"
+"Seyrek katmanları yazdırırken iç çevre hızı veya filamentin maksimum hacimsel hızından hesaplanan hız daha düşükse bunun yerine en düşük olanı kullanılacaktır.\n"
"\n"
-"Bu hızın arttırılması kulenin stabilitesini etkileyebileceği gibi, nozülün silme kulesi üzerinde oluşmuş olabilecek damlacıklarla çarpışma kuvvetini de arttırabilir.\n"
+"Bu hızın arttırılması kulenin stabilitesini etkileyebileceği gibi, nozulun silme kulesi üzerinde oluşmuş olabilecek damlacıklarla çarpışma kuvvetini de arttırabilir.\n"
"\n"
"Bu parametreyi varsayılan 90 mm/sn’nin üzerine çıkarmadan önce, yazıcınızın artan hızlarda güvenilir şekilde köprü kurabildiğinden ve takım değişimi iyi kontrol edildiğinde sızıntı yaptığından emin olun.\n"
"\n"
@@ -17459,16 +17528,16 @@ msgid "Rib"
msgstr "Kaburga"
msgid "Extra rib length"
-msgstr "Ekstra rib uzunluğu"
+msgstr "Ek kaburga uzunluğu"
msgid "Positive values can increase the size of the rib wall, while negative values can reduce the size. However, the size of the rib wall can not be smaller than that determined by the cleaning volume."
-msgstr "Pozitif değerler rib duvarının boyutunu artırabilirken, negatif değerler boyutunu azaltabilir. Ancak rib duvarının boyutu temizleme hacmi tarafından belirlenen boyuttan daha küçük olamaz."
+msgstr "Ek kaburga (takviye) duvarının boyutunu ayarlar. Pozitif değerler kaburga duvarını büyütürken, negatif değerler küçültür. Ancak kaburga boyutu, temizleme hacmi (cleaning volume) ile belirlenen minimum sınırın altına inemez."
msgid "Rib width"
-msgstr "Rib genişliği"
+msgstr "Kaburga genişliği"
msgid "Rib width is always less than half the prime tower side length."
-msgstr "Diş genişliği her zaman ana kule yan uzunluğunun yarısından azdır."
+msgstr "Kaburga genişliği, her zaman hazırlık kulesinin (prime tower) kenar uzunluğunun yarısından az olmalıdır."
msgid "Fillet wall"
msgstr "Kavisli duvar"
@@ -17522,7 +17591,7 @@ msgid "Maximal bridging distance"
msgstr "Maksimum köprüleme mesafesi"
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."
+msgstr "Seyrek dolgu bölümlerindeki destekler arası maksimum mesafe."
msgid "Wipe tower purge lines spacing"
msgstr "Silme kulesi temizleme hatları aralığı"
@@ -17602,10 +17671,10 @@ msgid "Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the f
msgstr "Resim boyutları aşağıdaki formatta bir .gcode ve .sl1 / .sl1s dosyalarında saklanacaktır: \"XxY, XxY, ...\""
msgid "Format of G-code thumbnails"
-msgstr "G kodu küçük resimlerinin formatı"
+msgstr "G-code küçük resimlerinin formatı"
msgid "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."
+msgstr "G-code 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."
msgid "Use relative E distances"
msgstr "Göreceli (relative) E mesafelerini kullan"
@@ -17764,7 +17833,7 @@ msgid "Temperature delta applied during pre-heating before tool change."
msgstr "Takım değişiminden önce ön ısıtma sırasında uygulanan sıcaklık farkı."
msgid "Detect narrow internal solid infills"
-msgstr "Dar iç katı dolguyu tespit et"
+msgstr "Dar iç dolguları tespit et"
msgid "This option will auto-detect narrow internal solid infill areas. If enabled, the concentric pattern will be used for the area to speed up printing. Otherwise, the rectilinear pattern will be used by default."
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 kullanılacaktır. Aksi takdirde varsayılan olarak doğrusal desen kullanılır."
@@ -17795,7 +17864,7 @@ msgid "Export slicing data"
msgstr "Dilimleme verilerini dışa aktar"
msgid "Export slicing data to a folder"
-msgstr "Dilimleme verilerini bir klasöre aktarın."
+msgstr "Dilimleme verilerini bir klasöre dışa aktar"
msgid "Load slicing data"
msgstr "Dilimleme verilerini yükle"
@@ -17843,19 +17912,19 @@ msgid "mtcpp"
msgstr "mtcpp"
msgid "max triangle count per plate for slicing"
-msgstr "dilimleme için plaka başına maksimum üçgen sayısı."
+msgstr "dilimleme için tabla başına maksimum üçgen sayısı"
msgid "mstpp"
msgstr "mstpp"
msgid "max slicing time per plate in seconds"
-msgstr "saniye cinsinden plaka başına maksimum dilimleme süresi."
+msgstr "tabla başına saniye cinsinden maksimum dilimleme süresi"
msgid "No check"
msgstr "Kontrol yok"
msgid "Do not run any validity checks, such as G-code path conflicts check."
-msgstr "Gcode yol çakışmaları kontrolü gibi herhangi bir geçerlilik kontrolü çalıştırmayın."
+msgstr "G-code yol çakışmaları kontrolü gibi herhangi bir geçerlilik kontrolü çalıştırmayın."
msgid "Normative check"
msgstr "Normatif kontrol"
@@ -17960,7 +18029,7 @@ msgid "Load uptodate process/machine settings when using uptodate"
msgstr "Güncel olan bir baskı süreci (process) veya makine (printer) profili seçildiğinde, ona ait en güncel ayarları otomatik olarak yükle"
msgid "load up-to-date process/machine settings from the specified file when using up-to-date"
-msgstr "Güncellemeyi kullanırken belirtilen dosyadan güncel işlem/yazıcı ayarlarını yükle."
+msgstr "güncel durumdayken belirtilen dosyadan güncel proses/makine ayarlarını yükle"
msgid "Load uptodate filament settings when using uptodate"
msgstr "Güncel olan bir filament profili kullanırken, onun en güncel ayarlarını yükle"
@@ -18019,10 +18088,10 @@ msgid "If enabled, this slicing will be considered using timelapse."
msgstr "Etkinleştirilirse, bu dilimleme hızlandırılmış çekim kullanılarak değerlendirilecektir."
msgid "Load custom G-code"
-msgstr "Özel gcode yükle"
+msgstr "Özel G-code yükle"
msgid "Load custom G-code from json."
-msgstr "Json'dan özel gcode yükleyin."
+msgstr "Json'dan özel G-code yükleyin."
msgid "Load filament IDs"
msgstr "Filament kimliklerini yükle"
@@ -18049,10 +18118,10 @@ msgid "If enabled, Arrange will avoid extrusion calibrate region when placing ob
msgstr "Etkinleştirilirse, nesne yerleştirildiğinde düzenleme ekstrüzyon kalibrasyon bölgesini önleyecektir."
msgid "Skip modified G-code in 3MF"
-msgstr "3mf’de değiştirilmiş gcode’ları atla"
+msgstr "3mf’de değiştirilmiş G-code’ları atla"
msgid "Skip the modified G-code in 3MF from printer or filament presets."
-msgstr "Yazıcı veya filament Ön Ayarlarından 3mf’deki değiştirilmiş gcode’ları atlayın."
+msgstr "Yazıcı veya filament Ön Ayarlarından 3mf’deki değiştirilmiş G-code’ları atlayın."
msgid "MakerLab name"
msgstr "MakerLab adı"
@@ -18068,13 +18137,13 @@ msgid "MakerLab version to generate this 3MF."
msgstr "Bu 3mf’yi oluşturmak için MakerLab sürümü."
msgid "Metadata name list"
-msgstr "meta veri adı listesi"
+msgstr "Meta veri adı listesi"
msgid "Metadata name list added into 3MF."
msgstr "3mf’ye meta veri adı listesi eklendi."
msgid "Metadata value list"
-msgstr "meta veri değer listesi"
+msgstr "Meta veri değeri listesi"
msgid "Metadata value list added into 3MF."
msgstr "3mf’ye meta veri değeri listesi eklendi."
@@ -18089,13 +18158,13 @@ msgid "Current Z-hop"
msgstr "Mevcut z-hop"
msgid "Contains Z-hop present at the beginning of the custom G-code block."
-msgstr "Özel G kodu bloğunun başında bulunan z-hop'u içerir."
+msgstr "Özel G-code bloğunun başında bulunan z-hop'u içerir."
msgid "Position of the extruder at the beginning of the custom G-code block. If the custom G-code travels somewhere else, it should write to this variable so OrcaSlicer knows where it travels from when it gets control back."
-msgstr "Ekstruderin özel G kodu bloğunun başlangıcındaki konumu. Özel G kodu başka bir yere seyahat ederse, Slicer'ın kontrolü geri aldığında nereden seyahat ettiğini bilmesi için bu değişkene yazması gerekir."
+msgstr "Ekstruderin özel G-code bloğunun başlangıcındaki konumu. Özel G-code başka bir yere seyahat ederse, Slicer'ın kontrolü geri aldığında nereden seyahat 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 OrcaSlicer de-retracts 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."
+msgstr "Özel G-code bloğunun başlangıcındaki geri çekilme durumu. Özel G-code 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 de-retraction"
msgstr "Ekstra deretraksiyon"
@@ -18131,7 +18200,7 @@ msgid "Initial extruder"
msgstr "İlk ekstruder"
msgid "Zero-based index of the first extruder used in the print. Same as initial_tool."
-msgstr "Baskıda kullanılan ilk ekstruderin sıfır bazlı indeksi. başlangıç_aracı ile aynı."
+msgstr "Baskıda kullanılan ilk ekstruderin sıfır bazlı indeksi. initial_tool ile aynı."
msgid "Initial tool"
msgstr "Başlangıç aracı"
@@ -18179,13 +18248,13 @@ msgid "Weight per extruder"
msgstr "Ekstruder başına ağırlık"
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."
+msgstr "Baskının tamamı boyunca ekstrüzyon yapılan ekstruder başına ağırlık. Filament Ayarlarındaki filament 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."
-msgstr "Baskının toplam ağırlığı. Filament Ayarlarındaki filaman yoğunluğu değerinden hesaplanır."
+msgstr "Baskının toplam ağırlığı. Filament Ayarlarındaki filament yoğunluğu değerinden hesaplanır."
msgid "Total layer count"
msgstr "Toplam katman sayısı"
@@ -18221,7 +18290,7 @@ msgid "Wipe tower volume"
msgstr "Kule hacmini sil"
msgid "Total filament volume extruded on the wipe tower."
-msgstr "Silme kulesinde ekstrüzyona tabi tutulan toplam filaman hacmi."
+msgstr "Silme kulesinde ekstrüzyona tabi tutulan toplam filament hacmi."
msgid "Used filament"
msgstr "Kullanılan"
@@ -18239,7 +18308,7 @@ msgid "Filament length (meters)"
msgstr "Filament uzunluğu (metre)"
msgid "Total filament length used in meters. Replaced with actual value during post-processing."
-msgstr "Metre cinsinden kullanılan toplam filaman uzunluğu. Son işlem sırasında gerçek değerle değiştirilir."
+msgstr "Metre cinsinden kullanılan toplam filament uzunluğu. Son işlem sırasında gerçek değerle değiştirilir."
msgid "Number of objects"
msgstr "Nesne sayısı"
@@ -18248,10 +18317,10 @@ msgid "Total number of objects in the print."
msgstr "Baskıdaki toplam nesne sayısı."
msgid "Number of instances"
-msgstr "Örnek sayısı"
+msgstr "Eş kopya sayısı"
msgid "Total number of object instances in the print, summed over all objects."
-msgstr "Tüm nesneler üzerinden toplanan, yazdırmadaki nesne örneklerinin toplam sayısı."
+msgstr "Tüm nesneler genelinde toplanmış, baskıdaki toplam nesne eş kopyası (instance) sayısı."
msgid "Scale per object"
msgstr "Nesne başına ölçeklendirme"
@@ -18434,7 +18503,7 @@ msgid "Meshing of a model file failed or no valid shape."
msgstr "Bir model dosyasının meshlenmesi başarısız oldu veya geçerli bir şekil yok."
msgid "The supplied file couldn't be read because it's empty."
-msgstr "Sağlanan dosya boş olduğundan okunamadı"
+msgstr "Seçilen dosya boş olduğundan okunamıyor."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Bilinmeyen dosya formatı. Giriş dosyası .stl, .obj, .amf(.xml) uzantılı olmalıdır."
@@ -18581,7 +18650,7 @@ msgid ""
"Within the same extruder, the name(%s) must be unique when the filament type, nozzle diameter, and nozzle flow are the same.\n"
"Are you sure you want to override the historical result?"
msgstr ""
-"Aynı ekstruder içinde filament tipi, nozül çapı ve nozül akışı aynı olduğunda adın(%s) benzersiz olması gerekir.\n"
+"Aynı ekstruder içinde filament tipi, nozul çapı ve nozul akışı aynı olduğunda adın(%s) benzersiz olması gerekir.\n"
"Geçmiş sonucu geçersiz kılmak istediğinizden emin misiniz?"
#, c-format, boost-format
@@ -18807,7 +18876,7 @@ msgid "Nozzle Flow"
msgstr "Nozul Akışı"
msgid "Filament position"
-msgstr "filament konumu"
+msgstr "Filament konumu"
msgid "Filament For Calibration"
msgstr "Kalibrasyon İçin Filament"
@@ -18842,7 +18911,7 @@ msgid "Sync AMS and nozzle information"
msgstr "AMS ve püskürtme ucu bilgilerini senkronize edin"
msgid "Calibration only supports cases where the left and right nozzle diameters are identical."
-msgstr "Kalibrasyon yalnızca sol ve sağ meme çaplarının aynı olduğu durumları destekler."
+msgstr "Kalibrasyon yalnızca sol ve sağ nozul çaplarının aynı olduğu durumları destekler."
msgid "From k Value"
msgstr "K değerinden"
@@ -18897,7 +18966,7 @@ msgstr "Akış Dinamiği Kalibrasyonunu Düzenle"
#, c-format, boost-format
msgid "Within the same extruder, the name '%s' must be unique when the filament type, nozzle diameter, and nozzle flow are identical. Please choose a different name."
-msgstr "Aynı ekstruder içinde, filaman tipi, nozül çapı ve nozül akışı aynı olduğunda '%s' adı benzersiz olmalıdır. Lütfen farklı bir ad seçin."
+msgstr "Aynı ekstruder içinde, filament tipi, bozul çapı ve nozul akışı aynı olduğunda '%s' adı benzersiz olmalıdır. Lütfen farklı bir ad seçin."
msgid "New Flow Dynamic Calibration"
msgstr "Yeni Akış Dinamik Kalibrasyonu"
@@ -18909,7 +18978,7 @@ msgid "The extruder must be selected."
msgstr "Ekstruder seçilmelidir."
msgid "The nozzle must be selected."
-msgstr "Meme seçilmelidir."
+msgstr "Nozul seçilmelidir."
msgid "Network lookup"
msgstr "Ağ araması"
@@ -19204,7 +19273,7 @@ msgstr ""
"Desteklenen şekillendirici türleri için ürün yazılımı belgelerinize bakın."
msgid "Frequency (Start / End): "
-msgstr "Frekans (Başlangıç / Bitiş):"
+msgstr "Frekans (Başlangıç / Bitiş): "
msgid "Start / End"
msgstr "Başlangıç / Bitiş"
@@ -19243,7 +19312,7 @@ msgid "Check firmware compatibility."
msgstr "Firmware uyumluluğunu kontrol edin."
msgid "Frequency: "
-msgstr "Sıklık:"
+msgstr "Frekans: "
# AI Translated
msgid "Damp"
@@ -19272,10 +19341,10 @@ msgid "SCV-V2"
msgstr "SCV-V2"
msgid "Start: "
-msgstr "Başlangıç:"
+msgstr "Başlat: "
msgid "End: "
-msgstr "Son:"
+msgstr "Son: "
msgid "Cornering settings"
msgstr "Viraj alma ayarları"
@@ -19288,13 +19357,13 @@ msgid ""
"To test Classic Jerk, set 'Maximum Junction Deviation' in Motion ability to 0."
msgstr ""
"Marlin 2 Kavşak Sapması tespit edildi:\n"
-"Classic Jerk'i test etmek için Hareket yeteneğinde 'Maksimum Kavşak Sapması'nı 0'a ayarlayın."
+"Classic sarsıntıyı test etmek için Hareket yeteneğinde 'Maksimum Kavşak Sapması'nı 0'a ayarlayın."
msgid ""
"Marlin 2 Classic Jerk detected:\n"
"To test Junction Deviation, set 'Maximum Junction Deviation' in Motion ability to a value > 0."
msgstr ""
-"Marlin 2 Classic Jerk tespit edildi:\n"
+"Marlin 2 Classic sarsıntı tespit edildi:\n"
"Kavşak Sapmasını test etmek için Hareket yeteneğinde 'Maksimum Kavşak Sapması'nı > 0 değerine ayarlayın."
msgid ""
@@ -19356,7 +19425,7 @@ msgid "Only materials of the same type can be selected."
msgstr "Yalnızca aynı tipteki malzemeler seçilebilir."
msgid "Send G-code to printer host"
-msgstr "G Kodunu yazıcı ana bilgisayarına gönder"
+msgstr "G-code'u yazıcı ana bilgisayarına gönder"
msgid "Upload to Printer Host with the following filename:"
msgstr "Yazıcıya aşağıdaki dosya adıyla yükleyin:"
@@ -19517,7 +19586,7 @@ msgid "Subtract with"
msgstr "Şununla çıkar"
msgid "selected"
-msgstr "Seçili"
+msgstr "seçildi"
msgid "Part 1"
msgstr "Bölüm 1"
@@ -19538,7 +19607,7 @@ msgid "Start Test Single-Thread"
msgstr "Tek İş Parçacığı Testini Başlat"
msgid "Export Log"
-msgstr "Logu Dışa Aktar"
+msgstr "Logu dışa aktar"
msgid "OrcaSlicer Version:"
msgstr "OrcaSlicer Sürümü:"
@@ -19705,7 +19774,7 @@ msgid "Input Custom Nozzle Diameter"
msgstr "Özel Nozul Çapını Girin"
msgid "Can't find my nozzle diameter"
-msgstr "Meme çapımı bulamıyorum"
+msgstr "Nozul çapımı bulamıyorum"
msgid "Printable Space"
msgstr "Yazdırılabilir Alan"
@@ -19761,7 +19830,7 @@ msgid ""
"\tCancel: Do not create a preset; return to the creation interface."
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"
+"\tEvet: Aynı adı taşıyan yazıcı ön ayarının üzerine yazın; aynı ön ayar adı taşıyan filament 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."
@@ -19799,7 +19868,7 @@ msgid "You have not yet selected the printer to replace the nozzle for; please c
msgstr "Hala nozulu değiştirmek için yazıcı seçmediniz, lütfen bir seçim yapın."
msgid "The entered nozzle diameter is invalid, please re-enter:\n"
-msgstr "Girilen meme çapı geçersiz, lütfen tekrar girin:\n"
+msgstr "Girilen nozul çapı geçersiz, lütfen tekrar girin:\n"
msgid ""
"The system preset does not allow creation. \n"
@@ -19889,10 +19958,10 @@ msgid "add bundle structure file fail"
msgstr "paket yapısı dosyası ekle başarısız"
msgid "finalize fail"
-msgstr "Tamamlama başarısız"
+msgstr "tamamlama başarısız oldu"
msgid "open zip written fail"
-msgstr "ZIP dosyasını açma başarısız"
+msgstr "zip dosyası açılamadı"
msgid "Export successful"
msgstr "Dışa aktarma başarılı"
@@ -19993,7 +20062,7 @@ msgid ""
"All the filament presets belong to this filament would be deleted.\n"
"If you are using this filament on your printer, please reset the filament information for that slot."
msgstr ""
-"Bu filamente ait tüm filaman ön ayarları silinecektir.\n"
+"Bu filamente ait tüm filament ön ayarları silinecektir.\n"
"Yazıcınızda bu filamenti kullanıyorsanız lütfen o yuvanın filament bilgisini sıfırlayın."
msgid "Delete filament"
@@ -20058,14 +20127,14 @@ msgstr "Yazıcı ekstrüderlerinin sayısı ve kalibrasyon için seçilen yazıc
#, c-format, boost-format
msgid "The nozzle diameter of %s extruder is 0.2mm which does not support automatic Flow Dynamics calibration."
-msgstr "%s ekstruderin meme çapı 0,2 mm'dir ve bu, otomatik Akış Dinamiği kalibrasyonunu desteklemez."
+msgstr "%s ekstruderin nozul çapı 0,2 mm'dir ve bu, otomatik Akış Dinamiği kalibrasyonunu desteklemez."
#, c-format, boost-format
msgid ""
"The currently selected nozzle diameter of %s extruder does not match the actual nozzle diameter.\n"
"Please click the Sync button above and restart the calibration."
msgstr ""
-"%s ekstruderin şu anda seçili olan meme çapı, gerçek meme çapıyla eşleşmiyor.\n"
+"%s ekstruderin şu anda seçili olan nozul çapı, gerçek nozul çapıyla eşleşmiyor.\n"
"Lütfen yukarıdaki Senkronizasyon düğmesine tıklayın ve kalibrasyonu yeniden başlatın."
msgid ""
@@ -20092,9 +20161,6 @@ msgstr "Fiziksel Yazıcı"
msgid "Print Host upload"
msgstr "Yazıcı Bağlantı Ayarları"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Yazıcı iletişimi için ağ aracısı uygulamasını seçin. Kullanılabilir aracılar başlangıçta kaydedilir."
-
# AI Translated
msgid "Select a Flashforge printer"
msgstr "Bir Flashforge yazıcısı seçin"
@@ -20265,9 +20331,8 @@ msgstr "İletişim kutusunu kapatıp projeyi incelemek için HAYIR'ı seçin."
msgid "No project file on current session. Only logs will be included to package"
msgstr "Geçerli oturumda proje dosyası yok. Pakete yalnızca günlükler eklenecek"
-# AI Translated
msgid "Please make sure any instances of OrcaSlicer are not running"
-msgstr "Lütfen çalışan bir OrcaSlicer örneği olmadığından emin olun"
+msgstr "Lütfen hiçbir OrcaSlicer örneğinin çalışmadığından emin olun"
# AI Translated
msgid "System folder cannot be deleted because some files are in use by another application. Please close any applications using these files and try again."
@@ -20281,7 +20346,6 @@ msgstr "Sistem klasörü silinemedi..."
msgid "Failed to determine executable path."
msgstr "Yürütülebilir dosya yolu belirlenemedi."
-# AI Translated
msgid "Failed to launch a new instance."
msgstr "Yeni bir örnek başlatılamadı."
@@ -20507,7 +20571,7 @@ msgid "It has a small layer height. This results in almost negligible layer line
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. This results in much higher print quality but a much longer print 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."
+msgstr "0,2 mm’lik nozulun 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."
msgid "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 shorter print 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."
@@ -20531,7 +20595,7 @@ msgid "It has a normal layer height. This results in average layer lines and pri
msgstr "Genel bir katman yüksekliğine sahiptir ve genel katman çizgileri ve baskı kalitesiyle sonuçlanır. Çoğu genel yazdırma durumu için uygundur."
msgid "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."
-msgstr "0,4 mm’lik nozulun varsayılan profiliyle karşılaştırıldığında, daha fazla duvar döngüsüne ve daha yüksek seyrek dolgu yoğunluğuna sahiptir. Bu, baskıların daha güçlü olmasına, ancak daha fazla filaman tüketimine ve daha uzun baskı süresine neden olur."
+msgstr "0,4 mm’lik nozulun varsayılan profiliyle karşılaştırıldığında, daha fazla duvar döngüsüne ve daha yüksek seyrek dolgu yoğunluğuna sahiptir. Bu, baskıların daha güçlü olmasına, ancak daha fazla filament tüketimine ve daha uzun baskı süresine neden olur."
msgid "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."
msgstr "0,4 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 daha belirgin katman çizgileri ve daha düşük baskı kalitesi sağlar, ancak biraz daha kısa yazdırma süresi sağlar."
@@ -20543,13 +20607,13 @@ msgid "Compared with the default profile of a 0.4 mm nozzle, it has a smaller la
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."
msgid "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."
-msgstr "0,4 mm’lik nozülün varsayılan profiliyle karşılaştırıldığında daha küçük katman yüksekliğine, daha düşük hızlara ve ivmeye sahiptir ve seyrek dolgu deseni Gyroid’dir. Böylece daha az belirgin katman çizgileri ve çok daha yüksek baskı kalitesi elde edilir, ancak çok daha uzun yazdırma süresi elde edilir."
+msgstr "0,4 mm’lik nozulun varsayılan profiliyle karşılaştırıldığında daha küçük katman yüksekliğine, daha düşük hızlara ve ivmeye sahiptir ve seyrek dolgu deseni Gyroid’dir. Böylece daha az belirgin katman çizgileri ve çok daha yüksek baskı kalitesi elde edilir, ancak çok daha uzun yazdırma süresi elde edilir."
msgid "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."
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ı edilebilir 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 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."
-msgstr "0,4 mm’lik nozülün varsayılan profiliyle karşılaştırıldığında daha küçük katman yüksekliğine, daha düşük hızlara ve ivmeye sahiptir ve seyrek dolgu deseni Gyroid’dir. Böylece, neredeyse göz ardı edilebilecek düzeyde katman çizgileri ve çok daha yüksek baskı kalitesi elde edilirken, çok daha uzun baskı süresi elde edilir."
+msgstr "0,4 mm’lik nozulun varsayılan profiliyle karşılaştırıldığında daha küçük katman yüksekliğine, daha düşük hızlara ve ivmeye sahiptir ve seyrek dolgu deseni Gyroid’dir. Böylece, neredeyse göz ardı edilebilecek düzeyde katman çizgileri ve çok daha yüksek baskı kalitesi elde edilirken, çok daha uzun baskı süresi elde edilir."
msgid "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."
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 katman çizgileri ve daha uzun yazdırma süresi sağlar."
@@ -20558,7 +20622,7 @@ msgid "It has a big layer height. This results in apparent layer lines and ordin
msgstr "Büyük bir katman yüksekliğine sahiptir ve belirgin katman çizgileri ile sıradan baskı kalitesi ve baskı süresi sağlar."
msgid "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."
-msgstr "0,6 mm’lik nozulun varsayılan profiliyle karşılaştırıldığında, daha fazla duvar döngüsüne ve daha yüksek seyrek dolgu yoğunluğuna sahiptir. Bu, baskıların daha güçlü olmasına, ancak daha fazla filaman tüketimine ve daha uzun baskı süresine neden olur."
+msgstr "0,6 mm’lik nozulun varsayılan profiliyle karşılaştırıldığında, daha fazla duvar döngüsüne ve daha yüksek seyrek dolgu yoğunluğuna sahiptir. Bu, baskıların daha güçlü olmasına, ancak daha fazla filament tüketimine ve daha uzun baskı süresine neden olur."
msgid "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."
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 daha belirgin katman çizgileri ve daha düşük baskı kalitesi sağlar, ancak bazı yazdırma durumlarında daha kısa yazdırma süresi sağlar."
@@ -20591,16 +20655,16 @@ msgid "This is neither a commonly used filament, nor one of Bambu filaments, and
msgstr "Bu ne yaygın olarak kullanılan bir filament ne de Bambu filamentlerinden biri ve markadan markaya çok değişiyor. Bu nedenle, yazdırmadan önce satıcınızdan uygun profili sormanız ve bazı parametreleri performansına göre ayarlamanız önemle tavsiye edilir."
msgid "When printing this filament, there's a risk of warping and low layer adhesion strength. To get better results, please refer to this wiki: Printing Tips for High Temp / Engineering materials."
-msgstr "Bu filamanı yazdırırken eğrilme ve düşük katman yapışma mukavemeti riski vardır. Daha iyi sonuçlar almak için lütfen şu wiki'ye bakın: Yüksek Sıcaklık / Mühendislik malzemeleri için Yazdırma İpuçları."
+msgstr "Bu filamenti yazdırırken eğrilme ve düşük katman yapışma mukavemeti riski vardır. Daha iyi sonuçlar almak için lütfen şu wiki'ye bakın: Yüksek Sıcaklık / Mühendislik malzemeleri için Yazdırma İpuçları."
msgid "When printing this filament, there's a risk of nozzle clogging, oozing, warping and low layer adhesion strength. To get better results, please refer to this wiki: Printing Tips for High Temp / Engineering materials."
-msgstr "Bu filamanı yazdırırken nozulun tıkanması, sızması, eğrilmesi ve düşük katman yapışma mukavemeti riski vardır. Daha iyi sonuçlar almak için lütfen şu wiki'ye bakın: Yüksek Sıcaklık / Mühendislik malzemeleri için Yazdırma İpuçları."
+msgstr "Bu filamenti yazdırırken nozulun tıkanması, sızması, eğrilmesi ve düşük katman yapışma mukavemeti riski vardır. Daha iyi sonuçlar almak için lütfen şu wiki'ye bakın: Yüksek Sıcaklık / Mühendislik malzemeleri için Yazdırma İpuçları."
msgid "To get better transparent or translucent results with the corresponding filament, please refer to this wiki: Printing tips for transparent PETG."
msgstr "İlgili filamentle daha iyi şeffaf veya yarı şeffaf sonuçlar elde etmek için lütfen şu wiki'ye bakın: Şeffaf PETG için yazdırma ipuçları."
msgid "To make the prints get higher gloss, please dry the filament before use, and set the outer wall speed to be 40 to 60 mm/s when slicing."
-msgstr "Baskıların daha parlak olmasını sağlamak için lütfen kullanmadan önce filamanı kurutun ve dilimleme sırasında dış duvar hızını 40 ila 60 mm/s olarak ayarlayın."
+msgstr "Baskıların daha parlak olmasını sağlamak için lütfen kullanmadan önce filamenti kurutun ve dilimleme sırasında dış duvar hızını 40 ila 60 mm/s olarak ayarlayın."
msgid "This filament is only used to print models with a low density usually, and some special parameters are required. To get better printing quality, please refer to this wiki: Instructions for printing RC model with foaming PLA (PLA Aero)."
msgstr "Bu filament genellikle yalnızca düşük yoğunluklu modelleri basmak için kullanılır ve bazı özel parametreler gereklidir. Daha iyi baskı kalitesi elde etmek için lütfen bu wiki'ye bakın: RC modelini köpüklü PLA (PLA Aero) ile yazdırma talimatları."
@@ -20609,7 +20673,7 @@ msgid "This filament is only used to print models with a low density usually, an
msgstr "Bu filament genellikle yalnızca düşük yoğunluklu modelleri basmak için kullanılır ve bazı özel parametreler gereklidir. Daha iyi baskı kalitesi elde etmek için lütfen şu wiki'ye bakın: ASA Aero Printing Guide."
msgid "This filament is too soft and not compatible with the AMS. Printing it is of many requirements, and to get better printing quality, please refer to this wiki: TPU printing guide."
-msgstr "Bu filaman çok yumuşak ve AMS ile uyumlu değil. Yazdırmanın birçok gereksinimi vardır ve daha iyi yazdırma kalitesi elde etmek için lütfen şu wiki'ye bakın: TPU yazdırma kılavuzu."
+msgstr "Bu filament çok yumuşak ve AMS ile uyumlu değil. Yazdırmanın birçok gereksinimi vardır ve daha iyi yazdırma kalitesi elde etmek için lütfen şu wiki'ye bakın: TPU yazdırma kılavuzu."
msgid "This filament has high enough hardness (about 67D) and is compatible with the AMS. Printing it is of many requirements, and to get better printing quality, please refer to this wiki: TPU printing guide."
msgstr "Bu filament yeterince yüksek sertliğe sahiptir (yaklaşık 67D) ve AMS ile uyumludur. Yazdırmanın birçok gereksinimi vardır ve daha iyi yazdırma kalitesi elde etmek için lütfen şu wiki'ye bakın: TPU yazdırma kılavuzu."
@@ -20618,7 +20682,7 @@ msgid "If you are to print a kind of soft TPU, please don't slice with this prof
msgstr "Bir tür yumuşak TPU yazdıracaksanız lütfen bu profille kesmeyin; bu yalnızca yeterince yüksek sertliğe sahip (55D'den az olmayan) ve AMS ile uyumlu TPU içindir. Daha iyi baskı kalitesi elde etmek için lütfen şu wiki'ye bakın: TPU yazdırma kılavuzu."
msgid "This is a water-soluble support filament, and usually it is only for the support structure and not for the model body. Printing this filament is of many requirements, and to get better printing quality, please refer to this wiki: PVA Printing Guide."
-msgstr "Bu suda çözünebilen bir destek filamentidir ve genellikle model gövdesi için değil yalnızca destek yapısı içindir. Bu filamanı yazdırmak birçok gereksinimi gerektirir ve daha iyi baskı kalitesi elde etmek için lütfen şu wiki'ye bakın: PVA Yazdırma Kılavuzu."
+msgstr "Bu suda çözünebilen bir destek filamentidir ve genellikle model gövdesi için değil yalnızca destek yapısı içindir. Bu filamenti yazdırmak birçok gereksinimi gerektirir ve daha iyi baskı kalitesi elde etmek için lütfen şu wiki'ye bakın: PVA Yazdırma Kılavuzu."
msgid "This is a non-water-soluble support filament, and usually it is only for the support structure and not for the model body. To get better printing quality, please refer to this wiki: Printing Tips for Support Filament and Support Function."
msgstr "Bu suda çözünmeyen bir destek filamentidir ve genellikle model gövdesi için değil yalnızca destek yapısı içindir. Daha iyi baskı kalitesi elde etmek için lütfen şu wiki'ye bakın: Destek Filamenti ve Destek Fonksiyonu için Yazdırma İpuçları."
@@ -20654,7 +20718,7 @@ msgid "High quality profile for 0.8mm nozzle, prioritizing print quality."
msgstr "0,8 mm püskürtme ucu için baskı kalitesini ön planda tutan yüksek kaliteli profil."
msgid "Strength profile for 0.8mm nozzle, prioritizing strength."
-msgstr "0,8 mm'lik nozül için güç profili, dayanıklılığa öncelik verilir."
+msgstr "0,8 mm'lik nozul için güç profili, dayanıklılığa öncelik verilir."
msgid "Standard profile for 0.8mm nozzle, prioritizing speed."
msgstr "Hıza öncelik veren 0,8 mm nozul için standart profil."
@@ -20814,13 +20878,13 @@ msgid "Custom Mode"
msgstr "Özel Mod"
msgid "Generates filament grouping for the left and right nozzles based on the most filament-saving principles to minimize waste."
-msgstr "Atıkları en aza indirmek için en fazla filaman tasarrufu sağlayan ilkelere dayalı olarak sol ve sağ püskürtme uçları için filaman gruplandırması oluşturur."
+msgstr "Atıkları en aza indirmek için en fazla filament tasarrufu sağlayan ilkelere dayalı olarak sol ve sağ püskürtme uçları için filament gruplandırması oluşturur."
msgid "Generates filament grouping for the left and right nozzles based on the printer's actual filament status, reducing the need for manual filament adjustment."
-msgstr "Yazıcının gerçek filaman durumuna göre sol ve sağ püskürtme uçları için filaman gruplandırması oluşturarak manuel filaman ayarlaması ihtiyacını azaltır."
+msgstr "Yazıcının gerçek filament durumuna göre sol ve sağ püskürtme uçları için filament gruplandırması oluşturarak manuel filament ayarlaması ihtiyacını azaltır."
msgid "Manually assign filament to the left or right nozzle"
-msgstr "Filamenti manuel olarak sol veya sağ memeye atayın"
+msgstr "Filamenti manuel olarak sol veya sağ nozule atayın"
msgid "Global settings"
msgstr "Genel ayarlar"
@@ -20855,7 +20919,7 @@ msgid "Set the physical nozzle count..."
msgstr "Fiziksel nozul sayısını ayarlayın..."
msgid "The filament grouping method for current plate is determined by the dropdown option at the slicing plate button."
-msgstr "Geçerli plaka için filaman gruplandırma yöntemi, dilimleme plakası düğmesindeki açılır seçenekle belirlenir."
+msgstr "Geçerli plaka için filament gruplandırma yöntemi, dilimleme plakası düğmesindeki açılır seçenekle belirlenir."
msgid "Connected to Obico successfully!"
msgstr "Obico'ya başarıyla bağlanıldı!"
@@ -21037,9 +21101,6 @@ msgstr "Giriş yapmaya çalışırken beklenmeyen bir şey oldu, lütfen tekrar
msgid "User canceled."
msgstr "Kullanıcı iptal edildi."
-msgid "Head diameter"
-msgstr "Kafa çapı"
-
msgid "Max angle"
msgstr "Maksimum açı"
@@ -21552,10 +21613,10 @@ msgid "The filament model is unknown. Generic filament presets will be used."
msgstr "Filament modeli bilinmiyor. Genel filament ön ayarları kullanılacaktır."
msgid "The filament may not be compatible with the current machine settings. A random filament preset will be used."
-msgstr "Filament mevcut makine ayarlarıyla uyumlu olmayabilir. Rastgele bir filaman ön ayarı kullanılacaktır."
+msgstr "Filament mevcut makine ayarlarıyla uyumlu olmayabilir. Rastgele bir filament ön ayarı kullanılacaktır."
msgid "The filament model is unknown. A random filament preset will be used."
-msgstr "Filament modeli bilinmiyor. Rastgele bir filaman ön ayarı kullanılacaktır."
+msgstr "Filament modeli bilinmiyor. Rastgele bir filament ön ayarı kullanılacaktır."
#: resources/data/hints.ini: [hint:Precise wall]
msgid ""
@@ -21610,8 +21671,8 @@ msgid ""
"G-code window\n"
"You can turn on/off the G-code window by pressing the C key."
msgstr ""
-"G-kodu penceresi\n"
-"C tuşuna basarak G*kodu penceresini açabilir/kapatabilirsiniz."
+"G-code penceresi\n"
+"C tuşuna basarak G-code penceresini açabilir/kapatabilirsiniz."
#: resources/data/hints.ini: [hint:Switch workspaces]
msgid ""
@@ -21768,8 +21829,7 @@ msgstr ""
"Baskılarınızı plakalara ayırın\n"
"Çok sayıda parçası olan bir modeli baskıya hazır ayrı kalıplara bölebileceğinizi biliyor muydunuz? Bu, tüm parçaları takip etme sürecini basitleştirecektir."
-#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer
-#: Height]
+#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer Height]
msgid ""
"Speed up your print with Adaptive Layer Height\n"
"Did you know that you can print a model even faster by using the Adaptive Layer Height option? Check it out!"
@@ -21842,8 +21902,7 @@ msgstr ""
"Gücü artırın\n"
"Modelin gücünü artırmak için daha fazla duvar halkası ve daha yüksek seyrek dolgu yoğunluğu kullanabileceğinizi biliyor muydunuz?"
-#: resources/data/hints.ini: [hint:When do you need to print with the printer
-#: door opened]
+#: resources/data/hints.ini: [hint:When do you need to print with the printer door opened]
msgid ""
"When do you need to print with the printer door opened?\n"
"Did 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? There is more info about this in the Wiki."
@@ -21859,6 +21918,22 @@ msgstr ""
"Eğilmeyi önleyin\n"
"ABS gibi bükülmeye yatkın malzemelere baskı yaparken, ısıtma yatağı sıcaklığının uygun şekilde arttırılmasının bükülme olasılığını azaltabileceğini biliyor muydunuz?"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "Katman yüksekliği çok küçük.\n"
+#~ "min_layer_height olarak ayarlanacak\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer 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."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Ayarlanan aralığa otomatik olarak ayarlansın mı?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Kafa çapı"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Tek bir katmanda yazdırma sırası."
@@ -21905,10 +21980,10 @@ msgstr ""
#~ msgstr "Daha Sonra Yeniden Başlat"
#~ msgid "Select filament that installed to the left nozzle"
-#~ msgstr "Sol nozüle takılan filamanı seçin"
+#~ msgstr "Sol nozule takılan filamenti seçin"
#~ msgid "Select filament that installed to the right nozzle"
-#~ msgstr "Sağ nozüle takılan filamanı seçin"
+#~ msgstr "Sağ nozule takılan filamenti seçin"
#, c-format, boost-format
#~ msgid "Note: the filament type(%s) does not match with the filament type(%s) in the slicing file. If you want to use this slot, you can install %s instead of %s and change slot information on the 'Device' page."
@@ -21919,7 +21994,7 @@ msgstr ""
#~ msgstr "Not: yuva boş veya tanımsız. Bu yuvayı kullanmak istiyorsanız 'Cihaz' sayfasından %s yükleyebilir ve yuva bilgilerini değiştirebilirsiniz."
#~ msgid "Note: Only filament-loaded slots can be selected."
-#~ msgstr "Not: Yalnızca filaman yüklü yuvalar seçilebilir."
+#~ msgstr "Not: Yalnızca filament yüklü yuvalar seçilebilir."
#~ msgid "Save the printing files initiated from Bambu Studio, Bambu Handy and MakerWorld on External Storage"
#~ msgstr "Bambu Studio, Bambu Handy ve MakerWorld'den başlatılan yazdırma dosyalarını Harici Depolamaya kaydedin"
@@ -22244,7 +22319,7 @@ msgstr ""
#~ msgstr "hafızaya alınan meme boyutu: %d"
#~ msgid "The size of nozzle type in preset is not consistent with memorized nozzle. Did you change your nozzle lately?"
-#~ msgstr "Ön ayardaki nozül tipinin boyutu hafızaya alınan nozül ile tutarlı değil. Son zamanlarda nozulunuzu değiştirdiniz mi?"
+#~ msgstr "Ön ayardaki nozul tipinin boyutu hafızaya alınan nozul ile tutarlı değil. Son zamanlarda nozulunuzu değiştirdiniz mi?"
#, c-format, boost-format
#~ msgid "nozzle[%d] in preset: %.1f"
@@ -22380,7 +22455,7 @@ msgstr ""
#~ msgstr "Sol püskürtme ucu: %smm"
#~ msgid "Right nozzle: %smm"
-#~ msgstr "Sağ nozül: %smm"
+#~ msgstr "Sağ nozul: %smm"
#~ msgid "\"Fix Model\" feature is currently only on Windows. Please repair the model on Orca Slicer(windows) or CAD softwares."
#~ msgstr "\"Modeli Onar\" özelliği şu anda yalnızca Windows'ta bulunmaktadır. Lütfen modeli Orca Slicer (windows) veya CAD yazılımlarında onarın."
diff --git a/localization/i18n/uk/OrcaSlicer_uk.po b/localization/i18n/uk/OrcaSlicer_uk.po
index 464cd4042a..9f57b6b71a 100644
--- a/localization/i18n/uk/OrcaSlicer_uk.po
+++ b/localization/i18n/uk/OrcaSlicer_uk.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: orcaslicerua\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: 2026-07-17 16:25+0300\n"
"Last-Translator: Andrij Mizyk \n"
"Language-Team: Ukrainian\n"
@@ -4142,10 +4142,10 @@ msgid "PA Profile"
msgstr "Профіль PA"
msgid "Factor K"
-msgstr "Коэф. K"
+msgstr "Коеф. K"
msgid "Factor N"
-msgstr "Коэф. N"
+msgstr "Коеф. N"
msgid "Setting AMS slot information while printing is not supported"
msgstr "Зміна інформації про слоти AMS під час друку не підтримується"
@@ -4716,6 +4716,23 @@ msgstr "Поточна температура камери вища, ніж бе
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "Мінімальна температура камери (%d℃) вища за цільову температуру камери (%d℃). Мінімальне значення — це поріг, за якого починається друк, поки камера продовжує нагріватися до цільової температури, тому воно не повинно її перевищувати. Значення буде обмежено цільовим."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "Висота шару занадто мала. Буде встановлено мінімальне значення (%g мм)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "Висота шару виходить за межі, задані в Налаштуваннях принтера -> Екструдер -> Ліміти висоти шару, це може призвести до проблем з якістю друку."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Автоматично налаштувати до межі (%g мм)?"
+
+msgid "Adjust"
+msgstr "Налаштувати"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4839,6 +4856,13 @@ msgstr ""
"Так - Увімкнути генератор стінок Arachne\n"
"Ні - Вимкнути генератор стінок Arachne і встановити режим [Зміщення] для шорсткої поверхні"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Радіус вушка кайми"
+
+msgid "Brim width"
+msgstr "Ширина кайми"
+
# AI Translated
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "Спіральний режим працює лише тоді, коли кількість стінок дорівнює 1, підтримки вимкнено, виявлення налипання зондуванням вимкнено, кількість верхніх шарів оболонки дорівнює 0, щільність часткового заповнення дорівнює 0, а тип таймлапсу — традиційний."
@@ -5104,6 +5128,14 @@ msgstr "Не вдалося згенерувати калібрувальний
msgid "Calibration error"
msgstr "Помилка калібрування"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "На цьому принтері не налаштовано обладнання, потрібне для цього елемента керування."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Цей елемент керування не підтримується на цьому принтері."
+
# AI Translated
msgid "Network unavailable"
msgstr "Мережа недоступна"
@@ -5978,7 +6010,7 @@ msgid "Size:"
msgstr "Розмір:"
# AI Translated
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "Виявлено конфлікти шляхів G-коду на шарі %d, Z = %.2lf мм. Будь ласка, рознесіть конфліктуючі обʼєкти далі один від одного (%s <-> %s)."
@@ -6170,6 +6202,10 @@ msgstr "Багато пристроїв"
msgid "Project"
msgstr "Проєкт"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Пристрій (Веб)"
+
msgid "Yes"
msgstr "Так"
@@ -8306,21 +8342,21 @@ msgstr "Каталог для заміни не вибрано"
msgid "Replaced with 3D files from directory:\n"
msgstr "Замінено 3D-файлами з каталогу:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Пропущено %1%: той самий файл.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ Пропущено %s: той самий файл.\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Пропущено %1%: файл не існує.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ Пропущено %s: файл не існує.\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Пропущено %1%: не вдалося замінити.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ Пропущено %s: не вдалося замінити.\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Замінено %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ Замінено %s.\n"
msgid "Replaced volumes"
msgstr "Замінені обʼєми"
@@ -9069,6 +9105,18 @@ msgstr "З цією опцією ввімкненою, ви можете від
msgid "Pop up to select filament grouping mode"
msgstr "Показувати вікно вибору режиму групування філаментів"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Видимі сторінки плагінів"
+
+# AI Translated
+msgid "pages"
+msgstr "стор."
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Кількість сторінок плагінів, що показуються як закріплені вкладки, перш ніж решта сторінок згорнеться у випадний список на останній вкладці."
+
msgid "Behaviour"
msgstr "Поведінка"
@@ -9446,6 +9494,18 @@ msgstr "Показати непідтримувані пресети"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Показати несумісні/непідтримувані пресети у випадаючому списку принтера і філаменту. Ці пресети не можна вибрати."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Експериментально) Використовувати агентів принтера замість хостів друку"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Спрямовує завдання друку для принтерів, відмінних від Bambu, через агентів плагінів принтера замість класичного завантаження на хост друку.\n"
+"Коли вимкнено, OrcaSlicer використовує попередню поведінку хоста друку."
+
msgid "Experimental Features"
msgstr "Експериментальні функції"
@@ -9710,10 +9770,26 @@ msgstr "Пресети користувача"
msgid "Preset Inside Project"
msgstr "Налаштування проекту всередині"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Копіює в цей пресет усі значення, успадковані від батьківського пресета, і видаляє звʼязок успадкування. Пресети, сумісні лише з батьківським, можуть стати непідтримуваними."
+
# AI Translated
msgid "Detach from parent"
msgstr "Відʼєднати від батьківського"
+# AI Translated
+msgid "Unique preset"
+msgstr "Незалежний пресет"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Батьківський пресет"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Цей пресет не успадковується від іншого пресета."
+
msgid "Name is unavailable."
msgstr "Назва недоступна."
@@ -10492,22 +10568,6 @@ msgstr "Ви впевнені, що хочете ввімкнути цю опц
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
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 height limits, this may cause printing quality issues."
-msgstr "Висота шару перевищує ліміт у Налаштуваннях принтера -> Екструдер -> Ліміти висоти шару, це може призвести до проблем з якістю друку."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Автоматично налаштувати на встановлений діапазон?\n"
-
-msgid "Adjust"
-msgstr "Налаштувати"
-
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."
msgstr "Експериментальна функція: Втягування та відрізання філаменту на більшій відстані під час зміни філаменту для мінімізації промивання. Хоча це може помітно зменшити промивання, це також може підвищити ризик засмічення сопла або інших ускладнень друку."
@@ -10711,6 +10771,9 @@ msgstr "Знайдено зарезервовані ключові слова"
msgid "Setting Overrides"
msgstr "Налаштування перевизначень"
+msgid "Retraction when switching material"
+msgstr "Втягування під час зміни матеріалу"
+
msgid "Basic information"
msgstr "Базова інформація"
@@ -10848,6 +10911,13 @@ msgstr "Сумісні профілі процесів"
msgid "Printable space"
msgstr "Місце для друку"
+msgid "Printer Agent"
+msgstr "Агент принтера"
+
+# AI Translated
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Виберіть реалізацію мережевого агента для звʼязку з принтером. Доступні агенти реєструються під час запуску."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10978,9 +11048,6 @@ msgstr "Обмеження висоти шару"
msgid "Z-Hop"
msgstr "Стрибок-Z"
-msgid "Retraction when switching material"
-msgstr "Втягування під час зміни матеріалу"
-
# AI Translated
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
@@ -12376,6 +12443,10 @@ msgstr " знаходиться надто близько до зони відч
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " розташовано занадто близько до зони виявлення налипання, і це спричинить зіткнення.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " частково знаходиться за межами області друку, і його неможливо надрукувати.\n"
+
# AI Translated
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "Вибрані температури сопла несумісні. Температура сопла кожного філаменту має входити в рекомендований діапазон температур сопла інших філаментів. Інакше можливе засмічення сопла або пошкодження принтера."
@@ -12722,9 +12793,6 @@ msgstr "Використовувати 3MF замість G-коду"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Увімкніть, якщо принтер приймає файл 3MF як завдання друку. Якщо увімкнено, Orca Slicer надсилає нарізаний файл як .gcode.3mf замість звичайного файлу .gcode."
-msgid "Printer Agent"
-msgstr "Агент принтера"
-
# AI Translated
msgid "Select the network agent implementation for printer communication."
msgstr "Виберіть реалізацію мережевого агента для звʼязку з принтером."
@@ -13438,9 +13506,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Швидкість внутрішніх мостів. Якщо значення вказано у відсотках, воно буде розраховане на основі bridge_speed. Значення за замовчуванням: 150%."
-msgid "Brim width"
-msgstr "Ширина кайми"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Відстань від моделі до останньої зовнішньої лінії кайми"
@@ -13525,6 +13590,14 @@ msgstr ""
"Геометрія буде оброблена перед детектуванням гострих кутів. Цей параметр вказує мінімальну довжину відхилення для обробки.\n"
"0 для вимкнення"
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Вушка кайми лише ззовні"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Створювати мишачі вушка лише на зовнішньому контурі моделі, за винятком отворів і замкнених ділянок."
+
msgid "upward compatible machine"
msgstr "висхідна сумісна машина"
@@ -14734,6 +14807,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Гіроїд"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Коефіцієнт згладжування часткового заповнення"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Визначає, наскільки сильно заокруглюються кути часткового заповнення. 0% зберігає початкову траєкторію з гострими кутами, а 100% створює максимально можливі заокруглення між сусідніми лініями заповнення."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Прискорення заповнення верхньої поверхні. Використання меншого значенняможе покращити якість верхньої поверхні"
@@ -15300,6 +15381,14 @@ msgstr "З яким gcode сумісний принтер"
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "Пропустити блок конфігурації G-code"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "Не записувати CONFIG_BLOCK (пари ключ/значення з конфігурацією слайсера) у файл G-code. Це може допомогти з принтерами, прошивка яких аварійно завершується під час розбору цих рядків коментарів (напр. Anycubic go-klipper). Примітка: файл G-code більше не міститиме налаштувань слайсера, тож зворотний імпорт до OrcaSlicer не відновить конфігурацію."
+
msgid "Pellet Modded Printer"
msgstr "Принтер модифікований гранулами"
@@ -16438,6 +16527,14 @@ msgstr "Довге втягування при зміні екструдера"
msgid "Retraction distance when extruder change"
msgstr "Відстань втягування при зміні екструдера"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Довжина втягування (Зміна інструменту)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Коли втягування спрацьовує перед зміною інструменту, філамент відтягується на вказану величину (довжина вимірюється на необробленому філаменті, до його входу в екструдер)."
+
msgid "Z-hop height"
msgstr "Висота Z-підйому"
@@ -16534,6 +16631,10 @@ msgstr "Додаткова довжина під час перезавантаж
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Коли втягування компенсується після переміщення, екструдер проштовхуєЦе додаткова кількість нитки. Ця установка рідко потрібна."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Додаткова довжина під час перезавантаження (Зміна інструменту)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Коли втягування компенсується після заміни інструменту, екструдерпроштовхує цю додаткову кількість нитки."
@@ -16960,6 +17061,14 @@ msgstr "Зміна інструмента на вежі протирання"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Примусово переміщати головку до вежі протирання перед видачею команди зміни інструмента (Tx). Стосується лише багатоекструдерних (багатоінструментальних) принтерів з вежею протирання типу 2. Типово Orca пропускає це переміщення на багатоінструментальних машинах, оскільки заміну головки виконує прошивка, через що команда Tx може бути видана над надрукованою деталлю. Увімкніть цю опцію, якщо хочете, щоб зміна інструмента завжди відбувалася над вежею протирання."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Очікувати температуру на вежі протирання"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Бере новий інструмент, не чекаючи, доки він досягне температури друку, переміщується до вежі протирання й чекає на температуру там, безпосередньо перед промивкою. Матеріал, що витікає під час нагрівання, потрапляє на вежу, а не на модель, а переміщення збігається з нагріванням. Актуально лише для принтерів із кількома екструдерами (кількома головками), які використовують вежу протирання типу 2. Прошивка або макрос зміни інструменту не повинні самі чекати на температуру. Коли вимкнено, команда очікування температури видається одразу після команди зміни інструменту."
+
msgid "No sparse layers (beta)"
msgstr "Без розріджених шарів (бета)"
@@ -20304,10 +20413,6 @@ msgstr "Фізичний принтер"
msgid "Print Host upload"
msgstr "Завантаження хоста друку"
-# AI Translated
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Виберіть реалізацію мережевого агента для звʼязку з принтером. Доступні агенти реєструються під час запуску."
-
msgid "Select a Flashforge printer"
msgstr "Вибрати принтер Flashforge"
@@ -21181,9 +21286,6 @@ msgstr "Під час спроби входу трапилося щось нес
msgid "User canceled."
msgstr "Користувача скасовано."
-msgid "Head diameter"
-msgstr "Діаметр голови"
-
msgid "Max angle"
msgstr "Максимальний кут"
@@ -21979,6 +22081,22 @@ msgstr ""
"Уникнення деформації\n"
"Чи знаєте ви, що при друку матеріалами, схильними до деформації, такими як ABS, відповідне підвищення температури столу може зменшити ймовірність деформації?"
+#~ 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 height limits, this may cause printing quality issues."
+#~ msgstr "Висота шару перевищує ліміт у Налаштуваннях принтера -> Екструдер -> Ліміти висоти шару, це може призвести до проблем з якістю друку."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Автоматично налаштувати на встановлений діапазон?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Діаметр голови"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Друк замовлення в один шар"
diff --git a/localization/i18n/vi/OrcaSlicer_vi.po b/localization/i18n/vi/OrcaSlicer_vi.po
index 2133579d50..00a9a558ba 100644
--- a/localization/i18n/vi/OrcaSlicer_vi.po
+++ b/localization/i18n/vi/OrcaSlicer_vi.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: 2025-10-02 17:43+0700\n"
"Last-Translator: \n"
"Language-Team: hainguyen.ts13@gmail.com\n"
@@ -4975,6 +4975,23 @@ msgstr "Nhiệt độ buồng hiện tại cao hơn nhiệt độ an toàn của
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "Nhiệt độ buồng tối thiểu (%d℃) cao hơn nhiệt độ buồng mục tiêu (%d℃). Giá trị tối thiểu là ngưỡng để bắt đầu in trong khi buồng vẫn tiếp tục gia nhiệt tới mục tiêu, nên nó không được vượt quá giá trị mục tiêu. Nó sẽ được giới hạn về mức mục tiêu."
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "Chiều cao lớp quá nhỏ. Nó sẽ được đặt về giá trị tối thiểu (%g mm)."
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "Chiều cao lớp nằm ngoài giới hạn được đặt trong Cài đặt máy in -> Extruder -> Giới hạn chiều cao lớp, điều này có thể gây ra vấn đề chất lượng in."
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "Tự động điều chỉnh về giới hạn (%g mm)?"
+
+msgid "Adjust"
+msgstr "Điều chỉnh"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -5095,6 +5112,13 @@ msgstr ""
"Yes - Bật trình tạo wall Arachne\n"
"No - Tắt trình tạo wall Arachne và đặt chế độ [Displacement] của Fuzzy Skin"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "Bán kính tai brim"
+
+msgid "Brim width"
+msgstr "Độ rộng brim"
+
# AI Translated
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "Chế độ xoắn ốc chỉ hoạt động khi vòng wall bằng 1, support bị tắt, phát hiện vón cục bằng dò bị tắt, số lớp vỏ trên bằng 0, mật độ infill thưa bằng 0 và loại timelapse là truyền thống."
@@ -5399,6 +5423,14 @@ msgstr "Không thể tạo G-code hiệu chỉnh"
msgid "Calibration error"
msgstr "Lỗi hiệu chỉnh"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "Máy in này không được cấu hình phần cứng mà điều khiển này cần."
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "Điều khiển này không được hỗ trợ trên máy in này."
+
# AI Translated
msgid "Network unavailable"
msgstr "Mạng không khả dụng"
@@ -6317,7 +6349,7 @@ msgstr "Thể tích:"
msgid "Size:"
msgstr "Kích thước:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "Đã tìm thấy xung đột đường đi G-code tại lớp %d, Z = %.2lfmm. Vui lòng tách các vật thể xung đột ra xa hơn (%s <-> %s)."
@@ -6516,6 +6548,10 @@ msgstr "Nhiều thiết bị"
msgid "Project"
msgstr "Dự án"
+# AI Translated
+msgid "Device (Web)"
+msgstr "Thiết bị (Web)"
+
msgid "Yes"
msgstr "Có"
@@ -8721,24 +8757,24 @@ msgid "Replaced with 3D files from directory:\n"
msgstr "Đã thay thế bằng file 3D từ thư mục:\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ Đã bỏ qua %1%: cùng một file.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ Đã bỏ qua %s: cùng một file.\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ Đã bỏ qua %1%: file không tồn tại.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ Đã bỏ qua %s: file không tồn tại.\n"
# AI Translated
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ Đã bỏ qua %1%: thay thế thất bại.\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ Đã bỏ qua %s: thay thế thất bại.\n"
# AI Translated
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ Đã thay thế %1%.\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ Đã thay thế %s.\n"
# AI Translated
msgid "Replaced volumes"
@@ -9532,6 +9568,18 @@ msgstr "Với tùy chọn này được bật, bạn có thể gửi tác vụ
msgid "Pop up to select filament grouping mode"
msgstr "Hiện cửa sổ để chọn chế độ nhóm filament"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "Số trang plugin hiển thị"
+
+# AI Translated
+msgid "pages"
+msgstr "trang"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "Số trang plugin được hiển thị dưới dạng tab cố định trước khi các trang còn lại được gom vào danh sách thả xuống ở tab cuối cùng."
+
# AI Translated
msgid "Behaviour"
msgstr "Hành vi"
@@ -9947,6 +9995,18 @@ msgstr "Hiện cài đặt sẵn không được hỗ trợ"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "Hiện các cài đặt sẵn không tương thích/không được hỗ trợ trong danh sách thả xuống máy in và filament. Không thể chọn các cài đặt sẵn này."
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(Thử nghiệm) Dùng tác nhân máy in thay cho máy chủ in"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"Định tuyến các tác vụ in của máy in không phải Bambu qua các tác nhân plugin máy in thay vì luồng tải lên máy chủ in cổ điển.\n"
+"Khi tắt, OrcaSlicer sẽ dùng hành vi máy chủ in cũ."
+
# AI Translated
msgid "Experimental Features"
msgstr "Tính năng thử nghiệm"
@@ -10223,10 +10283,26 @@ msgstr "Preset người dùng"
msgid "Preset Inside Project"
msgstr "Preset bên trong dự án"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "Sao chép tất cả các giá trị kế thừa từ preset cha vào preset này và gỡ bỏ quan hệ kế thừa. Các preset chỉ tương thích với preset cha có thể không còn được hỗ trợ."
+
# AI Translated
msgid "Detach from parent"
msgstr "Tách khỏi vật thể cha"
+# AI Translated
+msgid "Unique preset"
+msgstr "Preset độc lập"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "Preset cha"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "Preset này không kế thừa từ preset khác."
+
msgid "Name is unavailable."
msgstr "Tên không khả dụng."
@@ -11026,22 +11102,6 @@ msgstr "Bạn có chắc chắn muốn bật tùy chọn này?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "Mẫu infill thường được thiết kế để xử lý xoay tự động nhằm đảm bảo in đúng cách và đạt được hiệu quả dự kiến (ví dụ: Gyroid, Cubic). Xoay mẫu infill thưa hiện tại có thể dẫn đến support không đủ . Vui lòng tiến hành thận trọng và kiểm tra kỹ bất kỳ vấn đề in tiềm ẩn nào. Bạn có chắc chắn muốn bật tùy chọn này?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"Chiều cao lớp quá nhỏ.\n"
-"Nó sẽ được đặt thành min_layer_height\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "Chiều cao lớp vượt quá giới hạn trong Cài đặt máy in -> Extruder -> Giới hạn chiều cao lớp, điều này có thể gây ra vấn đề chất lượng in."
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "Điều chỉnh về phạm vi đặt tự động?\n"
-
-msgid "Adjust"
-msgstr "Điều chỉnh"
-
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."
msgstr "Tính năng thử nghiệm: Rút và cắt filament ở khoảng cách lớn hơn trong quá trình thay filament để giảm thiểu xả. Mặc dù có thể giảm đáng kể lượng xả, nó cũng có thể làm tăng nguy cơ tắc đầu phun hoặc các vấn đề in khác."
@@ -11235,6 +11295,9 @@ msgstr "Tìm thấy từ khóa dành riêng"
msgid "Setting Overrides"
msgstr "Ghi đè cài đặt"
+msgid "Retraction when switching material"
+msgstr "Rút khi chuyển vật liệu"
+
msgid "Basic information"
msgstr "Thông tin cơ bản"
@@ -11366,6 +11429,14 @@ msgstr "Hồ sơ quy trình tương thích"
msgid "Printable space"
msgstr "Không gian in"
+# AI Translated
+msgid "Printer Agent"
+msgstr "Tác nhân máy in"
+
+# AI Translated
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "Chọn cách triển khai tác nhân mạng cho việc giao tiếp với máy in. Các tác nhân khả dụng được đăng ký khi khởi động."
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -11498,9 +11569,6 @@ msgstr "Giới hạn chiều cao lớp"
msgid "Z-Hop"
msgstr "Z-Hop"
-msgid "Retraction when switching material"
-msgstr "Rút khi chuyển vật liệu"
-
# AI Translated
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
@@ -12950,6 +13018,10 @@ msgstr " quá gần vùng loại trừ, và sẽ gây va chạm.\n"
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr " ở quá gần vùng phát hiện vón cục, và sẽ gây ra va chạm.\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr " nằm một phần ngoài vùng in được, và không thể in.\n"
+
# AI Translated
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "Nhiệt độ đầu phun đã chọn không tương thích. Nhiệt độ đầu phun của mỗi filament phải nằm trong dải nhiệt độ đầu phun được khuyến nghị của các filament còn lại. Nếu không, có thể xảy ra tắc đầu phun hoặc hư hỏng máy in."
@@ -13291,10 +13363,6 @@ msgstr "Dùng 3MF thay cho G-code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "Bật tùy chọn này nếu máy in nhận file 3MF làm tác vụ in. Khi bật, Orca Slicer sẽ gửi file đã slice dưới dạng .gcode.3mf thay vì file .gcode thuần."
-# AI Translated
-msgid "Printer Agent"
-msgstr "Tác nhân máy in"
-
# AI Translated
msgid "Select the network agent implementation for printer communication."
msgstr "Chọn cách triển khai tác nhân mạng cho việc giao tiếp với máy in."
@@ -14002,9 +14070,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "Tốc độ của cầu bên trong. Nếu giá trị được biểu thị dưới dạng phần trăm, nó sẽ được tính dựa trên bridge_speed. Giá trị mặc định là 150%."
-msgid "Brim width"
-msgstr "Độ rộng brim"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "Khoảng cách từ model đến đường brim ngoài cùng."
@@ -14088,6 +14153,14 @@ msgstr ""
"Hình học sẽ được giảm trước khi phát hiện góc sắc. Tham số này chỉ ra độ dài tối thiểu của độ lệch cho việc giảm.\n"
"0 để vô hiệu hóa."
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "Tai brim chỉ ở mặt ngoài"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "Chỉ tạo tai chuột trên đường viền ngoài của mô hình, không tính các lỗ và phần khép kín."
+
msgid "upward compatible machine"
msgstr "máy tương thích ngược"
@@ -15305,6 +15378,14 @@ msgstr "TPMS-FK"
msgid "Gyroid"
msgstr "Gyroid"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "Hệ số làm mượt infill thưa"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "Điều chỉnh mức độ bo tròn các góc của infill thưa. 0% giữ nguyên đường đi sắc cạnh ban đầu, còn 100% tạo ra các đường cong lớn nhất có thể giữa các đường infill liền kề."
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "Gia tốc của infill bề mặt trên. Sử dụng giá trị thấp hơn có thể cải thiện chất lượng bề mặt trên."
@@ -15868,6 +15949,14 @@ msgstr "Loại G-code mà máy in tương thích."
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "Bỏ qua khối cấu hình G-code"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "Không ghi CONFIG_BLOCK (các cặp khóa/giá trị cấu hình của phần mềm slice) vào tệp G-code. Điều này có thể hữu ích với các máy in có firmware bị treo khi phân tích những dòng chú thích này (ví dụ Anycubic go-klipper). Lưu ý: tệp G-code sẽ không còn chứa các thiết lập slice, nên việc nhập lại tệp vào OrcaSlicer sẽ không khôi phục được cấu hình."
+
msgid "Pellet Modded Printer"
msgstr "Máy in Pellet đã chỉnh sửa"
@@ -16971,6 +17060,14 @@ msgstr "Rút dài khi đổi extruder"
msgid "Retraction distance when extruder change"
msgstr "Khoảng cách rút khi đổi extruder"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "Độ dài rút (Đổi công cụ)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "Khi rút được kích hoạt trước khi đổi công cụ, filament sẽ bị kéo lùi lại theo lượng đã chỉ định (độ dài được đo trên filament thô, trước khi nó đi vào extruder)."
+
msgid "Z-hop height"
msgstr "Chiều cao Z-hop"
@@ -17069,6 +17166,10 @@ msgstr "Độ dài bổ sung khi khởi động lại"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Khi rút được bù sau khi di chuyển, extruder sẽ đẩy lượng filament bổ sung này. Cài đặt này hiếm khi cần thiết."
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "Độ dài bổ sung khi khởi động lại (Đổi công cụ)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Khi rút được bù sau khi thay công cụ, extruder sẽ đẩy lượng filament bổ sung này."
@@ -17489,6 +17590,14 @@ msgstr "Đổi công cụ trên wipe tower"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Buộc đầu công cụ di chuyển đến wipe tower trước khi phát lệnh đổi công cụ (Tx). Chỉ liên quan đến máy in nhiều extruder (nhiều đầu công cụ) dùng wipe tower Loại 2. Theo mặc định, Orca bỏ qua bước di chuyển này trên máy nhiều đầu công cụ vì firmware tự xử lý việc đổi đầu, điều này có thể khiến lệnh Tx được phát ra ngay phía trên phần đang in. Hãy bật tùy chọn này nếu bạn muốn việc đổi công cụ luôn diễn ra phía trên wipe tower."
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "Chờ nhiệt độ tại wipe tower"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "Lấy công cụ mới mà không chờ nó đạt nhiệt độ in, di chuyển đến wipe tower và chờ nhiệt độ tại đó, ngay trước khi xả. Nhựa chảy ra trong lúc gia nhiệt sẽ rơi lên wipe tower thay vì lên mô hình, và quãng di chuyển diễn ra đồng thời với quá trình gia nhiệt. Chỉ áp dụng cho máy in nhiều extruder (nhiều đầu công cụ) dùng wipe tower loại 2. Firmware hoặc macro đổi công cụ không được tự chờ nhiệt độ. Khi tắt, lệnh chờ nhiệt độ sẽ được phát ngay sau lệnh đổi công cụ."
+
msgid "No sparse layers (beta)"
msgstr "Không có lớp thưa (beta)"
@@ -20849,10 +20958,6 @@ msgstr "Máy in vật lý"
msgid "Print Host upload"
msgstr "Tải lên máy chủ in"
-# AI Translated
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "Chọn cách triển khai tác nhân mạng cho việc giao tiếp với máy in. Các tác nhân khả dụng được đăng ký khi khởi động."
-
# AI Translated
msgid "Select a Flashforge printer"
msgstr "Chọn một máy in Flashforge"
@@ -21832,9 +21937,6 @@ msgstr "Đã xảy ra điều gì đó không mong đợi khi cố gắng đăng
msgid "User canceled."
msgstr "Người dùng đã hủy."
-msgid "Head diameter"
-msgstr "Đường kính đầu"
-
msgid "Max angle"
msgstr "Góc tối đa"
@@ -22702,6 +22804,22 @@ msgstr ""
"Tránh cong vênh\n"
"Bạn có biết rằng khi in vật liệu dễ cong vênh như ABS, tăng nhiệt độ bàn nóng một cách thích hợp có thể giảm xác suất cong vênh không?"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "Chiều cao lớp quá nhỏ.\n"
+#~ "Nó sẽ được đặt thành min_layer_height\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "Chiều cao lớp vượt quá giới hạn trong Cài đặt máy in -> Extruder -> Giới hạn chiều cao lớp, điều này có thể gây ra vấn đề chất lượng in."
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "Điều chỉnh về phạm vi đặt tự động?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Đường kính đầu"
+
#~ msgid "Print order within a single layer."
#~ msgstr "Thứ tự in trong một lớp đơn."
diff --git a/localization/i18n/zh_CN/OrcaSlicer_zh_CN.po b/localization/i18n/zh_CN/OrcaSlicer_zh_CN.po
index f7ca502c9e..133e0815a4 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: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: 2026-06-11 12:37-0300\n"
"Last-Translator: Handle \n"
"Language-Team: \n"
@@ -4574,6 +4574,23 @@ msgstr "当前腔体温度高于材料的安全温度,这可能导致材料软
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "最低机箱温度(%d℃)高于目标机箱温度(%d℃)。最低值是开始打印的阈值,此时机箱会持续朝目标温度加热,因此它不应超过目标值。该值将被限制到目标值。"
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "层高太小,将设置为最小值(%g mm)。"
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "层高超出了打印机设置 -> 挤出机 -> 层高限制中设置的范围,这可能导致打印质量问题。"
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "是否自动调整到限制值(%g mm)?"
+
+msgid "Adjust"
+msgstr "调整"
+
# AI Translated
msgid ""
"Layer height too small\n"
@@ -4696,6 +4713,13 @@ msgstr ""
"是 - 启用Arachne墙生成器\n"
"否 - 禁用Arachne墙生成器并将绒毛表面设置为[位移]模式"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "圆盘半径"
+
+msgid "Brim width"
+msgstr "Brim宽度"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "螺旋模式仅在壁环为 1、支撑被禁用、探测结块检测被禁用、顶部壳层为 0、稀疏填充密度为 0 且延时类型为传统时才起作用。"
@@ -4950,6 +4974,14 @@ msgstr "生成校准gcode失败"
msgid "Calibration error"
msgstr "校准错误"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "此打印机未配置该控件所需的硬件。"
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "此打印机不支持该控件。"
+
# AI Translated
msgid "Network unavailable"
msgstr "网络不可用"
@@ -5807,7 +5839,7 @@ msgstr "体积:"
msgid "Size:"
msgstr "尺寸:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "发现G-code路径在层%d,高度为%.2lf mm处有冲突。请将有冲突的对象分离得更远(%s <-> %s)。"
@@ -5988,6 +6020,10 @@ msgstr "多设备"
msgid "Project"
msgstr "项目"
+# AI Translated
+msgid "Device (Web)"
+msgstr "设备(网页)"
+
msgid "Yes"
msgstr "是"
@@ -8028,21 +8064,21 @@ msgstr "未选择替换目录"
msgid "Replaced with 3D files from directory:\n"
msgstr "替换为目录中的 3D 文件:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ 跳过 %1%:同一文件。\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ 跳过 %s:同一文件。\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ 跳过%1%:文件不存在。\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ 跳过%s:文件不存在。\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ 跳过%1%:替换失败。\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ 跳过%s:替换失败。\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ 替换了 %1%。\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ 替换了 %s。\n"
msgid "Replaced volumes"
msgstr "替换的卷"
@@ -8767,6 +8803,18 @@ msgstr "启用此选项后,您可以同时向多个设备发送任务并管理
msgid "Pop up to select filament grouping mode"
msgstr "弹出选择耗材丝分组模式"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "可见插件页数"
+
+# AI Translated
+msgid "pages"
+msgstr "页"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "作为固定标签显示的插件页数量,其余页面将折叠到最后一个标签的下拉菜单中。"
+
msgid "Behaviour"
msgstr "行为"
@@ -9121,6 +9169,18 @@ msgstr "显示不受支持的预设"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "在打印机和耗材下拉列表中显示不兼容/不受支持的预设。这些预设无法被选择。"
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(实验性)使用打印机代理替代打印主机"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"非 Bambu 打印机的打印任务将通过打印机插件代理发送,而不是经典的打印主机上传流程。\n"
+"禁用时,OrcaSlicer 使用旧的打印主机行为。"
+
# AI Translated
msgid "Experimental Features"
msgstr "实验性功能"
@@ -9385,9 +9445,25 @@ msgstr "用户预设"
msgid "Preset Inside Project"
msgstr "项目预设"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "将父预设继承的所有数值复制到当前预设,并解除继承关系。仅与父预设兼容的预设可能会变为不受支持。"
+
msgid "Detach from parent"
msgstr "与父级分离"
+# AI Translated
+msgid "Unique preset"
+msgstr "独立预设"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "父预设"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "此预设未继承自其它预设。"
+
msgid "Name is unavailable."
msgstr "名称不可用。"
@@ -10093,24 +10169,6 @@ msgstr "您确定要启用此选项吗?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "填充图案通常设计为自动处理旋转,以确保正确打印并实现其预期效果(例如,Gyroid、Cubic)。旋转当前的稀疏填充图案可能会导致支撑不足。请谨慎操作并彻底检查是否存在任何潜在的打印问题。您确定要启用此选项吗?"
-msgid ""
-"Layer height is too small.\n"
-"It will set to min_layer_height\n"
-msgstr ""
-"层高太小。\n"
-"将设置为min_layer_height\n"
-"层高太小。\n"
-"将自动设置为min_layer_height的值\n"
-
-msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
-msgstr "层高超出了打印机设置->挤出机->层高限制中的范围,这可能导致打印质量问题。"
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "是否自动调整到范围内?\n"
-
-msgid "Adjust"
-msgstr "调整"
-
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."
msgstr "实验性选项。在更换耗材丝时,将耗材丝回抽一段距离后再切断以最小化冲刷。虽然这可以显著减少冲刷,但也可能增加喷嘴堵塞或其他打印问题的风险。"
@@ -10303,6 +10361,9 @@ msgstr "检测到保留的关键字"
msgid "Setting Overrides"
msgstr "参数覆盖"
+msgid "Retraction when switching material"
+msgstr "切换材料时的回抽量"
+
msgid "Basic information"
msgstr "基础信息"
@@ -10433,6 +10494,12 @@ msgstr "兼容的切片配置"
msgid "Printable space"
msgstr "可打印区域"
+msgid "Printer Agent"
+msgstr "打印机代理"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "为打印机通信选择网络代理。可用的代理将在启动时列出。"
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10558,9 +10625,6 @@ msgstr "层高限制"
msgid "Z-Hop"
msgstr "Z轴抬升"
-msgid "Retraction when switching material"
-msgstr "切换材料时的回抽量"
-
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
"\n"
@@ -11911,6 +11975,10 @@ msgstr "离不可打印区域太近,会发生碰撞。\n"
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr "距离聚集检测区域太近,会引起碰撞。\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr "有部分超出可打印区域,无法打印。\n"
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "所选的喷嘴温度不兼容。每种耗材的喷嘴温度都必须落在其他耗材的推荐喷嘴温度范围内。否则可能会发生喷嘴堵塞或打印机损坏。"
@@ -12224,9 +12292,6 @@ msgstr "使用 3MF 代替 G-code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "如果打印机接受 3MF 文件作为打印任务,请启用此选项。启用后,Orca Slicer 将以 .gcode.3mf 格式发送切片文件,而不是普通的 .gcode 文件。"
-msgid "Printer Agent"
-msgstr "打印机代理"
-
msgid "Select the network agent implementation for printer communication."
msgstr "选择打印机通信的网络代理实施。"
@@ -12861,9 +12926,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "内部桥接的速度。如果该值以百分比表示,将基于桥接速度计算。默认值为150%。"
-msgid "Brim width"
-msgstr "Brim宽度"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "从模型到最外圈brim走线的距离"
@@ -12944,6 +13006,14 @@ msgstr ""
"在检测尖锐角度之前,几何形状将被简化。此参数表示简化的最小偏差长度。\n"
"设为0以停用"
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "仅外轮廓生成圆盘"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "仅在模型的外轮廓上生成圆盘,不包括孔洞和封闭区域。"
+
msgid "upward compatible machine"
msgstr "向上兼容的机器"
@@ -14119,6 +14189,14 @@ msgstr "TPMS-FK结构"
msgid "Gyroid"
msgstr "螺旋体"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "稀疏填充平滑系数"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "控制稀疏填充拐角的圆滑程度。0% 保持原有的尖锐路径,100% 则在相邻填充线之间生成尽可能大的圆弧。"
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "顶面填充的加速度。使用较低值可能会改善顶面质量"
@@ -14659,6 +14737,14 @@ msgstr "打印机兼容的G-code风格'"
msgid "Klipper"
msgstr "Klipper固件"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "跳过 G-code 配置块"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "不将 CONFIG_BLOCK(切片软件配置的键值对)写入 G-code 文件。这对固件在解析这些注释行时会崩溃的打印机(例如 Anycubic go-klipper)有帮助。注意:G-code 文件将不再包含切片设置,因此重新导入到 OrcaSlicer 时无法恢复配置。"
+
msgid "Pellet Modded Printer"
msgstr "颗粒改装打印机"
@@ -15704,6 +15790,14 @@ msgstr "更换挤出机时长回缩"
msgid "Retraction distance when extruder change"
msgstr "更换挤出机时的回缩距离"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "回抽长度(换工具头)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "在换工具头之前触发回抽时,耗材丝会按指定的长度回抽(长度是在耗材丝进入挤出机之前,以原始耗材丝测量的)。"
+
msgid "Z-hop height"
msgstr "Z抬升高度"
@@ -15797,6 +15891,10 @@ msgstr "额外回填长度"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "每当空驶后回抽被补偿时,挤出机将推入额外数量的耗材丝。很少需要此设置。"
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "额外回填长度(换工具头)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "当换色后回抽被补偿时,挤出机将推入额外数量的耗材丝。"
@@ -16211,6 +16309,14 @@ msgstr "在擦拭塔上换头"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "在发出换头命令 (Tx) 之前,强制打印头先移动到擦拭塔。仅与使用第 2 类擦拭塔的多挤出机(多打印头)打印机相关。默认情况下,Orca 会在多打印头机器上跳过此移动,因为固件会处理换头,这可能导致 Tx 命令在打印件上方发出。如果您希望换头命令始终在擦拭塔上方发出,请启用此选项。"
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "在擦拭塔上等待温度"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "拾取新工具头后不等待其达到打印温度,直接移动到擦拭塔,并在冲刷前于擦拭塔上等待温度。升温过程中渗出的耗材丝会落在擦拭塔上而不是模型上,且移动时间与加热过程重叠。仅适用于使用 2 型擦拭塔的多挤出机(多工具头)打印机。固件或换工具头宏本身不得等待温度。禁用时,等待温度的指令将在换工具头命令之后立即发出。"
+
msgid "No sparse layers (beta)"
msgstr "无稀疏层 (实验功能)"
@@ -19433,9 +19539,6 @@ msgstr "物理打印机"
msgid "Print Host upload"
msgstr "打印主机上传"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "为打印机通信选择网络代理。可用的代理将在启动时列出。"
-
msgid "Select a Flashforge printer"
msgstr "选择一台 Flashforge 打印机"
@@ -20325,9 +20428,6 @@ msgstr "在尝试登录时发生了异常,请重试。"
msgid "User canceled."
msgstr "用户已取消。"
-msgid "Head diameter"
-msgstr "Brim 直径"
-
msgid "Max angle"
msgstr "最大角度"
@@ -21111,6 +21211,24 @@ msgstr ""
"避免翘曲\n"
"您知道吗?打印ABS这类易翘曲材料时,适当提高热床温度可以降低翘曲的概率。"
+#~ msgid ""
+#~ "Layer height is too small.\n"
+#~ "It will set to min_layer_height\n"
+#~ msgstr ""
+#~ "层高太小。\n"
+#~ "将设置为min_layer_height\n"
+#~ "层高太小。\n"
+#~ "将自动设置为min_layer_height的值\n"
+
+#~ msgid "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+#~ msgstr "层高超出了打印机设置->挤出机->层高限制中的范围,这可能导致打印质量问题。"
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "是否自动调整到范围内?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "Brim 直径"
+
#~ msgid "Print order within a single layer."
#~ msgstr "同一层内的打印顺序"
diff --git a/localization/i18n/zh_TW/OrcaSlicer_zh_TW.po b/localization/i18n/zh_TW/OrcaSlicer_zh_TW.po
index 912396eea8..cf6a2519c3 100644
--- a/localization/i18n/zh_TW/OrcaSlicer_zh_TW.po
+++ b/localization/i18n/zh_TW/OrcaSlicer_zh_TW.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-07-29 17:40-0300\n"
+"POT-Creation-Date: 2026-08-19 14:07-0300\n"
"PO-Revision-Date: 2025-11-28 13:48-0600\n"
"Last-Translator: tntchn <15895303+tntchn@users.noreply.github.com>\n"
"Language-Team: \n"
@@ -4691,6 +4691,23 @@ msgstr "目前列印裝置內部溫度高於線材的安全溫度,可能會導
msgid "The minimal chamber temperature (%d℃) is higher than the target chamber temperature (%d℃). The minimal value is the threshold at which printing starts while the chamber keeps heating toward the target, so it should not exceed it. It will be clamped to the target."
msgstr "最低倉室溫度(%d℃)高於目標倉室溫度(%d℃)。最低值是列印開始的門檻,此時倉室會持續朝目標溫度加熱,因此不應超過目標值。系統會將其限制在目標值。"
+# AI Translated
+#, c-format, boost-format
+msgid "Layer height is too small. It will be set to the minimum (%g mm)."
+msgstr "層高過小,將設定為最小值(%g mm)。"
+
+# AI Translated
+msgid "Layer height is outside the limits set in Printer Settings -> Extruder -> Layer height limits, this may cause printing quality issues."
+msgstr "層高超出了印表裝置設定 -> 擠出機 -> 層高限制中設定的範圍,這可能會導致列印品質問題。"
+
+# AI Translated
+#, c-format, boost-format
+msgid "Adjust it to the limit (%g mm) automatically?"
+msgstr "是否自動調整至限制值(%g mm)?"
+
+msgid "Adjust"
+msgstr "調整"
+
msgid ""
"Layer height too small\n"
"It has been reset to 0.2"
@@ -4825,6 +4842,13 @@ msgstr ""
"是 - 啟用 Arachne Wall 產生器\n"
"否 - 停用 Arachne Wall 產生器,並將 Fuzzy Skin 設定為 [位移] 模式"
+# AI Translated
+msgid "Brim ear radius"
+msgstr "耳狀 Brim 半徑"
+
+msgid "Brim width"
+msgstr "Brim 寬度"
+
msgid "Spiral mode only works when wall loops is 1, support is disabled, clumping detection by probing is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."
msgstr "花瓶模式僅適用於牆體圈數為 1、停用支撐、停用偵測堵塞、頂部外殼層數為 0、稀疏填充密度為 0,且延時攝影類型為傳統模式時。"
@@ -5079,6 +5103,14 @@ msgstr "產生校正代碼失敗"
msgid "Calibration error"
msgstr "校正錯誤"
+# AI Translated
+msgid "This printer is not configured with the hardware this control needs."
+msgstr "此列印裝置未配置此控制項所需的硬體。"
+
+# AI Translated
+msgid "This control is not supported on this printer."
+msgstr "此列印裝置不支援此控制項。"
+
# AI Translated
msgid "Network unavailable"
msgstr "網路無法使用"
@@ -5936,7 +5968,7 @@ msgstr "體積:"
msgid "Size:"
msgstr "尺寸:"
-#, c-format, boost-format
+#, boost-format
msgid "Conflicts of G-code paths have been found at layer %d, Z = %.2lfmm. Please separate the conflicted objects farther (%s <-> %s)."
msgstr "發現 G-code 路徑在 %d 層,Z = %.2lf mm 處的衝突。請將有衝突的物件分離得更遠(%s <-> %s)。"
@@ -6118,6 +6150,10 @@ msgstr "多臺裝置"
msgid "Project"
msgstr "專案"
+# AI Translated
+msgid "Device (Web)"
+msgstr "裝置(網頁)"
+
msgid "Yes"
msgstr "是"
@@ -8193,21 +8229,21 @@ msgstr "未選擇替換的目錄"
msgid "Replaced with 3D files from directory:\n"
msgstr "已從目錄替換為 3D 檔案:\n"
-#, boost-format
-msgid "✖ Skipped %1%: same file.\n"
-msgstr "✖ 已跳過 %1%:相同檔案。\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: same file.\n"
+msgstr "✖ 已跳過 %s:相同檔案。\n"
-#, boost-format
-msgid "✖ Skipped %1%: file does not exist.\n"
-msgstr "✖ 已跳過 %1%:檔案不存在。\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: file does not exist.\n"
+msgstr "✖ 已跳過 %s:檔案不存在。\n"
-#, boost-format
-msgid "✖ Skipped %1%: failed to replace.\n"
-msgstr "✖ 已跳過 %1%:無法替換。\n"
+#, c-format, boost-format
+msgid "✖ Skipped %s: failed to replace.\n"
+msgstr "✖ 已跳過 %s:無法替換。\n"
-#, boost-format
-msgid "✔ Replaced %1%.\n"
-msgstr "✔ 已替換 %1%。\n"
+#, c-format, boost-format
+msgid "✔ Replaced %s.\n"
+msgstr "✔ 已替換 %s。\n"
msgid "Replaced volumes"
msgstr "已替換體積"
@@ -8940,6 +8976,18 @@ msgstr "啟用時可以同時傳送到並管理多個機臺。"
msgid "Pop up to select filament grouping mode"
msgstr "彈出視窗選擇線材分組模式"
+# AI Translated
+msgid "Visible plugin pages"
+msgstr "可見的外掛頁面數"
+
+# AI Translated
+msgid "pages"
+msgstr "頁"
+
+# AI Translated
+msgid "Number of plugin pages shown as fixed tabs before the remaining pages collapse into a dropdown on the last tab."
+msgstr "以固定分頁顯示的外掛頁面數量,其餘頁面會收合至最後一個分頁的下拉選單中。"
+
msgid "Behaviour"
msgstr "行為"
@@ -9294,6 +9342,18 @@ msgstr "顯示不支援的預設"
msgid "Show incompatible/unsupported presets in the printer and filament dropdown lists. These presets cannot be selected."
msgstr "在列印裝置和線材下拉選單中顯示不相容/不支援的預設。這些預設無法選取。"
+# AI Translated
+msgid "(Experimental) Use printer agents instead of print hosts"
+msgstr "(實驗性)使用列印裝置代理程式取代列印主機"
+
+# AI Translated
+msgid ""
+"Route print jobs for non-Bambu printers through printer plug-in agents instead of the classic print-host upload flow.\n"
+"When disabled, OrcaSlicer uses the legacy print-host behavior."
+msgstr ""
+"將非 Bambu 列印裝置的列印工作透過列印裝置外掛代理程式傳送,而非傳統的列印主機上傳流程。\n"
+"停用時,OrcaSlicer 會使用舊有的列印主機行為。"
+
# AI Translated
msgid "Experimental Features"
msgstr "實驗性功能"
@@ -9558,9 +9618,25 @@ msgstr "使用者預設"
msgid "Preset Inside Project"
msgstr "項目預設"
+# AI Translated
+msgid "Copies all inherited values from the parent into this preset and removes the parent relationship. Presets compatible only with the parent may become unsupported."
+msgstr "將父配置繼承的所有數值複製到目前的配置,並解除繼承關係。僅與父配置相容的配置可能會變成不受支援。"
+
msgid "Detach from parent"
msgstr "從父預設分離"
+# AI Translated
+msgid "Unique preset"
+msgstr "獨立配置"
+
+# AI Translated
+msgid "Parent preset"
+msgstr "父配置"
+
+# AI Translated
+msgid "This preset does not inherit from another preset."
+msgstr "此配置未繼承自其他配置。"
+
msgid "Name is unavailable."
msgstr "名稱不可用。"
@@ -10299,22 +10375,6 @@ msgstr "您確認要啟用此選項嗎?"
msgid "Infill patterns are typically designed to handle rotation automatically to ensure proper printing and achieve their intended effects (e.g., Gyroid, Cubic). Rotating the current sparse infill pattern may lead to insufficient support. Please proceed with caution and thoroughly check for any potential printing issues. Are you sure you want to enable this option?"
msgstr "填充模式通常設計為自動處理旋轉,以確保正確列印並實現其預期效果(例如:Gyroid、Cubic)。旋轉目前的稀疏填充模式可能會導致支撐不足。請謹慎操作,並仔細檢查任何潛在的列印問題。您確定要啟用此選項嗎?"
-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 height limits, this may cause printing quality issues."
-msgstr "層高超過了印表裝置設定 -> 擠出機 -> 層高限制,這可能會導致列印品質問題。"
-
-msgid "Adjust to the set range automatically?\n"
-msgstr "是否自動調整至設定範圍?\n"
-
-msgid "Adjust"
-msgstr "調整"
-
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."
msgstr "實驗性功能:在換線過程中以更大的距離收回並切斷線材,以減少沖洗量。儘管這可以顯著減少沖洗,但也可能增加噴嘴堵塞或其他列印問題的風險。"
@@ -10507,6 +10567,9 @@ msgstr "偵測到保留的關鍵字"
msgid "Setting Overrides"
msgstr "參數覆蓋"
+msgid "Retraction when switching material"
+msgstr "切換線材時的回抽量"
+
msgid "Basic information"
msgstr "基本資訊"
@@ -10637,6 +10700,12 @@ msgstr "相容的切片設定"
msgid "Printable space"
msgstr "可列印區域"
+msgid "Printer Agent"
+msgstr "列印裝置代理"
+
+msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
+msgstr "選擇列印裝置通訊的網路代理實施。可用代理在啟動時註冊。"
+
#. TRN: The first argument is the parameter's name; the second argument is its value.
#, boost-format
msgid "Invalid value provided for parameter %1%: %2%"
@@ -10762,9 +10831,6 @@ msgstr "層高限制"
msgid "Z-Hop"
msgstr "Z 軸抬升"
-msgid "Retraction when switching material"
-msgstr "切換線材時的回抽量"
-
msgid ""
"The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n"
"\n"
@@ -12113,6 +12179,10 @@ msgstr "離淨空區域太近,會發生碰撞。\n"
msgid " is too close to clumping detection area, and collisions will be caused.\n"
msgstr "離堵塞偵測區域太近,會發生碰撞。\n"
+# AI Translated
+msgid " is partially outside the printable area, and it cannot be printed.\n"
+msgstr "有部分超出可列印區域,無法列印。\n"
+
msgid "Selected nozzle temperatures are incompatible. Each filament's nozzle temperature must fall within the recommended nozzle temperature range of the other filaments. Otherwise, nozzle clogging or printer damage may occur."
msgstr "所選的噴嘴溫度不相容。每種線材的噴嘴溫度都必須落在其他線材的建議噴嘴溫度範圍內。否則可能會發生噴嘴堵塞或列印裝置損壞。"
@@ -12426,9 +12496,6 @@ msgstr "使用 3MF 取代 G-code"
msgid "Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file."
msgstr "若列印裝置接受 3MF 檔案作為列印作業,請啟用此選項。啟用後,Orca Slicer 會將切片後的檔案以 .gcode.3mf 形式傳送,而非單純的 .gcode 檔案。"
-msgid "Printer Agent"
-msgstr "列印裝置代理"
-
msgid "Select the network agent implementation for printer communication."
msgstr "選擇用於列印裝置通訊的網路代理實作。"
@@ -13074,9 +13141,6 @@ msgstr ""
msgid "Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%."
msgstr "內部橋接速度。如果該值以百分比表示,將基於 bridge_speed 進行計算。預設值為 150%。"
-msgid "Brim width"
-msgstr "Brim 寬度"
-
msgid "This is the distance from the model to the outermost brim line."
msgstr "從模型到 Brim 最外圈的距離"
@@ -13157,6 +13221,14 @@ msgstr ""
"在偵測尖銳角度之前,幾何形狀將被簡化。此參數表示簡化的最小偏差長度。\n"
"設為 0 以停用"
+# AI Translated
+msgid "Brim ears outer only"
+msgstr "僅外輪廓產生耳狀 Brim"
+
+# AI Translated
+msgid "Generate mouse ears only on the outer contour of the model, excluding holes and enclosed sections."
+msgstr "僅在模型的外輪廓上產生耳狀 Brim,不包含孔洞與封閉區域。"
+
msgid "upward compatible machine"
msgstr "向上相容的裝置"
@@ -14316,6 +14388,14 @@ msgstr "TPMS-FK結構"
msgid "Gyroid"
msgstr "螺旋體"
+# AI Translated
+msgid "Sparse infill smooth factor"
+msgstr "稀疏填充平滑係數"
+
+# AI Translated
+msgid "Controls how strongly sparse infill corners are rounded. 0% keeps the original sharp path, while 100% produces the largest possible curves between adjacent infill lines."
+msgstr "控制稀疏填充轉角的圓滑程度。0% 保持原有的銳利路徑,100% 則在相鄰填充線之間產生盡可能大的圓弧。"
+
msgid "This is the acceleration of top surface infill. Using a lower value may improve top surface quality."
msgstr "頂面填充的加速度。使用較低值可能會改善頂面列印品質"
@@ -14856,6 +14936,14 @@ msgstr "列印裝置相容的 G-code 樣式"
msgid "Klipper"
msgstr "Klipper"
+# AI Translated
+msgid "Skip G-code config block"
+msgstr "略過 G-code 設定區塊"
+
+# AI Translated
+msgid "Do not write the CONFIG_BLOCK (slicer configuration key/value pairs) into the G-code file. This can help with printers whose firmware crashes when parsing these comment lines (e.g. Anycubic go-klipper). Note: the G-code file will no longer contain slicer settings, so importing it back into OrcaSlicer will not restore the configuration."
+msgstr "不將 CONFIG_BLOCK(切片軟體設定的鍵值對)寫入 G-code 檔案。這對於韌體在解析這些註解行時會當機的列印裝置(例如 Anycubic go-klipper)有幫助。注意:G-code 檔案將不再包含切片設定,因此重新匯入 OrcaSlicer 時無法還原設定。"
+
msgid "Pellet Modded Printer"
msgstr "顆粒改裝列印裝置"
@@ -15909,6 +15997,14 @@ msgstr "更換擠出機時長回抽"
msgid "Retraction distance when extruder change"
msgstr "更換擠出機時的回抽距離"
+# AI Translated
+msgid "Retraction Length (Toolchange)"
+msgstr "回抽長度(換工具)"
+
+# AI Translated
+msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
+msgstr "在換工具之前觸發回抽時,線材會依指定的長度回抽(長度是在線材進入擠出機之前,以原始線材測量)。"
+
msgid "Z-hop height"
msgstr "Z 抬升高度"
@@ -16002,6 +16098,10 @@ msgstr "額外回填長度"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "每當空駛後回抽被補償時,擠出機將推入額外長度的線材。很少需要此設定。"
+# AI Translated
+msgid "Extra length on restart (Toolchange)"
+msgstr "額外回填長度(換工具)"
+
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "當換色後回抽被補償時,擠出機將推入額外長度的線材。"
@@ -16405,6 +16505,14 @@ msgstr "在換料塔上換刀"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "強制工具頭在發出換刀指令 (Tx) 之前先移動到換料塔。僅適用於使用 Type 2 換料塔的多擠出機(多工具頭)列印裝置。預設情況下,Orca 會在多工具頭機器上略過此空駛,因為韌體會處理工具頭交換,這可能導致 Tx 指令在已列印零件上方發出。若您希望換刀一律改在換料塔上方發出,請啟用此選項。"
+# AI Translated
+msgid "Wait for temperature on wipe tower"
+msgstr "在換料塔上等待溫度"
+
+# AI Translated
+msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
+msgstr "取用新工具時不等待其達到列印溫度,先移動到換料塔,並在清理前於換料塔上等待溫度。升溫過程中滲出的線材會落在換料塔上而非模型上,且移動時間與加熱過程重疊。僅適用於使用第 2 型換料塔的多擠出機(多工具頭)列印裝置。韌體或換工具巨集本身不得等待溫度。停用時,等待溫度的指令會在換工具命令之後立即發出。"
+
msgid "No sparse layers (beta)"
msgstr "取消稀疏層(Beta)"
@@ -19622,9 +19730,6 @@ msgstr "實體列印裝置"
msgid "Print Host upload"
msgstr "列印主機上傳"
-msgid "Select the network agent implementation for printer communication. Available agents are registered at startup."
-msgstr "選擇列印裝置通訊的網路代理實施。可用代理在啟動時註冊。"
-
msgid "Select a Flashforge printer"
msgstr "選取 Flashforge 列印裝置"
@@ -20516,9 +20621,6 @@ msgstr "嘗試登入時發生了意外錯誤,請再試一次。"
msgid "User canceled."
msgstr "使用者取消。"
-msgid "Head diameter"
-msgstr "頭直徑"
-
msgid "Max angle"
msgstr "最大角度"
@@ -21323,6 +21425,22 @@ msgstr ""
"避免翹曲\n"
"您知道嗎?當列印容易翹曲的材料(如 ABS)時,適當提高熱床溫度可以降低翹曲的機率。"
+#~ 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 height limits, this may cause printing quality issues."
+#~ msgstr "層高超過了印表裝置設定 -> 擠出機 -> 層高限制,這可能會導致列印品質問題。"
+
+#~ msgid "Adjust to the set range automatically?\n"
+#~ msgstr "是否自動調整至設定範圍?\n"
+
+#~ msgid "Head diameter"
+#~ msgstr "頭直徑"
+
#~ msgid "Print order within a single layer."
#~ msgstr "每一層的列印順序"
diff --git a/resources/profiles/Creality.json b/resources/profiles/Creality.json
index 8e91974b9c..077ee827e5 100644
--- a/resources/profiles/Creality.json
+++ b/resources/profiles/Creality.json
@@ -1,6 +1,6 @@
{
"name": "Creality",
- "version": "02.03.02.75",
+ "version": "02.03.02.76",
"force_update": "0",
"description": "Creality configurations",
"machine_model_list": [
diff --git a/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1 (0.4 nozzle).json b/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1 (0.4 nozzle).json
index 8bf73caf41..7300c45c8d 100644
--- a/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1 (0.4 nozzle).json
+++ b/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1 (0.4 nozzle).json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1 Max_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1 Max_CFS-C 0.4 nozzle.json
index 5ff07e264b..adc86b4768 100644
--- a/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1 Max_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1 Max_CFS-C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1C 0.4 nozzle.json b/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1C 0.4 nozzle.json
index fbc953f420..976756a212 100644
--- a/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1C_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1C_CFS-C 0.4 nozzle.json
index bacd88b9f3..6748914ae7 100644
--- a/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1C_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1C_CFS-C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1Max (0.4 nozzle).json b/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1Max (0.4 nozzle).json
index 1083550af8..f3f37caca7 100644
--- a/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1Max (0.4 nozzle).json
+++ b/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1Max (0.4 nozzle).json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1_CFS-C 0.4 nozzle.json
index 3e98181430..0144a35372 100644
--- a/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.08mm SuperDetail @Creality K1_CFS-C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 (0.4 nozzle).json b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 (0.4 nozzle).json
index dba47d76a5..d6caa5e775 100644
--- a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 (0.4 nozzle).json
+++ b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 (0.4 nozzle).json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 Max_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 Max_CFS-C 0.4 nozzle.json
index ef22dc37ab..a1896fa377 100644
--- a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 Max_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 Max_CFS-C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 SE 0.4 nozzle.json b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 SE 0.4 nozzle.json
index 2ac16fb484..087d90a584 100644
--- a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 SE 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 SE 0.4 nozzle.json
@@ -38,7 +38,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 SE_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 SE_CFS-C 0.4 nozzle.json
index b247bece36..62708a822a 100644
--- a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 SE_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1 SE_CFS-C 0.4 nozzle.json
@@ -38,7 +38,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1C 0.4 nozzle.json b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1C 0.4 nozzle.json
index b1d6201ba7..5deb17002e 100644
--- a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1C_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1C_CFS-C 0.4 nozzle.json
index 44dc07e070..2365a82d31 100644
--- a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1C_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1C_CFS-C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1Max (0.4 nozzle).json b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1Max (0.4 nozzle).json
index 0b4ae9c777..02507c806f 100644
--- a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1Max (0.4 nozzle).json
+++ b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1Max (0.4 nozzle).json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1_CFS-C 0.4 nozzle.json
index 6b201d6f4d..cda928b2e7 100644
--- a/resources/profiles/Creality/process/0.16mm Optimal @Creality K1_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.16mm Optimal @Creality K1_CFS-C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.20mm Standard @Creality K1 (0.4 nozzle).json b/resources/profiles/Creality/process/0.20mm Standard @Creality K1 (0.4 nozzle).json
index 42e894eecd..eaaeb4529f 100644
--- a/resources/profiles/Creality/process/0.20mm Standard @Creality K1 (0.4 nozzle).json
+++ b/resources/profiles/Creality/process/0.20mm Standard @Creality K1 (0.4 nozzle).json
@@ -128,7 +128,7 @@
"detect_narrow_internal_solid_infill": "1",
"dont_filter_internal_bridges": "disabled",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enforce_support_layers": "0",
"ensure_vertical_shell_thickness": "ensure_all",
diff --git a/resources/profiles/Creality/process/0.20mm Standard @Creality K1 Max_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.20mm Standard @Creality K1 Max_CFS-C 0.4 nozzle.json
index f765f850c8..1a4bd4a3f3 100644
--- a/resources/profiles/Creality/process/0.20mm Standard @Creality K1 Max_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.20mm Standard @Creality K1 Max_CFS-C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.20mm Standard @Creality K1 SE 0.4.json b/resources/profiles/Creality/process/0.20mm Standard @Creality K1 SE 0.4.json
index 003a8287ae..19b01a9964 100644
--- a/resources/profiles/Creality/process/0.20mm Standard @Creality K1 SE 0.4.json
+++ b/resources/profiles/Creality/process/0.20mm Standard @Creality K1 SE 0.4.json
@@ -124,7 +124,7 @@
"detect_narrow_internal_solid_infill": "1",
"dont_filter_internal_bridges": "disabled",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enforce_support_layers": "0",
"ensure_vertical_shell_thickness": "ensure_all",
diff --git a/resources/profiles/Creality/process/0.20mm Standard @Creality K1 SE_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.20mm Standard @Creality K1 SE_CFS-C 0.4 nozzle.json
index 85de09803b..b7365760f4 100644
--- a/resources/profiles/Creality/process/0.20mm Standard @Creality K1 SE_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.20mm Standard @Creality K1 SE_CFS-C 0.4 nozzle.json
@@ -38,7 +38,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.20mm Standard @Creality K1C 0.4 nozzle.json b/resources/profiles/Creality/process/0.20mm Standard @Creality K1C 0.4 nozzle.json
index c33dc038f5..aa8e7b440a 100644
--- a/resources/profiles/Creality/process/0.20mm Standard @Creality K1C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.20mm Standard @Creality K1C 0.4 nozzle.json
@@ -128,7 +128,7 @@
"detect_narrow_internal_solid_infill": "1",
"dont_filter_internal_bridges": "disabled",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enforce_support_layers": "0",
"ensure_vertical_shell_thickness": "ensure_all",
diff --git a/resources/profiles/Creality/process/0.20mm Standard @Creality K1C_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.20mm Standard @Creality K1C_CFS-C 0.4 nozzle.json
index 7957e09303..882703434d 100644
--- a/resources/profiles/Creality/process/0.20mm Standard @Creality K1C_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.20mm Standard @Creality K1C_CFS-C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.20mm Standard @Creality K1Max (0.4 nozzle).json b/resources/profiles/Creality/process/0.20mm Standard @Creality K1Max (0.4 nozzle).json
index cea8966d46..51ada298d8 100644
--- a/resources/profiles/Creality/process/0.20mm Standard @Creality K1Max (0.4 nozzle).json
+++ b/resources/profiles/Creality/process/0.20mm Standard @Creality K1Max (0.4 nozzle).json
@@ -128,7 +128,7 @@
"detect_narrow_internal_solid_infill": "1",
"dont_filter_internal_bridges": "disabled",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enforce_support_layers": "0",
"ensure_vertical_shell_thickness": "ensure_all",
diff --git a/resources/profiles/Creality/process/0.20mm Standard @Creality K1_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.20mm Standard @Creality K1_CFS-C 0.4 nozzle.json
index a617d8e2b4..85dd6bbf3d 100644
--- a/resources/profiles/Creality/process/0.20mm Standard @Creality K1_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.20mm Standard @Creality K1_CFS-C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.24mm Draft @Creality K1 (0.4 nozzle).json b/resources/profiles/Creality/process/0.24mm Draft @Creality K1 (0.4 nozzle).json
index 051a14e1d4..ce0abbf5ac 100644
--- a/resources/profiles/Creality/process/0.24mm Draft @Creality K1 (0.4 nozzle).json
+++ b/resources/profiles/Creality/process/0.24mm Draft @Creality K1 (0.4 nozzle).json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.24mm Draft @Creality K1 Max_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.24mm Draft @Creality K1 Max_CFS-C 0.4 nozzle.json
index 8170eb02d6..afd921a54b 100644
--- a/resources/profiles/Creality/process/0.24mm Draft @Creality K1 Max_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.24mm Draft @Creality K1 Max_CFS-C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.24mm Draft @Creality K1 SE 0.4 nozzle.json b/resources/profiles/Creality/process/0.24mm Draft @Creality K1 SE 0.4 nozzle.json
index 349601c857..34a577c896 100644
--- a/resources/profiles/Creality/process/0.24mm Draft @Creality K1 SE 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.24mm Draft @Creality K1 SE 0.4 nozzle.json
@@ -38,7 +38,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.24mm Draft @Creality K1 SE_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.24mm Draft @Creality K1 SE_CFS-C 0.4 nozzle.json
index 40ecd965b1..3522e46d5a 100644
--- a/resources/profiles/Creality/process/0.24mm Draft @Creality K1 SE_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.24mm Draft @Creality K1 SE_CFS-C 0.4 nozzle.json
@@ -38,7 +38,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.24mm Draft @Creality K1C 0.4 nozzle.json b/resources/profiles/Creality/process/0.24mm Draft @Creality K1C 0.4 nozzle.json
index ef58869e10..697593d8c4 100644
--- a/resources/profiles/Creality/process/0.24mm Draft @Creality K1C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.24mm Draft @Creality K1C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.24mm Draft @Creality K1C_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.24mm Draft @Creality K1C_CFS-C 0.4 nozzle.json
index af9f2c5b86..b3bf816290 100644
--- a/resources/profiles/Creality/process/0.24mm Draft @Creality K1C_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.24mm Draft @Creality K1C_CFS-C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.24mm Draft @Creality K1Max (0.4 nozzle).json b/resources/profiles/Creality/process/0.24mm Draft @Creality K1Max (0.4 nozzle).json
index cea238f1f3..9f886804e3 100644
--- a/resources/profiles/Creality/process/0.24mm Draft @Creality K1Max (0.4 nozzle).json
+++ b/resources/profiles/Creality/process/0.24mm Draft @Creality K1Max (0.4 nozzle).json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.24mm Draft @Creality K1_CFS-C 0.4 nozzle.json b/resources/profiles/Creality/process/0.24mm Draft @Creality K1_CFS-C 0.4 nozzle.json
index 5f91995b41..16ebf21b9a 100644
--- a/resources/profiles/Creality/process/0.24mm Draft @Creality K1_CFS-C 0.4 nozzle.json
+++ b/resources/profiles/Creality/process/0.24mm Draft @Creality K1_CFS-C 0.4 nozzle.json
@@ -39,7 +39,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "1",
"enable_support": "0",
diff --git a/resources/profiles/Creality/process/0.30mm Standard @Creality K1 (0.6 nozzle).json b/resources/profiles/Creality/process/0.30mm Standard @Creality K1 (0.6 nozzle).json
index 1259ac5186..a4bd5b2abc 100644
--- a/resources/profiles/Creality/process/0.30mm Standard @Creality K1 (0.6 nozzle).json
+++ b/resources/profiles/Creality/process/0.30mm Standard @Creality K1 (0.6 nozzle).json
@@ -126,7 +126,7 @@
"detect_narrow_internal_solid_infill": "1",
"dont_filter_internal_bridges": "disabled",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enforce_support_layers": "0",
"ensure_vertical_shell_thickness": "ensure_all",
diff --git a/resources/profiles/Creality/process/0.30mm Standard @Creality K1 SE 0.6 nozzle.json b/resources/profiles/Creality/process/0.30mm Standard @Creality K1 SE 0.6 nozzle.json
index 81e54598e3..d4073f4221 100644
--- a/resources/profiles/Creality/process/0.30mm Standard @Creality K1 SE 0.6 nozzle.json
+++ b/resources/profiles/Creality/process/0.30mm Standard @Creality K1 SE 0.6 nozzle.json
@@ -38,7 +38,7 @@
"draft_shield": "disabled",
"elefant_foot_compensation": "0.15",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enable_prime_tower": "0",
"enable_support": "0",
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 71ecb52e77..3f86d9e613 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
@@ -126,7 +126,7 @@
"detect_narrow_internal_solid_infill": "1",
"dont_filter_internal_bridges": "disabled",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enforce_support_layers": "0",
"ensure_vertical_shell_thickness": "ensure_all",
diff --git a/resources/profiles/Creality/process/0.30mm Standard @Creality K1Max (0.6 nozzle).json b/resources/profiles/Creality/process/0.30mm Standard @Creality K1Max (0.6 nozzle).json
index db9e4b1539..54ac0870a4 100644
--- a/resources/profiles/Creality/process/0.30mm Standard @Creality K1Max (0.6 nozzle).json
+++ b/resources/profiles/Creality/process/0.30mm Standard @Creality K1Max (0.6 nozzle).json
@@ -126,7 +126,7 @@
"detect_narrow_internal_solid_infill": "1",
"dont_filter_internal_bridges": "disabled",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enforce_support_layers": "0",
"ensure_vertical_shell_thickness": "ensure_all",
diff --git a/resources/profiles/Creality/process/0.40mm Standard @Creality K1 (0.8 nozzle).json b/resources/profiles/Creality/process/0.40mm Standard @Creality K1 (0.8 nozzle).json
index 5f61b218bc..2de391b8ad 100644
--- a/resources/profiles/Creality/process/0.40mm Standard @Creality K1 (0.8 nozzle).json
+++ b/resources/profiles/Creality/process/0.40mm Standard @Creality K1 (0.8 nozzle).json
@@ -126,7 +126,7 @@
"detect_narrow_internal_solid_infill": "1",
"dont_filter_internal_bridges": "disabled",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enforce_support_layers": "0",
"ensure_vertical_shell_thickness": "ensure_all",
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 d5d5d62cda..5cd1a9cb6a 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
@@ -126,7 +126,7 @@
"detect_narrow_internal_solid_infill": "1",
"dont_filter_internal_bridges": "disabled",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enforce_support_layers": "0",
"ensure_vertical_shell_thickness": "ensure_all",
diff --git a/resources/profiles/Creality/process/0.40mm Standard @Creality K1Max (0.8 nozzle).json b/resources/profiles/Creality/process/0.40mm Standard @Creality K1Max (0.8 nozzle).json
index 793c6aa43e..c1c968cbb6 100644
--- a/resources/profiles/Creality/process/0.40mm Standard @Creality K1Max (0.8 nozzle).json
+++ b/resources/profiles/Creality/process/0.40mm Standard @Creality K1Max (0.8 nozzle).json
@@ -126,7 +126,7 @@
"detect_narrow_internal_solid_infill": "1",
"dont_filter_internal_bridges": "disabled",
"elefant_foot_compensation_layers": "1",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"enable_overhang_speed": "1",
"enforce_support_layers": "0",
"ensure_vertical_shell_thickness": "ensure_all",
diff --git a/resources/profiles/Custom/filament/Generic ABS @MyToolChanger.json b/resources/profiles/Custom/filament/Generic ABS @MyToolChanger.json
index 1683513dbd..bf48e0488b 100644
--- a/resources/profiles/Custom/filament/Generic ABS @MyToolChanger.json
+++ b/resources/profiles/Custom/filament/Generic ABS @MyToolChanger.json
@@ -24,12 +24,6 @@
"filament_loading_speed_start": [
"50"
],
- "filament_multitool_ramming": [
- "1"
- ],
- "filament_multitool_ramming_flow": [
- "40"
- ],
"filament_stamping_distance": [
"45"
],
diff --git a/resources/profiles/Custom/filament/Generic ASA @MyToolChanger.json b/resources/profiles/Custom/filament/Generic ASA @MyToolChanger.json
index 5cc46deb7e..ad26608bff 100644
--- a/resources/profiles/Custom/filament/Generic ASA @MyToolChanger.json
+++ b/resources/profiles/Custom/filament/Generic ASA @MyToolChanger.json
@@ -24,12 +24,6 @@
"filament_loading_speed_start": [
"50"
],
- "filament_multitool_ramming": [
- "1"
- ],
- "filament_multitool_ramming_flow": [
- "40"
- ],
"filament_stamping_distance": [
"45"
],
diff --git a/resources/profiles/Custom/filament/Generic PA @MyToolChanger.json b/resources/profiles/Custom/filament/Generic PA @MyToolChanger.json
index 0c8918427d..d710282360 100644
--- a/resources/profiles/Custom/filament/Generic PA @MyToolChanger.json
+++ b/resources/profiles/Custom/filament/Generic PA @MyToolChanger.json
@@ -24,12 +24,6 @@
"filament_loading_speed_start": [
"50"
],
- "filament_multitool_ramming": [
- "1"
- ],
- "filament_multitool_ramming_flow": [
- "40"
- ],
"filament_stamping_distance": [
"45"
],
diff --git a/resources/profiles/Custom/filament/Generic PA-CF @MyToolChanger.json b/resources/profiles/Custom/filament/Generic PA-CF @MyToolChanger.json
index a7d86885ef..481fd04152 100644
--- a/resources/profiles/Custom/filament/Generic PA-CF @MyToolChanger.json
+++ b/resources/profiles/Custom/filament/Generic PA-CF @MyToolChanger.json
@@ -24,12 +24,6 @@
"filament_loading_speed_start": [
"50"
],
- "filament_multitool_ramming": [
- "1"
- ],
- "filament_multitool_ramming_flow": [
- "40"
- ],
"filament_stamping_distance": [
"45"
],
diff --git a/resources/profiles/Custom/filament/Generic PC @MyToolChanger.json b/resources/profiles/Custom/filament/Generic PC @MyToolChanger.json
index d80b197394..47f175c277 100644
--- a/resources/profiles/Custom/filament/Generic PC @MyToolChanger.json
+++ b/resources/profiles/Custom/filament/Generic PC @MyToolChanger.json
@@ -25,12 +25,6 @@
"filament_loading_speed_start": [
"50"
],
- "filament_multitool_ramming": [
- "1"
- ],
- "filament_multitool_ramming_flow": [
- "40"
- ],
"filament_stamping_distance": [
"45"
],
diff --git a/resources/profiles/Custom/filament/Generic PETG @MyToolChanger.json b/resources/profiles/Custom/filament/Generic PETG @MyToolChanger.json
index 693551c428..95e47a32a8 100644
--- a/resources/profiles/Custom/filament/Generic PETG @MyToolChanger.json
+++ b/resources/profiles/Custom/filament/Generic PETG @MyToolChanger.json
@@ -25,12 +25,6 @@
"filament_loading_speed_start": [
"50"
],
- "filament_multitool_ramming": [
- "1"
- ],
- "filament_multitool_ramming_flow": [
- "40"
- ],
"filament_stamping_distance": [
"45"
],
diff --git a/resources/profiles/Custom/filament/Generic PLA @MyToolChanger.json b/resources/profiles/Custom/filament/Generic PLA @MyToolChanger.json
index cf1db6e225..b8fe088325 100644
--- a/resources/profiles/Custom/filament/Generic PLA @MyToolChanger.json
+++ b/resources/profiles/Custom/filament/Generic PLA @MyToolChanger.json
@@ -25,12 +25,6 @@
"filament_loading_speed_start": [
"50"
],
- "filament_multitool_ramming": [
- "1"
- ],
- "filament_multitool_ramming_flow": [
- "40"
- ],
"filament_stamping_distance": [
"45"
],
diff --git a/resources/profiles/Custom/filament/Generic PLA-CF @MyToolChanger.json b/resources/profiles/Custom/filament/Generic PLA-CF @MyToolChanger.json
index 6ae729d622..4a766aa3ef 100644
--- a/resources/profiles/Custom/filament/Generic PLA-CF @MyToolChanger.json
+++ b/resources/profiles/Custom/filament/Generic PLA-CF @MyToolChanger.json
@@ -25,12 +25,6 @@
"filament_loading_speed_start": [
"50"
],
- "filament_multitool_ramming": [
- "1"
- ],
- "filament_multitool_ramming_flow": [
- "40"
- ],
"filament_stamping_distance": [
"45"
],
diff --git a/resources/profiles/Custom/filament/Generic PVA @MyToolChanger.json b/resources/profiles/Custom/filament/Generic PVA @MyToolChanger.json
index ccb6d16c73..6fe168abcc 100644
--- a/resources/profiles/Custom/filament/Generic PVA @MyToolChanger.json
+++ b/resources/profiles/Custom/filament/Generic PVA @MyToolChanger.json
@@ -25,12 +25,6 @@
"filament_loading_speed_start": [
"50"
],
- "filament_multitool_ramming": [
- "1"
- ],
- "filament_multitool_ramming_flow": [
- "40"
- ],
"filament_stamping_distance": [
"45"
],
diff --git a/resources/profiles/Custom/machine/fdm_klipper_common.json b/resources/profiles/Custom/machine/fdm_klipper_common.json
index 36f3fe13c6..a0ee0f1a47 100644
--- a/resources/profiles/Custom/machine/fdm_klipper_common.json
+++ b/resources/profiles/Custom/machine/fdm_klipper_common.json
@@ -116,7 +116,7 @@
"deretraction_speed": [
"30"
],
- "z_hop_types": "Normal Lift",
+ "z_hop_types": "Slope Lift",
"silent_mode": "0",
"single_extruder_multi_material": "1",
"change_filament_gcode": "",
diff --git a/resources/profiles/Custom/machine/fdm_repetier_common.json b/resources/profiles/Custom/machine/fdm_repetier_common.json
index 1171559086..b36b716e4e 100644
--- a/resources/profiles/Custom/machine/fdm_repetier_common.json
+++ b/resources/profiles/Custom/machine/fdm_repetier_common.json
@@ -118,7 +118,7 @@
"deretraction_speed": [
"30"
],
- "z_hop_types": "Normal Lift",
+ "z_hop_types": "Slope Lift",
"silent_mode": "0",
"single_extruder_multi_material": "1",
"change_filament_gcode": "",
diff --git a/resources/profiles/Custom/machine/fdm_rrf_common.json b/resources/profiles/Custom/machine/fdm_rrf_common.json
index 68708490a1..2fc9df9a3d 100644
--- a/resources/profiles/Custom/machine/fdm_rrf_common.json
+++ b/resources/profiles/Custom/machine/fdm_rrf_common.json
@@ -116,7 +116,7 @@
"deretraction_speed": [
"30"
],
- "z_hop_types": "Normal Lift",
+ "z_hop_types": "Slope Lift",
"silent_mode": "0",
"single_extruder_multi_material": "1",
"change_filament_gcode": "",
diff --git a/resources/profiles/Custom/machine/fdm_toolchanger_common.json b/resources/profiles/Custom/machine/fdm_toolchanger_common.json
index ff702d0034..55f1b2cadb 100644
--- a/resources/profiles/Custom/machine/fdm_toolchanger_common.json
+++ b/resources/profiles/Custom/machine/fdm_toolchanger_common.json
@@ -6,6 +6,7 @@
"instantiation": "false",
"gcode_flavor": "klipper",
"single_extruder_multi_material": "0",
+ "wait_for_temp_on_wipe_tower": "1",
"default_filament_profile": [
"Generic PLA @MyToolChanger"
],
@@ -172,11 +173,11 @@
"0.4"
],
"z_hop_types": [
- "Normal Lift",
- "Normal Lift",
- "Normal Lift",
- "Normal Lift",
- "Normal Lift"
+ "Slope Lift",
+ "Slope Lift",
+ "Slope Lift",
+ "Slope Lift",
+ "Slope Lift"
],
"purge_in_prime_tower": "0",
"machine_pause_gcode": "M601",
diff --git a/resources/profiles/OrcaFilamentLibrary.json b/resources/profiles/OrcaFilamentLibrary.json
index cd9abd8b0d..9701c6eb0d 100644
--- a/resources/profiles/OrcaFilamentLibrary.json
+++ b/resources/profiles/OrcaFilamentLibrary.json
@@ -1,6 +1,6 @@
{
"name": "OrcaFilamentLibrary",
- "version": "02.04.00.03",
+ "version": "02.04.00.04",
"force_update": "0",
"description": "Orca Filament Library",
"filament_list": [
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PET-CF @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PET-CF @base.json
index 5a4e910502..c455832b9c 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PET-CF @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PET-CF @base.json
@@ -36,6 +36,9 @@
"filament_max_volumetric_speed": [
"8"
],
+ "filament_multitool_ramming_flow": [
+ "8"
+ ],
"filament_type": [
"PET-CF"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PETG Basic @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PETG Basic @base.json
index 9117643990..755f78cf08 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PETG Basic @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PETG Basic @base.json
@@ -39,6 +39,9 @@
"filament_max_volumetric_speed": [
"8"
],
+ "filament_multitool_ramming_flow": [
+ "8"
+ ],
"filament_vendor": [
"Bambu Lab"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PETG Translucent @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PETG Translucent @base.json
index 69cfb1dab7..0026f408f2 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PETG Translucent @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PETG Translucent @base.json
@@ -39,6 +39,9 @@
"filament_max_volumetric_speed": [
"6"
],
+ "filament_multitool_ramming_flow": [
+ "6"
+ ],
"filament_vendor": [
"Bambu Lab"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PLA Aero @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PLA Aero @base.json
index 889822b02f..1f11ddcc54 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PLA Aero @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu PLA Aero @base.json
@@ -21,6 +21,9 @@
"filament_max_volumetric_speed": [
"6"
],
+ "filament_multitool_ramming_flow": [
+ "6"
+ ],
"filament_type": [
"PLA-AERO"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu Support For PLA-PETG @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu Support For PLA-PETG @base.json
index 49fdcb1e1b..1dea20d081 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu Support For PLA-PETG @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu Support For PLA-PETG @base.json
@@ -27,6 +27,9 @@
"filament_max_volumetric_speed": [
"6"
],
+ "filament_multitool_ramming_flow": [
+ "6"
+ ],
"filament_scarf_seam_type": [
"none"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu Support for ABS @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu Support for ABS @base.json
index 3fe47727e1..bf714a0352 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu Support for ABS @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Bambu/Bambu Support for ABS @base.json
@@ -21,6 +21,9 @@
"filament_max_volumetric_speed": [
"6"
],
+ "filament_multitool_ramming_flow": [
+ "6"
+ ],
"filament_vendor": [
"Bambu Lab"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/COEX/COEX TPU 60A @base.json b/resources/profiles/OrcaFilamentLibrary/filament/COEX/COEX TPU 60A @base.json
index 00834bb4a5..a4b0ebce09 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/COEX/COEX TPU 60A @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/COEX/COEX TPU 60A @base.json
@@ -36,6 +36,9 @@
"filament_max_volumetric_speed": [
"1"
],
+ "filament_multitool_ramming_flow": [
+ "1"
+ ],
"filament_retraction_minimum_travel": [
"3"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas ASA @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas ASA @base.json
index d6ca0d695b..b4da81db72 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas ASA @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas ASA @base.json
@@ -72,15 +72,6 @@
"fan_min_speed": [
"10"
],
- "filament_cooling_final_speed": [
- "0"
- ],
- "filament_cooling_initial_speed": [
- "0"
- ],
- "filament_cooling_moves": [
- "0"
- ],
"filament_cost": [
"599"
],
@@ -99,30 +90,12 @@
"filament_is_support": [
"0"
],
- "filament_loading_speed": [
- "0"
- ],
- "filament_loading_speed_start": [
- "0"
- ],
"filament_long_retractions_when_cut": [
"nil"
],
"filament_max_volumetric_speed": [
"15"
],
- "filament_minimal_purge_on_wipe_tower": [
- "0"
- ],
- "filament_multitool_ramming": [
- "0"
- ],
- "filament_multitool_ramming_flow": [
- "10"
- ],
- "filament_multitool_ramming_volume": [
- "10"
- ],
"filament_notes": [
""
],
@@ -165,21 +138,6 @@
"filament_soluble": [
"0"
],
- "filament_stamping_distance": [
- "0"
- ],
- "filament_stamping_loading_speed": [
- "0"
- ],
- "filament_toolchange_delay": [
- "0"
- ],
- "filament_unloading_speed": [
- "0"
- ],
- "filament_unloading_speed_start": [
- "0"
- ],
"filament_vendor": [
"Elas"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas PETG Basic @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas PETG Basic @base.json
index 478210bb7d..8b6db5d3ad 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas PETG Basic @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas PETG Basic @base.json
@@ -42,15 +42,6 @@
"fan_min_speed": [
"20"
],
- "filament_cooling_final_speed": [
- "0"
- ],
- "filament_cooling_initial_speed": [
- "0"
- ],
- "filament_cooling_moves": [
- "0"
- ],
"filament_cost": [
"445"
],
@@ -69,30 +60,12 @@
"filament_is_support": [
"0"
],
- "filament_loading_speed": [
- "0"
- ],
- "filament_loading_speed_start": [
- "0"
- ],
"filament_long_retractions_when_cut": [
"1"
],
"filament_max_volumetric_speed": [
"18"
],
- "filament_minimal_purge_on_wipe_tower": [
- "0"
- ],
- "filament_multitool_ramming": [
- "0"
- ],
- "filament_multitool_ramming_flow": [
- "10"
- ],
- "filament_multitool_ramming_volume": [
- "10"
- ],
"filament_notes": [
""
],
@@ -135,21 +108,6 @@
"filament_soluble": [
"0"
],
- "filament_stamping_distance": [
- "0"
- ],
- "filament_stamping_loading_speed": [
- "0"
- ],
- "filament_toolchange_delay": [
- "0"
- ],
- "filament_unloading_speed": [
- "0"
- ],
- "filament_unloading_speed_start": [
- "0"
- ],
"filament_wipe": [
"nil"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas PLA Basic @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas PLA Basic @base.json
index abfa611aa3..d3f34beb80 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas PLA Basic @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas PLA Basic @base.json
@@ -71,15 +71,6 @@
"fan_min_speed": [
"60"
],
- "filament_cooling_final_speed": [
- "0"
- ],
- "filament_cooling_initial_speed": [
- "0"
- ],
- "filament_cooling_moves": [
- "0"
- ],
"filament_cost": [
"449.5"
],
@@ -98,30 +89,12 @@
"filament_is_support": [
"0"
],
- "filament_loading_speed": [
- "0"
- ],
- "filament_loading_speed_start": [
- "0"
- ],
"filament_long_retractions_when_cut": [
"nil"
],
"filament_max_volumetric_speed": [
"25"
],
- "filament_minimal_purge_on_wipe_tower": [
- "0"
- ],
- "filament_multitool_ramming": [
- "0"
- ],
- "filament_multitool_ramming_flow": [
- "10"
- ],
- "filament_multitool_ramming_volume": [
- "10"
- ],
"filament_notes": [
""
],
@@ -164,21 +137,6 @@
"filament_soluble": [
"0"
],
- "filament_stamping_distance": [
- "0"
- ],
- "filament_stamping_loading_speed": [
- "0"
- ],
- "filament_toolchange_delay": [
- "0"
- ],
- "filament_unloading_speed": [
- "0"
- ],
- "filament_unloading_speed_start": [
- "0"
- ],
"filament_vendor": [
"Elas"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas PLA Pro @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas PLA Pro @base.json
index 38313d1d55..41fd91f011 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas PLA Pro @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Elas/Elas PLA Pro @base.json
@@ -71,15 +71,6 @@
"fan_min_speed": [
"100"
],
- "filament_cooling_final_speed": [
- "0"
- ],
- "filament_cooling_initial_speed": [
- "0"
- ],
- "filament_cooling_moves": [
- "0"
- ],
"filament_cost": [
"500"
],
@@ -98,30 +89,12 @@
"filament_is_support": [
"0"
],
- "filament_loading_speed": [
- "0"
- ],
- "filament_loading_speed_start": [
- "0"
- ],
"filament_long_retractions_when_cut": [
"nil"
],
"filament_max_volumetric_speed": [
"18"
],
- "filament_minimal_purge_on_wipe_tower": [
- "0"
- ],
- "filament_multitool_ramming": [
- "0"
- ],
- "filament_multitool_ramming_flow": [
- "10"
- ],
- "filament_multitool_ramming_volume": [
- "10"
- ],
"filament_notes": [
""
],
@@ -164,21 +137,6 @@
"filament_soluble": [
"0"
],
- "filament_stamping_distance": [
- "0"
- ],
- "filament_stamping_loading_speed": [
- "0"
- ],
- "filament_toolchange_delay": [
- "0"
- ],
- "filament_unloading_speed": [
- "0"
- ],
- "filament_unloading_speed_start": [
- "0"
- ],
"filament_vendor": [
"Elas"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PAHT-CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PAHT-CF @System.json
index d7dd19c086..7d22d28387 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PAHT-CF @System.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PAHT-CF @System.json
@@ -24,6 +24,9 @@
"filament_max_volumetric_speed": [
"6"
],
+ "filament_multitool_ramming_flow": [
+ "6"
+ ],
"nozzle_temperature": [
"290"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG @base.json
index d6cd360eba..997f38ed4d 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG @base.json
@@ -35,6 +35,9 @@
"filament_max_volumetric_speed": [
"8"
],
+ "filament_multitool_ramming_flow": [
+ "8"
+ ],
"filament_vendor": [
"Elegoo"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Wood @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Wood @System.json
index abae441db5..3d6c95ed00 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Wood @System.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Wood @System.json
@@ -12,6 +12,9 @@
"filament_max_volumetric_speed": [
"10"
],
+ "filament_multitool_ramming_flow": [
+ "10"
+ ],
"nozzle_temperature": [
"220"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Neon @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Neon @System.json
index b40ce2310b..dff734c96d 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Neon @System.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Neon @System.json
@@ -44,5 +44,8 @@
],
"filament_max_volumetric_speed": [
"10"
+ ],
+ "filament_multitool_ramming_flow": [
+ "10"
]
}
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Silk @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Silk @System.json
index 843cf72fc5..1c3184da11 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Silk @System.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Eolas Prints/Eolas Prints PLA Silk @System.json
@@ -44,5 +44,8 @@
],
"filament_max_volumetric_speed": [
"8"
+ ],
+ "filament_multitool_ramming_flow": [
+ "8"
]
}
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Generic PA-CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Generic PA-CF @System.json
index f7b9df437a..cf01ddf65b 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Generic PA-CF @System.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Generic PA-CF @System.json
@@ -10,5 +10,8 @@
"filament_type": [
"PA-CF"
],
+ "filament_multitool_ramming_flow": [
+ "8"
+ ],
"compatible_printers": []
}
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Generic PETG HF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Generic PETG HF @System.json
index e402cdf775..25cf20c304 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Generic PETG HF @System.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Generic PETG HF @System.json
@@ -8,5 +8,8 @@
"filament_max_volumetric_speed": [
"20"
],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
"compatible_printers": []
}
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Generic PETG-CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Generic PETG-CF @System.json
index 5ee99ffed9..30884cf5a0 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Generic PETG-CF @System.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Generic PETG-CF @System.json
@@ -17,6 +17,9 @@
"filament_max_volumetric_speed": [
"11.5"
],
+ "filament_multitool_ramming_flow": [
+ "13"
+ ],
"overhang_fan_speed": [
"100"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Generic PLA High Speed @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Generic PLA High Speed @System.json
index 041ff59c44..1880ca2b21 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Generic PLA High Speed @System.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Generic PLA High Speed @System.json
@@ -12,6 +12,9 @@
"filament_max_volumetric_speed": [
"18"
],
+ "filament_multitool_ramming_flow": [
+ "25"
+ ],
"slow_down_layer_time": [
"4"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Generic PLA Matte @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Generic PLA Matte @System.json
index d3a6d4813c..39c71d0d62 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Generic PLA Matte @System.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Generic PLA Matte @System.json
@@ -8,6 +8,9 @@
"filament_max_volumetric_speed": [
"11"
],
+ "filament_multitool_ramming_flow": [
+ "11"
+ ],
"filament_retraction_length": [
"0.8"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Generic PP-CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Generic PP-CF @System.json
index 65420e9dae..a7c1bbff00 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Generic PP-CF @System.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Generic PP-CF @System.json
@@ -15,6 +15,9 @@
"filament_max_volumetric_speed": [
"6"
],
+ "filament_multitool_ramming_flow": [
+ "6"
+ ],
"filament_type": [
"PP-CF"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Generic PP-GF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Generic PP-GF @System.json
index 931ee4b7b3..cf9ea7ace2 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Generic PP-GF @System.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Generic PP-GF @System.json
@@ -15,6 +15,9 @@
"filament_max_volumetric_speed": [
"6"
],
+ "filament_multitool_ramming_flow": [
+ "6"
+ ],
"filament_type": [
"PP-GF"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Overture/Overture Air PLA @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Overture/Overture Air PLA @base.json
index 39e351a24c..98d390e9b8 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Overture/Overture Air PLA @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Overture/Overture Air PLA @base.json
@@ -17,6 +17,9 @@
"filament_max_volumetric_speed": [
"8"
],
+ "filament_multitool_ramming_flow": [
+ "8"
+ ],
"filament_vendor": [
"Overture"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Valment/Valment PLA Silk @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Valment/Valment PLA Silk @base.json
index d873590f08..258f80fb15 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/Valment/Valment PLA Silk @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/Valment/Valment PLA Silk @base.json
@@ -23,6 +23,9 @@
"filament_max_volumetric_speed": [
"7.5"
],
+ "filament_multitool_ramming_flow": [
+ "7.5"
+ ],
"filament_vendor": [
"Valment"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_abs.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_abs.json
index 6d9d015c11..dea3f03264 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_abs.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_abs.json
@@ -43,6 +43,12 @@
"filament_max_volumetric_speed": [
"12"
],
+ "filament_multitool_ramming_flow": [
+ "15"
+ ],
+ "filament_multitool_ramming_volume": [
+ "10"
+ ],
"filament_type": [
"ABS"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_asa.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_asa.json
index 922a5eaa7a..09a29ce792 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_asa.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_asa.json
@@ -43,6 +43,12 @@
"filament_max_volumetric_speed": [
"12"
],
+ "filament_multitool_ramming_flow": [
+ "12"
+ ],
+ "filament_multitool_ramming_volume": [
+ "10"
+ ],
"filament_type": [
"ASA"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_bvoh.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_bvoh.json
index d37476f458..cd15600a52 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_bvoh.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_bvoh.json
@@ -41,6 +41,15 @@
"filament_max_volumetric_speed": [
"8"
],
+ "filament_multitool_ramming": [
+ "0"
+ ],
+ "filament_multitool_ramming_flow": [
+ "6"
+ ],
+ "filament_multitool_ramming_volume": [
+ "0.1"
+ ],
"filament_type": [
"BVOH"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_common.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_common.json
index ce95ca7c52..3ff7e805ae 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_common.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_common.json
@@ -66,6 +66,12 @@
"filament_minimal_purge_on_wipe_tower": [
"15"
],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
"filament_retract_before_wipe": [
"nil"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_cope.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_cope.json
index 80ffd173de..798f560e01 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_cope.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_cope.json
@@ -41,6 +41,9 @@
"filament_max_volumetric_speed": [
"16"
],
+ "filament_multitool_ramming_flow": [
+ "16"
+ ],
"filament_scarf_seam_type": [
"none"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_eva.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_eva.json
index bf1ff86af1..40498a05aa 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_eva.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_eva.json
@@ -8,6 +8,9 @@
"filament_type": [
"EVA"
],
+ "filament_multitool_ramming_flow": [
+ "12"
+ ],
"supertack_plate_temp": [
"0"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_hips.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_hips.json
index beaebbd0e7..f67709b4b2 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_hips.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_hips.json
@@ -41,6 +41,9 @@
"filament_max_volumetric_speed": [
"8"
],
+ "filament_multitool_ramming_flow": [
+ "8"
+ ],
"filament_type": [
"HIPS"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pa.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pa.json
index c2e4cf86df..185af32de7 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pa.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pa.json
@@ -44,6 +44,9 @@
"filament_max_volumetric_speed": [
"8"
],
+ "filament_multitool_ramming_flow": [
+ "12"
+ ],
"filament_type": [
"PA"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_paht.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_paht.json
index 058469ff71..2a1ca6d510 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_paht.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_paht.json
@@ -7,6 +7,9 @@
"filament_max_volumetric_speed": [
"12"
],
+ "filament_multitool_ramming_flow": [
+ "12"
+ ],
"filament_type": [
"PAHT"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pc.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pc.json
index 0f550063ad..d8fb7d00ae 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pc.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pc.json
@@ -86,6 +86,9 @@
"filament_max_volumetric_speed": [
"12"
],
+ "filament_multitool_ramming_flow": [
+ "16"
+ ],
"filament_flow_ratio": [
"0.94"
]
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pctg.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pctg.json
index 8ca7e39994..e656fb7715 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pctg.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pctg.json
@@ -26,6 +26,9 @@
"filament_max_volumetric_speed": [
"12"
],
+ "filament_multitool_ramming_flow": [
+ "10"
+ ],
"filament_type": [
"PCTG"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pe.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pe.json
index beb533d07f..a47543334b 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pe.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pe.json
@@ -38,6 +38,9 @@
"filament_max_volumetric_speed": [
"12"
],
+ "filament_multitool_ramming_flow": [
+ "12"
+ ],
"filament_type": [
"PE"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pet.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pet.json
index eabb12c708..8b3fef2f2b 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pet.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pet.json
@@ -26,6 +26,9 @@
"filament_max_volumetric_speed": [
"10"
],
+ "filament_multitool_ramming_flow": [
+ "15"
+ ],
"filament_type": [
"PETG"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pha.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pha.json
index f6ef3ffc0c..7719c6563d 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pha.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pha.json
@@ -38,6 +38,9 @@
"filament_max_volumetric_speed": [
"6"
],
+ "filament_multitool_ramming_flow": [
+ "6"
+ ],
"filament_type": [
"PHA"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pla.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pla.json
index ae82d44129..21b7c44365 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pla.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pla.json
@@ -38,6 +38,9 @@
"filament_max_volumetric_speed": [
"12"
],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
"filament_scarf_seam_type": [
"none"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pla_silk.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pla_silk.json
index 3680a85602..a5fd601060 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pla_silk.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pla_silk.json
@@ -9,6 +9,9 @@
"filament_flow_ratio": [
"0.98"
],
+ "filament_multitool_ramming_flow": [
+ "10"
+ ],
"slow_down_layer_time": [
"8"
]
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pp.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pp.json
index ec9405ef9a..4df7753132 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pp.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pp.json
@@ -38,6 +38,9 @@
"filament_max_volumetric_speed": [
"12"
],
+ "filament_multitool_ramming_flow": [
+ "12"
+ ],
"filament_type": [
"PP"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_ppa.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_ppa.json
index 3eac71bc69..c250e588b0 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_ppa.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_ppa.json
@@ -47,6 +47,9 @@
"filament_max_volumetric_speed": [
"8"
],
+ "filament_multitool_ramming_flow": [
+ "8"
+ ],
"filament_type": [
"PPA-CF"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pps.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pps.json
index a6a95a804e..49e0bddefd 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pps.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pps.json
@@ -43,6 +43,9 @@
"filament_max_volumetric_speed": [
"4"
],
+ "filament_multitool_ramming_flow": [
+ "4"
+ ],
"filament_type": [
"PPS"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pva.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pva.json
index 0109726b0d..4bb30d7e11 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pva.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_pva.json
@@ -40,6 +40,15 @@
"filament_max_volumetric_speed": [
"12"
],
+ "filament_multitool_ramming": [
+ "0"
+ ],
+ "filament_multitool_ramming_flow": [
+ "6"
+ ],
+ "filament_multitool_ramming_volume": [
+ "0.1"
+ ],
"filament_soluble": [
"1"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_sbs.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_sbs.json
index 96626d808d..9bc4d5ce36 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_sbs.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_sbs.json
@@ -11,6 +11,9 @@
"filament_max_volumetric_speed": [
"12"
],
+ "filament_multitool_ramming_flow": [
+ "12"
+ ],
"filament_type": [
"SBS"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_tpu.json b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_tpu.json
index 30d9415ad3..d6fb38a6ba 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_tpu.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/base/fdm_filament_tpu.json
@@ -43,6 +43,15 @@
"filament_max_volumetric_speed": [
"3.2"
],
+ "filament_multitool_ramming": [
+ "0"
+ ],
+ "filament_multitool_ramming_flow": [
+ "3.2"
+ ],
+ "filament_multitool_ramming_volume": [
+ "0.1"
+ ],
"filament_retraction_length": [
"0.4"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/eSUN/eSUN PLA-Marble @base.json b/resources/profiles/OrcaFilamentLibrary/filament/eSUN/eSUN PLA-Marble @base.json
index 40c314585c..cbd4f84ed4 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/eSUN/eSUN PLA-Marble @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/eSUN/eSUN PLA-Marble @base.json
@@ -17,6 +17,9 @@
"filament_max_volumetric_speed": [
"8"
],
+ "filament_multitool_ramming_flow": [
+ "8"
+ ],
"filament_vendor": [
"eSUN"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/eSUN/eSUN PLA-Matte @base.json b/resources/profiles/OrcaFilamentLibrary/filament/eSUN/eSUN PLA-Matte @base.json
index 85c6049935..8d22168408 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/eSUN/eSUN PLA-Matte @base.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/eSUN/eSUN PLA-Matte @base.json
@@ -17,6 +17,9 @@
"filament_max_volumetric_speed": [
"8"
],
+ "filament_multitool_ramming_flow": [
+ "8"
+ ],
"filament_vendor": [
"eSUN"
],
diff --git a/resources/profiles/OrcaFilamentLibrary/filament/eSUN/eSUN ePLA-LW @System.json b/resources/profiles/OrcaFilamentLibrary/filament/eSUN/eSUN ePLA-LW @System.json
index 138a388419..732eb3fd5b 100644
--- a/resources/profiles/OrcaFilamentLibrary/filament/eSUN/eSUN ePLA-LW @System.json
+++ b/resources/profiles/OrcaFilamentLibrary/filament/eSUN/eSUN ePLA-LW @System.json
@@ -21,6 +21,9 @@
"filament_max_volumetric_speed": [
"6"
],
+ "filament_multitool_ramming_flow": [
+ "6"
+ ],
"filament_vendor": [
"eSUN"
],
diff --git a/resources/profiles/Qidi.json b/resources/profiles/Qidi.json
index 9e7a290f96..ecceff5a8a 100644
--- a/resources/profiles/Qidi.json
+++ b/resources/profiles/Qidi.json
@@ -1,6 +1,6 @@
{
"name": "Qidi",
- "version": "02.04.00.08",
+ "version": "02.04.00.11",
"force_update": "0",
"description": "Qidi configurations",
"machine_model_list": [
@@ -47,6 +47,10 @@
{
"name": "Qidi X-Smart 3",
"sub_path": "machine/Qidi X-Smart 3.json"
+ },
+ {
+ "name": "Qidi X-Plus 5",
+ "sub_path": "machine/Qidi X-Plus 5.json"
}
],
"process_list": [
@@ -885,6 +889,70 @@
{
"name": "0.56mm Standard @Qidi XSmart3 0.8 nozzle",
"sub_path": "process/0.56mm Standard @Qidi XSmart3 0.8 nozzle.json"
+ },
+ {
+ "name": "0.08mm High Quality @X-Plus 5",
+ "sub_path": "process/0.08mm High Quality @X-Plus 5.json"
+ },
+ {
+ "name": "0.12mm High Quality @X-Plus 5",
+ "sub_path": "process/0.12mm High Quality @X-Plus 5.json"
+ },
+ {
+ "name": "0.16mm High Quality @X-Plus 5",
+ "sub_path": "process/0.16mm High Quality @X-Plus 5.json"
+ },
+ {
+ "name": "0.16mm Standard @X-Plus 5",
+ "sub_path": "process/0.16mm Standard @X-Plus 5.json"
+ },
+ {
+ "name": "0.20mm High Quality @X-Plus 5",
+ "sub_path": "process/0.20mm High Quality @X-Plus 5.json"
+ },
+ {
+ "name": "0.20mm Standard @X-Plus 5",
+ "sub_path": "process/0.20mm Standard @X-Plus 5.json"
+ },
+ {
+ "name": "0.24mm Standard @X-Plus 5",
+ "sub_path": "process/0.24mm Standard @X-Plus 5.json"
+ },
+ {
+ "name": "0.08mm High Quality @X-Plus 5 0.2 nozzle",
+ "sub_path": "process/0.08mm High Quality @X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "0.10mm Standard @X-Plus 5 0.2 nozzle",
+ "sub_path": "process/0.10mm Standard @X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "0.12mm Balanced Quality @X-Plus 5 0.2 nozzle",
+ "sub_path": "process/0.12mm Balanced Quality @X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "0.18mm Balanced Quality @X-Plus 5 0.6 nozzle",
+ "sub_path": "process/0.18mm Balanced Quality @X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "0.24mm Balanced Quality @X-Plus 5 0.6 nozzle",
+ "sub_path": "process/0.24mm Balanced Quality @X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "0.30mm Standard @X-Plus 5 0.6 nozzle",
+ "sub_path": "process/0.30mm Standard @X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "0.24mm Balanced Quality @X-Plus 5 0.8 nozzle",
+ "sub_path": "process/0.24mm Balanced Quality @X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "0.32mm Balanced Quality @X-Plus 5 0.8 nozzle",
+ "sub_path": "process/0.32mm Balanced Quality @X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "0.40mm Standard @X-Plus 5 0.8 nozzle",
+ "sub_path": "process/0.40mm Standard @X-Plus 5 0.8 nozzle.json"
}
],
"filament_list": [
@@ -6035,6 +6103,998 @@
{
"name": "Qidi Generic PLA High Speed @Qidi X-Plus 4 0.8 nozzle",
"sub_path": "filament/Qidi Generic PLA High Speed @Qidi X-Plus 4 0.8 nozzle.json"
+ },
+ {
+ "name": "fdm_filament_x5_common",
+ "sub_path": "filament/X5/fdm_filament_x5_common.json"
+ },
+ {
+ "name": "Generic ABS@X-Plus 5-Series",
+ "sub_path": "filament/X5/Generic ABS @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI ASA@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI ASA @X-Plus 5.json"
+ },
+ {
+ "name": "Generic PETG@X-Plus 5-Series",
+ "sub_path": "filament/X5/Generic PETG @X-Plus 5.json"
+ },
+ {
+ "name": "Generic PLA Silk@X-Plus 5-Series",
+ "sub_path": "filament/X5/Generic PLA Silk @X-Plus 5.json"
+ },
+ {
+ "name": "Generic PLA@X-Plus 5-Series",
+ "sub_path": "filament/X5/Generic PLA @X-Plus 5.json"
+ },
+ {
+ "name": "Generic PLA+@X-Plus 5-Series",
+ "sub_path": "filament/X5/Generic PLA+ @X-Plus 5.json"
+ },
+ {
+ "name": "PolyLite PLA@X-Plus 5-Series",
+ "sub_path": "filament/X5/PolyLite PLA @X-Plus 5.json"
+ },
+ {
+ "name": "Polymaker PLA-HT@X-Plus 5-Series",
+ "sub_path": "filament/X5/Polymaker PLA-HT @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PLA-CF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PLA-CF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PLA-CF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PLA-CF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA-CF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PLA-CF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA-CF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PLA-CF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS Rapido@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI ABS Rapido @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI ABS Rapido @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS Rapido @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS Rapido @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS Rapido @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS Rapido Metal@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI ABS Rapido Metal @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI ABS Rapido Metal @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS Rapido Metal @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS Rapido Metal @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS Rapido Metal @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS Odorless@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI ABS Odorless @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI ABS Odorless @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS Odorless @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS Odorless @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS Odorless @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Rapido@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PLA Rapido @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PLA Rapido @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Rapido @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Rapido @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Rapido @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Rapido Matte@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PLA Rapido Matte @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PLA Rapido Matte @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Rapido Matte @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Rapido Matte @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Rapido Matte @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Silk@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PLA Silk @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PLA Silk @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Silk @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Silk @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Silk @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Rapido Metal@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PLA Rapido Metal @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PLA Rapido Metal @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Rapido Metal @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Rapido Metal @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Rapido Metal @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Tough@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PETG Tough @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PETG Tough @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Tough @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Tough @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Tough @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PET-CF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PET-CF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PET-CF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PET-CF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PET-CF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PET-CF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PET-CF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PET-CF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PA12-CF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PA12-CF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PA12-CF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PA12-CF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PA12-CF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PA12-CF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PA12-CF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PA12-CF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PA6-CF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PA6-CF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PA6-CF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PA6-CF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PA6-CF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PA6-CF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PA6-CF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PA6-CF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PAHT-CF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PAHT-CF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PAHT-CF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PAHT-CF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PAHT-CF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PAHT-CF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PAHT-CF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PAHT-CF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PPS-CF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PPS-CF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PPS-CF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PPS-CF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PPS-CF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PPS-CF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PPS-CF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PPS-CF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS-GF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI ABS-GF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI ABS-GF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI ABS-GF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS-GF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI ABS-GF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI ABS-GF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI ABS-GF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI UltraPA@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI UltraPA @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI UltraPA @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI UltraPA @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI UltraPA @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI UltraPA @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI UltraPA @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI UltraPA @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "Generic TPU 95A@X-Plus 5-Series",
+ "sub_path": "filament/X5/Generic TPU 95A @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PC/ABS-FR@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PC-ABS-FR @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PC/ABS-FR @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PC-ABS-FR @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PC/ABS-FR @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PC-ABS-FR @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PC/ABS-FR @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PC-ABS-FR @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI ASA-Aero@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI ASA-Aero @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI ASA-Aero @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI ASA-Aero @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Generic ABS @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/Generic ABS @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "Generic ABS @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/Generic ABS @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Generic ABS @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/Generic ABS @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Generic ABS @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/Generic ABS @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI ASA @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/QIDI ASA @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "QIDI ASA @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI ASA @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI ASA @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI ASA @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI ASA @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI ASA @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "Generic PETG @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/Generic PETG @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "Generic PETG @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/Generic PETG @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Generic PETG @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/Generic PETG @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Generic PETG @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/Generic PETG @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "Generic PLA @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/Generic PLA @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "Generic PLA @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/Generic PLA @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Generic PLA @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/Generic PLA @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Generic PLA @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/Generic PLA @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "Generic PLA+ @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/Generic PLA+ @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "Generic PLA+ @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/Generic PLA+ @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Generic PLA+ @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/Generic PLA+ @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Generic PLA+ @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/Generic PLA+ @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "Generic PLA Silk @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/Generic PLA Silk @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Generic PLA Silk @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/Generic PLA Silk @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Generic TPU 95A @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/Generic TPU 95A @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Generic TPU 95A @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/Generic TPU 95A @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Generic TPU 95A @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/Generic TPU 95A @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI TPU 95A-HF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI TPU 95A-HF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI TPU 95A-HF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI TPU 95A-HF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI TPU 95A-HF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI TPU 95A-HF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI TPU 95A-HF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI TPU 95A-HF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "PolyLite PLA @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/PolyLite PLA @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "PolyLite PLA @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/PolyLite PLA @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "PolyLite PLA @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/PolyLite PLA @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "PolyLite PLA @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/PolyLite PLA @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "Polymaker PLA-HT @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "Polymaker PLA-HT @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Polymaker PLA-HT @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Polymaker PLA-HT @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "PolyLite ABS@X-Plus 5-Series",
+ "sub_path": "filament/X5/PolyLite ABS @X-Plus 5.json"
+ },
+ {
+ "name": "PolyLite ABS @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/PolyLite ABS @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "PolyLite ABS @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/PolyLite ABS @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "PolyLite ABS @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/PolyLite ABS @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "PolyLite ABS @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/PolyLite ABS @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "Overture PLA@X-Plus 5-Series",
+ "sub_path": "filament/X5/Overture PLA @X-Plus 5.json"
+ },
+ {
+ "name": "Overture PLA @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/Overture PLA @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "Overture PLA @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/Overture PLA @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Overture PLA @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/Overture PLA @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Overture PLA @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/Overture PLA @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "Overture ABS@X-Plus 5-Series",
+ "sub_path": "filament/X5/Overture ABS @X-Plus 5.json"
+ },
+ {
+ "name": "Overture ABS @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/Overture ABS @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "Overture ABS @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/Overture ABS @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Overture ABS @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/Overture ABS @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Overture ABS @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/Overture ABS @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "Bambu PLA@X-Plus 5-Series",
+ "sub_path": "filament/X5/Bambu PLA @X-Plus 5.json"
+ },
+ {
+ "name": "Bambu PLA @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/Bambu PLA @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "Bambu PLA @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/Bambu PLA @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Bambu PLA @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/Bambu PLA @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Bambu PLA @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/Bambu PLA @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "Bambu ABS@X-Plus 5-Series",
+ "sub_path": "filament/X5/Bambu ABS @X-Plus 5.json"
+ },
+ {
+ "name": "Bambu ABS @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/Bambu ABS @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "Bambu ABS @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/Bambu ABS @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Bambu ABS @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/Bambu ABS @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Bambu ABS @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/Bambu ABS @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "Bambu PETG@X-Plus 5-Series",
+ "sub_path": "filament/X5/Bambu PETG @X-Plus 5.json"
+ },
+ {
+ "name": "Bambu PETG @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/Bambu PETG @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "Bambu PETG @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/Bambu PETG @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Bambu PETG @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/Bambu PETG @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Bambu PETG @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/Bambu PETG @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "HATCHBOX PLA@X-Plus 5-Series",
+ "sub_path": "filament/X5/HATCHBOX PLA @X-Plus 5.json"
+ },
+ {
+ "name": "HATCHBOX PLA @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "HATCHBOX PLA @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "HATCHBOX PLA @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "HATCHBOX PLA @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "HATCHBOX ABS@X-Plus 5-Series",
+ "sub_path": "filament/X5/HATCHBOX ABS @X-Plus 5.json"
+ },
+ {
+ "name": "HATCHBOX ABS @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "HATCHBOX ABS @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "HATCHBOX ABS @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "HATCHBOX ABS @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "HATCHBOX PETG@X-Plus 5-Series",
+ "sub_path": "filament/X5/HATCHBOX PETG @X-Plus 5.json"
+ },
+ {
+ "name": "HATCHBOX PETG @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "HATCHBOX PETG @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "HATCHBOX PETG @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "HATCHBOX PETG @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PAHT-GF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PAHT-GF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PAHT-GF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PAHT-GF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PAHT-GF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PAHT-GF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PAHT-GF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PAHT-GF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PET-GF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PET-GF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PET-GF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PET-GF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PET-GF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PET-GF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PET-GF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PET-GF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI UltraPA-CF25@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI UltraPA-CF25 @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI UltraPA-CF25 @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI UltraPA-CF25 @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI UltraPA-CF25 @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI UltraPA-CF25 @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI UltraPA-CF25 @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI UltraPA-CF25 @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI WOOD Rapido@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI WOOD Rapido @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI WOOD Rapido @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI WOOD Rapido @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI WOOD Rapido @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI WOOD Rapido @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI WOOD Rapido @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI WOOD Rapido @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "Generic PC@X-Plus 5-Series",
+ "sub_path": "filament/X5/Generic PC @X-Plus 5.json"
+ },
+ {
+ "name": "Generic PC @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/Generic PC @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "Generic PC @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/Generic PC @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Generic PC @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/Generic PC @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Generic PC @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/Generic PC @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI TPU-Aero@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI TPU-Aero @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI TPU-Aero @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI TPU-Aero @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI TPU-Aero @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI TPU-Aero @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI Support For PET/PA@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI Support For PET-PA @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI Support For PET/PA @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI Support For PET-PA @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI Support For PET/PA @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI Support For PET-PA @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI Support For PET/PA @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI Support For PET-PA @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI Support For PAHT@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI Support For PAHT @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI Support For PAHT @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI Support For PAHT @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI Support For PAHT @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI Support For PAHT @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI Support For PAHT @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI Support For PAHT @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Basic@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PLA Basic @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PLA Basic @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Basic @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Basic @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Basic @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Matte Basic@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PLA Matte Basic @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PLA Matte Basic @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Matte Basic @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Matte Basic @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PLA Matte Basic @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Rapido@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PETG Rapido @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PETG Rapido @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Rapido @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Rapido @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Rapido @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Basic@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PETG Basic @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PETG Basic @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Basic @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Basic @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Basic @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Translucent@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PETG Translucent @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PETG Translucent @Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.2 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Translucent @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Translucent @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG Translucent @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG-CF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PETG-CF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PETG-CF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PETG-CF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG-CF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PETG-CF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG-CF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PETG-CF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG-GF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PETG-GF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PETG-GF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PETG-GF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG-GF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PETG-GF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PETG-GF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PETG-GF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PPS-GF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PPS-GF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PPS-GF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PPS-GF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PPS-GF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PPS-GF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI PPS-GF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI PPS-GF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI PEBA 95A@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI PEBA 95A @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI PEBA 95A @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI PEBA 95A @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI PEBA 95A @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI PEBA 95A @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI ASA-CF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI ASA-CF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI ASA-CF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI ASA-CF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI ASA-CF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI ASA-CF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI ASA-CF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI ASA-CF @Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "QIDI TPU-GF@X-Plus 5-Series",
+ "sub_path": "filament/X5/QIDI TPU-GF @X-Plus 5.json"
+ },
+ {
+ "name": "QIDI TPU-GF @Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "filament/X5/QIDI TPU-GF @Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "QIDI TPU-GF @Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "filament/X5/QIDI TPU-GF @Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "QIDI TPU-GF @Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "filament/X5/QIDI TPU-GF @Qidi X-Plus 5 0.8 nozzle.json"
}
],
"machine_list": [
@@ -6197,6 +7257,22 @@
{
"name": "Qidi Q2C 0.8 nozzle",
"sub_path": "machine/Qidi Q2C 0.8 nozzle.json"
+ },
+ {
+ "name": "Qidi X-Plus 5 0.4 nozzle",
+ "sub_path": "machine/Qidi X-Plus 5 0.4 nozzle.json"
+ },
+ {
+ "name": "Qidi X-Plus 5 0.6 nozzle",
+ "sub_path": "machine/Qidi X-Plus 5 0.6 nozzle.json"
+ },
+ {
+ "name": "Qidi X-Plus 5 0.8 nozzle",
+ "sub_path": "machine/Qidi X-Plus 5 0.8 nozzle.json"
+ },
+ {
+ "name": "Qidi X-Plus 5 0.2 nozzle",
+ "sub_path": "machine/Qidi X-Plus 5 0.2 nozzle.json"
}
]
}
diff --git a/resources/profiles/Qidi/Qidi X-Plus 5_cover.png b/resources/profiles/Qidi/Qidi X-Plus 5_cover.png
new file mode 100644
index 0000000000..06f5c5858d
Binary files /dev/null and b/resources/profiles/Qidi/Qidi X-Plus 5_cover.png differ
diff --git a/resources/profiles/Qidi/filament/X4/QIDI PA12-CF @X-Max 4.json b/resources/profiles/Qidi/filament/X4/QIDI PA12-CF @X-Max 4.json
index e217915579..e268f6081c 100644
--- a/resources/profiles/Qidi/filament/X4/QIDI PA12-CF @X-Max 4.json
+++ b/resources/profiles/Qidi/filament/X4/QIDI PA12-CF @X-Max 4.json
@@ -20,6 +20,9 @@
"close_fan_the_first_x_layers": [
"3"
],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
"fan_cooling_layer_time": [
"10"
],
diff --git a/resources/profiles/Qidi/filament/X4/QIDI PAHT-CF @X-Max 4.json b/resources/profiles/Qidi/filament/X4/QIDI PAHT-CF @X-Max 4.json
index 83cd3e27cb..2bf1ca53fc 100644
--- a/resources/profiles/Qidi/filament/X4/QIDI PAHT-CF @X-Max 4.json
+++ b/resources/profiles/Qidi/filament/X4/QIDI PAHT-CF @X-Max 4.json
@@ -20,6 +20,9 @@
"close_fan_the_first_x_layers": [
"3"
],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
"fan_cooling_layer_time": [
"10"
],
diff --git a/resources/profiles/Qidi/filament/X4/QIDI PAHT-GF @X-Max 4.json b/resources/profiles/Qidi/filament/X4/QIDI PAHT-GF @X-Max 4.json
index 8a35c7330b..37afc97c29 100644
--- a/resources/profiles/Qidi/filament/X4/QIDI PAHT-GF @X-Max 4.json
+++ b/resources/profiles/Qidi/filament/X4/QIDI PAHT-GF @X-Max 4.json
@@ -20,6 +20,9 @@
"close_fan_the_first_x_layers": [
"3"
],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
"fan_cooling_layer_time": [
"10"
],
diff --git a/resources/profiles/Qidi/filament/X5/Bambu ABS @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/Bambu ABS @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..32352a70c8
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu ABS @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "v4Of6ePWz1oGVLqU",
+ "name": "Bambu ABS @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Bambu ABS@X-Plus 5-Series",
+ "chamber_temperatures": [
+ "0"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu ABS @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/Bambu ABS @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..8b6bc2ebb6
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu ABS @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "K3KqxJ3z6lSKoCsQ",
+ "name": "Bambu ABS @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Bambu ABS@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu ABS @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/Bambu ABS @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..3fa0dfca1f
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu ABS @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "D3OOS6ShJDdn4dlU",
+ "name": "Bambu ABS @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Bambu ABS@X-Plus 5-Series",
+ "nozzle_temperature": [
+ "250"
+ ],
+ "pressure_advance": [
+ "0.014"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu ABS @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/Bambu ABS @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..833774ecff
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu ABS @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "8zWM4mqGjwjy2yJb",
+ "name": "Bambu ABS @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Bambu ABS@X-Plus 5-Series",
+ "nozzle_temperature": [
+ "250"
+ ],
+ "pressure_advance": [
+ "0.011"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu ABS @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/Bambu ABS @X-Plus 5.json
new file mode 100644
index 0000000000..1464576f61
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu ABS @X-Plus 5.json
@@ -0,0 +1,105 @@
+{
+ "type": "filament",
+ "filament_id": "GFB99",
+ "name": "Bambu ABS@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "chamber_temperatures": [
+ "55"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "90"
+ ],
+ "eng_plate_temp": [
+ "90"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_max_speed": [
+ "80"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "200"
+ ],
+ "filament_density": [
+ "1.05"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_type": [
+ "ABS"
+ ],
+ "filament_vendor": [
+ "Bambu Lab"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "90"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "260"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.035"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "90"
+ ],
+ "textured_plate_temp": [
+ "90"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu PETG @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/Bambu PETG @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..67725a5ee4
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu PETG @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "ed9ZVS66ll61akjK",
+ "name": "Bambu PETG @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Bambu PETG@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "1"
+ ],
+ "pressure_advance": [
+ "0.056"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu PETG @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/Bambu PETG @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..953359bb36
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu PETG @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "mPLqTb7smgIDOZTg",
+ "name": "Bambu PETG @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Bambu PETG@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.056"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu PETG @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/Bambu PETG @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..77014127cd
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu PETG @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "A3K4JfwyqUnciD2e",
+ "name": "Bambu PETG @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Bambu PETG@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu PETG @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/Bambu PETG @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..3e95da1618
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu PETG @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "4qjG4MYXmLPJ5Qjm",
+ "name": "Bambu PETG @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Bambu PETG@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu PETG @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/Bambu PETG @X-Plus 5.json
new file mode 100644
index 0000000000..0a4d2ce22c
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu PETG @X-Plus 5.json
@@ -0,0 +1,102 @@
+{
+ "type": "filament",
+ "filament_id": "GFG99",
+ "name": "Bambu PETG@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_adhesiveness_category": [
+ "300"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "13"
+ ],
+ "filament_type": [
+ "PETG"
+ ],
+ "filament_vendor": [
+ "Bambu Lab"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "240"
+ ],
+ "nozzle_temperature_range_high": [
+ "270"
+ ],
+ "nozzle_temperature_range_low": [
+ "220"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "overhang_fan_speed": [
+ "90"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "pressure_advance": [
+ "0.056"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "temperature_vitrification": [
+ "70"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_cool_plate_temp": [
+ "60"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu PLA @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/Bambu PLA @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..8cebbd7581
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu PLA @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "cI5eJwzwoecS97SU",
+ "name": "Bambu PLA @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Bambu PLA@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu PLA @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/Bambu PLA @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..3e7d24cf85
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu PLA @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "UP5ST3BYA3nWaT5i",
+ "name": "Bambu PLA @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Bambu PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu PLA @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/Bambu PLA @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..e3e192d1e8
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu PLA @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "jSFJn0WmV76aBwPt",
+ "name": "Bambu PLA @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Bambu PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.016"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu PLA @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/Bambu PLA @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..2390355042
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu PLA @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "MYCn1SS32p63RzX0",
+ "name": "Bambu PLA @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Bambu PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.008"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Bambu PLA @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/Bambu PLA @X-Plus 5.json
new file mode 100644
index 0000000000..7660c8174d
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Bambu PLA @X-Plus 5.json
@@ -0,0 +1,54 @@
+{
+ "type": "filament",
+ "filament_id": "GFL99",
+ "name": "Bambu PLA@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_vendor": [
+ "Bambu Lab"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic ABS @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic ABS @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..c12bcc6687
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic ABS @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "xxRxeoAbiYJcH1P4",
+ "name": "Generic ABS @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic ABS@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic ABS @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic ABS @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..7807bc8420
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic ABS @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "MM6yfNPfpCtbsm2M",
+ "name": "Generic ABS @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic ABS@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic ABS @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic ABS @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..6de2b02613
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic ABS @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "BIiPt2AExUkASm2F",
+ "name": "Generic ABS @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic ABS@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "24.5"
+ ],
+ "pressure_advance": [
+ "0.014"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic ABS @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic ABS @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..6e7bda8441
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic ABS @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "VzKqGnik79qlJ1bA",
+ "name": "Generic ABS @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic ABS@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "24.5"
+ ],
+ "pressure_advance": [
+ "0.011"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic ABS @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/Generic ABS @X-Plus 5.json
new file mode 100644
index 0000000000..4bb0cbe387
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic ABS @X-Plus 5.json
@@ -0,0 +1,108 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_0_11",
+ "name": "Generic ABS@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "90"
+ ],
+ "eng_plate_temp": [
+ "90"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "80"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_adhesiveness_category": [
+ "200"
+ ],
+ "filament_density": [
+ "1.04"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "17"
+ ],
+ "filament_type": [
+ "ABS"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "90"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.021"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "90"
+ ],
+ "textured_plate_temp": [
+ "90"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PC @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PC @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..da5c50af1a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PC @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,23 @@
+{
+ "type": "filament",
+ "setting_id": "ERbh7DQQfK7A623W",
+ "name": "Generic PC @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PC@X-Plus 5-Series",
+ "filament_flow_ratio": [
+ "0.94"
+ ],
+ "filament_max_volumetric_speed": [
+ "1"
+ ],
+ "pressure_advance": [
+ "0.04"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PC @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PC @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..487d8dd31d
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PC @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "MK8OyxUEziAeEbXk",
+ "name": "Generic PC @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PC@X-Plus 5-Series",
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "10"
+ ],
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PC @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PC @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..90829d6463
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PC @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "EQIfBmyVNumOKVWU",
+ "name": "Generic PC @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PC@X-Plus 5-Series",
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "10"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PC @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PC @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..514715f8a2
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PC @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "FsTuQT5hxmfjHyVZ",
+ "name": "Generic PC @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PC@X-Plus 5-Series",
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "10"
+ ],
+ "pressure_advance": [
+ "0.008"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PC @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/Generic PC @X-Plus 5.json
new file mode 100644
index 0000000000..360f0ee803
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PC @X-Plus 5.json
@@ -0,0 +1,108 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_0_23",
+ "name": "Generic PC@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "65"
+ ],
+ "chamber_temperatures": [
+ "60"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "0"
+ ],
+ "cool_plate_temp": [
+ "0"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "110"
+ ],
+ "eng_plate_temp": [
+ "110"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "60"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_adhesiveness_category": [
+ "500"
+ ],
+ "filament_density": [
+ "1.04"
+ ],
+ "filament_max_volumetric_speed": [
+ "10"
+ ],
+ "filament_type": [
+ "PC"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "110"
+ ],
+ "hot_plate_temp": [
+ "110"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "270"
+ ],
+ "nozzle_temperature_range_high": [
+ "290"
+ ],
+ "nozzle_temperature_range_low": [
+ "260"
+ ],
+ "nozzle_temperature": [
+ "280"
+ ],
+ "overhang_fan_speed": [
+ "60"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.021"
+ ],
+ "slow_down_layer_time": [
+ "2"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "0"
+ ],
+ "supertack_plate_temp": [
+ "0"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "110"
+ ],
+ "textured_plate_temp": [
+ "110"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "0"
+ ],
+ "textured_cool_plate_temp": [
+ "0"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PETG @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PETG @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..2b4e220a54
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PETG @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "KaxkabCgu6EWZBzj",
+ "name": "Generic PETG @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PETG@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "1"
+ ],
+ "pressure_advance": [
+ "0.056"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PETG @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PETG @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..4da60c3c48
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PETG @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "ckqzES7LsTgYKKhb",
+ "name": "Generic PETG @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PETG@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.056"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PETG @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PETG @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..6f1b9667ab
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PETG @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "1ID4LaQVZN4WjJ4v",
+ "name": "Generic PETG @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PETG@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PETG @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PETG @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..764e313efe
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PETG @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "yzkFoRA3R01K3lCa",
+ "name": "Generic PETG @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PETG@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PETG @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/Generic PETG @X-Plus 5.json
new file mode 100644
index 0000000000..ab1b23bb60
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PETG @X-Plus 5.json
@@ -0,0 +1,105 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_0_41",
+ "name": "Generic PETG@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "90"
+ ],
+ "fan_min_speed": [
+ "40"
+ ],
+ "filament_adhesiveness_category": [
+ "300"
+ ],
+ "filament_density": [
+ "1.27"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "filament_type": [
+ "PETG"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "245"
+ ],
+ "nozzle_temperature_range_high": [
+ "270"
+ ],
+ "nozzle_temperature_range_low": [
+ "220"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "overhang_fan_speed": [
+ "90"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "pressure_advance": [
+ "0.056"
+ ],
+ "slow_down_layer_time": [
+ "12"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "temperature_vitrification": [
+ "70"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_cool_plate_temp": [
+ "60"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PLA @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PLA @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..218b407d21
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PLA @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "m5zUk3OpAayCbBwF",
+ "name": "Generic PLA @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PLA@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PLA @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PLA @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..c8dd22aba5
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PLA @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "5Eorr9nKVhLbnYAZ",
+ "name": "Generic PLA @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PLA @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PLA @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..ee352a5667
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PLA @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "nqOawjrkU2lp3P0K",
+ "name": "Generic PLA @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.016"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PLA @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PLA @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..14a7fa59c1
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PLA @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "nA20S71nTMCso0Bn",
+ "name": "Generic PLA @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.008"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PLA @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/Generic PLA @X-Plus 5.json
new file mode 100644
index 0000000000..e3939b7796
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PLA @X-Plus 5.json
@@ -0,0 +1,66 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_0_1",
+ "name": "Generic PLA@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "cool_plate_temp": [
+ "45"
+ ],
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_density": [
+ "1.2"
+ ],
+ "filament_max_volumetric_speed": [
+ "14"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PLA Silk @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PLA Silk @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..f701cf5b50
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PLA Silk @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "42feLKkUTBQTPNDm",
+ "name": "Generic PLA Silk @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PLA Silk@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PLA Silk @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PLA Silk @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..b898df762a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PLA Silk @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "uyCmwBkoRNNRbG5R",
+ "name": "Generic PLA Silk @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PLA Silk@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.014"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PLA Silk @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/Generic PLA Silk @X-Plus 5.json
new file mode 100644
index 0000000000..1c0d325a37
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PLA Silk @X-Plus 5.json
@@ -0,0 +1,90 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_0_4",
+ "name": "Generic PLA Silk@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_density": [
+ "1.2"
+ ],
+ "filament_max_volumetric_speed": [
+ "7.5"
+ ],
+ "filament_retraction_length": [
+ "0.5"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pressure_advance": [
+ "0.032"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "cool_plate_temp": [
+ "45"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "55"
+ ],
+ "eng_plate_temp": [
+ "55"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "55"
+ ],
+ "hot_plate_temp": [
+ "55"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "55"
+ ],
+ "textured_plate_temp": [
+ "55"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PLA+ @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PLA+ @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..a7a736a95a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PLA+ @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "aD9SNuHAOxVFczNM",
+ "name": "Generic PLA+ @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PLA+@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PLA+ @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PLA+ @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..e10196f45c
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PLA+ @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "QDAKF2VaO4MkiYZ7",
+ "name": "Generic PLA+ @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PLA+@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PLA+ @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PLA+ @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..62c8ce9de1
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PLA+ @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "kNONALYQIZ8hkU2f",
+ "name": "Generic PLA+ @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PLA+@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.016"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PLA+ @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic PLA+ @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..78599cb326
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PLA+ @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "ehm8mY40hPq6Bjby",
+ "name": "Generic PLA+ @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic PLA+@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.008"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic PLA+ @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/Generic PLA+ @X-Plus 5.json
new file mode 100644
index 0000000000..e1d40b179f
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic PLA+ @X-Plus 5.json
@@ -0,0 +1,60 @@
+{
+ "type": "filament",
+ "filament_id": "GFL99",
+ "name": "Generic PLA+@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_density": [
+ "1.2"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "230"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature": [
+ "230"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic TPU 95A @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic TPU 95A @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..525652742c
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic TPU 95A @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "blCxzXDeplxz7FrS",
+ "name": "Generic TPU 95A @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic TPU 95A@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic TPU 95A @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic TPU 95A @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..f17a6e91e5
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic TPU 95A @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "mXwJpelMKlY7SQR8",
+ "name": "Generic TPU 95A @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic TPU 95A@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic TPU 95A @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/Generic TPU 95A @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..072983e488
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic TPU 95A @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "o9NLhClfpsJFEE3P",
+ "name": "Generic TPU 95A @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Generic TPU 95A@X-Plus 5-Series",
+ "nozzle_temperature": [
+ "220"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Generic TPU 95A @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/Generic TPU 95A @X-Plus 5.json
new file mode 100644
index 0000000000..d5f56d408b
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Generic TPU 95A @X-Plus 5.json
@@ -0,0 +1,81 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_0_50",
+ "name": "Generic TPU 95A@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "cool_plate_temp": [
+ "30"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "35"
+ ],
+ "eng_plate_temp": [
+ "35"
+ ],
+ "filament_adhesiveness_category": [
+ "600"
+ ],
+ "filament_density": [
+ "1.21"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "4"
+ ],
+ "filament_type": [
+ "TPU"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "35"
+ ],
+ "hot_plate_temp": [
+ "35"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "230"
+ ],
+ "nozzle_temperature_range_high": [
+ "250"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ],
+ "nozzle_temperature": [
+ "230"
+ ],
+ "pressure_advance": [
+ "0.1"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "30"
+ ],
+ "supertack_plate_temp": [
+ "30"
+ ],
+ "temperature_vitrification": [
+ "30"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "35"
+ ],
+ "textured_plate_temp": [
+ "35"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "textured_cool_plate_temp": [
+ "30"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..2346539b73
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "uarx8NrJerlKsoA8",
+ "name": "HATCHBOX ABS @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "HATCHBOX ABS@X-Plus 5-Series",
+ "chamber_temperatures": [
+ "0"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..4566ece152
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "T52l6W0u1uoiXrAx",
+ "name": "HATCHBOX ABS @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "HATCHBOX ABS@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..bb16d32b06
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "krTIEBmeK9q2R60M",
+ "name": "HATCHBOX ABS @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "HATCHBOX ABS@X-Plus 5-Series",
+ "nozzle_temperature": [
+ "250"
+ ],
+ "pressure_advance": [
+ "0.014"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..19b4ce995f
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "B99z7PiwClkWtyqv",
+ "name": "HATCHBOX ABS @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "HATCHBOX ABS@X-Plus 5-Series",
+ "nozzle_temperature": [
+ "250"
+ ],
+ "pressure_advance": [
+ "0.011"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @X-Plus 5.json
new file mode 100644
index 0000000000..3f5987240c
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX ABS @X-Plus 5.json
@@ -0,0 +1,105 @@
+{
+ "type": "filament",
+ "filament_id": "GFB99",
+ "name": "HATCHBOX ABS@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "chamber_temperatures": [
+ "55"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "90"
+ ],
+ "eng_plate_temp": [
+ "90"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_max_speed": [
+ "80"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "200"
+ ],
+ "filament_density": [
+ "1.05"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_type": [
+ "ABS"
+ ],
+ "filament_vendor": [
+ "HATCHBOX"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "90"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "260"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.035"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "90"
+ ],
+ "textured_plate_temp": [
+ "90"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..dc87553374
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "2y03Jbrd8epf06MW",
+ "name": "HATCHBOX PETG @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "HATCHBOX PETG@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "1"
+ ],
+ "pressure_advance": [
+ "0.056"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..21441a8d3e
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "KHbEUzPhVICXYhTs",
+ "name": "HATCHBOX PETG @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "HATCHBOX PETG@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.056"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..85219cea79
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "3HPxSQqEM8XGZqgU",
+ "name": "HATCHBOX PETG @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "HATCHBOX PETG@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..c6b4b699cd
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "eZnTfUmPGkeoEP87",
+ "name": "HATCHBOX PETG @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "HATCHBOX PETG@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @X-Plus 5.json
new file mode 100644
index 0000000000..5f794e561c
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX PETG @X-Plus 5.json
@@ -0,0 +1,102 @@
+{
+ "type": "filament",
+ "filament_id": "GFG99",
+ "name": "HATCHBOX PETG@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_adhesiveness_category": [
+ "300"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "13"
+ ],
+ "filament_type": [
+ "PETG"
+ ],
+ "filament_vendor": [
+ "HATCHBOX"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "240"
+ ],
+ "nozzle_temperature_range_high": [
+ "270"
+ ],
+ "nozzle_temperature_range_low": [
+ "220"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "overhang_fan_speed": [
+ "90"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "pressure_advance": [
+ "0.056"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "temperature_vitrification": [
+ "70"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_cool_plate_temp": [
+ "60"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..a1838c2041
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "Sn0LAKII01kQONZS",
+ "name": "HATCHBOX PLA @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "HATCHBOX PLA@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..82e54e389e
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "HWmejqWfehK4LG6C",
+ "name": "HATCHBOX PLA @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "HATCHBOX PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..d6ac4c9a7e
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "zjIVoA34wN8AT6cp",
+ "name": "HATCHBOX PLA @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "HATCHBOX PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.016"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..5b89e541e3
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "sTjweBRTvE0P6YtE",
+ "name": "HATCHBOX PLA @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "HATCHBOX PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.008"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @X-Plus 5.json
new file mode 100644
index 0000000000..094e540793
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/HATCHBOX PLA @X-Plus 5.json
@@ -0,0 +1,54 @@
+{
+ "type": "filament",
+ "filament_id": "GFL99",
+ "name": "HATCHBOX PLA@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_vendor": [
+ "HATCHBOX"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Overture ABS @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/Overture ABS @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..7194b54b7f
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Overture ABS @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "tLj2E2dWAdLKpC4K",
+ "name": "Overture ABS @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Overture ABS@X-Plus 5-Series",
+ "chamber_temperatures": [
+ "0"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.054"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Overture ABS @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/Overture ABS @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..5e50aa5dbc
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Overture ABS @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "1IkBG0ywAkk3VhOd",
+ "name": "Overture ABS @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Overture ABS@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.033"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Overture ABS @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/Overture ABS @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..9bacef9d3a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Overture ABS @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "4SXA27uTG5kcbnAq",
+ "name": "Overture ABS @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Overture ABS@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.02"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Overture ABS @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/Overture ABS @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..a53148ed26
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Overture ABS @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "AzC8XjbkzsxEPDMG",
+ "name": "Overture ABS @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Overture ABS@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.01"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Overture ABS @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/Overture ABS @X-Plus 5.json
new file mode 100644
index 0000000000..ea12b78ead
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Overture ABS @X-Plus 5.json
@@ -0,0 +1,108 @@
+{
+ "type": "filament",
+ "filament_id": "GFB99",
+ "name": "Overture ABS@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "chamber_temperatures": [
+ "60"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "90"
+ ],
+ "eng_plate_temp": [
+ "90"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_max_speed": [
+ "80"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "200"
+ ],
+ "filament_density": [
+ "1.12"
+ ],
+ "filament_flow_ratio": [
+ "0.96"
+ ],
+ "filament_max_volumetric_speed": [
+ "17"
+ ],
+ "filament_type": [
+ "ABS"
+ ],
+ "filament_vendor": [
+ "Overture"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "90"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "255"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.033"
+ ],
+ "slow_down_layer_time": [
+ "6"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "90"
+ ],
+ "textured_plate_temp": [
+ "90"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/Overture PLA @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/Overture PLA @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..f209b21a6e
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Overture PLA @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "2TAd2Dlk6KPvvmMg",
+ "name": "Overture PLA @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Overture PLA@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.062"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Overture PLA @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/Overture PLA @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..a625953f60
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Overture PLA @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "1rKASIobH0DqQUeH",
+ "name": "Overture PLA @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Overture PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.037"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Overture PLA @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/Overture PLA @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..5a3dfdee8f
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Overture PLA @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "UWQ7bLf74AxEPDdc",
+ "name": "Overture PLA @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Overture PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.019"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Overture PLA @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/Overture PLA @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..86d8605933
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Overture PLA @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "bIg1NW0EwTlmRNAF",
+ "name": "Overture PLA @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Overture PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.012"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Overture PLA @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/Overture PLA @X-Plus 5.json
new file mode 100644
index 0000000000..571eb2bbeb
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Overture PLA @X-Plus 5.json
@@ -0,0 +1,66 @@
+{
+ "type": "filament",
+ "filament_id": "GFL99",
+ "name": "Overture PLA@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_density": [
+ "1.2"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "11"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_vendor": [
+ "Overture"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "slow_down_layer_time": [
+ "10"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/PolyLite ABS @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/PolyLite ABS @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..0618d3c36f
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/PolyLite ABS @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "AJYooe7fIzg43McT",
+ "name": "PolyLite ABS @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "PolyLite ABS@X-Plus 5-Series",
+ "chamber_temperatures": [
+ "0"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.054"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/PolyLite ABS @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/PolyLite ABS @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..36e012b0d6
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/PolyLite ABS @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "S0uCyMruXw5waEYf",
+ "name": "PolyLite ABS @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "PolyLite ABS@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.033"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/PolyLite ABS @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/PolyLite ABS @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..1bf7cdf030
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/PolyLite ABS @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "oYlfF3MMF5DEeJpK",
+ "name": "PolyLite ABS @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "PolyLite ABS@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.02"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/PolyLite ABS @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/PolyLite ABS @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..9d1f541dfc
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/PolyLite ABS @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "hHXz74Ps9x4T7kZl",
+ "name": "PolyLite ABS @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "PolyLite ABS@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.01"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/PolyLite ABS @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/PolyLite ABS @X-Plus 5.json
new file mode 100644
index 0000000000..48b6caa32b
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/PolyLite ABS @X-Plus 5.json
@@ -0,0 +1,108 @@
+{
+ "type": "filament",
+ "filament_id": "GFB99",
+ "name": "PolyLite ABS@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "chamber_temperatures": [
+ "60"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "90"
+ ],
+ "eng_plate_temp": [
+ "90"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_max_speed": [
+ "80"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "200"
+ ],
+ "filament_density": [
+ "1.12"
+ ],
+ "filament_flow_ratio": [
+ "0.96"
+ ],
+ "filament_max_volumetric_speed": [
+ "17"
+ ],
+ "filament_type": [
+ "ABS"
+ ],
+ "filament_vendor": [
+ "Polymaker"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "90"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "255"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.033"
+ ],
+ "slow_down_layer_time": [
+ "6"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "90"
+ ],
+ "textured_plate_temp": [
+ "90"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/PolyLite PLA @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/PolyLite PLA @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..f823b38e67
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/PolyLite PLA @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "kKfybaeH6Llb3Vdc",
+ "name": "PolyLite PLA @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "PolyLite PLA@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.062"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/PolyLite PLA @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/PolyLite PLA @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..b7f3ef07f6
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/PolyLite PLA @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "hzEsCxIKwuV2ubrz",
+ "name": "PolyLite PLA @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "PolyLite PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.037"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/PolyLite PLA @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/PolyLite PLA @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..8b98d3842a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/PolyLite PLA @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "PODs7XKIgMiJZI5x",
+ "name": "PolyLite PLA @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "PolyLite PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.019"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/PolyLite PLA @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/PolyLite PLA @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..f4b6b8c2ee
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/PolyLite PLA @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "LQ1rP7NSTjw2moHk",
+ "name": "PolyLite PLA @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "PolyLite PLA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.012"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/PolyLite PLA @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/PolyLite PLA @X-Plus 5.json
new file mode 100644
index 0000000000..5b37f7ae8a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/PolyLite PLA @X-Plus 5.json
@@ -0,0 +1,66 @@
+{
+ "type": "filament",
+ "filament_id": "GFL99",
+ "name": "PolyLite PLA@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_density": [
+ "1.2"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "11"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_vendor": [
+ "Polymaker"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "slow_down_layer_time": [
+ "10"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..78389ceeb5
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "p9cDXBgbjwjOX5me",
+ "name": "Polymaker PLA-HT @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Polymaker PLA-HT@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.062"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..9f77b41119
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "TpI2jqmcVygyTO8N",
+ "name": "Polymaker PLA-HT @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Polymaker PLA-HT@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.037"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..3c46385369
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "69AgpjCCTxF5ffW1",
+ "name": "Polymaker PLA-HT @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Polymaker PLA-HT@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.019"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..788db83504
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "tcoQNICpWYGdE24e",
+ "name": "Polymaker PLA-HT @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "Polymaker PLA-HT@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.012"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @X-Plus 5.json
new file mode 100644
index 0000000000..f3c54e81f1
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/Polymaker PLA-HT @X-Plus 5.json
@@ -0,0 +1,66 @@
+{
+ "type": "filament",
+ "filament_id": "GFL99",
+ "name": "Polymaker PLA-HT@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_density": [
+ "1.2"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "11"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_vendor": [
+ "Polymaker"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature": [
+ "215"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "slow_down_layer_time": [
+ "10"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..254422bb19
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "8SvrXXv743rCyyeN",
+ "name": "QIDI ABS Odorless @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS Odorless@X-Plus 5-Series",
+ "chamber_temperatures": [
+ "0"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..1bd37ac08a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "YviPsfkGYv6Q3r3T",
+ "name": "QIDI ABS Odorless @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS Odorless@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..cbb361fb9c
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "YLOcbaCppSmQ1twv",
+ "name": "QIDI ABS Odorless @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS Odorless@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "24.5"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "pressure_advance": [
+ "0.014"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..912dc04ed7
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,23 @@
+{
+ "type": "filament",
+ "setting_id": "Klsu6iALsWgbg3vK",
+ "name": "QIDI ABS Odorless @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS Odorless@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "24.5"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "pressure_advance": [
+ "0.011"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @X-Plus 5.json
new file mode 100644
index 0000000000..a2f14984a0
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Odorless @X-Plus 5.json
@@ -0,0 +1,108 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_14",
+ "name": "QIDI ABS Odorless@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "chamber_temperatures": [
+ "55"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "90"
+ ],
+ "eng_plate_temp": [
+ "90"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_max_speed": [
+ "80"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_adhesiveness_category": [
+ "200"
+ ],
+ "filament_density": [
+ "1.02"
+ ],
+ "filament_flow_ratio": [
+ "0.92"
+ ],
+ "filament_max_volumetric_speed": [
+ "22"
+ ],
+ "filament_type": [
+ "ABS"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "90"
+ ],
+ "impact_strength_z": [
+ "7.4"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "260"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.035"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "90"
+ ],
+ "textured_plate_temp": [
+ "90"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..99a9e16c08
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "bTwNiMSHwex0gxrd",
+ "name": "QIDI ABS Rapido @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS Rapido@X-Plus 5-Series",
+ "chamber_temperatures": [
+ "0"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..30086f5dce
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "mcPlHcr33zPv3aIf",
+ "name": "QIDI ABS Rapido @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS Rapido@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..47278a61b1
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "0np334pRpl3qa8Uq",
+ "name": "QIDI ABS Rapido @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS Rapido@X-Plus 5-Series",
+ "nozzle_temperature": [
+ "250"
+ ],
+ "pressure_advance": [
+ "0.014"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..f79fcfdfac
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "Vp2bJxFhsPvW6K0P",
+ "name": "QIDI ABS Rapido @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS Rapido@X-Plus 5-Series",
+ "nozzle_temperature": [
+ "250"
+ ],
+ "pressure_advance": [
+ "0.011"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @X-Plus 5.json
new file mode 100644
index 0000000000..0ecb9c656c
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido @X-Plus 5.json
@@ -0,0 +1,105 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_11",
+ "name": "QIDI ABS Rapido@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "chamber_temperatures": [
+ "55"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "90"
+ ],
+ "eng_plate_temp": [
+ "90"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_max_speed": [
+ "80"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "200"
+ ],
+ "filament_density": [
+ "1.05"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_type": [
+ "ABS"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "90"
+ ],
+ "impact_strength_z": [
+ "7.4"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "260"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.035"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "90"
+ ],
+ "textured_plate_temp": [
+ "90"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..34632b393f
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "U69dFGlkEk9twDF6",
+ "name": "QIDI ABS Rapido Metal @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS Rapido Metal@X-Plus 5-Series",
+ "chamber_temperatures": [
+ "0"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..59492201a5
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "XaJbATawtVrUsXpz",
+ "name": "QIDI ABS Rapido Metal @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS Rapido Metal@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..93b4cb3aba
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "Xb0A7YqmqP2peSM3",
+ "name": "QIDI ABS Rapido Metal @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS Rapido Metal@X-Plus 5-Series",
+ "nozzle_temperature": [
+ "250"
+ ],
+ "pressure_advance": [
+ "0.016"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..c4edce73be
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "4AA9wGDNebbTHf4X",
+ "name": "QIDI ABS Rapido Metal @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS Rapido Metal@X-Plus 5-Series",
+ "nozzle_temperature": [
+ "250"
+ ],
+ "pressure_advance": [
+ "0.008"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @X-Plus 5.json
new file mode 100644
index 0000000000..f3603eda99
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS Rapido Metal @X-Plus 5.json
@@ -0,0 +1,105 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_13",
+ "name": "QIDI ABS Rapido Metal@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "chamber_temperatures": [
+ "55"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "90"
+ ],
+ "eng_plate_temp": [
+ "90"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_max_speed": [
+ "80"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "200"
+ ],
+ "filament_density": [
+ "1.06"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_type": [
+ "ABS"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "90"
+ ],
+ "impact_strength_z": [
+ "7.4"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "260"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.035"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "90"
+ ],
+ "textured_plate_temp": [
+ "90"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS-GF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS-GF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..d81d623d33
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS-GF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "V9h7YWcaTejmFCh0",
+ "name": "QIDI ABS-GF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS-GF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS-GF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS-GF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..88ee5f2146
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS-GF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "hO8H1GUCzMkwFtQH",
+ "name": "QIDI ABS-GF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS-GF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.01"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS-GF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ABS-GF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..997e67a0f0
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS-GF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "LskHdeEngKlRCSmg",
+ "name": "QIDI ABS-GF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ABS-GF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.01"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ABS-GF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI ABS-GF @X-Plus 5.json
new file mode 100644
index 0000000000..2ab2fbfc84
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ABS-GF @X-Plus 5.json
@@ -0,0 +1,114 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_12",
+ "name": "QIDI ABS-GF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "45"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "90"
+ ],
+ "eng_plate_temp": [
+ "90"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_max_speed": [
+ "20"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "200"
+ ],
+ "filament_density": [
+ "1.15"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "filament_type": [
+ "ABS-GF"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "90"
+ ],
+ "impact_strength_z": [
+ "5.3"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "260"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "270"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.035"
+ ],
+ "slow_down_layer_time": [
+ "5"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "90"
+ ],
+ "textured_plate_temp": [
+ "90"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ASA @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ASA @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..d417265f5a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ASA @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "FgeIGgT8xZCm4UO8",
+ "name": "QIDI ASA @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ASA@X-Plus 5-Series",
+ "chamber_temperatures": [
+ "0"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ASA @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ASA @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..ed86d714a1
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ASA @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "VRicNQizOCKkgLBJ",
+ "name": "QIDI ASA @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ASA@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ASA @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ASA @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..a7870accce
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ASA @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "KDjln7WdhhbSztX3",
+ "name": "QIDI ASA @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ASA@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "13"
+ ],
+ "pressure_advance": [
+ "0.014"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ASA @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ASA @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..30496917d1
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ASA @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "X9TOBuOKBbJIoF7y",
+ "name": "QIDI ASA @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ASA@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "13"
+ ],
+ "pressure_advance": [
+ "0.011"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ASA @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI ASA @X-Plus 5.json
new file mode 100644
index 0000000000..97127fe57b
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ASA @X-Plus 5.json
@@ -0,0 +1,111 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_18",
+ "name": "QIDI ASA@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "chamber_temperatures": [
+ "55"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "90"
+ ],
+ "eng_plate_temp": [
+ "90"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "40"
+ ],
+ "fan_max_speed": [
+ "50"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_adhesiveness_category": [
+ "200"
+ ],
+ "filament_density": [
+ "1.07"
+ ],
+ "filament_flow_ratio": [
+ "0.92"
+ ],
+ "filament_max_volumetric_speed": [
+ "16"
+ ],
+ "filament_type": [
+ "ASA"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "90"
+ ],
+ "impact_strength_z": [
+ "4.9"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "255"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.035"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "90"
+ ],
+ "textured_plate_temp": [
+ "90"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ASA-Aero @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ASA-Aero @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..08a4ed22a9
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ASA-Aero @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "g5F7NP83yx0Iub4c",
+ "name": "QIDI ASA-Aero @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ASA-Aero@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ASA-Aero @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI ASA-Aero @X-Plus 5.json
new file mode 100644
index 0000000000..14423fd58c
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ASA-Aero @X-Plus 5.json
@@ -0,0 +1,126 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_19",
+ "name": "QIDI ASA-Aero@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "chamber_temperatures": [
+ "60"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "90"
+ ],
+ "eng_plate_temp": [
+ "90"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "40"
+ ],
+ "fan_max_speed": [
+ "50"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_adhesiveness_category": [
+ "200"
+ ],
+ "filament_density": [
+ "1.03"
+ ],
+ "filament_flow_ratio": [
+ "0.7"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "filament_retract_when_changing_layer": [
+ "0"
+ ],
+ "filament_retraction_length": [
+ "0.01"
+ ],
+ "filament_retraction_minimum_travel": [
+ "0"
+ ],
+ "filament_type": [
+ "ASA-AERO"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "90"
+ ],
+ "filament_wipe": [
+ "0"
+ ],
+ "filament_z_hop": [
+ "0"
+ ],
+ "impact_strength_z": [
+ "3.4"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "260"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.021"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "90"
+ ],
+ "textured_plate_temp": [
+ "90"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ASA-CF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ASA-CF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..be97fdfd58
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ASA-CF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "Aqh00EJ8ZaiPCU6F",
+ "name": "QIDI ASA-CF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ASA-CF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ASA-CF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ASA-CF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..cd8bbc98bd
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ASA-CF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "fgwkL5igRvM0leJf",
+ "name": "QIDI ASA-CF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ASA-CF@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "13"
+ ],
+ "pressure_advance": [
+ "0.014"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ASA-CF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI ASA-CF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..3095a16138
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ASA-CF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,20 @@
+{
+ "type": "filament",
+ "setting_id": "bDAcTzwdiXT4fFnT",
+ "name": "QIDI ASA-CF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI ASA-CF@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "13"
+ ],
+ "pressure_advance": [
+ "0.011"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI ASA-CF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI ASA-CF @X-Plus 5.json
new file mode 100644
index 0000000000..9a8958c860
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI ASA-CF @X-Plus 5.json
@@ -0,0 +1,111 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_20",
+ "name": "QIDI ASA-CF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "chamber_temperatures": [
+ "55"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "90"
+ ],
+ "eng_plate_temp": [
+ "90"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "35"
+ ],
+ "fan_max_speed": [
+ "25"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_adhesiveness_category": [
+ "200"
+ ],
+ "filament_density": [
+ "1.07"
+ ],
+ "filament_flow_ratio": [
+ "0.9"
+ ],
+ "filament_max_volumetric_speed": [
+ "18"
+ ],
+ "filament_type": [
+ "ASA-CF"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "90"
+ ],
+ "impact_strength_z": [
+ "4.9"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "275"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "260"
+ ],
+ "nozzle_temperature": [
+ "275"
+ ],
+ "overhang_fan_speed": [
+ "80"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "slow_down_layer_time": [
+ "12"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "90"
+ ],
+ "textured_plate_temp": [
+ "90"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PA12-CF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PA12-CF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..165c5cfb62
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PA12-CF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "vDXAb7Kkj7nFc8go",
+ "name": "QIDI PA12-CF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PA12-CF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PA12-CF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PA12-CF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..ad26af1f86
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PA12-CF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "KjZ3jgo2Zoklkk0F",
+ "name": "QIDI PA12-CF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PA12-CF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PA12-CF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PA12-CF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..5324f0c183
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PA12-CF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "Xcl3UPe7tmXw9hXa",
+ "name": "QIDI PA12-CF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PA12-CF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PA12-CF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PA12-CF @X-Plus 5.json
new file mode 100644
index 0000000000..3464bed9a3
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PA12-CF @X-Plus 5.json
@@ -0,0 +1,111 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_27",
+ "name": "QIDI PA12-CF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "65"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "55"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "10"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "400"
+ ],
+ "filament_density": [
+ "1.09"
+ ],
+ "filament_flow_ratio": [
+ "0.96"
+ ],
+ "filament_max_volumetric_speed": [
+ "8"
+ ],
+ "filament_type": [
+ "PA12-CF"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "5.7"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "280"
+ ],
+ "nozzle_temperature_range_high": [
+ "300"
+ ],
+ "nozzle_temperature_range_low": [
+ "280"
+ ],
+ "nozzle_temperature": [
+ "280"
+ ],
+ "overhang_fan_speed": [
+ "40"
+ ],
+ "overhang_fan_threshold": [
+ "0%"
+ ],
+ "pressure_advance": [
+ "0.035"
+ ],
+ "slow_down_layer_time": [
+ "5"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_cool_plate_temp": [
+ "60"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PA6-CF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PA6-CF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..fbe5870078
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PA6-CF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "qTjsP8oR1sbh56Gh",
+ "name": "QIDI PA6-CF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PA6-CF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PA6-CF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PA6-CF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..016f9bb2e4
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PA6-CF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "4kzkdzJmDYGic0aa",
+ "name": "QIDI PA6-CF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PA6-CF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PA6-CF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PA6-CF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..ba0d981c29
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PA6-CF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "97peVPSildpjdDQj",
+ "name": "QIDI PA6-CF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PA6-CF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PA6-CF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PA6-CF @X-Plus 5.json
new file mode 100644
index 0000000000..9b6a66f61b
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PA6-CF @X-Plus 5.json
@@ -0,0 +1,111 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_25",
+ "name": "QIDI PA6-CF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "65"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "55"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "10"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "400"
+ ],
+ "filament_density": [
+ "1.09"
+ ],
+ "filament_flow_ratio": [
+ "0.96"
+ ],
+ "filament_max_volumetric_speed": [
+ "8"
+ ],
+ "filament_type": [
+ "PA6-CF"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "5.7"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "280"
+ ],
+ "nozzle_temperature_range_high": [
+ "300"
+ ],
+ "nozzle_temperature_range_low": [
+ "280"
+ ],
+ "nozzle_temperature": [
+ "280"
+ ],
+ "overhang_fan_speed": [
+ "40"
+ ],
+ "overhang_fan_threshold": [
+ "0%"
+ ],
+ "pressure_advance": [
+ "0.035"
+ ],
+ "slow_down_layer_time": [
+ "5"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_cool_plate_temp": [
+ "60"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PAHT-CF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PAHT-CF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..68d604414d
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PAHT-CF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "3iw5hq0KFa9NU4b3",
+ "name": "QIDI PAHT-CF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PAHT-CF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PAHT-CF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PAHT-CF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..0ca7290e39
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PAHT-CF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "7eBDjJbetxOC3aNT",
+ "name": "QIDI PAHT-CF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PAHT-CF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PAHT-CF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PAHT-CF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..b3b88d5f28
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PAHT-CF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "hkIpB0QZOGZpoYFX",
+ "name": "QIDI PAHT-CF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PAHT-CF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PAHT-CF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PAHT-CF @X-Plus 5.json
new file mode 100644
index 0000000000..fcfccfe0f6
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PAHT-CF @X-Plus 5.json
@@ -0,0 +1,111 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_30",
+ "name": "QIDI PAHT-CF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "65"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "60"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "10"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "400"
+ ],
+ "filament_density": [
+ "1.2"
+ ],
+ "filament_flow_ratio": [
+ "0.96"
+ ],
+ "filament_max_volumetric_speed": [
+ "8"
+ ],
+ "filament_type": [
+ "PAHT-CF"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "13.3"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "300"
+ ],
+ "nozzle_temperature_range_high": [
+ "320"
+ ],
+ "nozzle_temperature_range_low": [
+ "300"
+ ],
+ "nozzle_temperature": [
+ "300"
+ ],
+ "overhang_fan_speed": [
+ "40"
+ ],
+ "overhang_fan_threshold": [
+ "0%"
+ ],
+ "pressure_advance": [
+ "0.032"
+ ],
+ "slow_down_layer_time": [
+ "5"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "180"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PAHT-GF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PAHT-GF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..9638d33afc
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PAHT-GF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "R7cctkITobdKgMkY",
+ "name": "QIDI PAHT-GF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PAHT-GF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PAHT-GF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PAHT-GF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..4d926ff370
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PAHT-GF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "cVzpHjaSzsDm0bwG",
+ "name": "QIDI PAHT-GF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PAHT-GF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.015"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PAHT-GF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PAHT-GF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..ce49e3ef04
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PAHT-GF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "N0aUkpcJD6CvODci",
+ "name": "QIDI PAHT-GF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PAHT-GF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.01"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PAHT-GF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PAHT-GF @X-Plus 5.json
new file mode 100644
index 0000000000..3c0f1056ed
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PAHT-GF @X-Plus 5.json
@@ -0,0 +1,111 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_31",
+ "name": "QIDI PAHT-GF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "65"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "60"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "10"
+ ],
+ "fan_max_speed": [
+ "20"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "400"
+ ],
+ "filament_density": [
+ "1.27"
+ ],
+ "filament_flow_ratio": [
+ "0.96"
+ ],
+ "filament_max_volumetric_speed": [
+ "10"
+ ],
+ "filament_type": [
+ "PAHT-GF"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "13.3"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "300"
+ ],
+ "nozzle_temperature_range_high": [
+ "320"
+ ],
+ "nozzle_temperature_range_low": [
+ "300"
+ ],
+ "nozzle_temperature": [
+ "300"
+ ],
+ "overhang_fan_speed": [
+ "40"
+ ],
+ "overhang_fan_threshold": [
+ "0%"
+ ],
+ "pressure_advance": [
+ "0.027"
+ ],
+ "slow_down_layer_time": [
+ "5"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "180"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PC-ABS-FR @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PC-ABS-FR @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..e4842206ed
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PC-ABS-FR @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "uYwbMiemSo7LxiqR",
+ "name": "QIDI PC/ABS-FR @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PC/ABS-FR@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.042"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PC-ABS-FR @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PC-ABS-FR @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..35c317e8d3
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PC-ABS-FR @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "Fxkv0PN8RU17fkB0",
+ "name": "QIDI PC/ABS-FR @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PC/ABS-FR@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.031"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PC-ABS-FR @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PC-ABS-FR @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..456a93a6d0
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PC-ABS-FR @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "oKNGzYqymTnWQsBB",
+ "name": "QIDI PC/ABS-FR @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PC/ABS-FR@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.024"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PC-ABS-FR @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PC-ABS-FR @X-Plus 5.json
new file mode 100644
index 0000000000..b6c6fb3b64
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PC-ABS-FR @X-Plus 5.json
@@ -0,0 +1,111 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_34",
+ "name": "QIDI PC/ABS-FR@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "50"
+ ],
+ "chamber_temperatures": [
+ "55"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "65"
+ ],
+ "cool_plate_temp": [
+ "65"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "100"
+ ],
+ "eng_plate_temp": [
+ "100"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_adhesiveness_category": [
+ "200"
+ ],
+ "filament_density": [
+ "1.19"
+ ],
+ "filament_flow_ratio": [
+ "0.92"
+ ],
+ "filament_max_volumetric_speed": [
+ "8"
+ ],
+ "filament_type": [
+ "PC-ABS-FR"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "100"
+ ],
+ "hot_plate_temp": [
+ "100"
+ ],
+ "impact_strength_z": [
+ "8"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "overhang_fan_speed": [
+ "90"
+ ],
+ "overhang_fan_threshold": [
+ "75%"
+ ],
+ "pressure_advance": [
+ "0.082"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "65"
+ ],
+ "supertack_plate_temp": [
+ "65"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "100"
+ ],
+ "textured_plate_temp": [
+ "100"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "65"
+ ],
+ "textured_cool_plate_temp": [
+ "65"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PEBA 95A @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PEBA 95A @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..5fa07706a9
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PEBA 95A @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "hgdi1oL4EFzh0h7h",
+ "name": "QIDI PEBA 95A @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PEBA 95A@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PEBA 95A @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PEBA 95A @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..f44261951e
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PEBA 95A @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "iNZpBz1iklW3sJlj",
+ "name": "QIDI PEBA 95A @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PEBA 95A@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PEBA 95A @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PEBA 95A @X-Plus 5.json
new file mode 100644
index 0000000000..43410eabe1
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PEBA 95A @X-Plus 5.json
@@ -0,0 +1,96 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_36",
+ "name": "QIDI PEBA 95A@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "cool_plate_temp": [
+ "30"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "35"
+ ],
+ "eng_plate_temp": [
+ "35"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "filament_adhesiveness_category": [
+ "600"
+ ],
+ "filament_density": [
+ "1.15"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "6"
+ ],
+ "filament_retraction_length": [
+ "0.8"
+ ],
+ "filament_type": [
+ "PEBA"
+ ],
+ "filament_vendor": [
+ "QIDI"
+ ],
+ "filament_z_hop": [
+ "0"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "35"
+ ],
+ "hot_plate_temp": [
+ "35"
+ ],
+ "impact_strength_z": [
+ "88.7"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "260"
+ ],
+ "nozzle_temperature_range_low": [
+ "230"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "pressure_advance": [
+ "0.04"
+ ],
+ "slow_down_layer_time": [
+ "14"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "30"
+ ],
+ "supertack_plate_temp": [
+ "30"
+ ],
+ "temperature_vitrification": [
+ "30"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "35"
+ ],
+ "textured_plate_temp": [
+ "35"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "textured_cool_plate_temp": [
+ "30"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PET-CF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PET-CF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..bfdd1aed31
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PET-CF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "bILtWMlzBPi4Ft8a",
+ "name": "QIDI PET-CF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PET-CF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PET-CF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PET-CF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..cb78cf3afc
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PET-CF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "E0Y6g3qpoERrgSUH",
+ "name": "QIDI PET-CF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PET-CF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.025"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PET-CF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PET-CF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..ae40d594ff
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PET-CF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "e2HuHVJZck2nKANa",
+ "name": "QIDI PET-CF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PET-CF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.025"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PET-CF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PET-CF @X-Plus 5.json
new file mode 100644
index 0000000000..162cbec691
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PET-CF @X-Plus 5.json
@@ -0,0 +1,111 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_37",
+ "name": "QIDI PET-CF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "65"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "55"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "70"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "10"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "800"
+ ],
+ "filament_density": [
+ "1.3"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "8"
+ ],
+ "filament_type": [
+ "PET-CF"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "4.5"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "280"
+ ],
+ "nozzle_temperature_range_high": [
+ "320"
+ ],
+ "nozzle_temperature_range_low": [
+ "280"
+ ],
+ "nozzle_temperature": [
+ "280"
+ ],
+ "overhang_fan_speed": [
+ "40"
+ ],
+ "overhang_fan_threshold": [
+ "0%"
+ ],
+ "pressure_advance": [
+ "0.032"
+ ],
+ "slow_down_layer_time": [
+ "5"
+ ],
+ "temperature_vitrification": [
+ "185"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "70"
+ ],
+ "supertack_plate_temp": [
+ "70"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "70"
+ ],
+ "textured_cool_plate_temp": [
+ "70"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PET-GF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PET-GF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..97029aeb25
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PET-GF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "2NHbKFmgDoN1oHlo",
+ "name": "QIDI PET-GF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PET-GF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PET-GF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PET-GF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..480d13bb65
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PET-GF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "cMlzOMKIIIro4H62",
+ "name": "QIDI PET-GF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PET-GF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.014"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PET-GF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PET-GF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..2cc0cfe2cb
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PET-GF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "evxG7nCDQx2Y5UV5",
+ "name": "QIDI PET-GF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PET-GF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.01"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PET-GF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PET-GF @X-Plus 5.json
new file mode 100644
index 0000000000..84310856cc
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PET-GF @X-Plus 5.json
@@ -0,0 +1,111 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_38",
+ "name": "QIDI PET-GF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "50"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "50"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "70"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "10"
+ ],
+ "fan_max_speed": [
+ "20"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "800"
+ ],
+ "filament_density": [
+ "1.38"
+ ],
+ "filament_flow_ratio": [
+ "0.97"
+ ],
+ "filament_max_volumetric_speed": [
+ "10"
+ ],
+ "filament_type": [
+ "PET-GF"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "4.5"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "300"
+ ],
+ "nozzle_temperature_range_high": [
+ "320"
+ ],
+ "nozzle_temperature_range_low": [
+ "280"
+ ],
+ "nozzle_temperature": [
+ "300"
+ ],
+ "overhang_fan_speed": [
+ "40"
+ ],
+ "overhang_fan_threshold": [
+ "0%"
+ ],
+ "pressure_advance": [
+ "0.022"
+ ],
+ "slow_down_layer_time": [
+ "5"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "70"
+ ],
+ "supertack_plate_temp": [
+ "70"
+ ],
+ "temperature_vitrification": [
+ "185"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "70"
+ ],
+ "textured_cool_plate_temp": [
+ "70"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..6689cca71a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "k4jOZFY5QV2bMKHK",
+ "name": "QIDI PETG Basic @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Basic@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "1"
+ ],
+ "pressure_advance": [
+ "0.054"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..c1b29f1b75
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "b55sLpGKCrWLiDPf",
+ "name": "QIDI PETG Basic @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Basic@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..3be97a337f
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "XcxbsZ4d8Dh21WX0",
+ "name": "QIDI PETG Basic @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Basic@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..92a57fb1b8
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "9MEoOjLU7AOCvb9X",
+ "name": "QIDI PETG Basic @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Basic@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @X-Plus 5.json
new file mode 100644
index 0000000000..46810f49c3
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Basic @X-Plus 5.json
@@ -0,0 +1,102 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_39",
+ "name": "QIDI PETG Basic@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_adhesiveness_category": [
+ "300"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "15"
+ ],
+ "filament_type": [
+ "PETG"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "10.6"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "overhang_fan_speed": [
+ "90"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "pressure_advance": [
+ "0.054"
+ ],
+ "slow_down_layer_time": [
+ "12"
+ ],
+ "temperature_vitrification": [
+ "70"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_cool_plate_temp": [
+ "60"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..220a6ce55a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "oi5JKM4fwEYHefs0",
+ "name": "QIDI PETG Rapido @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Rapido@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "1"
+ ],
+ "pressure_advance": [
+ "0.054"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..9fe3affac2
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "SZOwb16vrcdtaDzJ",
+ "name": "QIDI PETG Rapido @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Rapido@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..a550919113
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "4LKxL4N0ccD6vZ60",
+ "name": "QIDI PETG Rapido @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Rapido@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..b56b55d1ff
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "rsNDDt3IFUOMYV3O",
+ "name": "QIDI PETG Rapido @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Rapido@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @X-Plus 5.json
new file mode 100644
index 0000000000..fd506d8e74
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Rapido @X-Plus 5.json
@@ -0,0 +1,102 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_41",
+ "name": "QIDI PETG Rapido@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "20"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "300"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "18"
+ ],
+ "filament_type": [
+ "PETG"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "10.6"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "275"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "pressure_advance": [
+ "0.054"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "temperature_vitrification": [
+ "70"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_cool_plate_temp": [
+ "60"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..7708ebba0d
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "k4kLQheLeWOw8bwp",
+ "name": "QIDI PETG Tough @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Tough@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "1"
+ ],
+ "pressure_advance": [
+ "0.056"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..5c8c182a2b
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "WEyrSDtW2CJeLQmg",
+ "name": "QIDI PETG Tough @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Tough@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..ad75cc5722
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "Morgo6GIzU3Voc0Q",
+ "name": "QIDI PETG Tough @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Tough@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..37c0beddb9
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "DsoxBXKOjsENLEZf",
+ "name": "QIDI PETG Tough @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Tough@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @X-Plus 5.json
new file mode 100644
index 0000000000..3e9f0a1cdf
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Tough @X-Plus 5.json
@@ -0,0 +1,102 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_40",
+ "name": "QIDI PETG Tough@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_adhesiveness_category": [
+ "300"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "13"
+ ],
+ "filament_type": [
+ "PETG"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "10.6"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "240"
+ ],
+ "nozzle_temperature_range_high": [
+ "270"
+ ],
+ "nozzle_temperature_range_low": [
+ "220"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "overhang_fan_speed": [
+ "90"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "pressure_advance": [
+ "0.056"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "temperature_vitrification": [
+ "70"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_cool_plate_temp": [
+ "60"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..03e72feba9
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "2UJnG0rXeU2nCIQL",
+ "name": "QIDI PETG Translucent @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Translucent@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "1"
+ ],
+ "pressure_advance": [
+ "0.054"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..545bd42538
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "S2DQ7jy5KqbiVNnV",
+ "name": "QIDI PETG Translucent @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Translucent@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..963916f76e
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "G33dlk73weGNFNwg",
+ "name": "QIDI PETG Translucent @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Translucent@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..42bf38bde4
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "zqI9F8vplNFfm2pa",
+ "name": "QIDI PETG Translucent @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG Translucent@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @X-Plus 5.json
new file mode 100644
index 0000000000..62ea937028
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG Translucent @X-Plus 5.json
@@ -0,0 +1,102 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_45",
+ "name": "QIDI PETG Translucent@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "30"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_adhesiveness_category": [
+ "300"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "8"
+ ],
+ "filament_type": [
+ "PETG"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "10.6"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "overhang_fan_speed": [
+ "90"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "pressure_advance": [
+ "0.054"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "temperature_vitrification": [
+ "70"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_cool_plate_temp": [
+ "60"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG-CF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG-CF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..04176974f5
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG-CF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "cXbQtMQKmAFqwmqK",
+ "name": "QIDI PETG-CF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG-CF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG-CF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG-CF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..ce16a13acf
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG-CF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "YNIWSLXvW6kSPRFG",
+ "name": "QIDI PETG-CF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG-CF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG-CF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG-CF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..e1ce42ee0a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG-CF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "O0lwfGXO3BdPCask",
+ "name": "QIDI PETG-CF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG-CF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG-CF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PETG-CF @X-Plus 5.json
new file mode 100644
index 0000000000..fcddc636a8
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG-CF @X-Plus 5.json
@@ -0,0 +1,102 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_42",
+ "name": "QIDI PETG-CF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "5"
+ ],
+ "filament_adhesiveness_category": [
+ "300"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "11.5"
+ ],
+ "filament_type": [
+ "PETG-CF"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "10.6"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "255"
+ ],
+ "nozzle_temperature_range_high": [
+ "270"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "255"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "pressure_advance": [
+ "0.048"
+ ],
+ "slow_down_layer_time": [
+ "6"
+ ],
+ "temperature_vitrification": [
+ "70"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_cool_plate_temp": [
+ "60"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG-GF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG-GF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..46b3b1176a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG-GF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "zfI1VXQ7E0re78CC",
+ "name": "QIDI PETG-GF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG-GF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG-GF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG-GF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..4af6b7db02
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG-GF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "zYEbjZPipK4BgHRO",
+ "name": "QIDI PETG-GF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG-GF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG-GF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PETG-GF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..bf819e04a9
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG-GF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "5ef246YwGEK0eVCr",
+ "name": "QIDI PETG-GF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PETG-GF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.04"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PETG-GF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PETG-GF @X-Plus 5.json
new file mode 100644
index 0000000000..fa65907d3d
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PETG-GF @X-Plus 5.json
@@ -0,0 +1,102 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_43",
+ "name": "QIDI PETG-GF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "50"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "300"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "8"
+ ],
+ "filament_type": [
+ "PETG-GF"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "10.6"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "255"
+ ],
+ "nozzle_temperature_range_high": [
+ "270"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "255"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "pressure_advance": [
+ "0.056"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "temperature_vitrification": [
+ "70"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_cool_plate_temp": [
+ "60"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..4ec7f05eb9
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "sfrpgBzPufKwgBCT",
+ "name": "QIDI PLA Basic @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Basic@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..20dd378bd2
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "6ZscfuWENwCkdSYE",
+ "name": "QIDI PLA Basic @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Basic@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.038"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..574e748c98
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "pEry2GMq8UJEw7c7",
+ "name": "QIDI PLA Basic @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Basic@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.016"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..527eb00054
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "MTq8xcAKCWABLI2k",
+ "name": "QIDI PLA Basic @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Basic@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.008"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @X-Plus 5.json
new file mode 100644
index 0000000000..0ee194dfb3
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Basic @X-Plus 5.json
@@ -0,0 +1,63 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_7",
+ "name": "QIDI PLA Basic@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "cool_plate_temp": [
+ "45"
+ ],
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_max_volumetric_speed": [
+ "18"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "impact_strength_z": [
+ "13.8"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..0078600f36
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "54iiCCwizthHtT1v",
+ "name": "QIDI PLA Matte Basic @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Matte Basic@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..d67aa77dc4
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "ojnl8sBbBL4QBL8q",
+ "name": "QIDI PLA Matte Basic @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Matte Basic@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.038"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..6575396e45
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "XtZarwF2HIipdHjN",
+ "name": "QIDI PLA Matte Basic @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Matte Basic@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.016"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..8c4584a70b
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "TRkCNQeoDvLBaJMt",
+ "name": "QIDI PLA Matte Basic @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Matte Basic@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.008"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @X-Plus 5.json
new file mode 100644
index 0000000000..7796bf1faa
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Matte Basic @X-Plus 5.json
@@ -0,0 +1,63 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_8",
+ "name": "QIDI PLA Matte Basic@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "cool_plate_temp": [
+ "45"
+ ],
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_max_volumetric_speed": [
+ "18"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "impact_strength_z": [
+ "13.8"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..3ea3dac12f
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "S56TixVPmXr4uFut",
+ "name": "QIDI PLA Rapido @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Rapido@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..178fcfd08d
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "KATHrxoL84i7MiVJ",
+ "name": "QIDI PLA Rapido @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Rapido@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.038"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..2ad1d18a60
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "YE6WmGAG5Ua6bbap",
+ "name": "QIDI PLA Rapido @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Rapido@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.016"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..ffc9edfb78
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "KPqnbBv0Np93O02u",
+ "name": "QIDI PLA Rapido @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Rapido@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.008"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @X-Plus 5.json
new file mode 100644
index 0000000000..1aa1803258
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido @X-Plus 5.json
@@ -0,0 +1,60 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_1",
+ "name": "QIDI PLA Rapido@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "cool_plate_temp": [
+ "45"
+ ],
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "impact_strength_z": [
+ "13.8"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..e469cf1fd1
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "jlUpp5oaYSWwaNn1",
+ "name": "QIDI PLA Rapido Matte @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Rapido Matte@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..3f74323770
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "E0gYAZUksoFlebuH",
+ "name": "QIDI PLA Rapido Matte @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Rapido Matte@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..f45479c37f
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "juxpaK6EosaHj2ok",
+ "name": "QIDI PLA Rapido Matte @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Rapido Matte@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.016"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..7e4ec99248
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "OlgI3WQA3QLhPsdw",
+ "name": "QIDI PLA Rapido Matte @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Rapido Matte@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.008"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @X-Plus 5.json
new file mode 100644
index 0000000000..d8cbd06ea1
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Matte @X-Plus 5.json
@@ -0,0 +1,57 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_2",
+ "name": "QIDI PLA Rapido Matte@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_density": [
+ "1.42"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "impact_strength_z": [
+ "6.6"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..7506c80541
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "t9qUv1IlI5VJ8LoV",
+ "name": "QIDI PLA Rapido Metal @Qidi X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Rapido Metal@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "pressure_advance": [
+ "0.038"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..e2be1216f3
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "ARcrUoVsGSM0RB1a",
+ "name": "QIDI PLA Rapido Metal @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Rapido Metal@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.038"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..2b3fae0a1e
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "A23HjUFAyt4GeHAW",
+ "name": "QIDI PLA Rapido Metal @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Rapido Metal@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.020"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..e6868b6772
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "nMpSP1jmsQIUjGPb",
+ "name": "QIDI PLA Rapido Metal @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Rapido Metal@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.01"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @X-Plus 5.json
new file mode 100644
index 0000000000..404b7cd1e8
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Rapido Metal @X-Plus 5.json
@@ -0,0 +1,57 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_3",
+ "name": "QIDI PLA Rapido Metal@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "filament_type": [
+ "PLA"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_density": [
+ "1.20"
+ ],
+ "impact_strength_z": [
+ "16.8"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Silk @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Silk @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..dfd789a216
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Silk @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "IUU7TApRivYtrrt0",
+ "name": "QIDI PLA Silk @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Silk@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Silk @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Silk @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..286c1d3a36
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Silk @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "lx9Dqv6EMmZ0C2SD",
+ "name": "QIDI PLA Silk @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA Silk@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.021"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA Silk @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PLA Silk @X-Plus 5.json
new file mode 100644
index 0000000000..57c0c3e1dc
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA Silk @X-Plus 5.json
@@ -0,0 +1,84 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_4",
+ "name": "QIDI PLA Silk@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_density": [
+ "1.24"
+ ],
+ "filament_max_volumetric_speed": [
+ "7.5"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "impact_strength_z": [
+ "4.6"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "cool_plate_temp": [
+ "45"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "55"
+ ],
+ "eng_plate_temp": [
+ "55"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "55"
+ ],
+ "hot_plate_temp": [
+ "55"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "55"
+ ],
+ "textured_plate_temp": [
+ "55"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA-CF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA-CF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..c341f7c71d
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA-CF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "5PocTwpY0SnNzcdc",
+ "name": "QIDI PLA-CF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA-CF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.034"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA-CF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA-CF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..5c08e7f67f
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA-CF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "5NETSLSQlaoR2MYD",
+ "name": "QIDI PLA-CF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA-CF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.012"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA-CF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PLA-CF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..7435222e8b
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA-CF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,17 @@
+{
+ "type": "filament",
+ "setting_id": "AUO7iSMEa6GDvM7Y",
+ "name": "QIDI PLA-CF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PLA-CF@X-Plus 5-Series",
+ "filament_max_volumetric_speed": [
+ "18"
+ ],
+ "pressure_advance": [
+ "0.008"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PLA-CF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PLA-CF @X-Plus 5.json
new file mode 100644
index 0000000000..1c4d8c99e3
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PLA-CF @X-Plus 5.json
@@ -0,0 +1,75 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_5",
+ "name": "QIDI PLA-CF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "additional_cooling_fan_speed": [
+ "0"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "cool_plate_temp": [
+ "45"
+ ],
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_density": [
+ "1.25"
+ ],
+ "filament_flow_ratio": [
+ "0.93"
+ ],
+ "filament_max_volumetric_speed": [
+ "15"
+ ],
+ "filament_type": [
+ "PLA-CF"
+ ],
+ "impact_strength_z": [
+ "7.8"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "250"
+ ],
+ "nozzle_temperature_range_low": [
+ "210"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pressure_advance": [
+ "0.042"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": [],
+ "close_additional_fan_first_x_layers": [
+ "1"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PPS-CF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PPS-CF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..2c2d573713
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PPS-CF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "FwWut7sJIMbe87XC",
+ "name": "QIDI PPS-CF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PPS-CF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PPS-CF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PPS-CF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..9cc0556490
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PPS-CF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "gDIuKCdgoP59Xc0G",
+ "name": "QIDI PPS-CF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PPS-CF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.021"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PPS-CF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PPS-CF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..573f8e17f8
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PPS-CF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "D29sGCB9OI4cTn0S",
+ "name": "QIDI PPS-CF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PPS-CF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.008"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PPS-CF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PPS-CF @X-Plus 5.json
new file mode 100644
index 0000000000..c6be7046f6
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PPS-CF @X-Plus 5.json
@@ -0,0 +1,117 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_44",
+ "name": "QIDI PPS-CF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "65"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "65"
+ ],
+ "chamber_temperatures": [
+ "60"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "110"
+ ],
+ "eng_plate_temp": [
+ "110"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "5"
+ ],
+ "fan_max_speed": [
+ "30"
+ ],
+ "fan_min_speed": [
+ "0"
+ ],
+ "filament_adhesiveness_category": [
+ "801"
+ ],
+ "filament_density": [
+ "1.3"
+ ],
+ "filament_flow_ratio": [
+ "0.97"
+ ],
+ "filament_max_volumetric_speed": [
+ "6"
+ ],
+ "filament_type": [
+ "PPS-CF"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "110"
+ ],
+ "hot_plate_temp": [
+ "110"
+ ],
+ "impact_strength_z": [
+ "2.8"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "320"
+ ],
+ "nozzle_temperature_range_high": [
+ "350"
+ ],
+ "nozzle_temperature_range_low": [
+ "300"
+ ],
+ "nozzle_temperature": [
+ "320"
+ ],
+ "overhang_fan_speed": [
+ "40"
+ ],
+ "overhang_fan_threshold": [
+ "0%"
+ ],
+ "pressure_advance": [
+ "0.032"
+ ],
+ "slow_down_layer_time": [
+ "2"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "180"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "110"
+ ],
+ "textured_plate_temp": [
+ "110"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PPS-GF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PPS-GF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..de96ad5f7a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PPS-GF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "5C6dIIgQOt4NiTu0",
+ "name": "QIDI PPS-GF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PPS-GF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.03"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PPS-GF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PPS-GF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..470839ef59
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PPS-GF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "aSd6UW4Mrlxpa15E",
+ "name": "QIDI PPS-GF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PPS-GF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.021"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PPS-GF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI PPS-GF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..6cc49dbd68
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PPS-GF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "7JC2zAUgtGu5zSGo",
+ "name": "QIDI PPS-GF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI PPS-GF@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.008"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI PPS-GF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI PPS-GF @X-Plus 5.json
new file mode 100644
index 0000000000..757d4dbf3d
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI PPS-GF @X-Plus 5.json
@@ -0,0 +1,117 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_46",
+ "name": "QIDI PPS-GF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "65"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "65"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "90"
+ ],
+ "eng_plate_temp": [
+ "90"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "90"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_adhesiveness_category": [
+ "801"
+ ],
+ "filament_density": [
+ "1.3"
+ ],
+ "filament_flow_ratio": [
+ "0.97"
+ ],
+ "filament_max_volumetric_speed": [
+ "10"
+ ],
+ "filament_type": [
+ "PPS-GF"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "90"
+ ],
+ "impact_strength_z": [
+ "2.8"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "320"
+ ],
+ "nozzle_temperature_range_high": [
+ "350"
+ ],
+ "nozzle_temperature_range_low": [
+ "300"
+ ],
+ "nozzle_temperature": [
+ "320"
+ ],
+ "overhang_fan_speed": [
+ "50"
+ ],
+ "overhang_fan_threshold": [
+ "0%"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "slow_down_layer_time": [
+ "6"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "temperature_vitrification": [
+ "180"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "90"
+ ],
+ "textured_plate_temp": [
+ "90"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI Support For PAHT @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI Support For PAHT @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..5bd3b85fb9
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI Support For PAHT @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "oMvDD9rKJGcezwpq",
+ "name": "QIDI Support For PAHT @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI Support For PAHT@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI Support For PAHT @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI Support For PAHT @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..37f474533e
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI Support For PAHT @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "6BhbbuUP6HCVScDd",
+ "name": "QIDI Support For PAHT @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI Support For PAHT@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI Support For PAHT @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI Support For PAHT @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..f28e56c5b1
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI Support For PAHT @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "kA4fvvj6xZEhArXv",
+ "name": "QIDI Support For PAHT @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI Support For PAHT@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI Support For PAHT @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI Support For PAHT @X-Plus 5.json
new file mode 100644
index 0000000000..ed1222daa9
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI Support For PAHT @X-Plus 5.json
@@ -0,0 +1,114 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_32",
+ "name": "QIDI Support For PAHT@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "65"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "60"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "cool_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "10"
+ ],
+ "fan_max_speed": [
+ "60"
+ ],
+ "fan_min_speed": [
+ "0"
+ ],
+ "filament_adhesiveness_category": [
+ "800"
+ ],
+ "filament_density": [
+ "1.26"
+ ],
+ "filament_flow_ratio": [
+ "0.94"
+ ],
+ "filament_is_support": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "8"
+ ],
+ "filament_type": [
+ "PAHT-S"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "4.5"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "280"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "260"
+ ],
+ "nozzle_temperature": [
+ "280"
+ ],
+ "overhang_fan_speed": [
+ "30"
+ ],
+ "overhang_fan_threshold": [
+ "95%"
+ ],
+ "pressure_advance": [
+ "0.02"
+ ],
+ "slow_down_layer_time": [
+ "6"
+ ],
+ "temperature_vitrification": [
+ "218"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "80"
+ ],
+ "supertack_plate_temp": [
+ "80"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_cool_plate_temp": [
+ "80"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI Support For PET-PA @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI Support For PET-PA @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..615d9af041
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI Support For PET-PA @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "0xy82KbAJD5uBara",
+ "name": "QIDI Support For PET/PA @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI Support For PET/PA@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI Support For PET-PA @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI Support For PET-PA @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..1e0c81424c
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI Support For PET-PA @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "2oCGYFdC4dfpNUw4",
+ "name": "QIDI Support For PET/PA @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI Support For PET/PA@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI Support For PET-PA @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI Support For PET-PA @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..2d47d18707
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI Support For PET-PA @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "hFYahJkYIgmjcuPb",
+ "name": "QIDI Support For PET/PA @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI Support For PET/PA@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI Support For PET-PA @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI Support For PET-PA @X-Plus 5.json
new file mode 100644
index 0000000000..346c3cc3eb
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI Support For PET-PA @X-Plus 5.json
@@ -0,0 +1,114 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_33",
+ "name": "QIDI Support For PET/PA@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "65"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "55"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "70"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "10"
+ ],
+ "fan_max_speed": [
+ "60"
+ ],
+ "fan_min_speed": [
+ "0"
+ ],
+ "filament_adhesiveness_category": [
+ "800"
+ ],
+ "filament_density": [
+ "1.16"
+ ],
+ "filament_flow_ratio": [
+ "0.91"
+ ],
+ "filament_is_support": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "8"
+ ],
+ "filament_type": [
+ "PA-S"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "4.5"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "280"
+ ],
+ "nozzle_temperature_range_high": [
+ "280"
+ ],
+ "nozzle_temperature_range_low": [
+ "260"
+ ],
+ "nozzle_temperature": [
+ "280"
+ ],
+ "overhang_fan_speed": [
+ "30"
+ ],
+ "overhang_fan_threshold": [
+ "95%"
+ ],
+ "pressure_advance": [
+ "0.02"
+ ],
+ "slow_down_layer_time": [
+ "6"
+ ],
+ "temperature_vitrification": [
+ "168"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "70"
+ ],
+ "supertack_plate_temp": [
+ "70"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "70"
+ ],
+ "textured_cool_plate_temp": [
+ "70"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI TPU 95A-HF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI TPU 95A-HF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..1f2db1eb25
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI TPU 95A-HF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "ygLg4KVojo7YoG5K",
+ "name": "QIDI TPU 95A-HF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI TPU 95A-HF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI TPU 95A-HF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI TPU 95A-HF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..94e992d0e9
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI TPU 95A-HF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "K98nPXclatc5HnIx",
+ "name": "QIDI TPU 95A-HF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI TPU 95A-HF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI TPU 95A-HF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI TPU 95A-HF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..e05faeed65
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI TPU 95A-HF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "pTxBir6QC9KhWrLU",
+ "name": "QIDI TPU 95A-HF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI TPU 95A-HF@X-Plus 5-Series",
+ "nozzle_temperature": [
+ "220"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI TPU 95A-HF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI TPU 95A-HF @X-Plus 5.json
new file mode 100644
index 0000000000..4721ab171c
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI TPU 95A-HF @X-Plus 5.json
@@ -0,0 +1,84 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_50",
+ "name": "QIDI TPU 95A-HF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "cool_plate_temp": [
+ "30"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "35"
+ ],
+ "eng_plate_temp": [
+ "35"
+ ],
+ "filament_adhesiveness_category": [
+ "600"
+ ],
+ "filament_density": [
+ "1.15"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "4"
+ ],
+ "filament_type": [
+ "TPU"
+ ],
+ "filament_vendor": [
+ "QIDI"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "35"
+ ],
+ "hot_plate_temp": [
+ "35"
+ ],
+ "impact_strength_z": [
+ "88.7"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "230"
+ ],
+ "nozzle_temperature_range_high": [
+ "250"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ],
+ "nozzle_temperature": [
+ "230"
+ ],
+ "pressure_advance": [
+ "0.1"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "30"
+ ],
+ "supertack_plate_temp": [
+ "30"
+ ],
+ "temperature_vitrification": [
+ "30"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "35"
+ ],
+ "textured_plate_temp": [
+ "35"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "textured_cool_plate_temp": [
+ "30"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI TPU-Aero @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI TPU-Aero @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..592ad5a51c
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI TPU-Aero @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "KIIwoI87n5MkT83b",
+ "name": "QIDI TPU-Aero @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI TPU-Aero@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI TPU-Aero @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI TPU-Aero @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..f18b67f608
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI TPU-Aero @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "eUNygrv7weqgX7e0",
+ "name": "QIDI TPU-Aero @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI TPU-Aero@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI TPU-Aero @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI TPU-Aero @X-Plus 5.json
new file mode 100644
index 0000000000..b6eee90916
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI TPU-Aero @X-Plus 5.json
@@ -0,0 +1,93 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_49",
+ "name": "QIDI TPU-Aero@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "cool_plate_temp": [
+ "30"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "35"
+ ],
+ "eng_plate_temp": [
+ "35"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "filament_adhesiveness_category": [
+ "600"
+ ],
+ "filament_density": [
+ "1.15"
+ ],
+ "filament_flow_ratio": [
+ "0.5"
+ ],
+ "filament_max_volumetric_speed": [
+ "6"
+ ],
+ "filament_retraction_length": [
+ "0"
+ ],
+ "filament_type": [
+ "TPU-AERO"
+ ],
+ "filament_vendor": [
+ "QIDI"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "35"
+ ],
+ "hot_plate_temp": [
+ "35"
+ ],
+ "impact_strength_z": [
+ "88.7"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_high": [
+ "270"
+ ],
+ "nozzle_temperature_range_low": [
+ "230"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "slow_down_layer_time": [
+ "14"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "30"
+ ],
+ "supertack_plate_temp": [
+ "30"
+ ],
+ "temperature_vitrification": [
+ "30"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "35"
+ ],
+ "textured_plate_temp": [
+ "35"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "textured_cool_plate_temp": [
+ "30"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI TPU-GF @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI TPU-GF @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..8e88b23151
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI TPU-GF @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "AtsowCGhOIw4GeRJ",
+ "name": "QIDI TPU-GF @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI TPU-GF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI TPU-GF @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI TPU-GF @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..5a7687b51c
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI TPU-GF @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "wqk4I1KaRyLEm12W",
+ "name": "QIDI TPU-GF @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI TPU-GF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI TPU-GF @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI TPU-GF @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..2fe800d6ab
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI TPU-GF @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "o2JjRsoi03ST3Wh2",
+ "name": "QIDI TPU-GF @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI TPU-GF@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI TPU-GF @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI TPU-GF @X-Plus 5.json
new file mode 100644
index 0000000000..b3f2f71866
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI TPU-GF @X-Plus 5.json
@@ -0,0 +1,84 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_15",
+ "name": "QIDI TPU-GF@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "cool_plate_temp": [
+ "30"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "35"
+ ],
+ "eng_plate_temp": [
+ "35"
+ ],
+ "filament_adhesiveness_category": [
+ "600"
+ ],
+ "filament_density": [
+ "1.15"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "6"
+ ],
+ "filament_type": [
+ "TPU-GF"
+ ],
+ "filament_vendor": [
+ "QIDI"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "35"
+ ],
+ "hot_plate_temp": [
+ "35"
+ ],
+ "impact_strength_z": [
+ "88.7"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "240"
+ ],
+ "nozzle_temperature_range_high": [
+ "270"
+ ],
+ "nozzle_temperature_range_low": [
+ "240"
+ ],
+ "nozzle_temperature": [
+ "240"
+ ],
+ "pressure_advance": [
+ "0.1"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "30"
+ ],
+ "supertack_plate_temp": [
+ "30"
+ ],
+ "temperature_vitrification": [
+ "30"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "35"
+ ],
+ "textured_plate_temp": [
+ "35"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "textured_cool_plate_temp": [
+ "30"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI UltraPA @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI UltraPA @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..ae7b99531e
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI UltraPA @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "RzZGtHGu2xKASwwu",
+ "name": "QIDI UltraPA @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI UltraPA@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI UltraPA @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI UltraPA @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..e9bfbe4362
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI UltraPA @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "0seF33ojhYF6lNM4",
+ "name": "QIDI UltraPA @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI UltraPA@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI UltraPA @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI UltraPA @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..6f03ff7b5a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI UltraPA @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "vfr7Lv94OHi4KOCw",
+ "name": "QIDI UltraPA @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI UltraPA@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI UltraPA @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI UltraPA @X-Plus 5.json
new file mode 100644
index 0000000000..9d86c06f95
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI UltraPA @X-Plus 5.json
@@ -0,0 +1,99 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_24",
+ "name": "QIDI UltraPA@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "55"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "55"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "400"
+ ],
+ "filament_density": [
+ "1.21"
+ ],
+ "filament_flow_ratio": [
+ "0.96"
+ ],
+ "filament_max_volumetric_speed": [
+ "4"
+ ],
+ "filament_type": [
+ "UltraPA"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "15.5"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "280"
+ ],
+ "nozzle_temperature_range_high": [
+ "290"
+ ],
+ "nozzle_temperature_range_low": [
+ "250"
+ ],
+ "nozzle_temperature": [
+ "280"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "slow_down_layer_time": [
+ "15"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "temperature_vitrification": [
+ "170"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_cool_plate_temp": [
+ "60"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI UltraPA-CF25 @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI UltraPA-CF25 @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..c88635f447
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI UltraPA-CF25 @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,11 @@
+{
+ "type": "filament",
+ "setting_id": "8h1ITuLzHYf0J4NA",
+ "name": "QIDI UltraPA-CF25 @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI UltraPA-CF25@X-Plus 5-Series",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI UltraPA-CF25 @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI UltraPA-CF25 @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..66ac797bb8
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI UltraPA-CF25 @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "WK63qDyLkG4fznPW",
+ "name": "QIDI UltraPA-CF25 @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI UltraPA-CF25@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.022"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI UltraPA-CF25 @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI UltraPA-CF25 @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..282fed912a
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI UltraPA-CF25 @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "53sirpAAiDOx0c8P",
+ "name": "QIDI UltraPA-CF25 @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI UltraPA-CF25@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.02"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI UltraPA-CF25 @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI UltraPA-CF25 @X-Plus 5.json
new file mode 100644
index 0000000000..73379541b3
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI UltraPA-CF25 @X-Plus 5.json
@@ -0,0 +1,114 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_26",
+ "name": "QIDI UltraPA-CF25@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "box_temperature_range_high": [
+ "65"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "60"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "5"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_adhesiveness_category": [
+ "400"
+ ],
+ "filament_density": [
+ "1.23"
+ ],
+ "filament_flow_ratio": [
+ "0.94"
+ ],
+ "filament_max_volumetric_speed": [
+ "8"
+ ],
+ "filament_type": [
+ "UltraPA-CF25"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "impact_strength_z": [
+ "15.5"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "300"
+ ],
+ "nozzle_temperature_range_high": [
+ "320"
+ ],
+ "nozzle_temperature_range_low": [
+ "300"
+ ],
+ "nozzle_temperature": [
+ "300"
+ ],
+ "overhang_fan_speed": [
+ "40"
+ ],
+ "overhang_fan_threshold": [
+ "0%"
+ ],
+ "pressure_advance": [
+ "0.026"
+ ],
+ "slow_down_layer_time": [
+ "2"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "temperature_vitrification": [
+ "230"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_cool_plate_temp": [
+ "60"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI WOOD Rapido @Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI WOOD Rapido @Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..2232226b78
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI WOOD Rapido @Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "gIumq0YfeZrNDTZt",
+ "name": "QIDI WOOD Rapido @Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI WOOD Rapido@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.044"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI WOOD Rapido @Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI WOOD Rapido @Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..b9ecf201ba
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI WOOD Rapido @Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "qUjZ8AUjivOk8uCf",
+ "name": "QIDI WOOD Rapido @Qidi X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI WOOD Rapido@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.024"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI WOOD Rapido @Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/filament/X5/QIDI WOOD Rapido @Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..fc15698443
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI WOOD Rapido @Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,14 @@
+{
+ "type": "filament",
+ "setting_id": "A2kztfG9PA7Qxh7r",
+ "name": "QIDI WOOD Rapido @Qidi X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "QIDI WOOD Rapido@X-Plus 5-Series",
+ "pressure_advance": [
+ "0.012"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/filament/X5/QIDI WOOD Rapido @X-Plus 5.json b/resources/profiles/Qidi/filament/X5/QIDI WOOD Rapido @X-Plus 5.json
new file mode 100644
index 0000000000..30428c7422
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/QIDI WOOD Rapido @X-Plus 5.json
@@ -0,0 +1,66 @@
+{
+ "type": "filament",
+ "filament_id": "QD_4_1_6",
+ "name": "QIDI WOOD Rapido@X-Plus 5-Series",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_x5_common",
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "box_temperature_range_high": [
+ "45"
+ ],
+ "filament_adhesiveness_category": [
+ "100"
+ ],
+ "filament_density": [
+ "1.23"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "18"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "impact_strength_z": [
+ "5.6"
+ ],
+ "nozzle_temperature_range_high": [
+ "220"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pressure_advance": [
+ "0.044"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "45"
+ ],
+ "compatible_printers": []
+}
diff --git a/resources/profiles/Qidi/filament/X5/fdm_filament_x5_common.json b/resources/profiles/Qidi/filament/X5/fdm_filament_x5_common.json
new file mode 100644
index 0000000000..a161158dc4
--- /dev/null
+++ b/resources/profiles/Qidi/filament/X5/fdm_filament_x5_common.json
@@ -0,0 +1,255 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_x5_common",
+ "from": "system",
+ "instantiation": "false",
+ "activate_air_filtration": [
+ "1"
+ ],
+ "additional_cooling_fan_speed": [
+ "0"
+ ],
+ "additional_fan_full_speed_layer": [
+ "0"
+ ],
+ "bed_type": [
+ "Cool Plate"
+ ],
+ "box_temperature_range_high": [
+ "0"
+ ],
+ "box_temperature_range_low": [
+ "0"
+ ],
+ "box_temperature": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "close_additional_fan_first_x_layers": [
+ "3"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "0"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "cool_plate_temp": [
+ "45"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "100"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "60"
+ ],
+ "eng_plate_temp": [
+ "60"
+ ],
+ "fan_cooling_layer_time": [
+ "60"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_cost": [
+ "0"
+ ],
+ "filament_cooling_before_tower": [
+ "0"
+ ],
+ "filament_tower_interface_pre_extrusion_dist": [
+ "10"
+ ],
+ "filament_tower_interface_pre_extrusion_length": [
+ "0"
+ ],
+ "filament_tower_ironing_area": [
+ "4"
+ ],
+ "filament_tower_interface_purge_volume": [
+ "20"
+ ],
+ "filament_tower_interface_print_temp": [
+ "-1"
+ ],
+ "filament_density": [
+ "1.24"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_dev_ams_drying_ams_limitations": [
+ "1"
+ ],
+ "filament_dev_ams_drying_temperature": [
+ "40.0",
+ "40.0",
+ "40.0",
+ "40.0"
+ ],
+ "filament_dev_ams_drying_time": [
+ "8.0",
+ "8.0",
+ "8.0",
+ "8.0"
+ ],
+ "filament_dev_drying_softening_temperature": [
+ "40.0"
+ ],
+ "filament_dev_ams_drying_heat_distortion_temperature": [
+ "45.0"
+ ],
+ "filament_dev_drying_cooling_temperature": [
+ "35.0"
+ ],
+ "filament_dev_chamber_drying_bed_temperature": [
+ "90.0"
+ ],
+ "filament_dev_chamber_drying_time": [
+ "12.0"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ "; Filament-specific end gcode \n;END gcode for filament"
+ ],
+ "filament_extruder_compatibility": [
+ "0"
+ ],
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_flush_temp": [
+ "0"
+ ],
+ "filament_flush_volumetric_speed": [
+ "0"
+ ],
+ "filament_max_volumetric_speed": [
+ "24.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": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_settings_id": [
+ ""
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ "; Filament start gcode"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_vendor": [
+ "QIDI"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_ramming_travel_time": [
+ "0"
+ ],
+ "filament_pre_cooling_temperature": [
+ "0"
+ ],
+ "filament_ramming_volumetric_speed": [
+ "-1"
+ ],
+ "filament_prime_volume": [
+ "30"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "60"
+ ],
+ "hot_plate_temp": [
+ "60"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "95%"
+ ],
+ "pressure_advance": [
+ "0.042"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "temperature_vitrification": [
+ "100"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_plate_temp": [
+ "60"
+ ]
+}
diff --git a/resources/profiles/Qidi/machine/Qidi Q2 0.4 nozzle.json b/resources/profiles/Qidi/machine/Qidi Q2 0.4 nozzle.json
index 6f3115dbd5..6a0a91b2ac 100644
--- a/resources/profiles/Qidi/machine/Qidi Q2 0.4 nozzle.json
+++ b/resources/profiles/Qidi/machine/Qidi Q2 0.4 nozzle.json
@@ -17,7 +17,7 @@
"cooling_tube_length": "0",
"parking_pos_retraction": "0",
"extra_loading_move": "5",
- "change_filament_gcode": "G1 Z{max_layer_z + 3.0} F1200\nTOOL_CHANGE_START F=[current_extruder] T=[next_extruder]\nBUFFER_MONITORING ENABLE=0\nDISABLE_ALL_SENSOR\nM106 S255\nMOVE_TO_TRASH\n{if long_retractions_when_cut[previous_extruder]}\nG1 E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{else}\nG1 E-10 F{old_filament_e_feedrate}\n{endif}\nM400\nCUT_FILAMENT T=[current_extruder]\nMOVE_TO_TRASH\nM106 P2 S0\nUNLOAD_T[current_extruder]\nT[next_extruder]\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nM104 S{nozzle_temperature_range_high[current_extruder]}\n{else}\nM104 S{nozzle_temperature_range_high[next_extruder]}\n{endif}\n; FLUSH_START\nM106 S25\nG1 E30 F300\n; FLUSH_END\n{if long_retractions_when_cut[previous_extruder]}\nG1 E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{endif}\n{if flush_length_1 > 1}\n; FLUSH_START\n{if flush_length_1 > 23.7}\nG1 E23.7 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{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}\nG1 E-[old_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_2 > 1}\n; FLUSH_START\nG1 X92 F9000\nG1 E[old_retract_length_toolchange] F300\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\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_3 > 1}\n; FLUSH_START\nG1 X85 F9000\nG1 E[new_retract_length_toolchange] F300\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\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_4 > 1}\n; FLUSH_START\nG1 X92 F9000\nG1 E[new_retract_length_toolchange] F300\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\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\nM400\nM106 S255\nM104 S[new_filament_temp]\nINIT_SYNC_BUFFER_STATE\nBUFFER_MONITORING ENABLE=1\nG1 E10 F25 \nM109 S[new_filament_temp]\nG1 E-5 F1800\nCLEAR_OOZE\nTOOL_CHANGE_END\nG1 Y270 F8000\nM106 S0\nG1 E2 F1800\nENABLE_ALL_SENSOR\n",
+ "change_filament_gcode": "{if current_extruder != next_extruder}\nG1 Z{max_layer_z + 3.0} F1200\nTOOL_CHANGE_START F=[current_extruder] T=[next_extruder]\nBUFFER_MONITORING ENABLE=0\nDISABLE_ALL_SENSOR\nM106 S255\nMOVE_TO_TRASH\n{if long_retractions_when_cut[previous_extruder]}\nG1 E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{else}\nG1 E-10 F{old_filament_e_feedrate}\n{endif}\nM400\nCUT_FILAMENT T=[current_extruder]\nMOVE_TO_TRASH\nM106 P2 S0\nUNLOAD_T[current_extruder]\nT[next_extruder]\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nM104 S{nozzle_temperature_range_high[current_extruder]}\n{else}\nM104 S{nozzle_temperature_range_high[next_extruder]}\n{endif}\n; FLUSH_START\nM106 S25\nG1 E30 F300\n; FLUSH_END\n{if long_retractions_when_cut[previous_extruder]}\nG1 E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{endif}\n{if flush_length_1 > 1}\n; FLUSH_START\n{if flush_length_1 > 23.7}\nG1 E23.7 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{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}\nG1 E-[old_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_2 > 1}\n; FLUSH_START\nG1 X92 F9000\nG1 E[old_retract_length_toolchange] F300\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\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_3 > 1}\n; FLUSH_START\nG1 X85 F9000\nG1 E[new_retract_length_toolchange] F300\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\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_4 > 1}\n; FLUSH_START\nG1 X92 F9000\nG1 E[new_retract_length_toolchange] F300\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\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\nM400\nM106 S255\nM104 S[new_filament_temp]\nINIT_SYNC_BUFFER_STATE\nBUFFER_MONITORING ENABLE=1\nG1 E10 F25 \nM109 S[new_filament_temp]\nG1 E-5 F1800\nCLEAR_OOZE\nTOOL_CHANGE_END\nG1 Y270 F8000\nM106 S0\nG1 E2 F1800\nENABLE_ALL_SENSOR\n{endif}\n",
"default_filament_profile": [
"QIDI PLA Rapido @Qidi Q2 0.4 nozzle"
],
diff --git a/resources/profiles/Qidi/machine/Qidi Q2C 0.4 nozzle.json b/resources/profiles/Qidi/machine/Qidi Q2C 0.4 nozzle.json
index fbf61a6af9..9d4683885f 100644
--- a/resources/profiles/Qidi/machine/Qidi Q2C 0.4 nozzle.json
+++ b/resources/profiles/Qidi/machine/Qidi Q2C 0.4 nozzle.json
@@ -17,7 +17,7 @@
"cooling_tube_length": "0",
"parking_pos_retraction": "0",
"extra_loading_move": "5",
- "change_filament_gcode": "G1 Z{max_layer_z + 3.0} F1200\nTOOL_CHANGE_START F=[current_extruder] T=[next_extruder]\nBUFFER_MONITORING ENABLE=0\nDISABLE_ALL_SENSOR\nM106 S255\nMOVE_TO_TRASH\n{if long_retractions_when_cut[previous_extruder]}\nG1 E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{else}\nG1 E-10 F{old_filament_e_feedrate}\n{endif}\nM400\nCUT_FILAMENT T=[current_extruder]\nMOVE_TO_TRASH\nM106 P2 S0\nUNLOAD_T[current_extruder]\nT[next_extruder]\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nM104 S{nozzle_temperature_range_high[current_extruder]}\n{else}\nM104 S{nozzle_temperature_range_high[next_extruder]}\n{endif}\n; FLUSH_START\nM106 S25\nG1 E30 F300\n; FLUSH_END\n{if long_retractions_when_cut[previous_extruder]}\nG1 E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{endif}\n{if flush_length_1 > 1}\n; FLUSH_START\n{if flush_length_1 > 23.7}\nG1 E23.7 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{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}\nG1 E-[old_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_2 > 1}\n; FLUSH_START\nG1 X92 F9000\nG1 E[old_retract_length_toolchange] F300\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\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_3 > 1}\n; FLUSH_START\nG1 X85 F9000\nG1 E[new_retract_length_toolchange] F300\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\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_4 > 1}\n; FLUSH_START\nG1 X92 F9000\nG1 E[new_retract_length_toolchange] F300\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\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\nM400\nM106 S255\nM104 S[new_filament_temp]\nINIT_SYNC_BUFFER_STATE\nBUFFER_MONITORING ENABLE=1\nG1 E10 F25 \nM109 S[new_filament_temp]\nG1 E-5 F1800\nCLEAR_OOZE\nTOOL_CHANGE_END\nG1 Y270 F8000\nM106 S0\nG1 E2 F1800\nENABLE_ALL_SENSOR\n",
+ "change_filament_gcode": "{if current_extruder != next_extruder}\nG1 Z{max_layer_z + 3.0} F1200\nTOOL_CHANGE_START F=[current_extruder] T=[next_extruder]\nBUFFER_MONITORING ENABLE=0\nDISABLE_ALL_SENSOR\nM106 S255\nMOVE_TO_TRASH\n{if long_retractions_when_cut[previous_extruder]}\nG1 E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{else}\nG1 E-10 F{old_filament_e_feedrate}\n{endif}\nM400\nCUT_FILAMENT T=[current_extruder]\nMOVE_TO_TRASH\nM106 P2 S0\nUNLOAD_T[current_extruder]\nT[next_extruder]\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nM104 S{nozzle_temperature_range_high[current_extruder]}\n{else}\nM104 S{nozzle_temperature_range_high[next_extruder]}\n{endif}\n; FLUSH_START\nM106 S25\nG1 E30 F300\n; FLUSH_END\n{if long_retractions_when_cut[previous_extruder]}\nG1 E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{endif}\n{if flush_length_1 > 1}\n; FLUSH_START\n{if flush_length_1 > 23.7}\nG1 E23.7 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{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}\nG1 E-[old_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_2 > 1}\n; FLUSH_START\nG1 X92 F9000\nG1 E[old_retract_length_toolchange] F300\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\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_3 > 1}\n; FLUSH_START\nG1 X85 F9000\nG1 E[new_retract_length_toolchange] F300\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\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_4 > 1}\n; FLUSH_START\nG1 X92 F9000\nG1 E[new_retract_length_toolchange] F300\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\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\nM400\nM106 S255\nM104 S[new_filament_temp]\nINIT_SYNC_BUFFER_STATE\nBUFFER_MONITORING ENABLE=1\nG1 E10 F25 \nM109 S[new_filament_temp]\nG1 E-5 F1800\nCLEAR_OOZE\nTOOL_CHANGE_END\nG1 Y270 F8000\nM106 S0\nG1 E2 F1800\nENABLE_ALL_SENSOR\n{endif}\n",
"default_filament_profile": [
"QIDI PLA Rapido @Qidi Q2C 0.4 nozzle"
],
diff --git a/resources/profiles/Qidi/machine/Qidi X-Max 4 0.4 nozzle.json b/resources/profiles/Qidi/machine/Qidi X-Max 4 0.4 nozzle.json
index be754eb338..ef26c0a620 100644
--- a/resources/profiles/Qidi/machine/Qidi X-Max 4 0.4 nozzle.json
+++ b/resources/profiles/Qidi/machine/Qidi X-Max 4 0.4 nozzle.json
@@ -13,7 +13,7 @@
"bed_exclude_area": [
"0x0, 16x0, 16x13, 0x13, 0x0, 0x0, 0x0, 0x0, 0x13, 6x13, 6x23, 0x23, 0x13, 0x13, 0x13, 0x13, 0x387, 53x387, 53x390, 0x390, 0x387, 0x387, 0x397, 0x390, 338x390, 338x384, 390x384, 390x390, 0x390"
],
- "change_filament_gcode": "G1 Z{max_layer_z + 3.0} F1200\nTOOL_CHANGE_START F=[current_extruder] T=[next_extruder]\nDISABLE_ALL_SENSOR\nM104 S{old_filament_temp - 10}\nM106 S255\n{if long_retractions_when_cut[previous_extruder]}\nG1 E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{else}\nG1 E-2 F{old_filament_e_feedrate}\n{endif}\nM400\nCUT_FILAMENT T=[current_extruder]\nMOVE_TO_TRASH\nM106 P2 S0\nUNLOAD_T[current_extruder]\nT[next_extruder]\nM106 S0\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nM104 S{nozzle_temperature_range_high[current_extruder]}\nM109.0 S{(nozzle_temperature_range_high[current_extruder])-25}\n{else}\nM104 S{nozzle_temperature_range_high[next_extruder]}\nM109.0 S{(nozzle_temperature_range_high[next_extruder])-25}\n{endif}\n{if long_retractions_when_cut[previous_extruder]}\nG1 E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{endif}\n{if flush_length_1 > 1}\n; FLUSH_START\nG1 Y403.5 F2000\nG1 E{flush_length_1} F{old_filament_e_feedrate * 0.5}\n; FLUSH_END\n{endif}\n{if flush_length_2 > 1}\n; FLUSH_START\nG1 E{flush_length_2} F{new_filament_e_feedrate * 0.5}\n; FLUSH_END\n{endif}\n{if flush_length_3 > 1}\n; FLUSH_START\nG1 E{flush_length_3} F{new_filament_e_feedrate * 0.5}\n; FLUSH_END\n{endif}\n{if flush_length_4 > 1}\n; FLUSH_START\nG1 E{flush_length_4} F{new_filament_e_feedrate * 0.5}\n; FLUSH_END\n{endif}\nM400\nM106 S180\nM104 S{new_filament_temp - 10}\nG1 E1 F10\nM109.1 S{new_filament_temp - 10}\nG1 E-4 F1000\nG4 P2000\nM204 S5000\nG1 Y403 F2000\nG1 X163 F8000\nG1 X145 F5000\nG1 X163 F3000\nG1 X145 F2000\nG1 X175 F6000\nG1 X163\nG1 X175\nG1 X163\nG1 X175\nG1 X163\nG1 X180 F8000\nG1 Y380\nG1 X116\nG4 P2000\nG1 Y403 F3000\nG1 X130\nG1 X100 F8000\nG1 Y380\nG1 X116\nG1 Y403 F3000\nG1 X130 F3000\nG1 X100 F8000\nG1 Y380\nM104 S[new_filament_temp]\nTOOL_CHANGE_END\nG1 E{new_retract_length_toolchange + 1} F{new_filament_e_feedrate}\nENABLE_ALL_SENSOR\n",
+ "change_filament_gcode": "{if current_extruder != next_extruder}\nG1 Z{max_layer_z + 3.0} F1200\nTOOL_CHANGE_START F=[current_extruder] T=[next_extruder]\nDISABLE_ALL_SENSOR\nM104 S{old_filament_temp - 10}\nM106 S255\n{if long_retractions_when_cut[previous_extruder]}\nG1 E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{else}\nG1 E-2 F{old_filament_e_feedrate}\n{endif}\nM400\nCUT_FILAMENT T=[current_extruder]\nMOVE_TO_TRASH\nM106 P2 S0\nUNLOAD_T[current_extruder]\nT[next_extruder]\nM106 S0\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nM104 S{nozzle_temperature_range_high[current_extruder]}\nM109.0 S{(nozzle_temperature_range_high[current_extruder])-25}\n{else}\nM104 S{nozzle_temperature_range_high[next_extruder]}\nM109.0 S{(nozzle_temperature_range_high[next_extruder])-25}\n{endif}\n{if long_retractions_when_cut[previous_extruder]}\nG1 E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{endif}\n{if flush_length_1 > 1}\n; FLUSH_START\nG1 Y403.5 F2000\nG1 E{flush_length_1} F{old_filament_e_feedrate * 0.5}\n; FLUSH_END\n{endif}\n{if flush_length_2 > 1}\n; FLUSH_START\nG1 E{flush_length_2} F{new_filament_e_feedrate * 0.5}\n; FLUSH_END\n{endif}\n{if flush_length_3 > 1}\n; FLUSH_START\nG1 E{flush_length_3} F{new_filament_e_feedrate * 0.5}\n; FLUSH_END\n{endif}\n{if flush_length_4 > 1}\n; FLUSH_START\nG1 E{flush_length_4} F{new_filament_e_feedrate * 0.5}\n; FLUSH_END\n{endif}\nM400\nM106 S180\nM104 S{new_filament_temp - 10}\nG1 E1 F10\nM109.1 S{new_filament_temp - 10}\nG1 E-4 F1000\nG4 P2000\nM204 S5000\nG1 Y403 F2000\nG1 X163 F8000\nG1 X145 F5000\nG1 X163 F3000\nG1 X145 F2000\nG1 X175 F6000\nG1 X163\nG1 X175\nG1 X163\nG1 X175\nG1 X163\nG1 X180 F8000\nG1 Y380\nG1 X116\nG4 P2000\nG1 Y403 F3000\nG1 X130\nG1 X100 F8000\nG1 Y380\nG1 X116\nG1 Y403 F3000\nG1 X130 F3000\nG1 X100 F8000\nG1 Y380\nM104 S[new_filament_temp]\nTOOL_CHANGE_END\nG1 E{new_retract_length_toolchange + 1} F{new_filament_e_feedrate}\nENABLE_ALL_SENSOR\n{endif}\n",
"default_filament_profile": [
"QIDI PLA Rapido @Qidi X-Max 4 0.4 nozzle"
],
diff --git a/resources/profiles/Qidi/machine/Qidi X-Plus 4 0.4 nozzle.json b/resources/profiles/Qidi/machine/Qidi X-Plus 4 0.4 nozzle.json
index c4e758a451..82e9da78cb 100644
--- a/resources/profiles/Qidi/machine/Qidi X-Plus 4 0.4 nozzle.json
+++ b/resources/profiles/Qidi/machine/Qidi X-Plus 4 0.4 nozzle.json
@@ -60,7 +60,7 @@
"2"
],
"single_extruder_multi_material": "1",
- "change_filament_gcode": "{if max_layer_z < 12}\nG1 Z15 F1200\n{else}\nG1 Z{max_layer_z + 3.0} F1200\n{endif}\nTOOL_CHANGE_START F=[current_extruder] T=[next_extruder]\nDISABLE_ALL_SENSOR\n{if long_retractions_when_cut[previous_extruder]}\nMOVE_TO_TRASH\nG1 E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\nM400\n{else}\nG1 E-5 F{old_filament_e_feedrate}\n{endif}\nCUT_FILAMENT T=[current_extruder]\nMOVE_TO_TRASH\nM400\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nM104 S{nozzle_temperature_range_high[current_extruder]}\n{else}\nM104 S{nozzle_temperature_range_high[next_extruder]}\n{endif}\nM106 S0\nM106 P2 S0\nUNLOAD_T[current_extruder]\nG92 E0\nM83\nG1 E2 F50\nT[next_extruder]\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nSET_HEATER_TEMPERATURE HEATER=extruder TARGET={nozzle_temperature_range_high[current_extruder]} WAIT=1\n{else}\nSET_HEATER_TEMPERATURE HEATER=extruder TARGET={nozzle_temperature_range_high[next_extruder]} WAIT=1\n{endif}\n{if long_retractions_when_cut[previous_extruder]}\nG1 E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{endif}\nM400\nM106 S60\n; FLUSH_START\nG1 E1 F50\nG1 E{65.5 * 0.58} F{old_filament_e_feedrate}\nG1 E{65.5 * 0.02} F50\nG1 E{65.5 * 0.18} F{old_filament_e_feedrate}\nG1 E{65.5 * 0.02} F50\nG1 E{65.5 * 0.18} F{old_filament_e_feedrate}\nG1 E{65.5 * 0.02} F50\nG1 E-[old_retract_length_toolchange] F1800\n; FLUSH_END\n{if flush_length_1 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM400\nM106 S60\n; FLUSH_START\nG1 E[old_retract_length_toolchange] F300\nG1 E{flush_length_1 * 0.58} F{new_filament_e_feedrate}\nG1 E{flush_length_1 * 0.02} F50\nG1 E{flush_length_1 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_1 * 0.02} F50\nG1 E{flush_length_1 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_1 * 0.02} F50\nG1 E-[old_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_2 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM400\nM106 S60\n; FLUSH_START\nG1 E[old_retract_length_toolchange] F300\nG1 E{flush_length_2 * 0.58} 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-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_3 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM400\nM106 S60\n; FLUSH_START\nG1 E[new_retract_length_toolchange] F300\nG1 E{flush_length_3 * 0.58} 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-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_4 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM400\nM106 S60\n; FLUSH_START\nG1 E[new_retract_length_toolchange] F300\nG1 E{flush_length_4 * 0.58} 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-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\nM104 S[new_filament_temp]\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nM109 S[new_filament_temp]\nG92 E0\nM400\nCLEAR_FLUSH\nCLEAR_OOZE\nM400\nM106 S0\nTOOL_CHANGE_END\nG1 Y305 F9000\nENABLE_ALL_SENSOR",
+ "change_filament_gcode": "{if current_extruder != next_extruder}\n{if max_layer_z < 12}\nG1 Z15 F1200\n{else}\nG1 Z{max_layer_z + 3.0} F1200\n{endif}\nTOOL_CHANGE_START F=[current_extruder] T=[next_extruder]\nDISABLE_ALL_SENSOR\n{if long_retractions_when_cut[previous_extruder]}\nMOVE_TO_TRASH\nG1 E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\nM400\n{else}\nG1 E-5 F{old_filament_e_feedrate}\n{endif}\nCUT_FILAMENT T=[current_extruder]\nMOVE_TO_TRASH\nM400\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nM104 S{nozzle_temperature_range_high[current_extruder]}\n{else}\nM104 S{nozzle_temperature_range_high[next_extruder]}\n{endif}\nM106 S0\nM106 P2 S0\nUNLOAD_T[current_extruder]\nG92 E0\nM83\nG1 E2 F50\nT[next_extruder]\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nSET_HEATER_TEMPERATURE HEATER=extruder TARGET={nozzle_temperature_range_high[current_extruder]} WAIT=1\n{else}\nSET_HEATER_TEMPERATURE HEATER=extruder TARGET={nozzle_temperature_range_high[next_extruder]} WAIT=1\n{endif}\n{if long_retractions_when_cut[previous_extruder]}\nG1 E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{endif}\nM400\nM106 S60\n; FLUSH_START\nG1 E1 F50\nG1 E{65.5 * 0.58} F{old_filament_e_feedrate}\nG1 E{65.5 * 0.02} F50\nG1 E{65.5 * 0.18} F{old_filament_e_feedrate}\nG1 E{65.5 * 0.02} F50\nG1 E{65.5 * 0.18} F{old_filament_e_feedrate}\nG1 E{65.5 * 0.02} F50\nG1 E-[old_retract_length_toolchange] F1800\n; FLUSH_END\n{if flush_length_1 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM400\nM106 S60\n; FLUSH_START\nG1 E[old_retract_length_toolchange] F300\nG1 E{flush_length_1 * 0.58} F{new_filament_e_feedrate}\nG1 E{flush_length_1 * 0.02} F50\nG1 E{flush_length_1 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_1 * 0.02} F50\nG1 E{flush_length_1 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_1 * 0.02} F50\nG1 E-[old_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_2 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM400\nM106 S60\n; FLUSH_START\nG1 E[old_retract_length_toolchange] F300\nG1 E{flush_length_2 * 0.58} 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-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_3 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM400\nM106 S60\n; FLUSH_START\nG1 E[new_retract_length_toolchange] F300\nG1 E{flush_length_3 * 0.58} 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-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_4 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM400\nM106 S60\n; FLUSH_START\nG1 E[new_retract_length_toolchange] F300\nG1 E{flush_length_4 * 0.58} 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-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\nM104 S[new_filament_temp]\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nM109 S[new_filament_temp]\nG92 E0\nM400\nCLEAR_FLUSH\nCLEAR_OOZE\nM400\nM106 S0\nTOOL_CHANGE_END\nG1 Y305 F9000\nENABLE_ALL_SENSOR\n{endif}",
"is_support_multi_box": "0",
"machine_pause_gcode": "PAUSE",
"thumbnails": [
diff --git a/resources/profiles/Qidi/machine/Qidi X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/machine/Qidi X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..54fed33aea
--- /dev/null
+++ b/resources/profiles/Qidi/machine/Qidi X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,28 @@
+{
+ "type": "machine",
+ "name": "Qidi X-Plus 5 0.2 nozzle",
+ "inherits": "Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "setting_id": "prjWhtWxCsXqcrHr",
+ "instantiation": "true",
+ "printer_model": "Qidi X-Plus 5",
+ "printer_variant": "0.2",
+ "default_filament_profile": [
+ "QIDI PLA Rapido @Qidi X-Plus 5 0.2 nozzle"
+ ],
+ "default_print_profile": "0.10mm Standard @X-Plus 5 0.2 nozzle",
+ "max_layer_height": [
+ "0.14"
+ ],
+ "min_layer_height": [
+ "0.04"
+ ],
+ "nozzle_diameter": [
+ "0.2"
+ ],
+ "printer_agent": "qidi",
+ "retraction_length": [
+ "0.4"
+ ],
+ "support_box_temp_control": "1"
+}
diff --git a/resources/profiles/Qidi/machine/Qidi X-Plus 5 0.4 nozzle.json b/resources/profiles/Qidi/machine/Qidi X-Plus 5 0.4 nozzle.json
new file mode 100644
index 0000000000..f23f86af2a
--- /dev/null
+++ b/resources/profiles/Qidi/machine/Qidi X-Plus 5 0.4 nozzle.json
@@ -0,0 +1,88 @@
+{
+ "type": "machine",
+ "name": "Qidi X-Plus 5 0.4 nozzle",
+ "inherits": "fdm_machine_x_common",
+ "from": "system",
+ "setting_id": "exeoc5LTdCkPeWLD",
+ "instantiation": "true",
+ "printer_model": "Qidi X-Plus 5",
+ "auxiliary_fan": "1",
+ "bed_exclude_area": [
+ "0x0,9x0,9x13,0x13"
+ ],
+ "box_id": "4",
+ "change_filament_gcode": "{if current_extruder != next_extruder}\n{if max_layer_z + 3 > max_print_height}\nG0 Z{max_print_height} F1200\n{else}\nG0 Z{max_layer_z + 3} F1200\n{endif}\nTOOL_CHANGE_START F=[current_extruder] T=[next_extruder]\nDISABLE_ALL_SENSOR\nM104 S{old_filament_temp - 10}\nM106 S255\n{if long_retractions_when_cut[previous_extruder]}\nG1 E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{else}\nG1 E-5 F{old_filament_e_feedrate}\n{endif}\nM400\nCUT_FILAMENT T=[current_extruder]\nMOVE_TO_TRASH\nM106 P2 S0\nUNLOAD_T[current_extruder]\nT[next_extruder]\nM106 S0\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nM104 S{nozzle_temperature_range_high[current_extruder]}\nM109.0 S{(nozzle_temperature_range_high[current_extruder])-25}\n{else}\nM104 S{nozzle_temperature_range_high[next_extruder]}\nM109.0 S{(nozzle_temperature_range_high[next_extruder])-25}\n{endif}\n{if long_retractions_when_cut[previous_extruder]}\nG1 E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{endif}\n{if flush_length_1 > 1}\n; FLUSH_START\nG1 E{flush_length_1} F{old_filament_e_feedrate * 0.5}\n; FLUSH_END\n{endif}\n{if flush_length_2 > 1}\n; FLUSH_START\nG1 E{flush_length_2} F{new_filament_e_feedrate * 0.5}\n; FLUSH_END\n{endif}\n{if flush_length_3 > 1}\n; FLUSH_START\nG1 E{flush_length_3} F{new_filament_e_feedrate * 0.5}\n; FLUSH_END\n{endif}\n{if flush_length_4 > 1}\n; FLUSH_START\nG1 E{flush_length_4} F{new_filament_e_feedrate * 0.5}\n; FLUSH_END\n{endif}\nM400\nM106 S180\nM104 S{new_filament_temp - 10}\nG1 E1 F10\nM109.1 S{new_filament_temp - 10}\nG1 E-4 F1000\nG4 P2000\nM204 S5000\nG1 X109 F8000\nG1 X95 F5000\nG1 X109 F8000\nG1 X95 F5000\nG1 X140 F10000\nG1 Y319\nG1 X110\nG4 P2000\nG1 Y339 F2000\nG1 X123 F6000\nG1 X110\nG1 X123\nG1 X110\nG1 X123\nG1 X110\nG1 X123\nG1 X95\nG1 Y319 F10000\nM104 S[new_filament_temp]\nTOOL_CHANGE_END\nG1 E{new_retract_length_toolchange} F{new_filament_e_feedrate}\nENABLE_ALL_SENSOR\n{endif}",
+ "default_bed_type": "Textured PEI Plate",
+ "default_filament_profile": [
+ "QIDI PLA Rapido @Qidi X-Plus 5 0.4 nozzle"
+ ],
+ "default_print_profile": "0.20mm Standard @X-Plus 5",
+ "enable_long_retraction_when_cut": "2",
+ "extruder_clearance_dist_to_rod": "42",
+ "extruder_clearance_height_to_lid": "168",
+ "extruder_clearance_height_to_rod": "42",
+ "extruder_clearance_max_radius": "75",
+ "fan_direction": "left",
+ "gcode_flavor": "klipper",
+ "is_support_3mf": "1",
+ "is_support_mqtt": "1",
+ "is_support_multi_box": "1",
+ "is_support_polar_cooler": "1",
+ "is_support_timelapse": "1",
+ "layer_change_gcode": "{if timelapse_type == 1} ; timelapse with wipe tower\nG92 E0\nG1 E-[retraction_length] F1800\n{if layer_z + 0.4 > max_print_height}\nG2 Z{max_print_height} I0.86 J0.86 P1 F20000 ; spiral lift a little\n{else}\nG2 Z{layer_z + 0.4} I0.86 J0.86 P1 F20000 ; spiral lift a little\n{endif}\nMOVE_TO_TRASH\n{if layer_z <=25}\nG1 Z25\n{endif}\nG92 E0\nM400\nTIMELAPSE_TAKE_FRAME\nG1 E[retraction_length] F300\nG1 X140 F8000\nG1 Y319\n{if layer_z <=25}\nG1 Z[layer_z]\n{endif}\n{elsif timelapse_type == 0} ; timelapse without wipe tower\nTIMELAPSE_TAKE_FRAME\n{endif}\nG92 E0\nSET_PRINT_STATS_INFO CURRENT_LAYER={layer_num + 1}",
+ "machine_end_gcode": "SET_PRINT_MAIN_STATUS MAIN_STATUS=print_end\nDISABLE_BOX_HEATER\nM141 S0\nM140 S0\nDISABLE_ALL_SENSOR\nG1 E-3 F1800\n{if max_layer_z + 3 > max_print_height}\nG0 Z{max_print_height} F600\n{else}\nG0 Z{max_layer_z + 3} F600\n{endif}\nUNLOAD_FILAMENT T=[current_extruder]\nG0 Y320 F12000\nG0 X105 Y320 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}\nM104 S0\nPRINT_END",
+ "machine_max_acceleration_x": [
+ "20000"
+ ],
+ "machine_max_acceleration_y": [
+ "20000"
+ ],
+ "machine_max_jerk_e": [
+ "4"
+ ],
+ "machine_max_jerk_x": [
+ "9"
+ ],
+ "machine_max_jerk_y": [
+ "9"
+ ],
+ "machine_max_jerk_z": [
+ "4"
+ ],
+ "machine_max_speed_x": [
+ "600"
+ ],
+ "machine_max_speed_y": [
+ "600"
+ ],
+ "machine_max_speed_z": [
+ "20"
+ ],
+ "machine_pause_gcode": "PAUSE",
+ "machine_start_gcode": ";===== PRINT_PHASE_INIT =====\nSET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count]\nSET_PRINT_MAIN_STATUS MAIN_STATUS=print_start\nM220 S100\nM221 S100\nDISABLE_ALL_SENSOR\nM1002 R1\nM107\nCLEAR_PAUSE\nM140 S[bed_temperature_initial_layer_single]\nM141 S[chamber_temperature]\nG29.0\nSET_PRINT_SUB_STATUS SUB_STATUS=tool_head_reset\nG28\n\n;===== BOX_PREPAR =====\nSET_PRINT_SUB_STATUS SUB_STATUS=change_filament\nBOX_PRINT_START EXTRUDER=[initial_no_support_extruder] HOTENDTEMP={nozzle_temperature_range_high[initial_tool]}\nM400\nEXTRUSION_AND_FLUSH HOTEND=[nozzle_temperature_initial_layer]\n\n;===== CLEAR_NOZZLE =====\nSET_PRINT_SUB_STATUS SUB_STATUS=flush_filament\nG1 Z20 F480\nMOVE_TO_TRASH\n{if chamber_temperature[0] == 0}\nM106 P3 S[during_print_exhaust_fan_speed]\n{else}\nM106 P3 S0\n{endif}\nM1004\nM106 S0\nM109 S[nozzle_temperature_initial_layer]\nG92 E0\nM83\nG1 E5 F80\nG1 E200 F300\nM400\nM106 S255\nG1 E-3 F1000\nM104 S140\nSET_PRINT_SUB_STATUS SUB_STATUS=clear_nozzle\nM109.1 S{nozzle_temperature_initial_layer[0]-30}\nM204 S10000\nG1 X109 F10000\nG1 X95 F6000\nG1 X109 F10000\nG1 X95 F6000\nG1 X109 F10000\nG1 X95 F6000\nG1 Y318\nG1 X151 F15000\nG1 Y327\nG1 Z5 F480\nM400\nprobe samples=1\nG91\nG1 Z0.1\nG90\nM106 S255\nM109.1 S150\nG91\nG1 X20 F200\nG1 Y3\nG1 X-20\nG1 Y-3\nG1 X20\nG90\nG2 I0.5 J0.5 F480\nG2 I0.5 J0.5\nG2 I0.5 J0.5\nG1 Z10\nG1 Y318 F12000\nG1 X77\nG1 Y338 F2000\nG1 X95 F12000\nG1 X123\nG1 X110\nG1 X123\nG1 X110\nG1 X123\nG1 X110\nG1 X123\nG1 X110\nG1 X140\nG1 X160 Y160\nM106 S0\nSET_PRINT_SUB_STATUS SUB_STATUS=wait_bed_temp\nM190 S[bed_temperature_initial_layer_single]\nSET_PRINT_SUB_STATUS SUB_STATUS=wait_chamber_temp\nM191 S[chamber_temperature]\nG1 Y-2 F15000\nG1 X15\nG1 X-2 F5000\nG4 P1000\nG1 X-1 F1000\nG1 X-2 F5000\nG4 P1000\nG1 E-4 F1800\nG1 X15 F3000\nG1 X20 Y20 F15000\nSET_PRINT_SUB_STATUS SUB_STATUS=z_tilt_adjust\nZ_TILT_ADJUST\nSET_PRINT_SUB_STATUS SUB_STATUS=auto_bed_adjust\nG29\nM1002 A1\nG1 X160 Y160 Z10 F20000\nM1006 Z{10 - ((nozzle_temperature_initial_layer[initial_tool] - 130) / 14 - 5.0) / 100}\nG0 Y-1\nM109 S[nozzle_temperature_initial_layer]\nENABLE_ALL_SENSOR\n\n;===== PRINT_START =====\n; LAYER_HEIGHT: 0.2\nT[initial_tool]\nM140 S[bed_temperature_initial_layer_single]\nM104 S[nozzle_temperature_initial_layer]\nM141 S[chamber_temperature]\nG4 P3000\nprobe samples=1\nG91\nG0 Z0.6 F480\nG90\nG1 X140 Y1 F20000\nG1 E5 F{filament_max_volumetric_speed[initial_no_support_extruder]/2/2.4053*60}\nG1 X180 E20 F{filament_max_volumetric_speed[initial_no_support_extruder]/2/2.4053*60}\nG1 Z1 F480\nSET_PRINT_MAIN_STATUS MAIN_STATUS=printing",
+ "nozzle_diameter": [
+ "0.4"
+ ],
+ "nozzle_volume": [
+ "125"
+ ],
+ "printable_area": [
+ "0x0",
+ "320x0",
+ "320x320",
+ "0x320",
+ "0x0"
+ ],
+ "printable_height": "300",
+ "printer_agent": "qidi",
+ "printer_settings_id": "Qidi",
+ "retract_lift_below": [
+ "299"
+ ],
+ "support_box_temp_control": "1",
+ "support_multi_bed_types": "1",
+ "thumbnail_size": [
+ "50x50"
+ ],
+ "use_3mf": "1"
+}
diff --git a/resources/profiles/Qidi/machine/Qidi X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/machine/Qidi X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..649462eab9
--- /dev/null
+++ b/resources/profiles/Qidi/machine/Qidi X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,31 @@
+{
+ "type": "machine",
+ "name": "Qidi X-Plus 5 0.6 nozzle",
+ "inherits": "Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "setting_id": "C4EIoDQYYzDGANJA",
+ "instantiation": "true",
+ "printer_model": "Qidi X-Plus 5",
+ "printer_variant": "0.6",
+ "default_filament_profile": [
+ "QIDI PLA Rapido @Qidi X-Plus 5 0.6 nozzle"
+ ],
+ "default_print_profile": "0.30mm Standard @X-Plus 5 0.6 nozzle",
+ "max_layer_height": [
+ "0.42"
+ ],
+ "min_layer_height": [
+ "0.12"
+ ],
+ "nozzle_diameter": [
+ "0.6"
+ ],
+ "printer_agent": "qidi",
+ "retraction_length": [
+ "1.4"
+ ],
+ "retraction_minimum_travel": [
+ "3"
+ ],
+ "support_box_temp_control": "1"
+}
diff --git a/resources/profiles/Qidi/machine/Qidi X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/machine/Qidi X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..ed932902f9
--- /dev/null
+++ b/resources/profiles/Qidi/machine/Qidi X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,31 @@
+{
+ "type": "machine",
+ "name": "Qidi X-Plus 5 0.8 nozzle",
+ "inherits": "Qidi X-Plus 5 0.4 nozzle",
+ "from": "system",
+ "setting_id": "5eqkluxp0SrRzhV7",
+ "instantiation": "true",
+ "printer_model": "Qidi X-Plus 5",
+ "printer_variant": "0.8",
+ "default_filament_profile": [
+ "QIDI PLA Rapido @Qidi X-Plus 5 0.8 nozzle"
+ ],
+ "default_print_profile": "0.40mm Standard @X-Plus 5 0.8 nozzle",
+ "max_layer_height": [
+ "0.56"
+ ],
+ "min_layer_height": [
+ "0.16"
+ ],
+ "nozzle_diameter": [
+ "0.8"
+ ],
+ "printer_agent": "qidi",
+ "retract_length_toolchange": [
+ "3"
+ ],
+ "retraction_length": [
+ "3"
+ ],
+ "support_box_temp_control": "1"
+}
diff --git a/resources/profiles/Qidi/machine/Qidi X-Plus 5.json b/resources/profiles/Qidi/machine/Qidi X-Plus 5.json
new file mode 100644
index 0000000000..afc1d9af54
--- /dev/null
+++ b/resources/profiles/Qidi/machine/Qidi X-Plus 5.json
@@ -0,0 +1,12 @@
+{
+ "type": "machine_model",
+ "name": "Qidi X-Plus 5",
+ "model_id": "Qidi-XPlus-5",
+ "nozzle_diameter": "0.4;0.2;0.6;0.8",
+ "machine_tech": "FFF",
+ "family": "Qidi",
+ "bed_model": "qidi_xplus5_buildplate_model.stl",
+ "bed_texture": "qidi_xplus5_buildplate_texture.svg",
+ "hotend_model": "qidi_xseries_gen3_hotend.stl",
+ "default_materials": "Generic ABS @Qidi X-Plus 5 0.4 nozzle;Generic PLA @Qidi X-Plus 5 0.4 nozzle;QIDI ABS Odorless @Qidi X-Plus 5 0.4 nozzle;QIDI ABS Rapido @Qidi X-Plus 5 0.4 nozzle;QIDI PLA Rapido @Qidi X-Plus 5 0.2 nozzle;QIDI PLA Rapido @Qidi X-Plus 5 0.4 nozzle;QIDI PLA Rapido @Qidi X-Plus 5 0.6 nozzle;QIDI PLA Rapido @Qidi X-Plus 5 0.8 nozzle;QIDI PLA Rapido Matte @Qidi X-Plus 5 0.4 nozzle;QIDI PLA-CF @Qidi X-Plus 5 0.4 nozzle;Generic PLA Silk @Qidi X-Plus 5 0.4 nozzle;QIDI PLA Silk @Qidi X-Plus 5 0.4 nozzle;QIDI ASA @Qidi X-Plus 5 0.4 nozzle;QIDI PETG Basic @Qidi X-Plus 5 0.4 nozzle;QIDI PETG Rapido @Qidi X-Plus 5 0.4 nozzle;QIDI PETG Tough @Qidi X-Plus 5 0.4 nozzle;QIDI PETG Translucent @Qidi X-Plus 5 0.4 nozzle;QIDI PLA Basic @Qidi X-Plus 5 0.4 nozzle;QIDI PLA Matte Basic @Qidi X-Plus 5 0.4 nozzle;Generic PETG @Qidi X-Plus 5 0.4 nozzle"
+}
diff --git a/resources/profiles/Qidi/process/0.08mm High Quality @X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/process/0.08mm High Quality @X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..6ef2deee1a
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.08mm High Quality @X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,70 @@
+{
+ "type": "process",
+ "setting_id": "ojwggKwtZ95dDdGn",
+ "name": "0.08mm High Quality @X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_n_common",
+ "bottom_color_penetration_layers": "5",
+ "bottom_shell_layers": "5",
+ "bridge_flow": "1",
+ "default_acceleration": [
+ "10000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "initial_layer_infill_speed": [
+ "70"
+ ],
+ "initial_layer_line_width": "0.25",
+ "initial_layer_print_height": "0.1",
+ "initial_layer_speed": [
+ "40"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_line_width": "0.22",
+ "inner_wall_speed": [
+ "150"
+ ],
+ "internal_solid_infill_line_width": "0.22",
+ "layer_height": "0.08",
+ "line_width": "0.22",
+ "outer_wall_acceleration": [
+ "5000"
+ ],
+ "outer_wall_line_width": "0.22",
+ "outer_wall_speed": [
+ "100"
+ ],
+ "overhang_1_4_speed": [
+ "60"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_brim_width": "-1",
+ "prime_tower_flat_ironing": "1",
+ "skin_infill_line_width": "0.22",
+ "skeleton_infill_line_width": "0.22",
+ "sparse_infill_line_width": "0.22",
+ "sparse_infill_pattern": "gyroid",
+ "sparse_infill_speed": [
+ "100"
+ ],
+ "support_bottom_z_distance": "0.08",
+ "support_line_width": "0.22",
+ "support_top_z_distance": "0.08",
+ "top_color_penetration_layers": "7",
+ "top_shell_layers": "7",
+ "top_surface_line_width": "0.22",
+ "top_surface_speed": [
+ "150"
+ ],
+ "travel_speed": [
+ "500"
+ ],
+ "wall_loops": "4",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.08mm High Quality @X-Plus 5.json b/resources/profiles/Qidi/process/0.08mm High Quality @X-Plus 5.json
new file mode 100644
index 0000000000..5b76c79ef4
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.08mm High Quality @X-Plus 5.json
@@ -0,0 +1,73 @@
+{
+ "type": "process",
+ "setting_id": "pdbmnAHtrlkeD1D6",
+ "name": "0.08mm High Quality @X-Plus 5",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_n_common",
+ "bottom_color_penetration_layers": "7",
+ "bottom_shell_layers": "7",
+ "bridge_flow": "1",
+ "default_acceleration": [
+ "4000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "gap_infill_speed": [
+ "210"
+ ],
+ "initial_layer_infill_speed": [
+ "105"
+ ],
+ "initial_layer_speed": [
+ "50"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_speed": [
+ "120"
+ ],
+ "internal_solid_infill_speed": [
+ "150"
+ ],
+ "ironing_flow": "8%",
+ "layer_height": "0.08",
+ "outer_wall_acceleration": [
+ "2000"
+ ],
+ "outer_wall_speed": [
+ "60"
+ ],
+ "overhang_1_4_speed": [
+ "60"
+ ],
+ "overhang_2_4_speed": [
+ "30"
+ ],
+ "overhang_3_4_speed": [
+ "10"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_brim_width": "-1",
+ "prime_tower_flat_ironing": "0",
+ "sparse_infill_speed": [
+ "150"
+ ],
+ "sparse_infill_pattern": "gyroid",
+ "support_bottom_z_distance": "0.08",
+ "support_threshold_angle": "15",
+ "support_top_z_distance": "0.08",
+ "top_color_penetration_layers": "9",
+ "top_shell_layers": "9",
+ "top_shell_thickness": "1",
+ "top_surface_speed": [
+ "150"
+ ],
+ "travel_speed": [
+ "350"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.10mm Standard @X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/process/0.10mm Standard @X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..a8a9aa5f37
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.10mm Standard @X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,63 @@
+{
+ "type": "process",
+ "setting_id": "3k8N3voNC9Kp0Ov6",
+ "name": "0.10mm Standard @X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_n_common",
+ "bottom_color_penetration_layers": "5",
+ "bottom_shell_layers": "5",
+ "bridge_flow": "1",
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "initial_layer_infill_speed": [
+ "70"
+ ],
+ "initial_layer_line_width": "0.25",
+ "initial_layer_print_height": "0.1",
+ "initial_layer_speed": [
+ "40"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_line_width": "0.22",
+ "internal_solid_infill_line_width": "0.22",
+ "ironing_flow": "20%",
+ "ironing_speed": "20",
+ "layer_height": "0.1",
+ "line_width": "0.22",
+ "outer_wall_acceleration": [
+ "5000"
+ ],
+ "outer_wall_line_width": "0.22",
+ "overhang_1_4_speed": [
+ "60"
+ ],
+ "skin_infill_line_width": "0.22",
+ "outer_wall_speed": [
+ "100"
+ ],
+ "prime_tower_width": "60",
+ "skeleton_infill_line_width": "0.22",
+ "sparse_infill_line_width": "0.22",
+ "sparse_infill_speed": [
+ "100"
+ ],
+ "support_bottom_z_distance": "0.1",
+ "support_line_width": "0.22",
+ "support_top_z_distance": "0.1",
+ "top_color_penetration_layers": "7",
+ "top_shell_layers": "7",
+ "top_surface_line_width": "0.22",
+ "top_surface_speed": [
+ "150"
+ ],
+ "travel_speed": [
+ "500"
+ ],
+ "wall_loops": "4",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.12mm Balanced Quality @X-Plus 5 0.2 nozzle.json b/resources/profiles/Qidi/process/0.12mm Balanced Quality @X-Plus 5 0.2 nozzle.json
new file mode 100644
index 0000000000..1c1d304ccd
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.12mm Balanced Quality @X-Plus 5 0.2 nozzle.json
@@ -0,0 +1,66 @@
+{
+ "type": "process",
+ "setting_id": "O20HfmdyTRg2xayA",
+ "name": "0.12mm Balanced Quality @X-Plus 5 0.2 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_n_common",
+ "bottom_color_penetration_layers": "5",
+ "bottom_shell_layers": "5",
+ "bridge_flow": "1",
+ "default_acceleration": [
+ "10000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "initial_layer_infill_speed": [
+ "70"
+ ],
+ "initial_layer_line_width": "0.25",
+ "initial_layer_print_height": "0.1",
+ "initial_layer_speed": [
+ "40"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_line_width": "0.22",
+ "internal_solid_infill_line_width": "0.22",
+ "layer_height": "0.12",
+ "line_width": "0.22",
+ "outer_wall_acceleration": [
+ "5000"
+ ],
+ "outer_wall_line_width": "0.22",
+ "outer_wall_speed": [
+ "100"
+ ],
+ "overhang_1_4_speed": [
+ "60"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_brim_width": "-1",
+ "prime_tower_flat_ironing": "1",
+ "skin_infill_line_width": "0.22",
+ "skeleton_infill_line_width": "0.22",
+ "sparse_infill_line_width": "0.22",
+ "sparse_infill_speed": [
+ "100"
+ ],
+ "support_bottom_z_distance": "0.12",
+ "support_line_width": "0.22",
+ "support_top_z_distance": "0.12",
+ "top_color_penetration_layers": "7",
+ "top_shell_layers": "7",
+ "top_surface_line_width": "0.22",
+ "top_surface_speed": [
+ "150"
+ ],
+ "travel_speed": [
+ "500"
+ ],
+ "wall_loops": "4",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.2 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.12mm High Quality @X-Plus 5.json b/resources/profiles/Qidi/process/0.12mm High Quality @X-Plus 5.json
new file mode 100644
index 0000000000..a74aecb369
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.12mm High Quality @X-Plus 5.json
@@ -0,0 +1,73 @@
+{
+ "type": "process",
+ "setting_id": "xWoxLO8XiKAOEvPO",
+ "name": "0.12mm High Quality @X-Plus 5",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_n_common",
+ "bottom_color_penetration_layers": "5",
+ "bottom_shell_layers": "5",
+ "bridge_flow": "1",
+ "default_acceleration": [
+ "4000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "gap_infill_speed": [
+ "230"
+ ],
+ "initial_layer_infill_speed": [
+ "105"
+ ],
+ "initial_layer_speed": [
+ "50"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_speed": [
+ "150"
+ ],
+ "internal_solid_infill_speed": [
+ "180"
+ ],
+ "layer_height": "0.12",
+ "outer_wall_acceleration": [
+ "2000"
+ ],
+ "outer_wall_speed": [
+ "60"
+ ],
+ "overhang_1_4_speed": [
+ "60"
+ ],
+ "overhang_2_4_speed": [
+ "30"
+ ],
+ "overhang_3_4_speed": [
+ "10"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_brim_width": "-1",
+ "prime_tower_flat_ironing": "1",
+ "sparse_infill_pattern": "gyroid",
+ "sparse_infill_speed": [
+ "180"
+ ],
+ "support_bottom_z_distance": "0.12",
+ "support_threshold_angle": "20",
+ "support_top_z_distance": "0.12",
+ "top_color_penetration_layers": "7",
+ "top_shell_layers": "5",
+ "top_shell_thickness": "0.6",
+ "top_surface_speed": [
+ "150"
+ ],
+ "travel_speed": [
+ "350"
+ ],
+ "wall_loops": "2",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.16mm High Quality @X-Plus 5.json b/resources/profiles/Qidi/process/0.16mm High Quality @X-Plus 5.json
new file mode 100644
index 0000000000..54f20f7324
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.16mm High Quality @X-Plus 5.json
@@ -0,0 +1,65 @@
+{
+ "type": "process",
+ "setting_id": "7hYw7osV25Xu2yiu",
+ "name": "0.16mm High Quality @X-Plus 5",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_n_common",
+ "bottom_color_penetration_layers": "4",
+ "bottom_shell_layers": "4",
+ "bridge_flow": "1",
+ "default_acceleration": [
+ "4000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "gap_infill_speed": [
+ "250"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "internal_solid_infill_speed": [
+ "200"
+ ],
+ "ironing_flow": "25%",
+ "ironing_speed": "20",
+ "layer_height": "0.16",
+ "outer_wall_acceleration": [
+ "2000"
+ ],
+ "outer_wall_speed": [
+ "60"
+ ],
+ "overhang_1_4_speed": [
+ "60"
+ ],
+ "overhang_2_4_speed": [
+ "30"
+ ],
+ "overhang_3_4_speed": [
+ "10"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_brim_width": "-1",
+ "prime_tower_flat_ironing": "1",
+ "sparse_infill_pattern": "gyroid",
+ "sparse_infill_speed": [
+ "200"
+ ],
+ "support_bottom_z_distance": "0.16",
+ "support_threshold_angle": "25",
+ "support_top_z_distance": "0.16",
+ "top_color_penetration_layers": "6",
+ "top_shell_layers": "6",
+ "top_shell_thickness": "1.0",
+ "top_surface_speed": [
+ "150"
+ ],
+ "travel_speed": [
+ "350"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.16mm Standard @X-Plus 5.json b/resources/profiles/Qidi/process/0.16mm Standard @X-Plus 5.json
new file mode 100644
index 0000000000..5399e693aa
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.16mm Standard @X-Plus 5.json
@@ -0,0 +1,62 @@
+{
+ "type": "process",
+ "setting_id": "xP7mco0WGscmPNoV",
+ "name": "0.16mm Standard @X-Plus 5",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_n_common",
+ "bottom_color_penetration_layers": "4",
+ "bottom_shell_layers": "4",
+ "bridge_flow": "1",
+ "default_acceleration": [
+ "10000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "gap_infill_speed": [
+ "250"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_speed": [
+ "300"
+ ],
+ "internal_solid_infill_speed": [
+ "250"
+ ],
+ "layer_height": "0.16",
+ "outer_wall_acceleration": [
+ "5000"
+ ],
+ "outer_wall_speed": [
+ "200"
+ ],
+ "overhang_1_4_speed": [
+ "60"
+ ],
+ "overhang_2_4_speed": [
+ "30"
+ ],
+ "overhang_3_4_speed": [
+ "10"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_brim_width": "-1",
+ "prime_tower_flat_ironing": "1",
+ "sparse_infill_speed": [
+ "350"
+ ],
+ "support_bottom_z_distance": "0.16",
+ "support_threshold_angle": "25",
+ "support_top_z_distance": "0.16",
+ "top_color_penetration_layers": "6",
+ "top_shell_layers": "6",
+ "top_shell_thickness": "1.0",
+ "travel_speed": [
+ "500"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.18mm Balanced Quality @X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/process/0.18mm Balanced Quality @X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..85d94d49a7
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.18mm Balanced Quality @X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,73 @@
+{
+ "type": "process",
+ "setting_id": "kj7YrKOrYowWXXrY",
+ "name": "0.18mm Balanced Quality @X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_n_common",
+ "bridge_flow": "1",
+ "bridge_speed": [
+ "30"
+ ],
+ "default_acceleration": [
+ "10000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "gap_infill_speed": [
+ "50"
+ ],
+ "initial_layer_line_width": "0.62",
+ "initial_layer_print_height": "0.3",
+ "initial_layer_speed": [
+ "50"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_line_width": "0.62",
+ "inner_wall_speed": [
+ "300"
+ ],
+ "internal_solid_infill_line_width": "0.62",
+ "internal_solid_infill_speed": [
+ "250"
+ ],
+ "layer_height": "0.18",
+ "line_width": "0.62",
+ "outer_wall_acceleration": [
+ "5000"
+ ],
+ "outer_wall_line_width": "0.62",
+ "outer_wall_speed": [
+ "200"
+ ],
+ "overhang_1_4_speed": [
+ "0"
+ ],
+ "overhang_2_4_speed": [
+ "50"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_brim_width": "-1",
+ "prime_tower_flat_ironing": "1",
+ "skin_infill_line_width": "0.62",
+ "skeleton_infill_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "sparse_infill_speed": [
+ "350"
+ ],
+ "support_bottom_z_distance": "0.18",
+ "support_line_width": "0.62",
+ "support_top_z_distance": "0.18",
+ "top_surface_line_width": "0.62",
+ "top_surface_speed": [
+ "200"
+ ],
+ "travel_speed": [
+ "500"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.20mm High Quality @X-Plus 5.json b/resources/profiles/Qidi/process/0.20mm High Quality @X-Plus 5.json
new file mode 100644
index 0000000000..4f8c7b4ef4
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.20mm High Quality @X-Plus 5.json
@@ -0,0 +1,63 @@
+{
+ "type": "process",
+ "setting_id": "azERQAEOdeNEo2z7",
+ "name": "0.20mm High Quality @X-Plus 5",
+ "from": "system",
+ "inherits": "fdm_process_n_common",
+ "instantiation": "true",
+ "bottom_shell_layers": "3",
+ "bridge_flow": "1",
+ "default_acceleration": [
+ "4000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "gap_infill_speed": [
+ "250"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_speed": [
+ "150"
+ ],
+ "internal_solid_infill_speed": [
+ "200"
+ ],
+ "outer_wall_acceleration": [
+ "2000"
+ ],
+ "outer_wall_speed": [
+ "60"
+ ],
+ "overhang_1_4_speed": [
+ "60"
+ ],
+ "overhang_2_4_speed": [
+ "30"
+ ],
+ "overhang_3_4_speed": [
+ "10"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_brim_width": "-1",
+ "prime_tower_flat_ironing": "1",
+ "sparse_infill_speed": [
+ "200"
+ ],
+ "sparse_infill_density": "15%",
+ "sparse_infill_pattern": "gyroid",
+ "top_color_penetration_layers": "5",
+ "top_shell_layers": "5",
+ "top_shell_thickness": "1.0",
+ "top_surface_speed": [
+ "150"
+ ],
+ "travel_speed": [
+ "350"
+ ],
+ "wall_loops": "2",
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.20mm Standard @X-Plus 5.json b/resources/profiles/Qidi/process/0.20mm Standard @X-Plus 5.json
new file mode 100644
index 0000000000..decaceecae
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.20mm Standard @X-Plus 5.json
@@ -0,0 +1,47 @@
+{
+ "type": "process",
+ "setting_id": "ug7kxxCLKKE7MoJW",
+ "name": "0.20mm Standard @X-Plus 5",
+ "from": "system",
+ "inherits": "fdm_process_n_common",
+ "instantiation": "true",
+ "bridge_flow": "1",
+ "default_acceleration": [
+ "10000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "gap_infill_speed": [
+ "250"
+ ],
+ "inner_wall_speed": [
+ "300"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "internal_solid_infill_speed": [
+ "250"
+ ],
+ "ironing_flow": "15%",
+ "outer_wall_acceleration": [
+ "5000"
+ ],
+ "outer_wall_speed": [
+ "200"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_flat_ironing": "1",
+ "sparse_infill_speed": [
+ "350"
+ ],
+ "top_color_penetration_layers": "5",
+ "top_shell_layers": "5",
+ "top_shell_thickness": "1.0",
+ "travel_speed": [
+ "500"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.24mm Balanced Quality @X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/process/0.24mm Balanced Quality @X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..16e25dcef3
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.24mm Balanced Quality @X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,71 @@
+{
+ "type": "process",
+ "setting_id": "BWwslzDWus0iHZM8",
+ "name": "0.24mm Balanced Quality @X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_n_common",
+ "bridge_flow": "1",
+ "bridge_speed": [
+ "30"
+ ],
+ "default_acceleration": [
+ "10000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "gap_infill_speed": [
+ "50"
+ ],
+ "initial_layer_infill_speed": [
+ "105"
+ ],
+ "initial_layer_line_width": "0.62",
+ "initial_layer_print_height": "0.3",
+ "initial_layer_speed": [
+ "50"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_line_width": "0.62",
+ "inner_wall_speed": [
+ "300"
+ ],
+ "internal_solid_infill_line_width": "0.62",
+ "internal_solid_infill_speed": [
+ "250"
+ ],
+ "layer_height": "0.24",
+ "line_width": "0.62",
+ "outer_wall_acceleration": [
+ "5000"
+ ],
+ "outer_wall_line_width": "0.62",
+ "outer_wall_speed": [
+ "200"
+ ],
+ "overhang_3_4_speed": [
+ "30"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_brim_width": "-1",
+ "prime_tower_flat_ironing": "1",
+ "skin_infill_line_width": "0.62",
+ "skeleton_infill_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "sparse_infill_speed": [
+ "350"
+ ],
+ "support_line_width": "0.62",
+ "top_surface_line_width": "0.62",
+ "top_surface_speed": [
+ "200"
+ ],
+ "travel_speed": [
+ "500"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.24mm Balanced Quality @X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/process/0.24mm Balanced Quality @X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..e7d69b3f09
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.24mm Balanced Quality @X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,63 @@
+{
+ "type": "process",
+ "setting_id": "TdXf6dJK5dAiFtIW",
+ "name": "0.24mm Balanced Quality @X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_n_common",
+ "bridge_flow": "1",
+ "bridge_speed": [
+ "30"
+ ],
+ "default_acceleration": [
+ "10000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "gap_infill_speed": [
+ "50"
+ ],
+ "initial_layer_line_width": "0.82",
+ "initial_layer_print_height": "0.4",
+ "initial_layer_speed": [
+ "50"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_line_width": "0.82",
+ "inner_wall_speed": [
+ "300"
+ ],
+ "internal_solid_infill_line_width": "0.82",
+ "internal_solid_infill_speed": [
+ "250"
+ ],
+ "layer_height": "0.24",
+ "line_width": "0.82",
+ "outer_wall_acceleration": [
+ "5000"
+ ],
+ "outer_wall_line_width": "0.82",
+ "outer_wall_speed": [
+ "200"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_brim_width": "-1",
+ "prime_tower_flat_ironing": "1",
+ "skin_infill_line_width": "0.82",
+ "skeleton_infill_line_width": "0.82",
+ "sparse_infill_line_width": "0.82",
+ "sparse_infill_speed": [
+ "350"
+ ],
+ "support_line_width": "0.82",
+ "top_surface_line_width": "0.82",
+ "top_surface_pattern": "monotonic",
+ "travel_speed": [
+ "500"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.24mm Standard @X-Plus 5.json b/resources/profiles/Qidi/process/0.24mm Standard @X-Plus 5.json
new file mode 100644
index 0000000000..8a435e69e7
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.24mm Standard @X-Plus 5.json
@@ -0,0 +1,50 @@
+{
+ "type": "process",
+ "setting_id": "fiMTwk6ObF3WNpi5",
+ "name": "0.24mm Standard @X-Plus 5",
+ "from": "system",
+ "inherits": "fdm_process_n_common",
+ "instantiation": "true",
+ "bridge_flow": "1",
+ "default_acceleration": [
+ "10000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "gap_infill_speed": [
+ "250"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_speed": [
+ "300"
+ ],
+ "internal_solid_infill_speed": [
+ "250"
+ ],
+ "layer_height": "0.24",
+ "outer_wall_acceleration": [
+ "5000"
+ ],
+ "outer_wall_speed": [
+ "200"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_brim_width": "-1",
+ "prime_tower_flat_ironing": "1",
+ "sparse_infill_speed": [
+ "350"
+ ],
+ "support_threshold_angle": "35",
+ "top_color_penetration_layers": "4",
+ "top_shell_layers": "4",
+ "top_shell_thickness": "1.0",
+ "top_surface_line_width": "0.45",
+ "travel_speed": [
+ "500"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.4 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.30mm Standard @X-Plus 5 0.6 nozzle.json b/resources/profiles/Qidi/process/0.30mm Standard @X-Plus 5 0.6 nozzle.json
new file mode 100644
index 0000000000..a297f33bac
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.30mm Standard @X-Plus 5 0.6 nozzle.json
@@ -0,0 +1,65 @@
+{
+ "type": "process",
+ "setting_id": "ZHUAMUGv0HI3h8fQ",
+ "name": "0.30mm Standard @X-Plus 5 0.6 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_n_common",
+ "bridge_flow": "1",
+ "bridge_speed": [
+ "30"
+ ],
+ "default_acceleration": [
+ "10000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "gap_infill_speed": [
+ "50"
+ ],
+ "initial_layer_line_width": "0.62",
+ "initial_layer_print_height": "0.3",
+ "initial_layer_speed": [
+ "50"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_line_width": "0.62",
+ "inner_wall_speed": [
+ "300"
+ ],
+ "internal_solid_infill_line_width": "0.62",
+ "internal_solid_infill_speed": [
+ "250"
+ ],
+ "layer_height": "0.3",
+ "line_width": "0.62",
+ "outer_wall_acceleration": [
+ "5000"
+ ],
+ "outer_wall_line_width": "0.62",
+ "outer_wall_speed": [
+ "120"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_flat_ironing": "1",
+ "skin_infill_line_width": "0.62",
+ "skeleton_infill_line_width": "0.62",
+ "sparse_infill_line_width": "0.62",
+ "sparse_infill_speed": [
+ "350"
+ ],
+ "support_line_width": "0.62",
+ "top_shell_layers": "4",
+ "top_surface_line_width": "0.62",
+ "top_surface_speed": [
+ "200"
+ ],
+ "travel_speed": [
+ "500"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.6 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.32mm Balanced Quality @X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/process/0.32mm Balanced Quality @X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..be02d140d6
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.32mm Balanced Quality @X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,72 @@
+{
+ "type": "process",
+ "setting_id": "Vl4hMKR69J1JcquX",
+ "name": "0.32mm Balanced Quality @X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_n_common",
+ "bridge_flow": "1",
+ "bridge_speed": [
+ "30"
+ ],
+ "default_acceleration": [
+ "10000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "gap_infill_speed": [
+ "50"
+ ],
+ "initial_layer_infill_speed": [
+ "105"
+ ],
+ "initial_layer_line_width": "0.82",
+ "initial_layer_print_height": "0.4",
+ "initial_layer_speed": [
+ "50"
+ ],
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_line_width": "0.82",
+ "inner_wall_speed": [
+ "300"
+ ],
+ "internal_solid_infill_line_width": "0.82",
+ "internal_solid_infill_speed": [
+ "250"
+ ],
+ "layer_height": "0.32",
+ "line_width": "0.82",
+ "outer_wall_acceleration": [
+ "5000"
+ ],
+ "outer_wall_line_width": "0.82",
+ "outer_wall_speed": [
+ "200"
+ ],
+ "overhang_3_4_speed": [
+ "30"
+ ],
+ "prime_tower_width": "60",
+ "prime_tower_brim_width": "-1",
+ "prime_tower_flat_ironing": "1",
+ "skin_infill_line_width": "0.82",
+ "skeleton_infill_line_width": "0.82",
+ "sparse_infill_line_width": "0.82",
+ "sparse_infill_speed": [
+ "350"
+ ],
+ "support_line_width": "0.82",
+ "top_surface_line_width": "0.82",
+ "top_surface_pattern": "monotonic",
+ "top_surface_speed": [
+ "200"
+ ],
+ "travel_speed": [
+ "500"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/process/0.40mm Standard @X-Plus 5 0.8 nozzle.json b/resources/profiles/Qidi/process/0.40mm Standard @X-Plus 5 0.8 nozzle.json
new file mode 100644
index 0000000000..cb3f30c20e
--- /dev/null
+++ b/resources/profiles/Qidi/process/0.40mm Standard @X-Plus 5 0.8 nozzle.json
@@ -0,0 +1,60 @@
+{
+ "type": "process",
+ "setting_id": "6EBzl1Pg5Px36Cu6",
+ "name": "0.40mm Standard @X-Plus 5 0.8 nozzle",
+ "from": "system",
+ "instantiation": "true",
+ "inherits": "fdm_process_n_common",
+ "bridge_flow": "1",
+ "bridge_speed": [
+ "30"
+ ],
+ "default_acceleration": [
+ "10000"
+ ],
+ "elefant_foot_compensation": "0.15",
+ "enable_arc_fitting": "0",
+ "gap_infill_speed": [
+ "50"
+ ],
+ "initial_layer_line_width": "0.82",
+ "initial_layer_print_height": "0.4",
+ "inner_wall_acceleration": [
+ "0"
+ ],
+ "inner_wall_line_width": "0.82",
+ "inner_wall_speed": [
+ "300"
+ ],
+ "internal_solid_infill_line_width": "0.82",
+ "internal_solid_infill_speed": [
+ "250"
+ ],
+ "layer_height": "0.4",
+ "line_width": "0.82",
+ "outer_wall_acceleration": [
+ "5000"
+ ],
+ "outer_wall_line_width": "0.82",
+ "prime_tower_width": "60",
+ "prime_tower_flat_ironing": "1",
+ "skin_infill_line_width": "0.82",
+ "skeleton_infill_line_width": "0.82",
+ "sparse_infill_line_width": "0.82",
+ "sparse_infill_speed": [
+ "350"
+ ],
+ "support_line_width": "0.82",
+ "top_surface_line_width": "0.82",
+ "top_surface_pattern": "monotonic",
+ "top_surface_speed": [
+ "200"
+ ],
+ "top_shell_layers": "4",
+ "travel_speed": [
+ "500"
+ ],
+ "compatible_printers": [
+ "Qidi X-Plus 5 0.8 nozzle"
+ ]
+}
diff --git a/resources/profiles/Qidi/qidi_xplus5_buildplate_model.stl b/resources/profiles/Qidi/qidi_xplus5_buildplate_model.stl
new file mode 100644
index 0000000000..5e2d7ca485
Binary files /dev/null and b/resources/profiles/Qidi/qidi_xplus5_buildplate_model.stl differ
diff --git a/resources/profiles/Qidi/qidi_xplus5_buildplate_texture.svg b/resources/profiles/Qidi/qidi_xplus5_buildplate_texture.svg
new file mode 100644
index 0000000000..72a081620f
--- /dev/null
+++ b/resources/profiles/Qidi/qidi_xplus5_buildplate_texture.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/resources/profiles/Snapmaker.json b/resources/profiles/Snapmaker.json
index cdc7f0fe81..9a6fab7942 100644
--- a/resources/profiles/Snapmaker.json
+++ b/resources/profiles/Snapmaker.json
@@ -1,6 +1,6 @@
{
"name": "Snapmaker",
- "version": "02.04.00.07",
+ "version": "02.04.00.09",
"force_update": "0",
"description": "Snapmaker configurations",
"machine_model_list": [
@@ -426,10 +426,6 @@
"name": "0.16 Optimal @Snapmaker U1 (0.4 nozzle)",
"sub_path": "process/0.16 Optimal @Snapmaker U1 (0.4 nozzle).json"
},
- {
- "name": "0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle)",
- "sub_path": "process/0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle).json"
- },
{
"name": "0.20 Quality @Snapmaker U1 (0.4 nozzle)",
"sub_path": "process/0.20 Quality @Snapmaker U1 (0.4 nozzle).json"
@@ -486,6 +482,66 @@
"name": "fdm_process_U1_0.8_common",
"sub_path": "process/fdm_process_U1_0.8_common.json"
},
+ {
+ "name": "fdm_process_U1_0.06_nozzle_0.2",
+ "sub_path": "process/fdm_process_U1_0.06_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_U1_0.08_nozzle_0.2",
+ "sub_path": "process/fdm_process_U1_0.08_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_U1_0.10_nozzle_0.2",
+ "sub_path": "process/fdm_process_U1_0.10_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_U1_0.12_nozzle_0.2",
+ "sub_path": "process/fdm_process_U1_0.12_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_U1_0.14_nozzle_0.2",
+ "sub_path": "process/fdm_process_U1_0.14_nozzle_0.2.json"
+ },
+ {
+ "name": "fdm_process_U1_0.18_nozzle_0.6",
+ "sub_path": "process/fdm_process_U1_0.18_nozzle_0.6.json"
+ },
+ {
+ "name": "fdm_process_U1_0.24_nozzle_0.6",
+ "sub_path": "process/fdm_process_U1_0.24_nozzle_0.6.json"
+ },
+ {
+ "name": "fdm_process_U1_0.24_nozzle_0.8",
+ "sub_path": "process/fdm_process_U1_0.24_nozzle_0.8.json"
+ },
+ {
+ "name": "fdm_process_U1_0.30_nozzle_0.6",
+ "sub_path": "process/fdm_process_U1_0.30_nozzle_0.6.json"
+ },
+ {
+ "name": "fdm_process_U1_0.32_nozzle_0.8",
+ "sub_path": "process/fdm_process_U1_0.32_nozzle_0.8.json"
+ },
+ {
+ "name": "fdm_process_U1_0.36_nozzle_0.6",
+ "sub_path": "process/fdm_process_U1_0.36_nozzle_0.6.json"
+ },
+ {
+ "name": "fdm_process_U1_0.40_nozzle_0.8",
+ "sub_path": "process/fdm_process_U1_0.40_nozzle_0.8.json"
+ },
+ {
+ "name": "fdm_process_U1_0.42_nozzle_0.6",
+ "sub_path": "process/fdm_process_U1_0.42_nozzle_0.6.json"
+ },
+ {
+ "name": "fdm_process_U1_0.48_nozzle_0.8",
+ "sub_path": "process/fdm_process_U1_0.48_nozzle_0.8.json"
+ },
+ {
+ "name": "fdm_process_U1_0.56_nozzle_0.8",
+ "sub_path": "process/fdm_process_U1_0.56_nozzle_0.8.json"
+ },
{
"name": "0.06 High Quality @Snapmaker U1 (0.2 nozzle)",
"sub_path": "process/0.06 High Quality @Snapmaker U1 (0.2 nozzle).json"
@@ -1508,10 +1564,6 @@
"name": "Snapmaker PLA Metal @U1",
"sub_path": "filament/Snapmaker PLA Metal @U1.json"
},
- {
- "name": "Snapmaker PLA Silk @U1",
- "sub_path": "filament/Snapmaker PLA Silk @U1.json"
- },
{
"name": "Snapmaker PLA Silk",
"sub_path": "filament/Snapmaker PLA Silk.json"
@@ -1671,6 +1723,214 @@
{
"name": "Snapmaker PLA Matte @U1 base",
"sub_path": "filament/Snapmaker PLA Matte @U1 base.json"
+ },
+ {
+ "name": "Polymaker PLA @U1 base",
+ "sub_path": "filament/Polymaker PLA @U1 base.json"
+ },
+ {
+ "name": "Polymaker Silk PLA Family @U1",
+ "sub_path": "filament/Polymaker Silk PLA Family @U1.json"
+ },
+ {
+ "name": "Polymaker Tough PLA Family @U1",
+ "sub_path": "filament/Polymaker Tough PLA Family @U1.json"
+ },
+ {
+ "name": "Snapmaker Breakaway Support For PLA @U1 0.2 nozzle",
+ "sub_path": "filament/Snapmaker Breakaway Support For PLA @U1 0.2 nozzle.json"
+ },
+ {
+ "name": "Snapmaker Breakaway Support For PLA @U1 0.6 nozzle",
+ "sub_path": "filament/Snapmaker Breakaway Support For PLA @U1 0.6 nozzle.json"
+ },
+ {
+ "name": "Snapmaker Breakaway Support For PLA @U1 0.8 nozzle",
+ "sub_path": "filament/Snapmaker Breakaway Support For PLA @U1 0.8 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PETG HF @U1 base2",
+ "sub_path": "filament/Snapmaker PETG HF @U1 base2.json"
+ },
+ {
+ "name": "Snapmaker PETG Translucent @U1 base",
+ "sub_path": "filament/Snapmaker PETG Translucent @U1 base.json"
+ },
+ {
+ "name": "Snapmaker PLA Basic @U1 base",
+ "sub_path": "filament/Snapmaker PLA Basic @U1 base.json"
+ },
+ {
+ "name": "Snapmaker PLA Full Spectrum @U1 0.4 nozzle",
+ "sub_path": "filament/Snapmaker PLA Full Spectrum @U1 0.4 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Glow @U1 base",
+ "sub_path": "filament/Snapmaker PLA Glow @U1 base.json"
+ },
+ {
+ "name": "Snapmaker PLA Matte @U1 base2",
+ "sub_path": "filament/Snapmaker PLA Matte @U1 base2.json"
+ },
+ {
+ "name": "Snapmaker PLA Silk @U1 0.2 nozzle",
+ "sub_path": "filament/Snapmaker PLA Silk @U1 0.2 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Silk @U1 0.6 nozzle",
+ "sub_path": "filament/Snapmaker PLA Silk @U1 0.6 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Silk @U1 0.8 nozzle",
+ "sub_path": "filament/Snapmaker PLA Silk @U1 0.8 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA SnapSpeed @U1 base2",
+ "sub_path": "filament/Snapmaker PLA SnapSpeed @U1 base2.json"
+ },
+ {
+ "name": "Snapmaker PLA Translucent @U1 base",
+ "sub_path": "filament/Snapmaker PLA Translucent @U1 base.json"
+ },
+ {
+ "name": "Snapmaker PLA Wood @U1 0.4 nozzle",
+ "sub_path": "filament/Snapmaker PLA Wood @U1 0.4 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Wood @U1 0.6 nozzle",
+ "sub_path": "filament/Snapmaker PLA Wood @U1 0.6 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Wood @U1 0.8 nozzle",
+ "sub_path": "filament/Snapmaker PLA Wood @U1 0.8 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA-CF @U1 0.4 nozzle",
+ "sub_path": "filament/Snapmaker PLA-CF @U1 0.4 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA-CF @U1 0.6 nozzle",
+ "sub_path": "filament/Snapmaker PLA-CF @U1 0.6 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA-CF @U1 0.8 nozzle",
+ "sub_path": "filament/Snapmaker PLA-CF @U1 0.8 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PVA @U1 0.6 nozzle",
+ "sub_path": "filament/Snapmaker PVA @U1 0.6 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PVA @U1 0.8 nozzle",
+ "sub_path": "filament/Snapmaker PVA @U1 0.8 nozzle.json"
+ },
+ {
+ "name": "Snapmaker TPU 90A @U1",
+ "sub_path": "filament/Snapmaker TPU 90A @U1.json"
+ },
+ {
+ "name": "Snapmaker TPU 90A @U1 0.6 nozzle",
+ "sub_path": "filament/Snapmaker TPU 90A @U1 0.6 nozzle.json"
+ },
+ {
+ "name": "Snapmaker TPU 90A @U1 0.8 nozzle",
+ "sub_path": "filament/Snapmaker TPU 90A @U1 0.8 nozzle.json"
+ },
+ {
+ "name": "Snapmaker TPU 95A HF @U1",
+ "sub_path": "filament/Snapmaker TPU 95A HF @U1.json"
+ },
+ {
+ "name": "Snapmaker TPU 95A HF @U1 0.6 nozzle",
+ "sub_path": "filament/Snapmaker TPU 95A HF @U1 0.6 nozzle.json"
+ },
+ {
+ "name": "Snapmaker TPU 95A HF @U1 0.8 nozzle",
+ "sub_path": "filament/Snapmaker TPU 95A HF @U1 0.8 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Silk @U1",
+ "sub_path": "filament/Snapmaker PLA Silk @U1.json"
+ },
+ {
+ "name": "Polymaker General PLA Family @U1",
+ "sub_path": "filament/Polymaker General PLA Family @U1.json"
+ },
+ {
+ "name": "Snapmaker PETG HF @U1 0.2 nozzle",
+ "sub_path": "filament/Snapmaker PETG HF @U1 0.2 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PETG HF @U1 0.6 nozzle",
+ "sub_path": "filament/Snapmaker PETG HF @U1 0.6 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PETG HF @U1 0.8 nozzle",
+ "sub_path": "filament/Snapmaker PETG HF @U1 0.8 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PETG Translucent @U1 0.2 nozzle",
+ "sub_path": "filament/Snapmaker PETG Translucent @U1 0.2 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PETG Translucent @U1 0.4 nozzle",
+ "sub_path": "filament/Snapmaker PETG Translucent @U1 0.4 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PETG Translucent @U1 0.6 nozzle",
+ "sub_path": "filament/Snapmaker PETG Translucent @U1 0.6 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PETG Translucent @U1 0.8 nozzle",
+ "sub_path": "filament/Snapmaker PETG Translucent @U1 0.8 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Basic @U1",
+ "sub_path": "filament/Snapmaker PLA Basic @U1.json"
+ },
+ {
+ "name": "Snapmaker PLA Glow @U1 0.4 nozzle",
+ "sub_path": "filament/Snapmaker PLA Glow @U1 0.4 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Matte @U1 0.2 nozzle",
+ "sub_path": "filament/Snapmaker PLA Matte @U1 0.2 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Matte @U1 0.6 nozzle",
+ "sub_path": "filament/Snapmaker PLA Matte @U1 0.6 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Matte @U1 0.8 nozzle",
+ "sub_path": "filament/Snapmaker PLA Matte @U1 0.8 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA SnapSpeed @U1 0.2 nozzle",
+ "sub_path": "filament/Snapmaker PLA SnapSpeed @U1 0.2 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA SnapSpeed @U1 0.6 nozzle",
+ "sub_path": "filament/Snapmaker PLA SnapSpeed @U1 0.6 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA SnapSpeed @U1 0.8 nozzle",
+ "sub_path": "filament/Snapmaker PLA SnapSpeed @U1 0.8 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Translucent @U1 0.2 nozzle",
+ "sub_path": "filament/Snapmaker PLA Translucent @U1 0.2 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Translucent @U1 0.4 nozzle",
+ "sub_path": "filament/Snapmaker PLA Translucent @U1 0.4 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Translucent @U1 0.6 nozzle",
+ "sub_path": "filament/Snapmaker PLA Translucent @U1 0.6 nozzle.json"
+ },
+ {
+ "name": "Snapmaker PLA Translucent @U1 0.8 nozzle",
+ "sub_path": "filament/Snapmaker PLA Translucent @U1 0.8 nozzle.json"
}
],
"machine_list": [
diff --git a/resources/profiles/Snapmaker/filament/Polymaker General PLA Family @U1.json b/resources/profiles/Snapmaker/filament/Polymaker General PLA Family @U1.json
new file mode 100644
index 0000000000..c706ba776d
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Polymaker General PLA Family @U1.json
@@ -0,0 +1,32 @@
+{
+ "type": "filament",
+ "name": "Polymaker General PLA Family @U1",
+ "inherits": "Polymaker PLA @U1 base",
+ "from": "system",
+ "setting_id": "thXfSaUkOAKJ50ey",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.4 nozzle)"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "filament_max_volumetric_speed": [
+ "15"
+ ],
+ "filament_vendor": [
+ "Polymaker"
+ ],
+ "nozzle_temperature_range_high": [
+ "230"
+ ],
+ "temperature_vitrification": [
+ "62"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Polymaker PLA @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker PLA @U1 base.json
new file mode 100644
index 0000000000..b27c48f720
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Polymaker PLA @U1 base.json
@@ -0,0 +1,107 @@
+{
+ "type": "filament",
+ "name": "Polymaker PLA @U1 base",
+ "inherits": "fdm_filament_pla",
+ "from": "system",
+ "filament_id": "OGFL99",
+ "instantiation": "false",
+ "compatible_printers": [
+ "Snapmaker U1 (0.4 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "35"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "35"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "filament_scarf_seam_type": [
+ "none"
+ ],
+ "filament_scarf_height": [
+ "10%"
+ ],
+ "filament_scarf_gap": [
+ "15%"
+ ],
+ "filament_scarf_length": [
+ "10"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "hot_plate_temp": [
+ "55"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "55"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "supertack_plate_temp": [
+ "45"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "45"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_plate_temp": [
+ "55"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "55"
+ ],
+ "filament_start_gcode": [
+ "; Filament gcode\n"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode\n"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Polymaker Silk PLA Family @U1.json b/resources/profiles/Snapmaker/filament/Polymaker Silk PLA Family @U1.json
new file mode 100644
index 0000000000..b6bd119022
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Polymaker Silk PLA Family @U1.json
@@ -0,0 +1,32 @@
+{
+ "type": "filament",
+ "name": "Polymaker Silk PLA Family @U1",
+ "inherits": "Polymaker PLA @U1 base",
+ "from": "system",
+ "setting_id": "h8vIYpXbxFtHPV6e",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.4 nozzle)"
+ ],
+ "filament_density": [
+ "1.34"
+ ],
+ "filament_vendor": [
+ "Polymaker"
+ ],
+ "nozzle_temperature": [
+ "230"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "230"
+ ],
+ "nozzle_temperature_range_high": [
+ "230"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Polymaker Tough PLA Family @U1.json b/resources/profiles/Snapmaker/filament/Polymaker Tough PLA Family @U1.json
new file mode 100644
index 0000000000..e5c2c7d7f6
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Polymaker Tough PLA Family @U1.json
@@ -0,0 +1,32 @@
+{
+ "type": "filament",
+ "name": "Polymaker Tough PLA Family @U1",
+ "inherits": "Polymaker PLA @U1 base",
+ "from": "system",
+ "setting_id": "d6CC81Es2hp46bto",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.4 nozzle)"
+ ],
+ "filament_density": [
+ "1.23"
+ ],
+ "filament_flow_ratio": [
+ "0.96"
+ ],
+ "filament_vendor": [
+ "Polymaker"
+ ],
+ "slow_down_layer_time": [
+ "6"
+ ],
+ "temperature_vitrification": [
+ "55"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon ASA-CF08 @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon ASA-CF08 @Snapmaker U1.json
index 31799163c6..b38925e01b 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon ASA-CF08 @Snapmaker U1.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon ASA-CF08 @Snapmaker U1.json
@@ -11,7 +11,6 @@
"filament_minimal_purge_on_wipe_tower": [
"15"
],
-
"pressure_advance": [
"0.05"
]
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA12-CF10 @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA12-CF10 @Snapmaker U1.json
index fd99eee105..1bb569c291 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA12-CF10 @Snapmaker U1.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA12-CF10 @Snapmaker U1.json
@@ -17,7 +17,6 @@
"filament_z_hop": [
"0.0"
],
-
"enable_pressure_advance": [
"1"
],
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA6-CF20 @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA6-CF20 @Snapmaker U1.json
index 1b227b2fd0..d6106faa50 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA6-CF20 @Snapmaker U1.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA6-CF20 @Snapmaker U1.json
@@ -17,7 +17,6 @@
"filament_z_hop": [
"0.0"
],
-
"enable_pressure_advance": [
"1"
],
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PETG-ESD @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PETG-ESD @Snapmaker U1.json
index cfe6890a80..6e1797904c 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PETG-ESD @Snapmaker U1.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PETG-ESD @Snapmaker U1.json
@@ -17,7 +17,6 @@
"supertack_plate_temp_initial_layer": [
"70"
],
-
"pressure_advance": [
"0.04"
]
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite Dual PLA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite Dual PLA @0.2 nozzle.json
index 707d5ae54b..f4703d6c40 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite Dual PLA @0.2 nozzle.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite Dual PLA @0.2 nozzle.json
@@ -1,10 +1,10 @@
{
"type": "filament",
- "from": "system",
- "instantiation": "true",
"name": "PolyLite Dual PLA @0.2 nozzle",
- "setting_id": "jhmy4YHi9MuL0DWu",
"inherits": "PolyLite PLA @0.2 nozzle",
+ "from": "system",
+ "setting_id": "jhmy4YHi9MuL0DWu",
+ "instantiation": "true",
"compatible_printers": [
"Snapmaker A250 Dual (0.2 nozzle)",
"Snapmaker A250 Dual BKit (0.2 nozzle)",
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite J1 PLA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite J1 PLA @0.2 nozzle.json
index 1a4422472c..e1ce855c61 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite J1 PLA @0.2 nozzle.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite J1 PLA @0.2 nozzle.json
@@ -1,10 +1,10 @@
{
"type": "filament",
- "from": "system",
- "instantiation": "true",
"name": "PolyLite J1 PLA @0.2 nozzle",
- "setting_id": "jFlRSxx0KvN3BOUu",
"inherits": "PolyLite PLA @0.2 nozzle",
+ "from": "system",
+ "setting_id": "jFlRSxx0KvN3BOUu",
+ "instantiation": "true",
"compatible_printers": [
"Snapmaker J1 (0.2 nozzle)"
]
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite J1 PLA.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite J1 PLA.json
index 6c5017d0a8..55d39a0832 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite J1 PLA.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite J1 PLA.json
@@ -1,10 +1,10 @@
{
"type": "filament",
- "from": "system",
- "instantiation": "true",
"name": "PolyLite J1 PLA",
- "setting_id": "wcpOTTMyZNPFKyXr",
"inherits": "PolyLite PLA @base",
+ "from": "system",
+ "setting_id": "wcpOTTMyZNPFKyXr",
+ "instantiation": "true",
"compatible_printers": [
"Snapmaker J1 (0.4 nozzle)",
"Snapmaker J1 (0.6 nozzle)",
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG @Base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG @Base.json
index cd5f75a463..579940a5b2 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG @Base.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG @Base.json
@@ -1,4 +1,9 @@
{
+ "type": "filament",
+ "name": "PolyLite PETG @Base",
+ "inherits": "fdm_filament_petg",
+ "from": "system",
+ "instantiation": "false",
"filament_density": [
"1.25"
],
@@ -18,11 +23,6 @@
"0"
],
"description": "",
- "inherits": "fdm_filament_petg",
- "name": "PolyLite PETG @Base",
- "type": "filament",
- "instantiation": "false",
- "from": "system",
"filament_vendor": [
"Polymaker"
]
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG @Snapmaker U1.json
index 47cf37385d..f51cc5eeec 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG @Snapmaker U1.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG @Snapmaker U1.json
@@ -17,7 +17,6 @@
"supertack_plate_temp_initial_layer": [
"70"
],
-
"pressure_advance": [
"0.05"
]
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG Translucent @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG Translucent @Snapmaker U1.json
index 6089dd66c4..a3efeee371 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG Translucent @Snapmaker U1.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG Translucent @Snapmaker U1.json
@@ -17,7 +17,6 @@
"supertack_plate_temp_initial_layer": [
"70"
],
-
"pressure_advance": [
"0.05"
]
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @0.2 nozzle.json
index c3897e63c2..fcceb14014 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @0.2 nozzle.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @0.2 nozzle.json
@@ -1,10 +1,10 @@
{
"type": "filament",
- "from": "system",
- "instantiation": "true",
"name": "PolyLite PLA @0.2 nozzle",
- "setting_id": "s9mdMaFca8SHfji9",
"inherits": "PolyLite PLA @base",
+ "from": "system",
+ "setting_id": "s9mdMaFca8SHfji9",
+ "instantiation": "true",
"compatible_printers": [
"Snapmaker A250 (0.2 nozzle)",
"Snapmaker A250 BKit (0.2 nozzle)",
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @base.json
index 4173572637..3a4621b838 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @base.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @base.json
@@ -1,10 +1,10 @@
{
"type": "filament",
- "from": "system",
- "instantiation": "false",
"name": "PolyLite PLA @base",
- "filament_id": "1393866034",
"inherits": "fdm_filament_pla",
+ "from": "system",
+ "filament_id": "1393866034",
+ "instantiation": "false",
"filament_flow_ratio": [
"0.95"
],
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra Dual PLA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra Dual PLA @0.2 nozzle.json
index b45068dd52..3f8cbc7674 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra Dual PLA @0.2 nozzle.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra Dual PLA @0.2 nozzle.json
@@ -1,10 +1,10 @@
{
"type": "filament",
- "from": "system",
- "instantiation": "true",
"name": "PolyTerra Dual PLA @0.2 nozzle",
- "setting_id": "UQYgjH1uVxf3d2Nv",
"inherits": "PolyTerra PLA @0.2 nozzle",
+ "from": "system",
+ "setting_id": "UQYgjH1uVxf3d2Nv",
+ "instantiation": "true",
"compatible_printers": [
"Snapmaker A250 Dual (0.2 nozzle)",
"Snapmaker A250 Dual BKit (0.2 nozzle)",
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra J1 PLA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra J1 PLA @0.2 nozzle.json
index dd4f969f62..9cb7060139 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra J1 PLA @0.2 nozzle.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra J1 PLA @0.2 nozzle.json
@@ -1,10 +1,10 @@
{
"type": "filament",
- "from": "system",
- "instantiation": "true",
"name": "PolyTerra J1 PLA @0.2 nozzle",
- "setting_id": "mxKHxGmBZzPLS82O",
"inherits": "PolyTerra PLA @0.2 nozzle",
+ "from": "system",
+ "setting_id": "mxKHxGmBZzPLS82O",
+ "instantiation": "true",
"compatible_printers": [
"Snapmaker J1 (0.2 nozzle)"
]
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra J1 PLA.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra J1 PLA.json
index 7b66438058..2583b2a2c3 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra J1 PLA.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra J1 PLA.json
@@ -1,10 +1,10 @@
{
"type": "filament",
- "from": "system",
- "instantiation": "true",
"name": "PolyTerra J1 PLA",
- "setting_id": "4MZWZX7QPBzxdEGj",
"inherits": "PolyTerra PLA @base",
+ "from": "system",
+ "setting_id": "4MZWZX7QPBzxdEGj",
+ "instantiation": "true",
"compatible_printers": [
"Snapmaker J1 (0.4 nozzle)",
"Snapmaker J1 (0.6 nozzle)",
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @0.2 nozzle.json
index 07d45a7633..e70ee3d5a0 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @0.2 nozzle.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @0.2 nozzle.json
@@ -1,10 +1,10 @@
{
"type": "filament",
- "from": "system",
- "instantiation": "true",
"name": "PolyTerra PLA @0.2 nozzle",
- "setting_id": "6W1ygT08NordBdIW",
"inherits": "PolyTerra PLA @base",
+ "from": "system",
+ "setting_id": "6W1ygT08NordBdIW",
+ "instantiation": "true",
"compatible_printers": [
"Snapmaker A250 (0.2 nozzle)",
"Snapmaker A250 BKit (0.2 nozzle)",
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @Base.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @Base.json
index 7c05254a2e..76b1d2020c 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @Base.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @Base.json
@@ -1,4 +1,9 @@
{
+ "type": "filament",
+ "name": "Polymaker HT-PLA @Base",
+ "inherits": "fdm_filament_pla",
+ "from": "system",
+ "instantiation": "false",
"filament_density": [
"1.28"
],
@@ -18,11 +23,6 @@
"0"
],
"description": "",
- "inherits": "fdm_filament_pla",
- "name": "Polymaker HT-PLA @Base",
- "type": "filament",
- "instantiation": "false",
- "from": "system",
"filament_vendor": [
"Polymaker"
]
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @Base.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @Base.json
index 3a64237122..06019b562c 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @Base.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @Base.json
@@ -1,4 +1,9 @@
{
+ "type": "filament",
+ "name": "Polymaker HT-PLA-GF @Base",
+ "inherits": "fdm_filament_pla",
+ "from": "system",
+ "instantiation": "false",
"filament_density": [
"1.34"
],
@@ -18,11 +23,6 @@
"0"
],
"description": "",
- "inherits": "fdm_filament_pla",
- "name": "Polymaker HT-PLA-GF @Base",
- "type": "filament",
- "instantiation": "false",
- "from": "system",
"filament_vendor": [
"Polymaker"
]
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG @Base.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG @Base.json
index 0965bd153b..3692eac7d5 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG @Base.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG @Base.json
@@ -1,4 +1,9 @@
{
+ "type": "filament",
+ "name": "Polymaker PETG @Base",
+ "inherits": "fdm_filament_petg",
+ "from": "system",
+ "instantiation": "false",
"filament_density": [
"1.3"
],
@@ -18,11 +23,6 @@
"0"
],
"description": "",
- "inherits": "fdm_filament_petg",
- "name": "Polymaker PETG @Base",
- "type": "filament",
- "instantiation": "false",
- "from": "system",
"filament_vendor": [
"Polymaker"
]
diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro @Base.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro @Base.json
index 072fa53c93..d69ccc79f2 100644
--- a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro @Base.json
+++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro @Base.json
@@ -1,4 +1,9 @@
{
+ "type": "filament",
+ "name": "Polymaker PLA Pro @Base",
+ "inherits": "fdm_filament_pla",
+ "from": "system",
+ "instantiation": "false",
"filament_density": [
"1.23"
],
@@ -18,11 +23,6 @@
"0"
],
"description": "",
- "inherits": "fdm_filament_pla",
- "name": "Polymaker PLA Pro @Base",
- "type": "filament",
- "instantiation": "false",
- "from": "system",
"filament_vendor": [
"Polymaker"
]
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS @U1.json
index 083432ebd5..fe6c59ba80 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker ABS @U1.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS @U1.json
@@ -7,5 +7,8 @@
"instantiation": "true",
"compatible_printers": [
"Snapmaker U1 (0.4 nozzle)"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
]
}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ASA @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker ASA @U1.json
index 0c5d22723a..67bde29e8d 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker ASA @U1.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker ASA @U1.json
@@ -7,5 +7,8 @@
"instantiation": "true",
"compatible_printers": [
"Snapmaker U1 (0.4 nozzle)"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
]
}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1 0.2 nozzle.json
new file mode 100644
index 0000000000..db331b0daa
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1 0.2 nozzle.json
@@ -0,0 +1,104 @@
+{
+ "type": "filament",
+ "name": "Snapmaker Breakaway Support For PLA @U1 0.2 nozzle",
+ "inherits": "Snapmaker Breakaway Support @base",
+ "from": "system",
+ "setting_id": "mJoaud6wulT4p8SA",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "fan_max_speed": [
+ "30"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_cost": [
+ "69.98"
+ ],
+ "filament_density": [
+ "1.3"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_max_volumetric_speed": [
+ "0.5"
+ ],
+ "filament_retract_length_toolchange": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "nozzle_temperature": [
+ "240"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "pressure_advance": [
+ "0.2"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "5"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1 0.6 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1 0.6 nozzle.json
new file mode 100644
index 0000000000..248c57f6d0
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1 0.6 nozzle.json
@@ -0,0 +1,104 @@
+{
+ "type": "filament",
+ "name": "Snapmaker Breakaway Support For PLA @U1 0.6 nozzle",
+ "inherits": "Snapmaker Breakaway Support @base",
+ "from": "system",
+ "setting_id": "rKUUREJNhstIU0I2",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "filament_cost": [
+ "69.98"
+ ],
+ "filament_density": [
+ "1.3"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "pressure_advance": [
+ "0.02"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_retract_length_toolchange": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "1"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "2"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1 0.8 nozzle.json
new file mode 100644
index 0000000000..47cf80d076
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1 0.8 nozzle.json
@@ -0,0 +1,98 @@
+{
+ "type": "filament",
+ "name": "Snapmaker Breakaway Support For PLA @U1 0.8 nozzle",
+ "inherits": "Snapmaker Breakaway Support @base",
+ "from": "system",
+ "setting_id": "hQ8jQ5GKQKGKuPew",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "filament_cost": [
+ "69.98"
+ ],
+ "filament_density": [
+ "1.3"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_flow_ratio": [
+ "0.93"
+ ],
+ "filament_retract_length_toolchange": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "3"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "pressure_advance": [
+ "0.015"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1.json
index 97b2f8b07f..9e5d63a63c 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1.json
@@ -10,5 +10,83 @@
],
"filament_type": [
"PLA"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_flow_ratio": [
+ "1"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "20"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "filament_retraction_length": [
+ "1"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "nozzle_temperature": [
+ "210"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "210"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
]
}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG HF @U1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG HF @U1 0.2 nozzle.json
new file mode 100644
index 0000000000..f1c3aa30a1
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG HF @U1 0.2 nozzle.json
@@ -0,0 +1,108 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PETG HF @U1 0.2 nozzle",
+ "inherits": "Snapmaker PETG HF @U1 base2",
+ "from": "system",
+ "setting_id": "Ujul2YTBwfldFiFd",
+ "instantiation": "true",
+ "filament_max_volumetric_speed": [
+ "1",
+ "1"
+ ],
+ "filament_ramming_travel_time": [
+ "0",
+ "0"
+ ],
+ "long_retractions_when_ec": [
+ "0",
+ "0"
+ ],
+ "retraction_distances_when_ec": [
+ "0",
+ "0"
+ ],
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "20"
+ ],
+ "fan_max_speed": [
+ "60"
+ ],
+ "fan_min_speed": [
+ "30"
+ ],
+ "filament_end_gcode": [
+ "\n\n"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "3"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "filament_retraction_length": [
+ "1.5"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "nozzle_temperature": [
+ "245"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "245"
+ ],
+ "nozzle_temperature_range_low": [
+ "230"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "slow_down_layer_time": [
+ "10"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG HF @U1 0.6 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG HF @U1 0.6 nozzle.json
new file mode 100644
index 0000000000..66a535b7fb
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG HF @U1 0.6 nozzle.json
@@ -0,0 +1,113 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PETG HF @U1 0.6 nozzle",
+ "inherits": "Snapmaker PETG HF @U1 base2",
+ "from": "system",
+ "setting_id": "2FfQZdp5xunngnF0",
+ "instantiation": "true",
+ "filament_ramming_travel_time": [
+ "0",
+ "0"
+ ],
+ "long_retractions_when_ec": [
+ "0",
+ "0"
+ ],
+ "retraction_distances_when_ec": [
+ "0",
+ "0"
+ ],
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "20"
+ ],
+ "fan_max_speed": [
+ "60"
+ ],
+ "fan_min_speed": [
+ "30"
+ ],
+ "filament_end_gcode": [
+ "\n"
+ ],
+ "filament_max_volumetric_speed": [
+ "20"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "filament_retraction_length": [
+ "2.5"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "1"
+ ],
+ "filament_wipe_distance": [
+ "1"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "nozzle_temperature": [
+ "245"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "245"
+ ],
+ "nozzle_temperature_range_low": [
+ "230"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "slow_down_layer_time": [
+ "10"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG HF @U1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG HF @U1 0.8 nozzle.json
new file mode 100644
index 0000000000..04446a623e
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG HF @U1 0.8 nozzle.json
@@ -0,0 +1,110 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PETG HF @U1 0.8 nozzle",
+ "inherits": "Snapmaker PETG HF @U1 base2",
+ "from": "system",
+ "setting_id": "ebANa67V4B2nwUaX",
+ "instantiation": "true",
+ "filament_ramming_travel_time": [
+ "0",
+ "0"
+ ],
+ "long_retractions_when_ec": [
+ "0",
+ "0"
+ ],
+ "retraction_distances_when_ec": [
+ "0",
+ "0"
+ ],
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "eng_plate_temp": [
+ "80"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "80"
+ ],
+ "fan_cooling_layer_time": [
+ "20"
+ ],
+ "fan_max_speed": [
+ "60"
+ ],
+ "fan_min_speed": [
+ "30"
+ ],
+ "filament_max_volumetric_speed": [
+ "20"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "filament_retraction_length": [
+ "1"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "1"
+ ],
+ "filament_wipe_distance": [
+ "2"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "80"
+ ],
+ "nozzle_temperature": [
+ "245"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "245"
+ ],
+ "nozzle_temperature_range_low": [
+ "230"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "slow_down_layer_time": [
+ "10"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "supertack_plate_temp": [
+ "60"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "60"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG HF @U1 base2.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG HF @U1 base2.json
new file mode 100644
index 0000000000..0ad75759a1
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG HF @U1 base2.json
@@ -0,0 +1,279 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PETG HF @U1 base2",
+ "inherits": "fdm_filament_petg",
+ "from": "system",
+ "filament_id": "GFG96",
+ "instantiation": "false",
+ "cool_plate_temp": [
+ "0"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "0"
+ ],
+ "eng_plate_temp": [
+ "70"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "70"
+ ],
+ "filament_type": [
+ "PETG"
+ ],
+ "fan_cooling_layer_time": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "filament_cost": [
+ "24.99"
+ ],
+ "filament_density": [
+ "1.28"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_max_volumetric_speed": [
+ "16"
+ ],
+ "hot_plate_temp": [
+ "70"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "70"
+ ],
+ "nozzle_temperature_range_high": [
+ "270"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "overhang_fan_speed": [
+ "90"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "slow_down_layer_time": [
+ "25"
+ ],
+ "textured_plate_temp": [
+ "70"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "70"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n{if (bed_temperature[current_extruder] >80)||(bed_temperature_initial_layer[current_extruder] >80)}M106 P3 S255\n{elsif (bed_temperature[current_extruder] >60)||(bed_temperature_initial_layer[current_extruder] >60)}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}"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "counter_coef_1": [
+ "0"
+ ],
+ "counter_coef_2": [
+ "0.008"
+ ],
+ "counter_coef_3": [
+ "-0.041"
+ ],
+ "counter_limit_min": [
+ "-0.035"
+ ],
+ "counter_limit_max": [
+ "0.033"
+ ],
+ "circle_compensation_speed": [
+ "200"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "diameter_limit": [
+ "50"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_cooling_before_tower": [
+ "0"
+ ],
+ "filament_dev_ams_drying_ams_limitations": [
+ "0"
+ ],
+ "filament_dev_ams_drying_temperature": [
+ "40.0"
+ ],
+ "filament_dev_ams_drying_time": [
+ "8.0"
+ ],
+ "filament_dev_drying_softening_temperature": [
+ "40.0"
+ ],
+ "filament_dev_ams_drying_heat_distortion_temperature": [
+ "45.0"
+ ],
+ "filament_dev_drying_cooling_temperature": [
+ "35.0"
+ ],
+ "filament_dev_chamber_drying_bed_temperature": [
+ "90.0"
+ ],
+ "filament_dev_chamber_drying_time": [
+ "12.0"
+ ],
+ "filament_flush_temp": [
+ "0"
+ ],
+ "filament_flush_volumetric_speed": [
+ "0"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_long_retractions_when_ec": [
+ "nil"
+ ],
+ "filament_ramming_volumetric_speed": [
+ "-1"
+ ],
+ "filament_ramming_volumetric_speed_nc": [
+ "-1"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_printable": [
+ "3"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_distances_when_ec": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_vendor": [
+ "Generic"
+ ],
+ "filament_prime_volume": [
+ "45"
+ ],
+ "filament_prime_volume_nc": [
+ "60"
+ ],
+ "filament_extruder_variant": [
+ "Direct Drive Standard"
+ ],
+ "filament_scarf_seam_type": [
+ "none"
+ ],
+ "filament_scarf_height": [
+ "10%"
+ ],
+ "filament_scarf_gap": [
+ "0%"
+ ],
+ "filament_scarf_length": [
+ "10"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_pre_cooling_temperature": [
+ "0"
+ ],
+ "filament_pre_cooling_temperature_nc": [
+ "0"
+ ],
+ "filament_ramming_travel_time": [
+ "0"
+ ],
+ "filament_ramming_travel_time_nc": [
+ "0"
+ ],
+ "filament_retract_length_nc": [
+ "14"
+ ],
+ "hole_coef_1": [
+ "0"
+ ],
+ "hole_coef_2": [
+ "-0.008"
+ ],
+ "hole_coef_3": [
+ "0.23415"
+ ],
+ "hole_limit_min": [
+ "0.088"
+ ],
+ "hole_limit_max": [
+ "0.22"
+ ],
+ "impact_strength_z": [
+ "10"
+ ],
+ "long_retractions_when_ec": [
+ "0"
+ ],
+ "retraction_distances_when_ec": [
+ "0"
+ ],
+ "supertack_plate_temp": [
+ "70"
+ ],
+ "supertack_plate_temp_initial_layer": [
+ "70"
+ ],
+ "no_slow_down_for_cooling_on_outwalls": [
+ "0"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "temperature_vitrification": [
+ "70"
+ ],
+ "filament_change_length": [
+ "10"
+ ],
+ "filament_velocity_adaptation_factor": [
+ "1"
+ ],
+ "compatible_printers": [],
+ "filament_end_gcode": [
+ "; filament end gcode \n\n"
+ ],
+ "filament_adaptive_volumetric_speed": [
+ "0"
+ ],
+ "volumetric_speed_coefficients": [
+ "0 0 0 0 0 0"
+ ],
+ "filament_adhesiveness_category": [
+ "300"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 0.2 nozzle.json
new file mode 100644
index 0000000000..ee6234f406
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 0.2 nozzle.json
@@ -0,0 +1,110 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PETG Translucent @U1 0.2 nozzle",
+ "inherits": "Snapmaker PETG Translucent @U1 base",
+ "from": "system",
+ "setting_id": "UTpedqYJysaoe3OI",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "additional_cooling_fan_speed": [
+ "20"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "fan_max_speed": [
+ "40"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_cost": [
+ "25"
+ ],
+ "filament_density": [
+ "1.25"
+ ],
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_max_volumetric_speed": [
+ "1"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "5"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_retract_length_toolchange": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "1"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "50"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "nozzle_temperature": [
+ "245"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_low": [
+ "230"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "pressure_advance": [
+ "0.23"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 0.4 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 0.4 nozzle.json
new file mode 100644
index 0000000000..e0e60a0e14
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 0.4 nozzle.json
@@ -0,0 +1,98 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PETG Translucent @U1 0.4 nozzle",
+ "inherits": "Snapmaker PETG Translucent @U1 base",
+ "from": "system",
+ "setting_id": "k6UQJJASzFSfePqN",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.4 nozzle)"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "fan_max_speed": [
+ "30"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_cost": [
+ "24.99"
+ ],
+ "filament_flow_ratio": [
+ "0.97"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "filament_retraction_length": [
+ "1"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "nozzle_temperature": [
+ "250"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_low": [
+ "230"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "pressure_advance": [
+ "0.04"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "filament_density": [
+ "1.25"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 0.6 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 0.6 nozzle.json
new file mode 100644
index 0000000000..14f59104f8
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 0.6 nozzle.json
@@ -0,0 +1,107 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PETG Translucent @U1 0.6 nozzle",
+ "inherits": "Snapmaker PETG Translucent @U1 base",
+ "from": "system",
+ "setting_id": "FlcbnP3kWiJLMDMl",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "fan_max_speed": [
+ "60"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_cost": [
+ "25"
+ ],
+ "filament_density": [
+ "1.25"
+ ],
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_max_volumetric_speed": [
+ "16"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "nozzle_temperature": [
+ "245"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_low": [
+ "230"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "pressure_advance": [
+ "0.02"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_retract_length_toolchange": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "1.2"
+ ],
+ "filament_retraction_minimum_travel": [
+ "1"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_wipe_distance": [
+ "2"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 0.8 nozzle.json
new file mode 100644
index 0000000000..e746141f06
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 0.8 nozzle.json
@@ -0,0 +1,104 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PETG Translucent @U1 0.8 nozzle",
+ "inherits": "Snapmaker PETG Translucent @U1 base",
+ "from": "system",
+ "setting_id": "aJk3TnFTU3uQGjd3",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "close_fan_the_first_x_layers": [
+ "3"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "fan_max_speed": [
+ "60"
+ ],
+ "fan_min_speed": [
+ "20"
+ ],
+ "filament_cost": [
+ "25"
+ ],
+ "filament_density": [
+ "1.25"
+ ],
+ "filament_flow_ratio": [
+ "0.97"
+ ],
+ "filament_max_volumetric_speed": [
+ "16"
+ ],
+ "hot_plate_temp": [
+ "80"
+ ],
+ "nozzle_temperature": [
+ "245"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "250"
+ ],
+ "nozzle_temperature_range_low": [
+ "230"
+ ],
+ "overhang_fan_threshold": [
+ "10%"
+ ],
+ "pressure_advance": [
+ "0.02"
+ ],
+ "slow_down_min_speed": [
+ "10"
+ ],
+ "textured_plate_temp": [
+ "80"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "80"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "30"
+ ],
+ "filament_multitool_ramming_volume": [
+ "10"
+ ],
+ "filament_retract_length_toolchange": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "1"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 base.json
new file mode 100644
index 0000000000..eb18fb4838
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG Translucent @U1 base.json
@@ -0,0 +1,8 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PETG Translucent @U1 base",
+ "inherits": "fdm_filament_petg",
+ "from": "system",
+ "filament_id": "PETG_TRANSLUCENT_001",
+ "instantiation": "false"
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Basic @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Basic @U1 base.json
new file mode 100644
index 0000000000..adf7624e1f
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Basic @U1 base.json
@@ -0,0 +1,127 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Basic @U1 base",
+ "from": "system",
+ "filament_id": "1417031127011",
+ "instantiation": "false",
+ "filament_end_gcode": [
+ ""
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_loading_speed_start": [
+ "35"
+ ],
+ "filament_loading_speed": [
+ "35"
+ ],
+ "filament_unloading_speed_start": [
+ "35"
+ ],
+ "filament_unloading_speed": [
+ "35"
+ ],
+ "filament_load_time": [
+ "2"
+ ],
+ "filament_unload_time": [
+ "2"
+ ],
+ "filament_cooling_moves": [
+ "2"
+ ],
+ "filament_cooling_initial_speed": [
+ "35"
+ ],
+ "filament_cooling_final_speed": [
+ "60"
+ ],
+ "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/Snapmaker/filament/Snapmaker PLA Basic @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Basic @U1.json
new file mode 100644
index 0000000000..4b68672fa5
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Basic @U1.json
@@ -0,0 +1,284 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Basic @U1",
+ "inherits": "Snapmaker PLA Basic @U1 base",
+ "from": "system",
+ "setting_id": "ZtUJN4JpkR0MLpiY",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.4 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "dont_slow_down_outer_wall": [
+ "0"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "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.5"
+ ],
+ "filament_cooling_initial_speed": [
+ "10"
+ ],
+ "filament_cooling_moves": [
+ "2"
+ ],
+ "filament_cost": [
+ "25.4"
+ ],
+ "filament_density": [
+ "1.32"
+ ],
+ "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_loading_speed": [
+ "10"
+ ],
+ "filament_loading_speed_start": [
+ "50"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_max_volumetric_speed": [
+ "15"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "25"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "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_length_toolchange": [
+ "10"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_stamping_distance": [
+ "45"
+ ],
+ "filament_stamping_loading_speed": [
+ "29"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed": [
+ "100"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "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%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "pressure_advance": [
+ "0.02"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Full Spectrum @U1 0.4 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Full Spectrum @U1 0.4 nozzle.json
new file mode 100644
index 0000000000..990e67a79e
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Full Spectrum @U1 0.4 nozzle.json
@@ -0,0 +1,284 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Full Spectrum @U1 0.4 nozzle",
+ "inherits": "Snapmaker PLA Basic @U1 base",
+ "from": "system",
+ "setting_id": "iybaFWrXKOsmXgMJ",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.4 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "dont_slow_down_outer_wall": [
+ "0"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "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.5"
+ ],
+ "filament_cooling_initial_speed": [
+ "10"
+ ],
+ "filament_cooling_moves": [
+ "2"
+ ],
+ "filament_cost": [
+ "25.4"
+ ],
+ "filament_density": [
+ "1.32"
+ ],
+ "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_loading_speed": [
+ "10"
+ ],
+ "filament_loading_speed_start": [
+ "50"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_max_volumetric_speed": [
+ "15"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "25"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "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_length_toolchange": [
+ "10"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_stamping_distance": [
+ "45"
+ ],
+ "filament_stamping_loading_speed": [
+ "29"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed": [
+ "100"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "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%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "pressure_advance": [
+ "0.02"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Glow @U1 0.4 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Glow @U1 0.4 nozzle.json
new file mode 100644
index 0000000000..907781cd2c
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Glow @U1 0.4 nozzle.json
@@ -0,0 +1,95 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Glow @U1 0.4 nozzle",
+ "inherits": "Snapmaker PLA Glow @U1 base",
+ "from": "system",
+ "setting_id": "ee1YNNr8CwKetuvY",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.4 nozzle)"
+ ],
+ "additional_cooling_fan_speed": [
+ "80"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "filament_cooling_final_speed": [
+ "3.4"
+ ],
+ "filament_cooling_initial_speed": [
+ "2.2"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_flow_ratio": [
+ "0.97"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_max_volumetric_speed": [
+ "16"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "30"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_multitool_ramming_volume": [
+ "10"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "filament_retraction_length": [
+ "0.4"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_z_hop": [
+ "0.2"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Glow @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Glow @U1 base.json
new file mode 100644
index 0000000000..ad3c1f4bbb
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Glow @U1 base.json
@@ -0,0 +1,44 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Glow @U1 base",
+ "inherits": "fdm_filament_pla",
+ "from": "system",
+ "filament_id": "SPGLOW001",
+ "instantiation": "false",
+ "filament_end_gcode": [
+ ""
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_loading_speed_start": [
+ "35"
+ ],
+ "filament_loading_speed": [
+ "35"
+ ],
+ "filament_unloading_speed_start": [
+ "35"
+ ],
+ "filament_unloading_speed": [
+ "35"
+ ],
+ "filament_load_time": [
+ "2"
+ ],
+ "filament_unload_time": [
+ "2"
+ ],
+ "filament_cooling_moves": [
+ "2"
+ ],
+ "filament_cooling_initial_speed": [
+ "35"
+ ],
+ "filament_cooling_final_speed": [
+ "60"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 0.2 nozzle.json
new file mode 100644
index 0000000000..2a8c1e40c3
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 0.2 nozzle.json
@@ -0,0 +1,287 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Matte @U1 0.2 nozzle",
+ "inherits": "Snapmaker PLA Matte @U1 base2",
+ "from": "system",
+ "setting_id": "d3c48DeNk7VDeeHf",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "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": [
+ ""
+ ],
+ "dont_slow_down_outer_wall": [
+ "0"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "eng_plate_temp": [
+ "45"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "45"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_cost": [
+ "24.99"
+ ],
+ "filament_density": [
+ "1.26"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ " "
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "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_length_toolchange": [
+ "2"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ " "
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "additional_cooling_fan_speed": [
+ "80"
+ ],
+ "filament_cooling_final_speed": [
+ "3.5"
+ ],
+ "filament_cooling_initial_speed": [
+ "10"
+ ],
+ "filament_cooling_moves": [
+ "2"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_flow_ratio": [
+ "1.05"
+ ],
+ "filament_loading_speed": [
+ "10"
+ ],
+ "filament_loading_speed_start": [
+ "50"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "5"
+ ],
+ "filament_multitool_ramming_flow": [
+ "4"
+ ],
+ "filament_multitool_ramming_volume": [
+ "4"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_stamping_distance": [
+ "45"
+ ],
+ "filament_stamping_loading_speed": [
+ "29"
+ ],
+ "filament_unloading_speed": [
+ "100"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "nozzle_temperature": [
+ "215"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "215"
+ ],
+ "pressure_advance": [
+ "0.025"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 0.6 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 0.6 nozzle.json
new file mode 100644
index 0000000000..9de7615ae5
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 0.6 nozzle.json
@@ -0,0 +1,287 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Matte @U1 0.6 nozzle",
+ "inherits": "Snapmaker PLA Matte @U1 base2",
+ "from": "system",
+ "setting_id": "l3E1WaljDn2uoTqW",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "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": [
+ ""
+ ],
+ "dont_slow_down_outer_wall": [
+ "0"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "eng_plate_temp": [
+ "45"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "45"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_cost": [
+ "24.99"
+ ],
+ "filament_density": [
+ "1.26"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ " "
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_max_volumetric_speed": [
+ "20"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "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_length_toolchange": [
+ "10"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ " "
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "textured_plate_temp": [
+ "45"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "45"
+ ],
+ "additional_cooling_fan_speed": [
+ "80"
+ ],
+ "filament_cooling_final_speed": [
+ "3.5"
+ ],
+ "filament_cooling_initial_speed": [
+ "10"
+ ],
+ "filament_cooling_moves": [
+ "2"
+ ],
+ "filament_flow_ratio": [
+ "0.99"
+ ],
+ "filament_loading_speed": [
+ "10"
+ ],
+ "filament_loading_speed_start": [
+ "50"
+ ],
+ "filament_multitool_ramming_flow": [
+ "40"
+ ],
+ "filament_multitool_ramming_volume": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "0.6"
+ ],
+ "filament_stamping_distance": [
+ "45"
+ ],
+ "filament_stamping_loading_speed": [
+ "29"
+ ],
+ "filament_unloading_speed": [
+ "100"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "nozzle_temperature": [
+ "215"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "215"
+ ],
+ "pressure_advance": [
+ "0.015"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 0.8 nozzle.json
new file mode 100644
index 0000000000..251b2a47b6
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 0.8 nozzle.json
@@ -0,0 +1,287 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Matte @U1 0.8 nozzle",
+ "inherits": "Snapmaker PLA Matte @U1 base2",
+ "from": "system",
+ "setting_id": "NLPd4AA0seW3NXdy",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "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": [
+ ""
+ ],
+ "dont_slow_down_outer_wall": [
+ "0"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "eng_plate_temp": [
+ "45"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "45"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_cost": [
+ "24.99"
+ ],
+ "filament_density": [
+ "1.26"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ " "
+ ],
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_max_volumetric_speed": [
+ "20"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "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_length_toolchange": [
+ "10"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ " "
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "nozzle_temperature": [
+ "215"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "additional_cooling_fan_speed": [
+ "80"
+ ],
+ "filament_cooling_final_speed": [
+ "3.5"
+ ],
+ "filament_cooling_initial_speed": [
+ "10"
+ ],
+ "filament_cooling_moves": [
+ "2"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_loading_speed": [
+ "10"
+ ],
+ "filament_loading_speed_start": [
+ "50"
+ ],
+ "filament_multitool_ramming_flow": [
+ "40"
+ ],
+ "filament_multitool_ramming_volume": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "0.6"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_stamping_distance": [
+ "45"
+ ],
+ "filament_stamping_loading_speed": [
+ "29"
+ ],
+ "filament_unloading_speed": [
+ "100"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "215"
+ ],
+ "pressure_advance": [
+ "0.015"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 base2.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 base2.json
new file mode 100644
index 0000000000..6c0dcf26fd
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 base2.json
@@ -0,0 +1,127 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Matte @U1 base2",
+ "from": "system",
+ "filament_id": "141703112701",
+ "instantiation": "false",
+ "filament_end_gcode": [
+ ""
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_loading_speed_start": [
+ "35"
+ ],
+ "filament_loading_speed": [
+ "35"
+ ],
+ "filament_unloading_speed_start": [
+ "35"
+ ],
+ "filament_unloading_speed": [
+ "35"
+ ],
+ "filament_load_time": [
+ "2"
+ ],
+ "filament_unload_time": [
+ "2"
+ ],
+ "filament_cooling_moves": [
+ "2"
+ ],
+ "filament_cooling_initial_speed": [
+ "35"
+ ],
+ "filament_cooling_final_speed": [
+ "60"
+ ],
+ "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/Snapmaker/filament/Snapmaker PLA Matte @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1.json
index fcb1d74c92..a71c43f9b0 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1.json
@@ -27,7 +27,7 @@
"0"
],
"additional_cooling_fan_speed": [
- "70"
+ "80"
],
"chamber_temperature": [
"0"
@@ -47,9 +47,6 @@
"cool_plate_temp_initial_layer": [
"60"
],
- "default_filament_colour": [
- ""
- ],
"dont_slow_down_outer_wall": [
"0"
],
@@ -60,7 +57,7 @@
"1"
],
"enable_pressure_advance": [
- "1"
+ "0"
],
"eng_plate_temp": [
"60"
@@ -102,7 +99,7 @@
"; filament end gcode \n"
],
"filament_flow_ratio": [
- "1.01"
+ "1"
],
"filament_is_support": [
"0"
@@ -117,7 +114,7 @@
"nil"
],
"filament_max_volumetric_speed": [
- "20"
+ "22"
],
"filament_minimal_purge_on_wipe_tower": [
"15"
@@ -140,6 +137,9 @@
"filament_retract_before_wipe": [
"nil"
],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
"filament_retract_lift_above": [
"nil"
],
@@ -216,19 +216,19 @@
"0"
],
"hot_plate_temp": [
- "55"
+ "65"
],
"hot_plate_temp_initial_layer": [
- "55"
+ "65"
],
"idle_temperature": [
"0"
],
"nozzle_temperature": [
- "220"
+ "215"
],
"nozzle_temperature_initial_layer": [
- "220"
+ "215"
],
"nozzle_temperature_range_high": [
"240"
@@ -276,9 +276,9 @@
"40"
],
"textured_plate_temp": [
- "60"
+ "65"
],
"textured_plate_temp_initial_layer": [
- "60"
+ "65"
]
}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @U1 base.json
index a530b9208e..9fba864f40 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @U1 base.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @U1 base.json
@@ -46,8 +46,5 @@
],
"nozzle_temperature": [
"220"
- ],
- "default_filament_colour": [
- ""
]
}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 0.2 nozzle.json
new file mode 100644
index 0000000000..5eb860506c
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 0.2 nozzle.json
@@ -0,0 +1,285 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Silk @U1 0.2 nozzle",
+ "inherits": "Snapmaker PLA Basic @U1 base",
+ "from": "system",
+ "setting_id": "Q5xH6oGGlbXr14Pa",
+ "filament_id": "11813638720",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "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": [
+ "25.4"
+ ],
+ "filament_density": [
+ "1.32"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n"
+ ],
+ "filament_flow_ratio": [
+ "1.02"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "3"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "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_length_toolchange": [
+ "5"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "1"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "18"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "dont_slow_down_outer_wall": [
+ "1"
+ ],
+ "filament_cooling_final_speed": [
+ "3.4"
+ ],
+ "filament_cooling_initial_speed": [
+ "2.2"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "filament_retraction_length": [
+ "0.4"
+ ],
+ "filament_stamping_distance": [
+ "0"
+ ],
+ "filament_stamping_loading_speed": [
+ "0"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "nozzle_temperature": [
+ "230"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "230"
+ ],
+ "pressure_advance": [
+ "0.015"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 0.6 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 0.6 nozzle.json
new file mode 100644
index 0000000000..5df6ff5a3a
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 0.6 nozzle.json
@@ -0,0 +1,285 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Silk @U1 0.6 nozzle",
+ "inherits": "Snapmaker PLA Basic @U1 base",
+ "from": "system",
+ "setting_id": "2pieDQoz9PiDCnU1",
+ "filament_id": "11813638720",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "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": [
+ "25.4"
+ ],
+ "filament_density": [
+ "1.32"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n"
+ ],
+ "filament_flow_ratio": [
+ "0.97"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "40"
+ ],
+ "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_length_toolchange": [
+ "10"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "1"
+ ],
+ "filament_wipe_distance": [
+ "1"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "15"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "dont_slow_down_outer_wall": [
+ "0"
+ ],
+ "filament_cooling_final_speed": [
+ "3.4"
+ ],
+ "filament_cooling_initial_speed": [
+ "2.2"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_max_volumetric_speed": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "0.4"
+ ],
+ "filament_stamping_distance": [
+ "0"
+ ],
+ "filament_stamping_loading_speed": [
+ "0"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "nozzle_temperature": [
+ "230"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "230"
+ ],
+ "pressure_advance": [
+ "0.015"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 0.8 nozzle.json
new file mode 100644
index 0000000000..0758372ea0
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 0.8 nozzle.json
@@ -0,0 +1,285 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Silk @U1 0.8 nozzle",
+ "inherits": "Snapmaker PLA Basic @U1 base",
+ "from": "system",
+ "setting_id": "f3H0JFUnds0mkKCN",
+ "filament_id": "11813638720",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "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": [
+ "25.4"
+ ],
+ "filament_density": [
+ "1.32"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n"
+ ],
+ "filament_flow_ratio": [
+ "0.97"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "40"
+ ],
+ "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_length_toolchange": [
+ "10"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "1"
+ ],
+ "filament_wipe_distance": [
+ "1"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "15"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "dont_slow_down_outer_wall": [
+ "0"
+ ],
+ "filament_cooling_final_speed": [
+ "3.4"
+ ],
+ "filament_cooling_initial_speed": [
+ "2.2"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_max_volumetric_speed": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "0.4"
+ ],
+ "filament_stamping_distance": [
+ "0"
+ ],
+ "filament_stamping_loading_speed": [
+ "0"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "nozzle_temperature": [
+ "230"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "230"
+ ],
+ "pressure_advance": [
+ "0.015"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 base.json
index 12d65834ea..227fa034dc 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 base.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 base.json
@@ -55,8 +55,5 @@
],
"nozzle_temperature": [
"230"
- ],
- "default_filament_colour": [
- ""
]
}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1.json
index 7fdf44e792..c68904ffd9 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1.json
@@ -1,11 +1,285 @@
{
"type": "filament",
"name": "Snapmaker PLA Silk @U1",
- "inherits": "Snapmaker PLA Silk @U1 base",
+ "inherits": "Snapmaker PLA Basic @U1 base",
"from": "system",
"setting_id": "9PkHSwtXFM0zPWth",
+ "filament_id": "11813638720",
"instantiation": "true",
"compatible_printers": [
"Snapmaker U1 (0.4 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "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": [
+ "25.4"
+ ],
+ "filament_density": [
+ "1.32"
+ ],
+ "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_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "25"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "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_length_toolchange": [
+ "5"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "190"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "dont_slow_down_outer_wall": [
+ "1"
+ ],
+ "filament_cooling_final_speed": [
+ "3.4"
+ ],
+ "filament_cooling_initial_speed": [
+ "2.2"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_max_volumetric_speed": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "0.2"
+ ],
+ "filament_stamping_distance": [
+ "0"
+ ],
+ "filament_stamping_loading_speed": [
+ "0"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "nozzle_temperature": [
+ "230"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "230"
+ ],
+ "pressure_advance": [
+ "0.015"
]
}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 0.2 nozzle.json
new file mode 100644
index 0000000000..7fcb20f31b
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 0.2 nozzle.json
@@ -0,0 +1,50 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA SnapSpeed @U1 0.2 nozzle",
+ "inherits": "Snapmaker PLA SnapSpeed @U1 base2",
+ "from": "system",
+ "setting_id": "jsAgNNiUC6DoO7rz",
+ "instantiation": "true",
+ "filament_deretraction_speed": [
+ "30"
+ ],
+ "filament_flow_ratio": [
+ "1.01"
+ ],
+ "filament_max_volumetric_speed": [
+ "2"
+ ],
+ "filament_multitool_ramming_flow": [
+ "30"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "filament_retraction_speed": [
+ "30"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "pressure_advance": [
+ "0.2"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 0.6 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 0.6 nozzle.json
new file mode 100644
index 0000000000..18fca8b4fd
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 0.6 nozzle.json
@@ -0,0 +1,41 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA SnapSpeed @U1 0.6 nozzle",
+ "inherits": "Snapmaker PLA SnapSpeed @U1 base2",
+ "from": "system",
+ "setting_id": "aKudBpQBj3MZZZav",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "filament_deretraction_speed": [
+ "30"
+ ],
+ "filament_flow_ratio": [
+ "0.97"
+ ],
+ "filament_multitool_ramming_flow": [
+ "30"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "filament_retraction_length": [
+ "1.6"
+ ],
+ "filament_retraction_speed": [
+ "30"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 0.8 nozzle.json
new file mode 100644
index 0000000000..2ebadbd2b2
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 0.8 nozzle.json
@@ -0,0 +1,41 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA SnapSpeed @U1 0.8 nozzle",
+ "inherits": "Snapmaker PLA SnapSpeed @U1 base2",
+ "from": "system",
+ "setting_id": "sWoInox4hzxzIHfe",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "filament_deretraction_speed": [
+ "30"
+ ],
+ "filament_multitool_ramming_flow": [
+ "30"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "filament_retraction_length": [
+ "1.6"
+ ],
+ "filament_retraction_speed": [
+ "30"
+ ],
+ "nozzle_temperature": [
+ "215"
+ ],
+ "pressure_advance": [
+ "0.018"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 base2.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 base2.json
new file mode 100644
index 0000000000..84889e3d9b
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 base2.json
@@ -0,0 +1,281 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA SnapSpeed @U1 base2",
+ "from": "system",
+ "filament_id": "141703112701",
+ "instantiation": "false",
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers": [],
+ "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": [
+ ""
+ ],
+ "dont_slow_down_outer_wall": [
+ "0"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "eng_plate_temp": [
+ "45"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "45"
+ ],
+ "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": [
+ "24.99"
+ ],
+ "filament_density": [
+ "1.26"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ " "
+ ],
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_max_volumetric_speed": [
+ "20"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_stamping_distance": [
+ "0"
+ ],
+ "filament_stamping_loading_speed": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ " "
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "snapmaker"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp": [
+ "55"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "55"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "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%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "pressure_advance": [
+ "0.02"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "textured_plate_temp": [
+ "45"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "45"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1.json
index 96d86d2a81..2525f5b2a9 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1.json
@@ -33,13 +33,13 @@
"0"
],
"close_fan_the_first_x_layers": [
- "3"
+ "1"
],
"compatible_printers_condition": "",
"compatible_prints": [],
"compatible_prints_condition": "",
"complete_print_exhaust_fan_speed": [
- "80"
+ "70"
],
"cool_plate_temp": [
"60"
@@ -47,20 +47,17 @@
"cool_plate_temp_initial_layer": [
"60"
],
- "default_filament_colour": [
- ""
- ],
"dont_slow_down_outer_wall": [
"0"
],
"during_print_exhaust_fan_speed": [
- "60"
+ "70"
],
"enable_overhang_bridge_fan": [
"1"
],
"enable_pressure_advance": [
- "1"
+ "0"
],
"eng_plate_temp": [
"60"
@@ -102,7 +99,7 @@
"; filament end gcode \n"
],
"filament_flow_ratio": [
- "0.99"
+ "0.966"
],
"filament_is_support": [
"0"
@@ -117,7 +114,7 @@
"nil"
],
"filament_max_volumetric_speed": [
- "18"
+ "20"
],
"filament_minimal_purge_on_wipe_tower": [
"15"
@@ -126,7 +123,7 @@
"1"
],
"filament_multitool_ramming_flow": [
- "40"
+ "30"
],
"filament_multitool_ramming_volume": [
"5"
@@ -140,6 +137,9 @@
"filament_retract_before_wipe": [
"nil"
],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
"filament_retract_lift_above": [
"nil"
],
@@ -159,13 +159,13 @@
"nil"
],
"filament_retraction_length": [
- "0.8"
+ "1.2"
],
"filament_retraction_minimum_travel": [
"nil"
],
"filament_retraction_speed": [
- "30"
+ "nil"
],
"filament_shrink": [
"100%"
@@ -207,19 +207,19 @@
"nil"
],
"filament_z_hop": [
- "nil"
+ "0.4"
],
"filament_z_hop_types": [
- "nil"
+ "Slope Lift"
],
"full_fan_speed_layer": [
"0"
],
"hot_plate_temp": [
- "55"
+ "65"
],
"hot_plate_temp_initial_layer": [
- "55"
+ "65"
],
"idle_temperature": [
"0"
@@ -231,7 +231,7 @@
"220"
],
"nozzle_temperature_range_high": [
- "230"
+ "240"
],
"nozzle_temperature_range_low": [
"190"
@@ -246,7 +246,7 @@
"0.4157"
],
"pressure_advance": [
- "0.026"
+ "0.02"
],
"reduce_fan_stop_start_freq": [
"1"
@@ -267,7 +267,7 @@
"-1"
],
"temperature_vitrification": [
- "60"
+ "45"
],
"textured_cool_plate_temp": [
"40"
@@ -276,9 +276,9 @@
"40"
],
"textured_plate_temp": [
- "60"
+ "65"
],
"textured_plate_temp_initial_layer": [
- "60"
+ "65"
]
}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 0.2 nozzle.json
new file mode 100644
index 0000000000..6271b7af42
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 0.2 nozzle.json
@@ -0,0 +1,284 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Translucent @U1 0.2 nozzle",
+ "inherits": "Snapmaker PLA Translucent @U1 base",
+ "from": "system",
+ "setting_id": "zIg9XLrieYNBduyn",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "dont_slow_down_outer_wall": [
+ "0"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "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": [
+ "25"
+ ],
+ "filament_density": [
+ "1.22"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n"
+ ],
+ "filament_flow_ratio": [
+ "1.02"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_max_volumetric_speed": [
+ "1.6"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "5"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "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": [
+ "0%"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "0.2"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_stamping_distance": [
+ "0"
+ ],
+ "filament_stamping_loading_speed": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "1"
+ ],
+ "filament_wipe_distance": [
+ "1"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "pressure_advance": [
+ "0.15"
+ ],
+ "reduce_fan_stop_start_freq": [
+ "1"
+ ],
+ "required_nozzle_HRC": [
+ "0"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "slow_down_layer_time": [
+ "10"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "support_material_interface_fan_speed": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 0.4 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 0.4 nozzle.json
new file mode 100644
index 0000000000..7d4270ef31
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 0.4 nozzle.json
@@ -0,0 +1,284 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Translucent @U1 0.4 nozzle",
+ "inherits": "Snapmaker PLA Translucent @U1 base",
+ "from": "system",
+ "setting_id": "RqtrcLcy124ICGEc",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.4 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "dont_slow_down_outer_wall": [
+ "0"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "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": [
+ "25.4"
+ ],
+ "filament_density": [
+ "1.32"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n"
+ ],
+ "filament_flow_ratio": [
+ "0.97"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_loading_speed": [
+ "8"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "50"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "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_length_toolchange": [
+ "5"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "0.2"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_stamping_distance": [
+ "0"
+ ],
+ "filament_stamping_loading_speed": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "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%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "pressure_advance": [
+ "0.02"
+ ],
+ "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": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 0.6 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 0.6 nozzle.json
new file mode 100644
index 0000000000..af3f95c757
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 0.6 nozzle.json
@@ -0,0 +1,284 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Translucent @U1 0.6 nozzle",
+ "inherits": "Snapmaker PLA Translucent @U1 base",
+ "from": "system",
+ "setting_id": "OZHemzEcvzFMN8fL",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "dont_slow_down_outer_wall": [
+ "0"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "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": [
+ "25"
+ ],
+ "filament_density": [
+ "1.22"
+ ],
+ "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_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "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": [
+ "0%"
+ ],
+ "filament_retract_length_toolchange": [
+ "10"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "0.5"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "50"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_stamping_distance": [
+ "0"
+ ],
+ "filament_stamping_loading_speed": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "pressure_advance": [
+ "0.02"
+ ],
+ "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": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 0.8 nozzle.json
new file mode 100644
index 0000000000..a10a4b2fb1
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 0.8 nozzle.json
@@ -0,0 +1,284 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Translucent @U1 0.8 nozzle",
+ "inherits": "Snapmaker PLA Translucent @U1 base",
+ "from": "system",
+ "setting_id": "IPehCg9fKawLorB5",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "activate_chamber_temp_control": [
+ "0"
+ ],
+ "adaptive_pressure_advance": [
+ "0"
+ ],
+ "adaptive_pressure_advance_bridges": [
+ "0"
+ ],
+ "adaptive_pressure_advance_model": [
+ "0,0,0\n0,0,0"
+ ],
+ "adaptive_pressure_advance_overhangs": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "chamber_temperature": [
+ "0"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "compatible_printers_condition": "",
+ "compatible_prints": [],
+ "compatible_prints_condition": "",
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "60"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "60"
+ ],
+ "dont_slow_down_outer_wall": [
+ "0"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_overhang_bridge_fan": [
+ "1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "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": [
+ "25"
+ ],
+ "filament_density": [
+ "1.22"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_diameter": [
+ "1.75"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n"
+ ],
+ "filament_flow_ratio": [
+ "0.95"
+ ],
+ "filament_is_support": [
+ "0"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "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": [
+ "0%"
+ ],
+ "filament_retract_length_toolchange": [
+ "10"
+ ],
+ "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_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_length": [
+ "1"
+ ],
+ "filament_retraction_minimum_travel": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_shrink": [
+ "100%"
+ ],
+ "filament_shrinkage_compensation_z": [
+ "100%"
+ ],
+ "filament_soluble": [
+ "0"
+ ],
+ "filament_stamping_distance": [
+ "0"
+ ],
+ "filament_stamping_loading_speed": [
+ "0"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ],
+ "filament_toolchange_delay": [
+ "0"
+ ],
+ "filament_type": [
+ "PLA"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "filament_wipe": [
+ "nil"
+ ],
+ "filament_wipe_distance": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "full_fan_speed_layer": [
+ "0"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "idle_temperature": [
+ "0"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "pellet_flow_coefficient": [
+ "0.4157"
+ ],
+ "pressure_advance": [
+ "0.02"
+ ],
+ "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": [
+ "-1"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "textured_cool_plate_temp": [
+ "40"
+ ],
+ "textured_cool_plate_temp_initial_layer": [
+ "40"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 base.json
new file mode 100644
index 0000000000..4f4842ae1d
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Translucent @U1 base.json
@@ -0,0 +1,44 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Translucent @U1 base",
+ "inherits": "fdm_filament_pla",
+ "from": "system",
+ "filament_id": "SPTR001",
+ "instantiation": "false",
+ "filament_end_gcode": [
+ ""
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_loading_speed_start": [
+ "35"
+ ],
+ "filament_loading_speed": [
+ "35"
+ ],
+ "filament_unloading_speed_start": [
+ "35"
+ ],
+ "filament_unloading_speed": [
+ "35"
+ ],
+ "filament_load_time": [
+ "2"
+ ],
+ "filament_unload_time": [
+ "2"
+ ],
+ "filament_cooling_moves": [
+ "2"
+ ],
+ "filament_cooling_initial_speed": [
+ "35"
+ ],
+ "filament_cooling_final_speed": [
+ "60"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Wood @U1 0.4 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Wood @U1 0.4 nozzle.json
new file mode 100644
index 0000000000..4768ac2783
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Wood @U1 0.4 nozzle.json
@@ -0,0 +1,108 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Wood @U1 0.4 nozzle",
+ "inherits": "fdm_filament_pla",
+ "from": "system",
+ "setting_id": "XvizDDHbds3bVrzi",
+ "filament_id": "GFL9922",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.4 nozzle)"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "filament_end_gcode": [
+ "\n"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "filament_flow_ratio": [
+ "0.97"
+ ],
+ "filament_max_volumetric_speed": [
+ "18"
+ ],
+ "filament_multitool_ramming_flow": [
+ "40"
+ ],
+ "filament_multitool_ramming_volume": [
+ "10"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "filament_retraction_length": [
+ "0.6"
+ ],
+ "pressure_advance": [
+ "0.025"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "35"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "35"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Wood @U1 0.6 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Wood @U1 0.6 nozzle.json
new file mode 100644
index 0000000000..43d306ebae
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Wood @U1 0.6 nozzle.json
@@ -0,0 +1,114 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Wood @U1 0.6 nozzle",
+ "inherits": "fdm_filament_pla",
+ "from": "system",
+ "setting_id": "Kp77DCcitdmoyjqm",
+ "filament_id": "GFL9922",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "filament_end_gcode": [
+ "\n"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_max_volumetric_speed": [
+ "18"
+ ],
+ "filament_multitool_ramming_flow": [
+ "40"
+ ],
+ "filament_multitool_ramming_volume": [
+ "10"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "filament_retraction_length": [
+ "0.4"
+ ],
+ "pressure_advance": [
+ "0.014"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "35"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "35"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Wood @U1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Wood @U1 0.8 nozzle.json
new file mode 100644
index 0000000000..da788a35fb
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Wood @U1 0.8 nozzle.json
@@ -0,0 +1,114 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA Wood @U1 0.8 nozzle",
+ "inherits": "fdm_filament_pla",
+ "from": "system",
+ "setting_id": "nBYnNiqwLo6nAsqi",
+ "filament_id": "GFL9922",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "filament_end_gcode": [
+ "\n"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "filament_flow_ratio": [
+ "0.965"
+ ],
+ "filament_max_volumetric_speed": [
+ "20"
+ ],
+ "filament_multitool_ramming_flow": [
+ "40"
+ ],
+ "filament_multitool_ramming_volume": [
+ "10"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "filament_retraction_length": [
+ "0.4"
+ ],
+ "pressure_advance": [
+ "0.007"
+ ],
+ "slow_down_layer_time": [
+ "4"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "35"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "35"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 0.4 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 0.4 nozzle.json
new file mode 100644
index 0000000000..b986a7244a
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 0.4 nozzle.json
@@ -0,0 +1,132 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA-CF @U1 0.4 nozzle",
+ "inherits": "fdm_filament_pla",
+ "from": "system",
+ "setting_id": "2INwruC3ZVkBTdUT",
+ "filament_id": "GFL98111",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.4 nozzle)"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "filament_end_gcode": [
+ ""
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_max_volumetric_speed": [
+ "15"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "50"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
+ ],
+ "filament_retraction_length": [
+ "1"
+ ],
+ "filament_type": [
+ "PLA-CF"
+ ],
+ "filament_z_hop": [
+ "0.4"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "nozzle_temperature": [
+ "240"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "240"
+ ],
+ "nozzle_temperature_range_high": [
+ "250"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ],
+ "pressure_advance": [
+ "0.01"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "45"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "required_nozzle_HRC": [
+ "40"
+ ],
+ "slow_down_layer_time": [
+ "7"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "additional_cooling_fan_speed": [
+ "0"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 0.6 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 0.6 nozzle.json
new file mode 100644
index 0000000000..dcb6392634
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 0.6 nozzle.json
@@ -0,0 +1,138 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA-CF @U1 0.6 nozzle",
+ "inherits": "fdm_filament_pla",
+ "from": "system",
+ "setting_id": "CKfdL85SvbOLzMuP",
+ "filament_id": "GFL98111",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "filament_end_gcode": [
+ ""
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "25"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_max_volumetric_speed": [
+ "18"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_retract_length_toolchange": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "2"
+ ],
+ "filament_type": [
+ "PLA-CF"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "250"
+ ],
+ "nozzle_temperature_range_low": [
+ "210"
+ ],
+ "pressure_advance": [
+ "0.015"
+ ],
+ "filament_cost": [
+ "35"
+ ],
+ "filament_density": [
+ "1.22"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "filament_wipe_distance": [
+ "2"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "45"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "required_nozzle_HRC": [
+ "40"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "additional_cooling_fan_speed": [
+ "0"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 0.8 nozzle.json
new file mode 100644
index 0000000000..1e6e961497
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 0.8 nozzle.json
@@ -0,0 +1,135 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PLA-CF @U1 0.8 nozzle",
+ "inherits": "fdm_filament_pla",
+ "from": "system",
+ "setting_id": "fhhnfJm4dN9FXpWQ",
+ "filament_id": "GFL98111",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "filament_end_gcode": [
+ ""
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "25"
+ ],
+ "filament_start_gcode": [
+ ""
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "hot_plate_temp": [
+ "65"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_max_volumetric_speed": [
+ "18"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_retract_length_toolchange": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "3"
+ ],
+ "filament_type": [
+ "PLA-CF"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "nozzle_temperature_range_high": [
+ "250"
+ ],
+ "nozzle_temperature_range_low": [
+ "210"
+ ],
+ "pressure_advance": [
+ "0.015"
+ ],
+ "filament_cost": [
+ "35"
+ ],
+ "filament_density": [
+ "1.22"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "45"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "45"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "overhang_fan_threshold": [
+ "50%"
+ ],
+ "required_nozzle_HRC": [
+ "40"
+ ],
+ "slow_down_min_speed": [
+ "20"
+ ],
+ "temperature_vitrification": [
+ "45"
+ ],
+ "additional_cooling_fan_speed": [
+ "0"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 base.json
index 617a8c23ea..63f877d965 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 base.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 base.json
@@ -59,9 +59,6 @@
"temperature_vitrification": [
"150"
],
- "default_filament_colour": [
- ""
- ],
"filament_type": [
"PLA-CF"
],
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1.json
index ec04c8108d..9091258467 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1.json
@@ -7,5 +7,8 @@
"instantiation": "true",
"compatible_printers": [
"Snapmaker U1 (0.4 nozzle)"
+ ],
+ "filament_retract_length_toolchange": [
+ "5"
]
}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1 0.6 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1 0.6 nozzle.json
new file mode 100644
index 0000000000..b28e0627ad
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1 0.6 nozzle.json
@@ -0,0 +1,113 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PVA @U1 0.6 nozzle",
+ "inherits": "Snapmaker PVA @U1 base",
+ "from": "system",
+ "setting_id": "lIqgnfeZdAm8G0TH",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "filament_cost": [
+ "79.98"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_flow_ratio": [
+ "0.98"
+ ],
+ "filament_retract_length_toolchange": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_minimum_travel": [
+ "1"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_soluble": [
+ "1"
+ ],
+ "filament_wipe_distance": [
+ "2"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "nozzle_temperature": [
+ "230"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "230"
+ ],
+ "nozzle_temperature_range_low": [
+ "210"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "slow_down_layer_time": [
+ "7"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "filament_cooling_final_speed": [
+ "3.4"
+ ],
+ "filament_cooling_initial_speed": [
+ "2.2"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1 0.8 nozzle.json
new file mode 100644
index 0000000000..6572a60078
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1 0.8 nozzle.json
@@ -0,0 +1,107 @@
+{
+ "type": "filament",
+ "name": "Snapmaker PVA @U1 0.8 nozzle",
+ "inherits": "Snapmaker PVA @U1 base",
+ "from": "system",
+ "setting_id": "WxtuvwWxy73Gi0IK",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_cost": [
+ "79.98"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_flow_ratio": [
+ "0.96"
+ ],
+ "filament_retract_length_toolchange": [
+ "10"
+ ],
+ "filament_retraction_length": [
+ "nil"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_soluble": [
+ "1"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "nozzle_temperature": [
+ "225"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "225"
+ ],
+ "nozzle_temperature_range_low": [
+ "205"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "slow_down_layer_time": [
+ "7"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
+ ],
+ "filament_cooling_final_speed": [
+ "3.4"
+ ],
+ "filament_cooling_initial_speed": [
+ "2.2"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_flow": [
+ "20"
+ ],
+ "filament_multitool_ramming_volume": [
+ "5"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1.json
index f9a33d7bcb..5ed5d243ac 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1.json
@@ -7,5 +7,95 @@
"instantiation": "true",
"compatible_printers": [
"Snapmaker U1 (0.4 nozzle)"
+ ],
+ "enable_pressure_advance": [
+ "1"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "pressure_advance": [
+ "0.03"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "close_fan_the_first_x_layers": [
+ "1"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_cooling_final_speed": [
+ "3.4"
+ ],
+ "filament_cooling_initial_speed": [
+ "2.2"
+ ],
+ "filament_cooling_moves": [
+ "4"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_loading_speed": [
+ "28"
+ ],
+ "filament_loading_speed_start": [
+ "3"
+ ],
+ "filament_max_volumetric_speed": [
+ "5"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "20"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_volume": [
+ "0.1"
+ ],
+ "filament_retract_length_toolchange": [
+ "4"
+ ],
+ "filament_retraction_length": [
+ "0.4"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_unloading_speed": [
+ "90"
+ ],
+ "filament_unloading_speed_start": [
+ "100"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "65"
+ ],
+ "nozzle_temperature": [
+ "240"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "240"
+ ],
+ "slow_down_layer_time": [
+ "10"
+ ],
+ "textured_plate_temp": [
+ "65"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "65"
]
}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU 90A @U1 0.6 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU 90A @U1 0.6 nozzle.json
new file mode 100644
index 0000000000..6ae8a5b675
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU 90A @U1 0.6 nozzle.json
@@ -0,0 +1,150 @@
+{
+ "type": "filament",
+ "name": "Snapmaker TPU 90A @U1 0.6 nozzle",
+ "inherits": "fdm_filament_tpu",
+ "from": "system",
+ "setting_id": "uQCplebxmpBpzsnk",
+ "filament_id": "GFU99",
+ "instantiation": "true",
+ "filament_max_volumetric_speed": [
+ "3.2"
+ ],
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n\n"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_volume": [
+ "0.1"
+ ],
+ "pressure_advance": [
+ "0.02"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "filament_deretraction_speed": [
+ "20"
+ ],
+ "filament_flow_ratio": [
+ "1.093"
+ ],
+ "filament_multitool_ramming_flow": [
+ "5"
+ ],
+ "filament_retract_length_toolchange": [
+ "4"
+ ],
+ "filament_retraction_length": [
+ "0.6"
+ ],
+ "filament_retraction_speed": [
+ "20"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "slow_down_layer_time": [
+ "14"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "filament_wipe": [
+ "1"
+ ],
+ "filament_wipe_distance": [
+ "0"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "cool_plate_temp": [
+ "30"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "eng_plate_temp": [
+ "30"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "hot_plate_temp": [
+ "35"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "35"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "temperature_vitrification": [
+ "30"
+ ],
+ "textured_plate_temp": [
+ "35"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "35"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU 90A @U1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU 90A @U1 0.8 nozzle.json
new file mode 100644
index 0000000000..45f0f7a0e9
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU 90A @U1 0.8 nozzle.json
@@ -0,0 +1,144 @@
+{
+ "type": "filament",
+ "name": "Snapmaker TPU 90A @U1 0.8 nozzle",
+ "inherits": "fdm_filament_tpu",
+ "from": "system",
+ "setting_id": "w4Hpl2qNPmgNvaeM",
+ "filament_id": "GFU99",
+ "instantiation": "true",
+ "filament_max_volumetric_speed": [
+ "3.5"
+ ],
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n\n"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_volume": [
+ "0.1"
+ ],
+ "pressure_advance": [
+ "0.02"
+ ],
+ "additional_cooling_fan_speed": [
+ "70"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "filament_deretraction_speed": [
+ "20"
+ ],
+ "filament_flow_ratio": [
+ "1.095"
+ ],
+ "filament_multitool_ramming_flow": [
+ "5"
+ ],
+ "filament_retract_length_toolchange": [
+ "4"
+ ],
+ "filament_retraction_length": [
+ "1.2"
+ ],
+ "filament_retraction_speed": [
+ "20"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "nozzle_temperature": [
+ "220"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "220"
+ ],
+ "slow_down_layer_time": [
+ "14"
+ ],
+ "nozzle_temperature_range_high": [
+ "240"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "cool_plate_temp": [
+ "30"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "eng_plate_temp": [
+ "30"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "hot_plate_temp": [
+ "35"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "35"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "temperature_vitrification": [
+ "30"
+ ],
+ "textured_plate_temp": [
+ "35"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "35"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU 90A @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU 90A @U1.json
new file mode 100644
index 0000000000..e89397849b
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU 90A @U1.json
@@ -0,0 +1,141 @@
+{
+ "type": "filament",
+ "name": "Snapmaker TPU 90A @U1",
+ "inherits": "fdm_filament_tpu",
+ "from": "system",
+ "setting_id": "T4MmgICRrSzvmCZ5",
+ "filament_id": "GFU99",
+ "instantiation": "true",
+ "filament_max_volumetric_speed": [
+ "3.2"
+ ],
+ "compatible_printers": [
+ "Snapmaker U1 (0.4 nozzle)"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n\n"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_volume": [
+ "0.1"
+ ],
+ "pressure_advance": [
+ "0.4"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "100"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "100"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "filament_deretraction_speed": [
+ "15"
+ ],
+ "filament_flow_ratio": [
+ "1.045"
+ ],
+ "filament_multitool_ramming_flow": [
+ "5"
+ ],
+ "filament_retract_length_toolchange": [
+ "2"
+ ],
+ "filament_retraction_length": [
+ "1.2"
+ ],
+ "filament_retraction_speed": [
+ "15"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "nozzle_temperature": [
+ "230"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "230"
+ ],
+ "slow_down_layer_time": [
+ "14"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "cool_plate_temp": [
+ "30"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "eng_plate_temp": [
+ "30"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "30"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "hot_plate_temp": [
+ "35"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "35"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "temperature_vitrification": [
+ "30"
+ ],
+ "textured_plate_temp": [
+ "35"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "35"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A @U1 base.json
index a6d8c41b5d..3c51439206 100644
--- a/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A @U1 base.json
+++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A @U1 base.json
@@ -43,9 +43,6 @@
"filament_retraction_speed": [
"nil"
],
- "filament_settings_id": [
- ""
- ],
"filament_soluble": [
"0"
],
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A HF @U1 0.6 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A HF @U1 0.6 nozzle.json
new file mode 100644
index 0000000000..1085c84e6f
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A HF @U1 0.6 nozzle.json
@@ -0,0 +1,147 @@
+{
+ "type": "filament",
+ "name": "Snapmaker TPU 95A HF @U1 0.6 nozzle",
+ "inherits": "fdm_filament_tpu",
+ "from": "system",
+ "setting_id": "Q2svXpkEqg0dCdq3",
+ "filament_id": "GFU99",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n\n"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_volume": [
+ "0.1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_flow_ratio": [
+ "1.067"
+ ],
+ "filament_max_volumetric_speed": [
+ "12"
+ ],
+ "filament_multitool_ramming_flow": [
+ "10"
+ ],
+ "filament_retract_length_toolchange": [
+ "8"
+ ],
+ "filament_retraction_length": [
+ "0.8"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "nozzle_temperature": [
+ "215"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "215"
+ ],
+ "overhang_fan_threshold": [
+ "95%"
+ ],
+ "pressure_advance": [
+ "0.14"
+ ],
+ "slow_down_layer_time": [
+ "8"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "30"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "eng_plate_temp": [
+ "30"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "30"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "hot_plate_temp": [
+ "35"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "35"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "temperature_vitrification": [
+ "30"
+ ],
+ "textured_plate_temp": [
+ "35"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "35"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A HF @U1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A HF @U1 0.8 nozzle.json
new file mode 100644
index 0000000000..bef4c7712f
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A HF @U1 0.8 nozzle.json
@@ -0,0 +1,147 @@
+{
+ "type": "filament",
+ "name": "Snapmaker TPU 95A HF @U1 0.8 nozzle",
+ "inherits": "fdm_filament_tpu",
+ "from": "system",
+ "setting_id": "RjsE08h3l37cAkAs",
+ "filament_id": "GFU99",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n\n"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_volume": [
+ "0.1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "100"
+ ],
+ "fan_max_speed": [
+ "100"
+ ],
+ "fan_min_speed": [
+ "100"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_flow_ratio": [
+ "1.045"
+ ],
+ "filament_max_volumetric_speed": [
+ "16"
+ ],
+ "filament_multitool_ramming_flow": [
+ "15"
+ ],
+ "filament_retract_length_toolchange": [
+ "8"
+ ],
+ "filament_retraction_length": [
+ "1"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "nozzle_temperature": [
+ "215"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "215"
+ ],
+ "overhang_fan_threshold": [
+ "95%"
+ ],
+ "pressure_advance": [
+ "0.12"
+ ],
+ "slow_down_layer_time": [
+ "12"
+ ],
+ "additional_cooling_fan_speed": [
+ "100"
+ ],
+ "filament_z_hop_types": [
+ "Slope Lift"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "30"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "eng_plate_temp": [
+ "30"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "30"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "hot_plate_temp": [
+ "35"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "35"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "temperature_vitrification": [
+ "30"
+ ],
+ "textured_plate_temp": [
+ "35"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "35"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A HF @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A HF @U1.json
new file mode 100644
index 0000000000..5e0696d906
--- /dev/null
+++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A HF @U1.json
@@ -0,0 +1,144 @@
+{
+ "type": "filament",
+ "name": "Snapmaker TPU 95A HF @U1",
+ "inherits": "fdm_filament_tpu",
+ "from": "system",
+ "setting_id": "KwcwmV2UmZUgCBoz",
+ "filament_id": "GFU99",
+ "instantiation": "true",
+ "compatible_printers": [
+ "Snapmaker U1 (0.4 nozzle)"
+ ],
+ "filament_start_gcode": [
+ "; filament start gcode\n"
+ ],
+ "filament_end_gcode": [
+ "; filament end gcode \n\n"
+ ],
+ "filament_multitool_ramming": [
+ "1"
+ ],
+ "filament_multitool_ramming_volume": [
+ "0.1"
+ ],
+ "enable_pressure_advance": [
+ "0"
+ ],
+ "fan_cooling_layer_time": [
+ "40"
+ ],
+ "fan_max_speed": [
+ "50"
+ ],
+ "fan_min_speed": [
+ "10"
+ ],
+ "filament_deretraction_speed": [
+ "nil"
+ ],
+ "filament_flow_ratio": [
+ "1.067"
+ ],
+ "filament_max_volumetric_speed": [
+ "9"
+ ],
+ "filament_multitool_ramming_flow": [
+ "10"
+ ],
+ "filament_retract_length_toolchange": [
+ "6"
+ ],
+ "filament_retraction_length": [
+ "1"
+ ],
+ "filament_retraction_speed": [
+ "nil"
+ ],
+ "filament_vendor": [
+ "Snapmaker"
+ ],
+ "nozzle_temperature": [
+ "230"
+ ],
+ "nozzle_temperature_initial_layer": [
+ "230"
+ ],
+ "overhang_fan_threshold": [
+ "25%"
+ ],
+ "pressure_advance": [
+ "0.23"
+ ],
+ "slow_down_layer_time": [
+ "10"
+ ],
+ "activate_air_filtration": [
+ "0"
+ ],
+ "chamber_temperatures": [
+ "0"
+ ],
+ "complete_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "cool_plate_temp": [
+ "30"
+ ],
+ "cool_plate_temp_initial_layer": [
+ "30"
+ ],
+ "during_print_exhaust_fan_speed": [
+ "70"
+ ],
+ "eng_plate_temp": [
+ "30"
+ ],
+ "eng_plate_temp_initial_layer": [
+ "30"
+ ],
+ "filament_cost": [
+ "20"
+ ],
+ "filament_long_retractions_when_cut": [
+ "nil"
+ ],
+ "filament_minimal_purge_on_wipe_tower": [
+ "15"
+ ],
+ "filament_retract_when_changing_layer": [
+ "nil"
+ ],
+ "filament_retraction_distances_when_cut": [
+ "nil"
+ ],
+ "filament_z_hop": [
+ "nil"
+ ],
+ "filament_z_hop_types": [
+ "nil"
+ ],
+ "hot_plate_temp": [
+ "35"
+ ],
+ "hot_plate_temp_initial_layer": [
+ "35"
+ ],
+ "overhang_fan_speed": [
+ "100"
+ ],
+ "slow_down_for_layer_cooling": [
+ "1"
+ ],
+ "temperature_vitrification": [
+ "30"
+ ],
+ "textured_plate_temp": [
+ "35"
+ ],
+ "textured_plate_temp_initial_layer": [
+ "35"
+ ],
+ "nozzle_temperature_range_low": [
+ "200"
+ ]
+}
diff --git a/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.2 nozzle).json
index 8a5cbc56d8..183e125c73 100644
--- a/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.2 nozzle).json
+++ b/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.2 nozzle).json
@@ -1,13 +1,54 @@
{
"type": "machine",
- "setting_id": "CwJeuh1rxZcjvkXh",
"name": "Snapmaker U1 (0.2 nozzle)",
- "from": "system",
- "instantiation": "true",
"inherits": "fdm_U1",
+ "from": "system",
+ "setting_id": "CwJeuh1rxZcjvkXh",
+ "instantiation": "true",
"printer_model": "Snapmaker U1",
"printer_variant": "0.2",
- "default_print_profile": "0.10 Standard @Snapmaker U1 (0.2 nozzle)",
+ "auxiliary_fan": "1",
+ "change_filament_gcode": ";===== date: 20260607 =====================\n; Change Tool[previous_extruder] -> Tool[next_extruder] (layer [layer_num])\n; max_layer_z [max_layer_z]\n; max_print_height [max_print_height]\n; print_sequence [print_sequence]\n\n{\nlocal move_z = 1.5;\nlocal max_speed_toolchange = 350.0;\nlocal wait_for_extruder_temp = true;\nposition[2] = position[2] + 2.0;\nlocal speed_toolchange = max_speed_toolchange;\n\nif travel_speed < max_speed_toolchange then\n speed_toolchange = travel_speed;\nendif\n\nif print_sequence == \"by object\" then\n\n if max_layer_z < ((max_print_height - z_offset) - 2) then\n move_z = z_offset + min(((max_layer_z - z_offset) + 2), max_print_height);\n endif\n\nendif\n\n\"G91\nG1 Z\" + move_z + \" F600\nG90\n\";\n\"G1 F\" + (speed_toolchange * 60) + \"\n\";\nif wait_for_extruder_temp and not((layer_num < 0) and (next_extruder == initial_tool)) then\n \"\n\";\n \"; \" + layer_num + \"\n\";\n if layer_num == 0 then\n \"M109 S\" + first_layer_temperature[next_extruder] + \" T\" + next_extruder + \"\n\";\n else\n \"M109 S\" + temperature[next_extruder] + \" T\" + next_extruder + \"\n\";\n endif\nendif\n\"M400\" + \"\n\";\n\"T\" + next_extruder + \"\n\";\nif filament_type[next_extruder] == \"PVA\" then\n\"SET_VELOCITY_LIMIT ACCEL=3000\n\";\nelse\nendif\nif previous_extruder != next_extruder and initial_extruder != next_extruder then\n\"SM_PRINT_PREEXTRUDE_FILAMENT INDEX=\" + next_extruder + \"\n\";\nendif\n\"G90\n\";\n}\n",
+ "deretraction_speed": [
+ "30",
+ "30",
+ "30",
+ "30"
+ ],
+ "extruder_colour": [
+ "#FCE94F",
+ "#FCE94F",
+ "#FCE94F",
+ "#FCE94F"
+ ],
+ "extruder_offset": [
+ "0x0",
+ "0x0",
+ "0x0",
+ "0x0"
+ ],
+ "host_type": "octoprint",
+ "long_retractions_when_cut": [
+ "0",
+ "0",
+ "0",
+ "0"
+ ],
+ "machine_end_gcode": ";===== date: 20260605 =====================\n; layer [layer_num]\n; max_layer_z [max_layer_z]\n; print_sequence [print_sequence]\n\n{if print_sequence == \"by object\"}\n{\nlocal move_z = max_print_height;\n\nif max_layer_z < ((max_print_height - z_offset) - 2) then\n move_z = z_offset + min(((max_layer_z - z_offset) + 2), max_print_height);\nendif\n}\n\nG91\nG1 X2 Y2 Z1 F24000\nG90\nG1 Z{move_z} F600\n{endif}\n\nPRINT_END\nTIMELAPSE_STOP\n",
+ "machine_max_jerk_z": [
+ "3",
+ "0.4"
+ ],
+ "machine_max_speed_e": [
+ "30",
+ "25"
+ ],
+ "machine_max_speed_z": [
+ "20",
+ "12"
+ ],
+ "machine_start_gcode": "SET_PRINT_AUTO_BED_LEVELING ENABLE=1\nSET_TIME_LAPSE_CAMERA ENABLE=1\n;===== date: 20260128 =====================\n\nPRINT_START\nDEFECT_DETECTION_START\nSET_PRINT_STATS_INFO TOTAL_LAYER={total_layer_count} CURRENT_LAYER=0\nTIMELAPSE_START\nM140 S{bed_temperature_initial_layer_single}\nM104 T{initial_extruder} S140\nM204 S10000\nG28 X Y\nDEFECT_DETECT_NOODLE_FIRST\n;===== 床面异物检测 ========\nT{initial_extruder}\nG90\nDEFECT_DETECTION_DETECT_BED\n;===== 取放头检测 =================\nSM_PRINT_CHECK_SWITCH_EXTRUDER\n\n;===== 自动进料 & 挤出流量 & 预挤出 ======================\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=1 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=0\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=0\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=2 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=1\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=1\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=3 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=2\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=2\nSM_PRINT_AUTO_FEED EXTRUDER=3\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=3\nM104 S0 T0 A0\nM104 S0 T1 A0\nM104 S0 T2 A0\nM104 S0 T3 A0\nM104 T{initial_extruder} S{nozzle_temperature[initial_extruder] - 90}\n\n;===== 粗回零 =================\nT{initial_extruder}\nM106 S255\nM106 P2 S0\nMOVE_TO_DISCARD_FILAMENT_POSITION\nM109 T{initial_extruder} S{nozzle_temperature[initial_extruder] - 90}\nROUGHLY_CLEAN_NOZZLE_WITH_DISCARD\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nG28 Z I140 J140\n\n;===== 检测钢板 =================\nDETECT_BED_PLATE\n\n;===== 深度清洁喷嘴 =================\nG90\nG0 Z5 F10000\nMOVE_TO_DISCARD_FILAMENT_POSITION\nM109 S{nozzle_temperature[initial_extruder] - 50}\nROUGHLY_CLEAN_NOZZLE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nFINELY_CLEAN_NOZZLE_STAGE_1\nM104 S{nozzle_temperature[initial_extruder] - 90}\nG0 Z5 F10000\nMOVE_TO_DISCARD_FILAMENT_POSITION\nROUGHLY_CLEAN_NOZZLE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nFINELY_CLEAN_NOZZLE_STAGE_2\n\n;===== 精回零 =================\nM106 S255\nM109 S{nozzle_temperature[initial_extruder] - 90}\nM190 S{bed_temperature_initial_layer_single}\nM107 P2\nG90\nG0 Z5 F10000\nWAIT_CHAMBER_TEMP TIMEOUT=180\n{if curr_bed_type==\"High Temp Plate\"} \nG28 Z Z_OFFSET -0.07 \n{else} \nG28 Z \n{endif} \n\n\n;===== 热床调平 =================\n{if curr_bed_type==\"High Temp Plate\"} \n; Always pass `ADAPTIVE_MARGIN=0` because Orca has already handled `adaptive_bed_mesh_margin` internally\n; Make sure to set ADAPTIVE to 0 otherwise Klipper will use it's own adaptive bed mesh logic\nBED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=0 ADAPTIVE_MARGIN=0 Z_OFFSET=-0.07\n{else} \n; Always pass `ADAPTIVE_MARGIN=0` because Orca has already handled `adaptive_bed_mesh_margin` internally\n; Make sure to set ADAPTIVE to 0 otherwise Klipper will use it's own adaptive bed mesh logic\nBED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=0 ADAPTIVE_MARGIN=0\n{endif} \n\n\n;===== 画起始线 =================\nG90\nG1 Z1.5\nG0 X85 Y1 Z2 F18000\nM109 S{nozzle_temperature_initial_layer[initial_extruder]}\nG1 Z0.2\nM83\nG1 X185 E15 F360\nG1 Z1.5\n\nG90\nM106 S0",
+ "machine_tool_change_time": "5",
"max_layer_height": [
"0.14",
"0.14",
@@ -26,5 +67,125 @@
"0.2",
"0.2"
],
- "nozzle_type": "hardened_steel"
+ "nozzle_type": "hardened_steel",
+ "printable_area": [
+ "0.5x1",
+ "270.5x1",
+ "270.5x271",
+ "0.5x271"
+ ],
+ "printable_height": "270.05",
+ "retract_before_wipe": [
+ "0%",
+ "0%",
+ "0%",
+ "0%"
+ ],
+ "retract_length_toolchange": [
+ "10",
+ "10",
+ "10",
+ "10"
+ ],
+ "retract_lift_above": [
+ "0",
+ "0",
+ "0",
+ "0"
+ ],
+ "retract_lift_below": [
+ "269",
+ "269",
+ "269",
+ "269"
+ ],
+ "retract_lift_enforce": [
+ "All Surfaces",
+ "All Surfaces",
+ "All Surfaces",
+ "All Surfaces"
+ ],
+ "retract_restart_extra": [
+ "0",
+ "0",
+ "0",
+ "0"
+ ],
+ "retract_restart_extra_toolchange": [
+ "0",
+ "0",
+ "0",
+ "0"
+ ],
+ "retract_when_changing_layer": [
+ "1",
+ "1",
+ "1",
+ "1"
+ ],
+ "retraction_distances_when_cut": [
+ "18",
+ "18",
+ "18",
+ "18"
+ ],
+ "retraction_length": [
+ "0.4",
+ "0.4",
+ "0.4",
+ "0.4"
+ ],
+ "retraction_minimum_travel": [
+ "1",
+ "1",
+ "1",
+ "1"
+ ],
+ "retraction_speed": [
+ "30",
+ "30",
+ "30",
+ "30"
+ ],
+ "thumbnails": "48x48/PNG, 300x300/PNG",
+ "travel_slope": [
+ "3",
+ "3",
+ "3",
+ "3"
+ ],
+ "wipe": [
+ "1",
+ "1",
+ "1",
+ "1"
+ ],
+ "wipe_distance": [
+ "2",
+ "2",
+ "2",
+ "2"
+ ],
+ "z_hop": [
+ "0.4",
+ "0.4",
+ "0.4",
+ "0.4"
+ ],
+ "z_hop_types": [
+ "Auto Lift",
+ "Auto Lift",
+ "Auto Lift",
+ "Auto Lift"
+ ],
+ "enable_filament_ramming": "0",
+ "extruder_clearance_height_to_rod": "27.5",
+ "extruder_clearance_radius": "72.5",
+ "machine_load_filament_time": "0",
+ "machine_unload_filament_time": "0",
+ "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\nTIMELAPSE_TAKE_FRAME\nDEFECT_DETECTION_DETECT",
+ "machine_pause_gcode": "M600",
+ "nozzle_volume": "143",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nSET_PRINT_STATS_INFO TOTAL_LAYER={total_layer_count} CURRENT_LAYER={layer_num+1}",
+ "default_print_profile": "0.10 Standard @Snapmaker U1 (0.2 nozzle)"
}
diff --git a/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4 nozzle).json
index 1105a7ec1d..6d2ec2cfe6 100644
--- a/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4 nozzle).json
@@ -1,14 +1,20 @@
{
"type": "machine",
- "setting_id": "UeTP4RqAd7xAMHVE",
"name": "Snapmaker U1 (0.4 nozzle)",
- "from": "system",
- "instantiation": "true",
"inherits": "fdm_U1",
+ "from": "system",
+ "setting_id": "UeTP4RqAd7xAMHVE",
+ "instantiation": "true",
"printer_model": "Snapmaker U1",
"printer_variant": "0.4",
"auxiliary_fan": "1",
"change_filament_gcode": ";===== date: 20260607 =====================\n; Change Tool[previous_extruder] -> Tool[next_extruder] (layer [layer_num])\n; max_layer_z [max_layer_z]\n; max_print_height [max_print_height]\n; print_sequence [print_sequence]\n\n{\nlocal move_z = 1.5;\nlocal max_speed_toolchange = 350.0;\nlocal wait_for_extruder_temp = true;\nposition[2] = position[2] + 2.0;\nlocal speed_toolchange = max_speed_toolchange;\n\nif travel_speed < max_speed_toolchange then\n speed_toolchange = travel_speed;\nendif\n\nif print_sequence == \"by object\" then\n\n if max_layer_z < ((max_print_height - z_offset) - 2) then\n move_z = z_offset + min(((max_layer_z - z_offset) + 2), max_print_height);\n endif\n\nendif\n\n\"G91\nG1 Z\" + move_z + \" F600\nG90\n\";\n\"G1 F\" + (speed_toolchange * 60) + \"\n\";\nif wait_for_extruder_temp and not((layer_num < 0) and (next_extruder == initial_tool)) then\n \"\n\";\n \"; \" + layer_num + \"\n\";\n if layer_num == 0 then\n \"M109 S\" + first_layer_temperature[next_extruder] + \" T\" + next_extruder + \"\n\";\n else\n \"M109 S\" + temperature[next_extruder] + \" T\" + next_extruder + \"\n\";\n endif\nendif\n\"M400\" + \"\n\";\n\"T\" + next_extruder + \"\n\";\nif filament_type[next_extruder] == \"PVA\" then\n\"SET_VELOCITY_LIMIT ACCEL=3000\n\";\nelse\nendif\nif previous_extruder != next_extruder and initial_extruder != next_extruder then\n\"SM_PRINT_PREEXTRUDE_FILAMENT INDEX=\" + next_extruder + \"\n\";\nendif\n\"G90\n\";\n}\n",
+ "deretraction_speed": [
+ "30",
+ "30",
+ "30",
+ "30"
+ ],
"extruder_colour": [
"#FCE94F",
"#FCE94F",
@@ -29,38 +35,6 @@
"0"
],
"machine_end_gcode": ";===== date: 20260605 =====================\n; layer [layer_num]\n; max_layer_z [max_layer_z]\n; print_sequence [print_sequence]\n\n{if print_sequence == \"by object\"}\n{\nlocal move_z = max_print_height;\n\nif max_layer_z < ((max_print_height - z_offset) - 2) then\n move_z = z_offset + min(((max_layer_z - z_offset) + 2), max_print_height);\nendif\n}\n\nG91\nG1 X2 Y2 Z1 F24000\nG90\nG1 Z{move_z} F600\n{endif}\n\nPRINT_END\nTIMELAPSE_STOP\n",
- "machine_max_acceleration_extruding": [
- "25000",
- "25000"
- ],
- "machine_max_acceleration_retracting": [
- "5000",
- "5000"
- ],
- "machine_max_acceleration_travel": [
- "25000",
- "25000"
- ],
- "machine_max_acceleration_x": [
- "25000",
- "25000"
- ],
- "machine_max_acceleration_y": [
- "25000",
- "25000"
- ],
- "machine_max_acceleration_z": [
- "500",
- "200"
- ],
- "machine_max_jerk_x": [
- "9",
- "9"
- ],
- "machine_max_jerk_y": [
- "9",
- "9"
- ],
"machine_max_jerk_z": [
"3",
"0.4"
@@ -69,22 +43,11 @@
"30",
"25"
],
- "machine_max_speed_x": [
- "1000",
- "200"
- ],
- "machine_max_speed_y": [
- "1000",
- "200"
- ],
"machine_max_speed_z": [
"20",
"12"
],
- "resonance_avoidance": "1",
- "min_resonance_avoidance_speed": "40",
- "max_resonance_avoidance_speed": "90",
- "machine_start_gcode": "SET_PRINT_AUTO_BED_LEVELING ENABLE=1\nSET_TIME_LAPSE_CAMERA ENABLE=1\n;===== date: 20251222 =====================\n\nPRINT_START\nDEFECT_DETECTION_START\nSET_PRINT_STATS_INFO TOTAL_LAYER={total_layer_count}\nSET_PRINT_STATS_INFO CURRENT_LAYER=0\nTIMELAPSE_START\nM140 S{bed_temperature_initial_layer_single}\nM104 T{initial_extruder} S140\nM204 S10000\n\nG28 X Y\n;===== 床面异物检测 ========\nT{initial_extruder}\nG90\nDEFECT_DETECTION_DETECT_BED\n;===== 取放头检测 =================\nSM_PRINT_CHECK_SWITCH_EXTRUDER\n\n;===== 自动进料 & 挤出流量 & 预挤出 ======================\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=1 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=0\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=0\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=2 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=1\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=1\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=3 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=2\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=2\nSM_PRINT_AUTO_FEED EXTRUDER=3\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=3\nM104 S0 T0 A0\nM104 S0 T1 A0\nM104 S0 T2 A0\nM104 S0 T3 A0\nM104 T{initial_extruder} S{nozzle_temperature[initial_extruder] - 90}\n\n;===== 粗回零 =================\nT{initial_extruder}\nM106 S255\nM106 P2 S0\nMOVE_TO_DISCARD_FILAMENT_POSITION\nM109 T{initial_extruder} S{nozzle_temperature[initial_extruder] - 90}\nROUGHLY_CLEAN_NOZZLE_WITH_DISCARD\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nG28 Z I140 J140\n\n;===== 检测钢板 =================\nDETECT_BED_PLATE\n\n;===== 深度清洁喷嘴 =================\nG90\nG0 Z5 F10000\nMOVE_TO_DISCARD_FILAMENT_POSITION\nM109 S{nozzle_temperature[initial_extruder] - 50}\nROUGHLY_CLEAN_NOZZLE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nFINELY_CLEAN_NOZZLE_STAGE_1\nM104 S{nozzle_temperature[initial_extruder] - 90}\nG0 Z5 F10000\nMOVE_TO_DISCARD_FILAMENT_POSITION\nROUGHLY_CLEAN_NOZZLE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nFINELY_CLEAN_NOZZLE_STAGE_2\n\n;===== 精回零 =================\nM106 S255\nM109 S{nozzle_temperature[initial_extruder] - 90}\nM190 S{bed_temperature_initial_layer_single}\nM107 P2\nG90\nG0 Z5 F10000\nG28 Z\n\n;===== 热床调平 =================\n; Always pass `ADAPTIVE_MARGIN=0` because Orca has already handled `adaptive_bed_mesh_margin` internally\n; Make sure to set ADAPTIVE to 0 otherwise Klipper will use it's own adaptive bed mesh logic\nBED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=0 ADAPTIVE_MARGIN=0\n; Original upstream: BED_MESH_CALIBRATE PROBE_COUNT=11,11\n\n;===== 画起始线 =================\nG90\nG1 Z1.5\nG0 X10 Y3 Z2 F18000\nM109 S{nozzle_temperature_initial_layer[initial_extruder]}\nG1 Z0.2\nM83\nG1 X110 E15 F360\nG1 Z1.5\n\nG90\nM106 S0",
+ "machine_start_gcode": "SET_PRINT_AUTO_BED_LEVELING ENABLE=1\nSET_TIME_LAPSE_CAMERA ENABLE=1\n;===== date: 20260128 =====================\n\nPRINT_START\nDEFECT_DETECTION_START\nSET_PRINT_STATS_INFO TOTAL_LAYER={total_layer_count} CURRENT_LAYER=0\nTIMELAPSE_START\nM140 S{bed_temperature_initial_layer_single}\nM104 T{initial_extruder} S140\nM204 S10000\nG28 X Y\nDEFECT_DETECT_NOODLE_FIRST\n;===== 床面异物检测 ========\nT{initial_extruder}\nG90\nDEFECT_DETECTION_DETECT_BED\n;===== 取放头检测 =================\nSM_PRINT_CHECK_SWITCH_EXTRUDER\n\n;===== 自动进料 & 挤出流量 & 预挤出 ======================\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=1 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=0\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=0\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=2 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=1\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=1\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=3 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=2\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=2\nSM_PRINT_AUTO_FEED EXTRUDER=3\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=3\nM104 S0 T0 A0\nM104 S0 T1 A0\nM104 S0 T2 A0\nM104 S0 T3 A0\nM104 T{initial_extruder} S{nozzle_temperature[initial_extruder] - 90}\n\n;===== 粗回零 =================\nT{initial_extruder}\nM106 S255\nM106 P2 S0\nMOVE_TO_DISCARD_FILAMENT_POSITION\nM109 T{initial_extruder} S{nozzle_temperature[initial_extruder] - 90}\nROUGHLY_CLEAN_NOZZLE_WITH_DISCARD\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nG28 Z I140 J140\n\n;===== 检测钢板 =================\nDETECT_BED_PLATE\n\n;===== 深度清洁喷嘴 =================\nG90\nG0 Z5 F10000\nMOVE_TO_DISCARD_FILAMENT_POSITION\nM109 S{nozzle_temperature[initial_extruder] - 50}\nROUGHLY_CLEAN_NOZZLE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nFINELY_CLEAN_NOZZLE_STAGE_1\nM104 S{nozzle_temperature[initial_extruder] - 90}\nG0 Z5 F10000\nMOVE_TO_DISCARD_FILAMENT_POSITION\nROUGHLY_CLEAN_NOZZLE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nFINELY_CLEAN_NOZZLE_STAGE_2\n\n;===== 精回零 =================\nM106 S255\nM109 S{nozzle_temperature[initial_extruder] - 90}\nM190 S{bed_temperature_initial_layer_single}\nM107 P2\nG90\nG0 Z5 F10000\nWAIT_CHAMBER_TEMP TIMEOUT=180\n{if curr_bed_type==\"High Temp Plate\"} \nG28 Z Z_OFFSET -0.07 \n{else} \nG28 Z \n{endif} \n\n\n;===== 热床调平 =================\n{if curr_bed_type==\"High Temp Plate\"} \n; Always pass `ADAPTIVE_MARGIN=0` because Orca has already handled `adaptive_bed_mesh_margin` internally\n; Make sure to set ADAPTIVE to 0 otherwise Klipper will use it's own adaptive bed mesh logic\nBED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=0 ADAPTIVE_MARGIN=0 Z_OFFSET=-0.07\n{else} \n; Always pass `ADAPTIVE_MARGIN=0` because Orca has already handled `adaptive_bed_mesh_margin` internally\n; Make sure to set ADAPTIVE to 0 otherwise Klipper will use it's own adaptive bed mesh logic\nBED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=0 ADAPTIVE_MARGIN=0\n{endif} \n\n\n;===== 画起始线 =================\nG90\nG1 Z1.5\nG0 X85 Y1 Z2 F18000\nM109 S{nozzle_temperature_initial_layer[initial_extruder]}\nG1 Z0.2\nM83\nG1 X185 E15 F360\nG1 Z1.5\n\nG90\nM106 S0",
"machine_tool_change_time": "5",
"max_layer_height": [
"0.32",
@@ -104,7 +67,7 @@
"0.4",
"0.4"
],
- "nozzle_type": "stainless_steel",
+ "nozzle_type": "hardened_steel",
"printable_area": [
"0.5x1",
"270.5x1",
@@ -112,7 +75,6 @@
"0.5x271"
],
"printable_height": "270.05",
- "printer_settings_id": "MyToolChanger 0.4 nozzle - Copy",
"retract_before_wipe": [
"0%",
"0%",
@@ -168,10 +130,10 @@
"18"
],
"retraction_length": [
- "0.8",
- "0.8",
- "0.8",
- "0.8"
+ "1.5",
+ "1.5",
+ "1.5",
+ "1.5"
],
"retraction_minimum_travel": [
"1",
@@ -180,16 +142,10 @@
"1"
],
"retraction_speed": [
- "40",
- "40",
- "40",
- "40"
- ],
- "deretraction_speed": [
- "35",
- "35",
- "35",
- "35"
+ "30",
+ "30",
+ "30",
+ "30"
],
"thumbnails": "48x48/PNG, 300x300/PNG",
"travel_slope": [
@@ -228,17 +184,11 @@
"machine_load_filament_time": "0",
"machine_unload_filament_time": "0",
"before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\nTIMELAPSE_TAKE_FRAME\nDEFECT_DETECTION_DETECT",
- "z_hop_when_prime": [
- "0",
- "0",
- "0",
- "0"
- ],
- "ramming_pressure_advance_value": "0.02",
- "tool_change_temprature_wait": "0",
- "printer_notes": "",
+ "default_print_profile": "0.20 Standard @Snapmaker U1 (0.4 nozzle)",
"machine_pause_gcode": "M600",
- "default_bed_type": "Textured PEI Plate",
- "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nSET_PRINT_STATS_INFO TOTAL_LAYER={total_layer_count}\nSET_PRINT_STATS_INFO CURRENT_LAYER={layer_num+1}",
- "nozzle_volume": "143"
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nSET_PRINT_STATS_INFO TOTAL_LAYER={total_layer_count} CURRENT_LAYER={layer_num+1}",
+ "nozzle_volume": "143",
+ "resonance_avoidance": "1",
+ "min_resonance_avoidance_speed": "40",
+ "max_resonance_avoidance_speed": "90"
}
diff --git a/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4+0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4+0.6 nozzle).json
index f637b2a592..c9866329bd 100644
--- a/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4+0.6 nozzle).json
+++ b/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4+0.6 nozzle).json
@@ -1,10 +1,10 @@
{
"type": "machine",
- "setting_id": "O6AMxX1Ptbtv4zCK",
"name": "Snapmaker U1 (0.4+0.6 nozzle)",
- "from": "system",
- "instantiation": "true",
"inherits": "fdm_U1",
+ "from": "system",
+ "setting_id": "O6AMxX1Ptbtv4zCK",
+ "instantiation": "true",
"printer_model": "Snapmaker U1",
"printer_variant": "0.4+0.6",
"default_print_profile": "0.20 Standard @Snapmaker U1 (0.4+0.6 nozzle)",
diff --git a/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.6 nozzle).json
index 60e699d108..a6cb0d0bd3 100644
--- a/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.6 nozzle).json
+++ b/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.6 nozzle).json
@@ -1,18 +1,59 @@
{
"type": "machine",
- "setting_id": "1OseO7RSPgE4CRKO",
"name": "Snapmaker U1 (0.6 nozzle)",
- "from": "system",
- "instantiation": "true",
"inherits": "fdm_U1",
+ "from": "system",
+ "setting_id": "1OseO7RSPgE4CRKO",
+ "instantiation": "true",
"printer_model": "Snapmaker U1",
"printer_variant": "0.6",
- "default_print_profile": "0.20 Standard @Snapmaker U1 (0.6 nozzle)",
+ "auxiliary_fan": "1",
+ "change_filament_gcode": ";===== date: 20260607 =====================\n; Change Tool[previous_extruder] -> Tool[next_extruder] (layer [layer_num])\n; max_layer_z [max_layer_z]\n; max_print_height [max_print_height]\n; print_sequence [print_sequence]\n\n{\nlocal move_z = 1.5;\nlocal max_speed_toolchange = 350.0;\nlocal wait_for_extruder_temp = true;\nposition[2] = position[2] + 2.0;\nlocal speed_toolchange = max_speed_toolchange;\n\nif travel_speed < max_speed_toolchange then\n speed_toolchange = travel_speed;\nendif\n\nif print_sequence == \"by object\" then\n\n if max_layer_z < ((max_print_height - z_offset) - 2) then\n move_z = z_offset + min(((max_layer_z - z_offset) + 2), max_print_height);\n endif\n\nendif\n\n\"G91\nG1 Z\" + move_z + \" F600\nG90\n\";\n\"G1 F\" + (speed_toolchange * 60) + \"\n\";\nif wait_for_extruder_temp and not((layer_num < 0) and (next_extruder == initial_tool)) then\n \"\n\";\n \"; \" + layer_num + \"\n\";\n if layer_num == 0 then\n \"M109 S\" + first_layer_temperature[next_extruder] + \" T\" + next_extruder + \"\n\";\n else\n \"M109 S\" + temperature[next_extruder] + \" T\" + next_extruder + \"\n\";\n endif\nendif\n\"M400\" + \"\n\";\n\"T\" + next_extruder + \"\n\";\nif filament_type[next_extruder] == \"PVA\" then\n\"SET_VELOCITY_LIMIT ACCEL=3000\n\";\nelse\nendif\nif previous_extruder != next_extruder and initial_extruder != next_extruder then\n\"SM_PRINT_PREEXTRUDE_FILAMENT INDEX=\" + next_extruder + \"\n\";\nendif\n\"G90\n\";\n}\n",
+ "deretraction_speed": [
+ "30",
+ "30",
+ "30",
+ "30"
+ ],
+ "extruder_colour": [
+ "#FCE94F",
+ "#FCE94F",
+ "#FCE94F",
+ "#FCE94F"
+ ],
+ "extruder_offset": [
+ "0x0",
+ "0x0",
+ "0x0",
+ "0x0"
+ ],
+ "host_type": "octoprint",
+ "long_retractions_when_cut": [
+ "0",
+ "0",
+ "0",
+ "0"
+ ],
+ "machine_end_gcode": ";===== date: 20260605 =====================\n; layer [layer_num]\n; max_layer_z [max_layer_z]\n; print_sequence [print_sequence]\n\n{if print_sequence == \"by object\"}\n{\nlocal move_z = max_print_height;\n\nif max_layer_z < ((max_print_height - z_offset) - 2) then\n move_z = z_offset + min(((max_layer_z - z_offset) + 2), max_print_height);\nendif\n}\n\nG91\nG1 X2 Y2 Z1 F24000\nG90\nG1 Z{move_z} F600\n{endif}\n\nPRINT_END\nTIMELAPSE_STOP\n",
+ "machine_max_jerk_z": [
+ "3",
+ "0.4"
+ ],
+ "machine_max_speed_e": [
+ "30",
+ "25"
+ ],
+ "machine_max_speed_z": [
+ "20",
+ "12"
+ ],
+ "machine_start_gcode": "SET_PRINT_AUTO_BED_LEVELING ENABLE=1\nSET_TIME_LAPSE_CAMERA ENABLE=1\n;===== date: 20260128 =====================\n\nPRINT_START\nDEFECT_DETECTION_START\nSET_PRINT_STATS_INFO TOTAL_LAYER={total_layer_count} CURRENT_LAYER=0\nTIMELAPSE_START\nM140 S{bed_temperature_initial_layer_single}\nM104 T{initial_extruder} S140\nM204 S10000\nG28 X Y\nDEFECT_DETECT_NOODLE_FIRST\n;===== 床面异物检测 ========\nT{initial_extruder}\nG90\nDEFECT_DETECTION_DETECT_BED\n;===== 取放头检测 =================\nSM_PRINT_CHECK_SWITCH_EXTRUDER\n\n;===== 自动进料 & 挤出流量 & 预挤出 ======================\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=1 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=0\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=0\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=2 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=1\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=1\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=3 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=2\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=2\nSM_PRINT_AUTO_FEED EXTRUDER=3\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=3\nM104 S0 T0 A0\nM104 S0 T1 A0\nM104 S0 T2 A0\nM104 S0 T3 A0\nM104 T{initial_extruder} S{nozzle_temperature[initial_extruder] - 90}\n\n;===== 粗回零 =================\nT{initial_extruder}\nM106 S255\nM106 P2 S0\nMOVE_TO_DISCARD_FILAMENT_POSITION\nM109 T{initial_extruder} S{nozzle_temperature[initial_extruder] - 90}\nROUGHLY_CLEAN_NOZZLE_WITH_DISCARD\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nG28 Z I140 J140\n\n;===== 检测钢板 =================\nDETECT_BED_PLATE\n\n;===== 深度清洁喷嘴 =================\nG90\nG0 Z5 F10000\nMOVE_TO_DISCARD_FILAMENT_POSITION\nM109 S{nozzle_temperature[initial_extruder] - 50}\nROUGHLY_CLEAN_NOZZLE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nFINELY_CLEAN_NOZZLE_STAGE_1\nM104 S{nozzle_temperature[initial_extruder] - 90}\nG0 Z5 F10000\nMOVE_TO_DISCARD_FILAMENT_POSITION\nROUGHLY_CLEAN_NOZZLE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nFINELY_CLEAN_NOZZLE_STAGE_2\n\n;===== 精回零 =================\nM106 S255\nM109 S{nozzle_temperature[initial_extruder] - 90}\nM190 S{bed_temperature_initial_layer_single}\nM107 P2\nG90\nG0 Z5 F10000\nWAIT_CHAMBER_TEMP TIMEOUT=180\n{if curr_bed_type==\"High Temp Plate\"} \nG28 Z Z_OFFSET -0.07 \n{else} \nG28 Z \n{endif} \n\n\n;===== 热床调平 =================\n{if curr_bed_type==\"High Temp Plate\"} \n; Always pass `ADAPTIVE_MARGIN=0` because Orca has already handled `adaptive_bed_mesh_margin` internally\n; Make sure to set ADAPTIVE to 0 otherwise Klipper will use it's own adaptive bed mesh logic\nBED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=0 ADAPTIVE_MARGIN=0 Z_OFFSET=-0.07\n{else} \n; Always pass `ADAPTIVE_MARGIN=0` because Orca has already handled `adaptive_bed_mesh_margin` internally\n; Make sure to set ADAPTIVE to 0 otherwise Klipper will use it's own adaptive bed mesh logic\nBED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=0 ADAPTIVE_MARGIN=0\n{endif} \n\n\n;===== 画起始线 =================\nG90\nG1 Z1.5\nG0 X85 Y1 Z2 F18000\nM109 S{nozzle_temperature_initial_layer[initial_extruder]}\nG1 Z0.2\nM83\nG1 X185 E15 F360\nG1 Z1.5\n\nG90\nM106 S0",
+ "machine_tool_change_time": "5",
"max_layer_height": [
- "0.48",
- "0.48",
- "0.48",
- "0.48"
+ "0.42",
+ "0.42",
+ "0.42",
+ "0.42"
],
"min_layer_height": [
"0.12",
@@ -26,5 +67,125 @@
"0.6",
"0.6"
],
- "nozzle_type": "stainless_steel"
+ "nozzle_type": "stainless_steel",
+ "printable_area": [
+ "0.5x1",
+ "270.5x1",
+ "270.5x271",
+ "0.5x271"
+ ],
+ "printable_height": "270.05",
+ "retract_before_wipe": [
+ "0%",
+ "0%",
+ "0%",
+ "0%"
+ ],
+ "retract_length_toolchange": [
+ "10",
+ "10",
+ "10",
+ "10"
+ ],
+ "retract_lift_above": [
+ "0",
+ "0",
+ "0",
+ "0"
+ ],
+ "retract_lift_below": [
+ "269",
+ "269",
+ "269",
+ "269"
+ ],
+ "retract_lift_enforce": [
+ "All Surfaces",
+ "All Surfaces",
+ "All Surfaces",
+ "All Surfaces"
+ ],
+ "retract_restart_extra": [
+ "0",
+ "0",
+ "0",
+ "0"
+ ],
+ "retract_restart_extra_toolchange": [
+ "0",
+ "0",
+ "0",
+ "0"
+ ],
+ "retract_when_changing_layer": [
+ "1",
+ "1",
+ "1",
+ "1"
+ ],
+ "retraction_distances_when_cut": [
+ "18",
+ "18",
+ "18",
+ "18"
+ ],
+ "retraction_length": [
+ "1.4",
+ "1.4",
+ "1.4",
+ "1.4"
+ ],
+ "retraction_minimum_travel": [
+ "3",
+ "3",
+ "3",
+ "3"
+ ],
+ "retraction_speed": [
+ "30",
+ "30",
+ "30",
+ "30"
+ ],
+ "thumbnails": "48x48/PNG, 300x300/PNG",
+ "travel_slope": [
+ "3",
+ "3",
+ "3",
+ "3"
+ ],
+ "wipe": [
+ "1",
+ "1",
+ "1",
+ "1"
+ ],
+ "wipe_distance": [
+ "1",
+ "1",
+ "1",
+ "1"
+ ],
+ "z_hop": [
+ "0.4",
+ "0.4",
+ "0.4",
+ "0.4"
+ ],
+ "z_hop_types": [
+ "Auto Lift",
+ "Auto Lift",
+ "Auto Lift",
+ "Auto Lift"
+ ],
+ "enable_filament_ramming": "0",
+ "extruder_clearance_height_to_rod": "27.5",
+ "extruder_clearance_radius": "72.5",
+ "machine_load_filament_time": "0",
+ "machine_unload_filament_time": "0",
+ "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\nTIMELAPSE_TAKE_FRAME\nDEFECT_DETECTION_DETECT",
+ "machine_pause_gcode": "M600",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nSET_PRINT_STATS_INFO TOTAL_LAYER={total_layer_count} CURRENT_LAYER={layer_num+1}",
+ "nozzle_volume": "143",
+ "default_print_profile": "0.30 Standard @Snapmaker U1 (0.6 nozzle)"
}
diff --git a/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.8 nozzle).json
index b775c2c964..ef4da1a516 100644
--- a/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.8 nozzle).json
+++ b/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.8 nozzle).json
@@ -1,13 +1,54 @@
{
"type": "machine",
- "setting_id": "WTkhQtyDO06YY6AG",
"name": "Snapmaker U1 (0.8 nozzle)",
- "from": "system",
- "instantiation": "true",
"inherits": "fdm_U1",
+ "from": "system",
+ "setting_id": "WTkhQtyDO06YY6AG",
+ "instantiation": "true",
"printer_model": "Snapmaker U1",
"printer_variant": "0.8",
- "default_print_profile": "0.40 Standard @Snapmaker U1 (0.8 nozzle)",
+ "auxiliary_fan": "1",
+ "change_filament_gcode": ";===== date: 20260607 =====================\n; Change Tool[previous_extruder] -> Tool[next_extruder] (layer [layer_num])\n; max_layer_z [max_layer_z]\n; max_print_height [max_print_height]\n; print_sequence [print_sequence]\n\n{\nlocal move_z = 1.5;\nlocal max_speed_toolchange = 350.0;\nlocal wait_for_extruder_temp = true;\nposition[2] = position[2] + 2.0;\nlocal speed_toolchange = max_speed_toolchange;\n\nif travel_speed < max_speed_toolchange then\n speed_toolchange = travel_speed;\nendif\n\nif print_sequence == \"by object\" then\n\n if max_layer_z < ((max_print_height - z_offset) - 2) then\n move_z = z_offset + min(((max_layer_z - z_offset) + 2), max_print_height);\n endif\n\nendif\n\n\"G91\nG1 Z\" + move_z + \" F600\nG90\n\";\n\"G1 F\" + (speed_toolchange * 60) + \"\n\";\nif wait_for_extruder_temp and not((layer_num < 0) and (next_extruder == initial_tool)) then\n \"\n\";\n \"; \" + layer_num + \"\n\";\n if layer_num == 0 then\n \"M109 S\" + first_layer_temperature[next_extruder] + \" T\" + next_extruder + \"\n\";\n else\n \"M109 S\" + temperature[next_extruder] + \" T\" + next_extruder + \"\n\";\n endif\nendif\n\"M400\" + \"\n\";\n\"T\" + next_extruder + \"\n\";\nif filament_type[next_extruder] == \"PVA\" then\n\"SET_VELOCITY_LIMIT ACCEL=3000\n\";\nelse\nendif\nif previous_extruder != next_extruder and initial_extruder != next_extruder then\n\"SM_PRINT_PREEXTRUDE_FILAMENT INDEX=\" + next_extruder + \"\n\";\nendif\n\"G90\n\";\n}\n",
+ "deretraction_speed": [
+ "30",
+ "30",
+ "30",
+ "30"
+ ],
+ "extruder_colour": [
+ "#FCE94F",
+ "#FCE94F",
+ "#FCE94F",
+ "#FCE94F"
+ ],
+ "extruder_offset": [
+ "0x0",
+ "0x0",
+ "0x0",
+ "0x0"
+ ],
+ "host_type": "octoprint",
+ "long_retractions_when_cut": [
+ "0",
+ "0",
+ "0",
+ "0"
+ ],
+ "machine_end_gcode": ";===== date: 20260605 =====================\n; layer [layer_num]\n; max_layer_z [max_layer_z]\n; print_sequence [print_sequence]\n\n{if print_sequence == \"by object\"}\n{\nlocal move_z = max_print_height;\n\nif max_layer_z < ((max_print_height - z_offset) - 2) then\n move_z = z_offset + min(((max_layer_z - z_offset) + 2), max_print_height);\nendif\n}\n\nG91\nG1 X2 Y2 Z1 F24000\nG90\nG1 Z{move_z} F600\n{endif}\n\nPRINT_END\nTIMELAPSE_STOP\n",
+ "machine_max_jerk_z": [
+ "3",
+ "0.4"
+ ],
+ "machine_max_speed_e": [
+ "30",
+ "25"
+ ],
+ "machine_max_speed_z": [
+ "20",
+ "12"
+ ],
+ "machine_start_gcode": "SET_PRINT_AUTO_BED_LEVELING ENABLE=1\nSET_TIME_LAPSE_CAMERA ENABLE=1\n;===== date: 20260128 =====================\n\nPRINT_START\nDEFECT_DETECTION_START\nSET_PRINT_STATS_INFO TOTAL_LAYER={total_layer_count} CURRENT_LAYER=0\nTIMELAPSE_START\nM140 S{bed_temperature_initial_layer_single}\nM104 T{initial_extruder} S140\nM204 S10000\nG28 X Y\nDEFECT_DETECT_NOODLE_FIRST\n;===== 床面异物检测 ========\nT{initial_extruder}\nG90\nDEFECT_DETECTION_DETECT_BED\n;===== 取放头检测 =================\nSM_PRINT_CHECK_SWITCH_EXTRUDER\n\n;===== 自动进料 & 挤出流量 & 预挤出 ======================\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=1 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=0\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=0\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=2 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=1\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=1\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=3 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=2\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=2\nSM_PRINT_AUTO_FEED EXTRUDER=3\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=3\nM104 S0 T0 A0\nM104 S0 T1 A0\nM104 S0 T2 A0\nM104 S0 T3 A0\nM104 T{initial_extruder} S{nozzle_temperature[initial_extruder] - 90}\n\n;===== 粗回零 =================\nT{initial_extruder}\nM106 S255\nM106 P2 S0\nMOVE_TO_DISCARD_FILAMENT_POSITION\nM109 T{initial_extruder} S{nozzle_temperature[initial_extruder] - 90}\nROUGHLY_CLEAN_NOZZLE_WITH_DISCARD\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nG28 Z I140 J140\n\n;===== 检测钢板 =================\nDETECT_BED_PLATE\n\n;===== 深度清洁喷嘴 =================\nG90\nG0 Z5 F10000\nMOVE_TO_DISCARD_FILAMENT_POSITION\nM109 S{nozzle_temperature[initial_extruder] - 50}\nROUGHLY_CLEAN_NOZZLE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nFINELY_CLEAN_NOZZLE_STAGE_1\nM104 S{nozzle_temperature[initial_extruder] - 90}\nG0 Z5 F10000\nMOVE_TO_DISCARD_FILAMENT_POSITION\nROUGHLY_CLEAN_NOZZLE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nFINELY_CLEAN_NOZZLE_STAGE_2\n\n;===== 精回零 =================\nM106 S255\nM109 S{nozzle_temperature[initial_extruder] - 90}\nM190 S{bed_temperature_initial_layer_single}\nM107 P2\nG90\nG0 Z5 F10000\nWAIT_CHAMBER_TEMP TIMEOUT=180\n{if curr_bed_type==\"High Temp Plate\"} \nG28 Z Z_OFFSET -0.07 \n{else} \nG28 Z \n{endif} \n\n\n;===== 热床调平 =================\n{if curr_bed_type==\"High Temp Plate\"} \n; Always pass `ADAPTIVE_MARGIN=0` because Orca has already handled `adaptive_bed_mesh_margin` internally\n; Make sure to set ADAPTIVE to 0 otherwise Klipper will use it's own adaptive bed mesh logic\nBED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=0 ADAPTIVE_MARGIN=0 Z_OFFSET=-0.07\n{else} \n; Always pass `ADAPTIVE_MARGIN=0` because Orca has already handled `adaptive_bed_mesh_margin` internally\n; Make sure to set ADAPTIVE to 0 otherwise Klipper will use it's own adaptive bed mesh logic\nBED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=0 ADAPTIVE_MARGIN=0\n{endif} \n\n\n;===== 画起始线 =================\nG90\nG1 Z1.5\nG0 X85 Y1 Z2 F18000\nM109 S{nozzle_temperature_initial_layer[initial_extruder]}\nG1 Z0.2\nM83\nG1 X185 E15 F360\nG1 Z1.5\n\nG90\nM106 S0",
+ "machine_tool_change_time": "5",
"max_layer_height": [
"0.56",
"0.56",
@@ -26,5 +67,125 @@
"0.8",
"0.8"
],
- "nozzle_type": "hardened_steel"
+ "nozzle_type": "hardened_steel",
+ "printable_area": [
+ "0.5x1",
+ "270.5x1",
+ "270.5x271",
+ "0.5x271"
+ ],
+ "printable_height": "270.05",
+ "retract_before_wipe": [
+ "0%",
+ "0%",
+ "0%",
+ "0%"
+ ],
+ "retract_length_toolchange": [
+ "10",
+ "10",
+ "10",
+ "10"
+ ],
+ "retract_lift_above": [
+ "0",
+ "0",
+ "0",
+ "0"
+ ],
+ "retract_lift_below": [
+ "269",
+ "269",
+ "269",
+ "269"
+ ],
+ "retract_lift_enforce": [
+ "All Surfaces",
+ "All Surfaces",
+ "All Surfaces",
+ "All Surfaces"
+ ],
+ "retract_restart_extra": [
+ "0",
+ "0",
+ "0",
+ "0"
+ ],
+ "retract_restart_extra_toolchange": [
+ "0",
+ "0",
+ "0",
+ "0"
+ ],
+ "retract_when_changing_layer": [
+ "1",
+ "1",
+ "1",
+ "1"
+ ],
+ "retraction_distances_when_cut": [
+ "18",
+ "18",
+ "18",
+ "18"
+ ],
+ "retraction_length": [
+ "1.5",
+ "1.5",
+ "1.5",
+ "1.5"
+ ],
+ "retraction_minimum_travel": [
+ "1",
+ "1",
+ "1",
+ "1"
+ ],
+ "retraction_speed": [
+ "30",
+ "30",
+ "30",
+ "30"
+ ],
+ "thumbnails": "48x48/PNG, 300x300/PNG",
+ "travel_slope": [
+ "3",
+ "3",
+ "3",
+ "3"
+ ],
+ "wipe": [
+ "1",
+ "1",
+ "1",
+ "1"
+ ],
+ "wipe_distance": [
+ "2",
+ "2",
+ "2",
+ "2"
+ ],
+ "z_hop": [
+ "0.4",
+ "0.4",
+ "0.4",
+ "0.4"
+ ],
+ "z_hop_types": [
+ "Auto Lift",
+ "Auto Lift",
+ "Auto Lift",
+ "Auto Lift"
+ ],
+ "enable_filament_ramming": "0",
+ "extruder_clearance_height_to_rod": "27.5",
+ "extruder_clearance_radius": "72.5",
+ "machine_load_filament_time": "0",
+ "machine_unload_filament_time": "0",
+ "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\nTIMELAPSE_TAKE_FRAME\nDEFECT_DETECTION_DETECT",
+ "machine_pause_gcode": "M600",
+ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nSET_PRINT_STATS_INFO TOTAL_LAYER={total_layer_count} CURRENT_LAYER={layer_num+1}",
+ "nozzle_volume": "143",
+ "default_print_profile": "0.40 Standard @Snapmaker U1 (0.8 nozzle)"
}
diff --git a/resources/profiles/Snapmaker/machine/fdm_U1.json b/resources/profiles/Snapmaker/machine/fdm_U1.json
index 73fe5b74ef..717215b507 100644
--- a/resources/profiles/Snapmaker/machine/fdm_U1.json
+++ b/resources/profiles/Snapmaker/machine/fdm_U1.json
@@ -176,8 +176,6 @@
"Normal Lift",
"Normal Lift"
],
- "bed_mesh_max": "267,267",
- "bed_mesh_min": "3,3",
"purge_in_prime_tower": "0",
"machine_pause_gcode": "M601",
"change_filament_gcode": "",
@@ -185,13 +183,16 @@
"scan_first_layer": "0",
"nozzle_type": "undefine",
"auxiliary_fan": "0",
- "default_bed_type": "Textured PEI Plate",
- "printer_agent": "snapmaker",
+ "support_multi_bed_types": "1",
+ "default_bed_type": "4",
"printable_area": [
"0.5x1",
"270.5x1",
"270.5x271",
"0.5x271"
],
- "printable_height": "270.05"
+ "printable_height": "270.05",
+ "bed_mesh_min": "3,3",
+ "bed_mesh_max": "267,267",
+ "printer_agent": "snapmaker"
}
diff --git a/resources/profiles/Snapmaker/process/0.06 High Quality @Snapmaker U1 (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.06 High Quality @Snapmaker U1 (0.2 nozzle).json
index 996b127b77..3dec06228e 100644
--- a/resources/profiles/Snapmaker/process/0.06 High Quality @Snapmaker U1 (0.2 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.06 High Quality @Snapmaker U1 (0.2 nozzle).json
@@ -1,43 +1,31 @@
{
- "type": "process",
- "name": "0.06 High Quality @Snapmaker U1 (0.2 nozzle)",
- "inherits": "fdm_process_U1_0.2_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.06",
- "initial_layer_print_height": "0.1",
- "wall_loops": "4",
- "bottom_shell_layers": "5",
- "top_shell_layers": "7",
- "bridge_flow": "1",
- "initial_layer_speed": "40",
- "initial_layer_infill_speed": "70",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "support_top_z_distance": "0.06",
- "support_bottom_z_distance": "0.06",
- "setting_id": "3SCofR6VrVyo3vJp",
- "description": "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. So, it results in minimal layer lines and much higher printing quality, but much longer printing time.",
- "default_acceleration": "4000",
- "elefant_foot_compensation": "0.15",
- "outer_wall_acceleration": "2000",
- "outer_wall_speed": "60",
- "sparse_infill_pattern": "gyroid",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.2 nozzle)"
- ],
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "13.5",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_type": "tree(auto)",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib"
+ "type": "process",
+ "name": "0.06 High Quality @Snapmaker U1 (0.2 nozzle)",
+ "inherits": "fdm_process_U1_0.06_nozzle_0.2",
+ "from": "system",
+ "setting_id": "3SCofR6VrVyo3vJp",
+ "instantiation": "true",
+ "description": "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. So, it results in minimal layer lines and much higher printing quality, but much longer printing time.",
+ "default_acceleration": "4000",
+ "elefant_foot_compensation": "0.15",
+ "outer_wall_acceleration": "2000",
+ "outer_wall_speed": "60",
+ "sparse_infill_pattern": "gyroid",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "13.5",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib"
}
diff --git a/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker U1 (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker U1 (0.2 nozzle).json
index 85e50ec87f..7c80e048f6 100644
--- a/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker U1 (0.2 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker U1 (0.2 nozzle).json
@@ -1,39 +1,27 @@
{
- "type": "process",
- "name": "0.06 Standard @Snapmaker U1 (0.2 nozzle)",
- "inherits": "fdm_process_U1_0.2_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.06",
- "initial_layer_print_height": "0.1",
- "wall_loops": "4",
- "bottom_shell_layers": "5",
- "top_shell_layers": "7",
- "bridge_flow": "1",
- "initial_layer_speed": "40",
- "initial_layer_infill_speed": "70",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "support_top_z_distance": "0.06",
- "support_bottom_z_distance": "0.06",
- "setting_id": "997RaiNHd2YhpaRB",
- "description": "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.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.2 nozzle)"
- ],
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "13.5",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_type": "tree(auto)",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib"
+ "type": "process",
+ "name": "0.06 Standard @Snapmaker U1 (0.2 nozzle)",
+ "inherits": "fdm_process_U1_0.06_nozzle_0.2",
+ "from": "system",
+ "setting_id": "997RaiNHd2YhpaRB",
+ "instantiation": "true",
+ "description": "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.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "13.5",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib"
}
diff --git a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker U1 (0.4 nozzle).json
index aeffe99f2a..b8a8e126aa 100644
--- a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker U1 (0.4 nozzle).json
@@ -12,6 +12,19 @@
"Snapmaker U1 (0.4 nozzle)"
],
"ooze_prevention": "1",
+ "prime_tower_width": "30",
+ "prime_volume": "18",
"slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150"
+ "standby_temperature_delta": "-150",
+ "wipe_tower_filament": "0",
+ "prime_tower_brim_width": "5",
+ "wipe_tower_cone_angle": "15",
+ "wipe_tower_extra_spacing": "120%",
+ "enable_arc_fitting": "0",
+ "outer_wall_speed": "100",
+ "precise_outer_wall": "1",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_wall_type": "rib",
+ "gap_fill_target": "topbottom"
}
diff --git a/resources/profiles/Snapmaker/process/0.08 High Quality @Snapmaker U1 (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.08 High Quality @Snapmaker U1 (0.2 nozzle).json
index fe0fc0e87d..27d3903f06 100644
--- a/resources/profiles/Snapmaker/process/0.08 High Quality @Snapmaker U1 (0.2 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.08 High Quality @Snapmaker U1 (0.2 nozzle).json
@@ -1,43 +1,31 @@
{
- "type": "process",
- "name": "0.08 High Quality @Snapmaker U1 (0.2 nozzle)",
- "inherits": "fdm_process_U1_0.2_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.08",
- "initial_layer_print_height": "0.1",
- "wall_loops": "4",
- "bottom_shell_layers": "5",
- "top_shell_layers": "7",
- "bridge_flow": "1",
- "initial_layer_speed": "40",
- "initial_layer_infill_speed": "70",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "support_top_z_distance": "0.08",
- "support_bottom_z_distance": "0.08",
- "setting_id": "6ExpMU3Wq4J1R7wy",
- "description": "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. So, it results in almost invisible layer lines and much higher printing quality, but much longer printing time.",
- "default_acceleration": "4000",
- "elefant_foot_compensation": "0.15",
- "outer_wall_acceleration": "2000",
- "outer_wall_speed": "60",
- "sparse_infill_pattern": "gyroid",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.2 nozzle)"
- ],
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "18",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_type": "tree(auto)",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib"
+ "type": "process",
+ "name": "0.08 High Quality @Snapmaker U1 (0.2 nozzle)",
+ "inherits": "fdm_process_U1_0.08_nozzle_0.2",
+ "from": "system",
+ "setting_id": "6ExpMU3Wq4J1R7wy",
+ "instantiation": "true",
+ "description": "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. So, it results in almost invisible layer lines and much higher printing quality, but much longer printing time.",
+ "default_acceleration": "4000",
+ "elefant_foot_compensation": "0.15",
+ "outer_wall_acceleration": "2000",
+ "outer_wall_speed": "60",
+ "sparse_infill_pattern": "gyroid",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "18",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib"
}
diff --git a/resources/profiles/Snapmaker/process/0.08 High Quality @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.08 High Quality @Snapmaker U1 (0.4 nozzle).json
index b86156d841..677e6742d9 100644
--- a/resources/profiles/Snapmaker/process/0.08 High Quality @Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.08 High Quality @Snapmaker U1 (0.4 nozzle).json
@@ -21,6 +21,18 @@
"Snapmaker U1 (0.4 nozzle)"
],
"ooze_prevention": "1",
+ "prime_tower_width": "30",
+ "prime_volume": "18",
"slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150"
+ "standby_temperature_delta": "-150",
+ "wipe_tower_filament": "0",
+ "prime_tower_brim_width": "5",
+ "wipe_tower_cone_angle": "15",
+ "wipe_tower_extra_spacing": "120%",
+ "enable_arc_fitting": "0",
+ "precise_outer_wall": "1",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_wall_type": "rib",
+ "gap_fill_target": "topbottom"
}
diff --git a/resources/profiles/Snapmaker/process/0.08 Standard @Snapmaker U1 (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.08 Standard @Snapmaker U1 (0.2 nozzle).json
index 472176ff40..b4728bd60f 100644
--- a/resources/profiles/Snapmaker/process/0.08 Standard @Snapmaker U1 (0.2 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.08 Standard @Snapmaker U1 (0.2 nozzle).json
@@ -1,39 +1,27 @@
{
- "type": "process",
- "name": "0.08 Standard @Snapmaker U1 (0.2 nozzle)",
- "inherits": "fdm_process_U1_0.2_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.08",
- "initial_layer_print_height": "0.1",
- "wall_loops": "4",
- "bottom_shell_layers": "5",
- "top_shell_layers": "7",
- "bridge_flow": "1",
- "initial_layer_speed": "40",
- "initial_layer_infill_speed": "70",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "support_top_z_distance": "0.08",
- "support_bottom_z_distance": "0.08",
- "setting_id": "loFrCYH9ux2L5JpZ",
- "description": "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.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.2 nozzle)"
- ],
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "18",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_type": "tree(auto)",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib"
+ "type": "process",
+ "name": "0.08 Standard @Snapmaker U1 (0.2 nozzle)",
+ "inherits": "fdm_process_U1_0.08_nozzle_0.2",
+ "from": "system",
+ "setting_id": "loFrCYH9ux2L5JpZ",
+ "instantiation": "true",
+ "description": "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.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "18",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib"
}
diff --git a/resources/profiles/Snapmaker/process/0.10 High Quality @Snapmaker U1 (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.10 High Quality @Snapmaker U1 (0.2 nozzle).json
index 0f15ce7c5f..80b2120807 100644
--- a/resources/profiles/Snapmaker/process/0.10 High Quality @Snapmaker U1 (0.2 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.10 High Quality @Snapmaker U1 (0.2 nozzle).json
@@ -1,43 +1,31 @@
{
- "type": "process",
- "name": "0.10 High Quality @Snapmaker U1 (0.2 nozzle)",
- "inherits": "fdm_process_U1_0.2_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.1",
- "initial_layer_print_height": "0.1",
- "wall_loops": "4",
- "bottom_shell_layers": "5",
- "top_shell_layers": "7",
- "bridge_flow": "1",
- "initial_layer_speed": "40",
- "initial_layer_infill_speed": "70",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "support_top_z_distance": "0.1",
- "support_bottom_z_distance": "0.1",
- "setting_id": "BfLpmnJnSBYBFInR",
- "description": "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.",
- "default_acceleration": "4000",
- "elefant_foot_compensation": "0.15",
- "outer_wall_acceleration": "2000",
- "outer_wall_speed": "60",
- "sparse_infill_pattern": "gyroid",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.2 nozzle)"
- ],
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "28",
- "prime_volume": "25",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_type": "tree(auto)",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib"
+ "type": "process",
+ "name": "0.10 High Quality @Snapmaker U1 (0.2 nozzle)",
+ "inherits": "fdm_process_U1_0.10_nozzle_0.2",
+ "from": "system",
+ "setting_id": "BfLpmnJnSBYBFInR",
+ "instantiation": "true",
+ "description": "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.",
+ "default_acceleration": "4000",
+ "elefant_foot_compensation": "0.15",
+ "outer_wall_acceleration": "2000",
+ "outer_wall_speed": "60",
+ "sparse_infill_pattern": "gyroid",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "28",
+ "prime_volume": "25",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib"
}
diff --git a/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker U1 (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker U1 (0.2 nozzle).json
index 460bf8b6fd..80739205ac 100644
--- a/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker U1 (0.2 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker U1 (0.2 nozzle).json
@@ -1,41 +1,29 @@
{
- "type": "process",
- "name": "0.10 Standard @Snapmaker U1 (0.2 nozzle)",
- "inherits": "fdm_process_U1_0.2_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.1",
- "initial_layer_print_height": "0.1",
- "wall_loops": "4",
- "bottom_shell_layers": "5",
- "top_shell_layers": "7",
- "bridge_flow": "1",
- "initial_layer_speed": "40",
- "initial_layer_infill_speed": "70",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "support_top_z_distance": "0.1",
- "support_bottom_z_distance": "0.1",
- "setting_id": "SOq962UWv1ml1Mk0",
- "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",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.2 nozzle)"
- ],
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "preheat_time": "31",
- "prime_tower_brim_width": "6",
- "prime_tower_width": "28",
- "prime_volume": "25",
- "standby_temperature_delta": "-150",
- "support_threshold_angle": "35",
- "support_type": "tree(auto)",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib",
- "slowdown_for_curled_perimeters": "0"
+ "type": "process",
+ "name": "0.10 Standard @Snapmaker U1 (0.2 nozzle)",
+ "inherits": "fdm_process_U1_0.10_nozzle_0.2",
+ "from": "system",
+ "setting_id": "SOq962UWv1ml1Mk0",
+ "instantiation": "true",
+ "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",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "preheat_time": "31",
+ "prime_tower_brim_width": "6",
+ "prime_tower_width": "28",
+ "prime_volume": "25",
+ "standby_temperature_delta": "-150",
+ "support_threshold_angle": "35",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib",
+ "slowdown_for_curled_perimeters": "0"
}
diff --git a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker U1 (0.4 nozzle).json
index 42823b3f0b..2da54a6dc3 100644
--- a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker U1 (0.4 nozzle).json
@@ -13,5 +13,18 @@
],
"ooze_prevention": "1",
"slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150"
+ "standby_temperature_delta": "-150",
+ "wipe_tower_filament": "0",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "27",
+ "wipe_tower_cone_angle": "15",
+ "wipe_tower_extra_spacing": "120%",
+ "enable_arc_fitting": "0",
+ "precise_outer_wall": "1",
+ "support_threshold_angle": "25",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_wall_type": "rib",
+ "gap_fill_target": "topbottom"
}
diff --git a/resources/profiles/Snapmaker/process/0.12 High Quality @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.12 High Quality @Snapmaker U1 (0.4 nozzle).json
index 8564a41b24..9302a40421 100644
--- a/resources/profiles/Snapmaker/process/0.12 High Quality @Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.12 High Quality @Snapmaker U1 (0.4 nozzle).json
@@ -20,5 +20,20 @@
"compatible_printers": [
"Snapmaker U1 (0.4 nozzle)"
],
- "slowdown_for_curled_perimeters": "0"
+ "prime_tower_width": "30",
+ "prime_volume": "27",
+ "slowdown_for_curled_perimeters": "0",
+ "wipe_tower_filament": "0",
+ "prime_tower_brim_width": "5",
+ "wipe_tower_cone_angle": "15",
+ "wipe_tower_extra_spacing": "120%",
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "standby_temperature_delta": "-150",
+ "support_threshold_angle": "25",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_wall_type": "rib",
+ "gap_fill_target": "topbottom"
}
diff --git a/resources/profiles/Snapmaker/process/0.12 Standard @Snapmaker U1 (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.12 Standard @Snapmaker U1 (0.2 nozzle).json
index de68cc0dd0..cc93a97e99 100644
--- a/resources/profiles/Snapmaker/process/0.12 Standard @Snapmaker U1 (0.2 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.12 Standard @Snapmaker U1 (0.2 nozzle).json
@@ -1,39 +1,27 @@
{
- "type": "process",
- "name": "0.12 Standard @Snapmaker U1 (0.2 nozzle)",
- "inherits": "fdm_process_U1_0.2_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.12",
- "initial_layer_print_height": "0.1",
- "wall_loops": "4",
- "bottom_shell_layers": "5",
- "top_shell_layers": "7",
- "bridge_flow": "1",
- "initial_layer_speed": "40",
- "initial_layer_infill_speed": "70",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "support_top_z_distance": "0.12",
- "support_bottom_z_distance": "0.12",
- "setting_id": "KHC1zpxpuvaUEzvf",
- "description": "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.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.2 nozzle)"
- ],
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "28",
- "prime_volume": "27",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_type": "tree(auto)",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib"
+ "type": "process",
+ "name": "0.12 Standard @Snapmaker U1 (0.2 nozzle)",
+ "inherits": "fdm_process_U1_0.12_nozzle_0.2",
+ "from": "system",
+ "setting_id": "KHC1zpxpuvaUEzvf",
+ "instantiation": "true",
+ "description": "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.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "28",
+ "prime_volume": "27",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib"
}
diff --git a/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker U1 (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker U1 (0.2 nozzle).json
index c265d55e67..54513eb14b 100644
--- a/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker U1 (0.2 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker U1 (0.2 nozzle).json
@@ -1,39 +1,27 @@
{
- "type": "process",
- "name": "0.14 Standard @Snapmaker U1 (0.2 nozzle)",
- "inherits": "fdm_process_U1_0.2_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.14",
- "initial_layer_print_height": "0.1",
- "wall_loops": "4",
- "bottom_shell_layers": "5",
- "top_shell_layers": "7",
- "bridge_flow": "1",
- "initial_layer_speed": "40",
- "initial_layer_infill_speed": "70",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "support_top_z_distance": "0.14",
- "support_bottom_z_distance": "0.14",
- "setting_id": "NGJoV0n6T510y9wM",
- "description": "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.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.2 nozzle)"
- ],
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "32",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_type": "tree(auto)",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib"
+ "type": "process",
+ "name": "0.14 Standard @Snapmaker U1 (0.2 nozzle)",
+ "inherits": "fdm_process_U1_0.14_nozzle_0.2",
+ "from": "system",
+ "setting_id": "NGJoV0n6T510y9wM",
+ "instantiation": "true",
+ "description": "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.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.2 nozzle)"
+ ],
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "32",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib"
}
diff --git a/resources/profiles/Snapmaker/process/0.16 High Quality @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.16 High Quality @Snapmaker U1 (0.4 nozzle).json
index e66f9f3beb..416d85881c 100644
--- a/resources/profiles/Snapmaker/process/0.16 High Quality @Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.16 High Quality @Snapmaker U1 (0.4 nozzle).json
@@ -21,6 +21,19 @@
"Snapmaker U1 (0.4 nozzle)"
],
"ooze_prevention": "1",
+ "prime_tower_width": "30",
+ "prime_volume": "36",
"slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150"
+ "standby_temperature_delta": "-150",
+ "wipe_tower_filament": "0",
+ "prime_tower_brim_width": "5",
+ "wipe_tower_cone_angle": "15",
+ "wipe_tower_extra_spacing": "120%",
+ "enable_arc_fitting": "0",
+ "precise_outer_wall": "1",
+ "support_threshold_angle": "30",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_wall_type": "rib",
+ "gap_fill_target": "topbottom"
}
diff --git a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker U1 (0.4 nozzle).json
index 2817871fad..6871a3e120 100644
--- a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker U1 (0.4 nozzle).json
@@ -12,6 +12,18 @@
"Snapmaker U1 (0.4 nozzle)"
],
"ooze_prevention": "1",
+ "prime_tower_width": "30",
+ "prime_volume": "36",
"slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150"
+ "standby_temperature_delta": "-150",
+ "wipe_tower_filament": "0",
+ "prime_tower_brim_width": "5",
+ "wipe_tower_cone_angle": "15",
+ "wipe_tower_extra_spacing": "120%",
+ "enable_arc_fitting": "0",
+ "precise_outer_wall": "1",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_wall_type": "rib",
+ "gap_fill_target": "topbottom"
}
diff --git a/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker U1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker U1 (0.6 nozzle).json
index e68cf86d75..77b756bffc 100644
--- a/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker U1 (0.6 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker U1 (0.6 nozzle).json
@@ -1,42 +1,32 @@
{
- "type": "process",
- "name": "0.18 Standard @Snapmaker U1 (0.6 nozzle)",
- "inherits": "fdm_process_U1_0.6_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.25",
- "initial_layer_print_height": "0.3",
- "bridge_flow": "1",
- "initial_layer_speed": "35",
- "initial_layer_infill_speed": "55",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "bridge_speed": "30",
- "overhang_3_4_speed": "15",
- "support_top_z_distance": "0.18",
- "support_bottom_z_distance": "0.18",
- "setting_id": "XGSrVgnsUFv6uCRs",
- "description": "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.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.6 nozzle)"
- ],
- "filter_out_gap_fill": "1",
- "gap_fill_target": "topbottom",
- "internal_bridge_speed": "100%",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "41",
- "seam_gap": "15%",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib",
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_type": "tree(auto)"
+ "type": "process",
+ "name": "0.18 Standard @Snapmaker U1 (0.6 nozzle)",
+ "inherits": "fdm_process_U1_0.18_nozzle_0.6",
+ "from": "system",
+ "setting_id": "XGSrVgnsUFv6uCRs",
+ "instantiation": "true",
+ "description": "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.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "filter_out_gap_fill": "1",
+ "gap_fill_target": "topbottom",
+ "internal_bridge_speed": "100%",
+ "layer_height": "0.25",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "41",
+ "seam_gap": "15%",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib",
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_type": "tree(auto)"
}
diff --git a/resources/profiles/Snapmaker/process/0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle).json
deleted file mode 100644
index 5de608c68d..0000000000
--- a/resources/profiles/Snapmaker/process/0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle).json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "type": "process",
- "name": "0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle)",
- "inherits": "fdm_process_U1_0.20",
- "from": "system",
- "setting_id": "8OkVMuElKExBdftG",
- "instantiation": "true",
- "enable_support": "1",
- "support_interface_top_layers": "3",
- "support_top_z_distance": "0.2",
- "support_interface_loop_pattern": "1",
- "support_interface_spacing": "0",
- "support_interface_speed": "80",
- "support_filament": "0",
- "support_interface_filament": "0",
- "enable_prime_tower": "1",
- "compatible_printers": [
- "Snapmaker U1 (0.4 nozzle)"
- ],
- "ooze_prevention": "1",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150"
-}
diff --git a/resources/profiles/Snapmaker/process/0.20 Quality @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Quality @Snapmaker U1 (0.4 nozzle).json
index ac7fc102bc..da92006d49 100644
--- a/resources/profiles/Snapmaker/process/0.20 Quality @Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.20 Quality @Snapmaker U1 (0.4 nozzle).json
@@ -12,6 +12,7 @@
"Snapmaker U1 (0.4 nozzle)"
],
"ooze_prevention": "1",
+ "prime_tower_width": "30",
"slowdown_for_curled_perimeters": "0",
"standby_temperature_delta": "-150",
"wipe_tower_filament": "0",
diff --git a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4 nozzle).json
index 243718507b..5d873d5efd 100644
--- a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4 nozzle).json
@@ -12,6 +12,8 @@
"Snapmaker U1 (0.4 nozzle)"
],
"ooze_prevention": "1",
+ "prime_tower_width": "30",
+ "prime_volume": "45",
"slowdown_for_curled_perimeters": "0",
"standby_temperature_delta": "-150",
"wipe_tower_filament": "0",
diff --git a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4+0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4+0.6 nozzle).json
index 52e1aa9349..63bb6ea170 100644
--- a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4+0.6 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4+0.6 nozzle).json
@@ -20,6 +20,7 @@
"smooth_coefficient": "150",
"overhang_totally_speed": "50",
"ooze_prevention": "1",
+ "prime_tower_width": "30",
"slowdown_for_curled_perimeters": "0",
"standby_temperature_delta": "-150",
"wipe_tower_filament": "0",
diff --git a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.6 nozzle).json
index f5ab699928..d1bb174a62 100644
--- a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.6 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.6 nozzle).json
@@ -13,6 +13,7 @@
"Snapmaker U1 (0.6 nozzle)"
],
"ooze_prevention": "1",
+ "prime_tower_width": "30",
"slowdown_for_curled_perimeters": "0",
"standby_temperature_delta": "-150",
"wipe_tower_filament": "0",
diff --git a/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker U1 (0.4 nozzle).json
index 4defa45a16..91c5995b92 100644
--- a/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker U1 (0.4 nozzle).json
@@ -15,6 +15,18 @@
"Snapmaker U1 (0.4 nozzle)"
],
"ooze_prevention": "1",
+ "prime_tower_width": "30",
+ "prime_volume": "45",
"slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150"
+ "standby_temperature_delta": "-150",
+ "wipe_tower_filament": "0",
+ "prime_tower_brim_width": "5",
+ "wipe_tower_cone_angle": "15",
+ "wipe_tower_extra_spacing": "120%",
+ "enable_arc_fitting": "0",
+ "precise_outer_wall": "1",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_wall_type": "rib",
+ "gap_fill_target": "topbottom"
}
diff --git a/resources/profiles/Snapmaker/process/0.20 Support @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Support @Snapmaker U1 (0.4 nozzle).json
index 36a3172b48..0cb85cc26d 100644
--- a/resources/profiles/Snapmaker/process/0.20 Support @Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.20 Support @Snapmaker U1 (0.4 nozzle).json
@@ -12,6 +12,8 @@
"Snapmaker U1 (0.4 nozzle)"
],
"ooze_prevention": "1",
+ "prime_tower_width": "40",
+ "prime_volume": "15",
"slowdown_for_curled_perimeters": "0",
"standby_temperature_delta": "-150",
"wipe_tower_filament": "0",
diff --git a/resources/profiles/Snapmaker/process/0.20 Support W @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Support W @Snapmaker U1 (0.4 nozzle).json
index 37ba596b63..3d1887bea9 100644
--- a/resources/profiles/Snapmaker/process/0.20 Support W @Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.20 Support W @Snapmaker U1 (0.4 nozzle).json
@@ -18,6 +18,8 @@
"Snapmaker U1 (0.4 nozzle)"
],
"ooze_prevention": "1",
+ "prime_tower_width": "50",
+ "prime_volume": "38",
"slowdown_for_curled_perimeters": "0",
"standby_temperature_delta": "-150"
}
diff --git a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker U1 (0.4 nozzle).json
index a4c10a8ad1..f98007b6e1 100644
--- a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker U1 (0.4 nozzle).json
@@ -12,6 +12,18 @@
"Snapmaker U1 (0.4 nozzle)"
],
"ooze_prevention": "1",
+ "prime_tower_width": "30",
+ "prime_volume": "54",
"slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150"
+ "standby_temperature_delta": "-150",
+ "wipe_tower_filament": "0",
+ "prime_tower_brim_width": "5",
+ "wipe_tower_cone_angle": "15",
+ "wipe_tower_extra_spacing": "120%",
+ "enable_arc_fitting": "0",
+ "precise_outer_wall": "1",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_wall_type": "rib",
+ "gap_fill_target": "topbottom"
}
diff --git a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker U1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker U1 (0.6 nozzle).json
index b8a8427baf..7a9f4e2154 100644
--- a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker U1 (0.6 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker U1 (0.6 nozzle).json
@@ -1,41 +1,32 @@
{
- "type": "process",
- "name": "0.24 Standard @Snapmaker U1 (0.6 nozzle)",
- "inherits": "fdm_process_U1_0.6_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.24",
- "initial_layer_print_height": "0.3",
- "bridge_flow": "1",
- "initial_layer_speed": "35",
- "initial_layer_infill_speed": "55",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "bridge_speed": "30",
- "overhang_3_4_speed": "15",
- "setting_id": "BziJYuA5U5gWm6FM",
- "description": "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.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.6 nozzle)"
- ],
- "filter_out_gap_fill": "1",
- "gap_fill_target": "topbottom",
- "internal_bridge_speed": "100%",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "55",
- "seam_gap": "15%",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib",
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_threshold_angle": "35",
- "support_type": "tree(auto)"
+ "type": "process",
+ "name": "0.24 Standard @Snapmaker U1 (0.6 nozzle)",
+ "inherits": "fdm_process_U1_0.24_nozzle_0.6",
+ "from": "system",
+ "setting_id": "BziJYuA5U5gWm6FM",
+ "instantiation": "true",
+ "description": "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.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "filter_out_gap_fill": "1",
+ "gap_fill_target": "topbottom",
+ "internal_bridge_speed": "100%",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "55",
+ "seam_gap": "15%",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib",
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_threshold_angle": "35",
+ "support_type": "tree(auto)"
}
diff --git a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker U1 (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker U1 (0.8 nozzle).json
index 1b13e745d2..d9e1a2bf94 100644
--- a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker U1 (0.8 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker U1 (0.8 nozzle).json
@@ -1,43 +1,32 @@
{
- "type": "process",
- "name": "0.24 Standard @Snapmaker U1 (0.8 nozzle)",
- "inherits": "fdm_process_U1_0.8_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.24",
- "initial_layer_print_height": "0.4",
- "bridge_flow": "1",
- "top_surface_pattern": "monotonic",
- "initial_layer_speed": "35",
- "initial_layer_infill_speed": "55",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "bridge_speed": "30",
- "overhang_3_4_speed": "25",
- "overhang_4_4_speed": "5",
- "setting_id": "QcJ5p9h0eYUb91ak",
- "description": "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.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.8 nozzle)"
- ],
- "filter_out_gap_fill": "1",
- "gap_fill_target": "topbottom",
- "internal_bridge_speed": "100%",
- "min_width_top_surface": "90",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "54",
- "seam_gap": "15%",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib",
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_type": "tree(auto)"
+ "type": "process",
+ "name": "0.24 Standard @Snapmaker U1 (0.8 nozzle)",
+ "inherits": "fdm_process_U1_0.24_nozzle_0.8",
+ "from": "system",
+ "setting_id": "QcJ5p9h0eYUb91ak",
+ "instantiation": "true",
+ "description": "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.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "filter_out_gap_fill": "1",
+ "gap_fill_target": "topbottom",
+ "internal_bridge_speed": "100%",
+ "min_width_top_surface": "90",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "54",
+ "seam_gap": "15%",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib",
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_type": "tree(auto)"
}
diff --git a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker U1 (0.4 nozzle).json
index 4adf06f100..4382b11e41 100644
--- a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker U1 (0.4 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker U1 (0.4 nozzle).json
@@ -11,5 +11,19 @@
"compatible_printers": [
"Snapmaker U1 (0.4 nozzle)"
],
- "slowdown_for_curled_perimeters": "0"
+ "prime_tower_width": "30",
+ "prime_volume": "63",
+ "slowdown_for_curled_perimeters": "0",
+ "wipe_tower_filament": "0",
+ "prime_tower_brim_width": "5",
+ "wipe_tower_cone_angle": "15",
+ "wipe_tower_extra_spacing": "120%",
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "standby_temperature_delta": "-150",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_wall_type": "rib",
+ "gap_fill_target": "topbottom"
}
diff --git a/resources/profiles/Snapmaker/process/0.30 Draft @Snapmaker U1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.30 Draft @Snapmaker U1 (0.6 nozzle).json
index 8f8e6a1d15..52eb63a64d 100644
--- a/resources/profiles/Snapmaker/process/0.30 Draft @Snapmaker U1 (0.6 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.30 Draft @Snapmaker U1 (0.6 nozzle).json
@@ -13,6 +13,8 @@
"Snapmaker U1 (0.6 nozzle)"
],
"ooze_prevention": "1",
+ "prime_tower_width": "30",
+ "prime_volume": "68",
"slowdown_for_curled_perimeters": "0",
"standby_temperature_delta": "-150",
"wipe_tower_filament": "0",
diff --git a/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker U1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker U1 (0.6 nozzle).json
index 3ed454a7d5..e2d5c192bb 100644
--- a/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker U1 (0.6 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker U1 (0.6 nozzle).json
@@ -1,40 +1,31 @@
{
- "type": "process",
- "name": "0.30 Standard @Snapmaker U1 (0.6 nozzle)",
- "inherits": "fdm_process_U1_0.6_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.3",
- "initial_layer_print_height": "0.3",
- "bridge_flow": "1",
- "initial_layer_speed": "35",
- "initial_layer_infill_speed": "55",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "bridge_speed": "30",
- "overhang_3_4_speed": "15",
- "setting_id": "TWxp6qgz1DJa8Ngo",
- "description": "It has a big layer height, and results in apparent layer lines and ordinary printing quality and printing time.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.6 nozzle)"
- ],
- "filter_out_gap_fill": "1",
- "gap_fill_target": "topbottom",
- "internal_bridge_speed": "100%",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "68",
- "seam_gap": "15%",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_threshold_angle": "35",
- "support_type": "tree(auto)"
+ "type": "process",
+ "name": "0.30 Standard @Snapmaker U1 (0.6 nozzle)",
+ "inherits": "fdm_process_U1_0.30_nozzle_0.6",
+ "from": "system",
+ "setting_id": "TWxp6qgz1DJa8Ngo",
+ "instantiation": "true",
+ "description": "It has a big layer height, and results in apparent layer lines and ordinary printing quality and printing time.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "filter_out_gap_fill": "1",
+ "gap_fill_target": "topbottom",
+ "internal_bridge_speed": "100%",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "68",
+ "seam_gap": "15%",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_threshold_angle": "35",
+ "support_type": "tree(auto)"
}
diff --git a/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker U1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker U1 (0.6 nozzle).json
index ce6563d960..c216eb09d2 100644
--- a/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker U1 (0.6 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker U1 (0.6 nozzle).json
@@ -1,42 +1,33 @@
{
- "type": "process",
- "name": "0.30 Strength @Snapmaker U1 (0.6 nozzle)",
- "inherits": "fdm_process_U1_0.6_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.3",
- "initial_layer_print_height": "0.3",
- "bridge_flow": "1",
- "initial_layer_speed": "35",
- "initial_layer_infill_speed": "55",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "bridge_speed": "30",
- "overhang_3_4_speed": "15",
- "setting_id": "CBaL0vgwtgsd6Snj",
- "description": "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.",
- "elefant_foot_compensation": "0.15",
- "sparse_infill_density": "25%",
- "wall_loops": "4",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.6 nozzle)"
- ],
- "filter_out_gap_fill": "1",
- "gap_fill_target": "topbottom",
- "internal_bridge_speed": "100%",
- "prime_tower_width": "30",
- "prime_volume": "68",
- "seam_gap": "15%",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_wall_type": "rib",
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "prime_tower_brim_width": "5",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_type": "tree(auto)",
- "wipe_tower_extra_spacing": "120%"
+ "type": "process",
+ "name": "0.30 Strength @Snapmaker U1 (0.6 nozzle)",
+ "inherits": "fdm_process_U1_0.30_nozzle_0.6",
+ "from": "system",
+ "setting_id": "CBaL0vgwtgsd6Snj",
+ "instantiation": "true",
+ "description": "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.",
+ "elefant_foot_compensation": "0.15",
+ "sparse_infill_density": "25%",
+ "wall_loops": "4",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "filter_out_gap_fill": "1",
+ "gap_fill_target": "topbottom",
+ "internal_bridge_speed": "100%",
+ "prime_tower_width": "30",
+ "prime_volume": "68",
+ "seam_gap": "15%",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_wall_type": "rib",
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "prime_tower_brim_width": "5",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_type": "tree(auto)",
+ "wipe_tower_extra_spacing": "120%"
}
diff --git a/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker U1 (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker U1 (0.8 nozzle).json
index 47ac276acc..d2c20559fd 100644
--- a/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker U1 (0.8 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker U1 (0.8 nozzle).json
@@ -1,44 +1,34 @@
{
- "type": "process",
- "name": "0.32 Standard @Snapmaker U1 (0.8 nozzle)",
- "inherits": "fdm_process_U1_0.8_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.32",
- "initial_layer_print_height": "0.4",
- "bridge_flow": "0.7",
- "top_surface_pattern": "monotonic",
- "initial_layer_speed": "35",
- "initial_layer_infill_speed": "55",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "bridge_speed": "30",
- "overhang_3_4_speed": "25",
- "overhang_4_4_speed": "5",
- "setting_id": "iVRz2B0VBIBL1xVd",
- "description": "Compared with the default profile of a 0.8 mm nozzle, it has a slightly smaller layer height, and results in slightly less but still apparent layer lines and slightly higher printing quality, but longer printing time in some printing cases.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.8 nozzle)"
- ],
- "filter_out_gap_fill": "1",
- "gap_fill_target": "topbottom",
- "internal_bridge_speed": "100%",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "72",
- "seam_gap": "15%",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib",
- "bridge_density": "70%",
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_threshold_angle": "35",
- "support_type": "tree(auto)"
+ "type": "process",
+ "name": "0.32 Standard @Snapmaker U1 (0.8 nozzle)",
+ "inherits": "fdm_process_U1_0.32_nozzle_0.8",
+ "from": "system",
+ "setting_id": "iVRz2B0VBIBL1xVd",
+ "instantiation": "true",
+ "description": "Compared with the default profile of a 0.8 mm nozzle, it has a slightly smaller layer height, and results in slightly less but still apparent layer lines and slightly higher printing quality, but longer printing time in some printing cases.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "filter_out_gap_fill": "1",
+ "gap_fill_target": "topbottom",
+ "internal_bridge_speed": "100%",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "72",
+ "seam_gap": "15%",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib",
+ "bridge_density": "70%",
+ "bridge_flow": "0.7",
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_threshold_angle": "35",
+ "support_type": "tree(auto)"
}
diff --git a/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker U1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker U1 (0.6 nozzle).json
index ddd97a76c3..44ea3bb3f4 100644
--- a/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker U1 (0.6 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker U1 (0.6 nozzle).json
@@ -1,41 +1,32 @@
{
- "type": "process",
- "name": "0.36 Standard @Snapmaker U1 (0.6 nozzle)",
- "inherits": "fdm_process_U1_0.6_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.36",
- "initial_layer_print_height": "0.3",
- "bridge_flow": "1",
- "initial_layer_speed": "35",
- "initial_layer_infill_speed": "55",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "bridge_speed": "30",
- "overhang_3_4_speed": "15",
- "setting_id": "C0PiCFd3P222knX9",
- "description": "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.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.6 nozzle)"
- ],
- "filter_out_gap_fill": "1",
- "gap_fill_target": "topbottom",
- "internal_bridge_speed": "100%",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "81",
- "seam_gap": "15%",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib",
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_threshold_angle": "35",
- "support_type": "tree(auto)"
+ "type": "process",
+ "name": "0.36 Standard @Snapmaker U1 (0.6 nozzle)",
+ "inherits": "fdm_process_U1_0.36_nozzle_0.6",
+ "from": "system",
+ "setting_id": "C0PiCFd3P222knX9",
+ "instantiation": "true",
+ "description": "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.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "filter_out_gap_fill": "1",
+ "gap_fill_target": "topbottom",
+ "internal_bridge_speed": "100%",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "81",
+ "seam_gap": "15%",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib",
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_threshold_angle": "35",
+ "support_type": "tree(auto)"
}
diff --git a/resources/profiles/Snapmaker/process/0.40 Extra Draft @Snapmaker U1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.40 Extra Draft @Snapmaker U1 (0.6 nozzle).json
index 265c91eb35..37238fb0ea 100644
--- a/resources/profiles/Snapmaker/process/0.40 Extra Draft @Snapmaker U1 (0.6 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.40 Extra Draft @Snapmaker U1 (0.6 nozzle).json
@@ -13,6 +13,8 @@
"Snapmaker U1 (0.6 nozzle)"
],
"ooze_prevention": "1",
+ "prime_tower_width": "30",
+ "prime_volume": "90",
"slowdown_for_curled_perimeters": "0",
"standby_temperature_delta": "-150",
"wipe_tower_filament": "0",
diff --git a/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker U1 (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker U1 (0.8 nozzle).json
index 24edfabf6d..8d00eb9fab 100644
--- a/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker U1 (0.8 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker U1 (0.8 nozzle).json
@@ -1,45 +1,35 @@
{
- "type": "process",
- "name": "0.40 Standard @Snapmaker U1 (0.8 nozzle)",
- "inherits": "fdm_process_U1_0.8_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.4",
- "initial_layer_print_height": "0.4",
- "bridge_flow": "0.8",
- "top_surface_pattern": "monotonic",
- "initial_layer_speed": "35",
- "initial_layer_infill_speed": "55",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "bridge_speed": "30",
- "overhang_3_4_speed": "25",
- "overhang_4_4_speed": "5",
- "setting_id": "VqkPgUtZi159BKpJ",
- "description": "It has a very big layer height, and results in very apparent layer lines, low printing quality and general printing time.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.8 nozzle)"
- ],
- "filter_out_gap_fill": "1",
- "gap_fill_target": "topbottom",
- "internal_bridge_speed": "100%",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "90",
- "seam_gap": "15%",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib",
- "bridge_density": "60%",
- "enable_arc_fitting": "0",
- "min_width_top_surface": "200%",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_threshold_angle": "40",
- "support_type": "tree(auto)"
+ "type": "process",
+ "name": "0.40 Standard @Snapmaker U1 (0.8 nozzle)",
+ "inherits": "fdm_process_U1_0.40_nozzle_0.8",
+ "from": "system",
+ "setting_id": "VqkPgUtZi159BKpJ",
+ "instantiation": "true",
+ "description": "It has a very big layer height, and results in very apparent layer lines, low printing quality and general printing time.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "filter_out_gap_fill": "1",
+ "gap_fill_target": "topbottom",
+ "internal_bridge_speed": "100%",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "90",
+ "seam_gap": "15%",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib",
+ "bridge_density": "60%",
+ "bridge_flow": "0.8",
+ "enable_arc_fitting": "0",
+ "min_width_top_surface": "200%",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_threshold_angle": "40",
+ "support_type": "tree(auto)"
}
diff --git a/resources/profiles/Snapmaker/process/0.42 Standard @Snapmaker U1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.42 Standard @Snapmaker U1 (0.6 nozzle).json
index d65ba8e688..d3e4bf7f07 100644
--- a/resources/profiles/Snapmaker/process/0.42 Standard @Snapmaker U1 (0.6 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.42 Standard @Snapmaker U1 (0.6 nozzle).json
@@ -1,41 +1,32 @@
{
- "type": "process",
- "name": "0.42 Standard @Snapmaker U1 (0.6 nozzle)",
- "inherits": "fdm_process_U1_0.6_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.42",
- "initial_layer_print_height": "0.3",
- "bridge_flow": "1",
- "initial_layer_speed": "35",
- "initial_layer_infill_speed": "55",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "bridge_speed": "30",
- "overhang_3_4_speed": "15",
- "setting_id": "SVJzhQA3KQetRZmo",
- "description": "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.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.6 nozzle)"
- ],
- "filter_out_gap_fill": "1",
- "gap_fill_target": "topbottom",
- "internal_bridge_speed": "100%",
- "precise_z_height": "0",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "95",
- "seam_gap": "15%",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib",
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_threshold_angle": "35",
- "support_type": "tree(auto)"
+ "type": "process",
+ "name": "0.42 Standard @Snapmaker U1 (0.6 nozzle)",
+ "inherits": "fdm_process_U1_0.42_nozzle_0.6",
+ "from": "system",
+ "setting_id": "SVJzhQA3KQetRZmo",
+ "instantiation": "true",
+ "description": "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.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.6 nozzle)"
+ ],
+ "filter_out_gap_fill": "1",
+ "gap_fill_target": "topbottom",
+ "internal_bridge_speed": "100%",
+ "precise_z_height": "0",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "95",
+ "seam_gap": "15%",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib",
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_threshold_angle": "35",
+ "support_type": "tree(auto)"
}
diff --git a/resources/profiles/Snapmaker/process/0.48 Standard @Snapmaker U1 (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.48 Standard @Snapmaker U1 (0.8 nozzle).json
index 08e054619e..d6cdf607dd 100644
--- a/resources/profiles/Snapmaker/process/0.48 Standard @Snapmaker U1 (0.8 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.48 Standard @Snapmaker U1 (0.8 nozzle).json
@@ -1,43 +1,32 @@
{
- "type": "process",
- "name": "0.48 Standard @Snapmaker U1 (0.8 nozzle)",
- "inherits": "fdm_process_U1_0.8_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.48",
- "initial_layer_print_height": "0.4",
- "bridge_flow": "1",
- "top_surface_pattern": "monotonic",
- "initial_layer_speed": "35",
- "initial_layer_infill_speed": "55",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "bridge_speed": "30",
- "overhang_3_4_speed": "25",
- "overhang_4_4_speed": "5",
- "setting_id": "5H6JWChFEo3zqoHQ",
- "description": "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.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.8 nozzle)"
- ],
- "filter_out_gap_fill": "1",
- "gap_fill_target": "topbottom",
- "internal_bridge_speed": "100%",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "108",
- "seam_gap": "15%",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib",
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_threshold_angle": "35",
- "support_type": "tree(auto)"
+ "type": "process",
+ "name": "0.48 Standard @Snapmaker U1 (0.8 nozzle)",
+ "inherits": "fdm_process_U1_0.48_nozzle_0.8",
+ "from": "system",
+ "setting_id": "5H6JWChFEo3zqoHQ",
+ "instantiation": "true",
+ "description": "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.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "filter_out_gap_fill": "1",
+ "gap_fill_target": "topbottom",
+ "internal_bridge_speed": "100%",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "108",
+ "seam_gap": "15%",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib",
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_threshold_angle": "35",
+ "support_type": "tree(auto)"
}
diff --git a/resources/profiles/Snapmaker/process/0.56 Standard @Snapmaker U1 (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.56 Standard @Snapmaker U1 (0.8 nozzle).json
index 86b571d1f5..9f67114c20 100644
--- a/resources/profiles/Snapmaker/process/0.56 Standard @Snapmaker U1 (0.8 nozzle).json
+++ b/resources/profiles/Snapmaker/process/0.56 Standard @Snapmaker U1 (0.8 nozzle).json
@@ -1,41 +1,31 @@
{
- "type": "process",
- "name": "0.56 Standard @Snapmaker U1 (0.8 nozzle)",
- "inherits": "fdm_process_U1_0.8_common",
- "from": "system",
- "instantiation": "true",
- "layer_height": "0.56",
- "initial_layer_print_height": "0.4",
- "bridge_flow": "1",
- "top_surface_pattern": "monotonic",
- "initial_layer_speed": "35",
- "initial_layer_infill_speed": "55",
- "sparse_infill_speed": "100",
- "top_surface_speed": "150",
- "bridge_speed": "30",
- "overhang_3_4_speed": "25",
- "overhang_4_4_speed": "5",
- "setting_id": "JZEIXOUT33c7MrZj",
- "description": "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.",
- "elefant_foot_compensation": "0.15",
- "smooth_coefficient": "150",
- "overhang_totally_speed": "50",
- "compatible_printers": [
- "Snapmaker U1 (0.8 nozzle)"
- ],
- "filter_out_gap_fill": "1",
- "gap_fill_target": "topbottom",
- "prime_tower_brim_width": "5",
- "prime_tower_width": "30",
- "prime_volume": "126",
- "wipe_tower_extra_rib_length": "8",
- "wipe_tower_extra_spacing": "120%",
- "wipe_tower_wall_type": "rib",
- "enable_arc_fitting": "0",
- "ooze_prevention": "1",
- "precise_outer_wall": "0",
- "slowdown_for_curled_perimeters": "0",
- "standby_temperature_delta": "-150",
- "support_threshold_angle": "35",
- "support_type": "tree(auto)"
+ "type": "process",
+ "name": "0.56 Standard @Snapmaker U1 (0.8 nozzle)",
+ "inherits": "fdm_process_U1_0.56_nozzle_0.8",
+ "from": "system",
+ "setting_id": "JZEIXOUT33c7MrZj",
+ "instantiation": "true",
+ "description": "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.",
+ "elefant_foot_compensation": "0.15",
+ "smooth_coefficient": "150",
+ "overhang_totally_speed": "50",
+ "compatible_printers": [
+ "Snapmaker U1 (0.8 nozzle)"
+ ],
+ "filter_out_gap_fill": "1",
+ "gap_fill_target": "topbottom",
+ "layer_height": "0.56",
+ "prime_tower_brim_width": "5",
+ "prime_tower_width": "30",
+ "prime_volume": "126",
+ "wipe_tower_extra_rib_length": "8",
+ "wipe_tower_extra_spacing": "120%",
+ "wipe_tower_wall_type": "rib",
+ "enable_arc_fitting": "0",
+ "ooze_prevention": "1",
+ "precise_outer_wall": "1",
+ "slowdown_for_curled_perimeters": "0",
+ "standby_temperature_delta": "-150",
+ "support_threshold_angle": "35",
+ "support_type": "tree(auto)"
}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1.json b/resources/profiles/Snapmaker/process/fdm_process_U1.json
index 5d89a91866..72dab0c16b 100644
--- a/resources/profiles/Snapmaker/process/fdm_process_U1.json
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1.json
@@ -33,7 +33,6 @@
"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",
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.06_nozzle_0.2.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.06_nozzle_0.2.json
new file mode 100644
index 0000000000..240fd4f425
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.06_nozzle_0.2.json
@@ -0,0 +1,27 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.06_nozzle_0.2",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "40",
+ "initial_layer_infill_speed": "70",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "support_top_z_distance": "0.06",
+ "support_bottom_z_distance": "0.06"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.08_nozzle_0.2.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.08_nozzle_0.2.json
new file mode 100644
index 0000000000..41a824fa3a
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.08_nozzle_0.2.json
@@ -0,0 +1,27 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.08_nozzle_0.2",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "40",
+ "initial_layer_infill_speed": "70",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "support_top_z_distance": "0.08",
+ "support_bottom_z_distance": "0.08"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.10_nozzle_0.2.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.10_nozzle_0.2.json
new file mode 100644
index 0000000000..5ca58d7bd1
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.10_nozzle_0.2.json
@@ -0,0 +1,27 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.10_nozzle_0.2",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "40",
+ "initial_layer_infill_speed": "70",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "support_top_z_distance": "0.1",
+ "support_bottom_z_distance": "0.1"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.12_nozzle_0.2.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.12_nozzle_0.2.json
new file mode 100644
index 0000000000..8c70dd9dee
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.12_nozzle_0.2.json
@@ -0,0 +1,27 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.12_nozzle_0.2",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "40",
+ "initial_layer_infill_speed": "70",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "support_top_z_distance": "0.12",
+ "support_bottom_z_distance": "0.12"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.14_nozzle_0.2.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.14_nozzle_0.2.json
new file mode 100644
index 0000000000..1ac42c9ffa
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.14_nozzle_0.2.json
@@ -0,0 +1,27 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.14_nozzle_0.2",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "40",
+ "initial_layer_infill_speed": "70",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "support_top_z_distance": "0.14",
+ "support_bottom_z_distance": "0.14"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.18_nozzle_0.6.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.18_nozzle_0.6.json
new file mode 100644
index 0000000000..f4725a73c7
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.18_nozzle_0.6.json
@@ -0,0 +1,26 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.18_nozzle_0.6",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "35",
+ "initial_layer_infill_speed": "55",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "bridge_speed": "30",
+ "overhang_3_4_speed": "15",
+ "support_top_z_distance": "0.18",
+ "support_bottom_z_distance": "0.18"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.24_nozzle_0.6.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.24_nozzle_0.6.json
new file mode 100644
index 0000000000..a014a375b3
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.24_nozzle_0.6.json
@@ -0,0 +1,24 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.24_nozzle_0.6",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "35",
+ "initial_layer_infill_speed": "55",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "bridge_speed": "30",
+ "overhang_3_4_speed": "15"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.24_nozzle_0.8.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.24_nozzle_0.8.json
new file mode 100644
index 0000000000..e958e9a2ee
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.24_nozzle_0.8.json
@@ -0,0 +1,26 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.24_nozzle_0.8",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "35",
+ "initial_layer_infill_speed": "55",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "bridge_speed": "30",
+ "overhang_3_4_speed": "25",
+ "overhang_4_4_speed": "5"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.30_nozzle_0.6.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.30_nozzle_0.6.json
new file mode 100644
index 0000000000..a44a9ca05a
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.30_nozzle_0.6.json
@@ -0,0 +1,24 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.30_nozzle_0.6",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "35",
+ "initial_layer_infill_speed": "55",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "bridge_speed": "30",
+ "overhang_3_4_speed": "15"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.32_nozzle_0.8.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.32_nozzle_0.8.json
new file mode 100644
index 0000000000..67d9ecdb62
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.32_nozzle_0.8.json
@@ -0,0 +1,26 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.32_nozzle_0.8",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "35",
+ "initial_layer_infill_speed": "55",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "bridge_speed": "30",
+ "overhang_3_4_speed": "25",
+ "overhang_4_4_speed": "5"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.36_nozzle_0.6.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.36_nozzle_0.6.json
new file mode 100644
index 0000000000..314965b603
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.36_nozzle_0.6.json
@@ -0,0 +1,24 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.36_nozzle_0.6",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "35",
+ "initial_layer_infill_speed": "55",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "bridge_speed": "30",
+ "overhang_3_4_speed": "15"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.40_nozzle_0.8.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.40_nozzle_0.8.json
new file mode 100644
index 0000000000..ec19b56fa5
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.40_nozzle_0.8.json
@@ -0,0 +1,26 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.40_nozzle_0.8",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "35",
+ "initial_layer_infill_speed": "55",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "bridge_speed": "30",
+ "overhang_3_4_speed": "25",
+ "overhang_4_4_speed": "5"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.42_nozzle_0.6.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.42_nozzle_0.6.json
new file mode 100644
index 0000000000..18c1e7d79b
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.42_nozzle_0.6.json
@@ -0,0 +1,24 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.42_nozzle_0.6",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "35",
+ "initial_layer_infill_speed": "55",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "bridge_speed": "30",
+ "overhang_3_4_speed": "15"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.48_nozzle_0.8.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.48_nozzle_0.8.json
new file mode 100644
index 0000000000..8d5632b790
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.48_nozzle_0.8.json
@@ -0,0 +1,26 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.48_nozzle_0.8",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "35",
+ "initial_layer_infill_speed": "55",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "bridge_speed": "30",
+ "overhang_3_4_speed": "25",
+ "overhang_4_4_speed": "5"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.56_nozzle_0.8.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.56_nozzle_0.8.json
new file mode 100644
index 0000000000..7a5c92932d
--- /dev/null
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.56_nozzle_0.8.json
@@ -0,0 +1,26 @@
+{
+ "type": "process",
+ "name": "fdm_process_U1_0.56_nozzle_0.8",
+ "inherits": "fdm_process_U1_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",
+ "initial_layer_speed": "35",
+ "initial_layer_infill_speed": "55",
+ "sparse_infill_speed": "100",
+ "top_surface_speed": "150",
+ "bridge_speed": "30",
+ "overhang_3_4_speed": "25",
+ "overhang_4_4_speed": "5"
+}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_0.6_common.json b/resources/profiles/Snapmaker/process/fdm_process_U1_0.6_common.json
index 93119a9370..40ea900ba2 100644
--- a/resources/profiles/Snapmaker/process/fdm_process_U1_0.6_common.json
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_0.6_common.json
@@ -7,7 +7,7 @@
"line_width": "0.62",
"outer_wall_line_width": "0.62",
"inner_wall_line_width": "0.62",
- "initial_layer_line_width": "0.72",
+ "initial_layer_line_width": "0.62",
"sparse_infill_line_width": "0.62",
"internal_solid_infill_line_width": "0.62",
"support_line_width": "0.62",
diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_common.json b/resources/profiles/Snapmaker/process/fdm_process_U1_common.json
index 0af8c229a7..462ddb53ae 100644
--- a/resources/profiles/Snapmaker/process/fdm_process_U1_common.json
+++ b/resources/profiles/Snapmaker/process/fdm_process_U1_common.json
@@ -13,8 +13,7 @@
"compatible_printers_condition": "",
"draft_shield": "disabled",
"elefant_foot_compensation": "0",
- "enable_arc_fitting": "1",
- "exclude_object": "1",
+ "enable_arc_fitting": "0",
"outer_wall_acceleration": "5000",
"wall_infill_order": "inner wall/outer wall/infill",
"line_width": "0.42",
@@ -46,7 +45,7 @@
"internal_solid_infill_speed": "150",
"initial_layer_infill_speed": "60",
"resolution": "0.012",
- "support_type": "normal(auto)",
+ "support_type": "tree(auto)",
"support_style": "default",
"support_top_z_distance": "0.2",
"support_bottom_z_distance": "0.2",
@@ -68,11 +67,9 @@
"travel_speed": "500",
"enable_prime_tower": "1",
"wipe_tower_no_sparse_layers": "0",
- "wipe_tower_cone_angle": "30",
- "wipe_tower_wall_type": "rib",
- "wipe_tower_extra_rib_length": "0",
"prime_tower_width": "35",
- "prime_volume": "30",
"wall_generator": "arachne",
- "compatible_printers": []
+ "compatible_printers": [],
+ "wipe_tower_extra_rib_length": "8",
+ "exclude_object": "1"
}
diff --git a/resources/profiles/Snapmaker/process/fdm_process_a400.json b/resources/profiles/Snapmaker/process/fdm_process_a400.json
index 39e7565f0b..f8ca481f9f 100644
--- a/resources/profiles/Snapmaker/process/fdm_process_a400.json
+++ b/resources/profiles/Snapmaker/process/fdm_process_a400.json
@@ -5,7 +5,7 @@
"from": "system",
"instantiation": "false",
"initial_layer_print_height": "0.2",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"initial_layer_infill_speed": "75",
"outer_wall_speed": "100",
"inner_wall_speed": "160",
diff --git a/resources/profiles/Snapmaker/process/fdm_process_common.json b/resources/profiles/Snapmaker/process/fdm_process_common.json
index 6fb4fa2de4..458a0f6162 100644
--- a/resources/profiles/Snapmaker/process/fdm_process_common.json
+++ b/resources/profiles/Snapmaker/process/fdm_process_common.json
@@ -110,7 +110,7 @@
"top_surface_jerk": "2",
"travel_jerk": "4",
"enable_support": "0",
- "support_type": "normal(auto)",
+ "support_type": "tree(auto)",
"support_style": "snug",
"support_threshold_angle": "30",
"support_on_build_plate_only": "1",
diff --git a/resources/profiles/Snapmaker/process/fdm_process_idex.json b/resources/profiles/Snapmaker/process/fdm_process_idex.json
index 7e04710bd3..6aeabfdaa7 100644
--- a/resources/profiles/Snapmaker/process/fdm_process_idex.json
+++ b/resources/profiles/Snapmaker/process/fdm_process_idex.json
@@ -5,7 +5,7 @@
"from": "system",
"instantiation": "false",
"initial_layer_print_height": "0.2",
- "enable_arc_fitting": "1",
+ "enable_arc_fitting": "0",
"initial_layer_infill_speed": "75",
"outer_wall_speed": "120",
"inner_wall_speed": "250",
diff --git a/resources/profiles/Voron/machine/fdm_klipper_common.json b/resources/profiles/Voron/machine/fdm_klipper_common.json
index 4d40f3d168..b4ffd1a4bb 100644
--- a/resources/profiles/Voron/machine/fdm_klipper_common.json
+++ b/resources/profiles/Voron/machine/fdm_klipper_common.json
@@ -116,7 +116,7 @@
"deretraction_speed": [
"30"
],
- "z_hop_types": "Normal Lift",
+ "z_hop_types": "Slope Lift",
"silent_mode": "0",
"single_extruder_multi_material": "1",
"change_filament_gcode": "",
diff --git a/resources/profiles/re3D.json b/resources/profiles/re3D.json
index e0acc669d0..94cca3c2ef 100644
--- a/resources/profiles/re3D.json
+++ b/resources/profiles/re3D.json
@@ -1,214 +1,219 @@
{
- "name": "re3D",
- "version": "02.04.00.03",
- "force_update": "0",
- "description": "re3D configurations",
- "machine_model_list": [
- {
- "name": "re3D Gigabot 4",
- "sub_path": "machine/re3D Gigabot 4.json"
- },
- {
- "name": "re3D Gigabot 4 XLT",
- "sub_path": "machine/re3D Gigabot 4 XLT.json"
- },
- {
- "name": "re3D GigabotX 2",
- "sub_path": "machine/re3D GigabotX 2.json"
- },
- {
- "name": "re3D GigabotX 2 XLT",
- "sub_path": "machine/re3D GigabotX 2 XLT.json"
- },
- {
- "name": "re3D Terabot 4",
- "sub_path": "machine/re3D Terabot 4.json"
- },
- {
- "name": "re3D TerabotX 2",
- "sub_path": "machine/re3D TerabotX 2.json"
- }
- ],
- "process_list": [
- {
- "name": "fdm_process_common",
- "sub_path": "process/fdm_process_common.json"
- },
- {
- "name": "fdm_process_re3D_common",
- "sub_path": "process/fdm_process_re3D_common.json"
- },
- {
- "name": "fgf_process_re3D_common",
- "sub_path": "process/fgf_process_re3D_common.json"
- },
- {
- "name": "0.2 Fine",
- "sub_path": "process/0.2mm Fine @re3D fdm 0.4.json"
- },
- {
- "name": "0.26 Standard",
- "sub_path": "process/0.26mm Standard @re3D fdm 0.4.json"
- },
- {
- "name": "0.3 Fine",
- "sub_path": "process/0.3mm Fine @re3D fdm 0.8.json"
- },
- {
- "name": "0.32 Draft",
- "sub_path": "process/0.32mm Draft @re3D fdm 0.4.json"
- },
- {
- "name": "0.4 Standard",
- "sub_path": "process/0.4mm Draft @re3D fdm 0.8.json"
- },
- {
- "name": "0.6 Standard",
- "sub_path": "process/0.6mm Standard @re3D fgf 0.8.json"
- },
- {
- "name": "1.0 Standard",
- "sub_path": "process/1.0mm Standard @re3D fgf 1.75.json"
- }
- ],
- "filament_list": [
- {
- "name": "fdm_filament_common",
- "sub_path": "filament/fdm_filament_common.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_pla",
- "sub_path": "filament/fdm_filament_pla.json"
- },
- {
- "name": "re3D PC",
- "sub_path": "filament/re3D PC.json"
- },
- {
- "name": "re3D PC @0.4 nozzle",
- "sub_path": "filament/re3D PC @0.4 nozzle.json"
- },
- {
- "name": "re3D PC @0.8 nozzle",
- "sub_path": "filament/re3D PC @0.8 nozzle.json"
- },
- {
- "name": "re3D Greengate rPETG",
- "sub_path": "filament/re3D Greengate rPETG.json"
- },
- {
- "name": "re3D Greengate rPETG @0.8 nozzle",
- "sub_path": "filament/re3D Greengate rPETG @0.8 nozzle.json"
- },
- {
- "name": "re3D Greengate rPETG @1.75 nozzle",
- "sub_path": "filament/re3D Greengate rPETG @1.75 nozzle.json"
- },
- {
- "name": "re3D PETG",
- "sub_path": "filament/re3D PETG.json"
- },
- {
- "name": "re3D PETG @0.4 nozzle",
- "sub_path": "filament/re3D PETG @0.4 nozzle.json"
- },
- {
- "name": "re3D PETG @0.8 nozzle",
- "sub_path": "filament/re3D PETG @0.8 nozzle.json"
- },
- {
- "name": "re3D rPP",
- "sub_path": "filament/re3D rPP.json"
- },
- {
- "name": "re3D rPP @0.8 nozzle",
- "sub_path": "filament/re3D rPP @0.8 nozzle.json"
- },
- {
- "name": "re3D rPP @1.75 nozzle",
- "sub_path": "filament/re3D rPP @1.75 nozzle.json"
- },
- {
- "name": "re3D PLA",
- "sub_path": "filament/re3D PLA.json"
- },
- {
- "name": "re3D PLA @0.4 nozzle",
- "sub_path": "filament/re3D PLA @0.4 nozzle.json"
- },
- {
- "name": "re3D PLA @0.8 nozzle",
- "sub_path": "filament/re3D PLA @0.8 nozzle.json"
- }
- ],
- "machine_list": [
- {
- "name": "fdm_machine_common",
- "sub_path": "machine/fdm_machine_common.json"
- },
- {
- "name": "fdm_re3D_common",
- "sub_path": "machine/fdm_re3D_common.json"
- },
- {
- "name": "fgf_re3D_common",
- "sub_path": "machine/fgf_re3D_common.json"
- },
- {
- "name": "re3D Gigabot 4 0.4 nozzle",
- "sub_path": "machine/re3D Gigabot 4 0.4 nozzle.json"
- },
- {
- "name": "re3D Gigabot 4 0.8 nozzle",
- "sub_path": "machine/re3D Gigabot 4 0.8 nozzle.json"
- },
- {
- "name": "re3D Gigabot 4 XLT 0.4 nozzle",
- "sub_path": "machine/re3D Gigabot 4 XLT 0.4 nozzle.json"
- },
- {
- "name": "re3D Gigabot 4 XLT 0.8 nozzle",
- "sub_path": "machine/re3D Gigabot 4 XLT 0.8 nozzle.json"
- },
- {
- "name": "re3D Terabot 4 0.4 nozzle",
- "sub_path": "machine/re3D Terabot 4 0.4 nozzle.json"
- },
- {
- "name": "re3D Terabot 4 0.8 nozzle",
- "sub_path": "machine/re3D Terabot 4 0.8 nozzle.json"
- },
- {
- "name": "re3D GigabotX 2 0.8 nozzle",
- "sub_path": "machine/re3D GigabotX 2 0.8 nozzle.json"
- },
- {
- "name": "re3D GigabotX 2 1.75 nozzle",
- "sub_path": "machine/re3D GigabotX 2 1.75 nozzle.json"
- },
- {
- "name": "re3D GigabotX 2 XLT 0.8 nozzle",
- "sub_path": "machine/re3D GigabotX 2 XLT 0.8 nozzle.json"
- },
- {
- "name": "re3D GigabotX 2 XLT 1.75 nozzle",
- "sub_path": "machine/re3D GigabotX 2 XLT 1.75 nozzle.json"
- },
- {
- "name": "re3D TerabotX 2 0.8 nozzle",
- "sub_path": "machine/re3D TerabotX 2 0.8 nozzle.json"
- },
- {
- "name": "re3D TerabotX 2 1.75 nozzle",
- "sub_path": "machine/re3D TerabotX 2 1.75 nozzle.json"
- }
- ]
-}
+ "name": "re3D",
+ "url": "",
+ "version": "03.00.08",
+ "force_update": "0",
+ "description": "re3D configurations",
+ "machine_model_list": [
+ {
+ "name": "re3D Gigabot 4",
+ "sub_path": "machine/re3D Gigabot 4.json"
+ },
+ {
+ "name": "re3D Gigabot 4 XLT",
+ "sub_path": "machine/re3D Gigabot 4 XLT.json"
+ },
+ {
+ "name": "re3D GigabotX 2",
+ "sub_path": "machine/re3D GigabotX 2.json"
+ },
+ {
+ "name": "re3D GigabotX 2 XLT",
+ "sub_path": "machine/re3D GigabotX 2 XLT.json"
+ },
+ {
+ "name": "re3D Terabot 4",
+ "sub_path": "machine/re3D Terabot 4.json"
+ },
+ {
+ "name": "re3D TerabotX 2",
+ "sub_path": "machine/re3D TerabotX 2.json"
+ }
+ ],
+ "process_list": [
+ {
+ "name": "fdm_process_common",
+ "sub_path": "process/fdm_process_common.json"
+ },
+ {
+ "name": "fdm_process_re3D_common",
+ "sub_path": "process/fdm_process_re3D_common.json"
+ },
+ {
+ "name": "fgf_process_re3D_common",
+ "sub_path": "process/fgf_process_re3D_common.json"
+ },
+ {
+ "name": "0.2 Fine",
+ "sub_path": "process/0.2mm Fine @re3D fdm 0.4.json"
+ },
+ {
+ "name": "0.26 Standard",
+ "sub_path": "process/0.26mm Standard @re3D fdm 0.4.json"
+ },
+ {
+ "name": "0.32 Draft",
+ "sub_path": "process/0.32mm Draft @re3D fdm 0.4.json"
+ },
+ {
+ "name": "0.3 Fine",
+ "sub_path": "process/0.3mm Fine @re3D fdm 0.8.json"
+ },
+ {
+ "name": "0.4 Standard",
+ "sub_path": "process/0.4mm Draft @re3D fdm 0.8.json"
+ },
+ {
+ "name": "1.0 Standard",
+ "sub_path": "process/1.0mm Standard @re3D fgf 1.75.json"
+ },
+ {
+ "name": "0.6 Standard",
+ "sub_path": "process/0.6mm Standard @re3D fgf 0.8.json"
+ }
+ ],
+ "filament_list": [
+ {
+ "name": "fdm_filament_common",
+ "sub_path": "filament/fdm_filament_common.json"
+ },
+ {
+ "name": "fdm_filament_pla",
+ "sub_path": "filament/fdm_filament_pla.json"
+ },
+ {
+ "name": "fdm_filament_pet",
+ "sub_path": "filament/fdm_filament_pet.json"
+ },
+ {
+ "name": "fdm_filament_pp",
+ "sub_path": "filament/fdm_filament_pp.json"
+ },
+ {
+ "name": "fdm_filament_pc",
+ "sub_path": "filament/fdm_filament_pc.json"
+ },
+ {
+ "name": "re3D PLA",
+ "sub_path": "filament/re3D PLA.json"
+ },
+ {
+ "name": "re3D PETG",
+ "sub_path": "filament/re3D PETG.json"
+ },
+ {
+ "name": "re3D PC",
+ "sub_path": "filament/re3D PC.json"
+ },
+ {
+ "name": "re3D rPETG",
+ "sub_path": "filament/re3D rPETG.json"
+ },
+ {
+ "name": "re3D rPP",
+ "sub_path": "filament/re3D rPP.json"
+ },
+ {
+ "name": "re3D PLA @0.4 nozzle",
+ "sub_path": "filament/re3D PLA @0.4 nozzle.json"
+ },
+ {
+ "name": "re3D PLA @0.8 nozzle",
+ "sub_path": "filament/re3D PLA @0.8 nozzle.json"
+ },
+ {
+ "name": "re3D PETG @0.4 nozzle",
+ "sub_path": "filament/re3D PETG @0.4 nozzle.json"
+ },
+ {
+ "name": "re3D PETG @0.8 nozzle",
+ "sub_path": "filament/re3D PETG @0.8 nozzle.json"
+ },
+ {
+ "name": "re3D PC @0.4 nozzle",
+ "sub_path": "filament/re3D PC @0.4 nozzle.json"
+ },
+ {
+ "name": "re3D PC @0.8 nozzle",
+ "sub_path": "filament/re3D PC @0.8 nozzle.json"
+ },
+ {
+ "name": "re3D rPETG @0.8 nozzle",
+ "sub_path": "filament/re3D rPETG @0.8 nozzle.json"
+ },
+ {
+ "name": "re3D rPETG @1.75 nozzle",
+ "sub_path": "filament/re3D rPETG @1.75 nozzle.json"
+ },
+ {
+ "name": "re3D rPP @0.8 nozzle",
+ "sub_path": "filament/re3D rPP @0.8 nozzle.json"
+ },
+ {
+ "name": "re3D rPP @1.75 nozzle",
+ "sub_path": "filament/re3D rPP @1.75 nozzle.json"
+ }
+ ],
+ "machine_list": [
+ {
+ "name": "fdm_machine_common",
+ "sub_path": "machine/fdm_machine_common.json"
+ },
+ {
+ "name": "fdm_re3D_common",
+ "sub_path": "machine/fdm_re3D_common.json"
+ },
+ {
+ "name": "fgf_re3D_common",
+ "sub_path": "machine/fgf_re3D_common.json"
+ },
+ {
+ "name": "re3D Gigabot 4 0.4 nozzle",
+ "sub_path": "machine/re3D Gigabot 4 0.4 nozzle.json"
+ },
+ {
+ "name": "re3D Gigabot 4 0.8 nozzle",
+ "sub_path": "machine/re3D Gigabot 4 0.8 nozzle.json"
+ },
+ {
+ "name": "re3D Gigabot 4 XLT 0.4 nozzle",
+ "sub_path": "machine/re3D Gigabot 4 XLT 0.4 nozzle.json"
+ },
+ {
+ "name": "re3D Gigabot 4 XLT 0.8 nozzle",
+ "sub_path": "machine/re3D Gigabot 4 XLT 0.8 nozzle.json"
+ },
+ {
+ "name": "re3D GigabotX 2 0.8 nozzle",
+ "sub_path": "machine/re3D GigabotX 2 0.8 nozzle.json"
+ },
+ {
+ "name": "re3D GigabotX 2 1.75 nozzle",
+ "sub_path": "machine/re3D GigabotX 2 1.75 nozzle.json"
+ },
+ {
+ "name": "re3D GigabotX 2 XLT 0.8 nozzle",
+ "sub_path": "machine/re3D GigabotX 2 XLT 0.8 nozzle.json"
+ },
+ {
+ "name": "re3D GigabotX 2 XLT 1.75 nozzle",
+ "sub_path": "machine/re3D GigabotX 2 XLT 1.75 nozzle.json"
+ },
+ {
+ "name": "re3D Terabot 4 0.4 nozzle",
+ "sub_path": "machine/re3D Terabot 4 0.4 nozzle.json"
+ },
+ {
+ "name": "re3D Terabot 4 0.8 nozzle",
+ "sub_path": "machine/re3D Terabot 4 0.8 nozzle.json"
+ },
+ {
+ "name": "re3D TerabotX 2 0.8 nozzle",
+ "sub_path": "machine/re3D TerabotX 2 0.8 nozzle.json"
+ },
+ {
+ "name": "re3D TerabotX 2 1.75 nozzle",
+ "sub_path": "machine/re3D TerabotX 2 1.75 nozzle.json"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/re3D/filament/fdm_filament_pp.json b/resources/profiles/re3D/filament/fdm_filament_pp.json
new file mode 100644
index 0000000000..16a1c9705d
--- /dev/null
+++ b/resources/profiles/re3D/filament/fdm_filament_pp.json
@@ -0,0 +1,10 @@
+{
+ "type": "filament",
+ "name": "fdm_filament_pp",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_filament_common",
+ "filament_type": [
+ "PP"
+ ]
+}
\ No newline at end of file
diff --git a/resources/profiles/re3D/filament/re3D PC @0.4 nozzle.json b/resources/profiles/re3D/filament/re3D PC @0.4 nozzle.json
index 47a3a44f34..d3ec58f07c 100644
--- a/resources/profiles/re3D/filament/re3D PC @0.4 nozzle.json
+++ b/resources/profiles/re3D/filament/re3D PC @0.4 nozzle.json
@@ -9,6 +9,9 @@
"filament_settings_id": [
"re3D PC @0.4 nozzle"
],
+ "filament_type": [
+ "PC"
+ ],
"compatible_printers": [
"re3D Gigabot 4 0.4 nozzle",
"re3D Gigabot 4 XLT 0.4 nozzle",
diff --git a/resources/profiles/re3D/filament/re3D PC @0.8 nozzle.json b/resources/profiles/re3D/filament/re3D PC @0.8 nozzle.json
index c1f329f295..2f4f743d07 100644
--- a/resources/profiles/re3D/filament/re3D PC @0.8 nozzle.json
+++ b/resources/profiles/re3D/filament/re3D PC @0.8 nozzle.json
@@ -9,6 +9,9 @@
"filament_settings_id": [
"re3D PC @0.8 nozzle"
],
+ "filament_type": [
+ "PC"
+ ],
"compatible_printers": [
"re3D Gigabot 4 0.8 nozzle",
"re3D Gigabot 4 XLT 0.8 nozzle",
diff --git a/resources/profiles/re3D/filament/re3D PETG @0.4 nozzle.json b/resources/profiles/re3D/filament/re3D PETG @0.4 nozzle.json
index c275a7517f..d85397a1c0 100644
--- a/resources/profiles/re3D/filament/re3D PETG @0.4 nozzle.json
+++ b/resources/profiles/re3D/filament/re3D PETG @0.4 nozzle.json
@@ -17,6 +17,9 @@
"filament_vendor": [
"re3D"
],
+ "filament_type": [
+ "PETG"
+ ],
"close_fan_the_first_x_layers": [
"2"
],
diff --git a/resources/profiles/re3D/filament/re3D PETG @0.8 nozzle.json b/resources/profiles/re3D/filament/re3D PETG @0.8 nozzle.json
index 148f6540fe..c45d4a84e5 100644
--- a/resources/profiles/re3D/filament/re3D PETG @0.8 nozzle.json
+++ b/resources/profiles/re3D/filament/re3D PETG @0.8 nozzle.json
@@ -14,6 +14,9 @@
"re3D Gigabot 4 XLT 0.8 nozzle",
"re3D Terabot 4 0.8 nozzle"
],
+ "filament_type": [
+ "PETG"
+ ],
"filament_vendor": [
"re3D"
],
diff --git a/resources/profiles/re3D/filament/re3D PLA @0.4 nozzle.json b/resources/profiles/re3D/filament/re3D PLA @0.4 nozzle.json
index 1719807f7f..a3630d0111 100644
--- a/resources/profiles/re3D/filament/re3D PLA @0.4 nozzle.json
+++ b/resources/profiles/re3D/filament/re3D PLA @0.4 nozzle.json
@@ -9,6 +9,9 @@
"filament_settings_id": [
"re3D PLA @0.4 nozzle"
],
+ "filament_type": [
+ "PLA"
+ ],
"compatible_printers": [
"re3D Gigabot 4 0.4 nozzle",
"re3D Gigabot 4 XLT 0.4 nozzle",
diff --git a/resources/profiles/re3D/filament/re3D PLA @0.8 nozzle.json b/resources/profiles/re3D/filament/re3D PLA @0.8 nozzle.json
index 01e7abbc9a..002e18f67c 100644
--- a/resources/profiles/re3D/filament/re3D PLA @0.8 nozzle.json
+++ b/resources/profiles/re3D/filament/re3D PLA @0.8 nozzle.json
@@ -9,6 +9,9 @@
"filament_settings_id": [
"re3D PLA @0.8 nozzle"
],
+ "filament_type": [
+ "PLA"
+ ],
"compatible_printers": [
"re3D Gigabot 4 0.8 nozzle",
"re3D Gigabot 4 XLT 0.8 nozzle",
diff --git a/resources/profiles/re3D/filament/re3D Greengate rPETG @0.8 nozzle.json b/resources/profiles/re3D/filament/re3D rPETG @0.8 nozzle.json
similarity index 89%
rename from resources/profiles/re3D/filament/re3D Greengate rPETG @0.8 nozzle.json
rename to resources/profiles/re3D/filament/re3D rPETG @0.8 nozzle.json
index 028bf042bb..0ac0d012f5 100644
--- a/resources/profiles/re3D/filament/re3D Greengate rPETG @0.8 nozzle.json
+++ b/resources/profiles/re3D/filament/re3D rPETG @0.8 nozzle.json
@@ -1,14 +1,21 @@
{
"type": "filament",
"filament_id": "GFG01",
- "setting_id": "fRX555Prkdu5ESIp",
- "name": "re3D Greengate rPETG @0.8 nozzle",
+ "setting_id": "WlELqPVnuL7DaTxs",
+ "name": "re3D rPETG @0.8 nozzle",
"from": "system",
+ "renamed_from": "re3D Greengate rPETG @0.8 nozzle",
"instantiation": "true",
"inherits": "fdm_filament_pet",
"nozzle_temperature_initial_layer": [
"0"
],
+ "filament_type": [
+ "PETG"
+ ],
+ "filament_vendor": [
+ "re3D"
+ ],
"nozzle_temperature": [
"0"
],
diff --git a/resources/profiles/re3D/filament/re3D Greengate rPETG @1.75 nozzle.json b/resources/profiles/re3D/filament/re3D rPETG @1.75 nozzle.json
similarity index 89%
rename from resources/profiles/re3D/filament/re3D Greengate rPETG @1.75 nozzle.json
rename to resources/profiles/re3D/filament/re3D rPETG @1.75 nozzle.json
index 5ae3d832ff..8cd090fc06 100644
--- a/resources/profiles/re3D/filament/re3D Greengate rPETG @1.75 nozzle.json
+++ b/resources/profiles/re3D/filament/re3D rPETG @1.75 nozzle.json
@@ -1,14 +1,21 @@
{
"type": "filament",
"filament_id": "GFG01",
- "setting_id": "6aPU6CYS2cmODkok",
- "name": "re3D Greengate rPETG @1.75 nozzle",
+ "setting_id": "sHzO2S3mmE6Iqs2O",
+ "name": "re3D rPETG @1.75 nozzle",
"from": "system",
+ "renamed_from": "re3D Greengate rPETG @1.75 nozzle",
"instantiation": "true",
"inherits": "fdm_filament_pet",
"nozzle_temperature_initial_layer": [
"0"
],
+ "filament_type": [
+ "PETG"
+ ],
+ "filament_vendor": [
+ "re3D"
+ ],
"nozzle_temperature": [
"0"
],
diff --git a/resources/profiles/re3D/filament/re3D Greengate rPETG.json b/resources/profiles/re3D/filament/re3D rPETG.json
similarity index 78%
rename from resources/profiles/re3D/filament/re3D Greengate rPETG.json
rename to resources/profiles/re3D/filament/re3D rPETG.json
index de56af4f02..fe19f12539 100644
--- a/resources/profiles/re3D/filament/re3D Greengate rPETG.json
+++ b/resources/profiles/re3D/filament/re3D rPETG.json
@@ -1,13 +1,14 @@
{
"type": "filament",
- "name": "re3D Greengate rPETG",
+ "name": "re3D rPETG",
"from": "system",
+ "renamed_from": "re3D Greengate rPETG",
"instantiation": "true",
"inherits": "fdm_filament_pet",
"filament_id": "GFG01",
- "setting_id": "SdugLw5oy9GB7NID",
+ "setting_id": "6aESuJ2S2Kogd4Lq",
"filament_settings_id": [
- "re3D Greengate rPETG"
+ "re3D rPETG"
],
"compatible_printers": [
"re3D GigabotX 2 0.8 nozzle",
diff --git a/resources/profiles/re3D/filament/re3D rPP @0.8 nozzle.json b/resources/profiles/re3D/filament/re3D rPP @0.8 nozzle.json
index a49f19e128..5f5467e86d 100644
--- a/resources/profiles/re3D/filament/re3D rPP @0.8 nozzle.json
+++ b/resources/profiles/re3D/filament/re3D rPP @0.8 nozzle.json
@@ -5,7 +5,7 @@
"name": "re3D rPP @0.8 nozzle",
"from": "system",
"instantiation": "true",
- "inherits": "fdm_filament_pet",
+ "inherits": "fdm_filament_pp",
"filament_type": [
"PP"
],
diff --git a/resources/profiles/re3D/filament/re3D rPP @1.75 nozzle.json b/resources/profiles/re3D/filament/re3D rPP @1.75 nozzle.json
index 0bde56c596..2e5a3f4386 100644
--- a/resources/profiles/re3D/filament/re3D rPP @1.75 nozzle.json
+++ b/resources/profiles/re3D/filament/re3D rPP @1.75 nozzle.json
@@ -5,7 +5,7 @@
"name": "re3D rPP @1.75 nozzle",
"from": "system",
"instantiation": "true",
- "inherits": "fdm_filament_pet",
+ "inherits": "fdm_filament_pp",
"filament_type": [
"PP"
],
diff --git a/resources/profiles/re3D/filament/re3D rPP.json b/resources/profiles/re3D/filament/re3D rPP.json
index bf96aa51e6..f7244f5985 100644
--- a/resources/profiles/re3D/filament/re3D rPP.json
+++ b/resources/profiles/re3D/filament/re3D rPP.json
@@ -3,10 +3,7 @@
"name": "re3D rPP",
"from": "system",
"instantiation": "true",
- "inherits": "fdm_filament_pet",
- "filament_type": [
- "PP"
- ],
+ "inherits": "fdm_filament_pp",
"filament_id": "GFG02",
"setting_id": "8PB62qm5Cd3SHLf4",
"filament_settings_id": [
diff --git a/resources/profiles/re3D/machine/re3D Gigabot 4 0.4 nozzle.json b/resources/profiles/re3D/machine/re3D Gigabot 4 0.4 nozzle.json
index a0cbd3c0e2..d14d3c260e 100644
--- a/resources/profiles/re3D/machine/re3D Gigabot 4 0.4 nozzle.json
+++ b/resources/profiles/re3D/machine/re3D Gigabot 4 0.4 nozzle.json
@@ -6,7 +6,7 @@
"machine_tech": "FFF",
"model_id": "GB4",
"printer_model": "re3D Gigabot 4",
- "bed_texture": "Gigabot 4_buildplate_texture.png",
+ "bed_texture": "re3D Gigabot 4_buildplate_texture.svg",
"default_materials": "re3D PETG;re3D PLA;re3D PC",
"printable_area": [
"0x0",
diff --git a/resources/profiles/re3D/machine/re3D Gigabot 4 0.8 nozzle.json b/resources/profiles/re3D/machine/re3D Gigabot 4 0.8 nozzle.json
index e5d847e62c..9bc78b36ad 100644
--- a/resources/profiles/re3D/machine/re3D Gigabot 4 0.8 nozzle.json
+++ b/resources/profiles/re3D/machine/re3D Gigabot 4 0.8 nozzle.json
@@ -6,7 +6,7 @@
"machine_tech": "FFF",
"model_id": "GB4",
"printer_model": "re3D Gigabot 4",
- "bed_texture": "Gigabot 4_buildplate_texture.png",
+ "bed_texture": "re3D Gigabot 4_buildplate_texture.svg",
"default_materials": "re3D PETG;re3D PLA;re3D PC",
"printable_area": [
"0x0",
diff --git a/resources/profiles/re3D/machine/re3D Gigabot 4 XLT 0.4 nozzle.json b/resources/profiles/re3D/machine/re3D Gigabot 4 XLT 0.4 nozzle.json
index 8a5e118bff..56b4030476 100644
--- a/resources/profiles/re3D/machine/re3D Gigabot 4 XLT 0.4 nozzle.json
+++ b/resources/profiles/re3D/machine/re3D Gigabot 4 XLT 0.4 nozzle.json
@@ -6,7 +6,7 @@
"machine_tech": "FFF",
"model_id": "GB4",
"printer_model": "re3D Gigabot 4 XLT",
- "bed_texture": "Gigabot 4 XLT_buildplate_texture.png",
+ "bed_texture": "re3D Gigabot 4 XLT_buildplate_texture.svg",
"default_materials": "re3D PETG;re3D PLA;re3D PC",
"printable_area": [
"0x0",
diff --git a/resources/profiles/re3D/machine/re3D Gigabot 4 XLT 0.8 nozzle.json b/resources/profiles/re3D/machine/re3D Gigabot 4 XLT 0.8 nozzle.json
index a3fabc985d..a14e730b30 100644
--- a/resources/profiles/re3D/machine/re3D Gigabot 4 XLT 0.8 nozzle.json
+++ b/resources/profiles/re3D/machine/re3D Gigabot 4 XLT 0.8 nozzle.json
@@ -6,7 +6,7 @@
"machine_tech": "FFF",
"model_id": "GB4",
"printer_model": "re3D Gigabot 4 XLT",
- "bed_texture": "Gigabot 4 XLT_buildplate_texture.png",
+ "bed_texture": "re3D Gigabot 4 XLT_buildplate_texture.svg",
"default_materials": "re3D PETG;re3D PLA;re3D PC",
"printable_area": [
"0x0",
diff --git a/resources/profiles/re3D/machine/re3D GigabotX 2 0.8 nozzle.json b/resources/profiles/re3D/machine/re3D GigabotX 2 0.8 nozzle.json
index 8260ee5a1d..f6bac17a0d 100644
--- a/resources/profiles/re3D/machine/re3D GigabotX 2 0.8 nozzle.json
+++ b/resources/profiles/re3D/machine/re3D GigabotX 2 0.8 nozzle.json
@@ -6,7 +6,7 @@
"machine_tech": "FGF",
"model_id": "re3D GBX2",
"printer_model": "re3D GigabotX 2",
- "bed_texture": "Gigabot 4_buildplate_texture.png",
+ "bed_texture": "re3D GigabotX 2_buildplate_texture.svg",
"printable_area": [
"0x0",
"552x0",
@@ -25,7 +25,7 @@
"0.3"
],
"default_filament_profile": [
- "re3D Greengate rPETG @0.8 nozzle"
+ "re3D rPETG @0.8 nozzle"
],
"default_print_profile": "0.6 Standard",
"printer_settings_id": "re3d_gbx_08",
diff --git a/resources/profiles/re3D/machine/re3D GigabotX 2 1.75 nozzle.json b/resources/profiles/re3D/machine/re3D GigabotX 2 1.75 nozzle.json
index 8a89e9d858..585c219bc7 100644
--- a/resources/profiles/re3D/machine/re3D GigabotX 2 1.75 nozzle.json
+++ b/resources/profiles/re3D/machine/re3D GigabotX 2 1.75 nozzle.json
@@ -7,7 +7,7 @@
"machine_tech": "FGF",
"model_id": "re3D GBX2",
"printer_model": "re3D GigabotX 2",
- "bed_texture": "Gigabot 4_buildplate_texture.png",
+ "bed_texture": "re3D GigabotX 2_buildplate_texture.svg",
"printable_area": [
"0x0",
"552x0",
@@ -26,7 +26,7 @@
"0.6"
],
"default_filament_profile": [
- "re3D Greengate rPETG @1.75 nozzle"
+ "re3D rPETG @1.75 nozzle"
],
"default_print_profile": "1.0 Standard",
"printer_settings_id": "re3d_gbx_175",
diff --git a/resources/profiles/re3D/machine/re3D GigabotX 2 XLT 0.8 nozzle.json b/resources/profiles/re3D/machine/re3D GigabotX 2 XLT 0.8 nozzle.json
index 2d81331c5c..863d8e6403 100644
--- a/resources/profiles/re3D/machine/re3D GigabotX 2 XLT 0.8 nozzle.json
+++ b/resources/profiles/re3D/machine/re3D GigabotX 2 XLT 0.8 nozzle.json
@@ -6,7 +6,7 @@
"machine_tech": "FGF",
"model_id": "re3D GBX2 XLT",
"printer_model": "re3D GigabotX 2 XLT",
- "bed_texture": "GigabotX 2 XLT_buildplate_texture.png",
+ "bed_texture": "re3D GigabotX 2 XLT_buildplate_texture.svg",
"printable_area": [
"0x0",
"552x0",
@@ -25,7 +25,7 @@
"0.3"
],
"default_filament_profile": [
- "re3D Greengate rPETG @0.8 nozzle"
+ "re3D rPETG @0.8 nozzle"
],
"default_print_profile": "0.6 Standard",
"printer_settings_id": "re3d_gbx_xlt_08",
diff --git a/resources/profiles/re3D/machine/re3D GigabotX 2 XLT 1.75 nozzle.json b/resources/profiles/re3D/machine/re3D GigabotX 2 XLT 1.75 nozzle.json
index 63503c01d8..5784b4e673 100644
--- a/resources/profiles/re3D/machine/re3D GigabotX 2 XLT 1.75 nozzle.json
+++ b/resources/profiles/re3D/machine/re3D GigabotX 2 XLT 1.75 nozzle.json
@@ -7,7 +7,7 @@
"machine_tech": "FGF",
"model_id": "re3D GBX2 XLT",
"printer_model": "re3D GigabotX 2 XLT",
- "bed_texture": "GigabotX 2 XLT_buildplate_texture.png",
+ "bed_texture": "re3D GigabotX 2 XLT_buildplate_texture.svg",
"printable_area": [
"0x0",
"552x0",
@@ -26,7 +26,7 @@
"0.6"
],
"default_filament_profile": [
- "re3D Greengate rPETG @1.75 nozzle"
+ "re3D rPETG @1.75 nozzle"
],
"default_print_profile": "1.0 Standard",
"printer_settings_id": "re3d_gbx_xlt_175",
diff --git a/resources/profiles/re3D/machine/re3D GigabotX 2 XLT.json b/resources/profiles/re3D/machine/re3D GigabotX 2 XLT.json
index 09a2702f3a..99800331d9 100644
--- a/resources/profiles/re3D/machine/re3D GigabotX 2 XLT.json
+++ b/resources/profiles/re3D/machine/re3D GigabotX 2 XLT.json
@@ -9,5 +9,5 @@
"bed_model": "",
"bed_texture": "re3D GigabotX 2 XLT_buildplate_texture.svg",
"hotend_model": "GBX-HOTEND.stl",
- "default_materials": "re3D Greengate rPETG;re3D rPP;"
+ "default_materials": "re3D rPETG;re3D rPP;"
}
diff --git a/resources/profiles/re3D/machine/re3D GigabotX 2.json b/resources/profiles/re3D/machine/re3D GigabotX 2.json
index cc1470ee05..3a1db130b0 100644
--- a/resources/profiles/re3D/machine/re3D GigabotX 2.json
+++ b/resources/profiles/re3D/machine/re3D GigabotX 2.json
@@ -9,5 +9,5 @@
"bed_model": "",
"bed_texture": "re3D GigabotX 2_buildplate_texture.svg",
"hotend_model": "GBX-HOTEND.stl",
- "default_materials": "re3D Greengate rPETG;re3D rPP;"
+ "default_materials": "re3D rPETG;re3D rPP;"
}
diff --git a/resources/profiles/re3D/machine/re3D Terabot 4 0.4 nozzle.json b/resources/profiles/re3D/machine/re3D Terabot 4 0.4 nozzle.json
index 105b0f2621..d24ba564a2 100644
--- a/resources/profiles/re3D/machine/re3D Terabot 4 0.4 nozzle.json
+++ b/resources/profiles/re3D/machine/re3D Terabot 4 0.4 nozzle.json
@@ -6,7 +6,7 @@
"machine_tech": "FFF",
"model_id": "TB4",
"printer_model": "re3D Terabot 4",
- "bed_texture": "Gigabot 4_buildplate_texture.png",
+ "bed_texture": "re3D Terabot 4_buildplate_texture.svg",
"default_materials": "re3D PETG;re3D PLA;re3D PC",
"printable_area": [
"0x0",
diff --git a/resources/profiles/re3D/machine/re3D Terabot 4 0.8 nozzle.json b/resources/profiles/re3D/machine/re3D Terabot 4 0.8 nozzle.json
index bd83a5ef45..6255e84896 100644
--- a/resources/profiles/re3D/machine/re3D Terabot 4 0.8 nozzle.json
+++ b/resources/profiles/re3D/machine/re3D Terabot 4 0.8 nozzle.json
@@ -6,7 +6,7 @@
"machine_tech": "FFF",
"model_id": "TB4",
"printer_model": "re3D Terabot 4",
- "bed_texture": "Gigabot 4_buildplate_texture.png",
+ "bed_texture": "re3D Terabot 4_buildplate_texture.svg",
"default_materials": "re3D PETG;re3D PLA;re3D PC",
"printable_area": [
"0x0",
diff --git a/resources/profiles/re3D/machine/re3D TerabotX 2 0.8 nozzle.json b/resources/profiles/re3D/machine/re3D TerabotX 2 0.8 nozzle.json
index daa97c2e88..5622a813c1 100644
--- a/resources/profiles/re3D/machine/re3D TerabotX 2 0.8 nozzle.json
+++ b/resources/profiles/re3D/machine/re3D TerabotX 2 0.8 nozzle.json
@@ -6,7 +6,7 @@
"machine_tech": "FGF",
"model_id": "re3D TBX2",
"printer_model": "re3D TerabotX 2",
- "bed_texture": "Gigabot 4_buildplate_texture.png",
+ "bed_texture": "re3D TerabotX 2_buildplate_texture.svg",
"printable_area": [
"0x0",
"892x0",
@@ -25,7 +25,7 @@
"0.3"
],
"default_filament_profile": [
- "re3D Greengate rPETG @0.8 nozzle"
+ "re3D rPETG @0.8 nozzle"
],
"default_print_profile": "0.6 Standard",
"printer_settings_id": "re3d_tbx2_08",
diff --git a/resources/profiles/re3D/machine/re3D TerabotX 2 1.75 nozzle.json b/resources/profiles/re3D/machine/re3D TerabotX 2 1.75 nozzle.json
index 401833977a..398ab006bd 100644
--- a/resources/profiles/re3D/machine/re3D TerabotX 2 1.75 nozzle.json
+++ b/resources/profiles/re3D/machine/re3D TerabotX 2 1.75 nozzle.json
@@ -7,7 +7,7 @@
"machine_tech": "FGF",
"model_id": "re3D TBX2",
"printer_model": "re3D TerabotX 2",
- "bed_texture": "Gigabot 4_buildplate_texture.png",
+ "bed_texture": "re3D TerabotX 2_buildplate_texture.svg",
"printable_area": [
"0x0",
"892x0",
@@ -26,7 +26,7 @@
"0.6"
],
"default_filament_profile": [
- "re3D Greengate rPETG @1.75 nozzle"
+ "re3D rPETG @1.75 nozzle"
],
"default_print_profile": "1.0 Standard",
"printer_settings_id": "re3d_tbx2_175",
diff --git a/resources/profiles/re3D/machine/re3D TerabotX 2.json b/resources/profiles/re3D/machine/re3D TerabotX 2.json
index 9d8d0b2cb4..f541a62ad7 100644
--- a/resources/profiles/re3D/machine/re3D TerabotX 2.json
+++ b/resources/profiles/re3D/machine/re3D TerabotX 2.json
@@ -9,5 +9,5 @@
"bed_model": "",
"bed_texture": "re3D TerabotX 2_buildplate_texture.svg",
"hotend_model": "GBX-HOTEND.stl",
- "default_materials": "re3D Greengate rPETG;re3D rPP;"
+ "default_materials": "re3D rPETG;re3D rPP;"
}
diff --git a/resources/profiles/re3D/process/0.26mm Standard @re3D fdm 0.4.json b/resources/profiles/re3D/process/0.26mm Standard @re3D fdm 0.4.json
index 7d443c9730..2ab80cdf26 100644
--- a/resources/profiles/re3D/process/0.26mm Standard @re3D fdm 0.4.json
+++ b/resources/profiles/re3D/process/0.26mm Standard @re3D fdm 0.4.json
@@ -22,5 +22,35 @@
"top_surface_line_width": "0.48",
"support_line_width": "0.48",
"support_top_z_distance": "0.2",
- "support_bottom_z_distance": "0.2"
-}
\ No newline at end of file
+ "support_bottom_z_distance": "0.2",
+ "bridge_speed": "50",
+ "internal_bridge_speed": "150%",
+ "default_acceleration": "5000",
+ "outer_wall_speed": "60",
+ "initial_layer_speed": "50",
+ "gap_infill_speed": "60",
+ "sparse_infill_speed": "80",
+ "inner_wall_speed": "80",
+ "internal_solid_infill_speed": "80",
+ "support_interface_speed": "30",
+ "support_speed": "90",
+ "top_surface_speed": "50",
+ "travel_speed": "300",
+ "top_surface_acceleration": "2500",
+ "initial_layer_acceleration": "1000",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "ironing_speed": "25",
+ "overhang_1_4_speed": "0",
+ "overhang_2_4_speed": "50",
+ "overhang_3_4_speed": "30",
+ "overhang_4_4_speed": "10",
+ "initial_layer_infill_speed": "50",
+ "outer_wall_acceleration": "2500",
+ "bridge_acceleration": "3500",
+ "sparse_infill_acceleration": "5000",
+ "internal_solid_infill_acceleration": "5000",
+ "initial_layer_travel_speed": "100%",
+ "small_perimeter_speed": "50%",
+ "filename_format": "{input_filename_base}_{\"E\"}{initial_tool}_{filament_type[initial_tool]}_{print_time}.gcode"
+}
diff --git a/resources/profiles/re3D/process/0.2mm Fine @re3D fdm 0.4.json b/resources/profiles/re3D/process/0.2mm Fine @re3D fdm 0.4.json
index 2734cf3334..10013e9c36 100644
--- a/resources/profiles/re3D/process/0.2mm Fine @re3D fdm 0.4.json
+++ b/resources/profiles/re3D/process/0.2mm Fine @re3D fdm 0.4.json
@@ -22,5 +22,32 @@
"top_surface_line_width": "0.44",
"support_line_width": "0.48",
"support_top_z_distance": "0.2",
- "support_bottom_z_distance": "0.2"
-}
\ No newline at end of file
+ "support_bottom_z_distance": "0.2",
+ "outer_wall_speed": "60",
+ "initial_layer_speed": "50",
+ "gap_infill_speed": "60",
+ "sparse_infill_speed": "80",
+ "inner_wall_speed": "80",
+ "internal_solid_infill_speed": "80",
+ "support_interface_speed": "30",
+ "support_speed": "90",
+ "top_surface_speed": "50",
+ "travel_speed": "300",
+ "top_surface_acceleration": "2500",
+ "initial_layer_acceleration": "1000",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "ironing_speed": "25",
+ "overhang_1_4_speed": "0",
+ "overhang_2_4_speed": "50",
+ "overhang_3_4_speed": "30",
+ "overhang_4_4_speed": "10",
+ "initial_layer_infill_speed": "50",
+ "outer_wall_acceleration": "2500",
+ "bridge_acceleration": "3500",
+ "sparse_infill_acceleration": "5000",
+ "internal_solid_infill_acceleration": "5000",
+ "initial_layer_travel_speed": "100%",
+ "small_perimeter_speed": "50%",
+ "filename_format": "{input_filename_base}_{\"E\"}{initial_tool}_{filament_type[initial_tool]}_{print_time}.gcode"
+}
diff --git a/resources/profiles/re3D/process/0.32mm Draft @re3D fdm 0.4.json b/resources/profiles/re3D/process/0.32mm Draft @re3D fdm 0.4.json
index 3ce98e2e7e..1b14349f81 100644
--- a/resources/profiles/re3D/process/0.32mm Draft @re3D fdm 0.4.json
+++ b/resources/profiles/re3D/process/0.32mm Draft @re3D fdm 0.4.json
@@ -22,5 +22,32 @@
"top_surface_line_width": "0.48",
"support_line_width": "0.48",
"support_top_z_distance": "0.35",
- "support_bottom_z_distance": "0.35"
-}
\ No newline at end of file
+ "support_bottom_z_distance": "0.35",
+ "outer_wall_speed": "60",
+ "initial_layer_speed": "50",
+ "gap_infill_speed": "60",
+ "sparse_infill_speed": "80",
+ "inner_wall_speed": "80",
+ "internal_solid_infill_speed": "80",
+ "support_interface_speed": "30",
+ "support_speed": "90",
+ "top_surface_speed": "50",
+ "travel_speed": "300",
+ "top_surface_acceleration": "2500",
+ "initial_layer_acceleration": "1000",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "ironing_speed": "25",
+ "overhang_1_4_speed": "0",
+ "overhang_2_4_speed": "50",
+ "overhang_3_4_speed": "30",
+ "overhang_4_4_speed": "10",
+ "initial_layer_infill_speed": "50",
+ "outer_wall_acceleration": "2500",
+ "bridge_acceleration": "3500",
+ "sparse_infill_acceleration": "5000",
+ "internal_solid_infill_acceleration": "5000",
+ "initial_layer_travel_speed": "100%",
+ "small_perimeter_speed": "50%",
+ "filename_format": "{input_filename_base}_{\"E\"}{initial_tool}_{filament_type[initial_tool]}_{print_time}.gcode"
+}
diff --git a/resources/profiles/re3D/process/0.3mm Fine @re3D fdm 0.8.json b/resources/profiles/re3D/process/0.3mm Fine @re3D fdm 0.8.json
index 27c2452d19..2b35f2c1f8 100644
--- a/resources/profiles/re3D/process/0.3mm Fine @re3D fdm 0.8.json
+++ b/resources/profiles/re3D/process/0.3mm Fine @re3D fdm 0.8.json
@@ -22,5 +22,32 @@
"top_surface_line_width": "1",
"support_line_width": "1",
"support_top_z_distance": "0.24",
- "support_bottom_z_distance": "0.24"
-}
\ No newline at end of file
+ "support_bottom_z_distance": "0.24",
+ "outer_wall_speed": "60",
+ "initial_layer_speed": "50",
+ "gap_infill_speed": "60",
+ "sparse_infill_speed": "80",
+ "inner_wall_speed": "80",
+ "internal_solid_infill_speed": "80",
+ "support_interface_speed": "30",
+ "support_speed": "90",
+ "top_surface_speed": "50",
+ "travel_speed": "300",
+ "top_surface_acceleration": "2500",
+ "initial_layer_acceleration": "1000",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "ironing_speed": "25",
+ "overhang_1_4_speed": "0",
+ "overhang_2_4_speed": "50",
+ "overhang_3_4_speed": "30",
+ "overhang_4_4_speed": "10",
+ "initial_layer_infill_speed": "50",
+ "outer_wall_acceleration": "2500",
+ "bridge_acceleration": "3500",
+ "sparse_infill_acceleration": "5000",
+ "internal_solid_infill_acceleration": "5000",
+ "initial_layer_travel_speed": "100%",
+ "small_perimeter_speed": "50%",
+ "filename_format": "{input_filename_base}_{\"E\"}{initial_tool}_{filament_type[initial_tool]}_{print_time}.gcode"
+}
diff --git a/resources/profiles/re3D/process/0.4mm Draft @re3D fdm 0.8.json b/resources/profiles/re3D/process/0.4mm Draft @re3D fdm 0.8.json
index d46316ef4e..d00f8bce44 100644
--- a/resources/profiles/re3D/process/0.4mm Draft @re3D fdm 0.8.json
+++ b/resources/profiles/re3D/process/0.4mm Draft @re3D fdm 0.8.json
@@ -22,5 +22,32 @@
"top_surface_line_width": "1",
"support_line_width": "1",
"support_top_z_distance": "0.42",
- "support_bottom_z_distance": "0.42"
-}
\ No newline at end of file
+ "support_bottom_z_distance": "0.42",
+ "outer_wall_speed": "60",
+ "initial_layer_speed": "50",
+ "gap_infill_speed": "60",
+ "sparse_infill_speed": "80",
+ "inner_wall_speed": "80",
+ "internal_solid_infill_speed": "80",
+ "support_interface_speed": "30",
+ "support_speed": "90",
+ "top_surface_speed": "50",
+ "travel_speed": "300",
+ "top_surface_acceleration": "2500",
+ "initial_layer_acceleration": "1000",
+ "travel_acceleration": "5000",
+ "inner_wall_acceleration": "5000",
+ "ironing_speed": "25",
+ "overhang_1_4_speed": "0",
+ "overhang_2_4_speed": "50",
+ "overhang_3_4_speed": "30",
+ "overhang_4_4_speed": "10",
+ "initial_layer_infill_speed": "50",
+ "outer_wall_acceleration": "2500",
+ "bridge_acceleration": "3500",
+ "sparse_infill_acceleration": "5000",
+ "internal_solid_infill_acceleration": "5000",
+ "initial_layer_travel_speed": "100%",
+ "small_perimeter_speed": "50%",
+ "filename_format": "{input_filename_base}_{\"E\"}{initial_tool}_{filament_type[initial_tool]}_{print_time}.gcode"
+}
diff --git a/resources/profiles/re3D/process/fdm_process_common.json b/resources/profiles/re3D/process/fdm_process_common.json
index 164ff9d58a..dcd5c826ae 100644
--- a/resources/profiles/re3D/process/fdm_process_common.json
+++ b/resources/profiles/re3D/process/fdm_process_common.json
@@ -6,34 +6,27 @@
"adaptive_layer_height": "0",
"reduce_crossing_wall": "0",
"bridge_flow": "0.95",
- "bridge_speed": "10",
"brim_width": "5",
"compatible_printers": [],
"print_sequence": "by layer",
- "default_acceleration": "0",
"bridge_no_support": "0",
"elefant_foot_compensation": "0.1",
"outer_wall_line_width": "0.4",
- "outer_wall_speed": "25",
"line_width": "0.4",
"infill_direction": "45",
"sparse_infill_density": "15%",
"sparse_infill_pattern": "crosshatch",
"initial_layer_line_width": "0.4",
"initial_layer_print_height": "0.2",
- "initial_layer_speed": "15",
- "gap_infill_speed": "25",
"infill_combination": "0",
"sparse_infill_line_width": "0.4",
"infill_wall_overlap": "25%",
- "sparse_infill_speed": "70",
"interface_shells": "0",
"detect_overhang_wall": "0",
"reduce_infill_retraction": "0",
"filename_format": "{input_filename_base}.gcode",
"wall_loops": "3",
"inner_wall_line_width": "0.4",
- "inner_wall_speed": "40",
"print_settings_id": "",
"raft_layers": "0",
"seam_position": "nearest",
@@ -41,7 +34,6 @@
"skirt_height": "2",
"minimum_sparse_infill_area": "0",
"internal_solid_infill_line_width": "0.4",
- "internal_solid_infill_speed": "60",
"spiral_mode": "0",
"standby_temperature_delta": "-20",
"enable_support": "0",
@@ -53,16 +45,12 @@
"support_interface_loop_pattern": "0",
"support_interface_top_layers": "2",
"support_interface_spacing": "0",
- "support_interface_speed": "80",
"support_base_pattern": "rectilinear",
"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.4",
- "top_surface_speed": "35",
- "travel_speed": "150",
"enable_prime_tower": "1",
"prime_tower_width": "60",
"xy_hole_compensation": "0",
diff --git a/resources/profiles/re3D/process/fdm_process_re3D_common.json b/resources/profiles/re3D/process/fdm_process_re3D_common.json
index a1547448e3..ea169330f4 100644
--- a/resources/profiles/re3D/process/fdm_process_re3D_common.json
+++ b/resources/profiles/re3D/process/fdm_process_re3D_common.json
@@ -1,116 +1,88 @@
{
- "type": "process",
- "name": "fdm_process_re3D_common",
- "from": "system",
- "instantiation": "false",
- "inherits": "fdm_process_common",
- "adaptive_layer_height": "0",
- "reduce_crossing_wall": "1",
- "bridge_flow": "0.985",
- "bridge_speed": "25",
- "brim_width": "8",
- "print_sequence": "by layer",
- "default_acceleration": "5000",
- "bridge_no_support": "0",
- "elefant_foot_compensation": "0",
- "outer_wall_speed": "120",
- "sparse_infill_density": "15%",
- "sparse_infill_pattern": "rectilinear",
- "initial_layer_speed": "50",
- "gap_infill_speed": "30",
- "infill_combination": "0",
- "infill_wall_overlap": "25%",
- "sparse_infill_speed": "50",
- "detect_overhang_wall": "1",
- "reduce_infill_retraction": "0",
- "filename_format": "{input_filename_base}.gcode",
- "wall_loops": "3",
- "inner_wall_speed": "40",
- "wall_generator": "arachne",
- "raft_layers": "0",
- "seam_position": "nearest",
- "skirt_distance": "8",
- "skirt_height": "1",
- "minimum_sparse_infill_area": "0",
- "internal_solid_infill_speed": "40",
- "spiral_mode": "0",
- "standby_temperature_delta": "-75",
- "enable_support": "1",
- "support_filament": "0",
- "support_interface_filament": "0",
- "support_on_build_plate_only": "0",
- "support_interface_loop_pattern": "0",
- "support_interface_top_layers": "2",
- "support_interface_spacing": "0.05",
- "support_interface_speed": "80",
- "support_base_pattern": "rectilinear",
- "support_base_pattern_spacing": "2",
- "support_speed": "40",
- "support_threshold_angle": "30",
- "support_object_xy_distance": "0.5",
- "detect_thin_wall": "0",
- "top_surface_speed": "30",
- "travel_speed": "300",
- "enable_prime_tower": "0",
- "prime_tower_width": "60",
- "xy_hole_compensation": "0",
- "xy_contour_compensation": "0",
- "max_travel_detour_distance": "0",
- "bottom_surface_pattern": "monotonic",
- "bottom_shell_layers": "3",
- "bottom_shell_thickness": "0",
- "brim_object_gap": "0.1",
- "compatible_printers_condition": "",
- "top_surface_acceleration": "500",
- "draft_shield": "disabled",
- "enable_arc_fitting": "1",
- "wall_infill_order": "inner wall/outer wall/infill",
- "infill_direction": "45",
- "initial_layer_acceleration": "500",
- "travel_acceleration": "5000",
- "inner_wall_acceleration": "5000",
- "interface_shells": "0",
- "ironing_flow": "10%",
- "ironing_spacing": "0.1",
- "ironing_speed": "20",
- "ironing_type": "no ironing",
- "overhang_1_4_speed": "45",
- "overhang_2_4_speed": "35",
- "overhang_3_4_speed": "25",
- "overhang_4_4_speed": "15",
- "print_settings_id": "fdm_process_re3D_common",
- "skirt_loops": "2",
- "resolution": "0.0",
- "support_type": "normal(auto)",
- "support_style": "snug",
- "support_interface_bottom_layers": "2",
- "tree_support_branch_angle": "45",
- "tree_support_wall_count": "0",
- "top_surface_pattern": "monotonicline",
- "top_shell_layers": "4",
- "top_shell_thickness": "0.6",
- "initial_layer_infill_speed": "50",
- "wipe_tower_no_sparse_layers": "0",
- "precise_outer_wall": "0",
- "outer_wall_acceleration": "2500",
- "bridge_acceleration": "5000",
- "sparse_infill_acceleration": "5000",
- "internal_solid_infill_acceleration": "5000",
- "accel_to_decel_enable": "0",
- "prime_volume": "200",
- "ooze_prevention": "1",
- "preheat_time": "30",
- "initial_layer_travel_speed": "100",
- "slow_down_layers": "2",
- "small_perimeter_speed": "20",
- "small_perimeter_threshold": "10",
- "exclude_object": "1",
- "compatible_printers": [
- "re3D Gigabot 4 0.4 nozzle",
- "re3D Gigabot 4 0.8 nozzle",
- "re3D Gigabot 4 XLT 0.4 nozzle",
- "re3D Gigabot 4 XLT 0.8 nozzle",
- "re3D Terabot 4 0.4 nozzle",
- "re3D Terabot 4 0.8 nozzle"
- ]
-}
\ No newline at end of file
+ "type": "process",
+ "name": "fdm_process_re3D_common",
+ "from": "system",
+ "instantiation": "false",
+ "inherits": "fdm_process_common",
+ "adaptive_layer_height": "0",
+ "reduce_crossing_wall": "1",
+ "bridge_flow": "0.985",
+ "brim_width": "8",
+ "print_sequence": "by layer",
+ "bridge_no_support": "0",
+ "elefant_foot_compensation": "0",
+ "sparse_infill_density": "15%",
+ "sparse_infill_pattern": "rectilinear",
+ "infill_combination": "0",
+ "infill_wall_overlap": "25%",
+ "detect_overhang_wall": "1",
+ "reduce_infill_retraction": "0",
+ "filename_format": "{input_filename_base}.gcode",
+ "wall_loops": "3",
+ "wall_generator": "arachne",
+ "raft_layers": "0",
+ "seam_position": "nearest",
+ "skirt_distance": "8",
+ "skirt_height": "1",
+ "minimum_sparse_infill_area": "0",
+ "spiral_mode": "0",
+ "standby_temperature_delta": "-75",
+ "enable_support": "1",
+ "support_filament": "0",
+ "support_interface_filament": "0",
+ "support_on_build_plate_only": "0",
+ "support_interface_loop_pattern": "0",
+ "support_interface_top_layers": "2",
+ "support_interface_spacing": "0.05",
+ "support_base_pattern": "rectilinear",
+ "support_base_pattern_spacing": "2",
+ "support_threshold_angle": "30",
+ "support_object_xy_distance": "0.5",
+ "detect_thin_wall": "0",
+ "enable_prime_tower": "0",
+ "prime_tower_width": "60",
+ "xy_hole_compensation": "0",
+ "xy_contour_compensation": "0",
+ "max_travel_detour_distance": "0",
+ "bottom_surface_pattern": "monotonic",
+ "bottom_shell_layers": "3",
+ "bottom_shell_thickness": "0",
+ "brim_object_gap": "0.1",
+ "compatible_printers_condition": "",
+ "draft_shield": "disabled",
+ "enable_arc_fitting": "1",
+ "wall_infill_order": "inner wall/outer wall/infill",
+ "infill_direction": "45",
+ "interface_shells": "0",
+ "ironing_flow": "10%",
+ "ironing_spacing": "0.1",
+ "ironing_type": "no ironing",
+ "print_settings_id": "fdm_process_re3D_common",
+ "skirt_loops": "2",
+ "resolution": "0.0",
+ "support_type": "normal(auto)",
+ "support_style": "snug",
+ "support_interface_bottom_layers": "2",
+ "tree_support_branch_angle": "45",
+ "tree_support_wall_count": "0",
+ "top_surface_pattern": "monotonicline",
+ "top_shell_layers": "4",
+ "top_shell_thickness": "0.6",
+ "wipe_tower_no_sparse_layers": "0",
+ "precise_outer_wall": "0",
+ "accel_to_decel_enable": "0",
+ "prime_volume": "200",
+ "ooze_prevention": "1",
+ "preheat_time": "30",
+ "slow_down_layers": "2",
+ "small_perimeter_threshold": "10",
+ "exclude_object": "1",
+ "compatible_printers": [
+ "re3D Gigabot 4 0.4 nozzle",
+ "re3D Gigabot 4 0.8 nozzle",
+ "re3D Gigabot 4 XLT 0.4 nozzle",
+ "re3D Gigabot 4 XLT 0.8 nozzle",
+ "re3D Terabot 4 0.4 nozzle",
+ "re3D Terabot 4 0.8 nozzle"
+ ]
+}
diff --git a/resources/shaders/140/gouraud.fs b/resources/shaders/140/gouraud.fs
index da666881f6..d82dd4286a 100644
--- a/resources/shaders/140/gouraud.fs
+++ b/resources/shaders/140/gouraud.fs
@@ -1,4 +1,7 @@
#version 140
+// Multisample depth texture for the anti-aliased outline (see 3DScene.cpp render_with_outline).
+// Optional on the GLSL 140 path: if unavailable, fallback to a non-multisample depth texture.
+#extension GL_ARB_texture_multisample : enable
const vec3 ZERO = vec3(0.0, 0.0, 0.0);
//BBS: add grey and orange
@@ -37,7 +40,14 @@ uniform SlopeDetection slope;
//BBS: add outline_color
uniform bool is_outline;
+// The outline is a per-fragment discard mask, which the framebuffer MSAA cannot smooth, so the
+// silhouette is resolved per sample from a multisample copy of the outlined model's depth buffer.
+#ifdef GL_ARB_texture_multisample
+uniform sampler2DMS depth_tex;
+uniform int msaa_samples; // samples in depth_tex, 1 when MSAA is off
+#else
uniform sampler2D depth_tex;
+#endif
uniform vec2 screen_size;
#ifdef ENABLE_ENVIRONMENT_MAP
@@ -100,45 +110,87 @@ float GetTolerance(float d, float k)
return -k*(d+A)*(d+A)/B;
}
-float DetectSilho(vec2 fragCoord, vec2 dir)
+// Depth of sample s at integer pixel coord.
+#ifdef GL_ARB_texture_multisample
+float FetchDepth(ivec2 coord, int s)
+{
+ // texelFetch has no wrap mode, so clamp to the edge texel (sampler2D used CLAMP_TO_EDGE).
+ ivec2 sz = textureSize(depth_tex);
+ return abs(texelFetch(depth_tex, clamp(coord, ivec2(0), sz - 1), s).r);
+}
+#else
+float FetchDepth(ivec2 coord, int s)
+{
+ return abs(texture(depth_tex, (vec2(coord) + 0.5) / screen_size).r);
+}
+#endif
+
+float DetectSilho(ivec2 coord, ivec2 dir, int s)
{
// -------------------------------------------
- // x0 ___ x1----o
- // :\ :
+ // x0 ___ x1----o
+ // :\ :
// r0 : \ : r1
- // : \ :
+ // : \ :
// o---x2 ___ x3
//
// r0 and r1 are the differences between actual
// and expected (as if x0..3 where on the same
// plane) depth values.
// -------------------------------------------
-
- float x0 = abs(texture(depth_tex, (fragCoord + dir*-2.0) / screen_size).r);
- float x1 = abs(texture(depth_tex, (fragCoord + dir*-1.0) / screen_size).r);
- float x2 = abs(texture(depth_tex, (fragCoord + dir* 0.0) / screen_size).r);
- float x3 = abs(texture(depth_tex, (fragCoord + dir* 1.0) / screen_size).r);
-
+ float x0 = FetchDepth(coord + dir*-2, s);
+ float x1 = FetchDepth(coord + dir*-1, s);
+ float x2 = FetchDepth(coord, s);
+ float x3 = FetchDepth(coord + dir* 1, s);
+
float d0 = (x1-x0);
float d1 = (x2-x3);
-
+
float r0 = x1 + d0 - x2;
float r1 = x2 + d1 - x1;
-
- float tol = GetTolerance(x2, 0.04);
-
- return smoothstep(0.0, tol*tol, max( - r0*r1, 0.0));
+ float tol = GetTolerance(x2, 0.04);
+
+ return smoothstep(0.0, tol*tol, max( - r0*r1, 0.0));
}
-float DetectSilho(vec2 fragCoord)
+float DetectSilho(ivec2 coord, int s)
{
return max(
- DetectSilho(fragCoord, vec2(1,0)), // Horizontal
- DetectSilho(fragCoord, vec2(0,1)) // Vertical
+ DetectSilho(coord, ivec2(1,0), s), // Horizontal
+ DetectSilho(coord, ivec2(0,1), s) // Vertical
);
}
+// Full response of one sample. Reduce the max() per sample and average only afterwards:
+// max(mean) <= mean(max), and averaging first hollows out diagonal and curved lines.
+float DetectSilhoSample(ivec2 coord, int s)
+{
+ float v = DetectSilho(coord, s);
+ // Makes silhouettes thicker.
+ for (int i = 1; i <= INFLATE; ++i)
+ {
+ v = max(v, DetectSilho(coord + ivec2(i, 0), s));
+ v = max(v, DetectSilho(coord + ivec2(0, i), s));
+ }
+ return v;
+}
+
+// Average the per-sample coverage into the sub-pixel anti-aliasing of the line.
+float DetectSilho(vec2 fragCoord)
+{
+ ivec2 coord = ivec2(fragCoord);
+#ifdef GL_ARB_texture_multisample
+ int n = max(msaa_samples, 1);
+#else
+ const int n = 1;
+#endif
+ float acc = 0.0;
+ for (int s = 0; s < n; ++s)
+ acc += DetectSilhoSample(coord, s);
+ return acc / float(n);
+}
+
// Returns a lighting multiplier in [1 - shadow_intensity, 1]: < 1 where the fragment is
// occluded from the light in the shadow map. 3x3 PCF softens the edges.
float shadow_shade()
@@ -225,14 +277,7 @@ void main()
//BBS: add outline_color
if (is_outline) {
color = vec4((vec3(intensity.y) + color.rgb * intensity.x) * shade, color.a);
- vec2 fragCoord = gl_FragCoord.xy;
- float s = DetectSilho(fragCoord);
- // Makes silhouettes thicker.
- for(int i=1;i<=INFLATE; i++)
- {
- s = max(s, DetectSilho(fragCoord.xy + vec2(i, 0)));
- s = max(s, DetectSilho(fragCoord.xy + vec2(0, i)));
- }
+ float s = DetectSilho(gl_FragCoord.xy);
if (s < 0.01)
discard;
out_color = vec4(mix(color.rgb, getBackfaceColor(color.rgb), s), color.a);
diff --git a/resources/shaders/140/phong.fs b/resources/shaders/140/phong.fs
index bbde72592c..f847763658 100644
--- a/resources/shaders/140/phong.fs
+++ b/resources/shaders/140/phong.fs
@@ -1,4 +1,7 @@
#version 140
+// Multisample depth texture for the anti-aliased outline (see 3DScene.cpp render_with_outline).
+// Optional on the GLSL 140 path: if unavailable, fallback to a non-multisample depth texture.
+#extension GL_ARB_texture_multisample : enable
const vec3 ZERO = vec3(0.0, 0.0, 0.0);
const vec3 LightRed = vec3(0.78, 0.0, 0.0);
@@ -51,7 +54,14 @@ uniform SlopeDetection slope;
//BBS: add outline_color
uniform bool is_outline;
+// The outline is a per-fragment discard mask, which the framebuffer MSAA cannot smooth, so the
+// silhouette is resolved per sample from a multisample copy of the outlined model's depth buffer.
+#ifdef GL_ARB_texture_multisample
+uniform sampler2DMS depth_tex;
+uniform int msaa_samples; // samples in depth_tex, 1 when MSAA is off
+#else
uniform sampler2D depth_tex;
+#endif
uniform vec2 screen_size;
#ifdef ENABLE_ENVIRONMENT_MAP
@@ -100,12 +110,27 @@ float GetTolerance(float d, float k)
return -k*(d+A)*(d+A)/B;
}
-float DetectSilho(vec2 fragCoord, vec2 dir)
+// Depth of sample s at integer pixel coord.
+#ifdef GL_ARB_texture_multisample
+float FetchDepth(ivec2 coord, int s)
{
- float x0 = abs(texture(depth_tex, (fragCoord + dir*-2.0) / screen_size).r);
- float x1 = abs(texture(depth_tex, (fragCoord + dir*-1.0) / screen_size).r);
- float x2 = abs(texture(depth_tex, (fragCoord + dir* 0.0) / screen_size).r);
- float x3 = abs(texture(depth_tex, (fragCoord + dir* 1.0) / screen_size).r);
+ // texelFetch has no wrap mode, so clamp to the edge texel (sampler2D used CLAMP_TO_EDGE).
+ ivec2 sz = textureSize(depth_tex);
+ return abs(texelFetch(depth_tex, clamp(coord, ivec2(0), sz - 1), s).r);
+}
+#else
+float FetchDepth(ivec2 coord, int s)
+{
+ return abs(texture(depth_tex, (vec2(coord) + 0.5) / screen_size).r);
+}
+#endif
+
+float DetectSilho(ivec2 coord, ivec2 dir, int s)
+{
+ float x0 = FetchDepth(coord + dir*-2, s);
+ float x1 = FetchDepth(coord + dir*-1, s);
+ float x2 = FetchDepth(coord, s);
+ float x3 = FetchDepth(coord + dir* 1, s);
float d0 = (x1-x0);
float d1 = (x2-x3);
@@ -116,17 +141,45 @@ float DetectSilho(vec2 fragCoord, vec2 dir)
float tol = GetTolerance(x2, 0.04);
return smoothstep(0.0, tol*tol, max( - r0*r1, 0.0));
-
}
-float DetectSilho(vec2 fragCoord)
+float DetectSilho(ivec2 coord, int s)
{
return max(
- DetectSilho(fragCoord, vec2(1,0)),
- DetectSilho(fragCoord, vec2(0,1))
+ DetectSilho(coord, ivec2(1,0), s),
+ DetectSilho(coord, ivec2(0,1), s)
);
}
+// Full response of one sample. Reduce the max() per sample and average only afterwards:
+// max(mean) <= mean(max), and averaging first hollows out diagonal and curved lines.
+float DetectSilhoSample(ivec2 coord, int s)
+{
+ float v = DetectSilho(coord, s);
+ // Makes silhouettes thicker.
+ for (int i = 1; i <= INFLATE; ++i)
+ {
+ v = max(v, DetectSilho(coord + ivec2(i, 0), s));
+ v = max(v, DetectSilho(coord + ivec2(0, i), s));
+ }
+ return v;
+}
+
+// Average the per-sample coverage into the sub-pixel anti-aliasing of the line.
+float DetectSilho(vec2 fragCoord)
+{
+ ivec2 coord = ivec2(fragCoord);
+#ifdef GL_ARB_texture_multisample
+ int n = max(msaa_samples, 1);
+#else
+ const int n = 1;
+#endif
+ float acc = 0.0;
+ for (int s = 0; s < n; ++s)
+ acc += DetectSilhoSample(coord, s);
+ return acc / float(n);
+}
+
float compute_ssao_factor(vec3 normal, vec3 view_dir, vec3 eye_pos)
{
vec3 normal_dx = dFdx(normal);
@@ -270,13 +323,7 @@ void main()
if (is_outline) {
vec3 shaded_rgb = (vec3(specular) + window_reflection + color.rgb * diffuse) * PHONG_BRIGHTNESS * shade;
vec4 shaded_color = vec4(clamp(shaded_rgb, vec3(0.0), vec3(1.0)), color.a);
- vec2 fragCoord = gl_FragCoord.xy;
- float s = DetectSilho(fragCoord);
- for(int i=1;i<=INFLATE; i++)
- {
- s = max(s, DetectSilho(fragCoord.xy + vec2(i, 0)));
- s = max(s, DetectSilho(fragCoord.xy + vec2(0, i)));
- }
+ float s = DetectSilho(gl_FragCoord.xy);
if (s < 0.01)
discard;
out_color = vec4(mix(shaded_color.rgb, getBackfaceColor(shaded_color.rgb), s), shaded_color.a);
diff --git a/scripts/build_preset_cache.bat b/scripts/build_preset_cache.bat
new file mode 100644
index 0000000000..82f3e02723
--- /dev/null
+++ b/scripts/build_preset_cache.bat
@@ -0,0 +1,141 @@
+@echo off
+rem Build the per-vendor system preset caches (one .opc per vendor) by
+rem running the generate_system_cache.exe dev tool against a profiles directory,
+rem and make every profiles directory named on the command line ship-ready:
+rem install the caches into it and delete the preset JSONs they replace, so a
+rem build ships one copy of its presets instead of two.
+rem
+rem scripts\build_preset_cache.bat [build_dir] [target_dir ...]
+rem
+rem build_dir defaults to "build"
+rem target_dir profiles directories to ship into. Caches are generated into
+rem the source tree's resources\profiles, which is what every
+rem packaging step copies from; a target may be that same
+rem directory, which then only gets pruned.
+rem --prune-source
+rem allow a target that is the directory the caches were generated
+rem into (resources\profiles). Pruning it deletes the checkout's
+rem own preset JSONs, which is a packaging step - not something a
+rem build should do to a working tree by surprise. CI passes it.
+rem
+rem Shipping deletes, so it is a CI packaging step. A vendor's own .json
+rem goes along with its preset JSONs: the cache carries the vendor profile and
+rem the version it was built at, so discovery, version checks and installing all
+rem read it there. Only a vendor that has a cache is pruned, so non-vendor JSONs
+rem (blacklist.json) are left alone, as are the vendor directories themselves -
+rem thumbnails, covers and bed models still live there.
+rem
+rem set CONFIG= to pin the build config for multi-config generators
+rem (default: the config of the tool already in the build tree, else Release)
+setlocal enabledelayedexpansion
+
+set "REPO_ROOT=%~dp0.."
+
+set "PRUNE_SOURCE="
+:parse_flags
+if /i "%~1"=="--prune-source" (
+ set "PRUNE_SOURCE=1"
+ shift
+ goto :parse_flags
+)
+
+set "BUILD_DIR=%~1"
+if "%BUILD_DIR%"=="" set "BUILD_DIR=build"
+if not exist "%BUILD_DIR%\" (
+ echo ERROR: build tree not found: %BUILD_DIR% 1>&2
+ exit /b 1
+)
+if not "%~1"=="" shift
+
+rem Newest match wins: a stale binary silently produces a stale cache layout.
+call :find_tool
+if not defined CONFIG (
+ for %%c in (Debug Release RelWithDebInfo MinSizeRel) do (
+ echo !TOOL! | findstr /i "\\%%c\\" >nul && set "CONFIG=%%c"
+ )
+)
+if not defined CONFIG set "CONFIG=Release"
+
+echo Building generate_system_cache in %BUILD_DIR% (%CONFIG%)
+cmake --build "%BUILD_DIR%" --config %CONFIG% --target generate_system_cache
+if errorlevel 1 (
+ echo ERROR: could not build generate_system_cache - configure the build tree with -DORCA_TOOLS=ON: 1>&2
+ echo cmake -S "%REPO_ROOT%" -B "%BUILD_DIR%" -DORCA_TOOLS=ON 1>&2
+ exit /b 1
+)
+call :find_tool
+if not defined TOOL (
+ echo ERROR: generate_system_cache.exe not found under %BUILD_DIR% - build with -DORCA_TOOLS=ON 1>&2
+ exit /b 1
+)
+
+set "PROFILES=%REPO_ROOT%\resources\profiles"
+if not exist "%PROFILES%\" (
+ echo ERROR: profiles directory not found: %PROFILES% 1>&2
+ exit /b 1
+)
+for %%d in ("%PROFILES%") do set "PROFILES=%%~fd"
+
+rem Add the slicer's runtime DLL directory to PATH so generate_system_cache.exe
+rem can resolve its dependencies (TKernel.dll etc.) without a full install step.
+set "DLL_DIR="
+for /f "delims=" %%f in ('dir /s /b "%BUILD_DIR%\TKernel.dll" 2^>nul') do (
+ if not defined DLL_DIR set "DLL_DIR=%%~dpf"
+)
+if defined DLL_DIR set "PATH=%DLL_DIR%;%PATH%"
+
+echo Generating per-vendor preset caches in %PROFILES%
+rem Start clean so vendors that went away - and caches written by older tool
+rem versions - don't linger next to the freshly generated ones.
+del /q "%PROFILES%\*.opc" 2>nul
+del /q "%PROFILES%\*.cache" 2>nul
+"%TOOL%" --path "%PROFILES%" --log_level 2
+if errorlevel 1 exit /b %errorlevel%
+
+:next_target
+if "%~1"=="" exit /b 0
+call :ship "%~1"
+if errorlevel 1 exit /b 1
+shift
+goto :next_target
+
+:ship
+set "TARGET=%~1"
+if not exist "%TARGET%\" (
+ echo ERROR: profiles directory not found: %TARGET% 1>&2
+ exit /b 1
+)
+for %%d in ("%TARGET%") do set "TARGET=%%~fd"
+if /i "%TARGET%"=="%PROFILES%" if not defined PRUNE_SOURCE (
+ echo %TARGET%: skipped - this is where the caches were generated.
+ echo Pass --prune-source to prune it; that deletes this checkout's preset JSONs.
+ exit /b 0
+)
+if /i not "%TARGET%"=="%PROFILES%" copy /y "%PROFILES%\*.opc" "%TARGET%\" >nul
+
+set /a SHIPPED=0
+set /a PRUNED=0
+for %%c in ("%PROFILES%\*.opc") do (
+ set /a SHIPPED+=1
+ set "VENDOR=%%~nc"
+ if exist "%TARGET%\!VENDOR!.json" (
+ del /q "%TARGET%\!VENDOR!.json"
+ set /a PRUNED+=1
+ )
+ if exist "%TARGET%\!VENDOR!\" (
+ for /f %%n in ('dir /s /b "%TARGET%\!VENDOR!\*.json" 2^>nul ^| find /c /v ""') do set /a PRUNED+=%%n
+ del /s /q "%TARGET%\!VENDOR!\*.json" >nul 2>&1
+ rem Deepest first, so a directory the delete above emptied goes too; rd
+ rem refuses the ones still holding covers or meshes.
+ for /f "delims=" %%d in ('dir /s /b /ad "%TARGET%\!VENDOR!" 2^>nul ^| sort /r') do rd "%%d" 2>nul
+ )
+)
+echo %TARGET%: !SHIPPED! caches, dropped !PRUNED! preset JSONs
+exit /b 0
+
+:find_tool
+set "TOOL="
+for /f "delims=" %%f in ('dir /s /b /o-d "%BUILD_DIR%\generate_system_cache.exe" 2^>nul') do (
+ if not defined TOOL set "TOOL=%%f"
+)
+exit /b 0
diff --git a/scripts/build_preset_cache.sh b/scripts/build_preset_cache.sh
new file mode 100755
index 0000000000..7a874f7e06
--- /dev/null
+++ b/scripts/build_preset_cache.sh
@@ -0,0 +1,161 @@
+#!/usr/bin/env bash
+# Build the per-vendor system preset caches (one .opc per vendor) by
+# running the generate_system_cache dev tool against a profiles directory, and
+# make every profiles directory named on the command line ship-ready: install
+# the caches into it and delete the preset JSONs they replace, so a build ships
+# one copy of its presets instead of two.
+#
+# ./scripts/build_preset_cache.sh # caches into resources/profiles
+# ./scripts/build_preset_cache.sh -b build/arm64 # search this build tree for the tool
+# ./scripts/build_preset_cache.sh [ ...] # and ship into these profiles dirs
+#
+# Caches are generated into the source tree's resources/profiles, which is what
+# every packaging step copies from. Shipping deletes, so it is a CI packaging
+# step: pass packaged output directories, or the checkout of a build that is
+# about to be packaged from it.
+#
+# A vendor's own .json goes along with its preset JSONs: the cache
+# carries the vendor profile and the version it was built at, so discovery,
+# version checks and installing all read it there. A shipped vendor is its cache
+# and nothing else. Only a vendor that has a cache is pruned, so an ungenerated
+# vendor keeps its JSONs and is simply parsed at startup; non-vendor JSONs
+# (blacklist.json) are left alone, as are the vendor directories themselves —
+# thumbnails, covers and bed models still live there.
+#
+# -b build tree holding the tool
+# (default: build/arm64, build/x86_64, or build — first that exists)
+# -p profiles directory to generate caches into
+# (default: /resources/profiles)
+# -c build config for multi-config generators
+# (default: the config of the tool already in the build tree, else
+# the build tree's CMAKE_BUILD_TYPE)
+# -n skip the rebuild and run the tool already in the build tree
+# -l tool log level (default: 2)
+# --prune-source
+# allow a target that is the directory the caches were generated
+# into (resources/profiles). Pruning it deletes the checkout's own
+# preset JSONs, which is a packaging step - not something a build
+# should do to a working tree by surprise.
+set -euo pipefail
+
+repo_root="$(cd "$(dirname "$0")/.." && pwd -P)"
+build_dir=""
+profiles_dir=""
+config=""
+build_tool=1
+log_level=2
+prune_source=0
+
+# getopts does not do long options; pull this one out first.
+args=()
+for arg in "$@"; do
+ if [ "$arg" = "--prune-source" ]; then prune_source=1; else args+=("$arg"); fi
+done
+set -- ${args+"${args[@]}"}
+
+while getopts "b:p:c:l:nh" opt; do
+ case $opt in
+ b) build_dir="$OPTARG" ;;
+ p) profiles_dir="$OPTARG" ;;
+ c) config="$OPTARG" ;;
+ n) build_tool=0 ;;
+ l) log_level="$OPTARG" ;;
+ h) sed -n '2,${/^#/!q;p;}' "$0" | sed 's/^# \{0,1\}//'; exit 0 ;;
+ *) exit 1 ;;
+ esac
+done
+shift $((OPTIND - 1))
+
+if [ -z "$build_dir" ]; then
+ for candidate in "$repo_root/build/arm64" "$repo_root/build/x86_64" "$repo_root/build"; do
+ if [ -d "$candidate" ]; then build_dir="$candidate"; break; fi
+ done
+fi
+if [ -z "$build_dir" ] || [ ! -d "$build_dir" ]; then
+ echo "ERROR: build tree not found (pass -b )" >&2
+ exit 1
+fi
+
+# Newest match wins: multi-config trees keep one binary per config, and a stale
+# one silently produces a stale cache layout.
+find_tool() {
+ local best="" f
+ while IFS= read -r f; do
+ [ -n "$f" ] || continue
+ if [ -z "$best" ] || [ "$f" -nt "$best" ]; then best="$f"; fi
+ done < <(find "$build_dir" -name generate_system_cache -type f 2>/dev/null)
+ printf '%s' "$best"
+}
+
+tool=$(find_tool)
+if [ -z "$config" ]; then
+ case "$tool" in
+ */Debug/*) config=Debug ;;
+ */Release/*) config=Release ;;
+ */RelWithDebInfo/*) config=RelWithDebInfo ;;
+ */MinSizeRel/*) config=MinSizeRel ;;
+ *) config=$(sed -n 's/^CMAKE_BUILD_TYPE:[A-Z]*=\(.\+\)$/\1/p' "$build_dir/CMakeCache.txt" 2>/dev/null | head -1 || true) ;;
+ esac
+fi
+
+if [ "$build_tool" = 1 ]; then
+ echo "Building generate_system_cache in $build_dir${config:+ ($config)}"
+ build_args=(--build "$build_dir" --target generate_system_cache)
+ if [ -n "$config" ]; then build_args+=(--config "$config"); fi
+ if ! cmake "${build_args[@]}"; then
+ echo "ERROR: could not build generate_system_cache — configure the build tree with -DORCA_TOOLS=ON:" >&2
+ echo " cmake -S \"$repo_root\" -B \"$build_dir\" -DORCA_TOOLS=ON" >&2
+ exit 1
+ fi
+ tool=$(find_tool)
+fi
+
+if [ -z "$tool" ]; then
+ echo "ERROR: generate_system_cache not found under $build_dir — build with -DORCA_TOOLS=ON" >&2
+ exit 1
+fi
+
+if [ -z "$profiles_dir" ]; then profiles_dir="$repo_root/resources/profiles"; fi
+if [ ! -d "$profiles_dir" ]; then
+ echo "ERROR: profiles directory not found: $profiles_dir" >&2
+ exit 1
+fi
+profiles_dir=$(cd "$profiles_dir" && pwd -P)
+
+# Start clean so vendors that went away — and caches written by older tool
+# versions — don't linger next to the freshly generated ones.
+echo "Generating per-vendor preset caches in $profiles_dir"
+rm -f "$profiles_dir"/*.opc "$profiles_dir"/*.cache
+"$tool" --path "$profiles_dir" --log_level "$log_level"
+
+for target in "$@"; do
+ resolved=$(cd "$target" 2>/dev/null && pwd -P) || {
+ echo "ERROR: profiles directory not found: $target" >&2
+ exit 1
+ }
+ if [ "$resolved" = "$profiles_dir" ] && [ "$prune_source" -eq 0 ]; then
+ echo "$resolved: skipped - this is where the caches were generated."
+ echo " Pass --prune-source to prune it; that deletes this checkout's preset JSONs."
+ continue
+ fi
+ if [ "$resolved" != "$profiles_dir" ]; then
+ cp "$profiles_dir"/*.opc "$resolved"/
+ fi
+
+ pruned=0
+ shipped=0
+ for cache in "$profiles_dir"/*.opc; do
+ vendor=$(basename "$cache" .opc)
+ shipped=$(( shipped + 1 ))
+ if [ -f "$resolved/$vendor.json" ]; then
+ rm -f "$resolved/$vendor.json"
+ pruned=$(( pruned + 1 ))
+ fi
+ [ -d "$resolved/$vendor" ] || continue
+ n=$(find "$resolved/$vendor" -name '*.json' | wc -l)
+ find "$resolved/$vendor" -name '*.json' -delete
+ find "$resolved/$vendor" -type d -empty -delete
+ pruned=$(( pruned + n ))
+ done
+ echo "$resolved: $shipped caches, dropped $pruned preset JSONs"
+done
diff --git a/scripts/flatpak/com.orcaslicer.OrcaSlicer.yml b/scripts/flatpak/com.orcaslicer.OrcaSlicer.yml
index c33425f23f..94c98121ec 100644
--- a/scripts/flatpak/com.orcaslicer.OrcaSlicer.yml
+++ b/scripts/flatpak/com.orcaslicer.OrcaSlicer.yml
@@ -347,6 +347,7 @@ modules:
- |
cmake . -B build_flatpak \
-DFLATPAK=ON \
+ -DORCA_TOOLS=ON \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH=/app \
-DCMAKE_INSTALL_PREFIX=/app \
@@ -357,6 +358,13 @@ modules:
- ./scripts/run_gettext.sh
- cmake --build build_flatpak --target install -j$FLATPAK_BUILDER_N_JOBS
+ # Per-vendor preset caches. On the other platforms CI runs this script
+ # itself; the flatpak is built inside flatpak-builder and the generator
+ # only exists in here, so the swap is a build step instead, against the
+ # profiles the install above copied into /app.
+ - cmake --build build_flatpak --target generate_system_cache -j$FLATPAK_BUILDER_N_JOBS
+ - ./scripts/build_preset_cache.sh -n -b build_flatpak /app/share/OrcaSlicer/profiles
+
cleanup:
- /include
@@ -403,6 +411,9 @@ modules:
- type: file
path: ../run_gettext.sh
dest: scripts
+ - type: file
+ path: ../build_preset_cache.sh
+ dest: scripts
# AppData metainfo for GNOME Software & Co.
- type: file
diff --git a/scripts/orca_extra_profile_check.py b/scripts/orca_extra_profile_check.py
index cdfc8544a4..07ce3d69d3 100644
--- a/scripts/orca_extra_profile_check.py
+++ b/scripts/orca_extra_profile_check.py
@@ -46,12 +46,16 @@ def no_duplicates_object_pairs_hook(pairs):
return seen
# NOTE: currently Orca expects compatible_printers to be a defined in every instantiation profile, inheritation is not supported in Profile page
-def check_filament_compatible_printers(vendor_folder):
+def check_filament_compatible_printers(vendor, vendor_folder):
"""
Checks JSON files in the vendor folder for missing or empty 'compatible_printers'
when 'instantiation' is flagged as true.
+ In the OrcaFilamentLibrary 'compatible_printers' is optional: a profile without it is generic and
+ offered on every printer, while a profile that lists printers supersedes the generic one there.
+
Parameters:
+ vendor (str): The vendor name the folder belongs to.
vendor_folder (str or Path): The directory to search for JSON profile files.
Returns:
@@ -115,7 +119,7 @@ def check_filament_compatible_printers(vendor_folder):
for profile in profiles.values():
instantiation = str(profile['content'].get("instantiation", "")).lower() == "true"
- if instantiation:
+ if instantiation and vendor != 'OrcaFilamentLibrary':
try:
compatible_printers = get_property(profile, "compatible_printers")
if not compatible_printers or (isinstance(compatible_printers, list) and not compatible_printers):
@@ -571,7 +575,7 @@ def main():
vendor_path = profiles_dir / vendor_name
if args.check_filaments or not (args.check_materials and not args.check_filaments):
- errors_found += check_filament_compatible_printers(vendor_path / "filament")
+ errors_found += check_filament_compatible_printers(vendor_name, vendor_path / "filament")
if args.check_materials:
new_errors, new_warnings = check_machine_default_materials(profiles_dir, vendor_name)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 1e650df95b..44888f4265 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -262,14 +262,6 @@ if (WIN32)
VERBATIM
)
endforeach ()
-
- if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
- orcaslicer_copy_dlls(COPY_DLLS "Debug" "d" output_dlls_Debug)
- elseif("${CMAKE_BUILD_TYPE}" STREQUAL "RelWithDebInfo")
- orcaslicer_copy_dlls(COPY_DLLS "RelWithDebInfo" "" output_dlls_Release)
- else()
- orcaslicer_copy_dlls(COPY_DLLS "Release" "" output_dlls_Release)
- endif()
else ()
file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/resources" WIN_RESOURCES_SYMLINK)
add_custom_command(TARGET OrcaSlicer POST_BUILD
@@ -285,6 +277,27 @@ if (WIN32)
COMMENT "Copying Python runtime into the build tree"
VERBATIM)
+ if (CMAKE_CONFIGURATION_TYPES)
+ # Multi-config generators (Visual Studio, Ninja Multi-Config): copy per config.
+ foreach (cfg ${CMAKE_CONFIGURATION_TYPES})
+ if ("${cfg}" STREQUAL "Debug")
+ orcaslicer_copy_dlls(COPY_DLLS "Debug" "d" output_dlls_Debug)
+ elseif("${cfg}" STREQUAL "RelWithDebInfo")
+ orcaslicer_copy_dlls(COPY_DLLS "RelWithDebInfo" "" output_dlls_RelWithDebInfo)
+ else()
+ orcaslicer_copy_dlls(COPY_DLLS "${cfg}" "" output_dlls_${cfg})
+ endif()
+ endforeach()
+ else()
+ # Single-config generators (Ninja): use CMAKE_BUILD_TYPE.
+ if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
+ orcaslicer_copy_dlls(COPY_DLLS "Debug" "d" output_dlls_Debug)
+ elseif("${CMAKE_BUILD_TYPE}" STREQUAL "RelWithDebInfo")
+ orcaslicer_copy_dlls(COPY_DLLS "RelWithDebInfo" "" output_dlls_RelWithDebInfo)
+ else()
+ orcaslicer_copy_dlls(COPY_DLLS "Release" "" output_dlls_Release)
+ endif()
+ endif()
else ()
if (APPLE AND NOT CMAKE_MACOSX_BUNDLE)
diff --git a/src/OrcaSlicer.cpp b/src/OrcaSlicer.cpp
index e0a15209a3..8176e9f444 100644
--- a/src/OrcaSlicer.cpp
+++ b/src/OrcaSlicer.cpp
@@ -3,7 +3,9 @@
#define _WIN32_WINNT 0x0502
// The standard Windows includes.
#define WIN32_LEAN_AND_MEAN
+ #ifndef NOMINMAX
#define NOMINMAX
+ #endif
#include
#include
#include
@@ -7054,7 +7056,7 @@ int CLI::run(int argc, char **argv)
gcode_viewer.render_calibration_thumbnail(*calibration_data, cali_thumbnail_width, cali_thumbnail_height,
calibration_params, partplate_list, opengl_mgr);
//generate_calibration_thumbnail(*calibration_data, thumbnail_width, thumbnail_height, calibration_params);
- //*plate_bboxes[index] = p->generate_first_layer_bbox();
+ // *plate_bboxes[index] = p->generate_first_layer_bbox();
calibration_thumbnails.push_back(calibration_data);*/
PlateBBoxData* plate_bbox = new PlateBBoxData();
diff --git a/src/OrcaSlicer_app_msvc.cpp b/src/OrcaSlicer_app_msvc.cpp
index b1e498f4e4..35568a9cfa 100644
--- a/src/OrcaSlicer_app_msvc.cpp
+++ b/src/OrcaSlicer_app_msvc.cpp
@@ -2,7 +2,9 @@
#define _WIN32_WINNT 0x0502
// The standard Windows includes.
#define WIN32_LEAN_AND_MEAN
+#ifndef NOMINMAX
#define NOMINMAX
+#endif
#include
#include
#include
diff --git a/src/dev-utils/BaseException.cpp b/src/dev-utils/BaseException.cpp
index f33c8f635f..efb7a98245 100644
--- a/src/dev-utils/BaseException.cpp
+++ b/src/dev-utils/BaseException.cpp
@@ -69,7 +69,7 @@ void CBaseException::OutputString(LPCTSTR lpszFormat, ...)
//WriteConsole(GetStdHandle(STD_OUTPUT_HANDLE), szBuf, _tcslen(szBuf), NULL, NULL);
//output it to the current directory of binary
- std::string output_str = textconv_helper::T2A_(szBuf);
+ std::string output_str = static_cast(textconv_helper::T2A_(szBuf));
*output_file << output_str;
output_file->flush();
}
diff --git a/src/dev-utils/CMakeLists.txt b/src/dev-utils/CMakeLists.txt
index e3534a024a..2cfce6a7c5 100644
--- a/src/dev-utils/CMakeLists.txt
+++ b/src/dev-utils/CMakeLists.txt
@@ -20,6 +20,16 @@ if (SLIC3R_ENC_CHECK)
)
endif()
+if (ORCA_TOOLS)
+ set(_DEV_DEFS -DBOOST_ALL_NO_LIB -DBOOST_USE_WINAPI_VERSION=0x602 -DBOOST_SYSTEM_USE_UTF8)
+
+ # generate_system_cache: pre-generates per-vendor .opc files under resources/profiles for CI bundling.
+ add_executable(generate_system_cache generate_system_cache.cpp)
+ target_link_libraries(generate_system_cache libslic3r boost_headeronly)
+ target_compile_definitions(generate_system_cache PRIVATE ${_DEV_DEFS})
+
+endif()
+
# Function that adds source file encoding check to a target
# using the above encoding-check binary
diff --git a/src/dev-utils/generate_system_cache.cpp b/src/dev-utils/generate_system_cache.cpp
new file mode 100644
index 0000000000..426ccee997
--- /dev/null
+++ b/src/dev-utils/generate_system_cache.cpp
@@ -0,0 +1,84 @@
+#include "libslic3r/PresetBundle.hpp"
+#include "libslic3r/Preset.hpp"
+#include "libslic3r/Utils.hpp"
+
+#include
+#include
+#include
+#include
+#include
+
+using namespace Slic3r;
+namespace fs = boost::filesystem;
+namespace po = boost::program_options;
+
+int main(int argc, char* argv[])
+{
+ po::options_description desc("OrcaSlicer System Cache Generator\nUsage");
+ // clang-format off
+ desc.add_options()
+ ("help,h", "Show help")
+#ifdef __APPLE__
+ ("path,p", po::value()->default_value("../../../../../../../resources/profiles"), "Path to profiles directory")
+#else
+ ("path,p", po::value()->default_value("../../../resources/profiles"), "Path to profiles directory")
+#endif
+ ("log_level,l", po::value()->default_value(2), "Log level (0=trace, 2=info, 4=error)");
+ // clang-format on
+
+ po::variables_map vm;
+ try {
+ po::store(po::parse_command_line(argc, argv, desc), vm);
+ if (vm.count("help")) { std::cout << desc << "\n"; return 0; }
+ po::notify(vm);
+ } catch (const po::error& e) {
+ std::cerr << "Error: " << e.what() << "\n" << desc << "\n";
+ return 1;
+ }
+
+ const std::string profiles_path = vm["path"].as();
+ const int log_level = vm["log_level"].as();
+
+ if (!fs::exists(profiles_path) || !fs::is_directory(profiles_path)) {
+ std::cerr << "Error: '" << profiles_path << "' is not a valid directory\n";
+ return 1;
+ }
+
+ set_logging_level(log_level);
+ set_data_dir(profiles_path);
+ set_resources_dir(fs::path(profiles_path).parent_path().make_preferred().string());
+
+ const fs::path user_dir = fs::path(data_dir()) / PRESET_USER_DIR;
+ if (!fs::exists(user_dir))
+ fs::create_directories(user_dir);
+
+ AppConfig app_config;
+ app_config.set("preset_folder", "default");
+
+ auto preset_bundle = std::make_unique();
+ preset_bundle->set_is_validation_mode(true);
+ preset_bundle->set_default_suppressed(true);
+ preset_bundle->set_generate_vendor_caches(true);
+
+ std::cout << "Loading system presets from: " << profiles_path << "\n";
+
+ try {
+ // In validation mode data_dir() is the profiles directory set above, so the
+ // loader writes each .opc next to its .json as it parses it.
+ preset_bundle->load_presets(app_config, ForwardCompatibilitySubstitutionRule::EnableSilent);
+ } catch (const std::exception& ex) {
+ std::cerr << "Failed to load presets: " << ex.what() << "\n";
+ return 1;
+ }
+
+ size_t cache_count = 0;
+ for (auto& entry : fs::directory_iterator(profiles_path))
+ if (boost::iends_with(entry.path().string(), ".opc"))
+ ++ cache_count;
+ if (cache_count == 0) {
+ std::cerr << "No vendor cache files were generated under " << profiles_path << "\n";
+ return 1;
+ }
+ std::cout << "Generated " << cache_count << " vendor cache file(s) under " << profiles_path << "\n";
+ return 0;
+}
diff --git a/src/libslic3r/AABBMesh.cpp b/src/libslic3r/AABBMesh.cpp
index a23fd69f68..be026f69d7 100644
--- a/src/libslic3r/AABBMesh.cpp
+++ b/src/libslic3r/AABBMesh.cpp
@@ -54,12 +54,12 @@ public:
int & i,
Eigen::Matrix &closest)
{
- size_t idx_unsigned = 0;
- Vec3d closest_vec3d(closest);
- double dist =
+ size_t idx_unsigned { 0 };
+ Vec3d closest_vec3d { Vec3d::Zero() };
+ const double dist {
AABBTreeIndirect::squared_distance_to_indexed_triangle_set(
its.vertices, its.indices, m_tree, point, idx_unsigned,
- closest_vec3d);
+ closest_vec3d) };
i = int(idx_unsigned);
closest = closest_vec3d;
return dist;
@@ -311,10 +311,9 @@ AABBMesh::hit_result IndexedMesh::filter_hits(
double AABBMesh::squared_distance(const Vec3d &p, int& i, Vec3d& c) const {
- double sqdst = 0;
- Eigen::Matrix pp = p;
- Eigen::Matrix cc;
- sqdst = m_aabb->squared_distance(*m_tm, pp, i, cc);
+ const Eigen::Matrix pp { p };
+ Eigen::Matrix cc { Vec3d::Zero() };
+ const double sqdst { m_aabb->squared_distance(*m_tm, pp, i, cc) };
c = cc;
return sqdst;
}
diff --git a/src/libslic3r/AABBTreeLines.hpp b/src/libslic3r/AABBTreeLines.hpp
index 97ad1bdf44..52c4cdf545 100644
--- a/src/libslic3r/AABBTreeLines.hpp
+++ b/src/libslic3r/AABBTreeLines.hpp
@@ -31,8 +31,9 @@ namespace AABBTreeLines {
inline VectorType closest_point_to_origin(size_t primitive_index, ScalarType& squared_distance) const
{
Vec nearest_point;
+ Vec cast_origin = origin.template cast();
const LineType& line = lines[primitive_index];
- squared_distance = line_alg::distance_to_squared(line, origin.template cast(), &nearest_point);
+ squared_distance = line_alg::distance_to_squared(line, cast_origin, &nearest_point);
return nearest_point.template cast();
}
};
diff --git a/src/libslic3r/AppConfig.cpp b/src/libslic3r/AppConfig.cpp
index 159d9bbeda..2d0c6a5d8d 100644
--- a/src/libslic3r/AppConfig.cpp
+++ b/src/libslic3r/AppConfig.cpp
@@ -280,6 +280,9 @@ void AppConfig::set_defaults()
set(SETTING_OPENGL_FPS_CAP, std::to_string(fps_cap));
}
+ // The getter already defaults, parses and clamps; write back what it resolves to.
+ set(SETTING_PLUGIN_PAGES_VISIBLE_COUNT, std::to_string(get_plugin_pages_visible_count()));
+
if (get(SETTING_OPENGL_SHOW_FPS_OVERLAY).empty())
set_bool(SETTING_OPENGL_SHOW_FPS_OVERLAY, false);
@@ -626,6 +629,12 @@ void AppConfig::set_defaults()
set_bool("window_buttons_on_left", false);
#endif
+ if (get("use_printer_agents").empty())
+ {
+ // false = legacy behavior using print hosts
+ set_bool("use_printer_agents", false);
+ }
+
// Remove legacy window positions/sizes
erase("app", "main_frame_maximized");
erase("app", "main_frame_pos");
@@ -847,6 +856,10 @@ std::string AppConfig::load()
local_machine.dev_ip = p["dev_ip"].get();
if (p.contains("printer_type"))
local_machine.printer_type = p["printer_type"].get();
+ if (p.contains("printer_agent_id"))
+ local_machine.printer_agent_id = p["printer_agent_id"].get();
+ if (p.contains("access_code"))
+ local_machine.access_code = p["access_code"].get();
m_local_machines[local_machine.dev_id] = local_machine;
}
} else {
@@ -877,7 +890,7 @@ std::string AppConfig::load()
}
}
}
- } catch(std::exception err) {
+ } catch(const std::exception &err) {
BOOST_LOG_TRIVIAL(info) << format("parse app config \"%1%\", error: %2%", AppConfig::loading_path(), err.what());
return err.what();
@@ -1059,6 +1072,8 @@ void AppConfig::save()
m_json["dev_name"] = local_machine.second.dev_name;
m_json["dev_ip"] = local_machine.second.dev_ip;
m_json["printer_type"] = local_machine.second.printer_type;
+ m_json["printer_agent_id"] = local_machine.second.printer_agent_id;
+ m_json["access_code"] = local_machine.second.access_code;
j["local_machines"][local_machine.first] = m_json;
}
@@ -1624,6 +1639,22 @@ void AppConfig::set_network_plugin_version(const std::string& version)
set(SETTING_NETWORK_PLUGIN_VERSION, version);
}
+int AppConfig::get_plugin_pages_visible_count() const
+{
+ std::string value = get(SETTING_PLUGIN_PAGES_VISIBLE_COUNT);
+ if (value.empty())
+ return PLUGIN_PAGES_VISIBLE_COUNT_DEFAULT;
+
+ int visible_count = PLUGIN_PAGES_VISIBLE_COUNT_DEFAULT;
+ try {
+ visible_count = std::stoi(value);
+ }
+ catch (...) {
+ return PLUGIN_PAGES_VISIBLE_COUNT_DEFAULT;
+ }
+ return std::clamp(visible_count, PLUGIN_PAGES_VISIBLE_COUNT_MIN, PLUGIN_PAGES_VISIBLE_COUNT_MAX);
+}
+
std::vector AppConfig::get_skipped_network_versions() const
{
std::vector result;
diff --git a/src/libslic3r/AppConfig.hpp b/src/libslic3r/AppConfig.hpp
index 2c83ebb488..0a278f4f1f 100644
--- a/src/libslic3r/AppConfig.hpp
+++ b/src/libslic3r/AppConfig.hpp
@@ -41,6 +41,11 @@ using namespace nlohmann;
#define SETTING_OPENGL_PHONG_SSAO "opengl_phong_ssao"
#define SETTING_OPENGL_PHONG_SMOOTH_NORMALS "opengl_phong_smooth_normals"
+#define SETTING_PLUGIN_PAGES_VISIBLE_COUNT "plugin_pages_visible_count"
+#define PLUGIN_PAGES_VISIBLE_COUNT_MIN 1
+#define PLUGIN_PAGES_VISIBLE_COUNT_DEFAULT 5
+#define PLUGIN_PAGES_VISIBLE_COUNT_MAX 10
+
#if defined(_WIN32) || defined(_WIN64)
#define BAMBU_NETWORK_AGENT_VERSION_LEGACY "01.10.01.09"
#else
@@ -61,10 +66,19 @@ struct BBLocalMachine
std::string dev_ip;
std::string dev_id; /* serial number */
std::string printer_type; /* model_id */
+ std::string printer_agent_id; /* id of the IPrinterAgent that discovered/bound this device, e.g. "bbl"; empty for entries persisted before this field existed */
+ // Access code, scoped to printer_agent_id above - so a code saved while bound under one
+ // printer agent isn't treated as valid for a different, independent agent talking to the
+ // same physical dev_id. Empty for entries persisted before this field existed; those fall
+ // back to the legacy flat "access_code"/"user_access_code" AppConfig sections (BBL-only,
+ // since BBL was the only agent when they were saved) - see
+ // get_access_code_with_legacy_fallback() in DevManager.cpp.
+ std::string access_code;
bool operator==(const BBLocalMachine& other) const
{
- return dev_name == other.dev_name && dev_ip == other.dev_ip && dev_id == other.dev_id && printer_type == other.printer_type;
+ return dev_name == other.dev_name && dev_ip == other.dev_ip && dev_id == other.dev_id && printer_type == other.printer_type &&
+ printer_agent_id == other.printer_agent_id && access_code == other.access_code;
}
bool operator!=(const BBLocalMachine& other) const { return !operator==(other); }
};
@@ -374,6 +388,10 @@ public:
std::string get_network_plugin_version() const;
void set_network_plugin_version(const std::string& version);
+ // Number of plugin pages shown as fixed tabs before the rest are collapsed into a
+ // dropdown on the last tab.
+ int get_plugin_pages_visible_count() const;
+
std::vector get_skipped_network_versions() const;
void add_skipped_network_version(const std::string& version);
bool is_network_version_skipped(const std::string& version) const;
diff --git a/src/libslic3r/Arachne/WallToolPaths.cpp b/src/libslic3r/Arachne/WallToolPaths.cpp
index 0a59619560..724016bcb1 100644
--- a/src/libslic3r/Arachne/WallToolPaths.cpp
+++ b/src/libslic3r/Arachne/WallToolPaths.cpp
@@ -154,8 +154,8 @@ void simplify(Polygon &thiss, const int64_t smallest_line_segment_squared, const
//h^2 = L^2 / b^2 [factor the divisor]
const int64_t height_2 = double(area_removed_so_far) * double(area_removed_so_far) / double(base_length_2);
// Orca: The value of `height_2` is squared, so we need to compare it with the squared value
- if ((height_2 <= Slic3r::sqr(scaled(0.005)) //Almost exactly colinear (barring rounding errors).
- && Line::distance_to_infinite(current, previous, next) <= scaled(0.005))) // make sure that height_2 is not small because of cancellation of positive and negative areas
+ if ((height_2 <= Slic3r::sqr(colinear_vertex_tolerance()) //Almost exactly colinear (barring rounding errors).
+ && Line::distance_to_infinite(current, previous, next) <= double(colinear_vertex_tolerance()))) // make sure that height_2 is not small because of cancellation of positive and negative areas
continue;
if (length2 < smallest_line_segment_squared
diff --git a/src/libslic3r/Arachne/WallToolPaths.hpp b/src/libslic3r/Arachne/WallToolPaths.hpp
index dde3dc785f..d7120a088c 100644
--- a/src/libslic3r/Arachne/WallToolPaths.hpp
+++ b/src/libslic3r/Arachne/WallToolPaths.hpp
@@ -23,14 +23,14 @@ inline coord_t meshfix_maximum_extrusion_area_deviation() { return scaled(0.005)) // Almost exactly colinear (barring rounding errors).
- && Line::distance_to_infinite(current.p, previous.p, next.p) <= scaled(0.005)) // Make sure that height_2 is not small because of cancellation of positive and negative areas
+ if ((height_2 <= Slic3r::sqr(colinear_vertex_tolerance()) // Almost exactly colinear (barring rounding errors).
+ && Line::distance_to_infinite(current.p, previous.p, next.p) <= double(colinear_vertex_tolerance())) // Make sure that height_2 is not small because of cancellation of positive and negative areas
// We shouldn't remove middle junctions of colinear segments if the area changed for the C-P segment is exceeding the maximum allowed
&& extrusion_area_error <= maximum_extrusion_area_deviation)
{
diff --git a/src/libslic3r/Arachne/utils/ExtrusionLine.hpp b/src/libslic3r/Arachne/utils/ExtrusionLine.hpp
index 21791000f0..72e008cef1 100644
--- a/src/libslic3r/Arachne/utils/ExtrusionLine.hpp
+++ b/src/libslic3r/Arachne/utils/ExtrusionLine.hpp
@@ -32,6 +32,14 @@ class Flow;
namespace Slic3r::Arachne
{
+// ORCA: Tolerance of the "almost exactly colinear" early-out shared by the two simplify() passes
+// (this file and WallToolPaths.cpp). That test drops a vertex regardless of the user's Maximum wall
+// resolution/deviation, so it has to stay at the scale of coordinate rounding noise. A larger value
+// silently decimates finely tessellated curves: on a circle, one vertex may be removed whenever the
+// sagitta of the resulting chord falls below the tolerance, which halves the point count and turns
+// smooth arcs into corners the firmware has to decelerate through.
+inline coord_t colinear_vertex_tolerance() { return coord_t(SCALED_EPSILON); }
+
/*!
* Represents a polyline (not just a line) that is to be extruded with variable
* line width.
diff --git a/src/libslic3r/BoundingBox.cpp b/src/libslic3r/BoundingBox.cpp
index a2a510b64c..cf5441dace 100644
--- a/src/libslic3r/BoundingBox.cpp
+++ b/src/libslic3r/BoundingBox.cpp
@@ -8,6 +8,8 @@
namespace Slic3r {
template BoundingBoxBase::BoundingBoxBase(const Points &points);
+template void BoundingBoxBase::construct<0, BoundingBox, Points::const_iterator>(BoundingBox&, Points::const_iterator, Points::const_iterator);
+template void BoundingBoxBase::construct<1, BoundingBox, Points::const_iterator>(BoundingBox&, Points::const_iterator, Points::const_iterator);
template BoundingBoxBase::BoundingBoxBase(const std::vector &points);
template BoundingBox3Base::BoundingBox3Base(const std::vector &points);
diff --git a/src/libslic3r/BoundingBox.hpp b/src/libslic3r/BoundingBox.hpp
index 42f5220975..8aac3f1cb9 100644
--- a/src/libslic3r/BoundingBox.hpp
+++ b/src/libslic3r/BoundingBox.hpp
@@ -25,7 +25,7 @@ public:
min(p1), max(p1), defined(false) { merge(p2); merge(p3); }
template>
- BoundingBoxBase(It from, It to)
+ BoundingBoxBase(It from, It to) : BoundingBoxBase()
{ construct(*this, from, to); }
BoundingBoxBase(const PointsType &points)
diff --git a/src/libslic3r/Brim.cpp b/src/libslic3r/Brim.cpp
index 1fd71ab13a..a0d6112756 100644
--- a/src/libslic3r/Brim.cpp
+++ b/src/libslic3r/Brim.cpp
@@ -349,7 +349,7 @@ static ExPolygons make_brim_ears_auto(const ExPolygons& obj_expoly, coord_t size
return mouse_ears_ex;
}
-static ExPolygons make_brim_ears(const PrintObject* object, const double& flowWidth, float brim_offset, Flow &flow, bool is_outer_brim)
+static ExPolygons make_brim_ears(const PrintObject* object)
{
ExPolygons mouse_ears_ex;
BrimPoints brim_ear_points = object->model_object()->brim_points;
@@ -373,12 +373,7 @@ static ExPolygons make_brim_ears(const PrintObject* object, const double& flowWi
Vec3f world_pos = pt.transform(trsf.get_matrix());
if ( world_pos.z() > 0) continue;
Polygon point_round;
- float brim_width = floor(scale_(pt.head_front_radius) / flowWidth / 2) * flowWidth * 2;
- if (is_outer_brim) {
- double flowWidthScale = flowWidth / SCALING_FACTOR;
- brim_width = floor(brim_width / flowWidthScale / 2) * flowWidthScale * 2;
- }
- coord_t size_ear = (brim_width - brim_offset - flow.scaled_spacing());
+ const coord_t size_ear = scale_(pt.head_front_radius);
for (size_t i = 0; i < POLY_SIDE_COUNT; i++) {
double angle = (2.0 * PI * i) / POLY_SIDE_COUNT;
point_round.points.emplace_back(size_ear * cos(angle), size_ear * sin(angle));
@@ -452,7 +447,8 @@ static ExPolygons outer_inner_brim_area(const Print& print,
bool has_brim_auto = object->config().brim_type == btAutoBrim;
const bool use_auto_brim_ears = object->config().brim_type == btEar;
const bool use_brim_ears = object->config().brim_type == btPainted;
- const bool has_inner_brim = brim_type == btInnerOnly || brim_type == btOuterAndInner || use_auto_brim_ears || use_brim_ears;
+ const bool use_inner_brim_ears = (use_auto_brim_ears || use_brim_ears) && !object->config().brim_ears_outer_only.value;
+ const bool has_inner_brim = brim_type == btInnerOnly || brim_type == btOuterAndInner || use_inner_brim_ears;
// btLeadingEdgeOnly is a belt-printer mode; on a flat bed there is no leading
// edge, so it degrades to an ordinary outer brim rather than silently to none.
const bool has_outer_brim = brim_type == btOuterOnly || brim_type == btOuterAndInner || brim_type == btAutoBrim || brim_type == btLeadingEdgeOnly || use_auto_brim_ears || use_brim_ears;
@@ -533,7 +529,7 @@ static ExPolygons outer_inner_brim_area(const Print& print,
auto innerExpoly = offset_ex(ex_poly.contour, brim_offset, jtRound, SCALED_RESOLUTION);
ExPolygons outerExpoly;
if (use_brim_ears) {
- outerExpoly = make_brim_ears(object, flowWidth, brim_offset, flow, true);
+ outerExpoly = make_brim_ears(object);
//outerExpoly = offset_ex(outerExpoly, brim_width_mod, jtRound, SCALED_RESOLUTION);
} else if (use_auto_brim_ears) {
coord_t size_ear = (brim_width_mod - brim_offset - flow.scaled_spacing());
@@ -547,7 +543,7 @@ static ExPolygons outer_inner_brim_area(const Print& print,
ExPolygons outerExpoly;
auto innerExpoly = offset_ex(ex_poly_holes_reversed, -brim_width - brim_offset);
if (use_brim_ears) {
- outerExpoly = make_brim_ears(object, flowWidth, brim_offset, flow, false);
+ outerExpoly = make_brim_ears(object);
} else if (use_auto_brim_ears) {
coord_t size_ear = (brim_width - brim_offset - flow.scaled_spacing());
outerExpoly = make_brim_ears_auto(offset_ex(ex_poly_holes_reversed, -brim_offset), size_ear, ear_detection_length, brim_ears_max_angle, false);
diff --git a/src/libslic3r/CMakeLists.txt b/src/libslic3r/CMakeLists.txt
index 9ca113e958..daa1b5c6bf 100644
--- a/src/libslic3r/CMakeLists.txt
+++ b/src/libslic3r/CMakeLists.txt
@@ -162,6 +162,8 @@ set(lisbslic3r_sources
Fill/FillConcentric.hpp
Fill/FillConcentricInternal.cpp
Fill/FillConcentricInternal.hpp
+ Fill/FillCornerSmoothing.cpp
+ Fill/FillCornerSmoothing.hpp
Fill/Fill.cpp
Fill/FillCrossHatch.cpp
Fill/FillCrossHatch.hpp
@@ -363,6 +365,8 @@ set(lisbslic3r_sources
Polyline.hpp
PresetBundle.cpp
PresetBundle.hpp
+ PresetCacheFormat.cpp
+ PresetCacheFormat.hpp
Preset.cpp
Preset.hpp
PrincipalComponents2D.cpp
diff --git a/src/libslic3r/Config.cpp b/src/libslic3r/Config.cpp
index a43f659be6..242e4bb146 100644
--- a/src/libslic3r/Config.cpp
+++ b/src/libslic3r/Config.cpp
@@ -2031,7 +2031,8 @@ const double& DynamicConfig::opt_float(const t_config_option_key &opt_key, unsig
return opt_floats_nullable->get_at(idx);
} else {
assert(false);
- return 0;
+ static const double zero = 0.0;
+ return zero;
}
}
diff --git a/src/libslic3r/Config.hpp b/src/libslic3r/Config.hpp
index 6f4117d249..9e4344820d 100644
--- a/src/libslic3r/Config.hpp
+++ b/src/libslic3r/Config.hpp
@@ -28,6 +28,9 @@
#include
#include
+// The serialize() members below archive ConfigOption hierarchies through
+// cereal::base_class, whose registration machinery lives in polymorphic.hpp.
+#include
namespace Slic3r {
struct FloatOrPercent
@@ -2273,6 +2276,8 @@ public:
plugin_picker,
// Raw JSON string value, edited through a dialog behind a button rather than in the row.
plugin_config,
+ // PrinterAgentChoice
+ printer_agent_select,
};
// Identifier of this option. It is stored here so that it is accessible through the by_serialization_key_ordinal map.
@@ -2980,6 +2985,8 @@ public:
const double & opt_float(const t_config_option_key &opt_key, unsigned int idx) const;
double & opt_float_nullable(const t_config_option_key &opt_key, unsigned int idx) { return this->option(opt_key)->get_at(idx); }
const double & opt_float_nullable(const t_config_option_key &opt_key, unsigned int idx) const { return dynamic_cast(this->option(opt_key))->get_at(idx); }
+ FloatOrPercent & opt_float_or_percent_nullable(const t_config_option_key &opt_key, unsigned int idx) { return this->option(opt_key)->get_at(idx); }
+ const FloatOrPercent & opt_float_or_percent_nullable(const t_config_option_key &opt_key, unsigned int idx) const { return dynamic_cast(this->option(opt_key))->get_at(idx); }
int& opt_int(const t_config_option_key &opt_key) { return this->option(opt_key)->value; }
int opt_int(const t_config_option_key &opt_key) const { return dynamic_cast(this->option(opt_key))->value; }
diff --git a/src/libslic3r/Extruder.cpp b/src/libslic3r/Extruder.cpp
index 1e250b707e..b1b6ca347a 100644
--- a/src/libslic3r/Extruder.cpp
+++ b/src/libslic3r/Extruder.cpp
@@ -220,12 +220,12 @@ double Extruder::retract_restart_extra() const
double Extruder::retract_length_toolchange() const
{
- return m_config->retract_length_toolchange.get_at(extruder_id());
+ return m_config->retract_length_toolchange.get_at(m_config_index);
}
double Extruder::retract_restart_extra_toolchange() const
{
- return m_config->retract_restart_extra_toolchange.get_at(extruder_id());
+ return m_config->retract_restart_extra_toolchange.get_at(m_config_index);
}
double Extruder::travel_slope() const
diff --git a/src/libslic3r/Feature/FuzzySkin/FuzzySkin.cpp b/src/libslic3r/Feature/FuzzySkin/FuzzySkin.cpp
index 11e2d081d2..97f8f743fb 100644
--- a/src/libslic3r/Feature/FuzzySkin/FuzzySkin.cpp
+++ b/src/libslic3r/Feature/FuzzySkin/FuzzySkin.cpp
@@ -682,7 +682,7 @@ Polygon apply_fuzzy_skin(const Polygon& polygon, const PerimeterGenerator& perim
return fuzzified;
}
-void apply_fuzzy_skin(Arachne::ExtrusionLine* extrusion, const PerimeterGenerator& perimeter_generator, const bool is_contour)
+void apply_fuzzy_skin(Arachne::ExtrusionLine* extrusion, const PerimeterGenerator& perimeter_generator, const bool is_contour, const bool closed)
{
const auto slice_z = perimeter_generator.slice_z;
const auto& regions = perimeter_generator.regions_by_fuzzify;
@@ -690,7 +690,7 @@ void apply_fuzzy_skin(Arachne::ExtrusionLine* extrusion, const PerimeterGenerato
const auto& config = regions.begin()->first;
const bool fuzzify = should_fuzzify(config, perimeter_generator.layer_id, extrusion->inset_idx, is_contour);
if (fuzzify)
- fuzzy_extrusion_line(extrusion->junctions, slice_z, config);
+ fuzzy_extrusion_line(extrusion->junctions, slice_z, config, closed);
} else {
// Merge regions that produce identical fuzzy effects (differ only in type).
// When the style (e.g. External) and a painted region (All) both fuzzify this loop
@@ -701,10 +701,19 @@ void apply_fuzzy_skin(Arachne::ExtrusionLine* extrusion, const PerimeterGenerato
// Fast path: single merged region — apply directly without splitting
if (merged_regions.size() == 1 && merged_regions.front().expolygons.empty()) {
- fuzzy_extrusion_line(extrusion->junctions, slice_z, *merged_regions.front().config);
+ fuzzy_extrusion_line(extrusion->junctions, slice_z, *merged_regions.front().config, closed);
return;
}
+ // Open path means this is a thin wall that collapsed into a single thick line, in this case the path will go exactly
+ // between the middle two sides of the object. And since the paint segmentation never goes beyond the middle line because
+ // it uses voronoi diagram, we need to expand the segmentation a little bit to make sure it covers the path.
+ if (!closed) {
+ for (auto& r : merged_regions) {
+ r.expolygons = offset_ex(r.expolygons, perimeter_generator.ext_perimeter_flow.scaled_width() / 10);
+ }
+ }
+
#ifdef DEBUG_FUZZY
{
int i = 0;
@@ -752,7 +761,7 @@ void apply_fuzzy_skin(Arachne::ExtrusionLine* extrusion, const PerimeterGenerato
// Fuzzy splitted extrusion
if (std::all_of(splitted.begin(), splitted.end(), [](const Algorithm::SplitLineJunction& j) { return j.clipped; })) {
// The entire polygon is fuzzified
- fuzzy_extrusion_line(extrusion->junctions, slice_z, *r.config);
+ fuzzy_extrusion_line(extrusion->junctions, slice_z, *r.config, closed);
continue;
} else {
const auto current_ext = extrusion->junctions;
@@ -803,7 +812,7 @@ void apply_fuzzy_skin(Arachne::ExtrusionLine* extrusion, const PerimeterGenerato
}
//Orca: ensure the loop is closed after fuzzy
- if (!extrusion->junctions.empty() && extrusion->junctions.front().p != extrusion->junctions.back().p) {
+ if (closed && !extrusion->junctions.empty() && extrusion->junctions.front().p != extrusion->junctions.back().p) {
extrusion->junctions.back().p = extrusion->junctions.front().p;
extrusion->junctions.back().w = extrusion->junctions.front().w;
}
diff --git a/src/libslic3r/Feature/FuzzySkin/FuzzySkin.hpp b/src/libslic3r/Feature/FuzzySkin/FuzzySkin.hpp
index e099139c90..51d503a3c9 100644
--- a/src/libslic3r/Feature/FuzzySkin/FuzzySkin.hpp
+++ b/src/libslic3r/Feature/FuzzySkin/FuzzySkin.hpp
@@ -16,7 +16,7 @@ void group_region_by_fuzzify(PerimeterGenerator& g);
bool should_fuzzify(const FuzzySkinConfig& config, int layer_id, size_t loop_idx, bool is_contour);
Polygon apply_fuzzy_skin(const Polygon& polygon, const PerimeterGenerator& perimeter_generator, size_t loop_idx, bool is_contour);
-void apply_fuzzy_skin(Arachne::ExtrusionLine* extrusion, const PerimeterGenerator& perimeter_generator, bool is_contour);
+void apply_fuzzy_skin(Arachne::ExtrusionLine* extrusion, const PerimeterGenerator& perimeter_generator, bool is_contour, bool closed = true);
} // namespace Slic3r::Feature::FuzzySkin
diff --git a/src/libslic3r/FilamentGroup.cpp b/src/libslic3r/FilamentGroup.cpp
index 97da94652c..07a4cc2449 100644
--- a/src/libslic3r/FilamentGroup.cpp
+++ b/src/libslic3r/FilamentGroup.cpp
@@ -1021,7 +1021,7 @@ namespace Slic3r
if (FGMode::MatchMode == ctx.group_info.mode)
return calc_filament_group_for_match(cost);
}
- catch (const FilamentGroupException& e) {
+ catch (const FilamentGroupException&) {
}
return calc_filament_group_for_flush(cost);
diff --git a/src/libslic3r/Fill/Fill.cpp b/src/libslic3r/Fill/Fill.cpp
index f29d4ef3fd..0888e1bb55 100644
--- a/src/libslic3r/Fill/Fill.cpp
+++ b/src/libslic3r/Fill/Fill.cpp
@@ -278,6 +278,9 @@ struct SurfaceFillParams
// For Gyroid: when true, use the parameterized "optimized" wave.
bool gyroid_optimized = false;
+ // Orca: corner smoothing factor in the range [0, 1].
+ double smooth_factor { 0. };
+
CenterOfSurfacePattern center_of_surface_pattern{CenterOfSurfacePattern::Each_Surface};
bool separated_infills{false};
@@ -316,6 +319,7 @@ struct SurfaceFillParams
RETURN_COMPARE_NON_EQUAL(skin_infill_depth);
RETURN_COMPARE_NON_EQUAL(infill_overhang_angle);
RETURN_COMPARE_NON_EQUAL(gyroid_optimized);
+ RETURN_COMPARE_NON_EQUAL(smooth_factor);
RETURN_COMPARE_NON_EQUAL(center_of_surface_pattern);
RETURN_COMPARE_NON_EQUAL(separated_infills);
RETURN_COMPARE_NON_EQUAL_TYPED(unsigned, fill_order);
@@ -348,6 +352,7 @@ struct SurfaceFillParams
this->center_of_surface_pattern == rhs.center_of_surface_pattern &&
this->separated_infills == rhs.separated_infills &&
this->gyroid_optimized == rhs.gyroid_optimized &&
+ this->smooth_factor == rhs.smooth_factor &&
this->fill_order == rhs.fill_order;
}
};
@@ -964,6 +969,11 @@ std::vector group_fills(const Layer &layer, LockRegionParam &lock_p
params.angle = calculate_infill_rotation_angle(layer.object(), layer.id(), region_config.infill_direction.value,
region_config.sparse_infill_rotate_template.value);
params.fixed_angle = !region_config.sparse_infill_rotate_template.value.empty();
+
+ // Orca: the smoothing factor only applies to the sparse infill patterns that
+ // implement it. The fills clamp and validate the value themselves.
+ if (is_smoothable_infill_pattern(params.pattern, params.multiline))
+ params.smooth_factor = 0.01 * region_config.sparse_infill_smooth_factor.value;
} else {
const bool top_layer_direction_set = surface.is_top() && region_config.top_layer_direction.value >= 0.;
const bool bottom_layer_direction_set = surface.is_bottom() && region_config.bottom_layer_direction.value >= 0.;
@@ -1328,6 +1338,7 @@ void Layer::make_fills(FillAdaptive::Octree* adaptive_fill_octree, FillAdaptive:
params.lateral_lattice_angle_2 = surface_fill.params.lateral_lattice_angle_2;
params.infill_overhang_angle = surface_fill.params.infill_overhang_angle;
params.gyroid_optimized = surface_fill.params.gyroid_optimized;
+ params.smooth_factor = surface_fill.params.smooth_factor;
// BBS
params.flow = surface_fill.params.flow;
@@ -1569,6 +1580,7 @@ Polylines Layer::generate_sparse_infill_polylines_for_anchoring(FillAdaptive::Oc
params.infill_overhang_angle = surface_fill.params.infill_overhang_angle;
params.multiline = surface_fill.params.multiline;
params.gyroid_optimized = surface_fill.params.gyroid_optimized;
+ params.smooth_factor = surface_fill.params.smooth_factor;
for (ExPolygon &expoly : surface_fill.expolygons) {
// Spacing is modified by the filler to indicate adjustments. Reset it for each expolygon.
diff --git a/src/libslic3r/Fill/Fill3DHoneycomb.cpp b/src/libslic3r/Fill/Fill3DHoneycomb.cpp
index 5908f854de..ad5f8918fd 100644
--- a/src/libslic3r/Fill/Fill3DHoneycomb.cpp
+++ b/src/libslic3r/Fill/Fill3DHoneycomb.cpp
@@ -2,6 +2,7 @@
#include "../ShortestPath.hpp"
#include "../Surface.hpp"
#include "FillBase.hpp"
+#include "FillCornerSmoothing.hpp"
#include "Fill3DHoneycomb.hpp"
namespace Slic3r {
@@ -271,6 +272,9 @@ void Fill3DHoneycomb::_fill_surface_single(
for (Polyline &pl : polylines){
pl.translate(bb.min);
pl.simplify(5 * spacing); // simplify to 5x line width
+ // Orca: round the corners of the octahedral wave. The layers where the wave degenerates to a
+ // straight line have no corner to round.
+ smooth_polyline_corners(pl, params.smooth_factor, scaled(params.resolution));
}
// Apply multiline offset if needed
diff --git a/src/libslic3r/Fill/FillBase.cpp b/src/libslic3r/Fill/FillBase.cpp
index 2606529099..45157ec42d 100644
--- a/src/libslic3r/Fill/FillBase.cpp
+++ b/src/libslic3r/Fill/FillBase.cpp
@@ -1857,12 +1857,12 @@ static inline void base_support_extend_infill_lines(Polylines &infill, BoundaryI
const bool first = graph.first(cp);
int extend_next_idx = -1;
int extend_prev_idx = -1;
- coord_t dist_y_prev;
- coord_t dist_y_next;
- double arc_len_prev;
- double arc_len_next;
+ coord_t dist_y_prev = 0;
+ coord_t dist_y_next = 0;
+ double arc_len_prev = 0;
+ double arc_len_next = 0;
- if (! graph.next_vertical(cp)){
+ if (! graph.next_vertical(cp)) {
size_t i = cp.point_idx;
size_t j = next_idx_modulo(i, contour);
while (j != cp.next_on_contour->point_idx) {
diff --git a/src/libslic3r/Fill/FillBase.hpp b/src/libslic3r/Fill/FillBase.hpp
index 8128b9c9d1..d50c29b332 100644
--- a/src/libslic3r/Fill/FillBase.hpp
+++ b/src/libslic3r/Fill/FillBase.hpp
@@ -82,6 +82,9 @@ struct FillParams
// For Gyroid: when true, use the parameterized "optimized" variant.
bool gyroid_optimized { false };
+ // Orca: corner smoothing factor in the range [0, 1].
+ double smooth_factor { 0. };
+
// For Lateral lattice
coordf_t lateral_lattice_angle_1 { 0.f };
coordf_t lateral_lattice_angle_2 { 0.f };
diff --git a/src/libslic3r/Fill/FillConcentric.cpp b/src/libslic3r/Fill/FillConcentric.cpp
index a75d2ed7d3..1882f7a656 100644
--- a/src/libslic3r/Fill/FillConcentric.cpp
+++ b/src/libslic3r/Fill/FillConcentric.cpp
@@ -5,6 +5,7 @@
#include "Arachne/WallToolPaths.hpp"
#include "FillConcentric.hpp"
+#include "FillCornerSmoothing.hpp"
#include
namespace Slic3r {
@@ -32,12 +33,32 @@ void FillConcentric::_fill_surface_single(
Polygons loops = to_polygons(contracted);
- ExPolygons last { std::move(contracted) };
+ ExPolygons last { contracted };
while (! last.empty()) {
last = offset2_ex(last, -(distance + min_spacing/2), +min_spacing/2);
append(loops, to_polygons(last));
}
+ // Orca: round the corners of the loops. Unlike the other patterns these are never clipped to the
+ // fill region - they are its offsets - so a corner may only be rounded where the curve replacing it
+ // stays inside. Rounding cuts toward the inside of the turn, which around a hole, at a concave
+ // feature or across a thin region is outside the fill and would put the extrusion over a wall.
+ // The reach is capped at half the distance between two loops as well: a loop is as long as the
+ // object, and a corner cut by half of its side would swallow the neighbouring loops.
+ auto corner_stays_inside = [&contracted](const Vec2d &from, const Vec2d &to) {
+ // The straight chord between the ends of the curve is the deepest the curve can cut.
+ for (const double t : { 0.25, 0.5, 0.75 }) {
+ const Vec2d sample = from + t * (to - from);
+ const Point point(coord_t(sample.x()), coord_t(sample.y()));
+ if (std::none_of(contracted.begin(), contracted.end(),
+ [&point](const ExPolygon ®ion) { return region.contains(point); }))
+ return false;
+ }
+ return true;
+ };
+ smooth_polygons_corners(loops, params.smooth_factor, scaled(params.resolution), 0.5 * distance,
+ corner_stays_inside);
+
// generate paths from the outermost to the innermost, to avoid
// adhesion problems of the first central tiny loops
loops = union_pt_chained_outside_in(loops);
diff --git a/src/libslic3r/Fill/FillCornerSmoothing.cpp b/src/libslic3r/Fill/FillCornerSmoothing.cpp
new file mode 100644
index 0000000000..2af9f6bb9c
--- /dev/null
+++ b/src/libslic3r/Fill/FillCornerSmoothing.cpp
@@ -0,0 +1,226 @@
+#include
+
+#include "FillCornerSmoothing.hpp"
+
+namespace Slic3r {
+
+// Turns sharper than this are left untouched: both ends of the curve replacing such a corner nearly
+// coincide, so the corner would be rounded into a degenerate loop instead of a hairpin.
+static constexpr const double min_smoothed_turn_cosine = -0.9;
+
+// The control points are expressed in the (incoming, outgoing) basis of the corner, which is not
+// orthonormal for turns other than a right angle.
+using QuinticBezier = std::array;
+
+static bool is_bezier_flat(const QuinticBezier &curve, const Vec2d &incoming, const Vec2d &outgoing, const double deviation)
+{
+ // A Bezier curve stays inside the convex hull of its control points. Therefore, keeping every
+ // control point within a deviation-wide strip around the endpoint chord conservatively bounds the
+ // flattening error. The cross product is the perpendicular distance scaled by the chord length;
+ // comparing squared values avoids a square root.
+ auto in_plane = [&incoming, &outgoing](const Vec2d &c) { return c.x() * incoming + c.y() * outgoing; };
+ const Vec2d chord = in_plane(curve.back() - curve.front());
+ const double chord_length_sq = chord.squaredNorm();
+ const double max_cross_sq = deviation * deviation * chord_length_sq;
+
+ for (size_t i = 1; i + 1 < curve.size(); ++i) {
+ const Vec2d offset = in_plane(curve[i] - curve.front());
+ const double cross = chord.x() * offset.y() - chord.y() * offset.x();
+ if (cross * cross > max_cross_sq)
+ return false;
+ }
+ return true;
+}
+
+static void subdivide_bezier(const QuinticBezier &curve, QuinticBezier &left, QuinticBezier &right)
+{
+ // Split the curve at t = 0.5 using de Casteljau's algorithm. Each averaging level contributes one
+ // control point to the left half and one to the right half; the latter is filled backwards to keep
+ // both resulting control polygons in their original parameter direction.
+ QuinticBezier subdivision = curve;
+ left.front() = subdivision.front();
+ right.back() = subdivision.back();
+ for (size_t level = 1; level < curve.size(); ++level) {
+ for (size_t i = 0; i + level < curve.size(); ++i)
+ subdivision[i] = 0.5 * (subdivision[i] + subdivision[i + 1]);
+ left[level] = subdivision.front();
+ right[curve.size() - level - 1] = subdivision[curve.size() - level - 1];
+ }
+}
+
+static void flatten_bezier(
+ const QuinticBezier &curve, const Vec2d &incoming, const Vec2d &outgoing, const double deviation, std::vector &output)
+{
+ // Subdivide to at least depth 1 so a rounded corner cannot collapse to a single diagonal chord.
+ // A uniform subdivision depth keeps samples at equal parameter intervals t = k / 2^depth,
+ // avoiding abrupt segment-length jumps at adaptive-depth boundaries.
+ static constexpr size_t max_depth = 16;
+
+ std::vector subcurves(2);
+ subdivide_bezier(curve, subcurves[0], subcurves[1]);
+
+ for (size_t depth = 1; depth < max_depth; ++depth) {
+ bool all_flat = true;
+ for (const QuinticBezier &c : subcurves)
+ if (!is_bezier_flat(c, incoming, outgoing, deviation)) {
+ all_flat = false;
+ break;
+ }
+ if (all_flat)
+ break;
+ std::vector finer(subcurves.size() * 2);
+ for (size_t i = 0; i < subcurves.size(); ++i)
+ subdivide_bezier(subcurves[i], finer[i * 2], finer[i * 2 + 1]);
+ subcurves = std::move(finer);
+ }
+
+ // The curve start is deliberately omitted so it can be shared with the straight leg feeding into it.
+ output.clear();
+ output.reserve(subcurves.size());
+ for (const QuinticBezier &c : subcurves)
+ output.emplace_back(c.back());
+}
+
+const std::vector& CornerSmoother::curve_coefficients(
+ const double corner_distance, const Vec2d &incoming, const Vec2d &outgoing)
+{
+ const double cosine = incoming.dot(outgoing);
+ // Corners of the same size and turn angle are congruent, so they flatten identically. An infill
+ // path walks over the very same corner over and over again, the Hilbert curve over a single one.
+ if (m_has_cached_coefficients && corner_distance == m_cached_distance && cosine == m_cached_cosine)
+ return m_cached_coefficients;
+
+ // One canonical corner running from -corner_distance along the incoming leg to corner_distance
+ // along the outgoing one. At each end, the first three control points are collinear and equally
+ // spaced: the tangent follows the adjoining straight leg and the second derivative is zero. The
+ // endpoint curvature is therefore zero, giving G2 joins to both legs.
+ const double d = corner_distance;
+ const QuinticBezier corner_curve {{
+ {-d, 0.}, {-0.7 * d, 0.}, {-0.4 * d, 0.}, {0., 0.4 * d}, {0., 0.7 * d}, {0., d}
+ }};
+ // Retain a finite positive tolerance if the smoother was set up with an invalid one.
+ const double deviation = m_tolerance > 0. && std::isfinite(m_tolerance) ? m_tolerance : EPSILON;
+ flatten_bezier(corner_curve, incoming, outgoing, deviation, m_cached_coefficients);
+
+ m_cached_distance = corner_distance;
+ m_cached_cosine = cosine;
+ m_has_cached_coefficients = true;
+ return m_cached_coefficients;
+}
+
+void CornerSmoother::round_corner(const Vec2d &previous, const Vec2d &corner, const Vec2d &next)
+{
+ m_corner_points.clear();
+
+ const Vec2d incoming_leg = corner - previous;
+ const Vec2d outgoing_leg = next - corner;
+ const double incoming_length = incoming_leg.norm();
+ const double outgoing_length = outgoing_leg.norm();
+ if (incoming_length < EPSILON || outgoing_length < EPSILON) {
+ m_corner_points.emplace_back(corner);
+ return;
+ }
+
+ const Vec2d incoming = incoming_leg / incoming_length;
+ const Vec2d outgoing = outgoing_leg / outgoing_length;
+ const double cross = incoming.x() * outgoing.y() - incoming.y() * outgoing.x();
+ // A collinear vertex is no corner at all, and a hairpin cannot be rounded, see above.
+ if (std::abs(cross) < EPSILON || incoming.dot(outgoing) < min_smoothed_turn_cosine) {
+ m_corner_points.emplace_back(corner);
+ return;
+ }
+
+ // Consuming at most half of the shorter leg keeps the curves of two adjacent corners apart.
+ double corner_distance = m_corner_distance_ratio * std::min(incoming_length, outgoing_length);
+ if (m_max_corner_distance > 0.)
+ corner_distance = std::min(corner_distance, m_max_corner_distance);
+
+ const Vec2d curve_start = corner - corner_distance * incoming;
+ const Vec2d curve_end = corner + corner_distance * outgoing;
+ if (m_corner_filter && !m_corner_filter(curve_start, curve_end)) {
+ m_corner_points.emplace_back(corner);
+ return;
+ }
+
+ const std::vector &coefficients = curve_coefficients(corner_distance, incoming, outgoing);
+ m_corner_points.reserve(coefficients.size() + 1);
+ m_corner_points.emplace_back(curve_start);
+ for (const Vec2d &coefficient : coefficients)
+ m_corner_points.emplace_back(corner + coefficient.x() * incoming + coefficient.y() * outgoing);
+}
+
+// Rounds the corners of a scaled point sequence. A polygon closes implicitly, so all of its vertices
+// are corners; a polyline is an open path that keeps both of its ends, even where they coincide - a
+// path returning to where it started retraces its way back and is not a loop.
+static Points smooth_corners(const Points &points, const bool polygon, CornerSmoother &smoother)
+{
+ // A polygon has no free ends, so its first vertex is a corner like any other. Rounding it takes
+ // feeding the smoother the last vertex first, whose own output point is then dropped again.
+ size_t skip = polygon ? 1 : 0;
+
+ Points smoothed;
+ smoothed.reserve(2 * points.size());
+ auto emit = [&smoothed, &skip](const Vec2d &point) {
+ if (skip > 0) {
+ --skip;
+ return;
+ }
+ smoothed.emplace_back(coord_t(std::floor(point.x() + 0.5)), coord_t(std::floor(point.y() + 0.5)));
+ };
+
+ if (polygon)
+ smoother.push(points.back().cast(), emit);
+ for (const Point &point : points)
+ smoother.push(point.cast(), emit);
+ if (polygon)
+ // Wrap the first vertex around, so that the last one is a corner as well.
+ smoother.push(points.front().cast(), emit);
+ smoother.flush(emit);
+
+ if (polygon)
+ // The flushed point is the wrapped first vertex, which a polygon does not store.
+ smoothed.pop_back();
+ return smoothed;
+}
+
+void smooth_polyline_corners(Polyline &polyline, const double smooth_factor, const double tolerance,
+ const double max_corner_distance, const CornerFilter &corner_filter)
+{
+ CornerSmoother smoother(smooth_factor, tolerance, max_corner_distance, corner_filter);
+ if (!smoother.enabled() || polyline.size() < 3)
+ return;
+
+ polyline.points = smooth_corners(polyline.points, false, smoother);
+ // Rounding back to the integer grid may collapse neighbouring samples of a curve.
+ polyline.remove_duplicate_points();
+}
+
+void smooth_polylines_corners(Polylines &polylines, const double smooth_factor, const double tolerance,
+ const double max_corner_distance, const CornerFilter &corner_filter)
+{
+ if (sanitize_smooth_factor(smooth_factor) == 0.)
+ return;
+ for (Polyline &polyline : polylines)
+ smooth_polyline_corners(polyline, smooth_factor, tolerance, max_corner_distance, corner_filter);
+}
+
+void smooth_polygons_corners(Polygons &polygons, const double smooth_factor, const double tolerance,
+ const double max_corner_distance, const CornerFilter &corner_filter)
+{
+ CornerSmoother smoother(smooth_factor, tolerance, max_corner_distance, corner_filter);
+ if (!smoother.enabled())
+ return;
+
+ for (Polygon &polygon : polygons) {
+ if (polygon.size() < 3)
+ continue;
+ polygon.points = smooth_corners(polygon.points, true, smoother);
+ polygon.remove_duplicate_points();
+ // The curves of the first and of the last corner may have met on the segment they share. A
+ // polygon closes implicitly, so it must not repeat its first vertex at the end.
+ if (polygon.points.size() > 1 && polygon.points.front() == polygon.points.back())
+ polygon.points.pop_back();
+ }
+}
+
+} // namespace Slic3r
diff --git a/src/libslic3r/Fill/FillCornerSmoothing.hpp b/src/libslic3r/Fill/FillCornerSmoothing.hpp
new file mode 100644
index 0000000000..1852fc4c67
--- /dev/null
+++ b/src/libslic3r/Fill/FillCornerSmoothing.hpp
@@ -0,0 +1,108 @@
+#pragma once
+
+#include
+#include
+#include
+#include
+
+#include "../libslic3r.h"
+#include "../Point.hpp"
+#include "../Polygon.hpp"
+#include "../Polyline.hpp"
+
+namespace Slic3r {
+
+// Orca: NaN or infinite factors disable the smoothing, everything else is clamped to <0, 1>.
+inline double sanitize_smooth_factor(double smooth_factor)
+{
+ return std::isfinite(smooth_factor) ? std::clamp(smooth_factor, 0., 1.) : 0.;
+}
+
+// Decides whether a corner may be replaced by the curve that leaves the path at `from` and rejoins it
+// at `to`, both in the coordinate system of the pushed points. Rounding cuts toward the inside of the
+// turn, so a path that is not clipped to the fill region afterwards needs this to stay inside it.
+using CornerFilter = std::function;
+
+// Orca: Replaces the sharp vertices of an infill path with curves that join the adjoining straight
+// legs with a continuous curvature, so the toolhead does not have to stop in every corner.
+// Points are pushed one by one, because the plane path fills produce their path on the fly, and
+// every point of the smoothed path is handed over to the caller supplied emit callback.
+// Fully smoothed adjacent corners meet at the midpoint of the segment they share, so the emitted
+// points may collapse onto each other once rounded to the integer grid of the caller. Dropping such
+// duplicates is left to the caller, which is the only one knowing that grid.
+class CornerSmoother
+{
+public:
+ // tolerance is the maximum chordal deviation of the flattened curves, in the units of the pushed
+ // points. max_corner_distance caps how far a curve may reach along a leg, in the same units; it
+ // bounds how far a rounded corner moves away from the original path, which matters where the legs
+ // are much longer than the spacing of the pattern. Zero leaves the reach uncapped.
+ CornerSmoother(double smooth_factor, double tolerance, double max_corner_distance = 0.,
+ CornerFilter corner_filter = {})
+ : m_corner_distance_ratio(0.5 * sanitize_smooth_factor(smooth_factor)), m_tolerance(tolerance),
+ m_max_corner_distance(max_corner_distance), m_corner_filter(std::move(corner_filter))
+ {}
+
+ bool enabled() const { return m_corner_distance_ratio > 0.; }
+
+ template void push(const Vec2d &point, Emit &emit)
+ {
+ if (m_pending == 0) {
+ emit(point);
+ m_previous = point;
+ } else if (m_pending > 1) {
+ round_corner(m_previous, m_corner, point);
+ for (const Vec2d &corner_point : m_corner_points)
+ emit(corner_point);
+ m_previous = m_corner;
+ }
+ m_corner = point;
+ m_pending = std::min(m_pending + 1, 2);
+ }
+
+ // Emits the last point of the path and prepares the smoother for a new one.
+ template void flush(Emit &emit)
+ {
+ if (m_pending > 1)
+ emit(m_corner);
+ m_pending = 0;
+ }
+
+private:
+ // Fills m_corner_points with the points replacing the corner vertex.
+ void round_corner(const Vec2d &previous, const Vec2d &corner, const Vec2d &next);
+ // Flattens the canonical corner curve of the given size and turn into coordinates of the
+ // (incoming, outgoing) basis of the corner. Cached, as an infill path repeats the same corner.
+ const std::vector& curve_coefficients(double corner_distance, const Vec2d &incoming, const Vec2d &outgoing);
+
+ // Fraction of the shorter adjoining segment consumed on each side of a corner. Half of a segment
+ // is the maximum, otherwise the curves of two adjacent corners would overlap.
+ const double m_corner_distance_ratio;
+ const double m_tolerance;
+ const double m_max_corner_distance;
+ const CornerFilter m_corner_filter;
+ std::vector m_corner_points;
+ // Cached flattening of the last corner, valid for corners of the same size and turn angle.
+ std::vector m_cached_coefficients;
+ double m_cached_distance { 0. };
+ double m_cached_cosine { 0. };
+ bool m_has_cached_coefficients { false };
+
+ Vec2d m_previous { Vec2d::Zero() };
+ Vec2d m_corner { Vec2d::Zero() };
+ // Number of points held back: none, the first point of a path, or a corner candidate.
+ int m_pending { 0 };
+};
+
+// Rounds the corners of already scaled paths in place. Paths of less than three points are left alone.
+// Both ends of a polyline are kept where they are, even when they coincide: such a path retraces its
+// way back and joining its ends would turn it into a loop. See CornerSmoother for max_corner_distance.
+void smooth_polyline_corners(Polyline &polyline, double smooth_factor, double tolerance,
+ double max_corner_distance = 0., const CornerFilter &corner_filter = {});
+void smooth_polylines_corners(Polylines &polylines, double smooth_factor, double tolerance,
+ double max_corner_distance = 0., const CornerFilter &corner_filter = {});
+// Polygons close implicitly, so every one of their vertices is a corner.
+void smooth_polygons_corners(Polygons &polygons, double smooth_factor, double tolerance,
+ double max_corner_distance = 0., const CornerFilter &corner_filter = {});
+
+} // namespace Slic3r
diff --git a/src/libslic3r/Fill/FillCrossHatch.cpp b/src/libslic3r/Fill/FillCrossHatch.cpp
index 571095eca4..98be5ef46b 100644
--- a/src/libslic3r/Fill/FillCrossHatch.cpp
+++ b/src/libslic3r/Fill/FillCrossHatch.cpp
@@ -3,6 +3,7 @@
#include "../Surface.hpp"
#include
#include "FillBase.hpp"
+#include "FillCornerSmoothing.hpp"
#include "FillCrossHatch.hpp"
namespace Slic3r {
@@ -205,6 +206,9 @@ void FillCrossHatch ::_fill_surface_single(
// shift the pattern to the actual space
for (Polyline &pl : polylines) { pl.translate(bb.min); }
+ // Orca: round the corners of the transition layers. The repeat layers are straight lines and stay as they are.
+ smooth_polylines_corners(polylines, params.smooth_factor, scaled(params.resolution));
+
// Apply multiline offset if needed
multiline_fill(polylines, params, spacing);
diff --git a/src/libslic3r/Fill/FillHoneycomb.cpp b/src/libslic3r/Fill/FillHoneycomb.cpp
index a595cdb664..82679541da 100644
--- a/src/libslic3r/Fill/FillHoneycomb.cpp
+++ b/src/libslic3r/Fill/FillHoneycomb.cpp
@@ -2,6 +2,7 @@
#include "../ShortestPath.hpp"
#include "../Surface.hpp"
+#include "FillCornerSmoothing.hpp"
#include "FillHoneycomb.hpp"
namespace Slic3r {
@@ -70,6 +71,9 @@ void FillHoneycomb::_fill_surface_single(
}
p.rotate(-direction.first, m.hex_center);
p.simplify(5 * spacing); // simplify to 5x line width
+ // Orca: round the corners of the honeycomb cells. Done before the clipping, so that the
+ // curves are cut by the region boundary just like the sharp path would be.
+ smooth_polyline_corners(p, params.smooth_factor, scaled(params.resolution));
all_polylines.push_back(p);
}
}
diff --git a/src/libslic3r/Fill/FillLightning.cpp b/src/libslic3r/Fill/FillLightning.cpp
index 7937b9d129..77031b42e0 100644
--- a/src/libslic3r/Fill/FillLightning.cpp
+++ b/src/libslic3r/Fill/FillLightning.cpp
@@ -2,6 +2,7 @@
#include "../Print.hpp"
#include "../ShortestPath.hpp"
#include "FillBase.hpp"
+#include "FillCornerSmoothing.hpp"
#include "FillLightning.hpp"
#include "Lightning/Generator.hpp"
@@ -17,6 +18,19 @@ void Filler::_fill_surface_single(
const Layer &layer = generator->getTreesForLayer(this->layer_id);
Polylines fill_lines = layer.convertToLines(to_polygons(expolygon), scaled(0.5 * this->spacing - this->overlap));
+ // Orca: round the turns of the branches. Hairpins are left sharp, as they cannot be rounded, and
+ // the reach is capped: cutting a corner moves the branch, and a branch is as long as the object
+ // rather than as long as one cell of a pattern, so half of a leg would merge it with its neighbour
+ // instead of rounding the turn between them. Half the distance between two branches keeps them
+ // apart. With more than one line per infill wall the branches are printed as outlines drawn around
+ // them, and the outlines of branches that run into each other merge into a single one; moving a
+ // branch by more than a fraction of its printed width breaks such an outline up into separate
+ // loops, so that width bounds the reach as well.
+ const double branch_width = scaled(this->spacing) * params.multiline;
+ const double branch_spacing = branch_width / std::max(double(params.density), EPSILON);
+ const double max_reach = 0.5 * (params.multiline > 1 ? branch_width : branch_spacing);
+ smooth_polylines_corners(fill_lines, params.smooth_factor, scaled(params.resolution), max_reach);
+
// Apply multiline offset if needed
multiline_fill(fill_lines, params, spacing);
diff --git a/src/libslic3r/Fill/FillPlanePath.cpp b/src/libslic3r/Fill/FillPlanePath.cpp
index 7ce8e4abb3..577aef0600 100644
--- a/src/libslic3r/Fill/FillPlanePath.cpp
+++ b/src/libslic3r/Fill/FillPlanePath.cpp
@@ -2,6 +2,7 @@
#include "../ShortestPath.hpp"
#include "../Surface.hpp"
+#include "FillCornerSmoothing.hpp"
#include "FillPlanePath.hpp"
namespace Slic3r {
@@ -114,12 +115,12 @@ void FillPlanePath::_fill_surface_single(
// Filling in a bounding box over the whole object, clip generated polyline against the snug bounding box.
snug_bounding_box.translate(-shift.x(), -shift.y());
InfillPolylineClipper output(snug_bounding_box, distance_between_lines);
- this->generate(min_x, min_y, max_x, max_y, resolution, output);
+ this->generate(min_x, min_y, max_x, max_y, resolution, params, output);
polyline.points = std::move(output.result());
} else {
// Filling in a snug bounding box, no need to clip.
InfillPolylineOutput output(distance_between_lines);
- this->generate(min_x, min_y, max_x, max_y, resolution, output);
+ this->generate(min_x, min_y, max_x, max_y, resolution, params, output);
polyline.points = std::move(output.result());
}
}
@@ -288,6 +289,62 @@ static void generate_hilbert_curve(coord_t min_x, coord_t min_y, coord_t max_x,
}
}
+// Rounds the corners of the generated path on its way to the infill output.
+template
+class SmoothingPolylineOutput
+{
+public:
+ SmoothingPolylineOutput(Output &output, const double smooth_factor, const double tolerance)
+ : m_output(output), m_smoother(smooth_factor, tolerance) {}
+
+ void reserve(size_t n) { m_output.reserve(n); }
+ void add_point(const Vec2d &pt) { auto emit = emitter(); m_smoother.push(pt, emit); }
+ // The smoother holds back the last point of the path until it knows there is no corner left to round.
+ void finish() { auto emit = emitter(); m_smoother.flush(emit); }
+
+private:
+ // The curves of two adjacent corners meet at the midpoint of the segment they share, where they
+ // may round to the very same output point. Drop those, they would be zero length extrusions.
+ auto emitter()
+ {
+ return [this](const Vec2d &pt) {
+ const Point snapped = m_output.scaled(pt);
+ if (m_has_last_snapped && snapped == m_last_snapped)
+ return;
+ m_last_snapped = snapped;
+ m_has_last_snapped = true;
+ m_output.add_point(pt);
+ };
+ }
+
+ Output &m_output;
+ CornerSmoother m_smoother;
+ Point m_last_snapped { Point::Zero() };
+ bool m_has_last_snapped { false };
+};
+
+// Runs the path generator against the concrete output type, optionally through the corner smoother.
+// The outputs do not share a virtual add_point(), so the type has to be resolved here.
+template
+static void generate_path(InfillPolylineOutput &output, const FillParams ¶ms, const double resolution, GenerateFn generate)
+{
+ const double smooth_factor = sanitize_smooth_factor(params.smooth_factor);
+ auto run = [smooth_factor, resolution, &generate](auto &out) {
+ if (smooth_factor == 0.) {
+ generate(out);
+ } else {
+ SmoothingPolylineOutput> smoothing(out, smooth_factor, resolution);
+ generate(smoothing);
+ smoothing.finish();
+ }
+ };
+
+ if (output.clips())
+ run(static_cast(output));
+ else
+ run(output);
+}
+
void FillHilbertCurve::generate(coord_t min_x, coord_t min_y, coord_t max_x, coord_t max_y, const double /* resolution */, InfillPolylineOutput &output)
{
if (output.clips())
@@ -296,6 +353,13 @@ void FillHilbertCurve::generate(coord_t min_x, coord_t min_y, coord_t max_x, coo
generate_hilbert_curve(min_x, min_y, max_x, max_y, output);
}
+void FillHilbertCurve::generate(coord_t min_x, coord_t min_y, coord_t max_x, coord_t max_y, const double resolution,
+ const FillParams ¶ms, InfillPolylineOutput &output)
+{
+ generate_path(output, params, resolution,
+ [min_x, min_y, max_x, max_y](auto &out) { generate_hilbert_curve(min_x, min_y, max_x, max_y, out); });
+}
+
template
static void generate_octagram_spiral(coord_t min_x, coord_t min_y, coord_t max_x, coord_t max_y, Output &output)
{
@@ -336,4 +400,11 @@ void FillOctagramSpiral::generate(coord_t min_x, coord_t min_y, coord_t max_x, c
generate_octagram_spiral(min_x, min_y, max_x, max_y, output);
}
+void FillOctagramSpiral::generate(coord_t min_x, coord_t min_y, coord_t max_x, coord_t max_y, const double resolution,
+ const FillParams ¶ms, InfillPolylineOutput &output)
+{
+ generate_path(output, params, resolution,
+ [min_x, min_y, max_x, max_y](auto &out) { generate_octagram_spiral(min_x, min_y, max_x, max_y, out); });
+}
+
} // namespace Slic3r
diff --git a/src/libslic3r/Fill/FillPlanePath.hpp b/src/libslic3r/Fill/FillPlanePath.hpp
index 1371e8506a..a1e9068ca9 100644
--- a/src/libslic3r/Fill/FillPlanePath.hpp
+++ b/src/libslic3r/Fill/FillPlanePath.hpp
@@ -21,10 +21,10 @@ public:
void add_point(const Vec2d& pt) { m_out.emplace_back(this->scaled(pt)); }
Points&& result() { return std::move(m_out); }
virtual bool clips() const { return false; }
-
-protected:
+ // The output grid the generated points are snapped to.
const Point scaled(const Vec2d& fpt) const { return { coord_t(floor(fpt.x() * m_scale_out + 0.5)), coord_t(floor(fpt.y() * m_scale_out + 0.5)) }; }
+protected:
// Output polyline.
Points m_out;
@@ -53,6 +53,11 @@ protected:
friend class InfillPolylineClipper;
virtual void generate(coord_t min_x, coord_t min_y, coord_t max_x, coord_t max_y, const double resolution, InfillPolylineOutput &output) = 0;
+ virtual void generate(coord_t min_x, coord_t min_y, coord_t max_x, coord_t max_y, const double resolution,
+ const FillParams & /* params */, InfillPolylineOutput &output)
+ {
+ this->generate(min_x, min_y, max_x, max_y, resolution, output);
+ }
};
class FillArchimedeanChords : public FillPlanePath
@@ -75,6 +80,8 @@ public:
protected:
bool centered() const override { return false; }
void generate(coord_t min_x, coord_t min_y, coord_t max_x, coord_t max_y, const double resolution, InfillPolylineOutput &output) override;
+ void generate(coord_t min_x, coord_t min_y, coord_t max_x, coord_t max_y, const double resolution,
+ const FillParams ¶ms, InfillPolylineOutput &output) override;
};
class FillOctagramSpiral : public FillPlanePath
@@ -86,6 +93,8 @@ public:
protected:
bool centered() const override { return true; }
void generate(coord_t min_x, coord_t min_y, coord_t max_x, coord_t max_y, const double resolution, InfillPolylineOutput &output) override;
+ void generate(coord_t min_x, coord_t min_y, coord_t max_x, coord_t max_y, const double resolution,
+ const FillParams ¶ms, InfillPolylineOutput &output) override;
};
} // namespace Slic3r
diff --git a/src/libslic3r/Fill/FillRectilinear.cpp b/src/libslic3r/Fill/FillRectilinear.cpp
index 138b50bc88..0c82354b38 100644
--- a/src/libslic3r/Fill/FillRectilinear.cpp
+++ b/src/libslic3r/Fill/FillRectilinear.cpp
@@ -18,6 +18,7 @@
#include "../ShortestPath.hpp"
#include "../VariableWidth.hpp"
+#include "FillCornerSmoothing.hpp"
#include "FillRectilinear.hpp"
// #define SLIC3R_DEBUG
@@ -3364,6 +3365,10 @@ bool FillRectilinear::fill_surface_trapezoidal(
for (Polyline &pl : polylines)
pl.translate(rotate_vector.second);
+ // Orca: round the corners of the trapezoids. The straight base lines of the triangular family
+ // have no corner to round.
+ smooth_polylines_corners(polylines, params.smooth_factor, scaled(params.resolution));
+
// Apply multiline fill
multiline_fill(polylines, params, spacing);
@@ -3576,7 +3581,7 @@ Polylines FillLateralHoneycomb::fill_surface(const Surface *surface, const FillP
// |
// |
// 0 --+--
- // / \
+ // ⟋ ⟍
// why inverted?
// it makes determining some of the properties easier
// and the two angled legs provide additional horizontal stiffness
diff --git a/src/libslic3r/Fill/Lightning/TreeNode.cpp b/src/libslic3r/Fill/Lightning/TreeNode.cpp
index 982d47b10e..3d57ebae4a 100644
--- a/src/libslic3r/Fill/Lightning/TreeNode.cpp
+++ b/src/libslic3r/Fill/Lightning/TreeNode.cpp
@@ -351,19 +351,23 @@ void Node::convertToPolylines(Polylines &output, const coord_t line_overlap) con
{
Polylines result;
result.emplace_back();
- convertToPolylines(0, result);
+ // Orca: the layers are filled in parallel, so they would consume a shared generator in a
+ // different order every run, and a model would not slice the same way twice. Each tree seeds
+ // its own from where it is rooted; one constant seed would start them all on the same pick.
+ std::mt19937_64 rng { uint64_t(PointHash{}(m_p)) };
+ convertToPolylines(0, result, rng);
removeJunctionOverlap(result, line_overlap);
append(output, std::move(result));
}
-void Node::convertToPolylines(size_t long_line_idx, Polylines &output) const
+void Node::convertToPolylines(size_t long_line_idx, Polylines &output, std::mt19937_64 &rng) const
{
if (m_children.empty()) {
output[long_line_idx].points.push_back(m_p);
return;
}
- size_t first_child_idx = rand() % m_children.size();
- m_children[first_child_idx]->convertToPolylines(long_line_idx, output);
+ const size_t first_child_idx = rng() % m_children.size();
+ m_children[first_child_idx]->convertToPolylines(long_line_idx, output, rng);
output[long_line_idx].points.push_back(m_p);
for (size_t idx_offset = 1; idx_offset < m_children.size(); idx_offset++) {
@@ -371,7 +375,7 @@ void Node::convertToPolylines(size_t long_line_idx, Polylines &output) const
const Node& child = *m_children[child_idx];
output.emplace_back();
size_t child_line_idx = output.size() - 1;
- child.convertToPolylines(child_line_idx, output);
+ child.convertToPolylines(child_line_idx, output, rng);
output[child_line_idx].points.emplace_back(m_p);
}
}
diff --git a/src/libslic3r/Fill/Lightning/TreeNode.hpp b/src/libslic3r/Fill/Lightning/TreeNode.hpp
index 14aa5e4888..95559524ba 100644
--- a/src/libslic3r/Fill/Lightning/TreeNode.hpp
+++ b/src/libslic3r/Fill/Lightning/TreeNode.hpp
@@ -7,6 +7,7 @@
#include
#include
#include
+#include
#include
#include "../../EdgeGrid.hpp"
@@ -259,8 +260,9 @@ protected:
*
* \param long_line a reference to a polyline in \p output which to continue building on in the recursion
* \param output all branches in this tree connected into polylines
+ * \param rng the generator the junctions draw from, carried through the recursion
*/
- void convertToPolylines(size_t long_line_idx, Polylines &output) const;
+ void convertToPolylines(size_t long_line_idx, Polylines &output, std::mt19937_64 &rng) const;
void removeJunctionOverlap(Polylines &polylines, coord_t line_overlap) const;
diff --git a/src/libslic3r/Format/STEP.cpp b/src/libslic3r/Format/STEP.cpp
index 8b07286c5b..a5c3bb49a2 100644
--- a/src/libslic3r/Format/STEP.cpp
+++ b/src/libslic3r/Format/STEP.cpp
@@ -712,7 +712,7 @@ unsigned int Step::get_triangle_num(double linear_deflection, double angle_defle
return 0;
}
}
- } catch(Exception e) {
+ } catch(const Exception &) {
return 0;
}
diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp
index 976c99fd9a..c16c567295 100644
--- a/src/libslic3r/GCode.cpp
+++ b/src/libslic3r/GCode.cpp
@@ -771,30 +771,31 @@ static std::vector get_path_of_change_filament(const Print& print)
return changes;
}
+ // Clearance the tower-approach router keeps around the tower: the avoid box is
+ // inflated by this much before routing, and the inflated corners must stay on the
+ // bed for a route to be generated at all.
+ static constexpr float wipe_tower_routing_clearance = 2.f;
+
// BBS
// start_pos refers to the last position before the wipe_tower.
// end_pos refers to the wipe tower's start_pos.
// using the print coordinate system
- Polyline WipeTowerIntegration::generate_path_to_wipe_tower(const Point& start_pos,const Point &end_pos , const BoundingBox& avoid_polygon , const BoundingBox& printer_bbx) const
+ Polyline WipeTowerIntegration::generate_path_to_wipe_tower(const Point& start_pos,const Point &end_pos , const BoundingBox& avoid_polygon , const Polygons& bed_polygons) const
{
Polyline res;
- coord_t alpha = scaled(2.f); // offset distance
+ coord_t alpha = scaled(wipe_tower_routing_clearance); // offset distance
BoundingBox avoid_polygon_inner = avoid_polygon;
avoid_polygon_inner.offset(alpha);
coord_t width = avoid_polygon_inner.max[0] - avoid_polygon_inner.min[0];
- Polygon bed_polygon = printer_bbx.polygon();
Vec2f v(1, 0); // the first print direction of end_pos.
if (abs(end_pos[0] - avoid_polygon_inner.min[0]) < width / 2) v = -v; // judge whether the wipe tower's infill goes to the left or right.
- // Judge whether the avoid_polygon_inner is outside the printer_bbx.
+ // Judge whether the avoid_polygon_inner is outside the bed. The real printable
+ // outline is tested (not its bounding box), so on circular/custom beds corners
+ // hanging off the bed are rejected.
// If so, do nothing and just go directly to the end_pos.
- bool is_bbx_in_bed = true;
Points avoid_points = avoid_polygon_inner.polygon().points;
- for (auto &wipe_tower_bbx_p : avoid_points) {
- if (ClipperLib::PointInPolygon(wipe_tower_bbx_p, bed_polygon.points) != 1) {
- is_bbx_in_bed = false;
- break;
- }
- }
+ const bool is_bbx_in_bed = std::all_of(avoid_points.begin(), avoid_points.end(),
+ [&bed_polygons](const Point &pt) { return contains(bed_polygons, pt, /*border_result=*/false); });
if (!is_bbx_in_bed) {
res.points.push_back(end_pos);
return res;
@@ -901,27 +902,17 @@ static std::vector get_path_of_change_filament(const Print& print)
return Eigen::Rotation2Df(alpha) * (pt + m_rib_offset) + m_wipe_tower_pos;
}
- // Printable-area bounds for tower-approach routing, in object coordinates (shared by
- // the BBL avoid-perimeter path in append_tcr and the Type2 skip-points router).
- // Multi-nozzle: clamp the travel bounds to the region every extruder can reach
- // (get_extruder_shared_printable_polygon) instead of the full bed. Gated on the
- // multi-nozzle predicate so every existing single/dual printer keeps the historic
- // full-printable_area routing byte-identical.
- BoundingBox WipeTowerIntegration::printer_travel_bounds(GCode &gcodegen) const
+ // Bed outline the tower-approach router plans against, in object coordinates. The real
+ // outline is returned, not its bounding box, so the router's containment tests fail off
+ // the bed on circular/custom shapes; the multi-nozzle narrowing lives in the accessor.
+ Polygons WipeTowerIntegration::shared_printable_area(GCode &gcodegen) const
{
- const Vec2f plate_origin_2d(m_plate_origin(0), m_plate_origin(1));
- BoundingBox printer_bbx;
- if (is_multi_nozzle_printer(gcodegen.m_config)) {
- printer_bbx = get_extents(gcodegen.m_print->get_extruder_shared_printable_polygon());
- printer_bbx.min = wipe_tower_point_to_object_point(gcodegen, unscaled(printer_bbx.min) + plate_origin_2d);
- printer_bbx.max = wipe_tower_point_to_object_point(gcodegen, unscaled(printer_bbx.max) + plate_origin_2d);
- } else {
- Points bed_points;
- for (const auto& p : gcodegen.m_config.printable_area.values)
- bed_points.push_back(wipe_tower_point_to_object_point(gcodegen, p.cast() + plate_origin_2d));
- printer_bbx = BoundingBox(bed_points);
- }
- return printer_bbx;
+ // The frame change is a pure translation, so transform the origin once.
+ const Point offset = wipe_tower_point_to_object_point(gcodegen, Vec2f(m_plate_origin(0), m_plate_origin(1)));
+ Polygons bed_polygons = gcodegen.m_print->get_extruder_shared_printable_polygon();
+ for (Polygon &poly : bed_polygons)
+ poly.translate(offset);
+ return bed_polygons;
}
// With skip points enabled the Type2 tower wall has an opening at each toolchange's
@@ -936,15 +927,37 @@ static std::vector get_path_of_change_filament(const Print& print)
if (!WipeTower2::use_gap_wall(gcodegen.m_config))
return {};
const Vec2f plate_origin_2d(m_plate_origin(0), m_plate_origin(1));
- // Transform the tower-local bbx corners exactly like the tcr points; a rotated
- // tower gets a conservative axis-aligned envelope.
- Polygon avoid_points = scaled(m_wipe_tower_bbx).polygon();
- for (auto& p : avoid_points.points)
- p = wipe_tower_point_to_object_point(gcodegen, transform_wt2_pt(unscale(p).cast()) + plate_origin_2d);
- BoundingBox avoid_bbx(avoid_points.points);
- if (avoid_bbx.contains(route_start))
+ // Transform tower-local corners exactly like the tcr points; a rotated tower gets a
+ // conservative axis-aligned envelope from the result.
+ auto tower_polygon = [&](const BoundingBoxf &bbx) {
+ Polygon poly = scaled(bbx).polygon();
+ for (Point &p : poly.points)
+ p = wipe_tower_point_to_object_point(gcodegen, transform_wt2_pt(unscale(p).cast()) + plate_origin_2d);
+ return poly;
+ };
+ // The avoid envelope covers the first-layer brim (and rib flare), which a travel may
+ // cross freely: early-out only when the approach already starts over the tower body
+ // itself, so a start between the wall and the brim edge still gets routed in through
+ // the wall opening. Test the rotated polygon, not its bounding box — at angles off the
+ // axes the box's corner triangles cover most of the brim ring.
+ const float body_width = gcodegen.m_config.wipe_tower_wall_type.value == WipeTowerWallType::wtwRib ? m_wipe_tower_depth : m_right;
+ if (tower_polygon(BoundingBoxf(Vec2d(0., 0.), Vec2d(body_width, m_wipe_tower_depth))).contains(route_start))
return {};
- Polyline travel_polyline = generate_path_to_wipe_tower(route_start, start_wipe_pos, avoid_bbx, printer_travel_bounds(gcodegen));
+
+ const Polygons bed = shared_printable_area(gcodegen);
+ BoundingBox avoid_bbx = get_extents(tower_polygon(m_wipe_tower_bbx));
+ // The inflated corners must stay on the bed for the router to generate a route at all:
+ // clamp the box against the bed shrunk by the clearance the router adds, so a tower
+ // parked near the bed edge is still routed along the clamped side instead of always
+ // travelling straight across the tower.
+ BoundingBox clamp_bbx = get_extents(bed);
+ clamp_bbx.offset(-(scaled(wipe_tower_routing_clearance) + SCALED_EPSILON));
+ avoid_bbx.min = avoid_bbx.min.cwiseMax(clamp_bbx.min);
+ avoid_bbx.max = avoid_bbx.max.cwiseMin(clamp_bbx.max);
+ if (avoid_bbx.min.x() >= avoid_bbx.max.x() || avoid_bbx.min.y() >= avoid_bbx.max.y())
+ return {};
+
+ Polyline travel_polyline = generate_path_to_wipe_tower(route_start, start_wipe_pos, avoid_bbx, bed);
std::string gcode;
// The polyline's last point is start_wipe_pos itself — emitted by the caller.
for (size_t i = 0; i + 1 < travel_polyline.points.size(); ++i)
@@ -1140,8 +1153,8 @@ static std::vector get_path_of_change_filament(const Print& print)
float old_retract_length = (old_filament_id != -1) ? full_config.retraction_length.get_at(old_fi) : 0;
float new_retract_length = full_config.retraction_length.get_at(new_fi);
- float old_retract_length_toolchange = (old_filament_id != -1) ? full_config.retract_length_toolchange.get_at(old_filament_id) : 0;
- float new_retract_length_toolchange = full_config.retract_length_toolchange.get_at(new_filament_id);
+ float old_retract_length_toolchange = (old_filament_id != -1) ? full_config.retract_length_toolchange.get_at(old_fi) : 0;
+ float new_retract_length_toolchange = full_config.retract_length_toolchange.get_at(new_fi);
int old_filament_temp = (old_filament_id != -1) ? (gcodegen.on_first_layer()? full_config.nozzle_temperature_initial_layer.get_at(old_fi) : full_config.nozzle_temperature.get_at(old_fi)) : 210;
int new_filament_temp = gcodegen.on_first_layer() ? full_config.nozzle_temperature_initial_layer.get_at(new_fi) : full_config.nozzle_temperature.get_at(new_fi);
Vec3d nozzle_pos = gcode_writer.get_position();
@@ -1325,7 +1338,7 @@ static std::vector get_path_of_change_filament(const Print& print)
Vec2f gcode_last_pos2d{gcode_last_pos[0], gcode_last_pos[1]};
Point gcode_last_pos2d_object = gcodegen.gcode_to_point(gcode_last_pos2d.cast() + plate_origin_2d.cast());
Point start_wipe_pos = wipe_tower_point_to_object_point(gcodegen, tool_change_start_pos + plate_origin_2d);
- BoundingBox avoid_bbx, printer_bbx = printer_travel_bounds(gcodegen);
+ BoundingBox avoid_bbx;
{
// set avoid_bbx
avoid_bbx = scaled(m_wipe_tower_bbx);
@@ -1337,7 +1350,7 @@ static std::vector get_path_of_change_filament(const Print& print)
avoid_bbx = BoundingBox(avoid_points.points);
}
std::string travel_to_wipe_tower_gcode;
- Polyline travel_polyline = generate_path_to_wipe_tower(gcode_last_pos2d_object, start_wipe_pos, avoid_bbx, printer_bbx);
+ Polyline travel_polyline = generate_path_to_wipe_tower(gcode_last_pos2d_object, start_wipe_pos, avoid_bbx, shared_printable_area(gcodegen));
for (size_t i = 0; i < travel_polyline.points.size(); ++i) {
const auto &p = travel_polyline.points[i];
@@ -1557,7 +1570,8 @@ static std::vector get_path_of_change_filament(const Print& print)
interface_temp = gcodegen.config().nozzle_temperature_range_high.get_at(new_extruder_id);
toolchange_temp_override = interface_temp;
}
- toolchange_gcode_str = gcodegen.set_extruder(new_extruder_id, tcr.print_z, false, toolchange_temp_override); // TODO: toolchange_z vs print_z
+ toolchange_gcode_str = gcodegen.set_extruder(new_extruder_id, tcr.print_z, false, toolchange_temp_override,
+ WipeTower2::wait_for_temp_enabled(gcodegen.m_config)); // TODO: toolchange_z vs print_z
if (!travel_to_tower_now && !tcr.priming && WipeTower2::use_gap_wall(gcodegen.m_config)) {
// The tool changed in place (multi-tool printer without ramming), so the
// tower entry is the tcr's own positioning move — a straight line across
@@ -1708,7 +1722,7 @@ static std::vector get_path_of_change_filament(const Print& print)
std::string trimmed = line;
trimmed.erase(0, trimmed.find_first_not_of(" \t"));
bool skip_line = false;
- if (boost::starts_with(trimmed, "M109")) {
+ if (boost::starts_with(trimmed, "M109") && trimmed.find(WipeTower2::wait_for_temp_tag()) == std::string::npos) {
bool matches_extruder = true;
if (trimmed.find('T') != std::string::npos)
matches_extruder = trimmed.find(t_token) != std::string::npos;
@@ -2932,6 +2946,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
DoExport::init_gcode_processor(print.config(), m_processor, m_silent_time_estimator_enabled,
print.get_layered_nozzle_group_result());
const bool is_bbl_printers = print.is_BBL_printer();
+ const bool skip_config_block = print.config().gcode_skip_config_block;
const WipeTowerType wipe_tower_type = print.wipe_tower_type();
m_calib_config.clear();
// resets analyzer's tracking data
@@ -3144,7 +3159,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
// as configuration key / value pairs to be parsable by older versions of
// PrusaSlicer G-code viewer.
{
- if (is_bbl_printers) {
+ if (is_bbl_printers && !skip_config_block) {
file.write("; CONFIG_BLOCK_START\n");
std::string full_config;
append_full_config(print, full_config);
@@ -4182,23 +4197,25 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
GCodeProcessor::ETags::Estimated_Printing_Time_Placeholder)
.c_str());
file.write("\n");
- file.write("; CONFIG_BLOCK_START\n");
- std::string full_config;
- append_full_config(print, full_config);
- if (!full_config.empty())
- file.write(full_config);
+ if (!skip_config_block) {
+ file.write("; CONFIG_BLOCK_START\n");
+ std::string full_config;
+ append_full_config(print, full_config);
+ if (!full_config.empty())
+ file.write(full_config);
- // SoftFever: write compatiple info
- int first_layer_bed_temperature = get_bed_temperature(0, true, print.config().curr_bed_type);
- file.write_format("; first_layer_bed_temperature = %d\n", first_layer_bed_temperature);
- file.write_format("; bed_shape = %s\n", print.full_print_config().opt_serialize("printable_area").c_str());
- file.write_format("; first_layer_temperature = %d\n", print.config().nozzle_temperature_initial_layer.get_at(0));
- file.write_format("; first_layer_height = %.3f\n", print.config().initial_layer_print_height.value);
-
- //SF TODO
-// file.write_format("; variable_layer_height = %d\n", print.ad.adaptive_layer_height ? 1 : 0);
-
- file.write("; CONFIG_BLOCK_END\n\n");
+ // SoftFever: write compatiple info
+ int first_layer_bed_temperature = get_bed_temperature(0, true, print.config().curr_bed_type);
+ file.write_format("; first_layer_bed_temperature = %d\n", first_layer_bed_temperature);
+ file.write_format("; bed_shape = %s\n", print.full_print_config().opt_serialize("printable_area").c_str());
+ file.write_format("; first_layer_temperature = %d\n", print.config().nozzle_temperature_initial_layer.get_at(0));
+ file.write_format("; first_layer_height = %.3f\n", print.config().initial_layer_print_height.value);
+
+ //SF TODO
+// file.write_format("; variable_layer_height = %d\n", print.ad.adaptive_layer_height ? 1 : 0);
+
+ file.write("; CONFIG_BLOCK_END\n\n");
+ } // !skip_config_block
}
file.write("\n");
@@ -5781,7 +5798,7 @@ LayerResult GCode::process_layer(
// add tag for processor
gcode += ";" + GCodeProcessor::reserved_tag(GCodeProcessor::ETags::Layer_Change) + "\n";
// export layer z
- char buf[64];
+ char buf[80];
sprintf(buf, print.is_BBL_printer() ? "; Z_HEIGHT: %g\n" : ";Z:%g\n", print_z);
gcode += buf;
// export layer height
@@ -7146,6 +7163,7 @@ void GCode::append_full_config(const Print &print, std::string &str)
"farthest_point_timelapse"sv,
"compatible_printers"sv,
"compatible_prints"sv,
+ "filament_colour_type"sv,
"print_host"sv,
"print_host_webui"sv,
"printhost_apikey"sv,
@@ -8099,8 +8117,7 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description,
if (sloped) {
speed = std::min(speed, m_config.scarf_joint_speed.get_abs_value(speed));
}
- }
- else if(path.role() == erInternalBridgeInfill) {
+ } else if(path.role() == erInternalBridgeInfill) {
speed = m_config.get_abs_value_at("internal_bridge_speed", get_nozzle_config_index(m_writer->filament()->id()));
} else if (path.role() == erOverhangPerimeter || path.role() == erSupportTransition || path.role() == erBridgeInfill) {
speed = NOZZLE_CONFIG(bridge_speed);
@@ -8111,7 +8128,10 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description,
} else if (path.role() == erTopSolidInfill) {
speed = NOZZLE_CONFIG(top_surface_speed);
} else if (path.role() == erIroning) {
- speed = m_config.get_abs_value("ironing_speed");
+ const size_t filament_idx = get_filament_config_index(m_writer->filament()->id());
+ speed = m_config.filament_ironing_speed.is_nil(filament_idx)
+ ? m_config.get_abs_value("ironing_speed")
+ : m_config.filament_ironing_speed.get_at(filament_idx);
} else if (path.role() == erBottomSurface) {
speed = NOZZLE_CONFIG(initial_layer_infill_speed);
} else if (path.role() == erGapFill) {
@@ -9419,7 +9439,7 @@ void GCode::update_placeholder_parser_with_variant_params()
}
}
-std::string GCode::set_extruder(unsigned int new_filament_id, double print_z, bool by_object, int toolchange_temp_override)
+std::string GCode::set_extruder(unsigned int new_filament_id, double print_z, bool by_object, int toolchange_temp_override, bool defer_temp_wait)
{
int new_extruder_id = get_extruder_id(new_filament_id);
if (!m_writer->need_toolchange(new_filament_id))
@@ -9518,7 +9538,7 @@ std::string GCode::set_extruder(unsigned int new_filament_id, double print_z, bo
// per-layer nozzle grouping; resolve the column instead of indexing by the filament id.
size_t new_fi = get_filament_config_index((int)new_filament_id);
float new_retract_length = m_config.retraction_length.get_at(new_fi);
- float new_retract_length_toolchange = m_config.retract_length_toolchange.get_at(new_filament_id);
+ float new_retract_length_toolchange = m_config.retract_length_toolchange.get_at(new_fi);
int new_filament_temp = this->on_first_layer() ? m_config.nozzle_temperature_initial_layer.get_at(new_fi) : m_config.nozzle_temperature.get_at(new_fi);
// BBS: if print_z == 0 use first layer temperature
if (abs(print_z) < EPSILON)
@@ -9526,6 +9546,24 @@ std::string GCode::set_extruder(unsigned int new_filament_id, double print_z, bo
if (toolchange_temp_override > 0)
new_filament_temp = toolchange_temp_override;
+ // With wait_for_temp_on_wipe_tower the blocking M109 is deferred to the wipe tower, so raise
+ // the incoming filament's target here — ahead of the tool change rather than after it — and
+ // let the heat-up overlap the change itself as well as the travel to the tower. The command
+ // always carries an explicit tool index (the option is off for single extruder MM, so the
+ // writer emits one), leaving the outgoing filament that pre_toolchange just dropped to its
+ // standby temperature alone. nozzle_temperature == 0 means "use the first layer temperature".
+ if (defer_temp_wait) {
+ // Target what the tower will wait on. It waits on the first layer temperature not only on
+ // the first layer but also while priming, which runs before any layer is set: there
+ // on_first_layer() is false and print_z is the initial layer height, so neither test above
+ // catches it. nozzle_temperature == 0 means "use the first layer temperature" as well.
+ int preheat_temp = new_filament_temp;
+ if (toolchange_temp_override <= 0 && (m_layer == nullptr || preheat_temp <= 0))
+ preheat_temp = m_config.nozzle_temperature_initial_layer.get_at(new_fi);
+ if (preheat_temp > 0)
+ gcode += m_writer->set_temperature(preheat_temp, false, new_filament_id);
+ }
+
Vec3d nozzle_pos = m_writer->get_position();
float old_retract_length, old_retract_length_toolchange, wipe_volume;
int old_filament_temp, old_filament_e_feedrate;
@@ -9549,7 +9587,7 @@ std::string GCode::set_extruder(unsigned int new_filament_id, double print_z, bo
// gap-filled carry-forward, so its current-layer column matches the nozzle it occupies.
size_t old_fi = get_filament_config_index(old_filament_id);
old_retract_length = m_config.retraction_length.get_at(old_fi);
- old_retract_length_toolchange = m_config.retract_length_toolchange.get_at(old_filament_id);
+ old_retract_length_toolchange = m_config.retract_length_toolchange.get_at(old_fi);
old_filament_temp = this->on_first_layer()? m_config.nozzle_temperature_initial_layer.get_at(old_fi) : m_config.nozzle_temperature.get_at(old_fi);
//During the filament change, the extruder will extrude an extra length of grab_length for the corresponding detection, so the purge can reduce this length.
@@ -9829,8 +9867,10 @@ std::string GCode::set_extruder(unsigned int new_filament_id, double print_z, bo
}
check_add_eol(gcode);
}
- // Set the new extruder to the operating temperature.
- if (m_ooze_prevention.enable)
+ // Set the new extruder to the operating temperature. With defer_temp_wait the target was
+ // already raised before the tool change and the blocking wait belongs to the wipe tower
+ // generator, so there is nothing left to restore here.
+ if (m_ooze_prevention.enable && !defer_temp_wait)
gcode += m_ooze_prevention.post_toolchange(*this);
if (m_config.enable_pressure_advance.get_at(new_filament_id)) {
diff --git a/src/libslic3r/GCode.hpp b/src/libslic3r/GCode.hpp
index 54b7e8abd4..4012c339a1 100644
--- a/src/libslic3r/GCode.hpp
+++ b/src/libslic3r/GCode.hpp
@@ -133,11 +133,11 @@ public:
private:
WipeTowerIntegration& operator=(const WipeTowerIntegration&);
std::string append_tcr(GCode &gcodegen, const WipeTower::ToolChangeResult &tcr, int new_extruder_id, double z = -1.) const;
- Polyline generate_path_to_wipe_tower(const Point &start_pos, const Point &end_pos, const BoundingBox &avoid_polygon, const BoundingBox &printer_bbx) const;
+ Polyline generate_path_to_wipe_tower(const Point &start_pos, const Point &end_pos, const BoundingBox &avoid_polygon, const Polygons &bed_polygons) const;
std::string append_tcr2(GCode &gcodegen, const WipeTower::ToolChangeResult &tcr, int new_extruder_id, double z = -1.) const;
std::string travel_to_tower_gap(GCode &gcodegen, const Point &route_start, const Point &start_wipe_pos) const;
Vec2f transform_wt2_pt(const Vec2f &pt) const;
- BoundingBox printer_travel_bounds(GCode &gcodegen) const;
+ Polygons shared_printable_area(GCode &gcodegen) const;
// Postprocesses gcode: rotates and moves G1 extrusions and returns result
std::string post_process_wipe_tower_moves(const WipeTower::ToolChangeResult& tcr, const Vec2f& translation, float angle) const;
@@ -187,7 +187,7 @@ struct LayerResult {
// It is used for the pressure equalizer because it needs to buffer one layer back.
bool nop_layer_result { false };
- static LayerResult make_nop_layer_result() { return {"", std::numeric_limits::max(), false, false, true}; }
+ static LayerResult make_nop_layer_result() { return {"", std::numeric_limits::max(), false, false, true}; }
};
class GCode {
@@ -267,7 +267,7 @@ public:
std::string retract(bool toolchange = false, bool is_last_retraction = false, LiftType lift_type = LiftType::NormalLift, bool apply_instantly = false, ExtrusionRole role = erNone);
// extra_retract forwards a PETG pre-extrusion over-extrusion; default 0 -> identical to the plain deretract.
std::string unretract(float extra_retract = 0.f) { return m_writer->unlift() + m_writer->unretract(extra_retract); }
- std::string set_extruder(unsigned int extruder_id, double print_z, bool by_object=false, int toolchange_temp_override = -1);
+ std::string set_extruder(unsigned int extruder_id, double print_z, bool by_object=false, int toolchange_temp_override = -1, bool defer_temp_wait = false);
bool is_BBL_Printer();
WipeTowerType wipe_tower_type();
diff --git a/src/libslic3r/GCode/ExtrusionProcessor.hpp b/src/libslic3r/GCode/ExtrusionProcessor.hpp
index b282af8f4e..1d65e83f3e 100644
--- a/src/libslic3r/GCode/ExtrusionProcessor.hpp
+++ b/src/libslic3r/GCode/ExtrusionProcessor.hpp
@@ -19,6 +19,7 @@
#include
#include
#include
+#include
#include
#include
#include
@@ -39,7 +40,11 @@ std::vector> estimate_points_properties(const POINTS&
const AABBTreeLines::LinesDistancer& unscaled_prev_layer,
float flow_width,
float max_line_length = -1.0f,
- float min_distance = -1.0f)
+ float min_distance = -1.0f,
+ // Maps an overhang distance onto the speed it will be printed at. Interior sampling
+ // needs it to tell which of the points it could add would change the G-code, and is
+ // skipped without it.
+ const std::function& distance_to_speed = {})
{
bool looped = input_points.front() == input_points.back();
std::function get_prev_index = [](size_t idx, size_t count) {
@@ -120,6 +125,107 @@ std::vector> estimate_points_properties(const POINTS&
points.push_back(next_point);
}
+ // ORCA: Interior sampling
+ // The passes below infer the support under a span from its endpoints alone, so an interior that is supported
+ // differently from both ends is invisible to them: the outer perimeter of an overhang whose ends are caged by
+ // full height walls reads as supported along its whole length. Probe the interior, keep the samples the
+ // endpoint interpolation fails to predict, and bisect either side of each one, so a span that is only partly
+ // unsupported gets points where its support actually changes instead of one reading spread across all of it.
+ if (PREV_LAYER_BOUNDARY_OFFSET && ADD_INTERSECTIONS && min_distance > 0 && distance_to_speed) {
+ // Probe at least this densely before treating matching samples as evidence that a span is uniform. The
+ // segmentation pass below only splits lines of 2mm or more, and every pass here drops points closer
+ // together than min_spacing, so finer discovery would not produce a more precise speed transition.
+ const double max_probe_spacing = std::max(2., 4. * min_spacing);
+ // A backstop for that length test, which on a non-finite length would never be met.
+ constexpr int max_bisection_depth = 10;
+ // Whether two readings are interchangeable. A segment is printed at the lower of the speeds its ends
+ // read, so a sample that agrees on speed with what is already known cannot change the G-code, whatever
+ // its distance says. The distances themselves are far too coarse a stand-in for this: the speed sections
+ // interpolate, so readings a small fraction of min_distance apart can still be tens of mm/s apart.
+ // The tolerance matches the one GCode.cpp applies when it decides a path has a variable speed at all.
+ auto same_speed = [&distance_to_speed](float a, float b) {
+ return std::abs(distance_to_speed(a) - distance_to_speed(b)) <= 1.f;
+ };
+ // Whether the first reading is printed slower than the second, once they are known to differ.
+ auto prints_slower = [&distance_to_speed](float a, float b) { return distance_to_speed(a) < distance_to_speed(b); };
+
+ // Part of a segment still to bisect: its positions along the segment and bisections left.
+ struct Subspan { double t0, t1; int depth; };
+
+ std::vector> sampled_points; // Populated lazily, on the first insertion
+ std::vector> interior; // Samples of one segment, keyed by position along it
+ std::vector pending;
+
+ for (size_t point_idx = 0; point_idx + 1 < points.size(); ++point_idx) {
+ const ExtendedPoint& curr = points[point_idx];
+ const ExtendedPoint& next = points[point_idx + 1];
+ const Vec step = next.position - curr.position;
+ const double line_len = step.norm();
+
+ interior.clear();
+ if (line_len >= max_probe_spacing)
+ pending.push_back({0., 1., max_bisection_depth});
+
+ while (!pending.empty()) {
+ const Subspan subspan = pending.back();
+ pending.pop_back();
+ if (subspan.depth <= 0 || (subspan.t1 - subspan.t0) * line_len < max_probe_spacing)
+ continue;
+
+ const double t = 0.5 * (subspan.t0 + subspan.t1);
+ auto [distance, nearest_line, x] = unscaled_prev_layer.template distance_from_lines_extra(
+ (curr.position + t * step).template cast());
+ const float sampled = float(distance + boundary_offset);
+
+ interior.emplace_back(t, sampled);
+ pending.push_back({subspan.t0, t, subspan.depth - 1});
+ pending.push_back({t, subspan.t1, subspan.depth - 1});
+ }
+
+ if (!interior.empty()) {
+ std::sort(interior.begin(), interior.end(),
+ [](const std::pair& l, const std::pair& r) { return l.first < r.first; });
+ // Coarse probing keeps every sample it took until this pass can see which ones bracket a speed
+ // transition. Matching samples cannot be discarded during discovery: one may be the last
+ // supported point before a narrow unsupported pocket found by a later probe.
+ size_t kept = 0;
+ for (size_t i = 0; i < interior.size(); ++i) {
+ const float sample = interior[i].second;
+ const bool at_start = kept == 0; // Nothing kept yet, so the segment's own start precedes it
+ const bool at_end = i + 1 == interior.size(); // And nothing follows the last sample but the segment's end
+ const float before = at_start ? curr.distance : interior[kept - 1].second;
+ const float after = at_end ? next.distance : interior[i + 1].second;
+ // A sample is worth a point in the path only where it prints at a different speed from the
+ // readings either side of it. Differing from one of the segment's own ends is not enough on
+ // its own where the sample is the faster of the two: the segmentation pass below already
+ // ends the slowdown an end reads, at a distance taken from how far out that end is rather
+ // than from wherever bisection happened to stop, and a point here would leave the span
+ // beside the end too short for that pass to run at all. Support an end cannot account for,
+ // where the interior is the slower reading, is exactly what this pass is here to find.
+ const bool worth_before = !same_speed(sample, before) && (!at_start || prints_slower(sample, before));
+ const bool worth_after = !same_speed(sample, after) && (!at_end || prints_slower(sample, after));
+ if (worth_before || worth_after)
+ interior[kept++] = interior[i];
+ }
+ interior.resize(kept);
+ }
+
+ if (!interior.empty() && sampled_points.empty()) {
+ sampled_points.reserve(points.size() + 8);
+ sampled_points.assign(points.begin(), points.begin() + point_idx + 1);
+ }
+ if (!sampled_points.empty()) {
+ // Only a sub-span of max_probe_spacing or more is ever bisected, so these sit at least
+ // 2 * min_spacing apart, and need none of the filtering the passes either side of this one do.
+ for (const auto& [t, distance] : interior)
+ sampled_points.push_back({curr.position + t * step, distance});
+ sampled_points.push_back(next);
+ }
+ }
+ if (!sampled_points.empty())
+ points = std::move(sampled_points);
+ }
+
// Segmentation handling
if (PREV_LAYER_BOUNDARY_OFFSET && ADD_INTERSECTIONS) {
std::vector> new_points;
@@ -362,9 +468,28 @@ public:
smallest_distance_with_lower_speed=-1.f;
// Orca: Pass to the point properties estimator the smallest ovehang distance that triggers a slowdown (smallest_distance_with_lower_speed)
+ auto calculate_speed = [&speed_sections, &original_speed](float distance) {
+ float final_speed;
+ if (distance <= speed_sections.front().first) {
+ final_speed = original_speed;
+ } else if (distance >= speed_sections.back().first) {
+ final_speed = speed_sections.back().second;
+ } else {
+ size_t section_idx = 0;
+ while (distance > speed_sections[section_idx + 1].first) {
+ section_idx++;
+ }
+ float t = (distance - speed_sections[section_idx].first) /
+ (speed_sections[section_idx + 1].first - speed_sections[section_idx].first);
+ t = std::clamp(t, 0.0f, 1.0f);
+ final_speed = (1.0f - t) * speed_sections[section_idx].second + t * speed_sections[section_idx + 1].second;
+ }
+ return round(final_speed);
+ };
+
std::vector> extended_points =
estimate_points_properties(path.polyline.points, prev_layer_boundaries[current_object], path.width, -1,
- smallest_distance_with_lower_speed);
+ smallest_distance_with_lower_speed, calculate_speed);
const auto width_inv = 1.0f / path.width;
std::vector processed_points;
processed_points.reserve(extended_points.size());
@@ -423,25 +548,6 @@ public:
}
}
- auto calculate_speed = [&speed_sections, &original_speed](float distance) {
- float final_speed;
- if (distance <= speed_sections.front().first) {
- final_speed = original_speed;
- } else if (distance >= speed_sections.back().first) {
- final_speed = speed_sections.back().second;
- } else {
- size_t section_idx = 0;
- while (distance > speed_sections[section_idx + 1].first) {
- section_idx++;
- }
- float t = (distance - speed_sections[section_idx].first) /
- (speed_sections[section_idx + 1].first - speed_sections[section_idx].first);
- t = std::clamp(t, 0.0f, 1.0f);
- final_speed = (1.0f - t) * speed_sections[section_idx].second + t * speed_sections[section_idx + 1].second;
- }
- return round(final_speed);
- };
-
float extrusion_speed = std::min(calculate_speed(curr.distance), calculate_speed(next.distance));
// ORCA: Clamp resulting speed to lowest of calculated speed based on the overhang values and the current speed
// Fixes bug where resulting overhang speed is higher than the current speed due to (for example) volumetric flow limits.
diff --git a/src/libslic3r/GCode/GCodeProcessor.cpp b/src/libslic3r/GCode/GCodeProcessor.cpp
index e872a2f652..f8a128bcdc 100644
--- a/src/libslic3r/GCode/GCodeProcessor.cpp
+++ b/src/libslic3r/GCode/GCodeProcessor.cpp
@@ -298,6 +298,7 @@ void GCodeProcessor::TimeMachine::State::reset()
//BBS
enter_direction = { 0.0f, 0.0f, 0.0f };
exit_direction = { 0.0f, 0.0f, 0.0f };
+ jd_unit_vec = { 0.0f, 0.0f, 0.0f, 0.0f };
}
void GCodeProcessor::TimeMachine::CustomGCodeTime::reset()
@@ -5107,6 +5108,10 @@ void GCodeProcessor::process_G1(const std::array, 4>& axes
if (!is_extrusion_only_move(delta_pos))
curr.enter_direction = curr.enter_direction / norm;
curr.exit_direction = curr.enter_direction;
+ curr.jd_unit_vec = Vec4f(static_cast(delta_pos[X]),
+ static_cast(delta_pos[Y]),
+ static_cast(delta_pos[Z]),
+ static_cast(delta_pos[E])).normalized();
TimeBlock block;
block.move_type = type;
@@ -5189,22 +5194,32 @@ void GCodeProcessor::process_G1(const std::array, 4>& axes
block.acceleration = acceleration;
- // calculates block exit feedrate
- curr.safe_feedrate = block.feedrate_profile.cruise;
+ static const float PREVIOUS_FEEDRATE_THRESHOLD = 0.0001f;
+ const bool has_prev_move = !blocks.empty() && prev.feedrate > PREVIOUS_FEEDRATE_THRESHOLD;
- for (unsigned char a = X; a <= E; ++a) {
- float axis_max_jerk = get_axis_max_jerk(static_cast(i), static_cast(a));
- if (curr.abs_axis_feedrate[a] > axis_max_jerk)
- curr.safe_feedrate = std::min(curr.safe_feedrate, axis_max_jerk);
+ // Orca: junction deviation where the firmware uses it (Klipper always, Marlin 2 with M205 J).
+ // Negative leaves the classic jerk path below unchanged.
+ const float vmax_junction_jd = calc_vmax_junction_deviation(block, prev, curr, has_prev_move,
+ static_cast(i));
+ const bool use_junction_deviation = vmax_junction_jd >= 0.0f;
+
+ // calculates block exit feedrate. Junction deviation has no per axis jerk floor, so a move is
+ // free to start from rest.
+ curr.safe_feedrate = use_junction_deviation ? 0.0f : block.feedrate_profile.cruise;
+
+ if (!use_junction_deviation) {
+ for (unsigned char a = X; a <= E; ++a) {
+ float axis_max_jerk = get_axis_max_jerk(static_cast(i), static_cast(a));
+ if (curr.abs_axis_feedrate[a] > axis_max_jerk)
+ curr.safe_feedrate = std::min(curr.safe_feedrate, axis_max_jerk);
+ }
}
block.feedrate_profile.exit = curr.safe_feedrate;
- static const float PREVIOUS_FEEDRATE_THRESHOLD = 0.0001f;
-
// calculates block entry feedrate
- float vmax_junction = curr.safe_feedrate;
- if (!blocks.empty() && prev.feedrate > PREVIOUS_FEEDRATE_THRESHOLD) {
+ float vmax_junction = use_junction_deviation ? vmax_junction_jd : curr.safe_feedrate;
+ if (!use_junction_deviation && has_prev_move) {
bool prev_speed_larger = prev.feedrate > block.feedrate_profile.cruise;
float smaller_speed_factor = prev_speed_larger ? (block.feedrate_profile.cruise / prev.feedrate) : (prev.feedrate / block.feedrate_profile.cruise);
// Pick the smaller of the nominal speeds. Higher speed shall not be achieved at the junction during coasting.
@@ -5471,6 +5486,10 @@ void GCodeProcessor::process_VG1(const GCodeReader::GCodeLine& line)
if (!is_extrusion_only_move(delta_pos))
curr.enter_direction = curr.enter_direction / norm;
curr.exit_direction = curr.enter_direction;
+ curr.jd_unit_vec = Vec4f(static_cast(delta_pos[X]),
+ static_cast(delta_pos[Y]),
+ static_cast(delta_pos[Z]),
+ static_cast(delta_pos[E])).normalized();
TimeBlock block;
block.move_type = type;
@@ -5551,22 +5570,32 @@ void GCodeProcessor::process_VG1(const GCodeReader::GCodeLine& line)
block.acceleration = acceleration;
- // calculates block exit feedrate
- curr.safe_feedrate = block.feedrate_profile.cruise;
+ static const float PREVIOUS_FEEDRATE_THRESHOLD = 0.0001f;
+ const bool has_prev_move = !blocks.empty() && prev.feedrate > PREVIOUS_FEEDRATE_THRESHOLD;
- for (unsigned char a = X; a <= E; ++a) {
- float axis_max_jerk = get_axis_max_jerk(static_cast(i), static_cast(a));
- if (curr.abs_axis_feedrate[a] > axis_max_jerk)
- curr.safe_feedrate = std::min(curr.safe_feedrate, axis_max_jerk);
+ // Orca: junction deviation where the firmware uses it (Klipper always, Marlin 2 with M205 J).
+ // Negative leaves the classic jerk path below unchanged.
+ const float vmax_junction_jd = calc_vmax_junction_deviation(block, prev, curr, has_prev_move,
+ static_cast(i));
+ const bool use_junction_deviation = vmax_junction_jd >= 0.0f;
+
+ // calculates block exit feedrate. Junction deviation has no per axis jerk floor, so a move is
+ // free to start from rest.
+ curr.safe_feedrate = use_junction_deviation ? 0.0f : block.feedrate_profile.cruise;
+
+ if (!use_junction_deviation) {
+ for (unsigned char a = X; a <= E; ++a) {
+ float axis_max_jerk = get_axis_max_jerk(static_cast(i), static_cast(a));
+ if (curr.abs_axis_feedrate[a] > axis_max_jerk)
+ curr.safe_feedrate = std::min(curr.safe_feedrate, axis_max_jerk);
+ }
}
block.feedrate_profile.exit = curr.safe_feedrate;
- static const float PREVIOUS_FEEDRATE_THRESHOLD = 0.0001f;
-
// calculates block entry feedrate
- float vmax_junction = curr.safe_feedrate;
- if (!blocks.empty() && prev.feedrate > PREVIOUS_FEEDRATE_THRESHOLD) {
+ float vmax_junction = use_junction_deviation ? vmax_junction_jd : curr.safe_feedrate;
+ if (!use_junction_deviation && has_prev_move) {
bool prev_speed_larger = prev.feedrate > block.feedrate_profile.cruise;
float smaller_speed_factor = prev_speed_larger ? (block.feedrate_profile.cruise / prev.feedrate) : (prev.feedrate / block.feedrate_profile.cruise);
// Pick the smaller of the nominal speeds. Higher speed shall not be achieved at the junction during coasting.
@@ -5997,8 +6026,11 @@ void GCodeProcessor::process_G10(const GCodeReader::GCodeLine& line)
GCodeReader::GCodeLine g10;
g10.set(Axis::E, -this->m_parser.config().retraction_length.get_at(m_extruder_id));
g10.set(Axis::F, this->m_parser.config().retraction_speed.get_at(m_extruder_id) * 60);
+ //Orca: Firmware retract emulation must not change the modal G1 feedrate.
+ const float feedrate = m_feedrate;
--m_g1_line_id;
process_G1(g10);
+ m_feedrate = feedrate;
}
void GCodeProcessor::process_G11(const GCodeReader::GCodeLine& line)
@@ -6007,8 +6039,11 @@ void GCodeProcessor::process_G11(const GCodeReader::GCodeLine& line)
GCodeReader::GCodeLine g11;
g11.set(Axis::E, this->m_parser.config().retraction_length.get_at(m_extruder_id) + this->m_parser.config().retract_restart_extra.get_at(m_extruder_id));
g11.set(Axis::F, this->m_parser.config().deretraction_speed.get_at(m_extruder_id) * 60);
+ // Orca: Firmware unretract emulation must not change the modal G1 feedrate.
+ const float feedrate = m_feedrate;
--m_g1_line_id;
process_G1(g11);
+ m_feedrate = feedrate;
}
void GCodeProcessor::process_G20(const GCodeReader::GCodeLine& line)
@@ -7256,6 +7291,91 @@ float GCodeProcessor::get_axis_max_jerk_with_jd(PrintEstimatedStatistics::ETimeM
return get_axis_max_jerk_with_jd(mode, axis, get_acceleration(mode));
}
+float GCodeProcessor::get_junction_deviation(PrintEstimatedStatistics::ETimeMode mode, float acceleration) const
+{
+ const size_t id = static_cast(mode);
+
+ // Klipper has no classic jerk: jd = scv^2 * (sqrt(2) - 1) / max_accel
+ // (toolhead.py::_calc_junction_deviation). Passing the block acceleration back in makes it cancel
+ // in calc_vmax_junction_deviation(), leaving the identity v == scv at a 90 degree corner.
+ if (m_flavor == gcfKlipper) {
+ // machine_max_jerk_x holds the square corner velocity; process_SET_VELOCITY_LIMIT() writes it.
+ const float scv = get_option_value(m_time_processor.machine_limits.machine_max_jerk_x, id);
+ if (scv <= 0.0f || acceleration <= 0.0f)
+ return 0.0f;
+ return sqr(scv) * (std::sqrt(2.0f) - 1.0f) / acceleration;
+ }
+
+ // Marlin 2 plans with junction deviation only when M205 J > 0; classic jerk leaves it at 0.
+ if (m_flavor == gcfMarlinFirmware)
+ return get_option_value(m_time_processor.machine_limits.machine_max_junction_deviation, id);
+
+ return 0.0f;
+}
+
+float GCodeProcessor::calc_junction_acceleration(const TimeBlock& block, const Vec4f& junction_unit_vec,
+ PrintEstimatedStatistics::ETimeMode mode) const
+{
+ float junction_acceleration = block.acceleration;
+ for (unsigned char a = X; a <= E; ++a) {
+ if (junction_unit_vec[a] == 0.0f)
+ continue;
+ const float axis_max_acceleration = get_axis_max_acceleration(mode, static_cast(a), m_machine_config_idx);
+ if (axis_max_acceleration > 0.0f)
+ junction_acceleration = std::min(junction_acceleration, std::abs(axis_max_acceleration / junction_unit_vec[a]));
+ }
+ return junction_acceleration;
+}
+
+// Ported from PrusaSlicer (src/libslic3r/GCode/GCodeProcessor.cpp).
+float GCodeProcessor::calc_vmax_junction_deviation(const TimeBlock& block, const TimeMachine::State& prev,
+ const TimeMachine::State& curr, bool has_prev_move,
+ PrintEstimatedStatistics::ETimeMode mode) const
+{
+ const float junction_deviation = get_junction_deviation(mode, block.acceleration);
+ if (junction_deviation <= 0.0f)
+ return -1.0f; // classic jerk machine, the caller keeps its own computation
+ if (!has_prev_move)
+ return 0.0f; // starts from rest, the planner raises this on the reverse pass
+
+ // -1 for a straight continuation, +1 for a full reversal. Half angle identity, no acos()/sin().
+ // Both vectors are unit length over XYZE, so this really is a cosine: scaling by 1 / distance
+ // instead, as PrusaSlicer does, leaves an E term that makes extruding corners look straighter
+ // than they are. Marlin normalizes over XYZE for any extruding move (planner.cpp, esteps > 0)
+ // and Klipper keeps E out of the cosine entirely (toolhead.py::Move.calc_junction); both agree
+ // that the corner is planned by its geometry, and normalizing matches them to within 1e-5.
+ float junction_cos_theta = (-prev.jd_unit_vec).dot(curr.jd_unit_vec);
+ if (junction_cos_theta > 0.999999f)
+ return 0.0f; // the path doubles back, the machine has to stop
+ junction_cos_theta = std::max(junction_cos_theta, -0.999999f); // guards the division below
+
+ const float sin_theta_d2 = std::sqrt(0.5f * (1.0f - junction_cos_theta)); // always positive
+ const Vec4f junction_vec = curr.jd_unit_vec - prev.jd_unit_vec;
+ const float junction_vec_norm = junction_vec.norm();
+ const Vec4f junction_unit_vec = (junction_vec_norm > 0.0f) ? Vec4f(junction_vec / junction_vec_norm)
+ : Vec4f(0.0f, 0.0f, 0.0f, 0.0f);
+ const float junction_acceleration = calc_junction_acceleration(block, junction_unit_vec, mode);
+
+ float vmax_junction_sqr = (junction_acceleration * junction_deviation * sin_theta_d2) / (1.0f - sin_theta_d2);
+
+ // Marlin's JD_HANDLE_SMALL_SEGMENTS: a short move through a shallow corner is treated as an arc and
+ // capped by the centripetal acceleration it needs. Klipper has no equivalent.
+ if (m_flavor != gcfKlipper && block.distance < 1.0f && junction_cos_theta < -0.7071067812f) {
+ // Fast acos(-t), max. error +-0.033rad. MinMax polynomial by W. Randolph Franklin:
+ // https://wrf.ecse.rpi.edu/Research/Short_Notes/arcsin/onlyelem.html
+ const float neg = junction_cos_theta < 0.0f ? -1.0f : 1.0f;
+ const float t = neg * junction_cos_theta;
+ const float asinx = 0.032843707f + t * (-1.451838349f + t * (29.66153956f + t * (-131.1123477f +
+ t * (262.8130562f + t * (-242.7199627f + t * (84.31466202f))))));
+ const float junction_theta = float(0.5 * M_PI) + neg * asinx; // acos(-t), bottoms out at 0.033
+ vmax_junction_sqr = std::min(vmax_junction_sqr, (block.distance * junction_acceleration) / junction_theta);
+ }
+
+ // Never faster than either of the two moves the junction joins.
+ vmax_junction_sqr = std::min(vmax_junction_sqr, std::min(sqr(block.feedrate_profile.cruise), sqr(prev.feedrate)));
+ return std::sqrt(vmax_junction_sqr);
+}
+
float GCodeProcessor::get_axis_max_jerk(PrintEstimatedStatistics::ETimeMode mode, Axis axis) const
{
const size_t id = static_cast(mode);
diff --git a/src/libslic3r/GCode/GCodeProcessor.hpp b/src/libslic3r/GCode/GCodeProcessor.hpp
index 7b90840ad2..3237a6c0b2 100644
--- a/src/libslic3r/GCode/GCodeProcessor.hpp
+++ b/src/libslic3r/GCode/GCodeProcessor.hpp
@@ -660,6 +660,9 @@ class Print;
//For line move, there are same. For arc move, there are different.
Vec3f enter_direction;
Vec3f exit_direction;
+ // Orca: move direction over all four axes, unit length. Used by
+ // calc_vmax_junction_deviation(); see there for why E is normalized in.
+ Vec4f jd_unit_vec;
void reset();
};
@@ -1517,6 +1520,16 @@ class Print;
float get_axis_max_acceleration(PrintEstimatedStatistics::ETimeMode mode, Axis axis, int machine_idx) const;
float get_axis_max_jerk_with_jd(PrintEstimatedStatistics::ETimeMode mode, Axis axis, float acceleration) const;
float get_axis_max_jerk_with_jd(PrintEstimatedStatistics::ETimeMode mode, Axis axis) const;
+ // Orca: junction deviation for a block at the given acceleration, 0 for a classic jerk machine.
+ float get_junction_deviation(PrintEstimatedStatistics::ETimeMode mode, float acceleration) const;
+ // Orca: acceleration along the junction direction, clamped by the per axis limits.
+ float calc_junction_acceleration(const TimeBlock& block, const Vec4f& junction_unit_vec,
+ PrintEstimatedStatistics::ETimeMode mode) const;
+ // Orca: entry speed from the junction deviation model, which limits a corner by its angle alone
+ // and is therefore isotropic, unlike per axis jerk. Negative means classic jerk applies instead.
+ float calc_vmax_junction_deviation(const TimeBlock& block, const TimeMachine::State& prev,
+ const TimeMachine::State& curr, bool has_prev_move,
+ PrintEstimatedStatistics::ETimeMode mode) const;
float get_axis_max_jerk(PrintEstimatedStatistics::ETimeMode mode, Axis axis) const;
Vec3f get_xyz_max_jerk(PrintEstimatedStatistics::ETimeMode mode) const;
float get_retract_acceleration(PrintEstimatedStatistics::ETimeMode mode) const;
diff --git a/src/libslic3r/GCode/ThumbnailData.hpp b/src/libslic3r/GCode/ThumbnailData.hpp
index 1a41c7486e..82563d64f2 100644
--- a/src/libslic3r/GCode/ThumbnailData.hpp
+++ b/src/libslic3r/GCode/ThumbnailData.hpp
@@ -32,7 +32,7 @@ using ThumbnailsList = std::vector;
struct ThumbnailsParams
{
- const Vec2ds sizes;
+ const Vec2ds sizes{};
bool printable_only;
bool parts_only;
bool show_bed;
diff --git a/src/libslic3r/GCode/WipeTower.cpp b/src/libslic3r/GCode/WipeTower.cpp
index 3d7353eadf..5834937169 100644
--- a/src/libslic3r/GCode/WipeTower.cpp
+++ b/src/libslic3r/GCode/WipeTower.cpp
@@ -617,6 +617,18 @@ Polygon generate_rectange_polygon(const Vec2f &wt_box_min ,const Vec2f & wt_box_
return res;
}
+const char* flush_planner_queue_command(GCodeFlavor flavor)
+{
+ return flavor == gcfKlipper ? "M400\n" : "G4 S0\n";
+}
+
+std::string wait_command(GCodeFlavor flavor, float seconds)
+{
+ if (flavor == gcfKlipper)
+ return "G4 P" + std::to_string(std::lround(seconds * 1000.f)) + "\n";
+ return "G4 S" + Slic3r::float_to_string_decimal_point(seconds, 3) + "\n";
+}
+
class WipeTowerWriter
{
public:
@@ -1145,7 +1157,7 @@ public:
{
if (time==0.f)
return *this;
- m_gcode += "G4 S" + Slic3r::float_to_string_decimal_point(time, 3) + "\n";
+ m_gcode += wait_command(m_gcode_flavor, time);
return *this;
}
@@ -1190,7 +1202,7 @@ public:
WipeTowerWriter& flush_planner_queue()
{
- m_gcode += "G4 S0\n";
+ m_gcode += flush_planner_queue_command(m_gcode_flavor);
return *this;
}
@@ -1333,6 +1345,8 @@ public:
{
std::string buffer;
if (wait_for_moves)
+ // Not flush_planner_queue_command(): this BBL precool path wants M400, which every
+ // flavor it reaches understands, not the zero dwell the other flavors flush with.
buffer += "M400\n";
buffer += "M104";
if (target_extruder != -1)
@@ -1616,25 +1630,56 @@ float WipeTower::get_auto_brim_by_height(float max_height) {
return 8.f;
}
-Vec2f WipeTower::move_box_inside_box(const BoundingBox &box1, const BoundingBox &box2,int scaled_offset)
+Vec2f WipeTower::move_box_inside_polygon(const BoundingBox &box, const Polygons &polygons, coord_t offset)
{
- Vec2f res{0, 0};
- if (box1.size()[0] >= box2.size()[0]- 2*scaled_offset || box1.size()[1] >= box2.size()[1]-2*scaled_offset) return res;
+ if (polygons.empty()) return Vec2f{0.f, 0.f};
- if (box1.max[0] > box2.max[0] - scaled_offset) {
- res[0] = unscaled((box2.max[0] - scaled_offset) - box1.max[0]);
- }
- else if (box1.min[0] < box2.min[0] + scaled_offset) {
- res[0] = unscaled((box2.min[0] + scaled_offset) - box1.min[0]);
+ const BoundingBox bed = get_extents(polygons);
+ // No position fits the footprint.
+ if (box.size().x() >= bed.size().x() - 2 * offset || box.size().y() >= bed.size().y() - 2 * offset)
+ return Vec2f{0.f, 0.f};
+
+ // Clamp against the bounding box first, moving only along the axis that is violated so a dragged
+ // prime tower slides along the bed edge instead of jumping inwards.
+ Point shift(0, 0);
+ for (int axis = 0; axis < 2; ++axis) {
+ if (box.max[axis] > bed.max[axis] - offset)
+ shift[axis] = (bed.max[axis] - offset) - box.max[axis];
+ else if (box.min[axis] < bed.min[axis] + offset)
+ shift[axis] = (bed.min[axis] + offset) - box.min[axis];
}
- if (box1.max[1] > box2.max[1] - scaled_offset) {
- res[1] = unscaled((box2.max[1] - scaled_offset) - box1.max[1]);
+ // A bed that fills its own bounding box is fully clamped by that, so every rectangular bed — all
+ // but the delta-style profiles — stops here and keeps its historic placement, including when a
+ // negative margin lets the footprint hang over the edge. The tolerance is relative because an
+ // exact rectangle loses a few ulps once the areas are squared world coordinates.
+ double area = 0.;
+ for (const Polygon &poly : polygons) area += std::abs(poly.area());
+ const double bed_area = double(bed.size().x()) * double(bed.size().y());
+ if (area >= bed_area * (1. - EPSILON)) return unscaled(shift);
+
+ // Clamp a negative margin (an auto brim width that has not been resolved yet) to zero: padding by
+ // it would shrink the footprint and hand back a position the validation still rejects. The
+ // epsilon lets the move's round trip through millimeters land on the outline without counting as
+ // a violation.
+ BoundingBox padded = box.inflated(std::max(offset, 0) - SCALED_EPSILON);
+ padded.translate(shift);
+ auto fits = [&padded, &polygons](const Point &move) {
+ BoundingBox moved = padded;
+ moved.translate(move);
+ return diff(Polygons{moved.polygon()}, polygons).empty();
+ };
+ if (fits(Point(0, 0))) return unscaled(shift);
+
+ // Walk towards the middle of the bed. On every non-rectangular bed we ship, the fitting positions
+ // form a convex region around it, so bisecting stops just inside the outline.
+ Point lo(0, 0), hi = bed.center() - padded.center();
+ if (!fits(hi)) return unscaled(shift);
+ for (int i = 0; i < 12; ++i) {
+ const Point mid = (lo + hi) / 2;
+ if (fits(mid)) hi = mid; else lo = mid;
}
- else if (box1.min[1] < box2.min[1] + scaled_offset) {
- res[1] = unscaled((box2.min[1] + scaled_offset) - box1.min[1]);
- }
- return res;
+ return unscaled(Point(shift + hi));
}
Polygon WipeTower::rib_section(float width, float depth, float rib_length, float rib_width,bool fillet_wall)
diff --git a/src/libslic3r/GCode/WipeTower.hpp b/src/libslic3r/GCode/WipeTower.hpp
index 66e8acf1c4..045c82cbf3 100644
--- a/src/libslic3r/GCode/WipeTower.hpp
+++ b/src/libslic3r/GCode/WipeTower.hpp
@@ -26,6 +26,12 @@ enum GCodeFlavor : unsigned char;
Polylines construct_gap_for_skip_points(
const Polygon& polygon, const std::vector& skip_points, float wt_width, float gap_length, Polygon& insert_skip_polygon);
+// Klipper acts on commands the instant it parses them, and its G4 reads only P (milliseconds),
+// so the zero-second and seconds-valued dwells every other flavor uses neither synchronize nor
+// pause there. Both defined in WipeTower.cpp, shared by WipeTower and WipeTower2.
+const char* flush_planner_queue_command(GCodeFlavor flavor); // finish queued moves, e.g. around M104/M109
+std::string wait_command(GCodeFlavor flavor, float seconds); // pause for `seconds`
+
class WipeTower
{
public:
@@ -39,7 +45,11 @@ public:
static TriangleMesh its_make_rib_tower(float width, float depth, float height, float rib_length, float rib_width, bool fillet_wall);
static TriangleMesh its_make_rib_brim(const Polygon& brim, float layer_height);
static Polygon rib_section(float width, float depth, float rib_length, float rib_width, bool fillet_wall);
- static Vec2f move_box_inside_box(const BoundingBox &box1, const BoundingBox &box2, int offset = 0);
+ // Translation that brings a footprint inside the printable outline, padded by offset. The prime
+ // tower is validated against the real outline (see layered_print_cleareance_valid), so clamping
+ // against the bounding box alone would leave it off a delta or hexagonal bed. box and polygons
+ // must share one scaled coordinate frame; the translation comes back in millimeters.
+ static Vec2f move_box_inside_polygon(const BoundingBox &box, const Polygons &polygons, coord_t offset = 0);
static Polygon rounding_polygon(Polygon &polygon, double rounding = 2., double angle_tol = 30. / 180. * PI);
struct Extrusion
{
diff --git a/src/libslic3r/GCode/WipeTower2.cpp b/src/libslic3r/GCode/WipeTower2.cpp
index 51ab155dd9..ee0f9c375a 100644
--- a/src/libslic3r/GCode/WipeTower2.cpp
+++ b/src/libslic3r/GCode/WipeTower2.cpp
@@ -386,7 +386,8 @@ public:
}
WipeTowerWriter2& switch_filament_monitoring(bool enable) {
- m_gcode += std::string("G4 S0\n") + "M591 " + (enable ? "R" : "S0") + "\n";
+ flush_planner_queue();
+ m_gcode += enable ? "M591 R\n" : "M591 S0\n";
return *this;
}
@@ -412,6 +413,7 @@ public:
const Vec2f& pos() const { return m_current_pos; }
const Vec2f start_pos_rotated() const { return m_start_pos; }
const Vec2f pos_rotated() const { return this->rotate(m_current_pos); }
+ const Vec2f rotated(const Vec2f &pt) const { return this->rotate(pt); }
float elapsed_time() const { return m_elapsed_time; }
float get_and_reset_used_filament_length() { float temp = m_used_filament_length; m_used_filament_length = 0.f; return temp; }
@@ -623,10 +625,13 @@ public:
}
// Set extruder temperature, don't wait by default.
- WipeTowerWriter2& set_extruder_temp(int temperature, bool wait = false)
+ WipeTowerWriter2& set_extruder_temp(int temperature, bool wait = false, const std::string& comment = std::string())
{
- m_gcode += "G4 S0\n"; // to flush planner queue
- m_gcode += "M" + std::to_string(wait ? 109 : 104) + " S" + std::to_string(temperature) + "\n";
+ flush_planner_queue();
+ m_gcode += "M" + std::to_string(wait ? 109 : 104) + " S" + std::to_string(temperature);
+ if (!comment.empty())
+ m_gcode += " " + comment;
+ m_gcode += "\n";
return *this;
}
@@ -635,7 +640,7 @@ public:
{
if (time==0.f)
return *this;
- m_gcode += "G4 S" + Slic3r::float_to_string_decimal_point(time, 3) + "\n";
+ m_gcode += wait_command(m_gcode_flavor, time);
return *this;
}
@@ -677,8 +682,8 @@ public:
}
WipeTowerWriter2& flush_planner_queue()
- {
- m_gcode += "G4 S0\n";
+ {
+ m_gcode += flush_planner_queue_command(m_gcode_flavor);
return *this;
}
@@ -1005,6 +1010,13 @@ bool WipeTower2::use_gap_wall(const PrintConfig& config)
return config.prime_tower_skip_points.value && config.wipe_tower_wall_type.value != wtwCone;
}
+bool WipeTower2::wait_for_temp_enabled(const PrintConfig& config)
+{
+ // SEMM runs its own unload/load temperature sequence; the GUI hides the option
+ // there but a profile may still carry it set.
+ return config.wait_for_temp_on_wipe_tower.value && !config.single_extruder_multi_material.value;
+}
+
WipeTower2::WipeTower2(const PrintConfig& config, const PrintRegionConfig& default_region_config,int plate_idx, Vec3d plate_origin, const std::vector>& wiping_matrix, size_t initial_tool) :
m_semm(config.single_extruder_multi_material.value),
m_enable_filament_ramming(config.enable_filament_ramming.value),
@@ -1034,7 +1046,8 @@ WipeTower2::WipeTower2(const PrintConfig& config, const PrintRegionConfig& defau
m_wall_type((int)config.wipe_tower_wall_type),
m_use_gap_wall(use_gap_wall(config)),
m_enable_tower_interface_features(config.enable_tower_interface_features.value),
- m_enable_tower_interface_cooldown_during_tower(config.enable_tower_interface_cooldown_during_tower.value)
+ m_enable_tower_interface_cooldown_during_tower(config.enable_tower_interface_cooldown_during_tower.value),
+ m_wait_for_temp_on_wipe_tower(wait_for_temp_enabled(config))
{
// Read absolute value of first layer speed, if given as percentage,
// it is taken over following default. Speeds from config are not
@@ -1084,6 +1097,7 @@ WipeTower2::WipeTower2(const PrintConfig& config, const PrintRegionConfig& defau
m_bed_bottom_left = m_bed_shape == RectangularBed
? Vec2f(bed_points.front().x(), bed_points.front().y())
: Vec2f::Zero();
+ m_bed_polygon = Polygon::new_scale(bed_points);
}
@@ -1235,7 +1249,7 @@ std::vector WipeTower2::prime(
unsigned int tool = tools[idx_tool];
m_left_to_right = true;
- toolchange_Change(writer, tool, m_filpar[tool].material); // Select the tool, set a speed override for soluble and flex materials.
+ toolchange_Change(writer, tool, m_filpar[tool].material, m_filpar[tool].first_layer_temperature, false); // Select the tool, set a speed override for soluble and flex materials.
toolchange_Load(writer, cleaning_box); // Prime the tool.
if (idx_tool + 1 == tools.size()) {
// Last tool should not be unloaded, but it should be wiped enough to become of a pure color.
@@ -1354,13 +1368,19 @@ WipeTower::ToolChangeResult WipeTower2::tool_change(size_t tool)
toolchange_Unload(writer, cleaning_box, m_filpar[m_current_tool].material,
(is_first_layer() ? m_filpar[m_current_tool].first_layer_temperature : m_filpar[m_current_tool].temperature),
new_tool_temp);
- toolchange_Change(writer, tool, m_filpar[tool].material); // Change the tool, set a speed override for soluble and flex materials.
+ // Wait-at-tower target: the interface temp when an interface boost applies on this layer,
+ // otherwise the print temp (nozzle_temperature == 0 means "use the first layer temp").
+ int wait_for_temp = interface_layer && m_filpar[tool].interface_print_temperature > 0 ?
+ m_filpar[tool].interface_print_temperature :
+ (is_first_layer() || m_filpar[tool].temperature == 0 ? m_filpar[tool].first_layer_temperature : m_filpar[tool].temperature);
+ toolchange_Change(writer, tool, m_filpar[tool].material, wait_for_temp, true); // Change the tool, set a speed override for soluble and flex materials.
toolchange_Load(writer, cleaning_box);
writer.travel(writer.x(), writer.y()-m_perimeter_width); // cooling and loading were done a bit down the road
int base_temp = is_first_layer() ? m_filpar[tool].first_layer_temperature : m_filpar[tool].temperature;
if (interface_layer) {
int interface_temp = m_filpar[tool].interface_print_temperature;
- if (interface_temp > 0 && interface_temp != base_temp)
+ // With wait-for-temp-on-wipe-tower the toolchange already blocked for the interface temp.
+ if (interface_temp > 0 && interface_temp != base_temp && !m_wait_for_temp_on_wipe_tower)
writer.set_extruder_temp(interface_temp, true);
if (m_enable_tower_interface_cooldown_during_tower && interface_temp > 0 && interface_temp != base_temp)
writer.set_extruder_temp(base_temp, false);
@@ -1670,7 +1690,9 @@ void WipeTower2::toolchange_Unload(
void WipeTower2::toolchange_Change(
WipeTowerWriter2 &writer,
const size_t new_tool,
- const std::string& new_material)
+ const std::string& new_material,
+ const int wait_for_temp,
+ const bool wait_beside_tower)
{
// Ask the writer about how much of the old filament we consumed:
if (m_current_tool < m_used_filament_length.size())
@@ -1684,6 +1706,90 @@ void WipeTower2::toolchange_Change(
if (m_is_mk4mmu3)
writer.switch_filament_monitoring(true);
+ const bool wait_for_temp_here = m_wait_for_temp_on_wipe_tower && wait_for_temp > 0;
+
+ // The Tn above was issued without a blocking temperature wait (GCode::set_extruder only raises
+ // the target, ahead of the Tn); block here, before the deretraction below, which must not
+ // extrude on a cold nozzle. Like the Bambu H2C, park beside the tower for the heat-up so drool lands
+ // next to it instead of on its top surface — nearest x side first, then that side clamped
+ // toward the bed edge, then the far side, in place if all would leave the bed. Raw
+ // pre-rotated moves (see the repositioning move below) keep the writer's tracked position
+ // at the tower entry. The tag keeps the
+ // interface-temp deduplication pass in append_tcr2 from stripping the M109.
+ if (wait_for_temp_here && wait_beside_tower) {
+ // The rib wall and the stabilization cone bulge past the nominal width rectangle
+ // (widest near the bottom), and the first-layer brim is printed around the wall later
+ // in the layer — clear the widest of them, not just the rectangle, so the park point
+ // and its drool stay off the tower.
+ float min_x = 0.f, max_x = m_wipe_tower_width;
+ if (m_wall_type == (int)wtwRib) {
+ WipeTower::box_coordinates wt_box(Vec2f(0.f, 0.f), m_wipe_tower_width, m_layer_info->depth + m_perimeter_width);
+ const BoundingBox rib_bbox = get_extents(generate_rib_polygon(wt_box)); // the fillet stays within this bbox
+ min_x = std::min(min_x, unscaled(rib_bbox.min.x()));
+ max_x = std::max(max_x, unscaled(rib_bbox.max.x()));
+ } else if (m_wall_type == (int)wtwCone) {
+ const double support_scale = get_wipe_tower_cone_base(m_wipe_tower_width, m_wipe_tower_height, m_wipe_tower_depth,
+ m_wipe_tower_cone_angle).second;
+ const double z = m_no_sparse_layers ? (m_current_height + m_layer_info->height) : m_layer_info->z;
+ const double r = std::tan(Geometry::deg2rad(m_wipe_tower_cone_angle / 2.f)) * (m_wipe_tower_height - z);
+ const double w = m_layer_info->depth + m_perimeter_width;
+ if (r > 0.5 * w + 0.01) { // same guard as generate_support_cone_wall
+ const float bulge = float(std::sqrt(r * r - 0.25 * w * w) / support_scale);
+ min_x = std::min(min_x, m_wipe_tower_width / 2.f - bulge);
+ max_x = std::max(max_x, m_wipe_tower_width / 2.f + bulge);
+ }
+ }
+ if (is_first_layer()) {
+ const float brim = m_wipe_tower_brim_width < 0.f ? WipeTower::get_auto_brim_by_height(m_wipe_tower_height) :
+ m_wipe_tower_brim_width;
+ min_x -= brim;
+ max_x += brim;
+ }
+ constexpr float gap = 2.f;
+ constexpr float min_gap = 0.5f;
+ const bool on_left = writer.x() < m_wipe_tower_width / 2.f;
+ const float near_x = on_left ? min_x - gap : max_x + gap;
+ const float far_x = on_left ? max_x + gap : min_x - gap;
+ const Eigen::Rotation2Df to_bed(float(Geometry::deg2rad(m_wipe_tower_rotation_angle)));
+ auto park_pt_on_bed = [this, &writer, to_bed](float side_x) {
+ const Vec2f bed_pt = to_bed * (writer.rotated(Vec2f(side_x, writer.y())) + m_rib_offset) + m_wipe_tower_pos;
+ return m_bed_polygon.contains(Point::new_scale(bed_pt.x(), bed_pt.y()));
+ };
+ float park_x = near_x;
+ bool have_park = park_pt_on_bed(near_x);
+ if (!have_park) {
+ // The ideal near point hangs off the bed: pull it back to the bed edge as long
+ // as that still clears the tower envelope by min_gap (the BBL tower clamps its
+ // stop_pos against the bed the same way in append_tcr). Bisection, because with
+ // tower rotation and non-rectangular beds the bed edge is not axis-aligned.
+ const float limit_x = on_left ? min_x - min_gap : max_x + min_gap;
+ if (park_pt_on_bed(limit_x)) {
+ float on = limit_x, off = near_x;
+ for (int i = 0; i < 8; ++i) {
+ const float mid = 0.5f * (on + off);
+ if (park_pt_on_bed(mid))
+ on = mid;
+ else
+ off = mid;
+ }
+ park_x = on;
+ have_park = true;
+ }
+ }
+ if (!have_park && park_pt_on_bed(far_x)) {
+ park_x = far_x;
+ have_park = true;
+ }
+ if (have_park) {
+ const Vec2f stop = writer.rotated(Vec2f(park_x, writer.y()));
+ writer.feedrate(m_travel_speed * 60.f)
+ .append(std::string("G1 X") + Slic3r::float_to_string_decimal_point(stop.x())
+ + " Y" + Slic3r::float_to_string_decimal_point(stop.y())
+ + never_skip_tag() + "\n");
+ }
+ writer.set_extruder_temp(wait_for_temp, true, wait_for_temp_tag());
+ }
+
// Travel to where we assume we are. Custom toolchange or some special T code handling (parking extruder etc)
// gcode could have left the extruder somewhere, we cannot just start extruding. We should also inform the
// postprocessor that we absolutely want to have this in the gcode, even if it thought it is the same as before.
@@ -1694,6 +1800,10 @@ void WipeTower2::toolchange_Change(
+ never_skip_tag() + "\n"
);
+ // Priming has no tower to park beside — wait right at the priming line instead.
+ if (wait_for_temp_here && !wait_beside_tower)
+ writer.set_extruder_temp(wait_for_temp, true, wait_for_temp_tag());
+
writer.append("[deretraction_from_wipe_tower_generator]");
// The toolchange Tn command will be inserted later, only in case that the user does
@@ -2020,31 +2130,68 @@ std::pair WipeTower2::get_wipe_tower_cone_base(double width, dou
}
// Static method to extract wipe_volumes[from][to] from the configuration.
-std::vector> WipeTower2::extract_wipe_volumes(const PrintConfig& config)
+// Takes a ConfigBase so the GUI's wipe tower size estimate can pass the plate's
+// DynamicPrintConfig directly instead of materializing a full PrintConfig per call.
+std::vector> WipeTower2::extract_wipe_volumes(const ConfigBase& config)
{
- // Get wiping matrix to get number of extruders and convert vector to vector:
- std::vector wiping_matrix(cast(config.flush_volumes_matrix.values));
- auto scale = config.flush_multiplier.get_at(0);
+ // flush_volumes_matrix holds one filaments x filaments block per nozzle (written by
+ // PresetBundle::update_multi_material_filament_presets), so the filament count is
+ // sqrt(size / nozzles). One tower serves every nozzle and the filament to nozzle assignment is
+ // only decided later by ToolOrdering, so fold the blocks with std::max: the depth reserved here
+ // has to cover the worst nozzle. With a single nozzle the fold has one term.
+ const std::vector &raw_matrix = config.option("flush_volumes_matrix")->values;
+ const auto *nozzle_diameter = config.option("nozzle_diameter");
+ size_t nozzle_nums = (nozzle_diameter == nullptr || nozzle_diameter->values.empty()) ? 1 : nozzle_diameter->values.size();
+ unsigned int number_of_extruders = (unsigned int)(sqrt(raw_matrix.size() / nozzle_nums) + EPSILON);
+ if (size_t(number_of_extruders) * number_of_extruders * nozzle_nums != raw_matrix.size()) {
+ // Saved for a different nozzle count (older project, or the printer was just switched):
+ // fall back to reading the whole option as one block, as this did before.
+ nozzle_nums = 1;
+ number_of_extruders = (unsigned int)(sqrt(raw_matrix.size()) + EPSILON);
+ }
// The values shall only be used when SEMM is enabled. The purging for other printers
// is determined by filament_minimal_purge_on_wipe_tower.
- if (! config.purge_in_prime_tower.value || ! config.single_extruder_multi_material.value)
- std::fill(wiping_matrix.begin(), wiping_matrix.end(), 0.f);
+ const bool purge = config.option("purge_in_prime_tower")->value
+ && config.option("single_extruder_multi_material")->value;
- // Extract purging volumes for each extruder pair:
- std::vector> wipe_volumes;
- const unsigned int number_of_extruders = (unsigned int)(sqrt(wiping_matrix.size())+EPSILON);
- for (size_t i = 0; i(wiping_matrix.begin()+i*number_of_extruders, wiping_matrix.begin()+(i+1)*number_of_extruders));
+ // Extract purging volumes for each extruder pair, each nozzle's block scaled by its own multiplier:
+ std::vector